@charset "UTF-8";
:root{--paper:#f5f1e8;--ink:#34392d;--muted:#777a6d;--brick:#854b35;--line:#dcd8ca;--sage:#64715a;--serif:"Songti SC","Noto Serif CJK SC","SimSun",serif;--sans:"PingFang SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:var(--brick)}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:600}h1{font-size:36px;letter-spacing:.06em;line-height:1.35}h2{font-size:24px;letter-spacing:.025em}.muted,.help-text{color:var(--muted)}.eyebrow{font:11px/1.6 Georgia,serif;letter-spacing:.2em;color:var(--sage)}.button{border:1px solid var(--ink);background:var(--ink);color:#fffdf7;display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:46px;padding:11px 22px;border-radius:3px;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#4b553f;color:#fff}.button:active{transform:translateY(1px)}.button.secondary{background:transparent;color:var(--brick);border-color:#bda48f}.text-button{border:0;background:none;padding:0;color:inherit}.text-button:hover{text-decoration:underline;color:var(--brick)}a:focus-visible,button:focus-visible{outline:3px solid #b59563;outline-offset:5px}.field{margin:0 0 22px}.field label{display:block;margin-bottom:9px;font-size:13px}.field input{display:block;width:100%;min-height:48px;background:rgba(255,255,255,.5);border:1px solid #cfcfc0;border-radius:3px;padding:11px 13px;color:var(--ink);outline:none}.field input:focus{border-color:var(--sage);box-shadow:0 0 0 3px #64715a16}.field input::placeholder{color:#a2a397}.errorlist{color:#9c392a;font-size:13px;list-style:none;padding:0;margin:7px 0}.form-errors{padding:11px 15px;border-left:3px solid #ad6250;background:#ad62500c;margin-bottom:24px}.help-text{font-size:12px;margin-top:7px}.help-text ul{padding-left:18px}.message{padding:12px 17px;border-left:3px solid var(--sage);background:#64715a0b;margin:0 0 25px}.login-page{background:#f3efe5}.login-layout{min-height:100svh;display:grid;grid-template-columns:58% 42%;background-image:url("./hospital-bg.c982f0adb97e.png");background-size:cover;background-position:center}.login-scene{min-height:100svh;position:relative;padding:7vh 7vw}.scene-title{position:relative;z-index:1}.scene-title .eyebrow{color:#7c654c;letter-spacing:.28em;font-size:12px;margin-bottom:14px}.scene-title h1{font-size:clamp(32px,3.2vw,52px);font-weight:500;margin-bottom:14px;letter-spacing:.15em;color:#4e4536}.scene-subtitle{font-family:var(--serif);font-size:15px;color:#7c725f;letter-spacing:.13em}.scene-note{position:absolute;left:7vw;bottom:3.7vh;color:#7a7566;font-size:12px;letter-spacing:.12em}.scene-note span{margin:0 10px}.login-panel{position:relative;display:flex;justify-content:center;align-items:center;padding:70px 5vw 95px;background:linear-gradient(90deg,transparent,rgba(248,245,237,.28) 40%,rgba(248,245,237,.56))}.login-form-wrap{width:100%;max-width:340px;animation:appear .65s ease-out}.small-rule{display:block;width:32px;height:3px;background:#986340;margin-bottom:22px}.login-form-wrap .eyebrow{font-size:10px;margin-bottom:12px}.login-form-wrap h2{font-size:34px;margin-bottom:12px;letter-spacing:.1em}.login-form-wrap .intro{font-size:13px;margin-bottom:38px}.login-button{width:100%;margin-top:7px;justify-content:space-between;padding-left:19px;padding-right:19px}.access-note{margin:25px 0 0;font-size:12px;color:#858778;line-height:1.9}.login-footnote{position:absolute;bottom:3.7vh;margin:0;font-size:11px;letter-spacing:.12em;color:#8c8d7f}.site-header{min-height:90px;padding:20px 6vw;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:14px;font-family:var(--serif);font-size:21px;letter-spacing:.08em}.brand small{display:block;font:8px Georgia,serif;letter-spacing:.2em;margin-top:3px;color:var(--muted)}.brand-seal{background:#8a553a;color:#fff8e9;width:41px;height:44px;display:grid;place-items:center;font-size:14px;letter-spacing:.1em}.user-nav{display:flex;align-items:center;gap:23px;font-size:12px;color:var(--muted)}.user-nav form{margin:0}.user-nav>span{color:var(--ink)}.page{max-width:1200px;margin:0 auto;padding:58px 45px 90px;min-height:calc(100svh - 160px)}.page-heading{margin-bottom:35px}.page-heading h1{margin-bottom:12px}.page-heading .eyebrow{margin-bottom:11px}.page-heading .muted{font-size:14px}.report-card{display:flex;align-items:stretch;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0;gap:42px}.month-mark{width:115px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--line);padding-right:30px}.month-mark>span{font:16px Georgia,serif;letter-spacing:.12em;color:var(--muted)}.month-mark strong{font:62px/1.2 Georgia,serif;font-weight:400;color:var(--brick);margin:6px 0 10px}.month-mark small{font:9px Georgia,serif;letter-spacing:.25em;color:var(--muted)}.report-summary{flex:1}.report-summary h2{margin:12px 0 8px;font-size:27px}.report-summary>p{font-size:13px;color:var(--muted);margin-bottom:28px}.report-meta{display:flex;gap:15px;align-items:center;font-size:11px;color:var(--muted)}.status-tag{font-size:11px;padding:1px 7px;border:1px solid #a8ac97;color:#6a725c;border-radius:2px}.report-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.file-link{font-size:13px;border-bottom:1px solid #c4c4b5;padding:6px 0}.file-link span{margin-left:13px}.site-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:23px 6vw;color:#8d8e81;font-size:11px}.narrow-page{max-width:520px;margin:0 auto}.narrow-page h1{font-size:30px;margin:20px 0 12px}.panel-form{margin-top:28px}.accounts-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:70px}.accounts-grid h2{font-size:21px}.account-row{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);padding:18px 0;font-size:13px}.account-row>div{flex:1;min-width:0;overflow-wrap:anywhere}.account-row p{font-size:12px;color:var(--muted);margin:6px 0 0}.account-row a{font-size:12px}.form-section{border-left:1px solid var(--line);padding-left:35px}.account-action{padding:10px 0 40px;margin-bottom:25px;border-bottom:1px solid var(--line)}.viewer-page{overflow:hidden}.viewer-header{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 25px;gap:20px;background:#f7f3e9;border-bottom:1px solid var(--line);font-size:12px}.viewer-title{flex:1}.viewer-title small{color:var(--muted);margin-left:12px}.viewer-header nav{display:flex;align-items:center;gap:20px}.viewer-header form{margin:0}.report-frame{display:block;width:100%;height:calc(100svh - 56px);border:0;background:white}.empty-state{padding:50px;border:1px solid var(--line);text-align:center;color:var(--muted)}.back-link{font-size:12px}.viewer-header .back-link{white-space:nowrap}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(min-width:1800px){.login-layout{background-position:left center}.login-form-wrap{max-width:390px}}@media(max-width:850px){.login-layout{display:block;background-size:auto 68vh;background-position:25% 0;background-repeat:no-repeat}.login-scene{min-height:35vh;padding:35px 8vw 20px}.scene-title h1{font-size:32px}.scene-subtitle{font-size:13px}.scene-note{display:none}.login-panel{padding:35px 9vw 75px;min-height:65vh;background:linear-gradient(180deg,rgba(246,242,232,.92),#f3efe5 120px)}.login-form-wrap{max-width:440px}.login-form-wrap h2{font-size:28px}.login-form-wrap .intro{margin-bottom:24px}.login-footnote{bottom:22px}.site-header{padding:18px 25px;flex-wrap:wrap;gap:15px}.user-nav{gap:17px;flex-wrap:wrap}.page{padding:35px 25px 60px}.accounts-grid{grid-template-columns:1fr;gap:40px}.form-section{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:25px}.report-card{gap:22px;padding:28px 0}.month-mark{width:78px;padding-right:20px}.month-mark strong{font-size:46px}.report-summary h2{font-size:23px}.report-links{gap:18px}.report-links .button{flex-basis:100%;max-width:220px}.site-footer{padding:20px 25px;flex-wrap:wrap}.viewer-header{padding:0 12px;gap:12px;height:64px}.viewer-title{display:none}.viewer-header nav{gap:16px}.report-frame{height:calc(100svh - 64px)}}
