/* Patient Care — a quiet, precise workspace. All assets remain local. */
:root{--ink:#1d1d1f;--muted:#6e6e78;--line:#e8e8ed;--teal:#0071e3;--light:#eef5ff;--paper:#fff;--bg:#f5f5f7;--red:#d33b32;--amber:#a46b12;--radius:22px;--shadow:0 3px 16px #1d1d1f04,0 14px 40px #1d1d1f03;--ease:cubic-bezier(.22,.68,0,1.02)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.65 -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#cce3ff;color:#12345c}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:3px;-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #0071e355}
button{display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;border:1px solid #dedee3;background:#fff;color:var(--ink);border-radius:980px;padding:10px 19px;line-height:1.45;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}button:hover{background:#f5f5f7;border-color:#c9c9d0}button:active{transform:scale(.98)}button:disabled{opacity:.5;cursor:wait}button .ui-icon{width:17px;height:17px}a{color:var(--teal);text-decoration:none;transition:color .18s}a:hover{color:#004f9f}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.3;letter-spacing:-.6px}h1{font-size:38px;font-weight:650;letter-spacing:-1.5px;margin-bottom:10px}h2{font-size:21px;font-weight:650}h3{font-size:16px;font-weight:600}small{font-size:12px}label{display:block;color:#515159;font-size:13px;font-weight:500}
input,select,textarea{display:block;width:100%;min-width:0;margin:7px 0 20px;border:1px solid #dcdce2;border-radius:12px;padding:12px 14px;color:var(--ink);background:#fff;font-size:14px;transition:border-color .2s,box-shadow .2s}input::placeholder,textarea::placeholder{color:#a0a0a8}input:hover,select:hover,textarea:hover{border-color:#b9b9c1}input:focus,select:focus,textarea:focus{border-color:#0071e3;box-shadow:0 0 0 4px #0071e312;outline:none}input[readonly]{background:#f5f7fa;color:#515b6e}input[type=checkbox]{display:inline-block;width:17px;height:17px;margin:0;accent-color:var(--teal);box-shadow:none;flex-shrink:0}input[type=file]{padding:10px;background:#f8f9fc;font-size:13px}input[type=file]::file-selector-button{border:0;border-radius:7px;background:#e8eef8;color:#335c96;padding:7px 12px;margin-right:12px;font:inherit;cursor:pointer}textarea{resize:vertical;min-height:106px;line-height:1.9}.hidden{display:none!important}.primary{background:#0071e3;border-color:#0071e3;color:#fff;box-shadow:0 3px 8px #0071e31a}.primary:hover{background:#0077ed;border-color:#0077ed;color:#fff;box-shadow:0 5px 16px #0071e326}.muted{color:var(--muted)}.error{color:var(--red);font-size:13px}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:600;color:#6d83a4;margin-bottom:14px}.ui-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:middle}
.brand-mark{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#3597ff,#0066d5);color:white;border-radius:11px;box-shadow:0 3px 10px #0071e327;flex-shrink:0}.brand-mark svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.shell{display:flex;flex-direction:column;min-height:100vh}.sidebar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:28px;width:100%;height:78px;padding:0 max(36px,calc((100vw - 1400px)/2));background:#fbfbfddc;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border-bottom:1px solid #d8d8df80}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;color:var(--ink);font-size:18px;letter-spacing:-.4px;font-weight:650;line-height:1.35}.brand:hover{color:var(--ink)}.brand small{display:block;font-size:8px;letter-spacing:1.8px;font-weight:500;color:#8b8b94;margin-top:3px}.nav-label,.side-bottom{display:none}nav{display:flex;align-items:center;gap:4px;flex-shrink:0}nav a{position:relative;display:flex;align-items:center;gap:8px;white-space:nowrap;padding:10px 15px;border-radius:980px;color:#66666e;font-size:13px;transition:background .2s,color .2s}nav a .ui-icon{width:17px;height:17px}nav a:hover{background:#e9e9ed80;color:var(--ink)}nav a.active{background:#1d1d1f;color:#fff;box-shadow:0 2px 5px #00000012}nav i{font-style:normal;display:inline-flex;align-items:center;justify-content:center;border-radius:20px;min-width:19px;height:19px;padding:0 5px;font-size:10px;background:#e8f1ff;color:#0071e3;font-weight:600}nav i:empty{display:none}nav a.active i{background:#ffffff24;color:white}.workspace-label{font-size:11px;color:#909099;white-space:nowrap;display:flex;align-items:center;gap:7px}.status-dot{display:inline-block;height:5px;width:5px;border-radius:50%;background:#34a96b;box-shadow:0 0 0 3px #34a96b10}.workspace{width:100%;margin:0}
header{height:64px;max-width:1400px;margin:auto;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#8b8b94;font-size:11px}.breadcrumb-wrap,.header-right{display:flex;align-items:center;gap:16px}.breadcrumb-home{color:#9999a2}.breadcrumb-separator{color:#c1c1c8}#breadcrumb{color:#585860}.header-right{gap:14px;white-space:nowrap}#today{font-variant-numeric:tabular-nums;letter-spacing:.5px}.divider{height:13px;width:1px;background:#dcdce3}.user-chip{display:flex;align-items:center;gap:7px;color:#51515a}.user-avatar{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#e9e9ef;color:#777784}.user-avatar svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.text-button{background:transparent;border:0;padding:5px 2px;color:#888891;border-radius:5px;font-size:11px}.text-button:hover{background:transparent;color:var(--teal)}main{max-width:1400px;margin:0 auto;padding:28px 40px 58px;min-height:calc(100vh - 204px)}main>.page-heading,main>.dashboard-hero,main>.cards,main>.panel,main>.split,main>.tabs{animation:arrive .4s var(--ease) both}footer{max-width:1400px;margin:0 auto;padding:23px 40px 26px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#96969f;border-top:1px solid #dedee580;font-size:10px}.footer-brand{color:#777780;font-weight:500}.footer-divider{margin:0 10px;color:#babac2}.footer-time{margin-left:20px;color:#a6a6ae}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:7px 0 32px}.page-heading p{font-size:13px;line-height:1.8;margin:0;color:var(--muted)}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.actions>.primary{padding-left:22px;padding-right:22px}
.dashboard-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:214px;padding:12px 0 37px;margin-bottom:10px}.dashboard-hero:before{content:"";position:absolute;right:30px;top:-65px;width:400px;height:290px;background:radial-gradient(ellipse,#e0ecff8c,transparent 68%);pointer-events:none;z-index:-1}.dashboard-hero .eyebrow{font-size:10px;color:#868690;letter-spacing:1.6px;margin-bottom:14px}.dashboard-hero h1{font-size:49px;line-height:1.22;letter-spacing:-2.8px;font-weight:650;margin-bottom:16px}.hero-gradient{background:linear-gradient(105deg,#0068ce 10%,#6d63c5 95%);color:transparent;background-clip:text;-webkit-background-clip:text}.dashboard-hero p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.hero-actions{display:flex;align-items:center;gap:12px;margin-top:26px}.hero-actions button,.hero-actions a{padding:11px 22px;border-radius:980px;font-size:13px}.hero-actions>a{display:flex;align-items:center;gap:7px;color:#5b5b66}.hero-actions .ui-icon{width:16px;height:16px}.hero-date{position:relative;display:flex;align-items:center;gap:26px;padding:27px 33px;min-width:270px;border:1px solid #ffffffc9;border-radius:26px;background:linear-gradient(130deg,#ffffffd9,#edf3fbc9);box-shadow:0 20px 70px #3454880c,0 2px 5px #ffffff9c inset;backdrop-filter:blur(10px)}.hero-date-icon{width:68px;height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;box-shadow:0 6px 20px #2c487012;border:1px solid #edf0f5;border-radius:16px;line-height:1.15;transform:rotate(-5deg)}.hero-date-icon small{font-size:9px;letter-spacing:2px;color:#e25d61;margin-bottom:5px}.hero-date-icon strong{font-size:31px;font-weight:600;letter-spacing:-1px}.hero-date-copy>span{display:block;font-size:11px;color:#90909b;letter-spacing:.8px;margin-bottom:7px}.hero-date-copy>b{display:block;font-size:18px;font-weight:550;letter-spacing:-.4px}.hero-date-copy>small{display:block;font-size:11px;color:#90909b;margin-top:5px}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:30px}.card{position:relative;padding:26px 27px 23px;background:#fff;border:1px solid #e8e8ed99;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #273b5b0a}.stat-label{font-size:12px;font-weight:500;color:#73737e}.stat-number{font-size:40px;font-weight:550;letter-spacing:-1.8px;font-variant-numeric:tabular-nums;line-height:1.2;margin:16px 0 8px}.stat-number small{font-size:12px;letter-spacing:0;color:#aaaab2;margin-left:5px;font-weight:400}.stat-note{font-size:11px;color:#797986}.stat-icon{float:right;display:flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:11px;background:#f1f5fb;color:#688ab6;margin-top:-3px}.stat-icon .ui-icon{width:17px;height:17px}.card:nth-child(2) .stat-icon{background:#edf6f3;color:#479a81}.card:nth-child(3) .stat-icon{background:#fff2ef;color:#d88e78}.card:nth-child(4) .stat-icon{background:#f1effb;color:#9987c7}.red{color:var(--red)}.amber{color:var(--amber)}
.split{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.panel{background:#fff;border:1px solid #e6e6ecb3;border-radius:var(--radius);margin-bottom:24px;overflow:hidden;box-shadow:var(--shadow)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px 26px;border-bottom:1px solid #ededf2}.panel-head h2{font-size:16px;letter-spacing:-.3px;margin:0;font-weight:600}.panel-head small{color:var(--muted);font-size:11px}.panel-body{padding:26px}.notice{display:block;padding:16px 21px;background:#edf4fd;border:1px solid #e1ebf8;color:#6d8099;border-radius:15px;line-height:1.85;font-size:12px;margin-bottom:24px}.notice.warn{background:#fcf8ef;border-color:#f2ead7;color:#9c8556}.empty{text-align:center;padding:48px 24px 52px;color:#7c7c88}.empty-icon{width:58px;height:58px;border-radius:19px;background:#f4f6fa;margin:0 auto 17px;display:flex;align-items:center;justify-content:center;color:#a5b3c8}.empty-icon .ui-icon{width:25px;height:25px;stroke-width:1.3}.empty h3{font-size:15px;color:#73737f;letter-spacing:0;margin-bottom:7px;font-weight:500}.empty p{font-size:12px;line-height:1.8;margin-bottom:20px}.empty button{font-size:12px}
table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th{padding:16px 24px;background:#fafafc;border-bottom:1px solid #eaeaf0;white-space:nowrap;font-weight:500;font-size:11px;color:#73737d;letter-spacing:.15px}td{padding:20px 24px;border-bottom:1px solid #f0f0f4;vertical-align:middle;line-height:1.65}tr:last-child td{border-bottom:0}tbody tr{transition:background .15s}tbody tr:hover{background:#fafbfe}td small{display:block;font-size:10px;color:#80808b;margin-top:4px;font-variant-numeric:tabular-nums}.table-scroll{overflow:auto;scrollbar-width:thin;scrollbar-color:#d4d9e1 transparent}.tag{display:inline-flex;align-items:center;white-space:nowrap;padding:4px 10px;border-radius:980px;font-size:10px;font-weight:500;background:#eef4fd;color:#6287ba;line-height:1.6}.tag.overdue{color:#c05d53;background:#fdf0ee}.tag.today{color:#aa843d;background:#fcf6e8}.tag.neutral{color:#8c8c99;background:#f2f2f6}.row-title{font-weight:550;color:#303039;letter-spacing:.1px}.row-title:hover{color:var(--teal)}.subtle{font-size:11px;color:#797986}.quick-link{display:flex;align-items:center;gap:13px;border-bottom:1px solid #f0f0f5;padding:18px 0;color:#454551}.quick-link:first-child{padding-top:0}.quick-link:last-child{border:0;padding-bottom:0}.quick-icon{width:39px;height:39px;border-radius:13px;background:#f1f5fb;color:#7696c0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.quick-icon .ui-icon{width:19px;height:19px}.quick-link b{font-size:13px;font-weight:550}.quick-link small{display:block;font-size:10px;color:#a0a0ab;margin-top:3px}.workflow{font-size:12px;color:#8d8d99;line-height:2.45;margin:0}.toolbar{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-bottom:23px}.toolbar input,.toolbar select{margin:0;width:auto;background:#fff;box-shadow:0 2px 8px #00000002}.toolbar input{flex:1;max-width:430px;min-width:210px;border-color:#e1e1e8;border-radius:980px;padding:13px 20px;font-size:13px}.toolbar select{min-width:130px;font-size:12px;padding:11px 15px;border-radius:12px}.toolbar>button{font-size:12px;min-height:44px}.count-label{margin-left:auto;font-size:11px;color:#7c7c88;white-space:nowrap}
.patient-banner{display:flex;align-items:center;gap:20px}.avatar{display:flex;align-items:center;justify-content:center;width:70px;height:70px;flex-shrink:0;border-radius:23px;background:linear-gradient(145deg,#dceaff,#eef0fc);color:#4c79b2;font-size:28px;letter-spacing:0;font-weight:500;box-shadow:0 2px 5px #6e8fb50a inset}.patient-meta{font-size:11px;color:#92929c;font-weight:400;letter-spacing:0;line-height:1.8;margin-top:8px}.tabs{display:flex;gap:5px;align-items:center;border:1px solid #e7e7ed;border-radius:980px;padding:5px;background:#eaeaee70;width:fit-content;max-width:100%;overflow:auto;margin:0 0 28px;scrollbar-width:none}.tabs button{padding:10px 20px;font-size:12px;color:#8b8b96;white-space:nowrap;border:0;background:transparent;box-shadow:none}.tabs button:hover{color:#51515e;background:#ffffff60}.tabs button.active{background:#fff;color:#30303c;box-shadow:0 2px 6px #1b294110}.details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 32px}.detail-label{font-size:11px;color:#7c7c88;margin-bottom:7px}.details-grid .pre{font-size:13px;color:#51515d}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.timeline{padding:5px 28px}.event{position:relative;padding:28px 0;border-bottom:1px solid #eeeef3}.event:last-child{border:0}.event-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:15px}.event-head time{font-size:13px;font-weight:600;color:#353545;font-variant-numeric:tabular-nums;letter-spacing:.2px}.event-head>.subtle{font-size:10px;color:#8a8a96}.event-field{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;margin:11px 0;font-size:13px}.event-field>span:first-child{font-size:11px;color:#777783;line-height:1.9}.event-content{font-size:13px;line-height:1.95;color:#535361;white-space:pre-wrap;overflow-wrap:anywhere}.back{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#9999a5;margin-bottom:25px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.full{grid-column:1/-1}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid #ededf3;padding-top:20px;margin-top:18px}.form-actions button{min-width:86px}
dialog{border:1px solid #ffffffcc;border-radius:25px;padding:0;width:min(800px,94vw);max-height:90vh;color:var(--ink);background:#fff;box-shadow:0 35px 100px #15243e29,0 4px 20px #0000000d;scrollbar-width:thin;scrollbar-color:#d9dee6 transparent}dialog[open]{animation:dialogIn .25s var(--ease)}dialog::backdrop{background:#16213945;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:24px 30px;border-bottom:1px solid #ececf2;position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(15px);z-index:2}.dialog-head h2{font-size:20px;margin:0;letter-spacing:-.6px}.icon-button{width:30px;height:30px;border:0;background:#f0f0f5;border-radius:50%;padding:6px;color:#91919d}.icon-button:hover{background:#e7e7ee}.icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}#modal-body{padding:29px 30px 27px}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:1600;max-width:90vw;padding:12px 24px;border:1px solid #ffffff1f;border-radius:980px;background:#24242ce8;backdrop-filter:blur(16px);color:#fff;font-size:12px;box-shadow:0 10px 30px #00000018}
.auth{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fafafb;padding:22px;gap:22px}.auth-story{position:relative;min-height:calc(100vh - 44px);border-radius:28px;padding:42px 48px 34px;overflow:hidden;color:white;background:radial-gradient(ellipse at 85% 85%,#274b92 0,transparent 48%),radial-gradient(ellipse at 10% 100%,#39324e,transparent 55%),#15171e}.auth-story:after{content:"";position:absolute;width:500px;height:500px;bottom:-390px;left:-80px;border-radius:50%;background:#537bb6;filter:blur(100px);opacity:.6;pointer-events:none}.auth-brand{position:relative;z-index:2;display:flex;align-items:center;gap:11px;color:#fff;font-size:17px;font-weight:550}.auth-brand:hover{color:white}.brand-caption{color:#777f91;font-size:8px;letter-spacing:1.5px;font-weight:400;border-left:1px solid #ffffff25;padding-left:13px;margin-left:3px}.auth-story-copy{position:relative;z-index:2;padding-top:14vh}.auth-story-copy .eyebrow{font-size:10px;color:#9caccc;letter-spacing:2.5px}.auth-story-copy h2{font-size:clamp(32px,3.6vw,55px);letter-spacing:-2px;line-height:1.35;font-weight:550;margin-bottom:24px;color:#f4f6fb}.auth-story-copy>p:last-child{font-size:13px;line-height:2;color:#8794af}.auth-story-foot{position:absolute;z-index:2;bottom:22px;left:48px;color:#737f9a;letter-spacing:4px;font-size:10px}.care-orbit{position:absolute;width:340px;height:340px;right:-30px;bottom:-15px;pointer-events:none;opacity:.9}.orbit{position:absolute;inset:25px;border:1px solid #92b4f226;border-radius:50%}.orbit-two{inset:65px;border-color:#b1c9ff27}.orbit-core{position:absolute;inset:106px;display:flex;align-items:center;justify-content:center;border-radius:36px;background:linear-gradient(135deg,#b3d2ff20,#a7c8ff04);border:1px solid #aacaff26;box-shadow:0 5px 35px #9dc6ff0d inset;transform:rotate(-12deg);backdrop-filter:blur(15px)}.orbit-core svg{width:100px;fill:none;stroke:#b2d1ff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.orbit-dot{position:absolute;left:46px;top:77px;width:9px;height:9px;border-radius:50%;background:#bad9ff;box-shadow:0 0 20px #82bcff}.auth-entry{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:50px 30px}.auth-panel{width:min(100%,365px)}.auth-symbol{display:flex;align-items:center;justify-content:center;width:49px;height:49px;border-radius:17px;background:linear-gradient(145deg,#e6efff,#eff0fa);color:#7394c2;margin-bottom:28px;box-shadow:0 3px 8px #e1e6ee40}.auth-symbol svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.auth-panel .eyebrow{font-size:8px;letter-spacing:2px;color:#a3a3af;margin-bottom:12px}.auth-panel h1{font-size:36px;font-weight:600;letter-spacing:-1.4px;margin-bottom:9px}.auth-panel .muted{font-size:12px;line-height:1.85;margin-bottom:32px}.auth-panel label{font-size:12px;color:#7c7c89}.auth-panel input{background:#fff;border-color:#dfdfe7;padding:13px 15px;margin-bottom:21px;border-radius:12px}.auth-panel button{width:100%;padding:13px;margin:9px 0 25px;border-radius:12px;font-size:13px}.auth-panel small{display:block;text-align:center;color:#b3b3bd;font-size:10px;letter-spacing:.3px}.auth-entry-foot{position:absolute;bottom:16px;font-size:10px;color:#b3b3bf;letter-spacing:1px}
.upload-area{position:relative;text-align:center;padding:38px 30px;border:1px dashed #cdd9eb;border-radius:19px;background:linear-gradient(130deg,#fafcff,#f4f7fc)}.upload-area:before{content:"↑";width:49px;height:49px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;font:300 30px/1 "Segoe UI",sans-serif;border:1px solid #dce5f1;border-radius:16px;color:#88a5ce;background:#fff;box-shadow:0 5px 15px #adc2e211}.upload-area h3{margin-bottom:8px;font-weight:550}.upload-area p{font-size:12px;color:#9696a2}.upload-area input{margin:23px auto 16px;max-width:450px;background:#ffffffa6;border-color:#dce4ef}.import-row{border:1px solid #e7e9f0;background:#fbfcff;border-radius:15px;padding:21px;margin-bottom:17px}.import-row textarea{margin-bottom:5px;background:#fff;min-height:96px;font-size:12px}.import-row .grid-2{grid-template-columns:190px 190px;gap:20px}.import-row .grid-2 label{font-size:11px}.import-row .actions{margin-bottom:11px}.check-label{display:flex;align-items:center;gap:10px;margin:10px 0;font-size:12px;color:#81818e}.sticky-action{position:sticky;bottom:16px;z-index:5;background:#fffffff2;backdrop-filter:blur(18px);border:1px solid #dedee6;border-radius:18px;box-shadow:0 8px 30px #293d5910;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.sticky-action #draft-status{display:block;font-size:10px;color:#a3a3af}.sticky-action .actions{justify-content:flex-end}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.link-button{border:0;background:transparent;color:var(--teal);font-size:11px;padding:3px 2px;box-shadow:none}.link-button:hover{background:transparent;color:#005dbb}.small-button{padding:7px 14px;font-size:11px}.field-help{font-size:11px;font-weight:400;line-height:1.8;color:#777783;margin-top:-4px;margin-bottom:19px}.number-note{font-size:11px;color:#a0a0ac;margin-top:12px}.section-title{font-size:11px;font-weight:600;color:#7394bc;border-bottom:1px solid #eceef4;padding-bottom:11px;margin:16px 0 18px}.status-line{font-size:11px;color:var(--muted)}.source-details summary{padding:19px 26px;color:#7c91b0;font-size:12px;cursor:pointer}.source-scroll{max-height:440px}.source-scroll td{vertical-align:top}.source-scroll small{font-size:9px;color:#a3a3af}.source-scroll .pre{font-size:12px;line-height:1.85}.first-import{display:flex;align-items:center;justify-content:space-between;gap:20px}.first-import a{white-space:nowrap;font-weight:500}.download-button{display:inline-flex;align-items:center;border-radius:980px;padding:11px 19px;font-size:12px}.required-marker{color:#cc6159;margin-left:2px}.compact-field textarea{height:47px;min-height:47px;margin-top:7px;padding-top:10px;padding-bottom:10px}
.lab-images{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin:20px 0 5px}.lab-thumb{display:block;padding:9px;border-radius:14px;text-align:left;overflow:hidden;border-color:#e6e9f0}.lab-thumb:hover{background:#fafcff;border-color:#b5cee9;transform:translateY(-2px)}.lab-thumb img{display:block;width:100%;height:150px;object-fit:contain;border-radius:7px;background:#f6f8fb}.lab-thumb span{display:block;font-size:10px;color:#9a9aa7;overflow-wrap:anywhere;margin:9px 3px 2px}.lab-full{display:block;max-width:100%;height:auto;margin:auto;border-radius:8px}#record-fields textarea{width:100%}.import-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.import-image-card{padding:17px;border:1px solid #e4e9f2;border-radius:17px;background:#fafcff}.import-image-card p{font-size:12px;overflow-wrap:anywhere;margin:12px 0 4px}.import-image-card small{color:#a0a0af;font-size:10px}.import-image-preview{display:block;width:100%;height:180px;padding:9px;background:#fff;border-radius:11px}.import-image-preview img{width:100%;height:100%;object-fit:contain}.import-image-card label{margin-top:16px;font-size:11px}
.patient-name-cell{display:flex;align-items:center;gap:12px}.patient-grade{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:45px;min-width:45px;height:31px;margin:0;padding:6px;background:#fff;border:1px solid #e0e1e8;border-radius:8px;cursor:pointer;box-shadow:0 1px 3px #273b4e03;vertical-align:middle}.grade-swatch{display:block;flex-shrink:0;width:14px;height:14px;border-radius:0}.swatch-empty{background:transparent}.swatch-green{background:#229b49}.swatch-blue{background:#2472d4}.swatch-red{background:#df353b}.swatch-black{background:#222}.grade-arrow{width:9px;height:9px;fill:none;stroke:#9b9ba5;stroke-width:1.5}.patient-grade:disabled{opacity:.65;cursor:default}.grade-menu{position:fixed;z-index:1500;display:flex;flex-direction:column;gap:3px;padding:7px;background:#fffffff2;backdrop-filter:blur(20px);border:1px solid #e1e3eb;border-radius:12px;box-shadow:0 12px 35px #1c2e501a,0 2px 7px #00000006}.grade-option{display:flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;margin:0;padding:8px;border:1px solid transparent;border-radius:6px;background:transparent}.grade-option:hover,.grade-option:focus-visible{background:#eff4fd;border-color:#d4e1f5}.grade-option[aria-selected=true]{border-color:#aacbef;background:#edf4ff}.grade-clear{margin-top:5px;border-top-color:#e3e6ee}.grade-clear svg{width:17px;height:17px;fill:none;stroke:#9494a1;stroke-width:1.4}.patients-table .grade-column{width:90px;min-width:90px;padding-right:12px}.patients-table .patient-name-column{min-width:150px}.grade-filter{color:#9a9aa6;background:transparent;border-color:transparent;box-shadow:none}.grade-filter>svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}.grade-filter.is-filtered{color:#0071e3;border-color:#c5dbf7;background:#eff5ff;gap:3px}.grade-filter .grade-swatch{width:7px;height:7px}.grade-filter-menu .grade-option{width:130px;justify-content:flex-start;gap:12px;padding:8px 12px;white-space:nowrap;font-size:12px;font-weight:400}.grade-filter-status{white-space:nowrap;font-size:12px;color:#6c91c0}
@keyframes arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes dialogIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1600px){.sidebar{padding-left:calc((100vw - 1320px)/2);padding-right:calc((100vw - 1320px)/2)}main{padding-top:38px}.dashboard-hero{min-height:245px}.dashboard-hero h1{font-size:54px}.cards{gap:23px}.card{padding:29px 30px 26px}}
@media(max-width:1150px){.sidebar{padding:0 24px;gap:16px}.workspace-label{display:none}nav a{padding:10px 13px;font-size:12px}nav a .ui-icon{width:16px;height:16px}header{padding:0 28px}main{padding:24px 28px 44px}footer{padding-left:28px;padding-right:28px}.split{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.card{padding:22px}.dashboard-hero h1{font-size:44px}.hero-date{padding:23px;min-width:245px}.cards{gap:14px}.panel-head{padding:21px 23px}.panel-body{padding:23px}}
@media(max-width:900px){.sidebar{height:auto;min-height:76px;flex-wrap:wrap;justify-content:center;gap:10px 24px;padding:17px 22px 13px}.brand{font-size:16px}.brand small{display:none}.brand-mark{width:30px;height:30px;border-radius:9px}nav{gap:2px}nav a{padding:8px 11px;font-size:11px;gap:6px}nav a .ui-icon{width:15px;height:15px}.split{grid-template-columns:1fr}.split>aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid{grid-template-columns:1fr}.dashboard-hero h1{font-size:40px}.hero-date{min-width:210px;gap:18px;padding:20px}.hero-date-icon{width:58px;height:66px}.hero-date-copy>b{font-size:16px}.stat-number{font-size:34px}.card{padding:21px 19px}.stat-icon{width:28px;height:28px}.stat-label{font-size:11px}.stat-note{font-size:10px}.header-right{gap:11px}.footer-time{display:none}.auth-story{padding:34px 30px}.auth-story-copy{padding-top:16vh}.auth-story-copy h2{font-size:35px}.auth-story-foot{left:30px}.care-orbit{right:-110px;bottom:15px;width:300px;height:300px}.auth-entry{padding:45px 22px}.brand-caption{display:none}}
@media(max-width:720px){html{scroll-padding-top:145px}.sidebar{display:block;padding:13px 17px 10px}.brand{font-size:15px;margin-bottom:12px;width:fit-content}.brand-mark{width:26px;height:26px;border-radius:8px}.brand-mark svg{width:19px;height:19px}nav{overflow:auto;justify-content:space-between;scrollbar-width:none;gap:3px}nav a{padding:8px 11px;font-size:10px;gap:5px}nav a .ui-icon{display:none}nav i{min-width:16px;height:16px;font-size:9px}header{height:52px;padding:0 19px;gap:10px}.breadcrumb-home,.breadcrumb-separator,#today,.divider{display:none}.header-right{gap:9px;font-size:10px}.user-avatar{width:20px;height:20px}.text-button{font-size:10px}#breadcrumb{font-size:10px}main{padding:22px 18px 35px;min-height:calc(100vh - 212px)}h1{font-size:29px;letter-spacing:-1px}.page-heading{gap:15px;margin:4px 0 25px;align-items:flex-start}.page-heading p{font-size:11px}.page-heading .actions{gap:7px}.page-heading .actions>button{font-size:11px;padding:9px 13px}.dashboard-hero{min-height:0;padding:10px 0 25px;gap:20px}.dashboard-hero h1{font-size:36px;letter-spacing:-1.7px;line-height:1.28}.dashboard-hero .eyebrow{font-size:8px;letter-spacing:1px}.dashboard-hero p{font-size:12px}.hero-date{display:none}.hero-actions{margin-top:21px;gap:7px}.hero-actions button,.hero-actions a{padding:10px 16px;font-size:12px}.cards{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:21px}.card{padding:20px;border-radius:18px}.stat-label{font-size:11px}.stat-number{font-size:34px;margin:13px 0 7px}.stat-note{font-size:10px}.split>aside{display:block}.split{gap:0}.panel{border-radius:18px;margin-bottom:20px}.panel-head{padding:20px}.panel-head h2{font-size:14px}.panel-body{padding:20px}.notice{font-size:11px;padding:14px 16px;border-radius:13px;margin-bottom:20px}.toolbar{gap:9px;margin-bottom:17px}.toolbar input{min-width:160px;font-size:12px;max-width:none;padding:11px 15px}.toolbar>button{min-height:40px;padding:10px 16px}.toolbar select{min-width:100px;font-size:11px;padding:10px}.count-label{font-size:10px}.patients-table .grade-column{min-width:73px;width:73px;padding-right:9px}.patients-table .patient-name-column{min-width:135px}td,th{padding:16px;font-size:12px}th{font-size:10px}td small{font-size:9px}.patient-grade{width:39px;min-width:39px;height:29px;border-radius:7px;padding:5px;gap:5px}.grade-swatch{width:12px;height:12px}.row-title{font-size:12px}.back{font-size:10px;margin-bottom:19px}.patient-banner{gap:13px}.avatar{width:49px;height:49px;border-radius:17px;font-size:23px}.patient-name-cell{gap:10px}.patient-name-cell>span{font-size:25px}.patient-meta{font-size:10px;margin-top:7px;max-width:310px}.page-heading:has(.patient-banner){flex-wrap:wrap;align-items:center}.tabs{gap:2px;padding:4px;margin-bottom:20px}.tabs button{padding:9px 12px;font-size:10px}.details-grid{grid-template-columns:1fr 1fr;gap:20px}.detail-label{font-size:10px}.details-grid .pre{font-size:12px}.timeline{padding:3px 20px}.event{padding:22px 0}.event-head{gap:9px;margin-bottom:13px}.event-head>.subtle{width:100%;font-size:9px}.event-head time{font-size:12px}.event-field{grid-template-columns:75px minmax(0,1fr);gap:11px;font-size:12px}.event-field>span:first-child{font-size:10px}.event-content{font-size:12px;line-height:1.95}.grid-2{grid-template-columns:1fr;gap:0}.full{grid-column:auto}input,select,textarea{font-size:13px;padding:11px 13px;border-radius:10px}label{font-size:12px}.dialog-head{padding:21px 22px}.dialog-head h2{font-size:18px}dialog{border-radius:22px;width:94vw;max-height:91vh}#modal-body{padding:23px 22px}.form-actions button{font-size:12px;min-width:75px}.field-help{font-size:10px;line-height:1.8}.import-row{padding:16px}.import-row .grid-2{grid-template-columns:1fr 1fr;gap:13px}.import-row .actions{align-items:flex-start}.sticky-action{bottom:9px;padding:15px 18px;flex-direction:column;align-items:stretch;gap:8px;border-radius:16px}.sticky-action .actions{justify-content:flex-end}.check-label{font-size:11px;margin:5px 0}.upload-area{padding:27px 17px}.upload-area p{font-size:11px}.source-details summary{padding:17px 20px;font-size:11px}.first-import{align-items:flex-start;gap:14px}.first-import a{font-size:11px}.auth{display:block;padding:0;background:#fafafb}.auth-story{min-height:260px;border-radius:0;padding:26px 27px 30px}.auth-brand{font-size:14px}.auth-story-copy{padding-top:28px}.auth-story-copy .eyebrow{font-size:8px;margin-bottom:10px}.auth-story-copy h2{font-size:28px;letter-spacing:-1px;margin-bottom:0}.auth-story-copy>p:last-child,.auth-story-foot{display:none}.care-orbit{width:260px;height:260px;right:-66px;bottom:-65px}.orbit-core{inset:87px;border-radius:26px}.orbit-core svg{width:75px}.auth-entry{padding:36px 28px 64px}.auth-panel{width:min(100%,370px)}.auth-symbol{display:none}.auth-panel h1{font-size:29px}.auth-panel .muted{margin-bottom:25px}.auth-entry-foot{bottom:15px;font-size:9px}footer{padding:20px 19px;font-size:9px}.footer-brand{font-size:9px}.footer-divider{margin:0 6px}footer>span:last-child{display:none}.grade-filter-menu .grade-option{font-size:12px}.grade-filter-status{font-size:11px}.toast{font-size:11px;bottom:21px;padding:11px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.page-heading .page-kicker{font-size:9px;line-height:1.5;letter-spacing:1.9px;font-weight:500;color:#a0a0ab;margin:0 0 10px}.hero-dot{margin:0 11px;color:#b5b5bf}.settings-grid .panel{height:fit-content}
.compact-field textarea{height:50px;min-height:50px;line-height:24px;padding-top:12px;padding-bottom:12px}
.card-link{display:block;color:var(--ink);text-decoration:none;cursor:pointer}.card-link:hover{color:var(--ink);border-color:#bfd4ef}.card-link:focus-visible{outline:3px solid #0071e380;outline-offset:4px;box-shadow:0 10px 30px #0071e314}.card-link .stat-note:after{content:' ↗';opacity:0;transition:opacity .2s}.card-link:hover .stat-note:after,.card-link:focus-visible .stat-note:after{opacity:1}

.patients-table .patient-updated{white-space:nowrap;font-variant-numeric:tabular-nums}

.patients-table{min-width:1120px}.patients-table th,.patients-table td{padding:22px 16px}.patients-table .grade-column{width:76px;min-width:76px;padding-left:24px;padding-right:8px}.patients-table .patient-name-column{min-width:170px}.patients-table .patient-sex,.patients-table .patient-age,.patients-table .patient-region,.patients-table .patient-date,.patients-table .patient-review{white-space:nowrap}.patients-table .patient-region{min-width:112px}.patients-table .patient-age{font-variant-numeric:tabular-nums}
@media(max-width:720px){.patients-table th,.patients-table td{padding:17px 14px}.patients-table .grade-column{padding-left:18px;min-width:68px;width:68px}.patients-table .patient-name-column{min-width:150px}}

.breadcrumb-home:hover{color:var(--blue,#0071e3);text-decoration:underline;text-underline-offset:4px}.breadcrumb-home:focus-visible{outline:2px solid #0071e3;outline-offset:5px;border-radius:3px}

.timeline-toolbar{display:flex;flex-direction:column;gap:14px;margin-bottom:22px}.event-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.event-filter-button{padding:11px 17px;border:1px solid #e1e3eb;border-radius:12px;background:#fff;color:#666670;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 2px 4px #1d1d1f02}.event-filter-button:hover{background:#edf4ff;border-color:#bfd8f8;color:#0071e3}.event-filter-button.active{background:#0071e3;border-color:#0071e3;color:white;box-shadow:0 3px 9px #0071e320}.event-filter-button:focus-visible{outline:3px solid #0071e355;outline-offset:3px}.timeline-filter-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-height:25px}.timeline-filter-meta .count-label{margin-left:auto}.timeline-filter-meta .small-button{padding:8px 14px}
@media(max-width:720px){.timeline-toolbar{gap:12px;margin-bottom:18px}.event-filters{gap:7px}.event-filter-button{font-size:11px;padding:10px 12px;border-radius:10px}.timeline-filter-meta{gap:9px}.timeline-filter-meta>.subtle{font-size:10px}}

.patients-table thead th{vertical-align:top}.patient-date-controls{display:flex;gap:6px;margin-top:10px}.patients-table .patient-control-column select{width:auto;min-width:0;margin:0;padding:7px 8px;font-size:11px;font-weight:400;line-height:1.4;background:#fff;border-color:#e0e3ec;border-radius:8px;letter-spacing:0;box-shadow:none}.patients-table .patient-control-column .patient-sort-select{margin-top:10px;min-width:96px}.patients-table .patient-control-column select:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e312}.patients-table .patient-control-column:has(select option:checked:not([value=""]):not([value="updated_desc"])){color:#0071e3}
@media(max-width:720px){.patient-date-controls{gap:5px}.patients-table .patient-control-column select{font-size:10px;padding:7px}.patients-table .patient-control-column .patient-sort-select{min-width:88px}}

.timeline-order-label{display:flex;align-items:center;gap:10px;margin:0;color:#7c7c86;font-size:11px;font-weight:400;white-space:nowrap}.timeline-order-label select{width:auto;min-width:116px;margin:0;padding:8px 12px;border-radius:10px;font-size:12px;background:#fff}.timeline-order-label select:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e312}
@media(max-width:720px){.timeline-order-label{font-size:10px;gap:8px}.timeline-order-label select{font-size:11px;min-width:105px;padding:8px 10px}}

.patient-heading-title{display:flex;align-items:flex-end;flex-wrap:wrap;gap:6px;margin-bottom:10px}.patient-heading-title h1{margin:0}.patient-category-buttons{display:flex;align-items:center;gap:3px;padding-bottom:4px;flex-shrink:0}.patient-category-buttons button{width:18px;height:18px;padding:0;border-radius:4px;color:#6e6e78;border-color:#dedfe7;font-size:9px;font-weight:600;line-height:1}.patient-category-buttons button[aria-pressed=true]{background:#0071e3;border-color:#0071e3;color:#fff;box-shadow:0 3px 9px #0071e320}.patient-category-buttons button:hover{border-color:#92bced}.patient-category-mark{display:inline-block;margin-left:8px;padding:0 5px;border-radius:4px;background:#edf4ff;color:#0071e3;font-size:9px;font-weight:600}.upload-area .treatment-group-field{width:min(100%,290px);margin:18px auto 0;text-align:left}.upload-area .treatment-group-field select{margin-bottom:10px}
@media(max-width:720px){.patient-heading-title{gap:4px}.patient-category-buttons button{width:16px;height:16px;font-size:8px}.patient-category-buttons{gap:3px;padding-bottom:3px}}

.grid-2>.treatment-group-field{grid-column:1/-1}

.patient-row-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.patient-row-actions button,.patient-row-actions a{padding:0;border:0;background:transparent;color:#0071e3;font-size:11px;font-weight:400;line-height:1.4;border-radius:3px;white-space:nowrap;box-shadow:none}.patient-row-actions button:hover,.patient-row-actions a:hover{color:#004f9f;text-decoration:underline;background:transparent}.patients-table .patient-actions-column{min-width:92px}.pickup-fields{grid-template-columns:minmax(0,2fr) minmax(150px,1fr);gap:22px}
@media(max-width:720px){.patient-row-actions{gap:7px}.patient-row-actions button,.patient-row-actions a{font-size:11px}.pickup-fields{grid-template-columns:1fr;gap:0}}

.maintenance-path{overflow-wrap:anywhere;word-break:break-word}.maintenance-jobs{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.maintenance-jobs article{padding:20px;border:1px solid #ededf2;border-radius:14px;min-width:0}.maintenance-jobs article>b{font-size:14px}.maintenance-jobs article p{font-size:12px;line-height:1.9;margin:10px 0 0}.maintenance-jobs .error{font-size:12px}@media(max-width:720px){.maintenance-jobs{grid-template-columns:1fr;gap:12px}.maintenance-jobs article{padding:16px}}
