/* Calm, compact working surfaces for consultation and doctor scheduling. */
:root{--navy:#173f3a;--teal:#24766a;--bg:#f3f6f5;--line:#dfe8e4;--muted:#61766e;--text:#263d39}
body{font-family:"Segoe UI","Microsoft YaHei UI","PingFang SC",sans-serif;font-size:14px;line-height:1.55;color:var(--text)}
button,input,select,textarea{font-family:inherit}button{color:inherit}input,select,textarea{border-color:#cddad4;border-radius:6px;padding:9px 11px;font-size:14px;min-height:39px}input[type=checkbox],input[type=radio]{min-height:0;accent-color:var(--teal)}input:read-only{background:#f1f5f3;color:#64756e}input:disabled,select:disabled{background:#f1f5f3;color:#64756e}
.sidebar{width:208px;padding:28px 16px;background:var(--navy)}.shell{margin-left:208px}.brand{padding:0 8px;gap:11px;font-size:26px;font-weight:650}.brand .logo{background:#e0eece;color:#24473f;border-radius:12px;font-size:23px;width:40px;height:44px}.brand small{font-size:11px;color:#b7cec3;letter-spacing:0;margin-top:2px}.side-label{margin:40px 12px 12px;color:#97b4a9;letter-spacing:0;font-size:11px}nav{gap:6px}nav button{font-size:14px;padding:12px;gap:12px;border-radius:7px;color:#c6d8d0;min-height:46px}nav button svg{width:19px;height:19px;flex-shrink:0}nav button.active{background:#e6f0e9;color:#173f3a;font-weight:650}nav button:not(.active):hover{background:#245148}.side-bottom{border-color:#396057;gap:10px;font-size:13px}.side-bottom small{font-size:11px;color:#b2c9bf}.avatar{background:#45695d;color:#f5f8ee}
.shell>header{height:62px;padding:0 32px;background:#fff;border-color:var(--line)}.header-right{gap:14px}.role{white-space:nowrap;font-size:12px;gap:9px}.role select{font-size:12px;min-height:32px;max-width:190px}.demo{background:#edf3ef;color:#61766e;font-size:11px}.crumb{font-size:12px}.crumb span{padding:0 9px}#filterbar:empty{display:none}main{max-width:1760px;padding:27px 32px 32px;min-width:0}.page-head{margin-bottom:22px;gap:20px;align-items:center}.page-head h1{font-size:27px;font-weight:650;letter-spacing:-.7px;line-height:1.35}.page-head p{font-size:13px;margin-top:5px;color:var(--muted);max-width:620px}.page-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.primary,.secondary{padding:9px 14px;border-radius:6px;font-size:13px;min-height:39px;font-weight:600}.primary{background:var(--teal)}.primary:hover{background:#185e53}.secondary{background:#fff;border-color:#d4dfd9}.secondary:hover{border-color:#94b4a3;background:#f6faf7}.text-button{font-size:13px;color:#246f61}#global-intake{position:static;border-radius:6px;box-shadow:none}
.panel{border-color:var(--line);border-radius:10px;box-shadow:0 2px 2px #1b3b2c02;margin-bottom:18px}.panel-head{padding:15px 18px;gap:12px}.panel-head h3,h3{font-size:14px;font-weight:650}.panel-head .muted{font-size:11px}.muted{font-size:12px;color:var(--muted)}.toolbar{gap:10px;align-items:end;margin-bottom:18px}.toolbar label{display:grid;align-items:start;gap:5px;white-space:nowrap;font-size:12px}.toolbar label input,.toolbar label select{width:auto;min-width:150px}.toolbar .field-hint{white-space:normal;max-width:230px}.toolbar .muted{align-self:center}.toolbar select{min-height:39px}.query-panel{padding:14px 18px;border-radius:10px;border-color:var(--line);margin-bottom:16px}.filter-heading{font-size:12px;font-weight:650;color:#425f50;margin-bottom:6px}.query-line{gap:9px;margin:8px 0;align-items:end}.query-line label{font-size:11px;gap:4px}.query-line input,.query-line select{font-size:13px;min-height:37px;padding:8px 10px}.query-line .search-label{flex:1;min-width:160px}.query-line .primary,.query-line .secondary{min-height:37px;padding:8px 12px}.query-panel details>summary{font-size:12px;cursor:pointer;color:#496c5f;padding:6px 0}.query-context{font-size:11px;color:#688073;margin-top:4px}.query-panel details .query-line label:has(input[type=checkbox]){display:flex;align-items:center;align-self:center}.query-panel input[type=checkbox]{width:auto}
.summary-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-columns:none;gap:0;border:1px solid var(--line);background:white;border-radius:10px;overflow:hidden;margin-bottom:14px}.summary-strip .stat{border:0;border-right:1px solid var(--line);border-radius:0;box-shadow:none;padding:14px 16px;background:transparent;position:relative;align-content:start}.summary-strip .stat:last-child{border-right:0}.summary-strip .stat:hover{background:#edf6f0;box-shadow:none}.summary-strip .stat>span:first-child{font-size:12px;color:#50675d}.summary-strip .value{font-size:28px;letter-spacing:-.6px;line-height:1.5;font-variant-numeric:tabular-nums;color:#223e34}.summary-strip small{font-size:10px;color:#6a7e73;line-height:1.45}.summary-strip .summary-affordance{font-size:10px;margin-top:5px;color:#297360}
#main .distribution-panel{padding:14px 18px!important;margin:14px 0!important}.distribution-panel .panel-head{border:0;padding:0 0 10px!important}.distribution-panel>p{font-size:11px!important}.distribution-panel .arrival-grades{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:7px;margin-top:8px}.distribution-panel .grade-stat{padding:10px 12px;gap:3px;grid-template-columns:1fr auto;border-radius:6px;background:#f3f7f4;border-top-width:2px!important;align-items:center}.grade-stat>span:first-child{grid-column:1/-1;font-size:12px;color:#476454}.grade-stat b{font-size:23px;line-height:1.4;color:#28644f;font-variant-numeric:tabular-nums}.grade-stat small{font-size:11px;justify-self:end;color:#617b68}.grade-stat .summary-affordance{display:none}.summary-link{font-size:inherit;color:#26735f}.distribution-panel>p:last-child{margin-top:8px}
table{font-variant-numeric:tabular-nums}th{background:#edf3ef;color:#5a7164;font-size:11px;padding:12px 15px;font-weight:600}td{padding:14px 15px;font-size:13px;border-top-color:#e7ede9}td .text-button{padding:0;font-weight:600}.cell-small{font-size:11px;color:#718478;margin-top:4px}td.note-cell{min-width:160px;max-width:260px;font-size:12px}.table-wrap{max-height:660px}tbody tr:hover{background:#f2f8f4}.status-pill{display:inline-block;padding:3px 8px;border-radius:5px;background:#edf1ef;color:#576d60;font-size:11px;font-weight:550}.status-pill[data-state="预约"],.status-pill[data-state="已预约"]{background:#edf2fb;color:#496f99}.status-pill[data-state="待排期"],.status-pill[data-state="待确定"]{background:#fbf1df;color:#946324}.status-pill[data-state="已到诊"],.status-pill[data-state="已完成"]{background:#e6f2e8;color:#33704c}.status-pill[data-state="未到诊"]{background:#faeeea;color:#a1644d}.status-pill[data-state="已取消"]{color:#79867c;background:#f0f1ee}.badge{border-radius:4px;font-size:11px}
.intake-prompt{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#e8f0e8;border:1px solid #d5e3d3;border-radius:9px;margin:0 0 22px}.intake-symbol{width:40px;height:44px;background:white;border-radius:8px;display:grid;place-items:center;color:#447352}.intake-symbol svg{width:23px;height:23px}.intake-prompt h2{font-size:16px;font-weight:650;color:#284b35}.intake-prompt p{font-size:12px;color:#60745d;margin-top:3px}.intake-prompt .secondary{margin-left:auto;white-space:nowrap}.work-grid{gap:16px;align-items:start}.work-grid .panel{border-top:3px solid #739b88;min-height:235px}.work-grid .panel:nth-child(2){border-top-color:#b89c69}.work-grid .panel:nth-child(3){border-top-color:#7993a6}.work-grid .panel-head b{border-radius:5px;min-width:24px;text-align:center;background:#eef4ef;color:#557960;font-size:12px;padding:2px 6px}.task-line{padding:16px 18px;gap:6px}.task-line b{font-size:14px;font-weight:600}.task-line span,.task-line small{font-size:12px}.task-line:hover{background:#f0f6f1}.empty{padding:28px 20px;font-size:13px}.work-grid .empty{padding-top:55px}.work-grid+.panel p{font-size:12px;color:var(--muted);margin:6px 0 14px}.work-grid+.panel .secondary{margin:0 8px 8px 0}.shell>footer{font-size:11px;color:#7a8b7e;padding:0 32px 24px}
dialog{border-radius:12px;box-shadow:0 16px 64px #16392b33}dialog::backdrop{background:#18392d66;backdrop-filter:blur(2px)}#drawer{max-height:92vh;width:840px;scroll-padding-top:88px}.drawer-head{padding:18px 24px;border-bottom-color:var(--line)}.drawer-head h2{font-size:21px;font-weight:600;letter-spacing:-.4px}.eyebrow{display:none}.icon-button{border-radius:6px;background:#eef3ef;color:#607667}.drawer-head .icon-button{width:34px;height:34px}.form-grid{column-gap:18px;row-gap:14px}#drawer-body{padding:8px 24px 0}#drawer-body label{font-size:12px;gap:5px;color:#536d5f}#drawer-body input,#drawer-body select,#drawer-body textarea{font-size:14px}.form-section{grid-column:1/-1;font-size:14px;color:#284b36;padding:12px 0 8px;margin:6px 0 0;border-bottom:1px solid #e0e9e0}.form-grid .form-section:first-child{margin-top:0}#manual-business>p:first-child,#simple-maintenance>p:first-child{font-size:12px;color:#6b7f70;margin:12px 0}#manual-business>label{margin:12px 0}.project-checks{padding:10px 12px;background:#f8faf7;border:1px solid #e0e8da;border-radius:7px}.project-checks legend{font-size:12px;color:#54714d;padding:0 5px}.project-checks label{padding:6px 10px;margin:3px 5px 3px 0!important;background:white;border:1px solid #dce6d8;border-radius:5px;cursor:pointer}.project-checks label:has(input:checked){background:#e5f0df;border-color:#91b482;color:#365e2b!important}.project-checks input{width:13px;height:13px}.field-hint{font-size:11px;line-height:1.5;color:#70806e;margin-top:3px}.field-hint.input-error{color:#ae3c32;font-weight:600}.schedule-controls{gap:7px}.schedule-controls select{min-height:32px;padding:5px 8px!important;font-size:12px!important}.schedule-controls .text-button{font-size:11px}.soft-note{background:#f1f5ee;color:#6a7a60;padding:10px 12px;line-height:1.65;margin-top:16px}.form-savebar{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:13px 0;margin:20px 0 0;z-index:3;box-shadow:0 -8px 14px #fff}.form-savebar .primary{min-width:145px}.notes-section{padding:20px 0 24px}.notes-section h3{margin-bottom:10px}.notes-section textarea{min-height:85px}#surgery-inline{margin-top:18px;padding:16px;border:1px solid #dce6d6;background:#fafcf8;border-radius:8px}#surgery-inline>h3{font-size:15px}#surgery-inline>.muted{margin:5px 0 12px}.summary-detail-body{padding:20px 24px}.summary-detail-footer{padding:14px 24px}.summary-count{font-size:15px}.summary-scope{padding:10px 12px;background:#f1f6ef;border-radius:6px}.calendar-stepper{display:flex;gap:0;align-self:end}.calendar-stepper .secondary{border-radius:0;margin-left:-1px}.calendar-stepper .secondary:first-child{border-radius:6px 0 0 6px;font-size:20px;padding:3px 11px}.calendar-stepper .secondary:last-child{border-radius:0 6px 6px 0;font-size:20px;padding:3px 11px}.calendar-heading{border-left:4px solid #759671;background:#f9fbf8;padding:16px 20px}.calendar-heading h2{font-size:18px}.calendar-heading p{font-size:12px;color:var(--muted);margin-top:4px}.day-column h3{font-size:13px;padding:12px 18px;background:#edf3ea}.appointment{padding:15px 18px;gap:20px;border-color:#e6ece2}.appointment-time{font-size:13px;color:#538046}.appointment small{font-size:12px;margin-top:3px}.appointment:hover{background:#f6faf3}.week-grid{grid-template-columns:repeat(7,minmax(160px,1fr));gap:10px}.calendar-surface .toolbar{flex-wrap:wrap}.dash-grid{gap:16px}.dash-widget-body{padding:18px}.month-progress{padding:18px}.goal-track{height:8px}.goal-track i{background:#719b78}.dash-number{color:#3b7458;font-size:38px}#toast{background:#254638;color:white;max-width:calc(100vw - 32px);font-size:13px;text-align:center}
#work-query,#calendar-query{align-items:flex-start}#work-query>button,#calendar-query>button{margin-top:23px}#calendar-query>.calendar-stepper{align-self:flex-start;margin-top:23px}.business-records{margin:18px 0}.business-records .table-wrap{max-height:520px}
.calendar-exports{flex-basis:100%;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:12px;margin-top:4px;border-top:1px solid var(--line)}.calendar-exports>span{margin-right:auto;font-size:12px;color:var(--muted)}.calendar-exports .secondary{font-size:12px;min-height:34px;padding:7px 12px}
@media(min-width:1700px){.summary-strip .value{font-size:32px}main{padding:32px 40px}.query-line{gap:12px}}
@media(max-width:1150px){.sidebar{width:180px;padding:25px 12px}.shell{margin-left:180px}main{padding:24px}.shell>header{padding:0 24px}.summary-strip{grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr))}.summary-strip .stat{border-bottom:1px solid var(--line)}.page-head{align-items:flex-start}.summary-strip .stat{padding:12px}.summary-strip .value{font-size:25px}.page-actions{max-width:350px}.toolbar{flex-wrap:wrap}}
@media(max-width:700px){.sidebar{inset:auto 0 0;width:100%;height:68px;padding:0 4px;border-radius:0}.shell{margin-left:0;margin-bottom:68px}nav button{display:flex;flex-direction:column;gap:3px;justify-content:center;border-radius:0;font-size:10px;padding:8px 4px;min-width:0;flex:1}nav button svg{width:18px;height:18px}.shell>header{padding:10px 16px;height:auto;min-height:58px}.demo{font-size:10px;white-space:nowrap;padding:4px 6px}.role{font-size:0;gap:0}.role select{font-size:11px;max-width:156px}.header-right{gap:8px}.page-head{display:block;margin-bottom:18px}.page-head h1{font-size:24px}.page-head p{font-size:12px}.page-actions{margin-top:12px;max-width:none;justify-content:flex-start;gap:7px}.page-actions .primary,.page-actions .secondary{font-size:12px;padding:8px 10px;min-height:38px}main{padding:21px 16px}.query-panel{padding:12px}.query-line{gap:8px}.query-line label{min-width:120px;flex:1}.query-line>div{flex:1}.query-line>div label{min-width:120px}.query-line input,.query-line select{width:100%;min-width:0}.query-line .search-label{min-width:100%}.summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-strip .stat{padding:12px}.summary-strip .stat:nth-child(even){border-right:0}.summary-strip .stat .value{font-size:26px}.summary-strip small{font-size:11px}.distribution-panel .arrival-grades{grid-template-columns:repeat(2,minmax(0,1fr))}.intake-prompt{padding:14px;gap:10px;flex-wrap:wrap}.intake-prompt h2{font-size:14px}.intake-prompt p{max-width:240px;font-size:11px}.intake-symbol{display:none}.intake-prompt .secondary{margin-left:0;font-size:12px}.work-grid{grid-template-columns:1fr;gap:12px}.work-grid .panel{min-height:0;margin-bottom:0}.work-grid .empty{padding:24px}.toolbar label{white-space:normal;flex:1;min-width:125px}.toolbar label input,.toolbar label select{width:100%;min-width:0}.toolbar .field-hint{max-width:100%;font-size:10px}.toolbar>.muted{display:none}.shell>footer{padding:0 16px 18px;font-size:10px}#drawer{width:100%;max-width:100%;max-height:94dvh;margin:auto 0 0;border-radius:14px 14px 0 0}.drawer-head{padding:16px 18px}.drawer-head h2{font-size:19px}#drawer-body{padding:8px 18px 0}.form-grid{grid-template-columns:1fr 1fr;gap:12px}.form-grid>.full{grid-column:1/-1}#drawer-body .project-checks label{font-size:11px}.business-supplement{grid-column:1/-1}.form-grid label{min-width:0}#drawer-body input,#drawer-body select{font-size:13px;padding:8px;min-width:0}.schedule-controls{flex-wrap:wrap}.schedule-controls select{width:75px}.form-savebar{padding-bottom:max(13px,env(safe-area-inset-bottom));gap:8px}.form-savebar .primary{flex:1}.calendar-stepper{width:100%;margin-bottom:4px}.calendar-heading h2{font-size:15px}.appointment{padding:13px;gap:10px}.week-grid{grid-template-columns:repeat(7,180px)}#summary-detail{max-width:96vw}.summary-detail-body{padding:15px}.summary-detail-footer{padding:12px 15px}.brand,.side-label,.side-bottom{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.calendar-stepper,.page-actions,.intake-prompt{display:none!important}.shell{margin:0}.calendar-heading{background:white}}
