:root{--paper:#f5f6f2;--mineral:#e8f1ee;--ink:#211333;--muted:#66636b;--violet:#2b1642;--green:#008942;--green-bright:#00af56;--magenta:#c90cda;--lilac-text:#856294;--line:#2113332b;--danger:#a73131;--font:var(--font-mona), Arial, sans-serif;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1)}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html{font-family:var(--font);background:var(--paper)}body{color:var(--ink);background:var(--paper);font:430 1rem/1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--green-bright);outline-offset:3px}.portal-header{z-index:50;border-bottom:1px solid var(--line);background:#f5f6f2fa;justify-content:space-between;align-items:center;min-height:5rem;padding:0 clamp(1.25rem,4vw,4.5rem);display:flex;position:sticky;top:0;box-shadow:0 .4rem 1.5rem #2113330b}.portal-brand{color:var(--ink);align-items:center;gap:.8rem;text-decoration:none;display:flex}.portal-brand img{width:3.5rem;height:auto}.portal-brand span{line-height:1.05;display:grid}.portal-brand strong{font-size:1rem;font-weight:720}.portal-brand small{color:var(--muted);margin-top:.25rem;font-size:.72rem}.portal-navigation{align-items:center;gap:clamp(1rem,2.5vw,2.5rem);font-size:.88rem;font-weight:620;display:flex}.portal-navigation a{text-decoration:none}.professional-link{color:var(--green);font-weight:680}.institutional-link,.back-link,.quiet-link{color:var(--green);text-underline-offset:.25rem;font-weight:650}.eyebrow{color:var(--green);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.45rem;font-size:.78rem;font-weight:760;display:inline-flex}.eyebrow svg{width:1.05rem;height:1.05rem}.step-number{color:var(--lilac-text);letter-spacing:.12em;margin-bottom:1.1rem;font-size:.76rem;font-weight:780;display:block}.button{cursor:pointer;border:1px solid #0000;border-radius:.55rem;justify-content:center;align-items:center;gap:.55rem;min-height:3.25rem;padding:.75rem 1.2rem;font-weight:720;text-decoration:none;transition:transform .16s,background .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.62;cursor:wait;transform:none}.button svg{width:1.15rem;height:1.15rem}.button-primary{color:#fff;background:var(--green)}.button-primary:hover{background:#006f36}.button-secondary{border-color:var(--line);color:var(--ink);background:#fff}.patient-entry{background:var(--violet);grid-template-columns:minmax(25rem,1.08fr) minmax(25rem,.92fr);min-height:calc(100svh - 5rem);display:grid}.patient-visual{background:#d8d7d2;min-height:calc(100svh - 5rem);position:relative;overflow:hidden}.patient-visual:after{content:"";pointer-events:none;background:linear-gradient(#21133305 16%,#1a0b2ce6 100%);position:absolute;inset:0}.patient-visual>img{object-fit:cover;object-position:47% 50%;filter:saturate(.82)contrast(1.04)}.patient-visual-copy{z-index:2;color:#fff;position:absolute;bottom:clamp(2rem,5vw,5rem);left:clamp(1.5rem,5vw,5.5rem);right:clamp(1.5rem,5vw,5.5rem)}.protected-mark{color:var(--green-bright);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.45rem;font-size:.78rem;font-weight:740;display:inline-flex}.protected-mark svg{width:1rem;height:1rem}.patient-visual h1{letter-spacing:-.04em;max-width:10ch;margin:0;font-size:clamp(3.5rem,5.3vw,5.7rem);font-weight:680;line-height:.88}.patient-visual-copy>p{color:#e2dce7;max-width:31rem;margin:0;font-size:clamp(1rem,1.35vw,1.2rem)}.trust-list{border-top:1px solid #ffffff3d;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:38rem;margin:2.2rem 0 0;padding:1.3rem 0 0;list-style:none;display:grid}.trust-list li{gap:.8rem;display:flex}.trust-list svg{width:1.1rem;height:1.1rem;color:var(--green-bright)}.trust-list span{color:#d8d0df;font-size:.8rem;display:grid}.trust-list strong{color:#fff;font-size:.9rem}.access-surface{color:#fff;background:var(--violet);flex-direction:column;justify-content:center;padding:clamp(2.5rem,7vw,7.5rem);display:flex}.access-surface h2{letter-spacing:-.04em;margin:0 0 1rem;font-size:clamp(2.5rem,4vw,4rem);font-weight:620;line-height:.95}.access-intro{margin:0 0 2rem!important}.access-surface>p{color:#e0d8e7;max-width:32rem;margin:1rem 0 2.5rem}.patient-access-form{gap:.8rem;display:grid}.patient-access-form label{font-weight:700}.patient-access-form label+input+label{margin-top:.35rem}.patient-access-form>p{color:#f0b9c2;margin:0;font-size:.9rem}.patient-access-form .field-hint{color:#d9d0e0;margin-top:-.45rem;font-size:.78rem;line-height:1.35}.patient-access-form input{width:100%;min-height:4.2rem;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;background:#fff;border:1px solid #ffffff61;border-radius:.7rem;padding:0 1.1rem;font-size:1.15rem}.patient-access-form input:focus{border-color:var(--green-bright);outline:0;box-shadow:0 0 0 .18rem #00be5c47}.patient-access-form .button{background:var(--green-bright);margin-top:.45rem}.invalid-link{border-left:.2rem solid var(--danger);background:#faeded;padding:.85rem;font-size:.86rem;color:var(--danger)!important;margin:0 0 1rem!important}.access-surface aside{color:#d9d0e0;border-top:1px solid #ffffff38;max-width:32rem;margin-top:2rem;padding-top:1.15rem;font-size:.85rem}.access-surface aside strong{color:#fff}.access-surface .form-message[data-error=true]{color:var(--danger)}.form-stack{gap:1.15rem;display:grid}.form-stack label,.field-grid label{gap:.45rem;font-size:.86rem;font-weight:680;display:grid}.form-stack input,.field-grid input{border:1px solid var(--line);width:100%;min-height:3.25rem;color:var(--ink);background:#fff;border-radius:.55rem;padding:0 .9rem}.form-message{color:var(--green);margin:0;font-size:.88rem}.form-message[data-error=true]{color:#ffb8b8}.work-surface .form-message[data-error=true],.auth-card .form-message[data-error=true]{color:var(--danger)}.auth-page{background:var(--paper);grid-template-columns:minmax(24rem,1.04fr) minmax(26rem,.96fr);min-height:calc(100svh - 5rem);display:grid}.auth-visual{background:#deddd8;min-height:calc(100svh - 5rem);position:relative;overflow:hidden}.auth-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 46%,#180a2ac2 100%);position:absolute;inset:0}.auth-visual>img{object-fit:cover;object-position:45% 50%;filter:saturate(.84)contrast(1.03)}.auth-visual-copy{z-index:2;color:#fff;align-items:flex-start;gap:.8rem;display:flex;position:absolute;bottom:clamp(1.5rem,4vw,4rem);left:clamp(1.5rem,4vw,4rem);right:clamp(1.5rem,4vw,4rem)}.auth-visual-copy svg{width:1.4rem;height:1.4rem;color:var(--green-bright);flex:none;margin-top:.22rem}.auth-visual-copy p{letter-spacing:-.025em;max-width:26ch;margin:0;font-size:clamp(1.25rem,2.2vw,2rem);font-weight:630;line-height:1.1}.auth-panel{place-self:center;width:min(100%,34rem);padding:clamp(2.5rem,6vw,6rem) clamp(1.5rem,6vw,5rem)}.staff-access{color:var(--green);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:.45rem;margin-bottom:1.2rem;font-size:.78rem;font-weight:730;display:inline-flex}.staff-access svg{width:1rem;height:1rem}.auth-panel h1{letter-spacing:-.04em;max-width:12ch;margin:0;font-size:clamp(3rem,5vw,5rem);font-weight:680;line-height:.9}.auth-panel-heading>p{max-width:30rem;color:var(--muted);margin:1rem 0 0;font-size:1rem}.auth-panel .form-stack{gap:1.15rem}.auth-panel .form-stack label{color:var(--ink);font-size:.9rem}.auth-panel .form-stack input{background:#ffffffc2;border-color:#2113333d;min-height:3.65rem}.auth-panel .form-stack input::placeholder{color:#817b87}.auth-panel .form-stack input:focus{border-color:var(--green);box-shadow:0 0 0 1px var(--green);outline:0}.auth-panel .button{width:100%;min-height:3.65rem;margin-top:.35rem}.patient-route{border-top:1px solid var(--line);color:var(--muted);margin:2rem 0 0;padding-top:1.4rem;font-size:.88rem}.patient-route a{color:var(--green);text-underline-offset:.22rem;font-weight:650}.auth-security-note{color:var(--muted);align-items:flex-start;gap:.55rem;margin-top:1.1rem;font-size:.76rem;line-height:1.4;display:flex}.auth-security-note svg{width:.95rem;height:.95rem;color:var(--green);flex:none;margin-top:.1rem}.invite-error{border-left:.2rem solid var(--danger);color:var(--danger);background:#a7313112;margin:0 0 1rem;padding:.8rem 1rem}.password-guidance{color:var(--muted);font-size:.8rem}.auth-card{border-top:.35rem solid var(--green-bright);color:#fff;background:var(--violet);padding:clamp(2rem,4vw,4rem);box-shadow:0 1.5rem 4rem #21133329}.auth-card h1,.auth-card h2{letter-spacing:-.04em;margin:0 0 1.8rem;font-size:clamp(2.2rem,3.5vw,3.5rem);font-weight:620;line-height:.95}.auth-card input{border-color:#ffffff38}.auth-card .button{width:100%}.setup-notice{border:1px solid #ffffff2e;padding:1.25rem}.setup-notice p{color:#d9d0e0}.auth-page-single{grid-template-columns:minmax(20rem,38rem);justify-content:center}.qr-panel{justify-items:start;gap:.7rem;margin-bottom:1.3rem;display:grid}.qr-panel img{background:#fff;width:12rem;padding:.6rem}.qr-panel p{color:#d9d0e0;margin:0;font-size:.85rem}.qr-panel code{overflow-wrap:anywhere;max-width:100%}.admin-layout{background:#f8f9f6;grid-template-columns:14rem minmax(0,1fr);min-height:calc(100svh - 5rem);display:grid}.admin-sidebar{background:#eef5f2;border-right:1px solid #2113331a;flex-direction:column;height:calc(100svh - 5rem);padding:2rem 1.25rem;display:flex;position:sticky;top:5rem}.admin-sidebar>div{display:grid}.admin-sidebar>div>strong{margin-top:1rem}.admin-sidebar>div>small{color:var(--muted)}.admin-sidebar nav{gap:.35rem;margin-top:3rem;display:grid}.admin-sidebar nav a{border-radius:.65rem;align-items:center;gap:.65rem;min-height:2.8rem;padding:.65rem .8rem;font-weight:650;text-decoration:none;transition:color .16s,background .16s,transform .16s;display:flex}.admin-sidebar nav a svg{width:1rem;height:1rem;color:var(--muted)}.admin-sidebar nav a[aria-current=page]{color:var(--green);background:#fff;box-shadow:0 .35rem 1rem #2113330d}.admin-sidebar nav a[aria-current=page] svg{color:currentColor}.admin-sidebar nav a:hover{color:var(--green);background:#ffffffb8}.admin-sidebar nav a:active{transform:scale(.98)}.admin-sidebar form{margin-top:auto}.quiet-button{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:.6rem 0;display:inline-flex}.quiet-button svg{width:1rem}.admin-content{width:min(100%,86rem);min-width:0;margin-inline:auto;padding:clamp(2rem,4vw,4.5rem)}.admin-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem;display:flex}.admin-heading h1{letter-spacing:-.05em;max-width:14ch;margin:.7rem 0;font-size:clamp(2.6rem,4.2vw,4.5rem);font-weight:650;line-height:.94}.admin-heading p{max-width:38rem;color:var(--muted);margin:0}.admin-heading.compact{align-items:start}.admin-heading.compact h1{font-size:clamp(2.5rem,4vw,4rem)}.back-link{align-items:center;gap:.35rem;margin-bottom:2rem;font-size:.88rem;display:inline-flex}.back-link svg{width:1rem}.metric-strip{background:#fff;border:1px solid #2113331a;border-radius:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:3rem;display:grid;overflow:hidden}.metric-strip div{border-right:1px solid #2113331a;gap:.28rem;padding:1.1rem 1.3rem;display:grid}.metric-strip div:last-child{border-right:0}.metric-strip strong{font-size:2rem;line-height:1}.metric-strip span{color:var(--muted);font-size:.82rem}.results-table{border-top:1px solid var(--line)}.table-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(13rem,1.5fr) minmax(8rem,.8fr) minmax(7rem,.7fr) minmax(7rem,.6fr) 1.5rem;align-items:center;gap:1rem;min-height:4.8rem;padding:0 .5rem;text-decoration:none;display:grid}.table-row:not(.table-head):hover{background:#fff}.table-row span{color:var(--muted);align-items:center;gap:.45rem;display:flex}.table-row svg{width:1rem}.table-head{min-height:2.8rem;color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:700}.status-dot{background:#a5a2a8;border-radius:50%;width:.48rem;height:.48rem}.status-dot[data-status=published]{background:var(--green-bright)}.status-dot[data-status=revoked]{background:var(--danger)}.empty-state{text-align:center;background:#fff;border:1px solid #2113331a;border-radius:1.2rem;align-content:center;place-items:center;min-height:22rem;padding:2rem;display:grid}.empty-state>svg{width:2rem;height:2rem;color:var(--green)}.empty-state h2{margin-bottom:0}.empty-state p{color:var(--muted)}.patient-directory{gap:1rem;display:grid}.directory-heading{justify-content:space-between;align-items:end;gap:1.5rem;padding-bottom:.8rem;display:flex}.directory-heading h2{letter-spacing:-.04em;margin:.25rem 0 0;font-size:clamp(2rem,3vw,3rem);line-height:1}.patient-search{background:#fff;border:1px solid #21133324;border-radius:.8rem;grid-template-columns:1.15rem minmax(0,1fr) auto;align-items:center;gap:.65rem;width:min(100%,29rem);min-height:3.25rem;padding-left:1rem;display:grid}.patient-search>svg{width:1.1rem;color:var(--green)}.patient-search input{min-width:0;height:100%;color:var(--ink);background:0 0;border:0;outline:0}.patient-search button{border:0;border-left:1px solid var(--line);color:var(--green);cursor:pointer;background:0 0;align-self:stretch;padding:0 1.1rem;font-weight:700}.migration-notice{color:#624d17;background:#fff8e7;border:1px solid #e1ca8f;border-radius:.75rem;margin:0;padding:.8rem 1rem;font-size:.82rem}.patient-list{gap:.8rem;display:grid}.patient-record{background:#fff;border:1px solid #2113331a;border-radius:1rem;overflow:hidden}.patient-record-link{grid-template-columns:auto minmax(12rem,1.2fr) 5rem minmax(10rem,.8fr) auto 1.2rem;align-items:center;gap:1rem;min-height:5.25rem;padding:.85rem 1.1rem;text-decoration:none;transition:background .16s,transform .16s;display:grid}.patient-record-link:hover{background:#f4f8f5}.patient-record-link:active{transform:scale(.995)}.patient-avatar{width:2.8rem;height:2.8rem;color:var(--green);letter-spacing:.04em;background:#dff2e8;border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:780;display:grid}.patient-identity,.patient-count,.latest-study{gap:.2rem;min-width:0;display:grid}.patient-identity strong,.latest-study strong,.patient-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.patient-identity small,.patient-count small,.latest-study small{color:var(--muted);font-size:.76rem}.patient-count strong{font-size:1.15rem}.latest-study small{align-items:center;gap:.35rem;display:flex}.latest-study svg,.patient-record-link>svg{width:1rem;height:1rem}.patient-record-link>svg{color:var(--green)}.directory-pagination{justify-content:center;padding-top:.75rem;display:flex}.history-list{background:#fff;border:1px solid #2113331a;border-radius:1rem;display:grid;overflow:hidden}.history-row{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto 1.2rem;align-items:center;gap:1rem;min-height:5rem;padding:.85rem 1.1rem;text-decoration:none;display:grid}.history-row:last-child{border-bottom:0}.history-row:hover{background:#f4f8f5}.history-icon{width:2.6rem;height:2.6rem;color:var(--green);background:#e1f3e9;border-radius:.75rem;place-items:center;display:grid}.history-icon svg{width:1.15rem}.history-row>span:nth-child(2){gap:.25rem;display:grid}.history-row small{color:var(--muted);align-items:center;gap:.35rem;display:flex}.history-row small svg,.history-row>svg{width:1rem}.history-row>svg{color:var(--green)}.record-status{color:#615d65;background:#f0eff1;border-radius:999px;padding:.3rem .55rem;font-size:.72rem;font-weight:700}.record-status[data-status=published]{color:#006b34;background:#ddf3e7}.record-status[data-status=revoked]{color:#8d2727;background:#fae6e6}.patient-history-heading{align-items:start}.patient-history-main{gap:1.25rem;min-width:0;display:grid}.patient-breadcrumb{color:var(--muted);align-items:center;gap:.65rem;font-size:.8rem;font-weight:650;display:flex}.patient-breadcrumb a{color:var(--green);align-items:center;gap:.35rem;text-decoration:none;display:inline-flex}.patient-breadcrumb a:hover{text-underline-offset:.22rem;text-decoration:underline}.patient-breadcrumb svg{width:.95rem;height:.95rem}.patient-breadcrumb>span:last-child{color:var(--ink)}.patient-profile-title{align-items:center;gap:1rem;min-width:0;display:flex}.patient-profile-avatar{width:3.5rem;height:3.5rem;color:var(--green);letter-spacing:.03em;background:#dff2e8;border-radius:50%;flex:none;place-items:center;font-size:.9rem;font-weight:780;display:grid}.patient-history-heading .patient-profile-title h1{letter-spacing:-.035em;overflow-wrap:break-word;max-width:22ch;margin:0 0 .2rem;font-size:clamp(1.9rem,3vw,2.75rem);line-height:1}.patient-profile-title p{margin:0;font-size:.88rem}.patient-facts{border-block:1px solid var(--line);grid-template-columns:minmax(9rem,auto) minmax(12rem,1fr) minmax(6rem,auto);gap:0;margin:0;display:grid}.patient-facts>div{border-right:1px solid var(--line);gap:.2rem;min-width:0;padding:.75rem 1.25rem;display:grid}.patient-facts>div:first-child{padding-left:0}.patient-facts>div:last-child{border-right:0;padding-right:0}.patient-facts dt{color:var(--muted);align-items:center;gap:.4rem;font-size:.72rem;display:flex}.patient-facts dt svg{width:.9rem;height:.9rem;color:var(--green)}.patient-facts dd{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.88rem;font-weight:680;overflow:hidden}.patient-history-heading>.button{flex:none}.history-row{transition:background .16s,transform .16s}.history-row>svg{transition:transform .16s}.history-row:hover{transform:translateY(-1px)}.history-row:hover>svg{transform:translate(.12rem,-.12rem)}.work-surface{border:1px solid var(--line);background:#fff;padding:clamp(1.5rem,4vw,3.5rem)}.upload-form{gap:1.4rem;display:grid}.upload-drop{background:var(--mineral);text-align:center;border:1px dashed #21133359;align-content:center;place-items:center;gap:1rem;min-height:14rem;padding:2rem;display:grid;position:relative}.upload-drop svg{width:2.3rem;height:2.3rem;color:var(--green)}.upload-drop label{display:grid}.upload-drop span{color:var(--muted);font-size:.85rem}.upload-drop .upload-detection-status{justify-content:center;align-items:center;gap:.35rem;min-height:1.35rem;line-height:1.35;display:inline-flex}.upload-drop .upload-detection-status svg{flex:none;width:1rem;height:1rem}.upload-drop .upload-detection-status[data-state=reading]{color:var(--lilac-text)}.upload-drop .upload-detection-status[data-state=ready]{color:var(--green-dark);font-weight:650}.upload-drop .upload-detection-status[data-state=partial],.upload-drop .upload-detection-status[data-state=error]{color:#875c29}.upload-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.validity-setting{border-block:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.9rem 0;display:grid}.validity-setting>svg{width:1.2rem;color:var(--green)}.validity-setting>div:nth-child(2){gap:.15rem;display:grid}.validity-setting label{font-size:.86rem;font-weight:700}.validity-setting span{color:var(--muted);font-size:.78rem}.days-input{align-items:center;gap:.45rem;display:flex}.days-input input{border:1px solid var(--line);width:4.5rem;min-height:2.8rem;color:var(--ink);font-variant-numeric:tabular-nums;background:#fff;border-radius:.55rem;padding-inline:.65rem}.manual-fields{border-top:1px solid var(--line)}.manual-fields summary{color:var(--green);cursor:pointer;padding:1rem 0;font-weight:680}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.privacy-note{color:var(--muted);margin:0;font-size:.82rem}.review-grid{grid-template-columns:minmax(0,1.3fr) minmax(19rem,.7fr);align-items:start;gap:1.25rem;display:grid}.surface-heading{gap:.9rem;margin-bottom:2rem;display:flex}.surface-heading svg{color:var(--green)}.surface-heading h2{margin:0}.surface-heading p{color:var(--muted);margin:.25rem 0 0}.publish-surface{color:var(--ink);background:#e9f5ef;border:1px solid #00894233;border-radius:1rem;padding:2.1rem}.publish-surface>svg{color:var(--green)}.publish-surface h2{margin:1.3rem 0 .6rem;font-size:2rem;line-height:1}.publish-surface>p{color:var(--muted)}.role-notice{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.publish-surface .button{width:100%;margin-top:1.2rem}.status-pill{border:1px solid var(--line);padding:.5rem .75rem;font-size:.78rem;font-weight:700}.status-pill[data-status=published]{color:#fff;border-color:var(--green);background:var(--green)}.status-pill[data-status=revoked]{color:#fff;border-color:var(--danger);background:var(--danger)}.danger-button{width:100%;color:var(--danger);cursor:pointer;background:0 0;border:1px solid #a731314d;border-radius:.55rem;justify-content:center;gap:.5rem;margin-top:1rem;padding:.7rem;display:flex}.danger-button svg{width:1rem}.access-delivery{gap:.8rem;margin-top:1.5rem;display:grid}.success-heading{gap:.7rem;margin-bottom:.5rem;display:flex}.success-heading>svg{color:var(--green-bright)}.success-heading div{display:grid}.success-heading span,.access-delivery>p{color:var(--muted);font-size:.8rem}.admin-document{background:#e8ece9;border:1px solid #2113331f;border-radius:1rem;grid-column:1/-1;grid-template-rows:auto 1fr;min-height:42rem;display:grid;overflow:hidden}.admin-document .viewer-heading>div{display:grid}.admin-document .quiet-link{align-items:center;gap:.4rem;text-decoration:none;display:inline-flex}.admin-document .quiet-link svg{width:1rem;height:1rem}.admin-document iframe{background:#e8ece9;border:0;width:100%;height:100%;min-height:38rem}.patient-result-page{grid-template-columns:minmax(20rem,.58fr) minmax(0,1.42fr);gap:1.25rem;width:min(100%,92rem);min-height:calc(100svh - 5rem);margin-inline:auto;padding:clamp(1rem,3vw,2rem);display:grid}.result-summary{background:#fff;border:1px solid #2113331a;border-radius:1.1rem;flex-direction:column;justify-content:center;padding:clamp(1.5rem,4vw,3.5rem);display:flex}.result-summary h1{letter-spacing:-.05em;margin:1.1rem 0 2rem;font-size:clamp(2.8rem,5vw,5rem);font-weight:640;line-height:.94}.result-summary dl{border-top:1px solid var(--line);margin:0}.result-summary dl div{border-bottom:1px solid var(--line);grid-template-columns:7rem 1fr;padding:.9rem 0;display:grid}.result-summary dt{color:var(--muted)}.result-summary dd{margin:0;font-weight:650}.session-note{color:var(--muted);gap:.5rem;margin:1.4rem 0 0;font-size:.82rem;display:flex}.session-note svg{width:1rem;color:var(--green)}.result-actions{gap:.7rem;margin:2rem 0 1.3rem;display:grid}.document-viewer{background:#e8ece9;border:1px solid #2113331f;border-radius:1.1rem;grid-template-rows:auto 1fr;min-height:44rem;display:grid;overflow:hidden}.viewer-heading{background:#fff;border-bottom:1px solid #2113331a;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex}.viewer-heading span{font-weight:700}.viewer-heading p{color:var(--muted);margin:0;font-size:.78rem}.document-viewer iframe{background:#e8ece9;border:0;width:100%;height:100%;min-height:40rem}.document-guidance h2{letter-spacing:-.05em;max-width:11ch;margin:0;font-size:clamp(3rem,5vw,5.5rem);font-weight:620;line-height:.92}.document-guidance p{color:#d9d0e0;max-width:35rem;font-size:1.05rem}@media (max-width:900px){.patient-entry,.auth-page,.patient-result-page{grid-template-columns:1fr}.patient-entry{background:var(--violet);min-height:calc(100svh - 5rem)}.patient-visual{min-height:38svh}.patient-visual:after{background:linear-gradient(#190c280a,#190c28c7)}.patient-visual-copy{bottom:1.5rem;left:1.5rem;right:1.5rem}.patient-entry .access-surface{color:#fff;background:var(--violet);min-height:calc(62svh - 5rem);padding:clamp(2rem,7vw,3.5rem)}.patient-entry .access-surface h2{margin-bottom:1.35rem;font-size:clamp(2.2rem,9vw,3.25rem)}.patient-entry .patient-access-form label{color:#fff}.patient-entry .patient-access-form>p{color:#f0b9c2}.patient-entry .patient-access-form input{border-color:#ffffff61}.patient-entry .access-surface aside{color:#d9d0e0;border-color:#ffffff38;margin-top:1.35rem}.patient-entry .access-surface aside strong{color:#fff}.patient-entry .invalid-link{border-left-color:var(--danger);color:var(--danger)!important}.admin-layout{grid-template-columns:1fr}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:1rem;height:auto;padding:1.2rem;display:grid;position:relative;top:0}.admin-sidebar nav{grid-column:1/-1;grid-template-columns:repeat(2,1fr);margin-top:0}.admin-sidebar form{align-self:center}.review-grid{grid-template-columns:1fr}.patient-record-link{grid-template-columns:auto minmax(0,1fr) auto}.patient-count{display:none}.latest-study{grid-column:2}.patient-record-link .record-status{grid-area:1/3}.patient-record-link>svg{grid-area:2/3;justify-self:center}}@media (max-width:800px){.auth-page{grid-template-columns:1fr}.auth-panel{flex-direction:column;grid-row:1;justify-content:center;width:min(100%,36rem);min-height:calc(100svh - 4.5rem);padding:3rem 1.5rem;display:flex}.auth-visual{grid-row:2;min-height:20rem}.auth-visual>img{object-position:50% 37%}}@media (max-width:650px){.portal-header{min-height:4.5rem;padding-inline:1rem}.portal-brand img{width:3rem}.portal-brand span{display:none}.institutional-link{font-size:.78rem}.patient-entry{min-height:calc(100svh - 4.5rem)}.patient-entry .access-surface{padding:1.4rem}.patient-entry .access-surface h2{font-size:2.3rem}.patient-entry .access-surface{min-height:calc(66svh - 4.5rem)}.patient-visual{min-height:34svh}.patient-visual>img{object-position:58% 50%}.patient-visual-copy{bottom:1.8rem;left:1.5rem;right:1.5rem}.patient-visual h1{font-size:clamp(2.65rem,12vw,3.4rem)}.trust-list{gap:1rem;margin-top:1.5rem}.auth-page{gap:0;padding:0}.auth-panel h1{font-size:clamp(3rem,14vw,4rem)}.auth-panel-heading{margin-bottom:1.8rem}.auth-visual{min-height:17rem}.auth-card{padding:1.6rem}.admin-content{padding:2rem 1.2rem}.admin-heading{flex-direction:column;align-items:start}.admin-heading h1{font-size:3rem}.admin-heading .button{width:100%}.metric-strip{grid-template-columns:repeat(2,1fr)}.metric-strip div{padding:.8rem}.metric-strip div:nth-child(2){border-right:0}.metric-strip div:nth-child(-n+2){border-bottom:1px solid #2113331a}.metric-strip strong{font-size:1.5rem}.table-head{display:none}.table-row{grid-template-columns:minmax(0,1fr) auto;gap:.2rem .8rem;padding:1rem .3rem}.table-row strong{grid-column:1}.table-row>span{grid-column:1;font-size:.82rem}.table-row>svg{grid-area:1/2/5}.field-grid{grid-template-columns:1fr}.validity-setting{grid-template-columns:auto minmax(0,1fr)}.validity-setting .days-input{grid-column:2;justify-self:start}.work-surface,.publish-surface{padding:1.3rem}.patient-result-page{min-height:calc(100svh - 4.5rem)}.result-summary{padding:2rem 1.25rem}.document-viewer{min-height:34rem}.document-viewer iframe{min-height:31rem}.directory-heading{flex-direction:column;align-items:start;gap:.4rem}.patient-search{width:100%}.history-row{grid-template-columns:auto minmax(0,1fr) auto}.history-row>svg{display:none}}.portal-header{min-height:4.5rem;padding-inline:clamp(1.25rem,4vw,4rem)}.portal-brand img{width:3.1rem}.auth-page{grid-template-columns:minmax(28rem,1.15fr) minmax(23rem,.85fr);gap:clamp(1rem,2vw,2rem);width:min(100%,92rem);min-height:calc(100svh - 4.5rem);margin-inline:auto;padding:clamp(1rem,2vw,1.75rem)}.auth-visual{border-radius:1rem 4rem 1rem 1rem;min-height:min(44rem,100svh - 6.5rem)}.auth-panel{width:min(100%,30rem);padding:clamp(1.5rem,3vw,2.5rem)}.auth-panel-heading{margin-bottom:1.5rem}.auth-panel h1{font-size:clamp(2.75rem,4vw,3.75rem);line-height:.92}.patient-route{margin-top:1.35rem;padding-top:1rem;font-size:.84rem}.admin-layout{grid-template-columns:12.5rem minmax(0,1fr);min-height:calc(100svh - 4.5rem)}.admin-sidebar{height:calc(100svh - 4.5rem);padding:1.5rem 1rem;top:4.5rem}.admin-sidebar>div>strong{margin-top:0;font-size:.95rem}.admin-sidebar nav{margin-top:1.75rem}.admin-content{width:min(100%,80rem);padding:clamp(1.5rem,3vw,2.75rem)}.admin-heading{margin-bottom:1.4rem}.admin-heading h1{letter-spacing:-.04em;max-width:16ch;margin:0 0 .35rem;font-size:clamp(2.5rem,3.5vw,3.5rem);line-height:.96}.admin-heading.compact h1{margin-top:.35rem;font-size:clamp(2.4rem,3.4vw,3.3rem)}.back-link{margin-bottom:.8rem;font-size:.84rem}.record-context{color:var(--green);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:750}.metric-strip{border-radius:.85rem;margin-bottom:1.8rem}.metric-strip div{align-items:baseline;gap:.55rem;padding:.85rem 1rem;display:flex}.metric-strip strong{font-size:1.55rem}.patient-directory{gap:.8rem}.directory-heading h2{letter-spacing:-.025em;margin:0;font-size:clamp(1.45rem,2vw,2rem)}.patient-record-link{gap:.85rem;min-height:4.5rem;padding:.65rem .9rem}.review-grid{grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);gap:1rem}.work-surface{border-radius:.9rem;padding:clamp(1.3rem,2.5vw,2rem)}.surface-heading{margin-bottom:1.25rem}.publish-surface{border-radius:.9rem;padding:1.5rem}.publish-surface h2{margin:.85rem 0 .45rem;font-size:1.65rem}.admin-document{grid-column:1/-1}.patient-result-page{grid-template-columns:minmax(17rem,.42fr) minmax(0,1.58fr);gap:.85rem;width:min(100%,88rem);min-height:calc(100svh - 4.5rem);padding:clamp(.85rem,2vw,1.5rem)}.result-summary{border-radius:.95rem;justify-content:flex-start;padding:clamp(1.25rem,2.5vw,2rem)}.result-summary h1{letter-spacing:-.04em;overflow-wrap:anywhere;margin:.75rem 0 1.25rem;font-size:clamp(2.2rem,3.5vw,3.2rem);line-height:.95}.result-status{color:var(--green);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.45rem;font-size:.75rem;font-weight:750;display:inline-flex}.result-status svg{width:1rem;height:1rem}.session-note{margin-top:1rem;font-size:.78rem}.result-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;margin:1.25rem 0 0;display:grid}.result-actions form{margin:0}.result-actions .quiet-button{min-height:3.25rem;padding-inline:.5rem}.pdf-viewer{background:#dfe5e2;border:1px solid #2113331f;border-radius:.95rem;grid-column:1/-1;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:34rem;display:grid;position:relative;overflow:hidden}.patient-result-page>.pdf-viewer{grid-column:auto;height:calc(100svh - 6.2rem);min-height:36rem}.pdf-toolbar{z-index:2;background:#fff;border-bottom:1px solid #2113331f;justify-content:space-between;align-items:center;gap:1rem;min-height:3.7rem;padding:.65rem .85rem .65rem 1rem;display:flex;position:relative}.pdf-title{min-width:0;line-height:1.2;display:grid}.pdf-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pdf-title span{color:var(--muted);font-size:.72rem}.pdf-tools{align-items:center;gap:.2rem;display:flex}.pdf-tools button,.pdf-tools a{width:2.35rem;height:2.35rem;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:.45rem;place-items:center;text-decoration:none;display:grid}.pdf-tools button:hover,.pdf-tools a:hover{color:var(--green);background:var(--mineral)}.pdf-tools button:disabled{opacity:.35;cursor:default}.pdf-tools svg{width:1rem;height:1rem}.pdf-tools>span{min-width:3rem;color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;font-size:.72rem}.pdf-canvas-stage{scrollbar-color:#21133359 transparent;scrollbar-width:thin;background:#dfe5e2;align-content:start;justify-items:center;gap:1rem;min-width:0;padding:1rem;display:grid;overflow:auto}.pdf-page-surface{background:#fff;flex:none;max-width:none;position:relative;box-shadow:0 .8rem 2rem #21133321}.pdf-page-surface canvas{background:#fff;max-width:none;display:block}.pdf-page-number{color:#fff;font-variant-numeric:tabular-nums;background:#211333c2;border-radius:.35rem;padding:.2rem .4rem;font-size:.65rem;position:absolute;bottom:.5rem;right:.5rem}.pdf-loading,.pdf-error{z-index:3;color:var(--muted);text-align:center;background:#eef2ef;align-content:center;place-items:center;gap:.65rem;padding:1.5rem;display:grid;position:absolute;inset:3.7rem 0 0}.pdf-loading svg{width:1.35rem;animation:.9s linear infinite pdf-spin}.pdf-error p{max-width:32rem;margin:0}.pdf-error>div{gap:.7rem;display:flex}@keyframes pdf-spin{to{transform:rotate(360deg)}}@media (max-width:900px){.patient-result-page>.pdf-viewer{grid-column:1;height:68svh}.review-grid{grid-template-columns:1fr}}@media (max-width:800px){.auth-page{width:100%;min-height:calc(100svh - 4.5rem);padding:0}.auth-panel{width:min(100%,32rem);min-height:calc(100svh - 4.5rem);padding:2rem 1.5rem}.auth-visual{border-radius:0;min-height:17rem}}@media (max-width:650px){.result-summary{padding:1rem}.result-summary h1{margin:.4rem 0 .75rem;font-size:2rem}.result-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.result-summary dl div{grid-template-columns:1fr;gap:.15rem;padding:.6rem 0}.result-summary dl div+div{border-left:1px solid var(--line);padding-left:.85rem}.result-summary dl div:nth-child(3){border-left:0;grid-column:1/-1;padding-left:0}.result-summary dt{font-size:.75rem}.result-summary dd{font-size:.86rem}.session-note{margin-top:.7rem}.result-actions{margin-top:.75rem}.result-actions .button,.result-actions .quiet-button{min-height:2.8rem}.pdf-viewer{min-height:30rem}.pdf-toolbar{align-items:center;gap:.25rem;padding-inline:.65rem}.pdf-title span{display:none}.pdf-title strong{max-width:4.8rem}.pdf-tools{flex-wrap:nowrap;justify-content:flex-end}.pdf-tools>span{min-width:2.5rem}.pdf-tools button[aria-label=Restablecer\ zoom]{display:none}.pdf-canvas-stage{padding:.65rem}}@media (max-width:800px){html{overflow-x:clip}body{overscroll-behavior-y:contain}.portal-root{width:100%;min-width:0;overflow-x:clip}.portal-header{min-height:4.25rem;padding-top:env(safe-area-inset-top);padding-inline:max(1rem, env(safe-area-inset-left)) max(1rem, env(safe-area-inset-right));-webkit-backdrop-filter:blur(1rem)saturate(150%);backdrop-filter:blur(1rem)saturate(150%);background:#f5f6f2e6;box-shadow:0 .45rem 1.5rem #2113330d}.portal-brand img{width:2.85rem}.portal-navigation{gap:.8rem}.institutional-link{align-items:center;min-height:2.75rem;font-size:.82rem;display:inline-flex}.patient-entry{background:var(--violet);flex-direction:column;min-height:calc(100svh - 4.25rem);display:flex}.patient-visual{flex:0 0 36svh;min-height:16rem;max-height:23rem}.patient-visual>img{object-position:58% 48%}.patient-visual-copy{bottom:2.5rem;left:1.25rem;right:1.25rem}.patient-visual h1{letter-spacing:-.035em;max-width:12ch;font-size:clamp(2.55rem,12vw,3.35rem);line-height:.9}.patient-entry .access-surface{z-index:2;min-height:0;padding:2rem max(1.25rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(1.25rem, env(safe-area-inset-left));border-radius:1.5rem 1.5rem 0 0;flex:1 0 auto;margin-top:-1.5rem;position:relative}.patient-entry .access-surface h2{letter-spacing:-.035em;margin-bottom:1.2rem;font-size:clamp(2.1rem,10vw,2.75rem)}.patient-access-form{gap:.7rem}.patient-access-form input{border-radius:.8rem;min-height:3.75rem;padding-inline:1rem;font-size:1rem}.patient-access-form .button{min-height:3.6rem;margin-top:.35rem}.access-surface aside{margin-top:1.25rem;padding-top:1rem;line-height:1.45}.auth-page{background:var(--paper);flex-direction:column;gap:0;width:100%;min-width:0;min-height:calc(100svh - 4.25rem);padding:0;display:flex}.auth-visual{border-radius:0;flex:0 0 30svh;order:1;width:100%;min-width:0;min-height:14rem;max-height:19rem}.auth-visual>img{object-position:50% 36%}.auth-visual-copy{bottom:2.75rem;left:1.25rem;right:1.25rem}.auth-visual-copy p{max-width:22ch;font-size:1.15rem}.auth-panel{z-index:2;width:100%;min-width:0;min-height:0;padding:2rem max(1.25rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(1.25rem, env(safe-area-inset-left));background:var(--paper);border-radius:1.5rem 1.5rem 0 0;order:2;margin-top:-1.5rem;position:relative}.auth-panel-heading{margin-bottom:1.45rem}.auth-panel h1{letter-spacing:-.035em;max-width:10ch;font-size:clamp(2.55rem,12vw,3.25rem);line-height:.92}.auth-panel-heading>p{margin-top:.7rem;font-size:.95rem}.auth-panel .form-stack{gap:1rem}.auth-panel .form-stack input{border-radius:.75rem;min-height:3.6rem;font-size:1rem}.auth-panel .button{border-radius:.75rem;min-height:3.6rem}.patient-route{margin-top:1.35rem;padding-top:1rem;line-height:1.45}.admin-layout{min-width:0;min-height:calc(100svh - 4.25rem);display:block}.admin-sidebar{z-index:40;width:100%;height:auto;padding:.7rem max(1rem, env(safe-area-inset-right)) .6rem max(1rem, env(safe-area-inset-left));border-right:0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(1rem)saturate(145%);backdrop-filter:blur(1rem)saturate(145%);background:#eef5f2f0;grid-template-columns:minmax(0,1fr) auto;gap:.55rem .75rem;display:grid;position:sticky;top:4.25rem}.admin-sidebar>div>strong{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.88rem;overflow:hidden}.admin-sidebar>div>small{display:none}.admin-sidebar form{grid-area:1/2;align-self:center;margin:0}.admin-sidebar form .quiet-button{justify-content:center;width:2.75rem;height:2.75rem;padding:0}.admin-sidebar form .quiet-button span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin-sidebar nav{grid-area:2/1/auto/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:0;display:grid}.admin-sidebar nav a{background:#ffffffad;justify-content:center;min-height:2.75rem;padding:.55rem .7rem;font-size:.84rem}.admin-content{width:100%;min-width:0;padding:1.35rem max(1rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left))}.admin-heading{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.2rem}.admin-heading h1,.admin-heading.compact h1{letter-spacing:-.035em;max-width:12ch;margin:0 0 .35rem;font-size:clamp(2.25rem,11vw,3rem);line-height:.94}.admin-heading p{font-size:.92rem}.admin-heading .button{width:100%}.back-link{margin-bottom:.7rem}.patient-history-heading{gap:1.1rem}.patient-history-main{gap:1rem}.patient-profile-title{gap:.8rem}.patient-profile-avatar{width:3rem;height:3rem}.patient-history-heading .patient-profile-title h1{max-width:none;margin:0 0 .15rem;font-size:clamp(1.65rem,7.5vw,2.15rem);line-height:1.02}.patient-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-facts>div{padding:.65rem .75rem}.patient-facts>div:first-child{padding-left:0}.patient-facts>div:nth-child(2){border-right:0;padding-right:0}.patient-facts>div:last-child{border-top:1px solid var(--line);grid-column:1/-1;padding:.65rem 0}.patient-facts dd{font-size:.84rem}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1.4rem}.metric-strip div{padding:.8rem}.metric-strip div:nth-child(2){border-right:0}.metric-strip div:nth-child(-n+2){border-bottom:1px solid #2113331a}.metric-strip strong{font-size:1.45rem}.directory-heading{flex-direction:column;align-items:stretch;gap:.75rem}.patient-search{width:100%}.patient-record-link{grid-template-columns:auto minmax(0,1fr) auto;gap:.65rem;padding:.8rem}.patient-count{display:none}.latest-study{grid-column:2}.patient-record-link .record-status{grid-area:1/3}.patient-record-link>svg{grid-area:2/3;justify-self:center}.review-grid,.field-grid{grid-template-columns:1fr}.work-surface,.publish-surface{border-radius:.85rem;padding:1.15rem}.surface-heading{gap:.7rem;margin-bottom:1.1rem}.surface-heading p{font-size:.88rem}.validity-setting{grid-template-columns:auto minmax(0,1fr)}.validity-setting .days-input{grid-column:2;justify-self:start}.patient-result-page{background:#eef2ef;flex-direction:column;gap:0;width:100%;min-width:0;min-height:calc(100svh - 4.25rem);padding:0;display:flex}.result-summary{border:0;border-radius:0 0 1.25rem 1.25rem;padding:1.25rem}.result-summary h1{letter-spacing:-.035em;margin:.5rem 0 .9rem;font-size:clamp(2rem,10vw,2.65rem)}.result-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.result-summary dl div{min-width:0}.result-summary dd{overflow-wrap:anywhere}.result-actions{grid-template-columns:minmax(0,1fr) auto;margin:.9rem 0 0}.patient-result-page>.pdf-viewer{width:auto;height:70svh;min-height:31rem;margin:.8rem .8rem max(.8rem, env(safe-area-inset-bottom))}.pdf-toolbar{gap:.5rem;min-height:3.5rem;padding:.55rem .65rem .55rem .8rem}.pdf-title strong{max-width:10rem}.pdf-title span{display:block}.pdf-tools{gap:.1rem}.pdf-tools button[aria-label=Alejar],.pdf-tools button[aria-label=Acercar],.pdf-tools button[aria-label=Restablecer\ zoom],.pdf-tools>span{display:none}.pdf-tools button,.pdf-tools a{width:2.75rem;height:2.75rem}.pdf-canvas-stage{scroll-snap-type:y proximity;padding:.65rem}.pdf-page-surface{scroll-snap-align:start}}@media (max-width:370px){.portal-header{min-height:4rem}.portal-brand img{width:2.6rem}.institutional-link{font-size:.76rem}.patient-visual{min-height:14.5rem}.patient-entry .access-surface,.auth-panel{padding-inline:1rem}.patient-visual h1,.auth-panel h1{font-size:2.35rem}.patient-access-form input{letter-spacing:.055em}.admin-sidebar{top:4rem}.admin-content{padding-inline:.85rem}}@media (hover:none) and (pointer:coarse){.button:hover,.patient-record-link:hover,.history-row:hover{transform:none}.button:active,.patient-record-link:active,.admin-sidebar nav a:active{transform:scale(.985)}}.admin-heading-meta{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-bottom:.65rem;display:flex}.admin-heading-meta .back-link{border-right:1px solid var(--line);margin:0;padding-right:1rem;text-decoration:none}.upload-page{width:min(100%,58rem);margin-inline:auto}.upload-page .admin-heading{margin-bottom:1rem}.upload-page .admin-heading.compact h1{font-size:clamp(2.25rem,3.2vw,3rem)}.upload-surface{padding:clamp(1rem,2vw,1.5rem)}.upload-surface .upload-form{gap:1rem}.upload-surface .upload-drop{border-radius:.8rem;gap:.7rem;min-height:10.5rem;padding:1.25rem}.upload-surface .upload-drop svg{width:2rem;height:2rem}.upload-surface .upload-drop label{gap:.2rem;width:min(100%,34rem);min-width:0}.upload-surface .upload-drop strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.upload-surface .validity-setting{border:1px solid var(--line);border-radius:.75rem;margin:0;padding:.8rem}.upload-surface .manual-fields{border-top:0}.upload-surface .manual-fields summary{padding:.7rem 0;font-size:.88rem}.publish-controls{gap:.9rem;display:grid}.share-message-label{font-size:.76rem;font-weight:730}.share-message{resize:vertical;width:100%;min-height:10.25rem;color:var(--ink);font:500 .76rem/1.45 var(--font);background:#ffffffc7;border:1px solid #21133326;border-radius:.65rem;padding:.75rem}.copy-message-button{border:1px solid var(--green);min-height:2.8rem;color:var(--green);cursor:pointer;background:#fff;border-radius:.6rem;justify-content:center;align-items:center;gap:.45rem;padding:0 .9rem;font-weight:700;display:inline-flex}.copy-message-button:hover{color:#fff;background:var(--green)}.copy-message-button svg{width:1rem}.result-summary h1{letter-spacing:-.035em;overflow-wrap:break-word;word-break:normal;font-size:clamp(2rem,3vw,2.85rem);line-height:.97}.result-detail-heading{align-items:center;gap:1.5rem;margin-bottom:1rem}.result-detail-heading .patient-breadcrumb{margin-bottom:.8rem}.result-title-row{align-items:center;gap:.85rem;min-width:0;display:flex}.result-title-icon{width:2.8rem;height:2.8rem;color:var(--green);background:#dff2e8;border-radius:50%;flex:none;place-items:center;display:grid}.result-title-icon svg{width:1.2rem;height:1.2rem}.result-detail-heading .result-title-row h1{letter-spacing:-.03em;overflow-wrap:break-word;max-width:28ch;margin:0 0 .2rem;font-size:clamp(1.8rem,2.7vw,2.55rem);line-height:1}.result-title-row p{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:.82rem}.result-detail-heading .status-pill{flex:none}.result-review-grid{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);gap:.85rem}.patient-data-surface{border-radius:.9rem;padding:0;overflow:hidden}.metadata-disclosure>summary,.share-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:4.4rem;padding:.85rem 1rem;list-style:none;transition:background .16s;display:flex}.metadata-disclosure>summary::-webkit-details-marker{display:none}.share-disclosure>summary::-webkit-details-marker{display:none}.metadata-summary-copy{align-items:center;gap:.7rem;min-width:0;display:flex}.metadata-summary-copy>svg{width:1.15rem;height:1.15rem;color:var(--green);flex:none}.metadata-summary-copy>span{gap:.05rem;min-width:0;display:grid}.metadata-summary-copy strong{font-size:.95rem}.metadata-summary-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.disclosure-chevron{width:1rem;height:1rem;color:var(--muted);transition:transform .18s var(--ease-in-out);flex:none}details[open]>summary .disclosure-chevron{transform:rotate(180deg)}.metadata-disclosure-body{border-top:1px solid var(--line);padding:0 1rem 1rem}.metadata-disclosure-body .form-stack{gap:.8rem;padding-top:1rem}.metadata-disclosure-body .field-grid{gap:.75rem}.metadata-disclosure-body .form-stack label{gap:.3rem;font-size:.78rem}.metadata-disclosure-body .form-stack input{min-height:2.75rem;padding-inline:.75rem;font-size:.86rem}.metadata-disclosure-body .form-stack .button{justify-self:end;min-height:2.8rem;margin:0}.result-publish-surface{padding:1rem}.publish-heading{align-items:center;gap:.7rem;display:flex}.publish-heading>svg{width:1.2rem;height:1.2rem;color:var(--green);flex:none}.result-publish-surface .publish-heading h2{margin:0 0 .1rem;font-size:1.2rem;line-height:1.1}.publish-heading p{color:var(--muted);margin:0;font-size:.75rem}.result-publish-surface .access-delivery{gap:.65rem;margin-top:.9rem}.result-publish-surface .success-heading{border-top:1px solid #00894229;align-items:center;gap:.55rem;margin:0;padding-top:.75rem}.result-publish-surface .success-heading>svg{width:1rem;height:1rem}.result-publish-surface .success-heading strong{font-size:.84rem}.result-publish-surface .success-heading span{font-size:.72rem}.share-disclosure{background:#ffffff94;border:1px solid #00894233;border-radius:.7rem;overflow:hidden}.share-disclosure>summary{min-height:2.9rem;color:var(--green);padding:.55rem .75rem;font-size:.8rem;font-weight:700}.share-disclosure>summary>span{align-items:center;gap:.45rem;display:inline-flex}.share-disclosure>summary svg{width:.95rem;height:.95rem}.share-disclosure-body{gap:.55rem;padding:0 .7rem .7rem;display:grid}.result-publish-surface .share-message{resize:none;min-height:7.5rem;font-size:.72rem}.result-publish-surface .copy-message-button{min-height:2.55rem;transition:color .16s ease, background .16s ease, transform .14s var(--ease-out);font-size:.8rem}.result-publish-surface .publish-controls>form .button{min-height:2.8rem;margin-top:0;font-size:.82rem}.result-publish-surface .danger-button{min-height:2.7rem;margin-top:.65rem;font-size:.78rem}.result-review-grid>.pdf-viewer{justify-self:center;width:min(100%,56rem);height:clamp(28rem,62svh,38rem);min-height:0}.result-review-grid>.pdf-viewer .pdf-canvas-stage{padding:.8rem}@media (hover:hover) and (pointer:fine){.metadata-disclosure>summary:hover,.share-disclosure>summary:hover{background:#0089420d}.result-publish-surface .copy-message-button:hover{transform:translateY(-1px)}}@media (max-width:800px){.upload-page .admin-heading.compact h1{max-width:none;font-size:clamp(2rem,9vw,2.5rem)}.upload-surface .upload-drop{min-height:9rem}.upload-surface .validity-setting{align-items:start}.result-summary{padding:1rem max(1rem, env(safe-area-inset-right)) .9rem max(1rem, env(safe-area-inset-left));border-radius:0 0 1.1rem 1.1rem}.result-summary h1{letter-spacing:-.025em;overflow-wrap:break-word;word-break:normal;max-width:100%;margin:.4rem 0 .7rem;font-size:clamp(1.75rem,7.8vw,2.3rem);line-height:.98}.result-status{font-size:.68rem}.result-summary dl div{padding-block:.5rem}.result-summary dd{overflow-wrap:break-word;word-break:normal}.patient-result-page>.pdf-viewer{height:72svh;min-height:30rem;margin:.65rem .65rem max(.65rem, env(safe-area-inset-bottom))}.result-detail-heading{align-items:stretch;gap:.8rem}.result-detail-heading .patient-breadcrumb{margin-bottom:.65rem}.result-title-row{align-items:flex-start}.result-title-icon{width:2.5rem;height:2.5rem}.result-detail-heading .result-title-row h1{max-width:none;font-size:clamp(1.45rem,6.5vw,1.9rem);line-height:1.03}.result-detail-heading .status-pill{align-self:flex-start}.result-review-grid{grid-template-columns:1fr}.result-review-grid>.pdf-viewer{width:100%;height:62svh;min-height:26rem}.metadata-disclosure>summary{min-height:4rem}.metadata-disclosure-body .form-stack .button{width:100%}.result-publish-surface{padding:.9rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (min-width:901px){.patient-entry,.patient-visual{min-height:calc(100svh - 4.5rem)}.access-surface{padding-block:clamp(1.5rem,4svh,3.25rem);padding-inline:clamp(2rem,6vw,6rem)}.access-surface h2{font-size:clamp(2.5rem,min(4vw,7svh),4rem)}}@media (min-width:901px) and (max-height:760px){.patient-visual-copy{bottom:clamp(1.5rem,3.5svh,2rem);left:clamp(2rem,5vw,4.75rem);right:clamp(2rem,5vw,4.75rem)}.patient-visual h1{font-size:clamp(2.75rem,7svh,3.45rem);line-height:.9}.access-surface{padding-block:1.25rem}.access-surface h2{margin-bottom:.65rem;font-size:clamp(2.25rem,6.5svh,3rem)}.access-intro{font-size:.92rem;margin-bottom:1rem!important}.patient-access-form{gap:.55rem}.patient-access-form label{font-size:.85rem}.patient-access-form label+input+label{margin-top:.1rem}.patient-access-form input{min-height:3.35rem;font-size:1rem}.patient-access-form .button{min-height:3.1rem;margin-top:.2rem}.access-surface aside{margin-top:.8rem;padding-top:.75rem;font-size:.76rem;line-height:1.35}}.news-admin-page,.news-editor-page{width:min(100%,76rem);margin-inline:auto}.news-admin-heading{margin-bottom:1.4rem}.news-admin-heading h1{margin-top:.25rem;font-size:clamp(2.5rem,4vw,3.8rem)}.news-notice{border-left:.2rem solid var(--green);color:#075f31;background:#e4f4eb;margin:-.3rem 0 1rem;padding:.75rem 1rem;font-size:.86rem}.news-toolbar{grid-template-columns:minmax(14rem,1fr) auto auto;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:grid}.news-toolbar>label{border:1px solid var(--line);background:#fff;border-radius:.75rem;grid-template-columns:1.1rem minmax(0,1fr);align-items:center;gap:.6rem;min-height:3rem;padding:0 .85rem;display:grid}.news-toolbar>label svg{width:1rem;color:var(--green)}.news-toolbar input{background:0 0;border:0;outline:0;min-width:0;height:100%}.news-toolbar .button{min-height:3rem;padding-block:.5rem}.news-filters{border:1px solid var(--line);background:#fff;border-radius:.75rem;gap:.2rem;padding:.2rem;display:flex}.news-filters a{min-height:2.75rem;color:var(--muted);border-radius:.55rem;align-items:center;padding:0 .7rem;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.news-filters a[aria-current=page]{color:var(--green);background:var(--mineral)}.news-admin-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.news-admin-card{min-width:0;transition:border-color .16s ease, transform .18s var(--ease-out), box-shadow .18s ease;background:#fff;border:1px solid #2113331f;border-radius:1rem;flex-direction:column;display:flex;position:relative;overflow:hidden}.news-admin-card:hover{border-color:#0089424d;transform:translateY(-2px);box-shadow:0 .8rem 2rem #21133312}.news-admin-card>figure{aspect-ratio:16/9;background:#dce5e1;min-height:12rem;margin:0;position:relative;overflow:hidden}.news-admin-card>figure img{object-fit:cover;transition:transform .35s var(--ease-out)}.news-admin-card:hover>figure img{transform:scale(1.015)}.news-admin-card-copy{flex-direction:column;flex:1;min-width:0;padding:1rem 1.1rem 1.2rem;display:flex}.news-card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.45rem .65rem;font-size:.7rem;display:flex}.news-card-meta>span:last-child{align-items:center;gap:.25rem;display:inline-flex}.news-card-meta svg{width:.8rem}.news-card-meta .news-schedule-label{color:var(--green-dark);flex-basis:100%;font-weight:680}.news-status{letter-spacing:.025em;border-radius:999px;align-items:center;width:max-content;min-height:1.55rem;padding:0 .55rem;font-size:.66rem;font-weight:760;display:inline-flex}.news-status-published{color:#006932;background:#daf1e4}.news-status-draft{color:#59555e;background:#eeecef}.news-status-unpublished{color:#694e7b;background:#f1e8f5}.news-admin-card h2{letter-spacing:-.02em;margin:.75rem 0 .4rem;font-size:1.15rem;line-height:1.08}.news-admin-card p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.78rem;line-height:1.45;display:-webkit-box;overflow:hidden}.news-admin-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:.3rem;padding:.65rem .8rem;display:flex}.news-admin-actions form{margin:0}.news-icon-action{border:1px solid var(--line);width:2.75rem;height:2.75rem;color:var(--green);cursor:pointer;transition:color .16s ease, background .16s ease, transform .16s var(--ease-out);background:#fff;border-radius:50%;place-items:center;text-decoration:none;display:grid}.news-icon-action:hover{color:#fff;background:var(--green);transform:translateY(-1px)}.news-icon-action svg{width:.95rem}.news-delete-trigger{color:var(--danger)}.news-delete-trigger:hover{background:var(--danger)}.news-delete-dialog{width:min(100% - 2rem,28rem);color:var(--ink);background:var(--paper);border:0;border-radius:1rem;padding:2rem;box-shadow:0 1.5rem 5rem #150a224d}.news-delete-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#180a2a94}.news-delete-dialog>svg{color:var(--danger)}.news-delete-dialog h2{margin:1rem 0 .5rem;font-size:1.55rem}.news-delete-dialog p{color:var(--muted);margin:0;font-size:.9rem}.news-delete-dialog>div{gap:.65rem;margin-top:1.5rem;display:flex}.news-delete-dialog .danger-button{width:auto;min-height:3.25rem;margin:0;padding-inline:1rem}.news-dialog-close{width:2.75rem;height:2.75rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:.75rem;right:.75rem}.news-empty-state{border:1px solid var(--line);text-align:center;background:#fff;border-radius:1rem;align-content:center;justify-items:center;min-height:23rem;padding:2rem;display:grid}.news-empty-state>svg{width:2.2rem;height:2.2rem;color:var(--green)}.news-empty-state h2{margin:1rem 0 .3rem}.news-empty-state p{max-width:30rem;color:var(--muted);margin:0 0 1.2rem}.news-editor-page .admin-heading{margin-bottom:1.2rem}.news-editor-page .admin-heading.compact h1{margin-top:.2rem;font-size:clamp(2.2rem,3vw,3rem)}.news-composer{grid-template-columns:minmax(0,1.15fr) minmax(18rem,.75fr);align-items:start;gap:1rem;display:grid}.news-editor-panel,.news-preview-panel{border:1px solid var(--line);background:#fff;border-radius:1rem;padding:clamp(1rem,2vw,1.4rem)}.news-editor-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.news-editor-heading h2,.news-preview-panel h2{margin:.25rem 0 0;font-size:1.3rem;line-height:1.1}.news-required-note{color:var(--muted);font-size:.7rem}.news-image-drop{background:var(--mineral);border:1px dashed #2113334d;border-radius:.8rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:8.5rem;padding:1rem;transition:border-color .16s,background .16s;display:grid;position:relative}.news-image-drop[data-dragging=true]{border-color:var(--green);background:#dff3e7}.news-image-drop>svg{width:1.8rem;height:1.8rem;color:var(--green)}.news-image-drop>div{gap:.15rem;min-width:0;display:grid}.news-image-drop strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.news-image-drop span{color:var(--muted);font-size:.72rem}.news-image-drop input{opacity:0;width:1px;height:1px;position:absolute}.news-image-drop .button{min-height:2.7rem;padding:.55rem .8rem;font-size:.75rem}.news-clear-image{min-height:2.75rem;color:var(--muted);cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:end;align-items:center;gap:.25rem;font-size:.72rem;display:inline-flex}.news-clear-image svg{width:.75rem}.news-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem;display:grid}.news-field{color:var(--ink);gap:.32rem;font-size:.76rem;font-weight:700;display:grid;position:relative}.news-field-wide{grid-column:1/-1}.news-field input:not([type=range]),.news-field textarea{border:1px solid var(--line);width:100%;min-height:2.85rem;color:var(--ink);background:#fff;border-radius:.65rem;outline:0;padding:.7rem .8rem}.news-field textarea{resize:vertical;line-height:1.4}.news-field input:focus,.news-field textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #0089421f}.news-field>small{color:var(--muted);justify-self:end;font-size:.65rem;font-weight:520}.news-schedule{border:1px solid color-mix(in srgb, var(--green) 22%, var(--line));background:color-mix(in srgb, var(--mineral) 72%, white);border-radius:.8rem;min-width:0;margin:0;padding:.9rem}.news-schedule legend{width:100%;color:var(--ink);align-items:center;gap:.65rem;padding:0 0 .75rem;display:flex}.news-schedule legend>svg{width:1.15rem;height:1.15rem;color:var(--green)}.news-schedule legend>span{gap:.1rem;display:grid}.news-schedule legend strong{font-size:.78rem}.news-schedule legend small{color:var(--muted);font-size:.67rem;font-weight:520}.news-schedule>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.news-position-field>small{justify-self:start;align-items:center;gap:.3rem;display:flex}.news-position-field>small svg{width:.75rem}.news-position-field input[type=range]{width:100%;accent-color:var(--green)}.news-composer-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;margin-top:1rem;padding-top:1rem;display:flex}.news-cancel-link{color:var(--muted);margin-right:auto;font-size:.78rem;font-weight:700}.news-composer-actions .button{min-height:2.9rem;font-size:.78rem}.news-submit-status{color:var(--green);flex-basis:100%;justify-content:flex-end;align-items:center;gap:.45rem;margin:0;font-size:.78rem;font-weight:700;display:flex}.news-submit-status svg{width:1rem;height:1rem;animation:.8s linear infinite news-spin}.news-form-error{border:1px solid #a8262640;border-left:.22rem solid var(--danger);background:#fff4f2;border-radius:.55rem;gap:.2rem;margin:1rem 0 0;padding:.9rem 1rem;display:grid}.news-form-error strong{color:var(--danger);font-size:.82rem}.news-form-error span{color:var(--ink);font-size:.8rem}.news-form-error small{color:var(--muted);font-size:.7rem}.news-form-error:focus{outline:2px solid var(--danger);outline-offset:2px}@keyframes news-spin{to{transform:rotate(360deg)}}.news-preview-panel{background:#eef4f1;gap:1rem;display:grid;position:sticky;top:6rem}.news-preview-empty{border:1px dashed var(--line);min-height:22rem;color:var(--muted);text-align:center;border-radius:.8rem;align-content:center;place-items:center;padding:2rem;display:grid}.news-preview-empty svg{width:2rem;height:2rem;color:var(--lilac-text)}.news-visual-card{background:#fff;border-radius:.95rem;min-width:0;overflow:hidden;box-shadow:0 .7rem 2rem #21133314}.news-visual-image{aspect-ratio:4/3;background:#dfe5e2;margin:0;position:relative}.news-visual-image img{object-fit:cover;width:100%;height:100%}.news-visual-copy{padding:1rem}.news-visual-copy time{color:var(--lilac-text);font-size:.68rem;font-weight:720}.news-visual-copy h3{letter-spacing:-.025em;margin:.35rem 0 .45rem;font-size:1.25rem;line-height:1.05}.news-visual-copy p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.45}@media (max-width:1050px){.news-admin-wall,.news-composer{grid-template-columns:1fr}.news-preview-panel{position:static}.news-preview-panel .news-visual-card{width:min(100%,26rem)}}@media (max-width:800px){.admin-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-sidebar nav a{text-align:center;flex-direction:column;justify-content:center;gap:.18rem;min-width:0;padding:.35rem .2rem;font-size:.68rem}.news-admin-heading{align-items:stretch}.news-admin-heading .button{width:100%}.news-toolbar{grid-template-columns:1fr auto}.news-filters{grid-area:2/1/auto/-1;overflow-x:auto}.news-toolbar>label{min-width:0}.news-admin-card>figure{min-height:11.5rem}.news-composer{gap:.75rem}.news-image-drop{grid-template-columns:auto minmax(0,1fr)}.news-image-drop .button{grid-column:1/-1;width:100%}.news-field-grid{grid-template-columns:1fr}.news-field-wide{grid-column:auto}.news-schedule>div{grid-template-columns:1fr}.news-composer-actions{display:grid}.news-submit-status{justify-content:flex-start}.news-cancel-link{align-items:center;min-height:2.75rem;display:inline-flex}.news-composer-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.news-submit-status svg{animation:none}}@media (max-width:440px){.news-admin-card>figure{aspect-ratio:16/8;min-height:11rem}.news-delete-dialog>div{display:grid}.news-delete-dialog .button,.news-delete-dialog .danger-button{width:100%}}
