:root{
  --ink:#17313a;--muted:#637981;--line:#d5e0df;--paper:#edf2f1;--panel:#fff;
  --teal:#176e70;--teal-dark:#12595b;--teal-soft:#e6f2f1;--green:#27845b;
  --amber:#b96b1b;--amber-soft:#fff3df;--red:#b84d4d;--red-soft:#fdecec;
  --blue:#3976a8;--blue-soft:#eaf2fa;--shadow:0 8px 24px rgba(32,64,67,.08);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{height:100vh;position:sticky;top:0;background:#163f42;color:#dcebea;display:flex;flex-direction:column;border-right:1px solid #2c5658;z-index:50}.brand{height:76px;padding:0 17px;display:flex;align-items:center;gap:11px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark{width:38px;height:38px;border-radius:7px;display:grid;place-items:center;background:#f1f7f5;color:#185c5e;font-size:20px;font-weight:700}.brand strong,.brand span{display:block}.brand strong{font-size:16px;color:#fff}.brand span{font-size:11px;color:#a9c5c4;margin-top:4px}.sidebar nav{padding:12px 9px;overflow:auto;flex:1}.nav-group{margin-bottom:12px}.nav-group-title{padding:7px 11px;color:#83aaa8;font-size:11px}.nav-item{width:100%;height:40px;border:0;border-radius:6px;background:transparent;color:#dcebea;display:flex;align-items:center;gap:10px;padding:0 11px;text-align:left}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.1);color:#fff}.nav-symbol{width:25px;height:25px;border-radius:5px;background:rgba(255,255,255,.08);display:grid;place-items:center;font-size:12px}.nav-item.active .nav-symbol{background:#f0f7f5;color:#1e6769}.nav-chevron{margin-left:auto;transition:.2s}.nav-module.expanded .nav-chevron{transform:rotate(90deg)}.nav-levels{display:none;padding:3px 0 4px 46px}.nav-module.expanded .nav-levels{display:block}.nav-level{display:block;width:100%;padding:7px 6px;border:0;background:transparent;color:#a9c5c4;text-align:left;font-size:12px}.nav-level:hover,.nav-level.active{color:#fff}.sidebar-foot{min-height:66px;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;gap:10px;padding:12px 16px}.sidebar-foot b,.sidebar-foot small{display:block}.sidebar-foot b{font-size:12px}.sidebar-foot small{color:#91b2b1;font-size:10px;margin-top:4px}.live-dot{width:8px;height:8px;border-radius:50%;background:#72d49b;box-shadow:0 0 0 4px rgba(114,212,155,.12)}
.main{min-width:0}.topbar{height:64px;position:sticky;top:0;z-index:35;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 22px}.breadcrumb{display:flex;gap:9px;align-items:center;min-width:0;color:var(--muted);font-size:12px}.breadcrumb b{color:var(--ink)}.breadcrumb i{font-style:normal;color:#a5b4b8}.breadcrumb span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#45616a;display:grid;place-items:center;font-size:17px}.icon-button:hover{border-color:#9fb8b7;background:#f6f9f8}.mobile-menu{display:none}.notice-button{color:var(--amber);font-weight:700}.user-button{height:38px;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--ink)}.user-button span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--teal-soft);color:var(--teal);font-weight:700}.user-button b{font-size:12px}.workspace{padding:20px 22px 36px;max-width:1660px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}.page-head small,.panel-head small,.section-kicker{display:block;color:var(--teal);font-size:11px;font-weight:700}.page-head h1{margin:5px 0 6px;font-size:26px;line-height:1.2;letter-spacing:0}.page-head p{margin:0;color:var(--muted);max-width:760px}.page-actions{display:flex;gap:8px}.button{min-height:36px;padding:0 14px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#35515a;font-weight:600}.button:hover{border-color:#91aaa9;background:#f8faf9}.button.primary{background:var(--teal);border-color:var(--teal);color:#fff}.button.primary:hover{background:var(--teal-dark)}.button.danger{color:var(--red);border-color:#e8bcbc}.module-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow:auto}.module-tabs button{height:42px;padding:0 15px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);white-space:nowrap}.module-tabs button.active{color:var(--teal);border-bottom-color:var(--teal);font-weight:700}.context-strip{display:grid;grid-template-columns:1.2fr repeat(4,minmax(115px,.55fr));background:#f8fbfa;border:1px solid var(--line);border-radius:7px;margin-bottom:14px;overflow:hidden}.context-strip>div{padding:11px 14px;border-right:1px solid var(--line);min-width:0}.context-strip>div:last-child{border-right:0}.context-strip span,.metric span{display:block;color:var(--muted);font-size:11px}.context-strip b{display:block;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:4px;background:var(--teal-soft);color:var(--teal);font-size:11px;font-weight:700}.tag.warning{background:var(--amber-soft);color:var(--amber)}.tag.danger{background:var(--red-soft);color:var(--red)}.tag.info{background:var(--blue-soft);color:var(--blue)}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:14px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:15px 16px;box-shadow:var(--shadow)}.metric strong{display:block;font-size:25px;margin:8px 0 5px}.metric small{color:var(--green)}.metric.warning small{color:var(--amber)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:7px;box-shadow:var(--shadow);min-width:0}.panel-head{min-height:58px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.panel-head h2,.panel-head h3{margin:4px 0 0;font-size:15px}.panel-head .tools{display:flex;align-items:center;gap:7px}.panel-body{padding:15px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(310px,.7fr);gap:12px}.operation-board{padding:15px}.process-flow{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;align-items:center}.process-node{position:relative;min-height:84px;border:1px solid var(--line);border-radius:6px;padding:12px 9px;background:#fafcfc}.process-node:not(:last-child):after{content:"›";position:absolute;right:-7px;top:31px;z-index:2;color:#7b9497;background:#fff}.process-node b,.process-node span{display:block}.process-node b{font-size:12px}.process-node span{font-size:11px;color:var(--muted);margin-top:8px}.process-node.done{border-color:#91c5ac;background:#f1f8f3}.process-node.current{border-color:#dfaa69;background:#fff8ec}.process-node.alert{border-color:#dda8a8;background:#fff4f4}.split-list{display:grid;grid-template-columns:1fr 1fr}.split-list>div{padding:15px}.split-list>div+div{border-left:1px solid var(--line)}.compact-list{display:grid;gap:9px}.compact-row{display:flex;align-items:center;gap:10px;min-height:42px}.compact-row .row-symbol{width:32px;height:32px;border-radius:5px;display:grid;place-items:center;background:var(--teal-soft);color:var(--teal);font-weight:700}.compact-row div{min-width:0;flex:1}.compact-row b,.compact-row span{display:block}.compact-row span{font-size:11px;color:var(--muted);margin-top:3px}.compact-row>strong{font-size:12px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.feature-card{min-height:150px;padding:15px;border:1px solid var(--line);border-radius:7px;background:#fff;text-align:left;color:inherit}.feature-card:hover{border-color:#91afad;box-shadow:var(--shadow)}.feature-card>span{display:grid;place-items:center;width:32px;height:32px;border-radius:6px;background:var(--teal-soft);color:var(--teal);font-weight:700}.feature-card h3{font-size:14px;margin:13px 0 7px}.feature-card p{color:var(--muted);font-size:12px;line-height:1.6;margin:0}.feature-card footer{margin-top:12px;color:var(--teal);font-size:11px;font-weight:700}.workbench-grid{display:grid;grid-template-columns:260px minmax(420px,1fr) 330px;gap:12px;align-items:start}.queue-list{max-height:650px;overflow:auto}.queue-item{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;padding:13px 14px;color:inherit}.queue-item:hover,.queue-item.active{background:#edf7f5}.queue-item header,.queue-item footer{display:flex;justify-content:space-between;gap:8px}.queue-item header b{font-size:13px}.queue-item p{margin:8px 0;color:var(--muted);font-size:11px}.queue-item footer{font-size:11px;color:var(--muted)}.detail-section{padding:15px;border-bottom:1px solid var(--line)}.detail-section:last-child{border-bottom:0}.detail-section h3{font-size:13px;margin:0 0 12px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.info-grid span{display:block;color:var(--muted);font-size:10px}.info-grid b{display:block;margin-top:4px;font-size:12px}.herb-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.herb-item{border:1px solid var(--line);border-radius:5px;padding:9px;background:#fafcfc}.herb-item b,.herb-item span{display:block}.herb-item span{margin-top:4px;color:var(--muted);font-size:10px}.rule-list{padding:7px 14px 14px}.rule-item{border-bottom:1px solid var(--line);padding:12px 0}.rule-item:last-child{border-bottom:0}.rule-item header{display:flex;align-items:center;justify-content:space-between;gap:8px}.rule-item h4{margin:0;font-size:12px}.rule-item p{font-size:11px;color:var(--muted);line-height:1.55;margin:7px 0 0}.review-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:13px;border-top:1px solid var(--line)}.review-actions .primary{grid-column:1/-1}.timeline{padding:10px 16px}.timeline-item{position:relative;padding:10px 0 15px 30px;border-left:1px solid #bfd1cf}.timeline-item:last-child{border-left-color:transparent}.timeline-item:before{content:"";position:absolute;left:-6px;top:14px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid #91aaa9}.timeline-item.done:before{background:var(--green);border-color:var(--green)}.timeline-item.current:before{background:var(--amber);border-color:var(--amber)}.timeline-item header{display:flex;justify-content:space-between;gap:10px}.timeline-item h3{font-size:13px;margin:0}.timeline-item p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.toolbar{display:flex;gap:8px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line);flex-wrap:wrap}.input,.select{height:36px;border:1px solid var(--line);border-radius:5px;background:#fff;padding:0 10px;color:var(--ink);min-width:130px}.input:focus,.select:focus,textarea:focus{outline:2px solid #afd2cf;outline-offset:1px}.toolbar .input{min-width:220px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th,.data-table td{padding:11px 13px;border-bottom:1px solid var(--line);text-align:left;font-size:12px;white-space:nowrap}.data-table th{color:var(--muted);font-weight:600;background:#f7faf9}.data-table tbody tr:hover{background:#f7fbfa}.data-table button{border:0;background:transparent;color:var(--teal);font-weight:700}.device-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.device-card{border:1px solid var(--line);border-radius:7px;background:#fff;padding:14px}.device-card header{display:flex;justify-content:space-between;align-items:center}.device-card h3{font-size:13px;margin:0}.device-card .device-state{margin:18px 0 13px;display:flex;gap:9px;align-items:center}.device-card .device-state b{font-size:20px}.device-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.device-card dt{font-size:10px;color:var(--muted)}.device-card dd{margin:3px 0 0;font-size:12px}.status-light{width:9px;height:9px;border-radius:50%;background:var(--green)}.status-light.busy{background:var(--amber)}.status-light.offline{background:var(--red)}.trace-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:12px}.trace-code{padding:17px}.qr-placeholder{width:116px;height:116px;margin:10px auto 16px;background:repeating-conic-gradient(#17313a 0 25%,#fff 0 50%) 50%/14px 14px;border:9px solid #fff;outline:1px solid var(--line)}.trace-code h2,.trace-code p{text-align:center}.trace-code h2{font-size:16px}.trace-code p{font-size:11px;color:var(--muted)}.generic-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px}.bar-chart{display:flex;align-items:end;gap:10px;height:180px;padding:12px 5px 0}.bar-chart div{flex:1;background:#63a9a1;border-radius:3px 3px 0 0;min-height:20px;position:relative}.bar-chart span{position:absolute;bottom:-24px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--muted)}.empty-state{padding:36px;text-align:center;color:var(--muted)}
.mobile-backdrop{display:none}.app-dialog{width:min(560px,calc(100vw - 28px));border:0;border-radius:8px;padding:0;color:var(--ink);box-shadow:0 20px 70px rgba(20,48,51,.25)}.app-dialog::backdrop{background:rgba(16,39,42,.4)}.app-dialog>header,.app-dialog>footer{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;border-bottom:1px solid var(--line)}.app-dialog>header h2{font-size:17px;margin:4px 0 0}.app-dialog>header small{color:var(--teal)}.app-dialog>footer{justify-content:flex-end;gap:8px;border:0;border-top:1px solid var(--line)}.dialog-body{padding:17px}.dialog-form{display:grid;gap:12px}.dialog-form label{display:grid;gap:6px;color:var(--muted);font-size:12px}.dialog-form textarea{min-height:92px;border:1px solid var(--line);border-radius:5px;padding:10px;resize:vertical}.toast{position:fixed;right:22px;bottom:22px;z-index:100;padding:12px 16px;border-radius:6px;background:#173f42;color:#fff;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
@media(max-width:1220px){.workbench-grid{grid-template-columns:230px minmax(0,1fr)}.workbench-grid>.panel:last-child{grid-column:1/-1}.device-grid{grid-template-columns:repeat(3,1fr)}.process-flow{grid-template-columns:repeat(4,1fr)}.process-node:after{display:none}}
@media(max-width:900px){.app-shell{display:block}.sidebar{position:fixed;left:-260px;width:248px;transition:.2s}.sidebar.open{left:0}.mobile-backdrop.show{display:block;position:fixed;inset:0;background:rgba(14,38,40,.35);z-index:45}.mobile-menu{display:grid}.workspace{padding:16px}.context-strip{grid-template-columns:1fr 1fr 1fr}.context-strip>div{border-bottom:1px solid var(--line)}.metrics{grid-template-columns:1fr 1fr}.dashboard-grid,.generic-layout{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr 1fr}.device-grid{grid-template-columns:1fr 1fr}.trace-layout{grid-template-columns:1fr}.page-head{display:block}.page-actions{margin-top:12px}.user-button b{display:none}}
@media(max-width:620px){.topbar{padding:0 12px}.breadcrumb i,.breadcrumb span:not(:last-child){display:none}.workspace{padding:13px 10px 28px}.page-head h1{font-size:22px}.page-actions{display:grid;grid-template-columns:1fr 1fr}.context-strip{grid-template-columns:1fr 1fr}.context-strip>div:first-child{grid-column:1/-1}.metrics,.feature-grid,.device-grid,.workbench-grid{grid-template-columns:1fr}.workbench-grid>.panel:last-child{grid-column:auto}.process-flow{grid-template-columns:1fr 1fr}.info-grid,.herb-list{grid-template-columns:1fr 1fr}.top-actions>.icon-button{display:none}.toolbar .input{min-width:100%;width:100%}.panel-head{align-items:flex-start}.split-list{grid-template-columns:1fr}.split-list>div+div{border-left:0;border-top:1px solid var(--line)}}

/* Text-only navigation and activity rows. */
.brand{padding-left:20px}.nav-item{padding-left:13px}.nav-levels{padding-left:24px}.compact-row{gap:0}.user-button{padding:0 6px}

/* Unified business workflow upgrade. */
.pharmacy-eight-stage{grid-template-columns:repeat(8,1fr)}.workflow-summary{margin-top:12px}.workflow-row{width:100%;border:0;background:transparent;text-align:left;color:inherit;padding:6px 0}.workflow-row:hover b{color:var(--teal)}.operation-boundary,.ai-boundary{padding:10px 12px;border-left:3px solid var(--amber);background:var(--amber-soft);color:#73501f;font-size:11px;line-height:1.6}.ai-analysis-section{padding:13px 14px;border-top:1px solid var(--line);background:#f7faf9}.ai-analysis-section>header{display:flex;justify-content:space-between;gap:10px;align-items:center}.ai-analysis-section h3{font-size:13px;margin:4px 0}.ai-analysis-section [data-ai-output]{font-size:11px;color:var(--muted);line-height:1.6}.ai-analysis-section>.button{width:100%}.ai-result{margin:10px 0;border:1px solid var(--line);background:#fff;padding:10px}.ai-result header{display:flex;justify-content:space-between;gap:8px}.ai-result pre{white-space:pre-wrap;font-family:inherit;line-height:1.65;color:var(--ink)}.intake-source-tabs{display:flex;align-items:center;gap:10px;margin-bottom:14px}.intake-source-tabs .button{margin-left:auto}.intake-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.intake-grid label{display:grid;gap:5px;color:var(--muted);font-size:11px}.intake-grid .span-two{grid-column:1/-1}.intake-grid textarea{min-height:80px;border:1px solid var(--line);border-radius:5px;padding:9px}.file-drop{display:grid;gap:7px;margin-top:13px;padding:13px;border:1px dashed #91aaa9;border-radius:6px;color:var(--muted)}.file-drop input{width:100%}.import-preview{margin-top:10px;padding:10px;background:var(--teal-soft);display:grid;gap:5px}.import-preview span{font-size:11px}.file-button{display:flex;align-items:center;justify-content:center}.file-button input{display:none}
@media(max-width:1220px){.pharmacy-eight-stage{grid-template-columns:repeat(4,1fr)}}
@media(max-width:620px){.pharmacy-eight-stage{grid-template-columns:1fr 1fr}.intake-grid{grid-template-columns:1fr}.intake-grid .span-two{grid-column:auto}.intake-source-tabs{align-items:flex-start;flex-wrap:wrap}.intake-source-tabs .button{margin-left:0}}

/* Operational rule, order, production and receipt workspaces. */
.section-gap{margin-top:14px}.work-status-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid var(--line);border-radius:7px;background:#f8fbfa;margin-bottom:12px;overflow:hidden}.work-status-grid article{padding:11px 12px;border-right:1px solid var(--line);min-width:0}.work-status-grid article:last-child{border-right:0}.work-status-grid span,.telemetry span{display:block;color:var(--muted);font-size:10px}.work-status-grid b{display:block;margin-top:5px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.production-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.production-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:12px}.telemetry{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-bottom:12px;border-bottom:1px solid var(--line)}.telemetry b{display:block;margin-top:5px;color:var(--ink)}.evidence-list{display:grid;gap:8px;margin-top:12px}.evidence-list>div{padding:9px;border-left:3px solid var(--teal);background:#f7faf9}.evidence-list b,.evidence-list span{display:block}.evidence-list span{color:var(--muted);font-size:10px;margin-top:4px}.compact-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:0 16px}.wrap-cell{white-space:normal!important;min-width:220px;line-height:1.5}.print-document{text-align:center}.print-document .info-grid{text-align:left;margin:16px 0}.print-document h3,.print-document>p{text-align:left}.panel>.panel{border:0;box-shadow:none}.production-actions .button:disabled,.data-table button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1100px){.work-status-grid{grid-template-columns:repeat(3,1fr)}.work-status-grid article:nth-child(3){border-right:0}.work-status-grid article:nth-child(-n+3){border-bottom:1px solid var(--line)}.production-grid{grid-template-columns:1fr}.compact-timeline{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.work-status-grid{grid-template-columns:1fr 1fr}.work-status-grid article:nth-child(3){border-right:1px solid var(--line)}.work-status-grid article:nth-child(2n){border-right:0}.work-status-grid article{border-bottom:1px solid var(--line)}.work-status-grid article:nth-last-child(-n+2){border-bottom:0}.production-actions{display:grid;grid-template-columns:1fr 1fr}.production-actions .button{padding:0 8px;font-size:11px}.compact-timeline{grid-template-columns:1fr}}

/* Confirmed round-two operational modules. */
.section-stack{display:grid;gap:12px}.template-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:14px}.template-card{border:1px solid var(--line);border-radius:7px;padding:13px;min-width:0}.template-card header{display:flex;justify-content:space-between;gap:8px}.template-card h3{font-size:13px;margin:4px 0 0}.template-steps{display:grid;gap:5px;margin:14px 0}.template-steps span{font-size:11px;color:var(--muted);padding:5px 7px;background:#f7faf9}.template-card footer{font-size:10px;color:var(--muted)}.patient-preview-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:12px}.patient-phone{max-width:430px;margin:18px auto;border:1px solid var(--line);background:#fff;padding:18px;box-shadow:var(--shadow)}.phone-head{border-bottom:1px solid var(--line);padding-bottom:12px}.phone-head b,.phone-head span{display:block}.phone-head span{font-size:11px;color:var(--muted);margin-top:4px}.patient-progress{display:grid;gap:7px;margin:16px 0}.patient-progress>div{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px}.patient-progress i{width:9px;height:9px;border-radius:50%;background:#d5dfdf}.patient-progress .done i{background:var(--green)}.patient-progress .done{color:var(--ink)}.patient-block{border-top:1px solid var(--line);padding:12px 0}.patient-block span{color:var(--muted);font-size:10px}.patient-block b,.patient-block p{display:block;margin:5px 0 0;font-size:12px}.trace-search-band,.role-switch{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:14px 16px;border:1px solid var(--line);background:#f8fbfa;border-radius:7px}.trace-search-band h2,.role-switch h2{font-size:16px;margin:4px 0}.trace-search-band>div:last-child{display:flex;gap:7px}.trace-graph{display:grid;grid-template-columns:repeat(6,1fr);margin-bottom:12px;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff}.trace-graph article{position:relative;padding:14px 12px;border-right:1px solid var(--line);min-width:0}.trace-graph article:last-child{border-right:0}.trace-graph span,.trace-graph small{display:block;color:var(--muted);font-size:10px}.trace-graph b{display:block;margin:7px 0 4px;font-size:12px;overflow:hidden;text-overflow:ellipsis}.workshop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;padding:14px}.workshop-card{border:1px solid var(--line);border-radius:7px;padding:14px}.workshop-card header{display:flex;justify-content:space-between;gap:8px}.workshop-card h3{margin:4px 0;font-size:14px}.environment-values{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.environment-values>div{background:#f7faf9;padding:10px}.environment-values span{display:block;font-size:10px;color:var(--muted)}.environment-values b{display:block;font-size:20px;margin-top:5px}.workshop-card dl{display:grid;grid-template-columns:90px 1fr;gap:6px;font-size:11px}.workshop-card dt{color:var(--muted)}.workshop-card dd{margin:0}.workshop-card .button{width:100%;margin-top:10px}.ocr-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ocr-image-placeholder{min-height:280px;display:grid;place-items:center;text-align:center;background:#eef2f1;border:1px dashed #94aaa9;color:var(--muted)}.field-warning{border-color:var(--amber)!important;background:var(--amber-soft)!important}.role-switch{background:#fff}.role-switch small{color:var(--teal)}
.card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.card-actions button,.compact-row>button{min-height:30px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--teal);padding:5px 9px;font-weight:700;cursor:pointer}.card-actions button:hover,.compact-row>button:hover{border-color:#91afad;background:var(--teal-soft)}
.metric-button{text-align:left;color:inherit;cursor:pointer}.metric-button:hover{border-color:#82aaa5;box-shadow:0 5px 18px rgba(20,48,51,.12)}.r3-filter-band{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) minmax(230px,1.3fr);gap:10px;margin-bottom:12px;padding:13px 15px;border:1px solid var(--line);border-radius:7px;background:#fff}.r3-filter-band label{display:grid;gap:5px;font-size:10px;color:var(--muted)}.r3-filter-band>div{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-content:center}.r3-filter-band>div span,.r3-filter-band>div small{color:var(--muted);font-size:10px}.r3-filter-band>div small{grid-column:1/-1}.r3-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.r3-kpi-grid>div{padding:15px;background:#fff}.r3-kpi-grid span,.r3-clinical-grid span{display:block;color:var(--muted);font-size:10px}.r3-kpi-grid b,.r3-clinical-grid b{display:block;margin-top:6px;font-size:13px}.ai-description{color:var(--muted);font-size:11px;line-height:1.6}.r3-queue-filter{margin-bottom:12px}.r3-clinical-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.r3-clinical-grid>div{min-height:70px;padding:13px;background:#fff}.r3-clinical-grid .unknown{color:var(--amber)}.r3-work-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:12px;align-items:start}.r3-work-layout>.panel{position:sticky;top:78px}.r3-batch-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.r3-batch-card .production-actions{margin:14px 0 0}.r3-batch-card .production-actions button{min-height:32px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--teal);font-weight:700;padding:5px 9px}
.r3-batch-card .r3-kpi-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.r3-filter-band{grid-template-columns:1fr 1fr}.r3-work-layout{grid-template-columns:1fr}.r3-work-layout>.panel{position:static}.r3-batch-grid{grid-template-columns:1fr}.r3-clinical-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.r3-filter-band{grid-template-columns:1fr}.r3-kpi-grid{grid-template-columns:1fr 1fr}}
@media(max-width:1150px){.template-grid{grid-template-columns:1fr 1fr}.trace-graph{grid-template-columns:repeat(3,1fr)}.trace-graph article:nth-child(3){border-right:0}.trace-graph article:nth-child(-n+3){border-bottom:1px solid var(--line)}.workshop-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.patient-preview-layout{grid-template-columns:1fr}.trace-search-band,.role-switch{align-items:stretch;flex-direction:column}.trace-search-band>div:last-child{width:100%}.trace-search-band .input{min-width:0;flex:1}.trace-graph{grid-template-columns:1fr 1fr}.trace-graph article:nth-child(3){border-right:1px solid var(--line)}.trace-graph article:nth-child(2n){border-right:0}.trace-graph article{border-bottom:1px solid var(--line)}.trace-graph article:nth-last-child(-n+2){border-bottom:0}.workshop-grid{grid-template-columns:1fr}.ocr-compare{grid-template-columns:1fr}}
@media(max-width:520px){.template-grid{grid-template-columns:1fr}.patient-phone{margin:10px}.trace-graph{grid-template-columns:1fr}.trace-graph article{border-right:0!important}.trace-graph article:nth-last-child(2){border-bottom:1px solid var(--line)}.role-switch .select{width:100%}}

/* Confirmed prescription intake, review, payment and HIS return flow. */
.context-six{grid-template-columns:1.25fr repeat(5,minmax(105px,.55fr))}
.source-banner,.route-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--line);border-radius:7px;background:#f8fbfa}
.source-banner>div,.route-banner>div{min-width:0}.source-banner b,.source-banner small,.route-banner b,.route-banner small{display:block}.source-banner b{margin-top:6px}.source-banner small,.route-banner small{margin-top:4px;color:var(--muted);font-size:11px}
.return-notice{margin:12px 14px 0;padding:12px;border:1px solid #e7c48f;border-left:3px solid var(--amber);border-radius:5px;background:var(--amber-soft)}.return-notice header{display:flex;align-items:center;justify-content:space-between;gap:8px}.return-notice p{margin:8px 0;font-size:12px}.return-notice small{color:var(--muted)}
.instruction-grid{display:grid;gap:10px}.instruction-grid>div{padding:9px;border:1px solid var(--line);border-radius:5px;background:#fafcfc}.instruction-grid span,.instruction-grid b{display:block}.instruction-grid span{font-size:10px;color:var(--muted)}.instruction-grid b{margin-top:4px;font-size:12px}
.herb-item em{display:block;margin-top:5px;color:var(--amber);font-size:10px;font-style:normal}
.review-panel{overflow:hidden}.review-state{display:grid;gap:8px;padding:14px;border-top:1px solid var(--line);background:#f7faf9}.review-state span{font-size:11px;color:var(--muted);line-height:1.5}.review-state .button{width:100%}.payment-wait{background:var(--amber-soft)}.danger-text{color:var(--red);background:var(--red-soft)}
.ai-empty{min-height:82px;margin:10px 0;padding:12px;border:1px dashed #a9bcba;border-radius:5px;background:#fff}.ai-empty b,.ai-empty p{display:block}.ai-empty p{margin:7px 0 0}.ai-result.stale{opacity:.78}.stale-note{padding:7px;background:var(--amber-soft);color:var(--amber)}.ai-loading{min-height:82px;display:grid;place-items:center;color:var(--teal)}
.source-priority{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 9px;margin-bottom:13px;padding:11px;border-left:3px solid var(--teal);background:var(--teal-soft)}.source-priority small{grid-column:2;color:var(--muted)}
.route-preview{margin:12px 0;padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:#f8fbfa;color:var(--teal)}
.herb-editor{margin-top:13px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.herb-editor>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#f7faf9}.herb-editor>header b,.herb-editor>header small{display:block}.herb-editor>header small{margin-top:3px;color:var(--muted);font-size:10px}.herb-edit-row{display:grid;grid-template-columns:1.15fr 90px 70px 1.25fr 36px;gap:7px;padding:8px 10px;border-top:1px solid var(--line)}.herb-edit-row .input,.herb-edit-row .select{min-width:0;width:100%}
.risk-confirm{display:grid;gap:6px;padding:10px;border:1px solid #e7c48f;border-radius:5px;background:var(--amber-soft)}.risk-confirm span{font-size:11px}.check-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start}.herb-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;border:1px solid var(--line);border-radius:5px}.herb-checks legend{padding:0 5px;color:var(--muted);font-size:11px}.herb-checks label{display:flex;align-items:center;gap:5px}
.toolbar-result{margin-left:auto;color:var(--muted);font-size:12px}.order-table button{border:0;background:transparent;color:var(--teal);font-weight:700}.app-dialog:has(.intake-dialog){width:min(920px,calc(100vw - 28px))}.app-dialog{max-height:92vh}.dialog-body{overflow:auto;max-height:calc(92vh - 130px)}
@media(max-width:900px){.context-six{grid-template-columns:repeat(3,1fr)}.herb-edit-row{grid-template-columns:1fr 85px 65px 1fr 36px}}
@media(max-width:620px){.source-banner,.route-banner{align-items:flex-start;flex-direction:column}.source-banner .button{width:100%}.context-six{grid-template-columns:1fr 1fr}.context-six>div:first-child{grid-column:1/-1}.herb-edit-row{grid-template-columns:minmax(0,1fr) 72px 58px 36px}.herb-edit-row [data-herb-method]{grid-column:1/-1;grid-row:2}.herb-edit-row [data-remove-herb]{grid-column:4;grid-row:1}.herb-checks{grid-template-columns:1fr 1fr}.toolbar-result{margin-left:0;width:100%}}

/* Round 4 operational workbenches */
.cell-sub{display:block;margin-top:4px;color:var(--muted);font-size:12px}.r4-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.r4-check-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;background:#f4f8f7;border:1px solid var(--line);border-radius:6px}.r4-check-list label{display:flex;align-items:center;gap:8px;font-weight:600}.r4-indicator-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px}.r4-indicator{min-height:136px;padding:14px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;color:var(--ink)}.r4-indicator:hover{border-color:var(--teal);background:#f6fbfa}.r4-indicator.alert{border-left:4px solid #d78b22}.r4-indicator span,.r4-indicator small{color:var(--muted)}.r4-indicator strong{font-size:27px;color:#073b43}.r4-indicator b{font-size:15px}.ai-result pre{white-space:pre-wrap;word-break:break-word;font-family:inherit;line-height:1.65;margin:10px 0 0}
@media(max-width:1050px){.r4-indicator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.r4-two-col{grid-template-columns:1fr}}
@media(max-width:700px){.r4-indicator-grid{grid-template-columns:1fr}.r4-check-list{grid-template-columns:1fr}.r4-indicator{min-height:112px}.r4-indicator strong{font-size:23px}}

/* Unified account login and role session. */
.auth-screen{--auth-bg-image:none;position:fixed;inset:0;z-index:200;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,520px);gap:7vw;align-items:center;padding:48px 7vw;background-color:#123f3b;background-image:var(--auth-bg-image);background-size:cover;background-position:center;color:#fff;overflow:auto}.auth-screen[hidden]{display:none}.auth-screen:before{content:"";position:absolute;inset:0;background:rgba(8,48,43,.88)}.auth-brand,.auth-card{position:relative;z-index:1}.auth-brand{max-width:650px}.auth-brand-mark{display:grid;place-items:center;width:58px;height:58px;margin-bottom:22px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:#fff;color:#164e46;font-size:25px;font-weight:800}.auth-brand>small{color:#9ed1c7;font-weight:700}.auth-brand h1{margin:10px 0 9px;font-size:40px;line-height:1.2}.auth-brand>p{margin:0;color:#d4e7e3;font-size:16px;line-height:1.75}.auth-environment{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;max-width:620px;margin-top:30px;padding:17px 18px;border:1px solid rgba(255,255,255,.24);border-radius:7px;background:rgba(255,255,255,.1)}.auth-environment b{color:#ffd28e}.auth-environment span{grid-column:2;color:#d8e7e4;font-size:12px;line-height:1.65}.auth-card{width:100%;padding:28px 30px 22px;border:1px solid rgba(255,255,255,.4);border-radius:8px;background:#fff;color:#17313a;box-shadow:0 22px 70px rgba(4,24,21,.28)}.auth-card header>small{color:#176e70;font-size:10px;font-weight:800}.auth-card header h2{margin:6px 0;font-size:25px}.auth-card header p{margin:0 0 20px;color:#718187;font-size:12px}.auth-card form{display:grid;gap:13px}.auth-card form>label{display:grid;gap:6px;color:#344e55;font-size:12px;font-weight:700}.auth-input{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;border:1px solid #cbd8d6;border-radius:6px;overflow:hidden}.auth-input>span{padding-left:12px;color:#6a7d81;font-size:10px}.auth-input input,.auth-captcha-row input{min-width:0;height:44px;border:0;outline:0;background:#fff;color:#17313a}.auth-input button{height:44px;padding:0 12px;border:0;background:#fff;color:#176e70;font-size:11px}.auth-captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;border:1px solid #cbd8d6;border-radius:6px;overflow:hidden}.auth-captcha-row input{padding:0 12px}.auth-captcha-row button{border:0;border-left:1px solid #cbd8d6;background:#edf4f2;color:#174d47;font-family:Consolas,monospace;font-size:19px;font-weight:800;letter-spacing:5px}.auth-options{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#607477;font-size:11px}.auth-options label{display:flex;align-items:center;gap:6px}.auth-options button{border:0;background:transparent;color:#607477}.auth-error{min-height:17px;margin:0;color:#b84d4d;font-size:11px}.auth-submit{height:45px;border:0;border-radius:6px;background:#176e70;color:#fff;font-weight:800}.auth-submit:hover{background:#12595b}.auth-submit:disabled{opacity:.6}.auth-accounts{margin-top:18px;padding-top:15px;border-top:1px solid #dbe4e2}.auth-accounts>b,.auth-accounts>span{font-size:11px}.auth-accounts>span{margin-left:8px;color:#758588}.auth-accounts>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.auth-accounts button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:7px 9px;border:1px solid #d7e1df;border-radius:5px;background:#f8faf9;text-align:left}.auth-accounts button:hover{border-color:#77a7a0;background:#edf6f3}.auth-accounts strong{color:#176e70;font-size:11px}.auth-accounts small{overflow:hidden;color:#6d7e82;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.auth-card>footer{margin-top:15px;color:#8a989b;font-size:9px;text-align:center}.auth-locked{overflow:hidden}.auth-locked>.app-shell,.auth-locked>.portal-view{visibility:hidden}.auth-account-menu{position:fixed;right:18px;top:58px;z-index:180;width:270px;padding:16px;border:1px solid #d5e0df;border-radius:7px;background:#fff;color:#17313a;box-shadow:0 16px 45px rgba(18,45,43,.2)}.auth-account-menu small{color:#176e70}.auth-account-menu h3{margin:6px 0 3px}.auth-account-menu p{margin:0;color:#65787c;font-size:11px}.auth-account-menu dl{display:grid;grid-template-columns:65px 1fr;gap:7px;margin:15px 0;font-size:10px}.auth-account-menu dt{color:#7b8a8d}.auth-account-menu dd{margin:0}.auth-account-menu button{width:100%;height:34px;border:1px solid #e0aaaa;border-radius:5px;background:#fff3f3;color:#a44343;font-weight:700}
@media(max-width:820px){.auth-screen{grid-template-columns:1fr;align-content:start;padding:30px 18px}.auth-brand{padding-top:10px}.auth-brand-mark{width:46px;height:46px;margin-bottom:15px}.auth-brand h1{font-size:29px}.auth-brand>p{font-size:13px}.auth-environment{margin-top:18px}.auth-card{max-width:520px;margin:0 auto;padding:22px 20px}.auth-accounts>div{grid-template-columns:1fr}}
.auth-screen{background:#123f3b!important;background-image:none!important}.auth-screen:before{background:rgba(6,37,34,.18)}.auth-locked>.app-shell,.auth-locked>.portal-view{display:none!important}

/* Logistics workbench: visible actions and full-row drill-down. */
.r4-logistics-table{position:relative}.r4-logistics-table .data-table{min-width:1040px}.r4-logistics-table .r4-action-cell{position:sticky;right:0;z-index:2;min-width:150px;background:#fff;box-shadow:-8px 0 12px rgba(22,62,60,.06)}.r4-logistics-table thead .r4-action-cell{z-index:3;background:#f4f8f7}.r4-logistics-table .r4-action-cell button+button{margin-left:8px}.r4-clickable-row{cursor:pointer}.r4-clickable-row:hover td,.r4-clickable-row:focus td{background:#eef7f5}.r4-clickable-row:hover .r4-action-cell,.r4-clickable-row:focus .r4-action-cell{background:#eef7f5}.logistics-toolbar{grid-template-columns:minmax(220px,1fr) 160px auto auto}.logistics-metrics .metric-button:focus{outline:2px solid #168382;outline-offset:2px}
.logistics-metrics .metric-button.selected{border-color:#168382;background:#eef8f5;box-shadow:inset 0 0 0 1px #168382}.toast{top:78px!important;right:22px!important;bottom:auto!important;z-index:190!important}
@media(max-width:700px){.logistics-toolbar{grid-template-columns:1fr}.logistics-toolbar>*{width:100%}.r4-logistics-table .r4-action-cell{min-width:132px}}

/* Shared AI result presentation */
.ai-result{overflow:hidden;padding:0;border-radius:6px;box-shadow:0 1px 2px rgba(18,55,58,.04)}
.ai-result-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--line);background:#f7faf9}
.ai-result-meta div{display:grid;gap:2px;min-width:0}.ai-result-meta b{color:var(--ink);font-size:13px}.ai-result-meta small,.ai-result-meta time{color:var(--muted);font-size:11px}.ai-result-meta time{white-space:nowrap}
.ai-markdown{padding:12px 14px;color:var(--ink);font-size:12px;line-height:1.7;word-break:break-word}
.ai-markdown h4{margin:14px 0 6px;padding-left:9px;border-left:3px solid var(--teal);font-size:13px;line-height:1.5;color:#123f43}.ai-markdown h4:first-child{margin-top:0}
.ai-markdown p{margin:6px 0}.ai-markdown ul,.ai-markdown ol{margin:6px 0 10px;padding-left:22px}.ai-markdown li{margin:4px 0;padding-left:2px}.ai-markdown strong{font-weight:650;color:#123f43}.ai-markdown code{padding:1px 4px;border-radius:3px;background:#edf3f2;font-family:Consolas,monospace;font-size:11px}
.ai-result-note{padding:9px 14px;border-top:1px solid var(--line);background:#fbfcfc;color:var(--muted);font-size:11px}
.ai-message{min-height:74px;margin:10px 0;padding:12px 14px;border:1px solid #e4c792;border-left:3px solid var(--amber);border-radius:5px;background:var(--amber-soft);color:#73501f}.ai-message b,.ai-message p{display:block}.ai-message p{margin:6px 0 0;line-height:1.6}.ai-message.error{border-color:#e6aaa4;border-left-color:#b9463e;background:#fff4f2;color:#8a302a}
.ai-loading{min-height:94px;display:grid;grid-template-columns:18px 1fr;grid-template-rows:auto auto;place-content:center;column-gap:9px;padding:14px;color:var(--ink)}.ai-loading span{grid-row:1/3;width:18px;height:18px;border:2px solid #b7d1cf;border-top-color:var(--teal);border-radius:50%;animation:ai-spin .8s linear infinite}.ai-loading b{font-size:12px}.ai-loading small{color:var(--muted);font-size:11px}.button.is-loading{cursor:wait;opacity:.78}
@keyframes ai-spin{to{transform:rotate(360deg)}}
@media(max-width:640px){.ai-result-meta{align-items:flex-start;flex-direction:column}.ai-result-meta time{white-space:normal}.ai-markdown{padding:11px 12px}}
