:root{--brand-50:#eef2f9;--brand-100:#d6e0ef;--brand-200:#adc0df;--brand-300:#7c97c6;--brand-400:#4a6ba6;--brand-500:#234a86;--brand-600:#0b3070;--brand-700:#001b5c;--brand-800:#001444;--brand-900:#000d2c;--gray-0:#fff;--gray-25:#fcfcfc;--gray-50:#f7f7f7;--gray-100:#eee;--gray-200:#ddd;--gray-300:#c7c7c7;--gray-400:#999;--gray-500:#707070;--gray-600:#525252;--gray-700:#3d3d3d;--gray-800:#292929;--gray-900:#171717;--gray-950:#0a0a0a;--green-500:#1c6b46;--green-bg:#e6f2ec;--amber-500:#8a5a10;--amber-bg:#fbf1de;--red-500:#b23730;--red-bg:#fbeae9;--blue-500:var(--brand-600);--blue-bg:var(--brand-50);--bg-page:var(--gray-50);--bg-surface:var(--gray-0);--bg-raised:var(--gray-0);--bg-sunken:var(--gray-100);--bg-hover:var(--gray-100);--bg-brand:var(--brand-700);--bg-brand-sub:var(--brand-50);--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-muted:var(--gray-500);--text-inverse:var(--gray-0);--text-on-brand:#fff;--text-brand:var(--brand-700);--border:var(--gray-200);--border-strong:var(--gray-300);--focus-ring:var(--brand-500);--sidebar-bg:var(--brand-700);--sidebar-text:#b9c7e2;--sidebar-text-strong:#fff;--sidebar-muted:#8397bb;--sidebar-hover:#ffffff14;--sidebar-active-bg:#ffffff24;--sidebar-active-text:#fff;--sidebar-border:#ffffff1f;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 2px 4px #0000000f, 0 4px 12px #0000000d;--shadow-lg:0 8px 28px #0000001f;--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--text-xs:.6875rem;--text-sm:.75rem;--text-base:.8125rem;--text-md:.875rem;--text-lg:1rem;--text-xl:1.125rem;--text-2xl:1.375rem;--text-3xl:1.75rem;--weight-normal:400;--weight-medium:500;--weight-semi:600;--weight-bold:700;--leading-tight:1.25;--leading-normal:1.55;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:4px;--radius-md:7px;--radius-lg:11px;--radius-xl:16px;--radius-full:999px;--sidebar-width:208px;--header-height:48px;--content-max:1280px;--page-max:1040px;--pad-page:var(--space-4);--pad-block:var(--space-3);--pad-tight:var(--space-2);--pad-cell:var(--space-1) var(--space-2);--gap-section:var(--space-3);--gap-block:var(--space-2);--control-height:30px;--ease:cubic-bezier(.4, 0, .2, 1);--duration-fast:.12s;--duration-base:.2s;--tap-target:44px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-page:var(--gray-950);--bg-surface:var(--gray-900);--bg-raised:var(--gray-800);--bg-sunken:#121212;--bg-hover:var(--gray-800);--bg-brand:var(--brand-500);--bg-brand-sub:#16203a;--text-primary:var(--gray-50);--text-secondary:var(--gray-300);--text-muted:var(--gray-400);--text-inverse:var(--gray-950);--text-brand:#8fb0e8;--border:#2a2a2a;--border-strong:#3d3d3d;--sidebar-bg:var(--brand-900);--sidebar-text:#9fb2d4;--sidebar-text-strong:#fff;--sidebar-muted:#7487ab;--sidebar-hover:#ffffff12;--sidebar-active-bg:#ffffff1f;--sidebar-active-text:#fff;--sidebar-border:#ffffff1a;--green-500:#6ec49a;--green-bg:#16281f;--amber-500:#e0b169;--amber-bg:#2c2312;--red-500:#e88b84;--red-bg:#2e1917;--blue-500:#8fb0e8;--blue-bg:#16203a;--shadow-sm:0 1px 2px #0006;--shadow-md:0 2px 4px #0006, 0 4px 12px #0000004d;--shadow-lg:0 8px 28px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg-page:var(--gray-950);--bg-surface:var(--gray-900);--bg-raised:var(--gray-800);--bg-sunken:#121212;--bg-hover:var(--gray-800);--bg-brand:var(--brand-500);--bg-brand-sub:#16203a;--text-primary:var(--gray-50);--text-secondary:var(--gray-300);--text-muted:var(--gray-400);--text-inverse:var(--gray-950);--text-brand:#8fb0e8;--border:#2a2a2a;--border-strong:#3d3d3d;--sidebar-bg:var(--brand-900);--sidebar-text:#9fb2d4;--sidebar-text-strong:#fff;--sidebar-muted:#7487ab;--sidebar-hover:#ffffff12;--sidebar-active-bg:#ffffff1f;--sidebar-active-text:#fff;--sidebar-border:#ffffff1a;--green-500:#6ec49a;--green-bg:#16281f;--amber-500:#e0b169;--amber-bg:#2c2312;--red-500:#e88b84;--red-bg:#2e1917;--blue-500:#8fb0e8;--blue-bg:#16203a;--shadow-sm:0 1px 2px #0006;--shadow-md:0 2px 4px #0006, 0 4px 12px #0000004d;--shadow-lg:0 8px 28px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}#root{isolation:isolate;min-height:100dvh}h1,h2,h3,h4,h5,h6{font-weight:var(--weight-semi);line-height:var(--leading-tight);letter-spacing:-.011em;text-wrap:balance}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-md)}p{text-wrap:pretty}a{color:var(--text-brand);text-decoration:none}a:hover{text-decoration:underline}img,picture,svg,video{max-width:100%;display:block}svg{flex-shrink:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}ul,ol{padding:0;list-style:none}code,pre,kbd,samp{font-family:var(--font-mono);font-size:.92em}table{border-collapse:collapse;width:100%}hr{border:none;border-top:1px solid var(--border)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.stack{gap:var(--gap-block);flex-direction:column;display:flex}.stack-sm{gap:var(--space-2);flex-direction:column;display:flex}.stack-lg{gap:var(--gap-section);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);display:flex}.row-tight{align-items:center;gap:var(--space-2);display:flex}.spacer{flex:1}.grid-cards{gap:var(--gap-block);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-medium{font-weight:var(--weight-medium)}.text-semi{font-weight:var(--weight-semi)}.numeric{font-variant-numeric:tabular-nums}.eyebrow{font-size:var(--text-xs);font-weight:var(--weight-semi);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.page{--page-pad:clamp(var(--space-3), 4vw, var(--space-8));gap:var(--gap-section);width:min(100%, var(--page-max));padding-inline:var(--page-pad);flex-direction:column;margin-inline:auto;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-title{font-size:var(--text-xl);margin-bottom:2px}.page-subtitle{color:var(--text-secondary);font-size:var(--text-sm);max-width:72ch}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-padded{padding:var(--pad-block)}.card-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--pad-tight) var(--pad-block);border-bottom:1px solid var(--border);display:flex}.card-title{align-items:center;gap:var(--space-2);font-size:var(--text-base);font-weight:var(--weight-semi);min-width:0;display:flex}.card-title svg{color:var(--text-muted);flex-shrink:0}.card-body{padding:var(--pad-block)}.stat{padding:var(--pad-tight) var(--pad-block);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:1px;display:flex}.stat-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.stat-value{font-size:var(--text-2xl);font-weight:var(--weight-semi);letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}.stat-hint{font-size:var(--text-xs);color:var(--text-muted)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), opacity var(--duration-fast) var(--ease);white-space:nowrap;border:1px solid #0000;display:inline-flex}.btn:hover{text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg, var(--brand-600) 0%, var(--brand-700) 100%);color:var(--text-on-brand);box-shadow:0 1px 2px #001b5c3d}.btn-primary:not(:disabled):hover{background:linear-gradient(180deg, var(--brand-700) 0%, var(--brand-800) 100%);box-shadow:0 2px 6px #001b5c4d}.btn-primary:not(:disabled):active{background:var(--brand-800);box-shadow:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .btn-primary:not(:disabled):hover{background:var(--brand-400)}}:root[data-theme=dark] .btn-primary:not(:disabled):hover{background:var(--brand-400)}.btn-secondary{background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-primary)}.btn-secondary:not(:disabled):hover{background:var(--bg-brand-sub);border-color:var(--brand-400);color:var(--text-brand)}.btn-ghost{color:var(--text-secondary);padding:0 var(--space-2)}.btn-ghost:not(:disabled):hover{background:var(--bg-brand-sub);color:var(--text-brand)}.btn-danger{background:linear-gradient(180deg, #c04039 0%, var(--red-500) 100%);color:#fff;box-shadow:0 1px 2px #b2373047}.btn-danger:not(:disabled):hover{background:linear-gradient(180deg, var(--red-500) 0%, #972f29 100%);box-shadow:0 2px 6px #b2373052}.btn-danger:not(:disabled):active{box-shadow:none;background:#972f29}.btn-block{width:100%}.btn-sm{min-height:28px;padding:0 var(--space-2);font-size:var(--text-xs)}.btn-field{min-height:var(--tap-target);font-size:var(--text-base);font-weight:var(--weight-semi);padding:0 var(--space-4)}.field{gap:var(--space-1);flex-direction:column;display:flex}.label{align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary);display:flex}.label svg{color:var(--text-muted);flex-shrink:0}.input,.select,.textarea{width:100%;min-height:var(--control-height);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease)}.input:focus,.select:focus,.textarea:focus{border-color:var(--focus-ring);outline:2px solid color-mix(in srgb, var(--focus-ring) 28%, transparent);outline-offset:0}.input:-webkit-autofill{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 100px var(--bg-surface) inset;box-shadow:0 0 0 100px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 100000s ease-in-out}.input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 100px var(--bg-surface) inset;box-shadow:0 0 0 100px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 100000s ease-in-out}.input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 100px var(--bg-surface) inset;box-shadow:0 0 0 100px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 100000s ease-in-out}.select:-webkit-autofill{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 100px var(--bg-surface) inset;box-shadow:0 0 0 100px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 100000s ease-in-out}.textarea:-webkit-autofill{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0 100px var(--bg-surface) inset;box-shadow:0 0 0 100px var(--bg-surface) inset;caret-color:var(--text-primary);transition:background-color 100000s ease-in-out}:is(.input:autofill,.select:autofill,.textarea:autofill){-webkit-text-fill-color:var(--text-primary);box-shadow:0 0 0 100px var(--bg-surface) inset;caret-color:var(--text-primary)}:-webkit-any(.input:-webkit-autofill:focus,.input:autofill:focus){outline:2px solid color-mix(in srgb, var(--focus-ring) 28%, transparent);border-color:var(--focus-ring)}:is(.input:autofill:focus,.input:autofill:focus){outline:2px solid color-mix(in srgb, var(--focus-ring) 28%, transparent);border-color:var(--focus-ring)}.textarea{min-height:64px;padding:var(--space-2);resize:vertical}@media (width<=720px){.input,.select,.textarea{font-size:16px}}.field-error{font-size:var(--text-xs);color:var(--red-500)}.badge{align-items:center;gap:var(--space-1);padding:1px var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-full);background:var(--bg-sunken);color:var(--text-secondary);white-space:nowrap;display:inline-flex}.badge-success{background:var(--green-bg);color:var(--green-500)}.badge-warning{background:var(--amber-bg);color:var(--amber-500)}.badge-danger{background:var(--red-bg);color:var(--red-500)}.badge-info{background:var(--blue-bg);color:var(--blue-500)}.badge-brand{background:var(--bg-brand-sub);color:var(--text-brand)}.badge.status-text{font-weight:var(--weight-semi);background:0 0;border-radius:0;padding:0}.table-wrap{border-radius:var(--radius-lg);overflow-x:auto}.table{font-size:var(--text-sm)}.table th{text-align:left;font-size:var(--text-xs);font-weight:var(--weight-semi);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);white-space:nowrap}.table td{padding:var(--pad-cell);border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--bg-hover)}.pagination{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);display:flex}.pagination-button{width:32px;min-height:30px;font-size:var(--text-base);padding:0;line-height:1}.pagination-status{text-align:center;min-width:92px;font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.empty{align-items:center;gap:var(--space-1);padding:var(--space-8) var(--pad-block);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.empty-title{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-secondary)}.avatar{border-radius:var(--radius-full);background:var(--bg-brand-sub);width:28px;height:28px;color:var(--text-brand);font-size:var(--text-xs);font-weight:var(--weight-semi);flex-shrink:0;place-items:center;display:grid}.notice{gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--amber-bg);border:1px solid color-mix(in srgb, var(--amber-500) 30%, transparent);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);display:flex}.notice strong{color:var(--text-primary)}.notice svg{color:var(--amber-500);flex-shrink:0;margin-top:1px}.encounter-table th,.encounter-table td{white-space:nowrap}.encounter-table td:nth-child(3){white-space:normal;min-width:10ch}.encounter-table-action{text-align:right}.encounter-table-action .btn{white-space:nowrap}.page-hero{justify-content:space-between;align-items:flex-end;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-left:4px solid var(--red-500);border-radius:var(--radius-lg);background:radial-gradient(120% 140% at 88% 0%, #ffffff24 0%, transparent 58%), linear-gradient(135deg, var(--brand-700) 0%, var(--brand-900) 100%);color:#fff;flex-wrap:wrap;display:flex;position:relative}.page-hero-text{min-width:0}.page-hero-date{margin:0 0 var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-semi);letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8}.page-hero-title{font-size:clamp(var(--text-2xl), 3vw, var(--text-3xl));font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:-.02em;color:#fff;margin:0}.page-hero-sub{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:#ffffffc7}.page-hero:not(.is-quiet) .page-hero-action .btn-secondary,.page-hero:not(.is-quiet) .page-hero-action details>summary{color:#fff;background:#ffffff1f;border-color:#ffffff47}.page-hero:not(.is-quiet) .page-hero-action .btn-secondary:hover,.page-hero:not(.is-quiet) .page-hero-action details>summary:hover{background:#fff3}.stat-chip{border-radius:var(--radius-full);background:var(--brand-50);width:30px;height:30px;color:var(--brand-600);flex-shrink:0;place-items:center;display:grid}.stat.is-tile{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--pad-block);text-align:center;transition:border-color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease);overflow:hidden}.stat.is-tile:hover{border-color:var(--brand-300);box-shadow:var(--shadow-md)}.stat.is-tile .stat-label,.stat.is-tile .stat-hint{overflow-wrap:break-word;max-width:100%}.stat.is-tile.is-primary{border-top:2px solid var(--brand-700);background:linear-gradient(180deg, var(--brand-50) 0%, var(--bg-surface) 62%)}.stat.is-tile.is-primary .stat-chip{background:var(--brand-700);color:#fff}.stat.is-tile.is-primary .stat-value{color:var(--text-brand)}@media (width<=720px){.page{--page-pad:0px}}.shell-main:has(.is-tinted){background:linear-gradient(#234a8612, #234a8612), var(--bg-page)}.page-hero.is-quiet{margin-inline:calc(var(--page-pad,0px) * -1);padding-inline:var(--page-pad,var(--space-6));padding-block:var(--space-5);color:var(--text-primary);background:linear-gradient(270deg,#234a8633 0%,#0000 52%);border:none;border-radius:0}.page-hero.is-quiet .page-hero-date{color:var(--brand-500)}.page-hero.is-quiet .page-hero-title{color:var(--text-brand)}.page-hero.is-quiet .page-hero-sub{color:var(--brand-500)}@media (width<=720px){.page-hero{align-items:stretch;gap:var(--space-3);padding:var(--space-4);flex-direction:column}.page-hero-action{justify-content:flex-end;display:flex}.stat-chip{width:24px;height:24px}.stat-chip svg{width:13px;height:13px}}.board-card-list{display:none}@media (width<=720px){.board-card-list{gap:var(--space-2);padding:var(--space-2);flex-direction:column;display:flex}.board-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--brand-500);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.board-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.board-card-head>div{min-width:0}.board-card-head strong{font-size:var(--text-xl);font-weight:var(--weight-semi);line-height:var(--leading-tight);color:var(--text-brand);overflow-wrap:anywhere;display:block}.board-card-label,.board-card-grid dt{font-size:var(--text-sm);font-weight:var(--weight-semi);color:var(--brand-500);text-transform:uppercase;letter-spacing:.04em;margin-bottom:1px;display:block}.board-card-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.board-card-grid dd{font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text-brand);overflow-wrap:anywhere;margin:0}.board-card-grid dd .badge,.board-card-head .badge{font-size:var(--text-sm)}.board-card-action{width:100%;min-height:var(--tap-target);font-size:var(--text-md);font-weight:var(--weight-semi)}}@media (width<=380px){.board-card-grid{grid-template-columns:1fr}}@media (width<=720px){.board-card-wide{grid-column:1/-1}.board-card-head .row-tight{align-items:flex-start;min-width:0}.board-card-name{font-size:var(--text-xl);font-weight:var(--weight-semi);line-height:var(--leading-tight);color:var(--text-brand);overflow-wrap:anywhere;display:block}}.tab-rail{gap:var(--space-4);border-bottom:1px solid var(--border);scrollbar-width:none;display:flex;overflow-x:auto}.tab-rail::-webkit-scrollbar{display:none}.tab-rail-item{align-items:center;gap:var(--space-2);padding:0 0 var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:color var(--duration-fast) var(--ease);background:0 0;border:none;flex-shrink:0;display:flex;position:relative}.tab-rail-item:hover{color:var(--text-brand)}.tab-rail-item:focus-visible{outline:2px solid var(--brand-500);outline-offset:3px;border-radius:var(--radius-sm)}.tab-rail-item.is-active{color:var(--text-brand);font-weight:var(--weight-semi)}.tab-rail-item.is-active:after{content:"";background:var(--brand-600);border-radius:1px;height:2px;position:absolute;inset:auto 0 -1px}.brand{object-fit:contain;width:auto;max-width:100%;display:block}.brand-full{height:72px}.brand-mark{height:34px}.pw{gap:var(--space-1);margin-top:var(--space-1);flex-direction:column;display:flex}.pw-meter{grid-template-columns:repeat(5,1fr);gap:3px;display:grid}.pw-bar{border-radius:var(--radius-full);background:var(--gray-200);height:3px;transition:background-color var(--duration-base) var(--ease)}.pw-bar.is-weak{background:var(--red-500)}.pw-bar.is-fair{background:var(--amber-500)}.pw-bar.is-good{background:var(--brand-500)}.pw-bar.is-strong{background:var(--green-500)}.pw-met{align-items:center;gap:2px var(--space-2);font-size:var(--text-xs);flex-wrap:wrap;line-height:1.6;display:flex}.pw-verdict{font-weight:var(--weight-semi);color:var(--text-muted)}.pw-verdict.is-weak{color:var(--red-500)}.pw-verdict.is-fair{color:var(--amber-500)}.pw-verdict.is-good{color:var(--brand-600)}.pw-verdict.is-strong{color:var(--green-500)}.pw-tick{color:var(--text-muted);align-items:center;gap:3px;display:inline-flex}.pw-tick svg{color:var(--green-500);flex-shrink:0}.login{min-height:100dvh;padding:var(--space-4);background:var(--bg-page);place-items:center;display:grid}.login-card{width:100%;max-width:400px;padding:var(--space-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.login-brand{margin-bottom:var(--space-5);display:block}.login-brand .brand-full{width:100%;height:auto}.login-divider{align-items:center;gap:var(--space-3);margin:var(--space-4) 0 var(--space-3);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;display:flex}.login-divider:before,.login-divider:after{content:"";border-top:1px solid var(--border);flex:1}.login-roles{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.avatar{position:relative;overflow:hidden}.avatar-sm{width:22px;height:22px;font-size:9px}.avatar-md{width:28px;height:28px}.avatar-lg{width:44px;height:44px;font-size:var(--text-base)}.avatar-image{object-fit:cover;width:100%;height:100%;display:block}.avatar-upload{align-items:center;gap:var(--space-3);display:flex}.avatar-upload-actions{gap:var(--space-1);flex-direction:column;align-items:flex-start;display:flex}.avatar-file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.dialog{width:min(440px, calc(100vw - var(--space-8)));max-height:calc(100dvh - var(--space-8));border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-lg);margin:auto;padding:0;position:fixed;inset:0}.dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080}.dialog-body{gap:var(--space-2);padding:var(--space-5);flex-direction:column;display:flex}.dialog-icon{border-radius:var(--radius-full);background:var(--bg-sunken);width:32px;height:32px;color:var(--text-secondary);place-items:center;display:grid}.dialog-icon.is-danger{background:var(--red-bg);color:var(--red-500)}.dialog-icon.is-warning{background:var(--amber-bg);color:var(--amber-500)}.dialog-title{font-size:var(--text-lg);font-weight:var(--weight-semi)}.dialog-message{color:var(--text-secondary);text-wrap:pretty}.dialog-actions{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);background:var(--bg-sunken);border-bottom-left-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl);display:flex}@media (width<=480px){.dialog-actions{flex-direction:column-reverse}.dialog-actions .btn{width:100%;min-height:var(--tap-target)}}.shell{--sidebar-collapsed-width:56px;--sidebar-expanded-width:var(--sidebar-width);grid-template-columns:var(--sidebar-collapsed-width) 1fr;grid-template-rows:var(--header-height) 1fr;min-height:100dvh;transition:grid-template-columns var(--duration-base) var(--ease);grid-template-areas:"brand header""nav main";display:grid}:is(.shell:has(.shell-brand:hover),.shell:has(.shell-brand:focus-visible),.shell:has(.shell-nav:hover),.shell:has(.shell-nav:focus-within)){grid-template-columns:var(--sidebar-expanded-width) 1fr}.shell-brand{align-items:center;gap:var(--space-2);min-width:0;padding:0 var(--space-2);background:var(--bg-surface);border-bottom:1px solid var(--border);color:var(--text-primary);border-right:none;grid-area:brand;display:flex;overflow:hidden}.shell-brand:hover{text-decoration:none}.shell-brand-word{opacity:0;transition:opacity var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);white-space:nowrap;transform:translate(-4px)}:is(.shell:has(.shell-brand:hover) .shell-brand-word,.shell:has(.shell-brand:focus-visible) .shell-brand-word,.shell:has(.shell-nav:hover) .shell-brand-word,.shell:has(.shell-nav:focus-within) .shell-brand-word){opacity:1;transform:translate(0)}.shell-brand .brand-mark{flex-shrink:0;height:34px}.shell-brand-word{align-items:center;display:flex;overflow:hidden}.shell-brand-word .brand-full{height:30px}.shell-header{align-items:center;gap:var(--space-3);padding:0 var(--space-4);background:var(--bg-surface);border-bottom:1px solid var(--border);grid-area:header;display:flex}.shell-context{font-size:var(--text-sm);color:var(--text-muted)}.shell-user{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);color:var(--text-primary);display:flex}.shell-user:hover{background:var(--bg-hover);text-decoration:none}.shell-user-name{font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.shell-nav{gap:var(--space-2);padding:var(--space-2);background:var(--sidebar-bg);border-right:none;flex-direction:column;grid-area:nav;display:flex;overflow:hidden}.shell-nav-surface,.shell-nav-group{opacity:0;white-space:nowrap;transition:opacity var(--duration-fast) var(--ease)}.shell-nav-surface{padding:var(--space-2) var(--space-2) 0}.shell-nav-section{flex-direction:column;gap:1px;min-width:0;display:flex}.shell-nav-section+.shell-nav-section{padding-top:var(--space-2);border-top:1px solid #0000}.shell-nav-section.is-bottom{margin-top:auto}.shell-nav-signout-section{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--sidebar-border)}.shell-nav-section.is-bottom+.shell-nav-signout-section{margin-top:var(--space-2)}.shell-nav-signout{width:100%;color:var(--sidebar-text);text-align:left}.shell-nav-signout:hover{background:var(--sidebar-hover);color:var(--sidebar-text-strong)}.shell-nav-group{padding:0 var(--space-2) var(--space-1);color:var(--sidebar-muted);font-size:var(--text-xs);font-weight:var(--weight-semi);text-transform:uppercase;letter-spacing:.04em}:is(.shell:has(.shell-brand:hover) .shell-nav-surface,.shell:has(.shell-brand:focus-visible) .shell-nav-surface,.shell:has(.shell-nav:hover) .shell-nav-surface,.shell:has(.shell-nav:focus-within) .shell-nav-surface,.shell:has(.shell-brand:hover) .shell-nav-group,.shell:has(.shell-brand:focus-visible) .shell-nav-group,.shell:has(.shell-nav:hover) .shell-nav-group,.shell:has(.shell-nav:focus-within) .shell-nav-group){opacity:1}:is(.shell:has(.shell-brand:hover) .shell-nav-section+.shell-nav-section,.shell:has(.shell-brand:focus-visible) .shell-nav-section+.shell-nav-section,.shell:has(.shell-nav:hover) .shell-nav-section+.shell-nav-section,.shell:has(.shell-nav:focus-within) .shell-nav-section+.shell-nav-section){border-top-color:var(--sidebar-border)}.nav-link{align-items:center;gap:var(--space-2);min-height:30px;padding:0 var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--sidebar-text);transition:background-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);display:flex;position:relative}.nav-link-icon{color:currentColor;flex:0 0 20px;place-items:center;width:20px;height:20px;display:grid}.nav-link:hover{background:var(--sidebar-hover);color:var(--sidebar-text-strong);text-decoration:none}.nav-link.is-active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);box-shadow:inset 2px 0 0 var(--sidebar-active-text)}.nav-parent{flex-direction:column;gap:1px;min-width:0;display:flex}.nav-parent-label{color:var(--sidebar-text-strong);width:100%}.nav-parent-label:hover{background:0 0}.nav-subitems{flex-direction:column;gap:1px;display:none}.nav-subitem{margin-left:0}:is(.shell:has(.shell-brand:hover) .nav-subitem,.shell:has(.shell-brand:focus-visible) .nav-subitem,.shell:has(.shell-nav:hover) .nav-subitem,.shell:has(.shell-nav:focus-within) .nav-subitem){margin-left:var(--space-5)}:is(.shell:has(.shell-brand:hover) .nav-parent:hover .nav-subitems,.shell:has(.shell-brand:focus-visible) .nav-parent:focus-within .nav-subitems,.shell:has(.shell-nav:hover) .nav-parent:hover .nav-subitems,.shell:has(.shell-nav:focus-within) .nav-parent:focus-within .nav-subitems){display:flex}.nav-link-label{opacity:0;text-overflow:ellipsis;white-space:nowrap;transition:opacity var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);overflow:hidden;transform:translate(-4px)}.nav-count{border-radius:var(--radius-full);background:var(--brand-500);color:#fff;min-width:18px;font-size:10px;font-weight:var(--weight-bold);text-align:center;margin-left:auto;padding:1px 5px;line-height:16px}@media (width>=721px){.shell:not(:has(.shell-brand:hover)):not(:has(.shell-brand:focus-visible)):not(:has(.shell-nav:hover)):not(:has(.shell-nav:focus-within)) .nav-count{color:#0000;width:8px;min-width:8px;height:8px;padding:0;position:absolute;right:3px;overflow:hidden}}:is(.shell:has(.shell-brand:hover) .nav-link-label,.shell:has(.shell-brand:focus-visible) .nav-link-label,.shell:has(.shell-nav:hover) .nav-link-label,.shell:has(.shell-nav:focus-within) .nav-link-label){opacity:1;transform:translate(0)}.shell-main{--shell-pad:var(--pad-page);padding:var(--shell-pad) var(--shell-pad) var(--space-8);grid-area:main;overflow-x:hidden}.shell-nav-toggle,.shell-nav-backdrop,.shell-nav-head,.shell-nav-close,.shell-nav-brand,.shell-nav-profile,.shell-header-brand{display:none}@media (width<=720px){.shell{--header-height:56px;--header-total:calc(56px + env(safe-area-inset-top));--drawer-width:min(66vw, var(--sidebar-width));grid-template-columns:1fr;grid-template-rows:var(--header-total) 1fr;grid-template-areas:"header""main"}:is(.shell:has(.shell-brand:hover),.shell:has(.shell-brand:focus-visible),.shell:has(.shell-nav:hover),.shell:has(.shell-nav:focus-within)){grid-template-columns:1fr}.shell-brand{display:none}.shell-header{z-index:30;grid-template-columns:var(--tap-target) 1fr var(--tap-target);align-items:center;gap:var(--space-2);height:var(--header-total);padding:env(safe-area-inset-top) var(--space-2) 0;display:grid;position:sticky;top:0}.shell-context,.shell-header .spacer{display:none}.shell-nav-toggle{width:var(--tap-target);height:var(--tap-target);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;place-items:center;margin:0;display:inline-grid}.shell-nav-toggle:active{background:var(--bg-hover)}.shell-nav-toggle:focus-visible{outline:2px solid var(--brand-500);outline-offset:-2px}.shell-header-brand{min-width:0;color:var(--text-primary);justify-self:center;align-items:center;display:inline-flex}.shell-header-brand:hover{text-decoration:none}.shell-header-brand .brand-full{width:min(168px,52vw);height:auto}.shell-user{width:var(--tap-target);height:var(--tap-target);border-radius:var(--radius-full);justify-content:center;justify-self:end;padding:0}.shell-user>div{display:none}.shell-main{--shell-pad:var(--space-3);padding:var(--shell-pad) var(--shell-pad) calc(var(--space-6) + env(safe-area-inset-bottom));min-width:0}.shell-nav{z-index:45;width:var(--drawer-width);height:100dvh;padding:0 var(--space-1) max(var(--space-3), env(safe-area-inset-bottom));border-right:1px solid var(--sidebar-border);overscroll-behavior:contain;scrollbar-width:none;visibility:hidden;transition:transform var(--duration-base) var(--ease), visibility 0s linear var(--duration-base);gap:0;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-100%);box-shadow:2px 0 8px #0000002e}.shell-nav::-webkit-scrollbar{display:none}.shell:not(.is-nav-collapsed) .shell-nav{visibility:visible;transition:transform var(--duration-base) var(--ease), visibility 0s;transform:translate(0)}.shell-nav-head{z-index:1;justify-content:space-between;align-items:center;gap:var(--space-2);margin:0 calc(var(--space-1) * -1) var(--space-2);padding:max(var(--space-2), env(safe-area-inset-top)) var(--space-2) var(--space-2);background:var(--sidebar-bg);border-bottom:1px solid var(--sidebar-border);display:flex;position:sticky;top:0}.shell-nav-brand{min-width:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:var(--bg-surface);align-items:center;display:inline-flex}.shell-nav-brand:hover{text-decoration:none}.shell-nav-brand .brand-full{width:108px;height:auto}.shell-nav-close{border-radius:var(--radius-full);background:var(--sidebar-hover);width:32px;height:32px;color:var(--sidebar-text-strong);-webkit-tap-highlight-color:transparent;flex-shrink:0;place-items:center;display:inline-grid}.shell-nav-close:active{background:var(--sidebar-active-bg)}.shell-nav-profile{align-items:center;gap:var(--space-2);min-width:0;margin-bottom:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:color-mix(in srgb, var(--sidebar-hover) 68%, transparent);color:var(--sidebar-text-strong);display:flex}.shell-nav-profile>div{min-width:0}.shell-nav-profile-name,.shell-nav-profile-role{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.shell-nav-profile-name{font-size:var(--text-sm);font-weight:var(--weight-semi)}.shell-nav-profile-role{font-size:var(--text-xs);color:var(--sidebar-muted)}.shell-nav-surface{opacity:1;padding:0 var(--space-2) var(--space-1);display:block}.shell-nav-group{opacity:1;display:block}.nav-link{justify-content:flex-start;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-tight);text-align:left;-webkit-tap-highlight-color:transparent;flex-direction:row}.nav-link:active{background:var(--sidebar-active-bg)}.nav-link-label{opacity:1;max-width:100%;transform:none}.nav-link.is-active{box-shadow:inset 3px 0 0 var(--sidebar-active-text)}.nav-parent{flex-direction:column;gap:1px;display:flex}.nav-parent-label{width:100%;color:var(--sidebar-text-strong);display:flex}.nav-subitems{padding:var(--space-1) 0 var(--space-1) var(--space-3);flex-direction:column;gap:1px;display:none}.nav-parent.is-open .nav-subitems{display:flex}.nav-subitem{background:color-mix(in srgb, var(--sidebar-hover) 32%, transparent);min-height:40px;margin-left:0}.shell:has(.shell-nav:hover) .nav-subitem{background:color-mix(in srgb, var(--sidebar-hover) 32%, transparent);min-height:40px;margin-left:0}.shell:has(.shell-nav:focus-within) .nav-subitem{background:color-mix(in srgb, var(--sidebar-hover) 32%, transparent);min-height:40px;margin-left:0}.shell-nav-section+.shell-nav-section{border-top-color:var(--sidebar-border)}.shell-nav-backdrop{z-index:40;opacity:1;transition:opacity var(--duration-base) var(--ease);background:#080f1e57;border:none;display:block;position:fixed;inset:0}.shell-nav-backdrop[hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-base) var(--ease), visibility 0s linear var(--duration-base);display:block}}@media (prefers-reduced-motion:reduce){.shell-nav{transition:none}}@media (width<=380px){.shell-header{gap:var(--space-1);padding-inline:var(--space-1)}.shell-header-brand .brand-full{width:min(140px,46vw)}}.route-error{min-height:50dvh;padding:var(--space-4);place-items:center;display:grid}.route-error-card{gap:var(--space-2);max-width:520px;padding:var(--space-5);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-direction:column;align-items:flex-start;display:flex}.route-error-icon{border-radius:var(--radius-full);background:var(--amber-bg);width:36px;height:36px;color:var(--amber-500);place-items:center;display:grid}.route-error-title{font-size:var(--text-xl)}.route-error-message{color:var(--text-secondary)}.route-error-detail{width:100%;margin-top:var(--space-2);font-size:var(--text-sm)}.route-error-detail summary{cursor:pointer;color:var(--text-muted)}.route-error-detail pre{margin-top:var(--space-2);padding:var(--space-3);background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);white-space:pre-wrap;word-break:break-word;overflow-x:auto}.dashboard-summary-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-stat .stat-label{display:block}.dashboard-stat .stat-value{font-size:clamp(var(--text-xl), 2.2vw, var(--text-3xl));letter-spacing:-.03em}.dashboard-enquiry-callout{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm);display:flex}.dashboard-enquiry-callout:hover{border-color:var(--brand-300);text-decoration:none}.dashboard-enquiry-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.dashboard-enquiry-copy>span{color:var(--text-secondary);font-size:var(--text-sm)}.dashboard-page .card>.card-header .card-title svg{border-radius:var(--radius-full);background:var(--brand-50);width:26px;height:26px;color:var(--brand-600);flex-shrink:0;padding:5px}.dashboard-card-link{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-brand);white-space:nowrap}.dashboard-card-link:hover{text-decoration:underline}.dashboard-row-action{text-align:right;white-space:nowrap;width:1%}.dashboard-page .empty svg{color:var(--text-muted);margin-bottom:var(--space-1)}.dashboard-tools{position:relative}.dashboard-tools summary{cursor:pointer;list-style:none}.dashboard-tools summary::-webkit-details-marker{display:none}.dashboard-tools-menu:before{content:"";left:0;right:0;top:calc(var(--space-1) * -1);height:var(--space-1);position:absolute}.dashboard-tools-menu{right:0;top:calc(100% + var(--space-1));z-index:20;min-width:184px;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;gap:1px;display:flex;position:absolute}.dashboard-tools-menu .eyebrow{padding:var(--space-1) var(--space-2) var(--space-1)}.dashboard-tools-menu a{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);display:flex}.dashboard-tools-menu a svg{color:var(--text-muted);flex-shrink:0}.dashboard-tools-menu a:hover{background:var(--bg-brand-sub);color:var(--text-brand);text-decoration:none}.dashboard-tools-menu a:hover svg{color:var(--text-brand)}.dashboard-tools-menu .dashboard-tools-divider{margin-top:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--border)}@media (width<=720px){.dashboard-page{gap:var(--space-3)}.dashboard-summary-cards{gap:var(--space-1)}.dashboard-stat{min-width:0;padding:var(--space-2) var(--space-1)}.dashboard-page .page-header{align-items:stretch}.dashboard-page .page-header>div:first-child{min-width:0}.dashboard-page .page-header>.row-tight{justify-content:flex-end;width:100%}.dashboard-tools{width:auto;margin-left:auto}.dashboard-tools>summary{width:auto;min-height:32px;padding-inline:var(--space-2)}.dashboard-tools-menu{right:0;top:calc(100% + var(--space-1));width:max-content;min-width:168px;max-width:calc(100vw - var(--space-6));box-shadow:var(--shadow-lg);margin-top:0;position:absolute}.dashboard-tools-menu:before{display:block}.dashboard-tools-menu a{min-height:34px;padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.dashboard-page .card-header{flex-wrap:wrap;align-items:flex-start}.dashboard-card-link{align-items:center;min-height:28px;display:inline-flex}}@media (width<=560px){.dashboard-summary-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-stat .stat-hint{display:none}.dashboard-stat .stat-label{white-space:normal;font-size:10px;line-height:1.15}.dashboard-stat .stat-value{font-size:var(--text-xl)}}@media (width<=380px){.dashboard-summary-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-stat{min-height:58px;padding-inline:3px}.dashboard-page .stat-chip{display:none}.dashboard-stat .stat-value{font-size:var(--text-lg)}}.search-bar{align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);transition:border-color var(--duration-fast) var(--ease);display:flex}.search-bar:focus-within{border-color:var(--focus-ring);outline:2px solid color-mix(in srgb, var(--focus-ring) 28%, transparent)}.search-icon{color:var(--text-muted);flex-shrink:0}.search-input{min-width:0;font-size:var(--text-sm);background:0 0;border:none;flex:1;padding:0}.search-input:focus{outline:none}.search-input::-webkit-search-cancel-button{display:none}@media (width<=720px){.search-input{font-size:16px}}.search-clear{border-radius:var(--radius-full);width:18px;height:18px;color:var(--text-muted);font-size:var(--text-md);flex-shrink:0;place-items:center;line-height:1;display:grid}.search-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.enquiry-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.enquiry-card{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);flex-direction:column;display:flex}.enquiry-card.is-new{border-left:3px solid var(--red-500)}.enquiry-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.enquiry-name{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--brand-700)}.enquiry-when{font-size:var(--text-xs);color:var(--text-muted)}.enquiry-contacts{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.enquiry-contact{align-items:center;gap:var(--space-1);min-height:32px;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--brand-600);text-decoration:none;display:inline-flex}.enquiry-contact:hover{text-decoration:underline}.enquiry-contact svg{flex-shrink:0}.enquiry-message{font-size:var(--text-sm);color:var(--text-primary);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.enquiry-message.is-preview{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.enquiry-read{align-self:flex-start;margin-top:auto}.enquiry-handled,.enquiry-notes{font-size:var(--text-xs);color:var(--text-muted)}.enquiry-notes{padding-left:var(--space-2);border-left:2px solid var(--border);color:var(--text-secondary);white-space:pre-wrap}.enquiry-actions,.enquiry-close .row-tight{gap:var(--space-2);flex-wrap:wrap;margin-top:auto;display:flex}.enquiry-close{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);flex-direction:column;display:flex}@media (width<=720px){.enquiry-grid{grid-template-columns:1fr}.enquiry-name{font-size:var(--text-lg)}.enquiry-message,.enquiry-contact{font-size:var(--text-base)}.enquiry-actions .btn{flex:1}}.enquiry-detail-back{align-self:flex-start;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium);display:inline-flex}.enquiry-detail-page{gap:var(--space-4);max-width:1120px}.enquiry-detail-page .card{min-width:0;overflow:hidden}.enquiry-detail-page .card-header{flex-wrap:wrap}.enquiry-message-body>p{max-width:78ch;font-size:var(--text-base);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.65}.enquiry-sender-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.enquiry-sender-grid>div{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.enquiry-sender-grid dt{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase}.enquiry-sender-grid dd{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--weight-medium);overflow-wrap:anywhere}.enquiry-sender-grid a{align-items:center;gap:var(--space-2);display:inline-flex}.enquiry-sender-grid a span{overflow-wrap:anywhere;min-width:0}.enquiry-sender-grid a svg{flex-shrink:0}.enquiry-detail-list{gap:var(--space-4) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.enquiry-detail-list>div{gap:var(--space-2);grid-template-columns:100px minmax(0,1fr);display:grid}.enquiry-detail-list dt{color:var(--text-muted);font-size:var(--text-sm)}.enquiry-detail-list dd{overflow-wrap:anywhere;margin:0}.enquiry-detail-actions .enquiry-close,.enquiry-handling-body{gap:var(--space-3);flex-direction:column;display:flex}.enquiry-detail-actions .enquiry-close{border:0;max-width:640px;padding:0}.enquiry-handling-body .row-tight{flex-wrap:wrap}.enquiry-staff-notes h3{font-size:var(--text-sm);margin-bottom:var(--space-1)}.enquiry-staff-notes p{color:var(--text-secondary);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}@media (width<=720px){.enquiry-sender-grid,.enquiry-detail-list{grid-template-columns:1fr}.enquiry-detail-list>div{grid-template-columns:88px minmax(0,1fr)}}.analytics-stats,.analytics-columns{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.analytics-stat{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.analytics-stat>span{flex-direction:column;display:flex}.analytics-trend{align-items:end;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(34px,1fr));min-height:150px;display:grid}.analytics-day{align-items:center;gap:var(--space-1);flex-direction:column;display:flex;position:relative}.analytics-bar-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);background:0 0;align-items:end;width:100%;height:120px;display:flex;overflow:hidden}.analytics-bar{background:var(--gray-950);width:100%;display:block}.analytics-tooltip{bottom:calc(100% + var(--space-1));z-index:10;min-width:150px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);font-size:var(--text-xs);text-align:center;display:none;position:absolute}.analytics-day:hover .analytics-tooltip{display:block}.analytics-row{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:1px solid var(--border);font-size:var(--text-sm);display:flex}.analytics-row:last-child{border-bottom:none}.analytics-page .badge{align-items:center;gap:var(--space-1);display:inline-flex}.invite-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.people-search-row{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.people-search-field{flex:1;min-width:240px;max-width:460px}.people-search-count{white-space:nowrap;margin-left:auto;padding-bottom:2px}.invite-fieldset{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-sunken)}.invite-fieldset legend{padding:0 var(--space-2)}.checkbox{align-items:flex-start;gap:var(--space-2);font-size:var(--text-base);color:var(--text-secondary);cursor:pointer;display:flex}.checkbox input{width:16px;height:16px;accent-color:var(--brand-600);flex-shrink:0;margin-top:3px}.invite-link{border-left:3px solid var(--brand-500)}.invite-link-row{flex-wrap:wrap}.invite-link-value{min-width:240px;padding:var(--space-1) var(--space-2);background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);white-space:nowrap;flex:1;overflow-x:auto}@media (width<=720px){.people-search-row{align-items:stretch;gap:var(--space-2)}.people-search-field{width:100%;min-width:0;max-width:none}.people-search-count{white-space:normal;margin-left:0;padding-bottom:0}}.form-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.form-grid-wide{grid-column:1/-1}.guardian-portal{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-sunken)}.guardian-portal legend{padding:0 var(--space-2)}.guardian-permissions{margin-top:var(--space-3);padding-left:var(--space-4);border-left:2px solid var(--border-strong)}.allergies{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-sunken)}.allergies legend{padding:0 var(--space-2)}.allergy-row{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:1fr 1fr 150px auto;align-items:start;display:grid}.allergy-actions{align-items:center;gap:var(--space-1);min-height:var(--control-height);display:flex}.allergy-list{gap:var(--space-1);margin-top:var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex}.allergy-item{align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--text-sm);display:flex}.allergy-item-body{flex:1;min-width:0}.allergy-remove{padding-inline:var(--space-2);min-height:var(--control-height);color:var(--text-muted)}.allergy-remove:hover{color:var(--text-primary)}@media (width<=640px){.allergy-row{grid-template-columns:1fr auto}.allergy-row .field:first-child{grid-column:1/-1}.allergy-actions{grid-column:1/-1;justify-content:flex-end}}.system-page{margin:0 auto}.system-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.system-tile{align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;display:flex}.system-tile:hover{border-color:var(--border-strong);text-decoration:none}.system-tile-body{flex-direction:column;gap:2px;display:flex}.system-tile-title{font-size:var(--text-sm);font-weight:var(--weight-semi)}.system-tile-description{color:var(--text-secondary);font-size:var(--text-xs);line-height:1.35}.system-note{align-items:flex-start;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);display:flex}.system-modal-backdrop{z-index:50;padding:var(--space-4);background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.system-password-modal{gap:var(--space-3);width:min(100%,420px);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.system-modal-head,.system-modal-actions{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.system-modal-close{width:28px;height:28px;padding:0}.payments-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-modal-backdrop{z-index:60;padding:var(--space-4);background:#080f1e70;place-items:center;display:grid;position:fixed;inset:0}.invoice-modal{width:min(100%,980px);max-height:calc(100dvh - var(--space-6));border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.invoice-modal-head,.invoice-modal-foot{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);flex-shrink:0;display:flex}.invoice-modal-head{border-bottom:1px solid var(--border);justify-content:space-between}.invoice-modal-foot{border-top:1px solid var(--border);justify-content:flex-end}.invoice-modal-body{padding:var(--space-4);overflow-y:auto}.invoice-modal-close{min-width:32px;min-height:32px;padding:0}.invoice-preview{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--brand-200);border-radius:var(--radius-md);background:var(--brand-50);flex-direction:column;display:flex}.invoice-preview-person{align-items:center;gap:var(--space-3);display:flex}.invoice-preview-person>div{flex-direction:column;min-width:0;display:flex}.invoice-preview-name{font-size:var(--text-md);font-weight:var(--weight-semi);color:var(--text-brand)}.invoice-preview-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));margin:0;display:grid}.invoice-preview-grid dt{font-size:var(--text-xs);font-weight:var(--weight-semi);text-transform:uppercase;letter-spacing:.04em;color:var(--brand-500)}.invoice-preview-grid dd{font-size:var(--text-md);color:var(--text-primary);margin:0}.invoice-preview-amount{font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--text-brand)}.invoice-row-actions{gap:var(--space-1);white-space:nowrap;justify-content:flex-end;display:flex}.invoice-send{gap:var(--space-2);padding:var(--space-3) var(--space-1);flex-direction:column;display:flex}.invoice-send-title{font-size:var(--text-sm);font-weight:var(--weight-semi);color:var(--text-brand);margin:0}.invoice-send-people{gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));display:grid}.invoice-send-person{align-items:flex-start;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;display:flex}.invoice-send-person:hover{border-color:var(--brand-300)}.invoice-send-person input{flex-shrink:0;margin-top:2px}.invoice-send-person>span{flex-direction:column;min-width:0;display:flex}.invoice-send-person strong{font-size:var(--text-sm)}.invoice-send-person .text-xs{overflow-wrap:anywhere}.invoice-send-extra{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.invoice-send-extra .input{flex:1;min-width:200px}.invoice-send-done{padding:var(--space-2) var(--space-1);font-size:var(--text-sm);color:var(--green-500);margin:0}.invoice-sent-cell{overflow-wrap:anywhere;max-width:260px}@media (width<=560px){.invoice-modal-backdrop{align-items:flex-end;padding:0}.invoice-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:92dvh}.invoice-row-actions{flex-direction:column}}.invoice-modal-body>*+*{margin-top:var(--space-4)}.invoice-lines-head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.invoice-lines-table th{white-space:nowrap}.invoice-lines-table td{padding:var(--space-1) var(--space-2);vertical-align:middle}.invoice-lines-table .input{width:100%;min-height:34px}.invoice-cell-num{text-align:right;font-variant-numeric:tabular-nums;width:92px}.invoice-cell-amount{white-space:nowrap;font-variant-numeric:tabular-nums}.invoice-line-remove{min-width:32px;min-height:32px;color:var(--text-muted);padding:0}.invoice-line-remove:hover{color:var(--red-500);background:var(--red-bg)}.invoice-lines-total{justify-content:flex-end;align-items:baseline;gap:var(--space-3);padding:var(--space-3) var(--space-2) var(--space-1);border-top:2px solid var(--brand-700);font-variant-numeric:tabular-nums;display:flex}.invoice-lines-total strong{font-size:var(--text-xl);color:var(--text-brand)}.invoice-modal-foot-total{font-size:var(--text-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums}@media (width<=720px){.invoice-cell-num{width:72px}.invoice-lines-table td{padding:var(--space-1)}}.invoice-expand-cell{width:1%;padding-right:0}.invoice-expand{min-width:28px;min-height:28px;color:var(--text-muted);padding:0}.invoice-expand:hover{color:var(--text-brand)}.invoice-detail-row>td{background:var(--brand-50);padding:0}.invoice-detail{padding:var(--space-4)}.invoice-detail-cols{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));display:grid}.invoice-detail-head{margin:0 0 var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semi);text-transform:uppercase;letter-spacing:.05em;color:var(--brand-500)}.invoice-detail-head-row{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-4);display:flex}.invoice-detail-head-row .invoice-detail-head{margin-bottom:0}.invoice-detail-facts{gap:var(--space-1);margin:0 0 var(--space-3);display:grid}.invoice-detail-facts>div{gap:var(--space-2);font-size:var(--text-sm);display:flex}.invoice-detail-facts dt{color:var(--text-muted);flex:0 0 88px}.invoice-detail-facts dd{color:var(--text-primary);margin:0}.invoice-detail-lines{background:var(--bg-surface);border-radius:var(--radius-md)}.invoice-detail-lines td{font-size:var(--text-sm)}.invoice-detail-total td{font-weight:var(--weight-semi);color:var(--text-brand);border-top:1px solid var(--brand-200)}.invoice-detail-list{gap:var(--space-2);margin:0 0 var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex}.invoice-detail-list li{padding:var(--space-2);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--text-sm);overflow-wrap:anywhere;flex-direction:column;display:flex}.invoice-detail-money{gap:var(--space-5);margin:var(--space-3) 0 0;padding-top:var(--space-3);border-top:1px solid var(--brand-200);display:flex}.invoice-detail-money dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--brand-500)}.invoice-detail-money dd{font-size:var(--text-lg);font-weight:var(--weight-semi);font-variant-numeric:tabular-nums;margin:0}.invoice-detail-balance{color:var(--text-brand)}.invoice-overdue{color:var(--red-500);font-weight:var(--weight-semi)}.invoice-receipt-form{align-items:flex-end;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--brand-200);flex-wrap:wrap;display:flex}.invoice-receipt-form .field{flex:1;min-width:110px}.settlements-filter{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex}.invoice-receipt-number{font-size:var(--text-xs);font-weight:var(--weight-semi);letter-spacing:.03em;color:var(--brand-500);font-variant-numeric:tabular-nums}.patient-update{width:min(100%,900px)}.patient-update-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.patient-update-identity{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.patient-update-name{font-size:var(--text-lg);font-weight:var(--weight-semi);letter-spacing:-.01em}.patient-update-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.patient-update-link{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border);flex-direction:column;display:flex}.patient-update-link:first-of-type{border-top:none;padding-top:0}.patient-update-link-head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.patient-update-subhead{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.patient-picker{position:relative}.patient-picker-control{align-items:center;display:flex;position:relative}.patient-picker-input{width:100%;padding-right:calc(var(--tap-target) + var(--space-1))}.patient-picker-btn{right:var(--space-1);border-radius:var(--radius-md);width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;place-items:center;display:grid;position:absolute}.patient-picker-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.patient-picker-btn:focus-visible{outline:2px solid var(--brand-500);outline-offset:-2px}.patient-picker-list{top:calc(100% + var(--space-1));z-index:20;max-height:min(340px,52vh);padding:var(--space-1);overscroll-behavior:contain;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin:0;list-style:none;position:absolute;left:0;right:0;overflow-y:auto}.patient-picker-option{justify-content:space-between;align-items:baseline;gap:var(--space-3);width:100%;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.patient-picker-option.is-highlighted{background:var(--bg-hover)}.patient-picker-option.is-selected{color:var(--brand-700);font-weight:var(--weight-semi)}.patient-picker-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.patient-picker-meta{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex-shrink:0}.patient-picker-empty{padding:var(--space-3);color:var(--text-muted);font-size:var(--text-sm)}.encounter{gap:var(--gap-block);width:min(100%,980px);padding-bottom:var(--space-2);color:var(--text-primary);flex-direction:column;margin:0 auto;display:flex}.encounter-back{font-size:var(--text-sm);color:var(--text-muted)}.patient-banner{z-index:8;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--pad-tight);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex;position:sticky;top:0}.patient-banner.is-critical{border-color:color-mix(in srgb, var(--red-500) 40%, transparent);box-shadow:inset 3px 0 0 var(--red-500), var(--shadow-sm);padding-left:var(--space-4)}.patient-name{font-size:var(--text-md);font-weight:var(--weight-semi);letter-spacing:-.01em}.patient-meta{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.banner-divider{background:var(--border);align-self:stretch;width:1px}.dnr-flag{padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--gray-950);color:var(--gray-0);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.04em}.banner-label{font-size:var(--text-xs);font-weight:var(--weight-semi);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.banner-secondary{align-items:baseline;gap:var(--space-2);padding-top:var(--space-1);border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--text-secondary);flex-basis:100%;display:flex}.status-bar{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--pad-tight);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-wrap:wrap;display:flex}.status-bar.is-running{box-shadow:inset 3px 0 0 var(--amber-500)}.status-bar.is-done{box-shadow:inset 3px 0 0 var(--green-500)}.status-bar.is-stopped{box-shadow:inset 3px 0 0 var(--red-500)}.status-bar .eyebrow.badge-success{color:var(--green-500)}.status-bar .eyebrow.badge-warning{color:var(--amber-500)}.status-bar .eyebrow.badge-danger{color:var(--red-500)}.status-bar .eyebrow.badge-info{color:var(--blue-500)}.elapsed{font-size:var(--text-lg);font-weight:var(--weight-semi);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.tab-tick{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:#0000;width:13px;height:13px;transition:background-color var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease);flex-shrink:0;place-items:center;display:grid}.tab-tick.is-done{border-color:var(--green-500);background:var(--green-500);color:var(--bg-surface)}.tab-badge{border-radius:var(--radius-full);background:var(--bg-sunken);min-width:17px;font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding:0 4px}.tab-rail-item.is-active .tab-badge{background:var(--bg-brand-sub);color:var(--text-brand)}.tab-badge.is-attention{background:var(--text-primary);color:#fff}.task-menu{flex:none;position:relative}.task-menu-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--weight-semi);cursor:pointer;list-style:none;display:flex}.task-menu-button::-webkit-details-marker{display:none}.task-menu[open] .task-menu-button{border-color:var(--text-primary)}.task-menu-panel{top:calc(100% + var(--space-2));z-index:12;width:min(420px, calc(100vw - var(--space-8)));max-height:min(560px,70vh);padding:var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);position:absolute;right:0;overflow:auto}.task-panel{gap:var(--space-3)}.task-menu-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);display:flex}.panel{gap:var(--gap-block);padding:var(--pad-block);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);flex-direction:column;display:flex}.panel-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.panel-title{font-size:var(--text-base);font-weight:var(--weight-semi)}.panel-hint{font-size:var(--text-xs);color:var(--text-muted);max-width:70ch}.assessment-form,.assessment-panel{gap:var(--space-5);padding:var(--space-5);margin-bottom:var(--space-4)}.assessment-form>.panel-head,.assessment-panel>.panel-head{padding-bottom:var(--space-3)}.assessment-form>.panel-head .panel-title,.assessment-panel>.panel-head .panel-title{font-size:var(--text-xl);line-height:1.25}.assessment-section{gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}.assessment-section-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.assessment-section-head .panel-title{font-size:var(--text-lg);line-height:1.3}.assessment-section-body{gap:var(--space-3);flex-direction:column;display:flex}.assessment-form .record-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.assessment-form .field{gap:var(--space-1)}.assessment-form .label{font-size:var(--text-sm);font-weight:var(--weight-semi);color:var(--text-primary)}.assessment-form .input,.assessment-form .select,.assessment-form .textarea{min-height:38px;font-size:var(--text-base);line-height:1.45}.assessment-form .textarea{min-height:96px}.assessment-form .checkbox{gap:var(--space-2);font-size:var(--text-base);color:var(--text-primary)}.assessment-form .row-tight{gap:var(--space-3)}@media (width<=720px){.encounter .input,.encounter .select,.encounter .textarea,.assessment-form .input,.assessment-form .select,.assessment-form .textarea{font-size:16px}.assessment-form .neuro-table-wrap{display:none}.neuro-card-list{gap:var(--space-3);flex-direction:column;display:flex}.neuro-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.neuro-card-title{font-size:var(--text-sm);font-weight:var(--weight-semi)}.neuro-card-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.neuro-card-time{grid-column:1/-1}}.assessment-form .table-wrap,.assessment-section,.assessment-section-body{overflow:visible}.assessment-form .table{min-width:100%}.time-suggestion{gap:var(--space-1);grid-template-columns:minmax(92px,1fr) auto;align-items:center;display:grid}.time-suggestion-menu{position:relative}.time-suggestion-menu summary{min-height:30px;list-style:none}.time-suggestion-menu summary::-webkit-details-marker{display:none}.time-suggestion-menu button{z-index:10;min-width:132px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-xs);text-align:left;box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + 2px);right:0}.neuro-card-list{display:none}@media (width<=860px){.assessment-form .neuro-table-wrap{display:none}.neuro-card-list{gap:var(--space-3);flex-direction:column;display:flex}.neuro-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.neuro-card-title{font-size:var(--text-sm);font-weight:var(--weight-semi)}.neuro-card-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.neuro-card-time{grid-column:1/-1}}@media (width<=760px){.time-suggestion{grid-template-columns:minmax(0,1fr) auto}.time-suggestion-menu button{top:calc(100% + 2px);right:0}}.vitals-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(84px,1fr));display:grid}.vitals-record-section{gap:var(--space-3);flex-direction:column;display:flex}.vitals-record-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.vitals-record-grid{column-gap:var(--space-6);row-gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}@media (width<=720px){.vitals-record-grid{column-gap:var(--space-3);row-gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.vitals-record-item{padding-bottom:var(--space-2);grid-template-columns:1fr;gap:1px}.vitals-record-label{font-size:var(--text-xs)}.vitals-record-value{font-size:var(--text-sm)}}@media (width<=520px){.vitals-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=340px){.vitals-record-grid{grid-template-columns:1fr}}.vitals-record-item{align-items:baseline;gap:var(--space-1) var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);grid-template-columns:1fr auto;display:grid}.vitals-record-label{color:var(--text-secondary);font-size:var(--text-sm)}.vitals-record-value{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--weight-semi)}.vitals-record-unit{color:var(--text-muted);font-size:var(--text-xs)}.vitals-record-item .badge{grid-column:1/-1;justify-self:start}.vitals-history-list{gap:var(--space-5);flex-direction:column;display:flex}.vitals-history-set-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);margin-bottom:var(--space-2);border-bottom:1px solid var(--border);display:flex}.vitals-history-time{font-weight:var(--weight-semi);color:var(--text-secondary)}.vitals-history-readings{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.vitals-history-row{align-items:baseline;gap:var(--space-1) var(--space-3);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--text-sm);grid-template-columns:1fr auto;display:grid}.vitals-history-row .chart-row-name{color:var(--text-secondary);font-weight:var(--weight-normal)}.vitals-history-value{font-weight:var(--weight-medium);text-align:right}.vitals-history-flags{gap:var(--space-2);flex-wrap:wrap;grid-column:1/-1;min-width:0;display:flex}@media (width<=560px){.vitals-history-readings{grid-template-columns:repeat(2,minmax(0,1fr))}.vitals-history-row .chart-row-name,.vitals-history-value{font-size:var(--text-xs)}}@media (width<=340px){.vitals-history-readings{grid-template-columns:1fr}}.vitals-entry{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(110px,1fr));display:grid}@media (width<=720px){.vitals-entry{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.vitals-entry .label{min-height:2.2em;font-size:var(--text-xs);align-items:flex-start;line-height:1.1}.vitals-entry .input{min-height:34px}}@media (width<=520px){.vitals-entry{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=340px){.vitals-entry{grid-template-columns:1fr}}.vitals-bp{align-items:center;gap:var(--space-1);display:flex}.vitals-bp .input{text-align:center}.vitals-bp-slash{color:var(--text-muted)}.task{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border);display:flex}.task:first-of-type{padding-top:0}.task:last-child{border-bottom:none;padding-bottom:0}.task-check{width:18px;height:18px;accent-color:var(--brand-600);cursor:pointer;flex-shrink:0;margin-top:1px}.task-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.task-title{font-size:var(--text-sm);font-weight:var(--weight-medium)}.task-title.is-done{color:var(--text-muted);text-decoration:line-through}.task-instructions,.task-outcome{font-size:var(--text-xs);color:var(--text-secondary)}.task-required{font-size:var(--text-xs);color:var(--amber-500);font-weight:var(--weight-medium)}.chart-row{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--bg-sunken);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.chart-row.is-alert{background:var(--red-bg)}.chart-row-name{font-weight:var(--weight-medium)}.medication-lines{gap:var(--space-3);flex-direction:column;display:flex}.medication-line{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.medication-line-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.record-form{gap:var(--space-2);padding:var(--pad-tight);border:1px dashed var(--border-strong);border-radius:var(--radius-md);flex-direction:column;display:flex}.record-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.section-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.note-history{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.note-history-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.note-entry{gap:var(--space-3);padding:var(--pad-tight);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);flex-direction:column;display:flex}.note-prepared{align-items:center;gap:var(--space-2);color:var(--text-secondary);flex-wrap:wrap;display:flex}.note-prepared strong,.note-section strong{color:var(--text-primary)}.note-section{gap:var(--space-1);padding-top:var(--space-3);border-top:1px solid var(--border);flex-direction:column;display:flex}.note-section p{color:var(--text-secondary);line-height:1.55}.encounter-actions-menu{margin-bottom:var(--space-1);align-self:flex-end;position:relative}.encounter-actions-trigger{width:34px;min-height:30px;font-size:var(--text-xs);padding-inline:0;list-style:none}.encounter-actions-trigger::-webkit-details-marker{display:none}.encounter-actions-panel{right:0;top:calc(100% + var(--space-1));z-index:20;min-width:184px;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;gap:1px;display:flex;position:absolute}.encounter-actions-panel button{align-items:center;gap:var(--space-2);width:100%;min-height:34px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);text-align:left;display:flex}.encounter-actions-panel button:hover{background:var(--bg-hover)}.encounter-actions-panel button:disabled{opacity:.55;cursor:not-allowed}.encounter-actions-panel button.is-primary{color:var(--text-brand);font-weight:var(--weight-semi)}@media (width<=720px){.patient-banner{margin:0 calc(var(--space-3) * -1);border-left:none;border-right:none;border-radius:0}.encounter-actions-menu{width:auto;margin-bottom:var(--space-2)}.encounter-actions-trigger{width:34px;min-height:30px}.encounter-actions-panel{min-width:176px}.task-menu,.task-menu-button{width:100%}.task-menu-panel{width:100%;max-height:none;margin-top:var(--space-2);position:static}}.assessment-doc{gap:var(--space-5);flex-direction:column;display:flex}.doc-meta{gap:var(--space-3) var(--space-6);padding-bottom:var(--space-3);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.doc-section{gap:var(--space-3);flex-direction:column;display:flex}.doc-heading{font-size:var(--text-xs);font-weight:var(--weight-semi);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.doc-grid{column-gap:var(--space-6);row-gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.doc-field{flex-direction:column;gap:2px;min-width:0;display:flex}.doc-label{font-size:var(--text-xs);color:var(--text-muted)}.doc-value{font-size:var(--text-sm);color:var(--text-primary)}.doc-flag{color:var(--red-500);font-weight:var(--weight-semi)}.doc-prose{gap:var(--space-1);flex-direction:column;display:flex}.doc-paragraph{font-size:var(--text-sm);color:var(--text-primary);white-space:pre-wrap;max-width:68ch;line-height:1.65}.doc-table td{font-size:var(--text-sm)}.doc-neuro-card-list{display:none}.doc-neuro-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.doc-neuro-card-title{font-size:var(--text-sm);font-weight:var(--weight-semi)}.doc-neuro-card-grid{gap:var(--space-2) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=720px){.assessment-doc{gap:var(--space-4)}.doc-meta{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.doc-grid{column-gap:var(--space-3);row-gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.doc-field{min-width:0}.doc-value{overflow-wrap:anywhere}.doc-neuro-table-wrap{display:none}.doc-neuro-card-list{gap:var(--space-3);flex-direction:column;display:flex}}@media (width<=380px){.doc-meta,.doc-grid,.doc-neuro-card-grid{grid-template-columns:1fr}}.doc-signoff{padding-top:var(--space-3);border-top:1px solid var(--border);flex-direction:column;gap:2px;display:flex}.doc-signature{font-size:var(--text-base);font-weight:var(--weight-semi);color:var(--text-primary)}.encounter-rail{margin-bottom:var(--space-1)}.encounter-rail .tab-tick{flex-shrink:0}.portal-home,.portal-records,.portal-visits{--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--pad-block:var(--space-4);--gap-block:var(--space-3)}.portal-home{width:min(100%,980px)}.portal-home>header{gap:var(--space-1);flex-direction:column;display:flex}.portal-dashboard-top{gap:var(--space-3);grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:stretch;display:grid}.portal-dashboard-top>*{min-width:0}.portal-safety-card{grid-column:1/-1}.portal-next{gap:var(--space-1);border-left:3px solid var(--brand-500);flex-direction:column;align-items:flex-start;display:flex}.portal-next-time{font-size:clamp(var(--text-xl), 2.2vw, var(--text-3xl));font-weight:var(--weight-semi);font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1.1}.portal-next-nurse{font-size:var(--text-md);color:var(--text-secondary)}.portal-stat-text{font-size:var(--text-lg);font-weight:var(--weight-semi);line-height:1.2}.portal-stats{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.portal-stats .stat{min-width:0}.portal-visit{align-items:center;gap:var(--space-4);padding:var(--pad-tight) var(--pad-block);display:flex}.portal-visit-when{min-width:130px}.portal-visit-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.portal-visit-date{font-size:var(--text-sm);color:var(--text-muted)}.portal-visit-time{font-size:var(--text-md);font-weight:var(--weight-semi);font-variant-numeric:tabular-nums}.portal-summary{gap:var(--space-1);margin-top:var(--space-2);color:var(--text-secondary);font-size:var(--text-sm);flex-direction:column;max-width:72ch;display:flex}.portal-summary p{margin:0}.portal-last-visit .card-header{align-items:flex-start}.portal-last-visit .row-tight,.portal-support-card .row-tight{flex-wrap:wrap}@media (width<=520px){.portal-visit{align-items:flex-start;gap:var(--space-2);flex-direction:column}}.portal-person{align-items:center;gap:var(--space-3);flex-wrap:wrap;min-height:100%;display:flex}.portal-person-identity{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.portal-person-name{font-size:var(--text-lg);font-weight:var(--weight-semi);letter-spacing:-.01em}.portal-person-meta{gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);flex-wrap:wrap;display:flex}.portal-switcher{gap:var(--space-2);flex-wrap:wrap;display:flex}.portal-switch{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--bg-surface);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;display:flex}.portal-switch.is-active{border-color:var(--bg-brand);background:var(--bg-brand);color:var(--text-on-brand)}.portal-switch:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px}.portal-facts{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.portal-facts-label{font-size:var(--text-xs);color:var(--text-muted);flex:0 0 90px}.portal-facts-values{gap:var(--space-2);flex-wrap:wrap;flex:1;min-width:0;display:flex}@media (width<=760px){.portal-home{gap:var(--space-4)}.portal-dashboard-top{grid-template-columns:1fr}.portal-safety-card{grid-column:auto}.portal-stats{gap:var(--space-1);grid-template-columns:repeat(3,minmax(0,1fr))}.portal-stats .stat{padding:var(--space-2) var(--space-1);border-radius:var(--radius-md)}.portal-stats .stat-label{white-space:normal;font-size:10px;line-height:1.15}.portal-stats .stat-value,.portal-stats .portal-stat-text{font-size:var(--text-base);line-height:1.15}.portal-stats .stat-hint{display:none}.portal-person{align-items:flex-start}.portal-person .avatar{flex-shrink:0}.portal-person>.badge{margin-left:auto}.portal-facts{align-items:flex-start;gap:var(--space-1) var(--space-2)}.portal-facts-label{flex-basis:100%}.portal-last-visit .card-header{gap:var(--space-1)}.portal-support-card .btn{flex:150px}}@media (width<=420px){.portal-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-stats .stat{padding:var(--space-1)}.portal-stats .stat-label{font-size:9px}.portal-stats .stat-value,.portal-stats .portal-stat-text{font-size:var(--text-sm)}.portal-next-time{font-size:var(--text-xl)}.portal-person-name{font-size:var(--text-base)}}.portal-record-visit{gap:var(--space-2);padding-bottom:var(--space-4);border-bottom:1px solid var(--border);flex-direction:column;display:flex}.portal-record-visit:last-child{border-bottom:none;padding-bottom:0}.portal-record-head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.portal-record-when{font-weight:var(--weight-semi)}.portal-record-card-list{display:none}@media (width<=720px){.portal-records-table-wrap{display:none}.portal-record-card-list{gap:var(--space-2);flex-direction:column;display:flex}.portal-record-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.portal-record-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.portal-record-card-head>div{min-width:0}.portal-record-card-head strong{font-size:var(--text-base);display:block}.portal-record-card-label,.portal-record-card-grid dt{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;display:block}.portal-record-card-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portal-record-card-grid dd{font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere;margin:0}.portal-record-card .btn{min-height:34px;padding-inline:var(--space-2);font-size:var(--text-xs)}}@media (width<=380px){.portal-record-card-head{flex-direction:column}.portal-record-card .btn{width:100%}}@media (width<=720px){.encounters-page{gap:var(--space-3)}.encounters-table-wrap{display:none}}.encounter-patient-page{gap:var(--space-4);width:min(100%,900px);margin:0 auto}.encounter-patient-heading{align-items:center;display:flex}.encounter-back-icon{border:1px solid var(--border);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);place-items:center;display:inline-grid}.encounter-back-icon:hover{color:var(--text-primary);text-decoration:none}.encounter-patient-page .profile-header{padding:var(--space-2) 0 var(--space-3);border:none;border-bottom:1px solid var(--border);background:0 0;border-radius:0}.encounter-basic-section{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:0 0;flex-direction:column;display:flex}.encounter-basic-head{padding-bottom:var(--space-1);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.encounter-info-list{column-gap:var(--space-6);row-gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.encounter-info-row{align-items:baseline;gap:var(--space-2);min-width:0;font-size:var(--text-sm);display:flex}.encounter-info-label{font-size:var(--text-xs);color:var(--text-muted);flex:0 0 92px}.profile-header{align-items:flex-start;gap:var(--space-3);padding:var(--pad-block);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);flex-wrap:wrap;display:flex}.profile-header.is-critical{box-shadow:inset 3px 0 0 var(--red-500)}.profile-identity{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.profile-name{font-size:var(--text-lg);font-weight:var(--weight-semi);letter-spacing:-.015em}.profile-meta{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.profile-safety{align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border);flex-wrap:wrap;flex-basis:100%;display:flex}.profile-safety-label{font-size:var(--text-xs);font-weight:var(--weight-semi);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.profile-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.profile-actions .btn{min-height:30px;padding:0 var(--space-2);font-size:var(--text-sm)}.encounter-patient-actions-menu{position:relative}.encounter-patient-actions-trigger{min-height:30px;padding-inline:var(--space-2);font-size:var(--text-xs);list-style:none}.encounter-patient-actions-trigger::-webkit-details-marker{display:none}.encounter-patient-actions-panel{right:0;top:calc(100% + var(--space-1));z-index:20;min-width:196px;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;gap:1px;display:flex;position:absolute}.encounter-patient-actions-panel a,.encounter-patient-actions-panel button{align-items:center;gap:var(--space-2);width:100%;min-height:34px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);text-align:left;display:flex}.encounter-patient-actions-panel a:hover,.encounter-patient-actions-panel button:hover{background:var(--bg-hover);text-decoration:none}.encounter-patient-actions-panel button:disabled{opacity:.55;cursor:not-allowed}.profile-inline-tags{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:inline-flex}.history-list{gap:var(--space-1);flex-direction:column;display:flex}.history-row{align-items:baseline;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--bg-sunken);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.history-row.is-alert{background:var(--red-bg)}.history-when{min-width:92px;font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.history-primary{font-weight:var(--weight-medium)}.history-note{font-size:var(--text-xs);color:var(--text-secondary);flex-basis:100%}.history-note-card{gap:var(--space-1);padding:var(--pad-tight);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);flex-direction:column;display:flex}.history-note-card p{color:var(--text-secondary)}.history-note-card strong{color:var(--text-primary)}.history-note-head{align-items:center;gap:var(--space-2);padding-bottom:var(--space-1);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}@media (width<=720px){.encounter-info-list{grid-template-columns:1fr}.encounter-patient-page .profile-header{padding-top:0}.encounter-patient-page .profile-actions{margin-left:auto}.encounter-patient-actions-panel{min-width:188px}}.profile-page{gap:var(--space-6);width:min(100%,880px);margin-inline:auto}.profile-page .panel{gap:var(--space-2);box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.profile-page .panel-head{padding-bottom:var(--space-1)}.profile-page .profile-header{padding:0 0 var(--space-3);gap:var(--space-3);border:none;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0}.profile-page .profile-header.is-critical{box-shadow:inset 3px 0 0 var(--red-500);padding-left:var(--space-3)}.profile-page .stat{padding:var(--space-2) var(--pad-block)}.profile-page .stat-value{font-size:var(--text-lg)}.detail-grid{column-gap:var(--space-4);row-gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.detail-item{flex-direction:column;gap:1px;min-width:0;display:flex}.detail-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.detail-value{font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere}.detail-value.is-muted{color:var(--text-muted)}.detail-item.is-wide{grid-column:1/-1}.detail-meta{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}@media (width<=720px){.profile-summary-cards{gap:var(--space-1);grid-template-columns:repeat(4,minmax(0,1fr))}.profile-summary-cards .stat{min-width:0;padding:var(--space-2) var(--space-1)}.profile-summary-cards .stat-label{white-space:normal;font-size:10px;line-height:1.15}.profile-summary-cards .stat-value{font-size:var(--text-lg)}.profile-summary-cards .stat-hint{display:none}.profile-basic .panel{gap:var(--space-3)}.profile-basic .detail-grid{column-gap:var(--space-3);row-gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.profile-basic .detail-label{font-size:10px;line-height:1.15}.profile-basic .detail-value{font-size:var(--text-sm)}}@media (width<=380px){.profile-summary-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-basic .detail-grid{grid-template-columns:1fr}}.patient-photo{border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;line-height:0;display:block;position:relative}.patient-photo:disabled{cursor:default;opacity:.6}.patient-photo:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px}.patient-photo-badge{border-radius:var(--radius-full);border:2px solid var(--bg-page);background:var(--bg-brand);width:18px;height:18px;color:var(--text-on-brand);transition:transform var(--duration-base) var(--ease);place-items:center;display:grid;position:absolute;bottom:-2px;right:-2px}.patient-photo:hover:not(:disabled) .patient-photo-badge{transform:scale(1.1)}.patient-photo-status{min-height:24px;margin-top:calc(var(--space-2) * -1);align-items:center;display:flex}.record-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);vertical-align:baseline}.record-table tbody tr:last-child td{border-bottom:none}.record-table .numeric-col{text-align:right;white-space:nowrap;width:1%}.record-table td .badge{margin-left:var(--space-2)}.record-group th{padding:var(--space-4) var(--space-3) var(--space-2);border-bottom:1px solid var(--border);text-align:left;font-size:var(--text-xs);font-weight:var(--weight-semi);text-transform:none;letter-spacing:0;color:var(--text-muted)}.record-table tbody:first-of-type .record-group th{padding-top:var(--space-2)}.profile-encounter-card-list{display:none}@media (width<=720px){.profile-encounters-table-wrap{display:none}.profile-encounter-card-list{gap:var(--space-2);flex-direction:column;display:flex}.profile-encounter-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.profile-encounter-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.profile-encounter-card-label,.profile-encounter-card-grid dt{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;display:block}.profile-encounter-card-head strong{font-size:var(--text-base);display:block}.profile-encounter-card-grid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-encounter-card-grid dd{font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere;margin:0}.profile-encounter-card-action{width:100%;min-height:var(--tap-target)}}@media (width<=420px){.profile-encounter-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.medication-order-card-list,.medication-admin-card-list{display:none}.record-card-list{gap:var(--space-2);flex-direction:column;display:flex}@media (width<=720px){.medication-orders-table-wrap,.medication-admin-table-wrap{display:none}.medication-order-card-list,.medication-admin-card-list,.record-group-card{gap:var(--space-2);flex-direction:column;display:flex}.record-group-card-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-1);border-bottom:1px solid var(--border);font-size:var(--text-xs);color:var(--text-muted);display:flex}.record-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;display:flex}.record-card.is-alert{box-shadow:inset 3px 0 0 var(--red-500)}.record-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.record-card-head>div{min-width:0}.record-card-head strong{align-items:center;gap:var(--space-1);font-size:var(--text-base);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.record-card-label,.record-card-grid dt{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;display:block}.record-card-grid{gap:var(--space-2) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.record-card-grid dd{font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere;margin:0}}@media (width<=380px){.record-card-grid{grid-template-columns:1fr}}.record-group-when{margin-right:var(--space-3);color:var(--text-primary)}.record-table tr.is-alert td:first-child{box-shadow:inset 2px 0 0 var(--red-500)}.record-group-detail{margin-right:var(--space-3)}.record-group-block{gap:var(--space-2);flex-direction:column;display:flex}.record-group-head{align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);font-size:var(--text-xs);color:var(--text-muted);display:flex}.family-link{gap:var(--space-3)}.access-rights{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.access-right{align-items:flex-start;gap:var(--space-2);cursor:pointer;display:flex}.access-right input{flex-shrink:0;margin-top:3px}.access-right-body{flex-direction:column;gap:1px;min-width:0;display:flex}.family-access{gap:var(--space-3)}.family-access .field{max-width:420px}@media (width<=720px){.family-access{gap:var(--space-3);width:100%;overflow:visible}.family-access .panel-head{align-items:center;gap:var(--space-2)}.family-access .panel-title{min-width:0}.family-access .field{width:100%;max-width:none}.family-access .select{width:100%}.access-rights{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.access-right{min-width:0;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface)}.access-right-body{min-width:0}.access-right-body .text-xs{line-height:1.25}.family-access .section-actions{flex-wrap:wrap;justify-content:flex-start;width:100%;margin-left:0}.family-access .section-actions .spacer{display:none}}@media (width<=420px){.access-rights{grid-template-columns:1fr}.family-access .panel-head .btn{min-height:34px;padding-inline:var(--space-2);font-size:var(--text-xs)}}@media (width<=720px){.patients-page{gap:var(--space-3)}.patients-table-wrap{display:none}}.schedule-activities{position:relative}.schedule-activities summary{align-items:center;gap:var(--space-1);cursor:pointer;list-style:none;display:inline-flex}.schedule-activities summary::-webkit-details-marker{display:none}.schedule-activities-menu{z-index:30;min-width:156px;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;gap:1px;display:flex;position:absolute;top:100%;right:0}.schedule-activities-menu button{align-items:center;gap:var(--space-2);width:100%;min-height:30px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;font-size:var(--text-xs);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.schedule-activities-menu button:hover{background:var(--bg-hover)}.schedule-modal-backdrop{z-index:50;padding:var(--space-4);background:#00000073;place-items:center;display:grid;position:fixed;inset:0}.schedule-modal{gap:var(--space-3);width:min(100%,520px);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.schedule-modal-head,.schedule-modal-actions{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.schedule-modal-close{width:28px;height:28px;padding:0}.schedule-modal-grid{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.schedule-modal-grid .field:first-child{grid-column:1/-1}.schedule-calendar-card{overflow:visible}.schedule-calendar-filters{align-items:center;gap:var(--space-1);display:flex}.schedule-calendar-filters .select{width:138px}.schedule-calendar-filters .input{width:82px}.schedule-calendar-legend{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);font-size:var(--text-xs);color:var(--text-muted);display:flex}.schedule-calendar-legend span{align-items:center;gap:var(--space-1);display:inline-flex}.schedule-calendar-legend i{border:1px solid var(--border-strong);border-radius:2px;width:14px;height:9px}.schedule-calendar-legend i.is-planned{background:var(--gray-950)}.schedule-calendar-legend i.is-unplanned{background:repeating-linear-gradient(135deg, var(--bg-surface), var(--bg-surface) 4px, var(--gray-300) 4px, var(--gray-300) 8px)}.schedule-calendar{padding:var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.schedule-calendar-weekday{padding:var(--space-1);color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--weight-semi);text-align:center}.schedule-calendar-day{min-height:112px;padding:var(--space-1);border:1px solid var(--border);background:var(--bg-surface);margin:-1px 0 0 -1px;position:relative}.schedule-calendar-day.is-outside{color:var(--text-muted);background:0 0}.schedule-calendar-date{margin-bottom:var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;display:block}.schedule-calendar-events{flex-direction:column;gap:3px;display:flex}.schedule-calendar-event{min-height:22px;padding:3px var(--space-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;color:var(--text-primary);line-height:1.2;display:block;position:relative;overflow:visible}.schedule-calendar-event.is-planned{background:var(--gray-950);color:var(--gray-0)}.schedule-calendar-event.is-unplanned{background:repeating-linear-gradient(135deg, var(--bg-surface), var(--bg-surface) 4px, var(--gray-300) 4px, var(--gray-300) 8px)}.schedule-calendar-event:hover{text-decoration:none}.schedule-calendar-tooltip{left:0;bottom:calc(100% + var(--space-1));z-index:40;min-width:190px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-lg);white-space:normal;display:none;position:absolute}.schedule-calendar-tooltip span,.schedule-calendar-tooltip strong{display:block}.schedule-calendar-tooltip span{color:var(--text-secondary)}.schedule-calendar-event:hover .schedule-calendar-tooltip,.schedule-calendar-event:focus .schedule-calendar-tooltip{display:block}@media (width<=560px){.schedule-activities{width:auto;margin-left:auto}.schedule-activities summary{min-height:32px;padding-inline:var(--space-2)}.schedule-activities-menu{right:0;top:calc(100% + var(--space-1));min-width:156px;max-width:calc(100vw - var(--space-6))}.schedule-activities-menu button{min-height:34px;padding-inline:var(--space-2);font-size:var(--text-xs)}.page-header>.row-tight:has(.schedule-activities){justify-content:flex-end;width:100%}.schedule-modal-grid{grid-template-columns:1fr}.schedule-table-wrap{display:none}.schedule-calendar-card .card-header{flex-direction:column;align-items:flex-start}.schedule-calendar-card .row-tight{justify-content:flex-end;align-items:center;gap:var(--space-1);flex-flow:row;width:100%}.schedule-calendar-card .row-tight>.btn{min-height:30px;padding-inline:var(--space-2);font-size:var(--text-xs)}.schedule-calendar-filters .select,.schedule-calendar-filters .input{min-height:30px;font-size:var(--text-xs)}.schedule-calendar-filters{flex:1;min-width:0}.schedule-calendar-filters .select{width:min(100%,104px)}.schedule-calendar-filters .input{width:64px}.schedule-calendar-legend{gap:var(--space-2);padding:var(--space-2);flex-wrap:wrap}.schedule-calendar{padding:var(--space-1);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.schedule-calendar-weekday{padding:2px 1px;font-size:9px;display:block}.schedule-calendar-day{min-height:clamp(48px,15vw,72px);margin:-1px 0 0 -1px;padding:2px;overflow:hidden}.schedule-calendar-date{margin-bottom:2px;font-size:10px;line-height:1}.schedule-calendar-events{gap:2px}.schedule-calendar-event{white-space:nowrap;min-height:14px;padding:1px 2px;font-size:8px;line-height:1.1;overflow:hidden}.schedule-calendar-tooltip{display:none}}@media (width<=380px){.schedule-calendar-day{min-height:44px}.schedule-calendar-event{font-size:7px}}.visits-status-time{margin-left:var(--space-2)}.visits-action-short{display:none}@media (width<=720px){.visits-page{gap:var(--space-3)}.visits-summary-cards{gap:var(--space-1);grid-template-columns:repeat(3,minmax(0,1fr))}.visits-summary-cards .stat{min-width:0;padding:var(--space-2) var(--space-1)}.visits-summary-cards .stat-label{white-space:normal;font-size:10px;line-height:1.15}.visits-summary-cards .stat-value{font-size:var(--text-xl)}.visits-summary-cards .stat-hint,.visits-table-wrap{display:none}}@media (width<=380px){.visits-summary-cards .stat-value{font-size:var(--text-lg)}}.visit-assignment{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}
