:root{--primary: #5645d4;--primary-pressed: #4534b3;--brand-navy: #0a1530;--brand-navy-deep: #070f24;--brand-navy-mid: #1a2a52;--link-blue: #0075de;--brand-orange: #dd5b00;--brand-pink: #ff64c8;--brand-purple: #7b3ff2;--brand-teal: #2a9d99;--brand-green: #1aae39;--brand-yellow: #f5d75e;--card-peach: #ffe8d4;--card-rose: #fde0ec;--card-mint: #d9f3e1;--card-lavender: #e6e0f5;--card-sky: #dcecfa;--card-yellow: #fef7d6;--canvas: #ffffff;--surface: #f6f5f4;--surface-soft: #fafaf9;--hairline: #e5e3df;--hairline-strong: #c8c4be;--ink: #1a1a1a;--charcoal: #37352f;--slate: #5d5b54;--steel: #787671;--stone: #a4a097;--on-dark: #ffffff;--on-dark-muted: #a4a097;color:var(--ink);background:var(--surface);font-family:Inter,Notion Sans,Microsoft YaHei,PingFang SC,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{letter-spacing:0}input,textarea,select{width:100%;border:1px solid var(--hairline);border-radius:8px;padding:10px 12px;color:var(--ink);background:var(--canvas)}textarea{min-height:86px;resize:vertical}h1,h2,h3,p{margin-top:0}h1{margin-bottom:8px;color:var(--on-dark);font-size:46px;line-height:1.12;font-weight:650}h2{color:var(--ink);font-size:28px;line-height:1.25;margin-bottom:10px;font-weight:650}h3{color:var(--charcoal);font-size:18px;line-height:1.4;margin-bottom:0;font-weight:650}.app-shell{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--surface-soft);color:var(--charcoal);border-right:1px solid var(--hairline);padding:24px;display:flex;flex-direction:column;gap:24px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:44px;height:44px;display:grid;place-items:center;background:var(--brand-navy);color:var(--on-dark);border-radius:12px}.brand strong,.brand small{display:block}.brand strong{font-size:18px}.brand small{color:var(--steel);margin-top:2px}.role-nav{display:grid;gap:8px}.role-button{width:100%;border:1px solid transparent;color:var(--charcoal);background:transparent;padding:10px 12px;border-radius:8px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left;font-weight:600}.role-button:hover{background:#efeeec}.role-button.active{background:var(--card-lavender);color:var(--primary-deep, #3a2a99);border-color:#d6b6f6}.sidebar-note{margin-top:auto;display:flex;gap:10px;color:var(--slate);font-size:13px;line-height:1.6}.workspace{padding:24px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:24px}.brand-hero{position:relative;overflow:hidden;background:var(--brand-navy);color:var(--on-dark);border-radius:20px;padding:40px;box-shadow:#0f0f0f33 0 24px 48px -8px}.hero-dots:before,.hero-dots:after{content:"";position:absolute;border-radius:999px;opacity:.92}.hero-dots:before{width:16px;height:16px;right:19%;top:28px;background:var(--brand-pink);box-shadow:82px 68px 0 var(--brand-yellow),-46px 110px 0 var(--brand-teal),140px 134px 0 var(--brand-orange)}.hero-dots:after{width:260px;height:260px;right:-90px;bottom:-110px;border:1px solid rgba(255,255,255,.18);background:transparent}.eyebrow{margin:0 0 8px;color:var(--brand-yellow);text-transform:uppercase;letter-spacing:1px;font-weight:700;font-size:11px}.hero-subtitle{max-width:780px;margin:0;color:var(--on-dark-muted);font-size:16px;line-height:1.55}.topbar-actions{position:relative;z-index:1;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#ffffff14;color:var(--on-dark);font-size:13px;white-space:nowrap}.icon-action{width:32px;height:32px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:8px;color:var(--on-dark);background:#ffffff14;cursor:pointer}.live-dot{width:9px;height:9px;border-radius:50%;background:var(--brand-green);box-shadow:0 0 0 5px #1aae392e}.view-grid{display:grid;gap:16px}.patient-grid{grid-template-columns:1.25fr .85fr .9fr}.doctor-grid,.admin-grid{grid-template-columns:.85fr 1.25fr 1fr}.panel,.stats-strip{background:var(--canvas);border:1px solid var(--hairline);border-radius:12px;padding:20px;box-shadow:#0f0f0f14 0 10px 24px -12px}.wide,.stats-strip{grid-column:1 / -1}.hero-panel{background:var(--brand-navy);color:var(--on-dark);min-height:342px;position:relative;overflow:hidden}.product-hero h2,.product-hero .eyebrow{color:var(--on-dark)}.product-hero p{color:var(--on-dark-muted)}.card-lavender{background:var(--card-lavender)}.card-mint{background:var(--card-mint)}.card-sky{background:var(--card-sky)}.patient-switch,.device-chips,.tabbar,.button-row{display:flex;flex-wrap:wrap;gap:8px}.patient-switch{margin-bottom:24px;position:relative;z-index:1}.patient-switch button,.tabbar button{border:1px solid var(--hairline-strong);background:var(--canvas);color:var(--charcoal);padding:8px 12px;border-radius:999px;cursor:pointer;font-weight:600}.patient-switch button.active,.tabbar button.active{border-color:var(--primary);color:var(--primary);background:var(--card-lavender)}.hero-content,.detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;position:relative;z-index:1}.hero-panel .hero-content{flex-wrap:wrap}.hero-panel .hero-content>div{flex:1 1 100%;min-width:0}.hero-panel .hero-content .risk-badge{flex:1 0 100%;width:100%;justify-content:flex-start;border-radius:14px;padding:12px 16px;white-space:normal;line-height:1.45}.risk-badge{display:inline-flex;align-items:center;justify-content:center;min-width:98px;padding:8px 12px;background:var(--risk-bg);color:var(--risk);border:1px solid var(--risk);border-radius:999px;font-size:13px;font-weight:800;white-space:nowrap}.risk-badge.compact{min-width:58px;padding:5px 8px;font-size:12px}.task-list,.device-mini-list,.list-stack,.form-stack,.message-list,.audit-list{display:grid;gap:11px}.task-list{margin-top:26px;position:relative;z-index:1}.task,.device-mini,.report-line,.alert-item,.task-card,.audit-list div,.course-card{border:1px solid var(--hairline);border-radius:10px;background:var(--surface-soft);padding:12px}.task{display:flex;align-items:center;gap:12px;color:var(--slate);min-height:58px;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}button.task{width:100%;text-align:left;cursor:pointer}.task span{color:inherit;line-height:1.45}.task svg{flex:0 0 auto;color:var(--steel)}.task:hover{border-color:var(--primary);box-shadow:inset 0 0 0 2px #5645d41f}.task.done{background:#0f9f4b;border-color:#0b7d3c;color:#fff;box-shadow:0 14px 30px #0f9f4b47,inset 0 0 0 2px #ffffff38;transform:translateY(-1px)}.task.done svg{color:#fff;stroke-width:3}.task.done span{color:#fff;font-weight:800;text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:#ffffffb8}.task-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px;border:1px dashed rgba(255,255,255,.35);border-radius:12px;background:#ffffff14}.task-compose input{border-color:#ffffff47;background:#fffffff2}.task-compose .primary-button{white-space:nowrap}.section-title{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--primary)}.section-title h3{flex:1}.metric-row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.08)}.metric-row:last-child{border-bottom:0}.metric-row span,.metric-row small,.metric-card span,.metric-card small,.device-mini span,.device-mini small,.report-line small,.task-card small,.audit-list span{color:var(--slate)}.metric-row strong{color:var(--ink);font-size:24px}.metric-row small,.metric-card small{font-size:12px;margin-left:4px}.metric-row.danger strong{color:var(--brand-orange)}.ai-copy{color:var(--charcoal);line-height:1.75}.primary-button,.ghost-button,.danger-button{border:0;border-radius:8px;padding:10px 14px;cursor:pointer;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-weight:650}.primary-button{color:#fff;background:var(--primary)}.primary-button:hover{background:var(--primary-pressed)}.ghost-button{color:var(--ink);background:transparent;border:1px solid var(--hairline-strong)}.danger-button{color:var(--brand-orange);background:var(--card-peach)}.full{width:100%}.timeline,.exception-grid,.insight-grid,.device-grid,.clinical-grid,.assist-grid,.compliance-grid,.rule-grid,.integration-grid,.config-grid,.policy-grid,.route-grid,.user-list,.status-checks,.workbench-grid,.ops-grid,.readiness-list,.mvp-flow{display:grid;gap:12px}.timeline{grid-template-columns:repeat(5,1fr)}.timeline-step{background:var(--surface-soft);border:1px solid var(--hairline);border-radius:12px;padding:14px}.timeline-step span{width:28px;height:28px;display:grid;place-items:center;background:var(--primary);color:#fff;border-radius:50%;margin-bottom:10px;font-weight:800}.timeline-step strong{color:var(--ink)}.timeline-step p{color:var(--slate);font-size:13px;line-height:1.6;margin:8px 0 0}.stats-strip{grid-template-columns:repeat(4,1fr);padding:12px}.metric-card{background:var(--surface-soft);border:1px solid var(--hairline);border-radius:12px;padding:14px;display:grid;gap:8px;min-height:92px}.metric-card svg,.device-card svg,.report-line svg{color:var(--primary)}.metric-card strong{color:var(--ink);font-size:25px}.patient-list{display:grid;align-content:start;gap:10px}.patient-row{border:1px solid var(--hairline);background:var(--canvas);border-radius:10px;padding:12px;display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;cursor:pointer}.patient-row.active{border-color:var(--primary);background:var(--card-lavender)}.patient-row strong,.patient-row small,.device-mini strong,.device-mini span,.device-mini small,.report-line strong,.report-line small,.task-card strong,.task-card small,.audit-list strong,.audit-list span{display:block}.patient-row small{color:var(--slate);margin-top:3px}.device-chips{margin:14px 0 18px}.device-chips span{padding:7px 10px;background:var(--card-sky);color:var(--charcoal);border-radius:999px;font-size:13px;font-weight:700}.clinical-grid{grid-template-columns:repeat(2,1fr)}.doctor-next{display:flex;gap:10px;margin-top:16px;padding:14px;border-radius:10px;color:var(--brand-orange);background:var(--card-peach);line-height:1.6}.report-box{background:var(--surface-soft);border:1px dashed var(--hairline-strong);border-radius:10px;padding:14px}.report-box strong,.alert-item strong,.task-card strong,.device-card strong{color:var(--ink)}.report-box p{margin:10px 0;color:var(--slate);line-height:1.65}.inline-form{display:flex;gap:8px;margin-top:12px}.inline-form .primary-button{flex:0 0 auto}.form-stack label,.rule-grid label,.config-grid label,.policy-grid label{color:var(--slate);font-size:13px;font-weight:700}.form-stack input,.form-stack textarea,.form-stack select,.rule-grid input,.config-grid input,.config-grid select,.policy-grid input,.policy-grid select{margin-top:6px}.message-item{width:88%;border:1px solid var(--hairline);border-radius:10px;background:var(--surface-soft);padding:11px}.message-item.from-patient{margin-left:auto;background:var(--card-mint);border-color:#b9dfc3}.message-item strong,.message-item small{display:block}.message-item p{margin:6px 0;color:var(--charcoal);line-height:1.6}.message-item small,.alert-item small,.course-card small{color:var(--steel);font-size:12px}.status-pill{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;font-size:12px;font-weight:800}.status-pill.signed{color:var(--brand-green);background:var(--card-mint)}.status-pill.draft{color:#8b6f00;background:var(--card-yellow)}.search-box{display:flex;align-items:center;gap:8px;border:1px solid var(--hairline);border-radius:10px;padding:0 10px;background:var(--canvas)}.search-box svg{color:var(--steel);flex:0 0 auto}.search-box input{border:0;padding-left:0}.span-2{grid-column:span 2}.rule-grid{grid-template-columns:repeat(4,1fr);margin-bottom:16px}.data-table{display:grid;border:1px solid var(--hairline);border-radius:10px;overflow:hidden}.data-row{display:grid;grid-template-columns:1.1fr 1.45fr .9fr .7fr 1.4fr;gap:10px;align-items:center;padding:12px;border-bottom:1px solid var(--hairline)}.data-row:last-child{border-bottom:0}.data-row.head{background:var(--surface);color:var(--ink)}.data-row span{min-width:0;color:var(--charcoal)}.device-grid,.integration-grid{grid-template-columns:repeat(2,1fr)}.device-card{display:flex;gap:12px;min-height:160px;padding:16px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--hairline)}.integration-card,.user-card,.route-card{border:1px solid var(--hairline);border-radius:12px;background:var(--surface-soft);padding:16px}.integration-head,.user-card{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.integration-head strong,.integration-head span,.user-card strong,.user-card span,.user-card small,.route-card strong,.route-card span,.route-card small{display:block}.integration-head span,.user-card span,.user-card small,.route-card span,.route-card small,.config-result{color:var(--slate)}.status-toggle{border:1px solid var(--hairline-strong);border-radius:999px;background:var(--surface);color:var(--slate);padding:7px 12px;cursor:pointer;font-weight:800}.status-toggle.on{background:var(--card-mint);color:var(--brand-green);border-color:#b9dfc3}.config-grid,.policy-grid{grid-template-columns:repeat(3,1fr);margin:14px 0}.route-grid{grid-template-columns:repeat(2,1fr)}.route-card{width:100%;text-align:left;cursor:pointer}.route-card.enabled{background:var(--card-mint);border-color:#b9dfc3}.user-list{margin-top:14px}.flow-box{display:grid;gap:8px;margin:12px 0}.config-result{margin:0;line-height:1.6}.device-card svg{flex:0 0 auto}.device-card small{display:block;color:var(--slate);margin:4px 0 10px}.device-card p{color:var(--charcoal);line-height:1.6;margin:0 0 12px;font-size:14px}.exception-grid{grid-template-columns:repeat(4,1fr)}.exception-card{text-align:left;border:1px solid var(--hairline);border-radius:12px;padding:16px;cursor:pointer;background:var(--surface-soft)}.exception-card.red{background:var(--card-rose)}.exception-card.orange{background:var(--card-peach)}.exception-card.yellow{background:var(--card-yellow)}.exception-card.green{background:var(--card-mint)}.exception-card strong,.exception-card span,.exception-card small{display:block}.exception-card span{margin:8px 0;font-size:28px;color:var(--ink);font-weight:700}.exception-card small{color:var(--slate)}.insight-grid{grid-template-columns:repeat(4,1fr)}.insight-grid>div,.assist-grid>div,.compliance-grid>strong{border:1px solid var(--hairline);background:var(--surface-soft);border-radius:12px;padding:14px}.mini-chart{display:flex;align-items:end;gap:8px;height:112px;margin-top:14px}.mini-bar{flex:1;min-width:22px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;align-items:center}.mini-bar span{width:100%;border-radius:6px 6px 2px 2px}.mini-bar small{color:var(--steel);font-size:11px}.event-rail{display:flex;gap:6px;margin-top:18px}.event-segment{flex:1;border-radius:10px;background:var(--card-lavender);padding:12px 6px;text-align:center}.event-segment strong,.event-segment span{display:block}.event-segment span{color:var(--slate);font-size:12px}.assist-grid{grid-template-columns:repeat(2,1fr)}.assist-grid strong,.assist-grid span{display:block}.assist-grid span{margin-top:8px;color:var(--charcoal)}.assist-grid .ok{color:var(--brand-green)}.assist-grid .bad{color:var(--brand-orange)}.share-link{margin-top:10px;padding:10px;border-radius:8px;color:var(--link-blue);background:var(--card-sky);word-break:break-all;font-size:13px}.course-card span{display:block;height:8px;background:#ffffffa6;border-radius:999px;overflow:hidden;margin-top:10px}.production-card{background:var(--brand-navy);color:var(--on-dark)}.production-card h3,.production-card .section-title{color:var(--on-dark)}.progress-ring,.production-score{display:grid;place-items:center;gap:4px;min-height:112px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:#ffffff14;margin-bottom:12px}.progress-ring strong,.production-score strong{font-size:34px;color:var(--on-dark)}.production-score{background:var(--brand-navy);color:var(--on-dark)}.status-checks,.readiness-list{grid-template-columns:repeat(2,1fr)}.status-checks span,.readiness-list span{border:1px solid var(--hairline);border-radius:999px;padding:8px 10px;background:var(--surface-soft);color:var(--slate);font-size:12px;font-weight:800;text-align:center}.status-checks span.ok,.readiness-list span.ok{background:var(--card-mint);color:var(--brand-green);border-color:#b9dfc3}.care-card span{display:block;height:8px;background:var(--hairline);border-radius:999px;overflow:hidden;margin:10px 0}.care-card i{display:block;height:100%;background:var(--primary)}.care-card p{margin:0;color:var(--charcoal);line-height:1.6}.workbench-grid,.ops-grid{grid-template-columns:repeat(4,1fr)}.workbench-grid>div,.ops-card{border:1px solid var(--hairline);border-radius:12px;background:var(--surface-soft);padding:14px}.workbench-grid strong,.workbench-grid span,.ops-card strong,.ops-card span,.ops-card small{display:block}.workbench-grid strong{font-size:28px;color:var(--ink)}.workbench-grid span,.ops-card small{color:var(--slate)}.ops-card.healthy{background:var(--card-mint);border-color:#b9dfc3}.ops-card span{margin:8px 0;color:var(--brand-green);font-weight:800}.course-card i{display:block;height:100%;background:var(--primary);border-radius:999px}.compliance-card{background:var(--brand-navy);color:var(--on-dark)}.compliance-card h3,.compliance-card .section-title{color:var(--on-dark)}.compliance-grid{grid-template-columns:repeat(4,1fr)}.compliance-grid>strong{display:block;background:#ffffff14;border-color:#ffffff29;color:var(--on-dark);font-size:28px}.compliance-grid small{display:block;color:var(--on-dark-muted);margin-top:6px;font-size:12px}.empty{color:var(--steel);border:1px dashed var(--hairline-strong);border-radius:10px;padding:18px;text-align:center}.toast{position:fixed;right:22px;bottom:22px;background:var(--brand-navy);color:var(--on-dark);padding:13px 16px;border-radius:12px;box-shadow:#0f0f0f33 0 18px 38px;z-index:20}.api-error{margin:-8px 0 16px;padding:12px 14px;border-radius:10px;background:var(--card-peach);color:var(--brand-orange);border:1px solid rgba(221,91,0,.28);font-weight:650}@media(max-width:1120px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.role-nav{grid-template-columns:repeat(3,1fr)}.patient-grid,.doctor-grid,.admin-grid{grid-template-columns:1fr 1fr}.hero-panel,.stats-strip,.wide{grid-column:1 / -1}.timeline,.device-grid,.exception-grid,.insight-grid,.compliance-grid,.rule-grid,.integration-grid,.config-grid,.policy-grid,.route-grid,.workbench-grid,.ops-grid{grid-template-columns:repeat(2,1fr)}.span-2{grid-column:1 / -1}}@media(max-width:720px){.workspace,.sidebar{padding:16px}.brand-hero{padding:28px}.topbar,.hero-content,.detail-head{flex-direction:column}.task-compose,.role-nav,.patient-grid,.doctor-grid,.admin-grid,.stats-strip,.timeline,.device-grid,.clinical-grid,.assist-grid,.exception-grid,.insight-grid,.compliance-grid,.rule-grid,.integration-grid,.config-grid,.policy-grid,.route-grid,.workbench-grid,.ops-grid,.status-checks,.readiness-list,.data-row{grid-template-columns:1fr}.topbar-actions{width:100%;justify-content:space-between}h1{font-size:36px}h2{font-size:22px}}
