:root{--blue:#0877b9;--blue-dark:#075f94;--blue-soft:#e9f5fb;--green:#2e9b58;--green-soft:#e7f6ec;--red:#d8423e;--red-soft:#fdeeed;--orange:#c87515;--orange-soft:#fff5e7;--navy:#17324d;--muted:#60798d;--border:#dce9ef;--surface:#fff;--background:#f3fafd;--shadow:0 12px 30px #194f6b14}*{box-sizing:border-box}html{background:var(--background)}body{color:var(--navy);background:var(--background);margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,input{font:inherit}button{min-height:44px}button:disabled{cursor:not-allowed;opacity:.6}a{color:inherit;text-decoration:none}.app-frame{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.login-page{background:radial-gradient(circle at 20% 10%, #dff3fc 0, transparent 38%), var(--background);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{width:min(520px,100%);padding:32px}.login-brand{color:var(--navy);margin-bottom:28px;padding:0}.login-brand small{color:var(--muted)}.field-label{margin:18px 0 7px;font-size:13px;font-weight:750;display:block}.text-input{width:100%;min-height:48px;color:var(--navy);border:1px solid var(--border);background:#fff;border-radius:11px;padding:0 13px}.text-input:focus{border-color:var(--blue);outline:3px solid #0877b91f}.code-fields{grid-template-columns:1fr auto;gap:10px;margin-top:10px;display:grid}.full-button{width:100%;margin-top:16px}.auth-help{min-height:44px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.auth-help a{color:var(--blue);font-weight:750}.form-error{color:var(--red);margin:12px 0 0;font-size:13px}.sidebar{color:#eef9ff;background:linear-gradient(#075f94 0%,#064d79 100%);flex-direction:column;gap:34px;height:100vh;padding:28px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:0 8px;display:flex}.brand-mark{width:58px;height:42px;color:var(--blue);letter-spacing:-.5px;white-space:nowrap;background:#fff;border-radius:14px;place-items:center;font-size:13px;font-weight:900;display:grid}.brand strong,.brand small{display:block}.sidebar .brand strong{letter-spacing:-.25px;white-space:nowrap;font-size:14px}.brand small{color:#acd8ee;margin-top:3px}.sidebar nav{gap:8px;display:grid}.nav-link{color:#d8eef8;border-radius:12px;align-items:center;gap:12px;min-height:48px;padding:0 14px;font-weight:650;display:flex}.nav-link:hover,.nav-link:focus-visible{color:#fff;background:#ffffff1f;outline:2px solid #ffffff80}.nav-mark{text-align:center;width:24px;font-size:20px}.privacy-card{background:#ffffff14;border:1px solid #ffffff2e;border-radius:14px;margin-top:auto;padding:16px}.privacy-card p{color:#c8e4f1;margin:8px 0 0;font-size:13px;line-height:1.7}.main-area{min-width:0}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;justify-content:space-between;align-items:center;height:78px;padding:0 34px;display:flex}.topbar>div{align-items:center;gap:10px;display:flex}.verified-badge,.status-chip,.quiet-badge{border-radius:999px;align-items:center;width:fit-content;min-height:28px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.verified-badge{color:var(--green);background:var(--green-soft)}.doctor-pill{border-left:1px solid var(--border);padding-left:18px}.doctor-pill strong,.doctor-pill small{display:block}.doctor-pill small{color:var(--muted);margin-top:2px}.avatar{color:#fff;background:var(--blue);border-radius:50%;place-items:center;width:40px;height:40px;font-weight:800;display:grid}main{width:min(1380px,100%);margin:0 auto;padding:34px}.page-stack{gap:24px;min-width:0;display:grid}.page-stack>*,.content-grid>*,.card{min-width:0}.page-title-row{justify-content:space-between;align-items:center;gap:24px;display:flex}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.03em;margin-bottom:10px;font-size:clamp(28px,3vw,38px)}h2{margin-bottom:8px;font-size:20px}h3{margin-bottom:8px;font-size:15px}p{color:var(--muted);line-height:1.7}.eyebrow{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:800;display:block}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:11px;padding:0 17px;font-weight:750}.button-link{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.primary-button{color:#fff;background:var(--blue);box-shadow:0 8px 18px #0877b92e}.primary-button:hover{background:var(--blue-dark)}.secondary-button{color:var(--blue);background:#fff;border:1px solid #b8d9ea}.secondary-button:hover:not(:disabled){background:var(--blue-soft)}.secondary-button:disabled{color:#8da0ad;border-color:var(--border);cursor:not-allowed;background:#f4f7f8}.text-button{min-height:44px;color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0 8px;font-weight:700}.card,.stat-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:18px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.stat-card{padding:20px}.stat-card span,.stat-card small{color:var(--muted);display:block}.stat-card strong{margin:8px 0 5px;font-size:30px;display:block}.content-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);align-items:start;gap:20px;display:grid}.card{padding:22px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.section-heading h2{margin:0}.quiet-badge{color:var(--muted);background:#eef4f7}.patient-list{display:grid}.empty-state{text-align:center;padding:30px 12px}.empty-state p{margin:8px 0 0}.patient-row{border-top:1px solid var(--border);grid-template-columns:auto minmax(180px,1.3fr) minmax(120px,.7fr) auto auto;align-items:center;gap:14px;min-height:82px;padding:12px 4px;display:grid}.patient-row:hover{background:#f8fcfe}.patient-row strong,.patient-row small,.table-row strong,.table-row small{display:block}.patient-row small,.table-row small{color:var(--muted);margin-top:4px}.pet-avatar{border-radius:15px;place-items:center;width:46px;height:46px;font-weight:800;display:grid}.pet-avatar.cat{color:#0b6ca5;background:#dff2fc}.pet-avatar.dog{color:#a9681e;background:#fff0d9}.pet-avatar.large{border-radius:22px;width:76px;height:76px;font-size:25px}.status-chip.high{color:var(--red);background:var(--red-soft)}.status-chip.normal{color:var(--green);background:var(--green-soft)}.status-chip.pending{color:var(--orange);background:var(--orange-soft)}.chevron{color:var(--blue);font-size:26px}.boundary-card{background:linear-gradient(145deg,#fff 50%,#eff9f3)}.check-list{color:var(--muted);gap:11px;padding:0;list-style:none;display:grid}.check-list li:before{content:"✓";color:var(--green);margin-right:9px;font-weight:800}.ai-notice{color:#536d7c;background:#eef4f7;border-radius:11px;margin-top:16px;padding:12px 14px;font-size:12px;line-height:1.6}.drop-zone{background:#f8fcfe;border:1.5px dashed #9ec8dc;border-radius:14px;align-items:center;gap:16px;padding:18px;display:flex}.drop-zone p{margin:4px 0 0}.drop-zone .secondary-button{margin-left:auto}.file-button{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.file-button input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.file-icon,.setting-icon{color:#fff;background:var(--blue);border-radius:13px;flex:none;place-items:center;width:46px;height:46px;font-size:12px;font-weight:900;display:grid}.success-panel{color:#276b3f;background:var(--green-soft);border:1px solid #bae2c7;border-radius:12px;margin-top:14px;padding:15px}.success-panel code{color:var(--navy);white-space:pre-wrap;margin-top:8px;display:block}.success-panel p{margin:5px 0 0}.error-panel{color:var(--red);background:var(--red-soft);border:1px solid #f0c3c1;border-radius:12px;margin-top:14px;padding:15px}.error-panel p{color:var(--red);margin:5px 0 0}.breadcrumb{color:var(--muted);gap:8px;font-size:13px;display:flex}.breadcrumb a{color:var(--blue)}.patient-hero{align-items:center;gap:18px;display:flex}.patient-identity h1{margin:0 0 5px;font-size:30px}.patient-identity p{margin:0}.grant-summary{justify-items:end;gap:8px;margin-left:auto;display:grid}.grant-summary small{color:var(--muted)}.patient-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,.75fr)}.document-tabs{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.document-tab{text-align:left;min-width:210px;color:var(--navy);border:1px solid var(--border);cursor:pointer;background:#f8fcfe;border-radius:12px;padding:12px 14px}.document-tab.active{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px var(--blue)}.document-tab strong,.document-tab small{display:block}.document-tab small{color:var(--muted);margin-top:5px}.chart-wrap svg{width:100%;height:auto;display:block}.axis-label{fill:#718798;font:11px system-ui}.value-label{fill:#17324d;font:700 12px system-ui}.value-label.danger{fill:var(--red)}.chart-note{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.chart-note strong{color:var(--orange);margin-left:auto}.range-swatch{background:#d9f0df;border-radius:3px;width:20px;height:9px}.ai-card{border-color:#c9e3ee}.ai-card ul{color:var(--muted);padding-left:18px;line-height:1.8}.source-link{color:var(--blue);font-size:13px;font-weight:700;display:block}.observation-table,.audit-table{display:grid;overflow-x:auto}.table-row{border-top:1px solid var(--border);grid-template-columns:1fr 1.3fr 1.25fr 1.1fr .7fr;align-items:center;gap:12px;min-width:850px;padding:14px 8px;font-size:14px;display:grid}.table-head{min-height:42px;color:var(--muted);background:#f7fbfd;border-top:0;font-size:12px;font-weight:750}.metric-value{font-weight:750}.metric-value.high,.danger-text{color:var(--red)}.metric-value.low{color:var(--blue)}.metric-value.normal,.green-text{color:var(--green)}.doctor-note{justify-content:space-between;align-items:center;gap:22px;display:flex}.doctor-note p{margin-bottom:0}.audit-row{grid-template-columns:.8fr .7fr 1fr 1.4fr 1.2fr .6fr}.select-field{color:var(--muted);gap:6px;font-size:12px;font-weight:700;display:grid}.select-field select{min-height:44px;color:var(--navy);border:1px solid var(--border);background:#fff;border-radius:10px;padding:0 12px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.setting-card{grid-template-columns:auto 1fr auto;align-items:center;gap:16px;display:grid}.setting-card h2,.setting-card p{margin-bottom:6px}.auth-tabs{background:#edf5f8;border-radius:13px;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:26px;padding:5px;display:grid}.auth-tabs button{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:0 8px;font-weight:750}.auth-tabs button.active{color:var(--blue);background:#fff;box-shadow:0 3px 10px #1f495f1a}.verification-box{background:#f5fbfe;border:1px solid #c7e2ee;border-radius:13px;grid-template-columns:1fr auto;align-items:center;gap:10px;margin-top:16px;padding:13px 14px;display:grid}.verification-box strong,.verification-box small{display:block}.verification-box small{color:var(--muted);margin-top:4px}.verification-box .form-error{grid-column:1/-1;margin:0}.verification-step{margin-top:8px}.application-page{background:radial-gradient(circle at 10% 0, #def3fc 0, transparent 28%), var(--background);width:100%;max-width:none;min-height:100vh;padding:0}.application-wrap{width:min(1120px,100% - 32px);margin:0 auto;padding:28px 0 60px}.application-header{justify-content:space-between;align-items:center;min-height:72px;display:flex}.application-header>div{align-items:center;gap:8px;display:flex}.stepper{counter-reset:none;grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid}.stepper li{min-height:50px;color:var(--muted);border-bottom:3px solid var(--border);text-align:center;padding:14px 10px;font-size:13px;font-weight:750;position:relative}.stepper li.done{color:var(--green);border-color:var(--green)}.stepper li.active{color:var(--blue);border-color:var(--blue)}.choice-cards{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.choice-card{text-align:left;min-height:78px;color:var(--navy);border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:13px;padding:15px}.choice-card.active{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px var(--blue)}.choice-card strong,.choice-card small{display:block}.choice-card small{color:var(--muted);margin-top:6px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;display:grid}.form-field{margin-top:8px}.form-field.wide{grid-column:1/-1}.text-area{resize:vertical;width:100%;min-height:112px;color:var(--navy);border:1px solid var(--border);font:inherit;background:#fff;border-radius:11px;padding:12px 13px;line-height:1.6}.text-area:focus{border-color:var(--blue);outline:3px solid #0877b91f}.vet-list{gap:13px;margin-bottom:18px;display:grid}.vet-card,.credential-person{border:1px solid var(--border);background:#f8fcfe;border-radius:14px;padding:16px}.vet-card-head{justify-content:space-between;align-items:center;display:flex}.credential-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.credential-person{gap:10px;display:grid}.credential-upload{min-height:72px;color:var(--blue);cursor:pointer;background:#f6fbfe;border:1.5px dashed #99c7dc;border-radius:13px;align-items:center;padding:13px 15px;display:flex;position:relative}.credential-upload.complete{color:var(--green);background:var(--green-soft);border-color:#9bd1ae}.credential-upload span,.credential-upload strong,.credential-upload small{display:block}.credential-upload small{color:var(--muted);margin-top:5px}.credential-upload input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.member-list,.access-list,.device-list,.encounter-list{display:grid}.member-row,.access-row,.device-row,.encounter-row{border-top:1px solid var(--border);align-items:center;gap:14px;min-height:82px;padding:13px 5px;display:grid}.member-row{grid-template-columns:auto minmax(180px,1fr) auto auto}.access-row{grid-template-columns:auto minmax(200px,1fr) auto minmax(210px,auto)}.device-row{grid-template-columns:auto minmax(230px,1fr) auto auto}.encounter-row{grid-template-columns:auto minmax(220px,1fr) auto auto}.member-row strong,.member-row small,.access-row strong,.access-row small,.device-row strong,.device-row small,.encounter-row strong,.encounter-row small{display:block}.member-row small,.access-row small,.device-row small,.encounter-row small{color:var(--muted);margin-top:4px;line-height:1.5}.device-row.current{background:var(--blue-soft);border:1px solid #b9ddec;border-radius:12px;margin:5px 0;padding-inline:12px}.device-icon{width:46px;height:46px;color:var(--blue);background:var(--blue-soft);border-radius:13px;place-items:center;font-size:21px;display:grid}.file-icon.emergency{background:var(--red)}.inline-code{grid-template-columns:125px auto;gap:8px;display:grid}.search-grid{grid-template-columns:1fr 1.4fr auto;align-items:end;gap:13px;display:grid}.search-grid .field-label{margin:0}.reauth-card{background:linear-gradient(135deg,#fff 50%,#eff9f3);grid-template-columns:1fr minmax(280px,.7fr);align-items:center;gap:24px;display:grid}.reauth-card p{margin-bottom:0}.reauth-controls{gap:8px;display:grid}.reauth-controls small{color:var(--muted)}.upload-grid{grid-template-columns:1fr 1fr 1.4fr auto;align-items:end;gap:12px;display:grid}.upload-grid .field-label{margin:0}.upload-grid .credential-upload{min-height:48px;padding-block:8px}.medication-row{border:1px solid var(--border);background:#f8fcfe;border-radius:13px;grid-template-columns:repeat(4,minmax(110px,1fr));gap:6px 12px;margin-top:14px;padding:15px;display:grid}.action-bar{z-index:4;border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-radius:15px;justify-content:flex-end;gap:10px;padding:13px;display:flex;position:sticky;bottom:14px;box-shadow:0 12px 34px #1a415729}.version-row{border-top:1px solid var(--border);grid-template-columns:100px 1fr auto;gap:12px;padding:13px 5px;display:grid}.version-row small{color:var(--muted)}@media (max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid,.patient-grid{grid-template-columns:1fr}.patient-row{grid-template-columns:auto 1fr auto}.patient-row>:nth-child(3){display:none}.settings-grid{grid-template-columns:1fr}.upload-grid,.search-grid{grid-template-columns:1fr 1fr}.search-grid .primary-button{grid-column:1/-1}.medication-row{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media (max-width:900px){.app-frame{grid-template-columns:1fr}.sidebar{gap:12px;height:auto;padding:14px;position:static}.sidebar nav{display:flex;overflow-x:auto}.sidebar nav .nav-link{min-width:110px}.nav-link{justify-content:center;padding:0 8px;font-size:12px}.privacy-card,.nav-mark{display:none}.topbar{height:auto;padding:12px 16px}.topbar>div:first-child{display:none}.doctor-pill{margin-left:auto}main{padding:20px 14px}.page-title-row,.doctor-note{flex-direction:column;align-items:stretch}.stats-grid{grid-template-columns:1fr 1fr}.card{border-radius:15px;padding:16px}.patient-row{grid-template-columns:auto 1fr auto}.patient-row .status-chip{display:none}.drop-zone{flex-direction:column;align-items:stretch}.drop-zone .secondary-button{margin-left:0}.patient-hero{flex-wrap:wrap;align-items:flex-start}.grant-summary{justify-items:start;width:100%;margin-left:0}.settings-grid{grid-template-columns:1fr}.setting-card{grid-template-columns:auto 1fr}.setting-card .secondary-button{grid-column:1/-1}.application-header{align-items:flex-start;gap:12px}.stepper{overflow-x:auto}.stepper li{min-width:140px}.form-grid,.choice-cards,.credential-grid,.reauth-card,.upload-grid,.search-grid{grid-template-columns:1fr}.form-field.wide,.search-grid .primary-button{grid-column:auto}.member-row,.access-row,.device-row,.encounter-row{grid-template-columns:auto 1fr}.member-row>:nth-child(n+3),.access-row>:nth-child(n+3),.device-row>:nth-child(n+3),.encounter-row>:nth-child(n+3){grid-column:2}.inline-code{grid-template-columns:minmax(120px,1fr) auto;width:100%}.medication-row,.version-row{grid-template-columns:1fr}.action-bar{flex-direction:column}}@media (max-width:430px){.login-page{align-items:start;padding:10px}.login-card{margin-top:12px;padding:20px 16px}.auth-tabs{grid-template-columns:1fr}.application-wrap{width:min(100% - 20px,1120px)}.application-header{flex-direction:column}.application-header .login-brand{margin-bottom:0}.stats-grid{grid-template-columns:1fr}.topbar .doctor-pill small{display:none}.topbar .doctor-pill{border-left:0;width:100%;padding-left:0}}
