@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";:root{color-scheme:light;--white: #ffffff;--teal: #089489;--navy: #01405f;--surface: #f6f8f9;--surface-2: #eef2f2;--card: #ffffff;--text: #0d1b22;--muted: #5f6c72;--border: rgba(1, 64, 95, .12);--shadow: 0 24px 60px rgba(1, 64, 95, .18);--accent: #089489;--accent-strong: #06776e}[data-theme=dark]{color-scheme:dark;--surface: #071821;--surface-2: #0d222e;--card: #0f2a37;--text: #f4f7f8;--muted: #a0b4be;--border: rgba(8, 148, 137, .2);--shadow: 0 24px 60px rgba(0, 0, 0, .35);--accent: #11b4a8;--accent-strong: #0e8c83}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden!important}body{font-family:Poppins,Trebuchet MS,sans-serif;background:var(--surface);color:var(--text);min-height:100dvh;position:fixed;top:0;right:0;bottom:0;left:0;-webkit-text-size-adjust:100%}img,svg{max-width:100%;display:block}button,input{font-family:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{position:relative;min-height:100%;height:100%;overflow:hidden}.app-content{position:relative;z-index:2;padding:calc(24px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom)) 24px;height:100%;overflow:hidden}.page-shell{height:100%;display:flex;flex-direction:column}.page-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-top:12px;-webkit-overflow-scrolling:touch}.ambient{position:absolute;border-radius:999px;filter:blur(0);opacity:.5;z-index:0;pointer-events:none}.ambient-one{width:420px;height:420px;background:radial-gradient(circle,rgba(8,148,137,.35),transparent 65%);top:-120px;right:-80px}.ambient-two{width:520px;height:520px;background:radial-gradient(circle,rgba(1,64,95,.3),transparent 70%);bottom:-200px;left:-140px}.ambient-three{width:320px;height:320px;background:radial-gradient(circle,rgba(8,148,137,.2),transparent 70%);bottom:80px;right:140px}.screen-center{min-height:100dvh;display:grid;place-items:center;padding:calc(24px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom)) 24px}.card,.panel{background:transparent;border-radius:0;padding:12px;border:1px solid var(--border);box-shadow:none}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.panel-title{font-size:1rem;font-weight:600}.panel-subtitle{font-size:.9rem;color:var(--muted)}.form{display:grid;gap:16px}.field{display:grid;gap:8px;font-size:.9rem;color:var(--muted)}.field input,.field select{padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.95rem}.form-error{background:#dc44441f;color:#c43636;padding:10px 12px;border-radius:12px;font-size:.9rem}.btn{border:none;border-radius:999px;padding:10px 16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;touch-action:manipulation}.icon-btn{padding:6px 10px;min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center}.icon-btn svg{width:18px;height:18px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0) scale(.98)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.primary{background:linear-gradient(120deg,var(--accent),var(--accent-strong));color:var(--white);box-shadow:0 10px 24px #0894894d}.btn.primary:hover:not(:disabled){box-shadow:0 14px 28px #08948959}.btn.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}.btn.secondary:hover:not(:disabled){border-color:#08948966;color:var(--accent)}.btn.tertiary{background:#0894891f;color:var(--accent)}.btn.tertiary:hover:not(:disabled){background:#08948933}.btn-check{display:inline-flex;margin-left:8px;align-items:center}.btn-check svg{width:14px;height:14px;stroke:currentColor;stroke-width:2.4;fill:none}.btn-loading{display:inline-flex;align-items:center;gap:8px}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:var(--white);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.theme-toggle{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;display:inline-flex;align-items:center;gap:8px;color:var(--text);cursor:pointer}.unit-toggle{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;display:inline-flex;align-items:center;gap:4px;padding:4px;cursor:pointer}.unit-chip{padding:4px 8px;border-radius:999px;font-size:.7rem;color:var(--muted)}.unit-chip.active{background:#08948933;color:var(--accent)}.theme-toggle:hover{border-color:#08948966}.theme-toggle:active{transform:scale(.98)}.theme-dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}.top-nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.nav-brand{display:grid;gap:4px;color:inherit;text-decoration:none}.nav-title{font-size:1.2rem;font-weight:600}.nav-subtitle{color:var(--muted);font-size:.85rem}.nav-actions{display:flex;align-items:center;gap:16px;justify-self:end}.nav-user{text-align:right}.nav-user-label{font-weight:600}.nav-user-meta{font-size:.85rem;color:var(--muted)}.nav-chips{display:inline-flex;align-items:center;gap:8px;justify-content:center}.chip{border-radius:999px;padding:6px 12px;font-size:.8rem;border:1px solid transparent;background:#5f6c721f;color:var(--muted)}.chip:hover{border-color:#0894894d;color:var(--text)}.chip:disabled{cursor:not-allowed;opacity:.6}.chip.active{background:#08948933;color:var(--accent);border-color:#08948959}.chip.active:hover{background:#08948947}.chip.inactive{background:#e6eaed;color:#6d7b82}.chip.ghost{background:transparent;border-color:var(--border);color:var(--text);font-weight:500}[data-theme=dark] .chip.inactive{background:#ffffff14;color:var(--muted)}.account-link{margin-top:4px;padding:0;border:none;background:transparent;color:var(--accent);font-size:.8rem;cursor:pointer;text-align:right}.account-link:hover{text-decoration:underline}.account-link:active{opacity:.7}.pill{padding:6px 10px;border-radius:999px;background:#0894891f;color:var(--accent);font-size:.8rem}.pill-danger{background:#ce4c4c26;color:#e45a5a}.status-error{color:#e45a5a!important}.login-shell{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:980px;width:100%}.login-brand h1{font-size:clamp(2rem,3vw,2.8rem);margin:16px 0 12px;color:var(--navy)}[data-theme=dark] .login-brand h1{color:var(--white)}.brand-pill{display:inline-flex;padding:6px 14px;background:#08948926;color:var(--accent);border-radius:999px;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.brand-mark{width:48px;height:48px;margin-bottom:10px}.login-brand p{color:var(--muted);line-height:1.6;max-width:380px}.login-meta{margin-top:24px;display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.9rem}.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block}.login-card{background:var(--surface-2);border-radius:14px;padding:16px;border:1px solid var(--border);margin-top:12px}.dashboard,.patients-page,.patient-detail,.account-page,.report-page{display:grid;gap:14px}.report-selector{display:grid;gap:8px}.report-selector input[type=search]{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text)}.report-list{display:grid;gap:4px;max-height:180px;overflow:auto;border:1px solid var(--border);border-radius:10px;padding:6px;background:var(--surface-2)}.autocomplete{position:relative}.autocomplete .report-list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30}.report-option{border:1px solid transparent;background:transparent;text-align:left;padding:6px 8px;border-radius:8px;cursor:pointer;color:var(--text);font-size:.82rem}.report-option:hover{border-color:#0894894d;background:#08948914}.report-option.active{border-color:#08948980;background:#0894891f}.report-actions{display:grid;gap:10px}.report-type-toggle{display:inline-flex;gap:6px;flex-wrap:wrap}.report-switcher{position:relative;display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.report-switcher input[type=search]{padding:6px 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.8rem;min-width:160px}.report-switcher .report-list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;max-height:216px;background:var(--surface-2)}.account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;border-left:1px solid var(--border);border-top:1px solid var(--border)}.account-panel{border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;padding:12px;background:transparent;display:grid;gap:10px}.account-panel-title{font-size:.95rem;font-weight:600}.account-kv{display:flex;justify-content:space-between;gap:12px;font-size:.85rem;color:var(--muted)}.account-kv span:last-child{color:var(--text);font-weight:500}.account-permissions{display:flex;flex-wrap:wrap;gap:6px;font-size:.8rem;color:var(--muted)}.overview{display:grid;gap:12px;padding-bottom:6px;border-bottom:1px solid var(--border)}.overview-title{font-size:1.1rem;font-weight:600}.overview-subtitle{color:var(--muted);font-size:.9rem}.issue-banner{margin-top:10px;border-radius:12px;border:1px solid rgba(227,97,68,.45);background:#e361441f;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:12px;animation:issuePulse 1.4s ease-in-out infinite}.issue-banner.proxy{border-color:#e3614480;background:#e3614426}.issue-banner.auth{border-color:#f0aa5680;background:#f0aa5629}.issue-title{font-size:.9rem;font-weight:600}.issue-subtitle{font-size:.78rem;color:var(--muted);margin-top:2px}.issue-actions{display:inline-flex;gap:8px;flex-wrap:wrap}@keyframes issuePulse{0%{box-shadow:0 0 #e3614459}70%{box-shadow:0 0 0 8px #e3614400}to{box-shadow:0 0 #e3614400}}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;border-left:1px solid var(--border);border-top:1px solid var(--border)}.overview-item{border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;padding:10px 12px;background:transparent}.overview-item-label{font-size:.8rem;color:var(--muted)}.overview-item-value{font-size:1.2rem;font-weight:700}.overview-item-value.status-error{color:#e45a5a!important}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;border-left:1px solid var(--border);border-top:1px solid var(--border)}.stat-card{border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;padding:10px 12px;background:transparent}.stat-label{color:var(--muted);font-size:.85rem}.stat-value{font-size:1.1rem;font-weight:600;margin-top:2px}.grid-two{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.6fr);gap:0;border-left:1px solid var(--border);border-top:1px solid var(--border)}.grid-two>*{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:12px}.patient-panel{display:grid;gap:10px}.patient-list{display:grid;gap:10px;scrollbar-gutter:stable}.patient-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;border-bottom:1px solid var(--border)}.patient-info{display:grid;gap:4px;min-width:0}.patient-row:last-child{border-bottom:none}.patient-name{font-weight:600}.patient-meta{color:var(--muted);font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-stats{display:inline-flex;align-items:center;gap:16px}.patient-sync{display:grid;gap:2px;font-size:.75rem;color:var(--muted)}.patient-sync-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.patient-chart{display:inline-flex;align-items:center;gap:10px}.patient-latest{display:grid;gap:2px;text-align:right}.patient-latest-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.patient-latest-value{font-size:.95rem;font-weight:600;color:var(--text)}.sparkline{display:block;max-width:100%}.sparkline-zoom{position:relative;display:inline-block;width:max-content;max-width:100%}.chart-zoom-reset{position:absolute;top:6px;right:6px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:4px 8px;font-size:.7rem;cursor:pointer;z-index:3}.chart-zoom-reset.small{top:4px;right:4px;padding:2px 6px;font-size:.6rem}.chart-zoom-reset:hover{border-color:#08948966;color:var(--accent)}.chart-zoom-select{fill:#08948929;stroke:#08948999;stroke-width:1;stroke-dasharray:4 3}.sparkline-wrap{display:inline-flex;align-items:center;gap:8px}.sparkline-axis{display:grid;gap:2px;font-size:.65rem;color:var(--muted);text-align:right;min-width:44px}.sparkline-unit{font-size:.6rem;text-transform:uppercase;letter-spacing:.04em}.sparkline-line{stroke:var(--accent);stroke-width:2;fill:none}.sparkline-area{fill:#0894891f}.spark-marker line{stroke:#08948980;stroke-width:1}.spark-marker circle{fill:var(--accent)}.spark-zone.low{fill:#ce4c4c26}.spark-zone.in{fill:#2ea66629}.spark-zone.high{fill:#f0aa562e}.sparkline-empty{font-size:.7rem;color:var(--muted);border:1px dashed var(--border);border-radius:999px;padding:4px 8px}.action-panel{display:grid;gap:10px}.patient-carousel{display:grid;gap:12px}.carousel-nav{display:inline-flex;align-items:center;gap:8px}.carousel-count{font-size:.8rem;color:var(--muted)}.carousel-body{display:grid;gap:12px}.carousel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.carousel-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.carousel-header-main{display:grid;gap:6px}.carousel-search{width:min(320px,100%)}.carousel-name{font-weight:600;font-size:1rem;display:inline-flex;align-items:center;gap:6px}.carousel-meta{font-size:.8rem;color:var(--muted)}.carousel-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:12px;align-items:start}.carousel-stats{display:grid;gap:10px;border-left:1px solid var(--border);padding-left:12px}.summary-item{display:grid;gap:4px}.summary-note{font-size:.75rem;color:var(--muted)}.summary-activity{display:grid;gap:4px;font-size:.78rem;color:var(--text)}.summary-activity-item{display:flex;align-items:center;gap:6px;background:transparent;border:none;padding:0;text-align:left;color:inherit}.summary-activity-item.has-images{cursor:zoom-in}.summary-activity-item.has-images:hover .summary-activity-label{color:var(--accent)}.summary-activity-time{display:inline-block;min-width:48px;font-weight:600}.summary-activity-label{color:var(--muted);margin-left:6px}.action-list{display:grid;gap:10px}.action-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--border)}.action-item:last-child{border-bottom:none}.action-title{font-weight:600}.action-subtitle{font-size:.85rem;color:var(--muted)}.action-subtitle.status-error{color:#e45a5a!important}.patients-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.patients-toolbar-actions{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;justify-content:flex-end}.search-bar{width:min(360px,100%)}.search-bar input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text)}.table-wrap{border:1px solid var(--border);overflow:hidden}.patients-table-wrap{max-height:340px;overflow:auto;scrollbar-gutter:stable}.patients-table{width:100%;border-collapse:collapse;min-width:640px}.patients-table th,.patients-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);font-size:.85rem}.patients-table .table-action{padding-left:6px;padding-right:6px}.patients-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.patients-table tbody tr:hover{background:#0894890f}.patients-table .patient-row-clickable{cursor:pointer}.patients-table .patient-row-clickable:focus-visible{outline:2px solid rgba(8,148,137,.45);outline-offset:-2px}.patients-table .table-action{text-align:center}.table-action-group{display:inline-flex;gap:6px}.table-primary{font-weight:600}.patient-name-row{display:inline-flex;align-items:center;gap:6px}.star-indicator{color:var(--accent);display:inline-flex;align-items:center}.star-indicator.on{color:#f0b34c}.favorite-toggle.active{color:#f0b34c;border-color:#f0b34c80}.star-button{border:none;background:transparent;padding:0;cursor:pointer;display:inline-flex;align-items:center}.star-button:disabled{cursor:not-allowed;opacity:.7}.star-indicator.off{color:var(--muted);opacity:.6}.star-indicator svg{width:14px;height:14px}.table-secondary{color:var(--muted);font-size:.78rem}.empty-row{text-align:center;color:var(--muted);padding:20px 12px}.empty-actions{display:grid;gap:12px;justify-items:center}.loading-panel{text-align:center}.loading-title{font-weight:600;margin-bottom:6px}.loading-subtitle{color:var(--muted)}.empty-state{text-align:center;padding:16px 12px}.empty-title{font-weight:600;margin-bottom:6px}.empty-subtitle{color:var(--muted)}.detail-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;flex-wrap:wrap}.detail-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tab-btn{border:1px solid var(--border);background:transparent;color:var(--text);padding:6px 12px;border-radius:999px;font-size:.8rem;cursor:pointer}.tab-btn.active{background:#0894892e;color:var(--accent);border-color:#08948966}.detail-actions{display:inline-flex;align-items:center;gap:10px}.detail-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.detail-card{border:1px solid var(--border);padding:12px;background:transparent;display:grid;gap:10px}.summary-card{background:#0894890f}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.summary-label{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.summary-value{font-size:1rem;font-weight:600}.loading-inline{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--muted)}.spinner.muted{border:2px solid rgba(95,108,114,.25);border-top-color:var(--muted)}.detail-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.compact-form{gap:10px;margin-top:8px}.range-toggle{display:inline-flex;gap:6px;justify-content:center}.daily-range-custom{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.daily-range-custom .range-toggle{justify-content:flex-start}.daily-range-custom input[type=date]{padding:6px 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.8rem}.daily-range-sep{color:var(--muted);font-size:.75rem}.stat-unit{font-size:.7rem;color:var(--muted);margin-left:4px}.tir-card{border:1px solid var(--border);padding:10px;display:grid;gap:8px}.tir-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.tir-percent{font-size:1.1rem;font-weight:600}.tir-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:#0894891f}.tir-seg{display:block;height:100%}.tir-seg.low{background:#ce4c4c8c}.tir-seg.in{background:#089489cc}.tir-seg.high{background:#f0aa56b3}.tir-legend{display:flex;justify-content:space-between;gap:8px;font-size:.75rem;color:var(--muted)}.tir-legend-item{display:inline-flex;align-items:center;gap:6px}.tir-minutes{font-size:.7rem;color:var(--muted)}.tir-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.tir-dot.tbr{background:#ce4c4ccc}.tir-dot.tir{background:#089489e6}.tir-dot.tar{background:#f0aa56d9}.mini-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.mini-chart{border:1px solid var(--border);padding:8px;display:grid;gap:6px}.mini-chart-button{background:transparent;text-align:left;cursor:pointer;border-radius:8px}.mini-chart-button:hover{border-color:#08948966}.mini-link{font-size:.7rem;color:var(--accent)}.agp-chart{display:grid;gap:6px;position:relative}.agp-shell{display:grid;grid-template-columns:70px 1fr;gap:8px;align-items:start}.agp-y-axis{position:relative;height:var(--agp-height);font-size:.65rem;color:var(--muted)}.agp-y-label{position:absolute;left:0;transform:translateY(-50%)}.agp-chart svg{height:var(--agp-height)}.agp-chart svg{width:100%;height:auto;display:block}.agp-band-outer{fill:#0894891f;stroke:none}.agp-band-inner{fill:#08948940;stroke:none}.agp-median{stroke:var(--accent);stroke-width:2;fill:none}.agp-target{stroke:#f0aa56cc;stroke-width:1.2;stroke-dasharray:4 4}.agp-zone.low{fill:#ce4c4c1f}.agp-zone.in{fill:#2ea66626}.agp-zone.high{fill:#f0aa5629}.agp-axis{display:flex;justify-content:space-between;font-size:.65rem;color:var(--muted)}.agp-detail .detail-card{padding:10px}.agp-detail .detail-card-header{gap:8px}.agp-detail .detail-grid{gap:8px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.agp-detail .stats-grid,.agp-detail .summary-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.agp-detail .stat-card,.agp-detail .summary-card,.agp-detail .detail-card,.agp-detail .tir-card{padding:10px}.agp-detail .tir-legend{font-size:.68rem}.agp-detail .panel-subtitle{font-size:.78rem}.agp-tir{margin-top:8px}.agp-tir-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,.5fr);gap:10px;align-items:start}.agp-tir-layout .agp-tir{margin-top:0}.agp-detail .detail-card-header{padding-bottom:4px}.agp-detail .range-toggle{gap:4px}.agp-detail .tab-btn{padding:4px 10px;font-size:.75rem}.agp-detail .tir-card{gap:6px;padding:8px}.agp-detail .tir-bar{height:8px}.agp-detail .tir-legend{font-size:.65rem;gap:6px}@media (max-width: 720px){.agp-detail .detail-grid,.agp-detail .agp-tir-layout{grid-template-columns:1fr}.agp-detail .agp-shell{--agp-height: 140px !important}.agp-detail .tir-legend{flex-direction:column;align-items:flex-start}}.agp-empty{font-size:.8rem;color:var(--muted);border:1px dashed var(--border);border-radius:8px;padding:12px;text-align:center}.daily-chart{--daily-axis-width: 80px;display:grid;grid-template-columns:var(--daily-axis-width) 1fr;gap:8px;margin-top:6px}.daily-plot svg{width:100%;height:auto;display:block}.daily-plot svg,.agp-chart svg,.sparkline{touch-action:none}.daily-line{stroke:var(--accent);stroke-width:2;fill:none}.daily-zone.low{fill:#ce4c4c1f}.daily-zone.in{fill:#2ea66629}.daily-zone.high{fill:#f0aa5629}.daily-marker line{stroke:#01405f47;stroke-width:1;stroke-dasharray:4 4}.daily-marker circle{fill:#0b6f7a;stroke:#fff;stroke-width:1.4}.daily-hover line{stroke:#01405f66;stroke-width:1}.daily-hover circle{fill:#0b6f7a;stroke:#fff;stroke-width:2}.daily-axis{display:grid;grid-template-columns:repeat(7,1fr);font-size:.6rem;color:var(--muted)}.daily-axis span{text-align:center}.daily-y-axis{display:grid;align-content:space-between;width:var(--daily-axis-width);font-size:.65rem;color:var(--muted)}.daily-plot{display:grid;gap:6px;position:relative}.daily-tooltip{position:absolute;transform:translate(-50%,12px);background:#ffffff59;border:1px solid var(--border);border-radius:10px;padding:6px 8px;box-shadow:var(--shadow);pointer-events:none;display:grid;gap:2px;font-size:.7rem;z-index:2;min-width:96px;text-align:center;color:var(--text);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}[data-theme=dark] .daily-action-tooltip{background:#0d222e8c;border-color:#08948940}.daily-action-tooltip{position:absolute;transform:translate(-50%);background:#fffc;border:1px solid var(--border);border-radius:12px;padding:8px 10px;box-shadow:var(--shadow);pointer-events:none;display:grid;gap:4px;font-size:.72rem;z-index:3;min-width:160px;max-width:220px;color:var(--text);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.daily-action-tooltip-title{font-weight:600}.daily-action-tooltip-time{color:var(--muted);font-size:.68rem}.daily-action-tooltip-note{color:var(--muted);font-size:.7rem;line-height:1.3;white-space:pre-wrap}.daily-action-tooltip-images{display:flex;gap:6px;margin-top:2px}.daily-action-tooltip-images img{width:52px;height:52px;border-radius:8px;object-fit:cover;border:1px solid var(--border);cursor:zoom-in}[data-theme=dark] .daily-tooltip{background:#0d222e66;border-color:#08948940}.daily-tooltip-value{font-weight:600}.daily-tooltip-time{color:var(--muted)}.daily-empty{font-size:.8rem;color:var(--muted);border:1px dashed var(--border);border-radius:8px;padding:12px;text-align:center}.daily-date-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.daily-logbook{display:grid;gap:14px;margin-top:8px}.daily-nav{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap}.daily-nav-center{display:grid;gap:6px;justify-items:center}.daily-nav-select{display:flex;align-items:center;gap:6px}.daily-nav-select .icon-btn{min-width:32px;min-height:32px;padding:4px 8px}.daily-nav-select svg{width:18px;height:18px}.daily-nav select{min-width:220px;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.85rem;font-weight:600}[data-theme=dark] .daily-nav select{background:#0d222ecc;border-color:#0894894d}[data-theme=dark] .daily-nav select option{background:var(--surface-2);color:var(--text)}.daily-log-row{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:12px;border:1px solid var(--border);padding:10px}.daily-log-meta{display:grid;gap:8px;padding-right:12px;border-right:1px solid var(--border)}.daily-log-date{font-weight:600;font-size:.95rem}.daily-log-kv{display:grid;gap:6px}.daily-log-kv-item{display:flex;justify-content:space-between;gap:8px;font-size:.8rem;color:var(--muted)}.daily-log-kv-item strong{color:var(--text)}.daily-log-actions{display:flex;flex-wrap:wrap;gap:8px;font-size:.75rem;color:var(--muted)}.daily-tir{display:grid;gap:4px}.daily-tir-header{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted)}.daily-tir-header strong{color:var(--text)}.daily-tir-bar{display:flex;height:8px;border-radius:999px;overflow:hidden;background:#0894891f}.daily-log-stats{display:flex;flex-direction:column;gap:4px;font-size:.75rem;color:var(--muted)}.daily-log-chart{display:grid;gap:8px;--daily-axis-width: 80px;position:relative;z-index:1}.daily-view-toggle{display:flex;justify-content:flex-end;gap:6px}.activity-table{display:grid;gap:8px}.activity-table-header{display:grid;grid-template-columns:minmax(160px,1fr) minmax(240px,1.2fr) minmax(120px,.6fr);gap:10px;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.activity-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(240px,1.2fr) minmax(120px,.6fr);gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:#0894890a}.activity-row:hover{border-color:#08948966;background:#0894891a}.activity-info,.activity-graph{display:grid;gap:4px}.activity-window-label{font-size:.65rem;color:var(--muted)}.activity-action{display:flex;justify-content:flex-end}.activity-focus{display:grid;gap:10px}.activity-focus-nav{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}.activity-focus-nav.dense{align-items:start}.activity-chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.activity-chips.dense{flex-wrap:wrap;overflow-x:visible;padding-bottom:0}.activity-chips.dense .activity-chip{min-width:96px;max-width:180px}.activity-chips.dense .chip-subtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-chip{display:grid;gap:2px;align-items:start;text-align:left;min-width:120px}.activity-chip .chip-subtitle{font-size:.65rem;color:var(--muted);text-transform:none;letter-spacing:0}.activity-focus-body{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px;align-items:start}.activity-focus-chart{display:grid;gap:6px}.activity-focus-chart .daily-chart{--daily-axis-width: 64px}.activity-focus-details{display:grid;gap:8px;border-left:1px solid var(--border);padding-left:12px}.daily-profile-shell .top-nav{margin-bottom:6px;padding-bottom:6px}.daily-profile-shell .page-scroll{padding-top:0}.daily-profile-shell .patient-detail{gap:10px}.daily-action-row{display:grid;grid-template-columns:var(--daily-axis-width) 1fr;gap:8px;align-items:start;position:relative;z-index:2}.daily-action-spacer{width:var(--daily-axis-width)}.daily-action-dot{position:absolute;top:-10px;width:12px;height:12px;border-radius:50%;transform:translate(-50%);background:var(--accent);border:1px solid var(--surface);box-shadow:0 0 0 2px #fff6;display:flex;align-items:center;justify-content:center;color:#fff}.daily-action-icon{width:18px;height:18px;display:block;fill:currentColor}.daily-action-dot.active{transform:translate(-50%) scale(1.1);box-shadow:0 0 0 2px #fff9,0 0 0 6px #0894892e}.daily-action-dot.type-1{background:#f0b34c}.daily-action-dot.type-4{background:#4d79d4}.daily-action-dot.type-6{background:#e45a5a}.daily-action-dot.icon-only{width:18px;height:18px;border-radius:0;background:transparent;border:none;box-shadow:none;color:var(--accent)}.daily-action-dot.icon-only.active{box-shadow:none;filter:drop-shadow(0 0 6px rgba(8,148,137,.35))}.daily-action-dot.icon-only.type-1{color:#f0b34c}.daily-action-dot.icon-only.type-4{color:#4d79d4}.daily-action-timeline{position:relative;width:100%;min-height:56px}.daily-action-card{min-width:96px;max-width:240px;border:1px solid var(--border);border-radius:999px;padding:2px 8px;background:#0894891f;display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;position:absolute;transform:translate(-50%);z-index:3;box-shadow:none}.daily-action-card.has-images{cursor:zoom-in}.daily-action-card.no-time{transform:translate(0)}.daily-action-card .action-title{font-size:.7rem;font-weight:600;color:var(--text);line-height:1.1;word-break:break-word;white-space:normal}.daily-action-card .action-subtitle{font-size:.6rem;font-weight:600;color:var(--muted);line-height:1.1;white-space:nowrap}.action-hover-preview{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);width:120px;height:120px;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);overflow:hidden;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:40}.action-hover-preview img{width:100%;height:100%;object-fit:cover;display:block}.action-hover-count{position:absolute;bottom:6px;right:6px;padding:2px 6px;border-radius:999px;background:#01405fbf;color:#fff;font-size:.6rem}.daily-action-card.has-images:hover .action-hover-preview{opacity:1}.daily-action-card.timeline{position:absolute;transform:translate(-50%);width:140px}.action-connector{position:absolute;top:-16px;left:50%;width:1px;height:16px;background:#08948959}.daily-action-card.active{border-color:#08948999;background:#08948929;box-shadow:0 12px 24px #01405f1f}.daily-marker{cursor:pointer}.daily-marker.has-images{cursor:zoom-in}.daily-marker.active line{stroke:#089489b3;stroke-width:1.5;stroke-dasharray:none}.daily-marker.active circle{r:4;fill:#0b6f7a;stroke:#fff;stroke-width:2}.action-note{font-size:.75rem;color:var(--muted);line-height:1.4;white-space:pre-wrap;word-break:break-word}.action-link{border:none;background:transparent;color:var(--accent);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;padding:0;justify-self:flex-start}.action-link:hover{text-decoration:underline}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#01405f73;display:flex;align-items:center;justify-content:center;padding:20px;z-index:40}.modal-card{width:min(520px,100%);background:var(--card);border-radius:14px;border:1px solid var(--border);padding:12px;box-shadow:var(--shadow);display:grid;gap:10px}.modal-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.modal-body{display:grid;gap:8px}.modal-body-split{grid-template-columns:minmax(0,1fr) minmax(220px,.9fr);align-items:start}.modal-body-left{display:grid;gap:8px}.modal-body-right{display:grid;gap:8px;justify-items:end}.action-images{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}.action-image{cursor:zoom-in}.action-images img{width:64px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.action-images-large{justify-content:flex-end}.action-images-large img{width:180px;height:180px;border-radius:12px}.image-viewer-backdrop{z-index:50}.image-viewer-card{width:min(1000px,94vw);max-height:88vh;background:var(--card);border-radius:16px;border:1px solid var(--border);padding:12px;box-shadow:var(--shadow);display:grid;grid-template-rows:auto 1fr auto;gap:10px}.image-viewer-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.image-viewer-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.image-viewer-body{border:1px solid var(--border);border-radius:12px;background:var(--surface-2);padding:10px;display:flex;align-items:center;justify-content:center;overflow:auto;min-height:240px}.image-viewer-body img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .15s ease;transform-origin:center center;cursor:zoom-in}.image-viewer-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.image-viewer-nav{display:flex;gap:6px}.image-viewer-meta{color:var(--muted);font-size:.8rem}@media (max-width: 720px){.modal-body-split{grid-template-columns:1fr}.modal-body-right{justify-items:start}.action-images-large{justify-content:flex-start}}.mini-title{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.device-list{display:grid;gap:10px}.device-row{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.device-row:last-child{border-bottom:none}.device-name{font-weight:600}.device-meta{color:var(--muted);font-size:.8rem}.chip-row{display:flex;flex-wrap:wrap;gap:6px}@media (max-width: 720px){.detail-header{flex-direction:column;align-items:flex-start}.detail-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.report-selector input[type=search]{font-size:.85rem}.report-switcher{width:100%}.report-switcher input[type=search]{width:100%;min-width:0}.report-switcher .report-list{position:static;width:100%}.patient-row{flex-direction:column;align-items:flex-start}.patient-stats{width:100%;justify-content:space-between}.patients-toolbar{flex-direction:column;align-items:flex-start}.patients-toolbar-actions{width:100%;justify-content:space-between}.patients-table th,.patients-table td{padding:8px 10px}.carousel-header{flex-direction:column;align-items:flex-start}.carousel-grid{grid-template-columns:1fr}.carousel-stats{border-left:none;padding-left:0}}@media (max-width: 900px){.daily-log-row{grid-template-columns:1fr}.daily-log-meta{border-right:none;padding-right:0;border-bottom:1px solid var(--border);padding-bottom:8px}.activity-focus-body{grid-template-columns:1fr}.activity-focus-details{border-left:none;padding-left:0}}@media (max-width: 600px){.daily-nav{flex-direction:column;align-items:flex-start}.daily-nav-center{width:100%}.daily-nav select{width:100%;min-width:0}.daily-range-custom,.daily-range-custom input[type=date]{width:100%}.activity-table-header,.activity-row{grid-template-columns:1fr}.activity-action{justify-content:flex-start}.daily-chart,.activity-focus-chart .daily-chart{--daily-axis-width: 56px}.detail-actions .btn{width:100%;justify-content:center}}.daily-action-connectors{position:relative;overflow:visible;z-index:2}.daily-action-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.daily-action-lines path{stroke:#08948959;stroke-width:1;stroke-dasharray:6 4;stroke-linecap:round;fill:none}.daily-action-lines path:nth-child(3n+1){stroke:#0894898c}.daily-action-lines path:nth-child(3n+2){stroke:#f0aa5699}.daily-action-lines path:nth-child(3n){stroke:#ce4c4c8c}.daily-action-scroll{display:grid;gap:8px;overflow-x:hidden;overflow-y:visible;padding-bottom:4px}.daily-action-strip{position:relative;height:18px;border-top:1px dashed rgba(8,148,137,.25);overflow:visible;min-width:100%}.daily-action-list{position:relative;width:100%;margin-top:6px;overflow:visible;z-index:2}.daily-log-chart{overflow:visible}.daily-log-chart .daily-chart,.daily-log-chart .daily-plot{position:relative;z-index:0;overflow:visible}.daily-action-row{z-index:10;overflow:visible}.daily-action-connectors{z-index:11}.daily-action-card{z-index:12}.daily-action-scroll{overflow:visible}.action-hover-preview{z-index:120}@media print{.top-nav,.detail-actions,.range-toggle,.daily-view-toggle,.activity-focus-nav,.report-switcher,.report-list,.issue-banner{display:none!important}.page-scroll,.page-shell,.app-content{padding:0!important;margin:0!important;max-width:100%!important}.panel{border:none!important;padding:0!important}.detail-card{border:none!important}.chart-zoom-reset{display:none!important}}@media (max-width: 900px){.app-content{padding:calc(18px + env(safe-area-inset-top)) 18px calc(18px + env(safe-area-inset-bottom)) 18px}.top-nav{grid-template-columns:1fr;justify-items:start}.nav-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.grid-two{grid-template-columns:1fr}.patients-toolbar{flex-direction:column;align-items:flex-start}}@media (max-width: 640px){.app-content{padding:calc(12px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom)) 12px}.screen-center{place-items:center;align-content:center;padding:0 8px}.login-brand p{max-width:100%}.login-meta{gap:6px}.login-brand p,.login-meta{display:block}.login-shell{gap:12px;grid-template-columns:1fr;max-width:340px;width:100%;margin:0 auto}.login-brand h1{font-size:1.05rem;margin:8px 0 6px;white-space:nowrap;letter-spacing:-.01em}.login-brand p{font-size:.78rem;line-height:1.4;margin-bottom:4px}.login-meta{flex-wrap:wrap;margin-top:6px;font-size:.72rem}.login-card{border-radius:14px;box-shadow:none;padding:10px}.login-card .btn{width:100%;justify-content:center}.panel{padding:8px}.detail-card,.account-panel,.patients-table-wrap{border-radius:10px}.stats-grid{grid-template-columns:1fr 1fr}.top-nav{gap:12px;grid-template-columns:1fr auto;grid-template-rows:auto auto}.nav-brand{grid-column:1;grid-row:1}.nav-actions{grid-column:2;grid-row:1;flex-direction:column;align-items:flex-end;justify-self:end;width:auto;gap:8px}.nav-user{text-align:right;width:auto}.nav-actions .btn.secondary,.nav-actions .theme-toggle{width:auto;justify-content:center}.nav-actions .account-link{text-align:right}.nav-chips{width:100%;justify-content:flex-start;padding-bottom:4px;flex-wrap:wrap;grid-column:1 / -1;grid-row:2}.search-bar{width:100%}.brand-pill{font-size:.7rem;padding:4px 10px}.brand-mark{width:36px;height:36px;margin-bottom:6px}.panel-header{margin-bottom:8px}.panel-title{font-size:1rem}.panel-subtitle{font-size:.86rem;line-height:1.35}.form{gap:10px}.field{gap:6px;font-size:.84rem}.field input,.field select{padding:10px 12px;border-radius:10px;font-size:.9rem}.btn{padding:10px 14px;font-size:.9rem}.btn.icon-btn{min-width:40px;min-height:40px}.chart-zoom-reset{padding:6px 10px;font-size:.75rem}.chart-zoom-reset.small{padding:4px 8px;font-size:.65rem}.login-meta .dot{display:none}}@media (max-width: 720px){.patients-table{min-width:0}.patients-table thead{display:none}.patients-table,.patients-table tbody,.patients-table tr,.patients-table td{display:block;width:100%}.patients-table tr{border-bottom:1px solid var(--border);padding:10px 0}.patients-table td{border-bottom:none;display:grid;grid-template-columns:minmax(90px,1fr) 2fr;gap:8px;padding:6px 12px}.patients-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;color:var(--muted)}}@media (max-width: 520px){.nav-chips{flex-wrap:wrap;justify-content:flex-start}.stats-grid,.overview-grid{grid-template-columns:1fr}.grid-two>*{padding:10px}}
