:root{--bg: #0a0d10;--panel: #12171c;--panel-2: #171e25;--border: #232c35;--text: #e6edf3;--muted: #8b98a5;--teal: #14b8a6;--teal-deep: #0d9488;--orange: #fd6828;--steel: #7d9bb3;--green: #34d399;--amber: #fbbf24;--red: #f87171}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}a{color:var(--teal)}button{font:inherit;cursor:pointer}input{font:inherit}.btn{display:inline-block;text-align:center;text-decoration:none;border-radius:8px;padding:10px 16px;border:1px solid transparent;font-weight:600}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--teal-deep);color:#fff}.btn-secondary{background:var(--panel-2);color:var(--text);border-color:var(--border)}.btn-ghost{background:transparent;color:var(--muted);border-color:var(--border)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:440px;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:32px}.login-brand{display:flex;gap:14px;align-items:center;margin-bottom:24px}.brand-name{margin:0;font-weight:800;letter-spacing:.12em;font-size:15px}.brand-tag{margin:2px 0 0;color:var(--muted);font-size:13px}.login-card h1{margin:0 0 4px;font-size:26px}.login-sub{margin:0 0 20px;color:var(--muted)}.login-card form{display:flex;flex-direction:column;gap:14px}.login-card label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}.login-card input{background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:10px 12px}.login-card input:disabled{opacity:.5}.login-error{color:var(--red);font-size:14px;margin:0}.setup-notice{background:#2a1a08;border:1px solid #7c4a12;border-radius:8px;padding:12px;font-size:14px;margin:0 0 20px}.setup-notice code{color:var(--orange)}.login-toggle{background:none;border:none;color:var(--teal);margin-top:16px;padding:0}.login-footnote{color:var(--muted);font-size:13px;margin:20px 0 0}.app-shell{min-height:100vh}.app-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap}.header-left{display:flex;gap:14px;align-items:center}.header-right{display:flex;gap:12px;align-items:center}.signed-in-as{color:var(--muted);font-size:14px;word-break:break-all}.demo-banner{background:#2a1a08;border-bottom:1px solid #7c4a12;padding:10px 24px;font-size:14px;color:#fcd9a8}.app-main{flex:1;min-width:0;padding:24px 24px 48px}.app-main h1{margin:0 0 4px;font-size:28px}.page-sub{color:var(--muted);margin:0 0 24px;max-width:760px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:12px}.tab{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:8px 14px;font-weight:600}.tab.active{background:var(--teal-deep);border-color:var(--teal-deep);color:#fff}.tab-badge{display:inline-block;background:var(--orange);color:#fff;border-radius:999px;font-size:12px;padding:1px 7px;margin-left:6px}.filter-row{display:flex;gap:8px;align-items:center;margin-bottom:16px;flex-wrap:wrap;color:var(--muted);font-size:14px}.chip{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:5px 12px}.chip.active{background:var(--panel-2);color:var(--text);border-color:var(--steel)}.data-table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden;font-size:14px}.data-table th,.data-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}.data-table th{color:var(--muted);font-size:13px}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}.dot-green{background:var(--green)}.dot-amber,.dot-yellow{background:var(--amber)}.dot-red{background:var(--red)}.section-note{color:var(--muted);font-size:14px;max-width:760px}.zone-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.zone-card{background:var(--panel);border:1px solid var(--border);border-left:4px solid var(--muted);border-radius:8px;padding:12px 14px}.zone-card strong{display:block;margin-bottom:4px}.zone-card p{margin:4px 0;font-size:14px;color:var(--muted)}.zone-green{border-left-color:var(--green)}.zone-yellow{border-left-color:var(--amber)}.zone-red{border-left-color:var(--red)}.card-list{display:flex;flex-direction:column;gap:14px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:18px}.card.priority-P1{border-left:4px solid var(--red)}.card.priority-P2{border-left:4px solid var(--amber)}.card.priority-P3{border-left:4px solid var(--steel)}.card-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.card-meta{color:var(--muted);font-size:14px}.priority-badge,.kind-badge{border-radius:6px;padding:2px 8px;font-size:13px;font-weight:700}.priority-P1 .priority-badge{background:#3d1212;color:var(--red)}.priority-P2 .priority-badge{background:#33270a;color:var(--amber)}.priority-P3 .priority-badge{background:var(--panel-2);color:var(--steel)}.kind-badge{background:var(--panel-2);color:var(--teal)}.card-note{color:var(--muted);font-size:14px}.flag-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px}.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:18px}.stat-value{margin:0;font-size:30px;font-weight:800;color:var(--teal)}.stat-label{margin:4px 0 0;color:var(--muted);font-size:14px}.chart-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:18px}.chart-card h2{margin:0 0 8px;font-size:18px}.bar-chart{width:100%;max-width:560px;height:auto}@media(max-width:720px){.data-table{display:block;overflow-x:auto}.header-right{width:100%}}.metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px 24px 0}.metric-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.metric-title{margin:0 0 8px;font-weight:700;font-size:14px}.metric-placeholder{border:1px dashed var(--border);border-radius:8px;color:var(--muted);font-size:13px;text-align:center;padding:28px 8px}.dashboard-body{display:flex;align-items:flex-start}.sidebar{width:232px;flex-shrink:0;padding:16px 12px;display:flex;flex-direction:column;gap:6px}.sidebar.collapsed{width:68px}.sidebar-toggle{align-self:flex-end;background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 10px;cursor:pointer;margin-bottom:8px}.sidebar.collapsed .sidebar-toggle{align-self:center}.sidebar-nav{display:flex;flex-direction:column;gap:6px}.nav-btn{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:transparent;border:1px solid transparent;color:var(--text);padding:10px 12px;border-radius:8px;cursor:pointer;font-size:15px}.nav-btn:hover{background:var(--panel)}.nav-btn.active{background:var(--panel-2);border-color:var(--border)}.nav-icon{font-size:18px;flex-shrink:0}.sidebar.collapsed .nav-label{display:none}.sidebar.collapsed .nav-btn{justify-content:center;padding:10px 0}.people-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.zone-legend{display:flex;flex-direction:column;gap:4px;margin:0 0 16px}.legend-item{font-size:14px;color:var(--muted)}.patient-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}.patient-row{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--border)}.patient-name{font-size:16px}.day-schedule{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px;position:sticky;top:16px}.day-schedule h2{margin:0;font-size:18px}.day-date{margin:2px 0 16px;color:var(--muted);font-size:13px}.day-grid{position:relative;margin-left:4px}.day-hour{position:absolute;left:0;right:0;border-top:1px solid var(--border);padding-top:2px}.day-hour span{font-size:12px;color:var(--muted)}.day-entry{position:absolute;left:56px;right:0;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:6px 10px;font-size:13px;line-height:1.35}.day-entry strong{display:block}.day-entry span{color:var(--muted)}@media(max-width:1000px){.people-layout{grid-template-columns:1fr}.metrics-row{grid-template-columns:repeat(2,1fr)}.dashboard-body{flex-direction:column}.sidebar{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center}.sidebar.collapsed{width:100%}.sidebar-nav{flex-direction:row;flex-wrap:wrap}.sidebar.collapsed .nav-label{display:inline}.sidebar.collapsed .nav-btn{padding:10px 12px}}.day-agenda{display:none}@media(max-width:720px){.metrics-row,.signed-in-as{display:none}.header-right{width:auto}.sidebar{position:fixed;left:0;right:0;bottom:0;width:100%;z-index:50;flex-direction:row;align-items:center;padding:8px;background:var(--panel);border-top:1px solid var(--border)}.sidebar-nav{flex:1;flex-wrap:nowrap}.sidebar .nav-label{display:none}.sidebar .nav-btn{flex:1;width:auto;justify-content:center;padding:12px 0}.sidebar-toggle{display:none}.app-main{padding-bottom:96px}.day-grid{display:none}.day-agenda{display:block;list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}.day-agenda-item{display:flex;align-items:center;gap:10px;padding:12px 4px;border-bottom:1px solid var(--border)}.agenda-time{color:var(--muted);font-size:13px;min-width:64px}}.app-shell.force-desktop{min-width:1020px}.force-desktop .metrics-row{display:grid;grid-template-columns:repeat(4,1fr)}.force-desktop .signed-in-as{display:inline}.force-desktop .header-right{width:auto}.force-desktop .dashboard-body{flex-direction:row}.force-desktop .sidebar{position:static;width:232px;flex-direction:column;padding:16px 12px;background:transparent;border-top:none}.force-desktop .sidebar.collapsed{width:68px}.force-desktop .sidebar-nav{flex-direction:column;flex:none;flex-wrap:nowrap}.force-desktop .sidebar .nav-label{display:inline}.force-desktop .sidebar.collapsed .nav-label{display:none}.force-desktop .sidebar .nav-btn{flex:none;width:100%;justify-content:flex-start;padding:10px 12px}.force-desktop .sidebar.collapsed .nav-btn{justify-content:center;padding:10px 0}.force-desktop .sidebar-toggle{display:block}.force-desktop .app-main{padding-bottom:48px}.force-desktop .people-layout{grid-template-columns:1fr 340px}.force-desktop .day-grid{display:block}.force-desktop .day-agenda{display:none}
