.app{max-width:920px;margin:0 auto;padding:2rem 1.25rem 3rem;padding-top:max(2rem,env(safe-area-inset-top))}.app-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.logo{font-size:2.75rem;line-height:1}.auth-controls{margin-left:auto;display:flex;align-items:center;gap:.5rem}.auth-btn{font:inherit;font-size:.9rem;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.35rem .9rem;cursor:pointer}.tagline{margin:.25rem 0 0;color:var(--muted)}.intro{margin-bottom:1.5rem;color:var(--muted)}.features{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.card{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--later);border-radius:12px;padding:1.25rem}.card.status-next{border-left-color:var(--next)}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.card h2{font-size:1.15rem}.card p{margin:0;color:var(--muted);font-size:.95rem}.phase{flex:none;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.1rem .55rem}.app-footer{margin-top:2.5rem;text-align:center;color:var(--muted);font-size:.85rem}.hero{max-width:960px;margin:0 auto;padding:1.5rem 1.25rem 4rem;padding-top:max(1.5rem,env(safe-area-inset-top))}.hero-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:3rem}.hero-brand{display:inline-flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700}.hero-nav-actions{display:flex;align-items:center;gap:.5rem}.auth-btn-primary{background:var(--next, #2563eb);color:#fff;border-color:transparent}.auth-btn-lg{font-size:1rem;padding:.6rem 1.4rem}.hero-lead{text-align:center;max-width:720px;margin:0 auto 3.5rem}.hero-lead h1{font-size:clamp(2rem,6vw,3rem);letter-spacing:-.02em}.hero-sub{margin:1rem auto 0;max-width:560px;color:var(--muted);font-size:1.1rem}.hero-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2rem}.hero-note{margin-top:1.25rem;color:var(--muted);font-size:.85rem}.hero-features{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.hero-feature{border-left:none}.hero-feature-icon{font-size:1.75rem;line-height:1;display:block;margin-bottom:.5rem}.hero-feature h2{font-size:1.1rem;margin-bottom:.35rem}.tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}.tab{font:inherit;font-size:.9rem;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.35rem .9rem;cursor:pointer}.tab.active{background:var(--next, #2563eb);color:#fff;border-color:transparent}.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}.panel h2{margin-top:0}.filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.filters input,.filters select,.entry-form input,.entry-form select,.entry-form textarea,.setup-row input,.setup-row select{font:inherit;padding:.4rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);max-width:100%}.check{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;color:var(--muted)}.item-list{list-style:none;margin:0 0 1rem;padding:0}.item-list>li{padding:.6rem .25rem;border-bottom:1px solid var(--border)}.item-list>li.archived{opacity:.6}.item-list>li.emergency{border-left:4px solid #dc2626;padding-left:.6rem;background:color-mix(in srgb,#dc2626 6%,transparent)}.item-list>li.current{border-left:4px solid var(--next, #2563eb);padding-left:.6rem}.empty{color:var(--muted);font-style:italic}.meta{color:var(--muted);font-size:.88rem}.tags{display:inline-flex;gap:.3rem;margin-left:.5rem;flex-wrap:wrap}.tag{font-size:.72rem;border:1px solid var(--border);border-radius:999px;padding:.05rem .5rem;color:var(--muted)}.badge{display:inline-block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.1rem .55rem;margin-left:.4rem;border:1px solid var(--border);color:var(--muted)}.badge-approved,.badge-completed,.badge-active{background:#16a34a22;color:#15803d;border-color:#15803d55}.badge-requested,.badge-scheduled,.badge-new{background:#2563eb22;color:#1d4ed8;border-color:#1d4ed855}.badge-rejected,.badge-cancelled,.badge-disabled,.badge-urgency-high,.badge-emergency,.badge-offline{background:#dc262622;color:#b91c1c;border-color:#b91c1c55}.badge-urgency-medium,.badge-afterhours,.badge-deferred{background:#d9770622;color:#b45309;border-color:#b4530955}.row-actions{display:inline-flex;gap:.4rem;margin-left:.6rem;flex-wrap:wrap}.row-actions button,.row-actions select{font:inherit;font-size:.8rem;padding:.2rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer}.link{font:inherit;background:none;border:none;padding:0;color:var(--next, #2563eb);cursor:pointer;text-decoration:underline}.entry-form{display:flex;flex-direction:column;gap:.5rem;max-width:480px;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.entry-form button[type=submit]{font:inherit;align-self:flex-start;padding:.4rem 1rem;border:none;border-radius:8px;background:var(--next, #2563eb);color:#fff;cursor:pointer}.detail{border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem;background:color-mix(in srgb,var(--surface) 60%,transparent)}.error{color:#b91c1c}.notice{color:#b45309}.hint{color:var(--muted);font-size:.88rem}.highlight{border:1px solid var(--next, #2563eb);border-radius:12px;padding:.75rem 1rem;margin-bottom:1rem}.setup-panel .setup-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.setup-panel label{display:flex;flex-direction:column;gap:.25rem;font-size:.88rem;color:var(--muted)}.setup-create button{font:inherit;padding:.4rem 1rem;border:none;border-radius:8px;background:var(--next, #2563eb);color:#fff;cursor:pointer}.audit-list{font-size:.88rem}.view-toggle{display:inline-flex;gap:.3rem;margin-left:auto}.calendar-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.calendar-nav button{font:inherit;font-size:.85rem;padding:.3rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.calendar-day{border:1px solid var(--border);border-radius:8px;padding:.5rem;min-height:5rem;display:flex;flex-direction:column;gap:.35rem}.calendar-day-head{font-size:.8rem;font-weight:600;display:flex;justify-content:space-between}.calendar-slot{border-radius:6px;padding:.25rem .4rem;font-size:.78rem;display:flex;flex-direction:column;gap:.1rem}.calendar-slot-time{font-weight:600}.calendar-slot-purpose{overflow-wrap:anywhere}.calendar-slot-empty{color:var(--muted);font-size:.78rem}@media (max-width: 640px){.calendar-grid{grid-template-columns:1fr}}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;--bg: #f8fafc;--surface: #ffffff;--text: #1f2937;--muted: #6b7280;--border: #e5e7eb;--accent: #1f2937;--next: #2563eb;--later: #9ca3af}@media (prefers-color-scheme: dark){:root{--bg: #0f172a;--surface: #1e293b;--text: #e2e8f0;--muted: #94a3b8;--border: #334155;--accent: #e2e8f0;--next: #60a5fa;--later: #64748b}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{min-height:100dvh;background-color:var(--bg);color:var(--text)}h1,h2{line-height:1.2;margin:0}
