:root {
  --brand: #1c63e9;
  --brand-2: #174fc2;
  --brand-soft: #eaf1ff;
  --cyan: #0e9fb0;
  --mint: #e8f8f4;
  --orange: #e97b22;
  --orange-soft: #fff3e8;
  --red: #df4b4b;
  --red-soft: #ffeded;
  --green: #23946b;
  --green-soft: #e9f7f1;
  --ink: #172033;
  --text: #4a556b;
  --muted: #8490a4;
  --line: #e7ebf1;
  --surface: #ffffff;
  --canvas: #f5f7fa;
  --nav: #101b35;
  --shadow: 0 12px 35px rgba(28, 48, 85, .08);
  --shadow-sm: 0 4px 15px rgba(28, 48, 85, .07);
  --radius: 16px;
  --radius-sm: 11px;
  font-family: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--canvas);
}

* { box-sizing: border-box; }
body { margin: 0; min-width: 1180px; min-height: 100vh; background: var(--canvas); color: var(--ink); }
button, input, textarea, select { font: inherit; }
button { border: 0; cursor: pointer; }
button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 3px solid rgba(28,99,233,.18); outline-offset: 2px; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 224px minmax(0, 1fr); }
.sidebar { position: fixed; inset: 0 auto 0 0; width: 224px; padding: 24px 14px; display: flex; flex-direction: column; background: var(--nav); color: #fff; z-index: 20; }
.brand { display: flex; align-items: center; gap: 11px; padding: 0 10px 24px; }
.brand-mark { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; background: linear-gradient(145deg,#448bff,#1558d5); box-shadow: 0 8px 18px rgba(0,96,255,.3); font-weight: 700; font-size: 22px; }
.brand-name { font-size: 18px; font-weight: 700; letter-spacing: .04em; }
.brand-sub { font-size: 10px; color: #8fa1c6; margin-top: 2px; letter-spacing: .08em; }
.nav-label { color: #66799f; font-size: 11px; padding: 16px 14px 8px; letter-spacing: .08em; }
.nav-item { width: 100%; padding: 12px 14px; margin: 3px 0; border-radius: 10px; display: flex; gap: 11px; align-items: center; color: #aebbd3; background: transparent; text-align: left; transition: .18s ease; }
.nav-item:hover { background: rgba(255,255,255,.07); color: #fff; }
.nav-item.active { background: linear-gradient(90deg,rgba(48,116,243,.95),rgba(38,101,221,.8)); color: #fff; box-shadow: 0 8px 22px rgba(0,81,220,.25); }
.nav-icon { width: 22px; text-align: center; font-size: 17px; }
.sidebar-bottom { margin-top: auto; }
.system-card { margin: 12px 4px 4px; padding: 13px; border-radius: 12px; background: rgba(255,255,255,.06); color: #9fafca; font-size: 11px; line-height: 1.6; }
.system-card strong { color: #fff; display: flex; align-items: center; gap: 7px; font-size: 12px; }
.online-dot { width: 7px; height: 7px; border-radius: 50%; background: #45d8a0; box-shadow: 0 0 0 4px rgba(69,216,160,.12); }

.main { grid-column: 2; min-width: 0; }
.topbar { height: 70px; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--line); display: flex; align-items: center; padding: 0 28px; position: sticky; top: 0; z-index: 15; backdrop-filter: blur(10px); }
.page-title { font-size: 18px; font-weight: 700; }
.breadcrumb { font-size: 12px; color: var(--muted); margin-top: 3px; }
.top-actions { margin-left: auto; display: flex; align-items: center; gap: 12px; }
.mode-switch { display: flex; gap: 3px; padding: 4px; background: #eef1f5; border-radius: 11px; }
.mode-btn { padding: 7px 12px; border-radius: 8px; background: transparent; color: #69758a; font-size: 12px; }
.mode-btn.active { background: white; color: var(--brand); box-shadow: 0 2px 8px rgba(27,44,76,.1); font-weight: 600; }
.icon-btn { width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center; background: #f3f5f8; color: #657187; font-size: 17px; position: relative; }
.icon-btn:hover { background: var(--brand-soft); color: var(--brand); }
.notification-dot { position: absolute; width: 7px; height: 7px; background: #f05c5c; border: 2px solid white; border-radius: 50%; right: 7px; top: 6px; }
.user { display: flex; align-items: center; gap: 9px; margin-left: 3px; }
.avatar { width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center; background: linear-gradient(145deg,#d6e5ff,#a8c8ff); color: #174fc2; font-weight: 700; overflow: hidden; }
.avatar.green { background: linear-gradient(145deg,#d5f4ea,#a9dfcd); color: #137553; }
.avatar.orange { background: linear-gradient(145deg,#ffe4c9,#ffc382); color: #9c5115; }
.user-name { font-size: 13px; font-weight: 600; }
.user-role { font-size: 10px; color: var(--muted); margin-top: 2px; }
.content { padding: 24px 28px 42px; }

.hero { min-height: 192px; padding: 30px 34px; border-radius: 20px; color: white; background: linear-gradient(115deg,#185bd9 0%,#2778eb 63%,#39a4d8 100%); position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr 340px; align-items: center; box-shadow: 0 16px 34px rgba(32,103,225,.18); }
.hero:before,.hero:after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.12); }
.hero:before { width:320px;height:320px;right:-65px;top:-185px; }
.hero:after { width:210px;height:210px;right:115px;bottom:-160px; }
.hero h1 { margin:0 0 10px; font-size:29px; letter-spacing:.01em; }
.hero p { margin:0; color:rgba(255,255,255,.78); font-size:13px; }
.hero-tags { display:flex;gap:8px;margin-top:20px; }
.hero-tag { padding:6px 10px;border-radius:20px;background:rgba(255,255,255,.13);font-size:11px;border:1px solid rgba(255,255,255,.12); }
.hero-visual { position:relative;height:140px; }
.orbit { position:absolute;border-radius:50%;border:1px dashed rgba(255,255,255,.3);width:140px;height:140px;right:63px;top:0;animation:spin 22s linear infinite; }
@keyframes spin { to { transform:rotate(360deg) } }
.ai-orb { position:absolute;right:101px;top:38px;width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:rgba(255,255,255,.95);color:var(--brand);font-size:28px;box-shadow:0 12px 35px rgba(3,45,126,.25); }
.float-chip { position:absolute;padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.92);color:#1d4e99;font-size:11px;box-shadow:0 8px 20px rgba(13,58,131,.2); }
.float-chip.one { right:225px;top:17px; }.float-chip.two { right:2px;top:36px; }.float-chip.three { right:202px;bottom:8px; }

.section-head { display:flex;align-items:flex-end;justify-content:space-between;margin:24px 2px 13px; }
.section-title { margin:0;font-size:17px; }.section-sub { font-size:11px;color:var(--muted);margin-top:4px; }
.link-btn { background:transparent;color:var(--brand);font-size:12px;padding:4px; }
.grid-4 { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px; }
.grid-3 { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.grid-2 { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.service-card { background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px;min-height:150px;transition:.2s ease;position:relative;overflow:hidden; }
.service-card:hover { transform:translateY(-3px);box-shadow:var(--shadow);border-color:#dbe4f3; }
.service-icon { width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:21px;background:var(--brand-soft);color:var(--brand);margin-bottom:15px; }
.service-icon.green{background:var(--green-soft);color:var(--green)} .service-icon.orange{background:var(--orange-soft);color:var(--orange)} .service-icon.purple{background:#f2edff;color:#7355c8}
.service-card h3 { font-size:14px;margin:0 0 7px; }.service-card p { font-size:11px;line-height:1.7;color:var(--muted);margin:0; }
.arrow-circle { position:absolute;right:15px;top:17px;width:27px;height:27px;border-radius:50%;background:#f6f8fb;display:grid;place-items:center;color:#98a3b5;font-size:13px; }
.service-card:hover .arrow-circle { background:var(--brand);color:white; }
.quick-card { background:white;border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;align-items:center;gap:14px; }
.quick-card .big { font:700 27px "Outfit",sans-serif; }.quick-card .label { font-size:11px;color:var(--muted); }

.panel { background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm); }
.panel-head { min-height:57px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 18px;gap:10px; }
.panel-title { font-size:14px;font-weight:650; }.panel-sub { font-size:11px;color:var(--muted);margin-left:4px; }.panel-body { padding:18px; }
.status { display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:20px;font-size:10px;background:#f0f2f6;color:#677286;white-space:nowrap; }
.status.blue{background:var(--brand-soft);color:var(--brand)} .status.green{background:var(--green-soft);color:var(--green)} .status.orange{background:var(--orange-soft);color:var(--orange)} .status.red{background:var(--red-soft);color:var(--red)}
.primary-btn,.secondary-btn,.ghost-btn,.danger-btn { height:38px;border-radius:9px;padding:0 16px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:7px; }
.primary-btn { background:var(--brand);color:white;box-shadow:0 5px 14px rgba(28,99,233,.2); }.primary-btn:hover{background:var(--brand-2)}
.secondary-btn { background:var(--brand-soft);color:var(--brand); }.secondary-btn:hover{background:#dae7ff}
.ghost-btn { background:white;border:1px solid var(--line);color:#566176; }.ghost-btn:hover{border-color:#b9c8e2;color:var(--brand)}
.danger-btn { background:var(--red-soft);color:var(--red); }
.btn-sm { height:31px;padding:0 11px;font-size:11px;border-radius:8px; }

.chat-layout { display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:16px;height:calc(100vh - 118px);min-height:650px; }
.chat-panel { display:flex;flex-direction:column;min-height:0; }.chat-header { padding:17px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px; }
.bot-avatar { width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#2b76f1,#1951c6);color:white;font-size:20px;box-shadow:0 7px 16px rgba(28,99,233,.22); }
.chat-scroll { flex:1;overflow:auto;padding:22px 24px;background:linear-gradient(#fff,#fbfcfe); }
.message { display:flex;gap:10px;margin:0 0 18px;max-width:82%; }.message.user-msg { margin-left:auto;flex-direction:row-reverse; }
.msg-avatar { width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--brand-soft);font-size:13px;flex:none; }
.bubble { padding:11px 14px;border-radius:5px 14px 14px 14px;background:#f0f4f9;color:#46536a;font-size:12px;line-height:1.75; }.user-msg .bubble{background:var(--brand);color:white;border-radius:14px 5px 14px 14px;}
.msg-time{font-size:9px;color:#a1aaba;margin-top:5px}.user-msg .msg-time{text-align:right}
.suggestions{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px 40px}.suggestion{background:white;border:1px solid #dce4f0;color:#53637b;border-radius:18px;padding:7px 11px;font-size:11px}.suggestion:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}
.chat-input-wrap{padding:13px 17px;border-top:1px solid var(--line);}.chat-input{display:flex;align-items:flex-end;gap:9px;padding:8px;border:1px solid #dfe5ee;border-radius:13px;background:#fff}.chat-input textarea{border:0;resize:none;flex:1;min-height:30px;max-height:80px;padding:6px 8px;color:var(--ink)}.chat-send{width:36px;height:36px;border-radius:10px;background:var(--brand);color:#fff;font-size:16px}.voice-btn.listening{background:var(--red-soft);color:var(--red);animation:pulse 1.2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 7px rgba(223,75,75,.1)}}
.side-list{padding:8px}.faq-item{padding:12px 11px;border-bottom:1px solid #f0f2f5;font-size:11px;color:#59657a;display:flex;gap:9px;align-items:flex-start;cursor:pointer}.faq-item:hover{color:var(--brand);background:#f8faff}.faq-num{font:600 11px "Outfit";color:#a3adbc}.channel-row{display:flex;gap:7px;flex-wrap:wrap;padding:14px}.channel{padding:7px 9px;border-radius:8px;background:#f4f6f9;color:#667287;font-size:10px}

.workflow { display:grid;grid-template-columns:255px minmax(0,1fr) 320px;gap:15px;height:calc(100vh - 118px);min-height:680px; }
.patient-list { overflow:hidden; }.search-box{margin:12px;padding:9px 11px;background:#f5f7fa;border-radius:9px;display:flex;gap:7px;align-items:center}.search-box input{width:100%;border:0;background:transparent;font-size:11px}.patient-tabs{display:flex;padding:0 12px 9px;gap:5px}.tab{padding:6px 10px;border-radius:7px;background:transparent;color:var(--muted);font-size:10px}.tab.active{background:var(--brand-soft);color:var(--brand);font-weight:600}.patient-row{padding:13px 14px;border-top:1px solid #f0f2f5;display:flex;gap:10px;cursor:pointer;position:relative}.patient-row:hover{background:#f9fbfe}.patient-row.active{background:#edf4ff}.patient-row.active:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;background:var(--brand);border-radius:0 3px 3px 0}.patient-info{flex:1;min-width:0}.patient-name{font-size:12px;font-weight:600;display:flex;justify-content:space-between}.patient-meta{font-size:10px;color:var(--muted);margin-top:4px}.patient-reason{font-size:10px;color:#5d6879;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workspace-main{overflow:auto}.patient-banner{padding:16px 18px;display:flex;gap:13px;align-items:center;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#fff,#f8fbff)}.patient-banner h2{font-size:16px;margin:0 0 5px}.patient-banner p{font-size:10px;color:var(--muted);margin:0}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-left:auto}.info-pill{padding:7px 10px;border-left:1px solid var(--line)}.info-pill span{display:block;font-size:9px;color:var(--muted)}.info-pill strong{display:block;font-size:11px;margin-top:3px}.record-tabs{height:48px;padding:0 17px;display:flex;align-items:end;border-bottom:1px solid var(--line);gap:20px;position:sticky;top:0;background:#fff;z-index:3}.record-tab{height:47px;background:transparent;color:#7b879b;font-size:11px;border-bottom:2px solid transparent}.record-tab.active{color:var(--brand);border-color:var(--brand);font-weight:600}.record-content{padding:17px}.record-section{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}.record-section-head{height:42px;padding:0 13px;background:#f8f9fb;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600}.record-field{display:grid;grid-template-columns:82px 1fr;border-top:1px solid #f0f2f5;min-height:46px}.record-field label{padding:12px;background:#fbfcfd;font-size:10px;color:var(--muted);border-right:1px solid #f0f2f5}.record-field textarea,.record-field input{border:0;padding:10px 12px;font-size:11px;line-height:1.65;color:#334057;resize:vertical;background:white}.ai-mark{background:#eef4ff;color:var(--brand);border-radius:4px;padding:1px 4px;font-size:9px;margin-left:5px}
.ai-side{overflow:auto}.record-control{margin:14px;padding:16px;border-radius:13px;background:linear-gradient(140deg,#122550,#1b3975);color:white;text-align:center}.wave{height:35px;display:flex;align-items:center;justify-content:center;gap:3px;margin:13px 0}.wave i{display:block;width:3px;border-radius:3px;background:#69a1ff;animation:wave 1.1s ease-in-out infinite}.wave i:nth-child(1){height:9px}.wave i:nth-child(2){height:21px;animation-delay:.15s}.wave i:nth-child(3){height:14px;animation-delay:.3s}.wave i:nth-child(4){height:27px;animation-delay:.45s}.wave i:nth-child(5){height:17px;animation-delay:.6s}.wave.paused i{animation-play-state:paused;height:4px}@keyframes wave{50%{height:5px}}
.record-time{font:600 24px "Outfit";letter-spacing:.08em}.record-hint{font-size:10px;color:#9fb3d8;margin-top:4px}.round-btn{width:44px;height:44px;border-radius:50%;background:#fff;color:#1a59cf;font-size:17px;margin-top:12px}.progress-block{padding:14px;border-bottom:1px solid var(--line)}.progress-line{height:6px;border-radius:6px;background:#edf0f4;overflow:hidden;margin:9px 0}.progress-fill{height:100%;width:72%;background:linear-gradient(90deg,var(--brand),#35b2cd);border-radius:6px}.step-list{padding:3px 14px 14px}.step-item{display:flex;gap:10px;padding:10px 0;position:relative}.step-dot{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#eef1f5;color:#9ba5b5;font-size:9px;flex:none}.step-item.done .step-dot{background:var(--green-soft);color:var(--green)}.step-item.active .step-dot{background:var(--brand);color:#fff;box-shadow:0 0 0 4px var(--brand-soft)}.step-title{font-size:11px;font-weight:600}.step-desc{font-size:9px;color:var(--muted);margin-top:3px;line-height:1.5}.action-stack{padding:14px;display:grid;gap:8px}.action-stack button{width:100%}

.report-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px}.upload-box{border:1px dashed #bfcce0;border-radius:13px;padding:24px;text-align:center;background:#fafcff;cursor:pointer}.upload-box:hover{border-color:var(--brand);background:#f4f8ff}.upload-icon{font-size:28px;margin-bottom:9px}.report-item{padding:13px;border:1px solid var(--line);border-radius:11px;margin-top:9px;display:flex;gap:10px;align-items:center;cursor:pointer}.report-item.active{border-color:#adc8ff;background:#f3f7ff}.file-icon{width:36px;height:42px;border-radius:8px;display:grid;place-items:center;background:#eaf1ff;color:var(--brand);font-size:18px}.report-table{width:100%;border-collapse:collapse;font-size:11px}.report-table th{text-align:left;color:var(--muted);font-weight:500;background:#f8f9fb;padding:10px;border-bottom:1px solid var(--line)}.report-table td{padding:11px 10px;border-bottom:1px solid #f0f2f5}.abnormal{color:var(--red);font-weight:600}.indicator{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:5px;background:#93a0b2}.indicator.high{background:var(--red)}.indicator.mid{background:var(--orange)}.analysis-card{margin-top:14px;padding:14px;border-radius:12px;background:#f6f9ff;border:1px solid #dce8ff}.analysis-card h4{font-size:12px;margin:0 0 8px;color:#214b98}.analysis-card p{font-size:11px;color:#55647a;line-height:1.75;margin:0}

.inpatient-grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:15px}.bed-card{padding:13px;border-bottom:1px solid #f0f2f5;cursor:pointer}.bed-card.active{background:#edf4ff;border-left:3px solid var(--brand)}.bed-top{display:flex;justify-content:space-between;align-items:center}.bed-no{font:700 18px "Outfit";color:var(--brand)}.bed-card h4{font-size:12px;margin:8px 0 4px}.bed-card p{font-size:9px;color:var(--muted);margin:0}.mobile-sync{display:flex;align-items:center;gap:6px;color:var(--green);font-size:10px;margin-left:auto}.compliance{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px}.check-card{padding:11px;border-radius:10px;background:#f7f9fc;display:flex;gap:9px;align-items:center}.check-card .score{font:700 20px "Outfit"}.check-card p{font-size:9px;color:var(--muted);margin:2px 0 0}.toolbar{padding:8px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:4px;background:#fafbfc}.tool{min-width:28px;height:27px;border-radius:6px;background:transparent;color:#5f6a7d;font-size:11px}.tool:hover{background:#eaf0fa;color:var(--brand)}.editor{min-height:330px;padding:19px;font-size:11px;line-height:1.9;color:#3e4b60}.editor h3{font-size:15px;text-align:center;margin:0 0 18px}.editor h4{font-size:12px;margin:15px 0 6px}.highlight{background:#fff0bd;border-bottom:1px solid #e5b63d}.annotation{color:var(--red);font-size:9px;margin-left:4px}.bottom-bar{position:sticky;bottom:0;padding:10px 14px;border-top:1px solid var(--line);background:rgba(255,255,255,.95);display:flex;justify-content:space-between;align-items:center;backdrop-filter:blur(8px)}

.modal-backdrop{position:fixed;inset:0;background:rgba(12,22,42,.46);backdrop-filter:blur(4px);z-index:100;display:grid;place-items:center;padding:30px}.modal{width:min(760px,90vw);max-height:90vh;overflow:auto;background:white;border-radius:18px;box-shadow:0 25px 70px rgba(6,23,55,.3);animation:modalIn .2s ease}@keyframes modalIn{from{transform:translateY(8px);opacity:0}}.modal-head{height:64px;padding:0 22px;border-bottom:1px solid var(--line);display:flex;align-items:center}.modal-head h2{font-size:16px;margin:0}.modal-close{margin-left:auto;width:32px;height:32px;border-radius:8px;background:#f2f4f7;color:#687487}.modal-body{padding:22px}.modal-foot{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}.steps{display:flex;margin-bottom:22px}.step{flex:1;position:relative;text-align:center;font-size:10px;color:#9aa4b4}.step:before{content:"";position:absolute;top:10px;left:0;right:0;height:2px;background:#e6eaf0}.step:first-child:before{left:50%}.step:last-child:before{right:50%}.step span{position:relative;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;margin:0 auto 6px;background:#e9edf3;color:#8793a6}.step.done:before,.step.active:before{background:#79a8f6}.step.done span,.step.active span{background:var(--brand);color:white}.step.active{color:var(--brand);font-weight:600}.field{margin-bottom:16px}.field label{display:block;font-size:11px;font-weight:600;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;border:1px solid #dfe4ec;border-radius:9px;padding:10px 11px;font-size:11px;background:white}.field textarea{min-height:80px;resize:vertical}.choice-grid{display:flex;flex-wrap:wrap;gap:8px}.choice{padding:8px 12px;border-radius:9px;background:#f4f6f9;color:#5e6b7e;font-size:11px;border:1px solid transparent}.choice.selected{background:var(--brand-soft);border-color:#9dbdff;color:var(--brand)}.doctor-card{padding:15px;border:1px solid var(--line);border-radius:12px;display:flex;gap:13px;margin-top:10px;align-items:center}.doctor-card h4{font-size:12px;margin:0 0 4px}.doctor-card p{font-size:10px;color:var(--muted);margin:0;line-height:1.5}.doctor-card .primary-btn{margin-left:auto}.recommend-hero{padding:17px;border-radius:13px;background:linear-gradient(120deg,#edf4ff,#f4fbff);border:1px solid #d7e7ff}.recommend-hero h3{font-size:17px;color:var(--brand);margin:4px 0 7px}.recommend-hero p{font-size:11px;color:#5b6c83;margin:0;line-height:1.6}
.ocr-processing{text-align:center;padding:25px}.spinner{width:44px;height:44px;border:4px solid #e4ebf5;border-top-color:var(--brand);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 13px}.success-state{text-align:center;padding:24px}.success-icon{width:58px;height:58px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:27px;margin:0 auto 13px}.success-state h3{font-size:17px}.success-state p{font-size:11px;color:var(--muted);line-height:1.7}
.toast-root{position:fixed;right:24px;top:84px;z-index:200;display:grid;gap:8px}.toast{min-width:250px;padding:12px 15px;border-radius:11px;background:#17243d;color:white;box-shadow:0 12px 30px rgba(5,16,35,.24);font-size:11px;display:flex;gap:9px;align-items:center;animation:toastIn .25s ease}@keyframes toastIn{from{transform:translateX(15px);opacity:0}}.toast.success{background:#176d54}.toast.error{background:#9d3434}
.empty{padding:40px;text-align:center;color:var(--muted);font-size:12px}.mt-14{margin-top:14px}.flex{display:flex}.items-center{align-items:center}.gap-8{gap:8px}.ml-auto{margin-left:auto}.muted{color:var(--muted)}.text-sm{font-size:11px}.divider{height:1px;background:var(--line);margin:14px 0}.hide{display:none!important}

.clinic-workflow { grid-template-columns:220px minmax(0,1fr) 290px; }
.clinic-workflow .patient-banner { gap:10px; }
.clinic-record-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:17px 18px 12px; }
.clinic-record-heading>div { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.clinic-record-heading h3 { margin:0; font-size:16px; }
.clinic-sources { display:flex; flex-wrap:wrap; gap:8px; padding:0 18px 16px; border-bottom:1px solid var(--line); }
.clinic-sources button { height:auto; min-height:32px; white-space:nowrap; padding:8px 10px; }
.clinic-sources button>span { padding-left:5px; color:var(--muted); font-size:9px; font-weight:400; }
.clinic-source-note { color:var(--muted); font-size:11px; line-height:1.8; margin:0 0 14px; }
.clinic-workflow .record-field textarea { width:100%; min-width:0; min-height:64px; }
.clinic-workflow button:disabled,.modal button:disabled { opacity:.45; cursor:not-allowed; box-shadow:none; }
.clinic-ai-body { padding:18px 16px; background:linear-gradient(145deg,#f0f5ff,#fff); }
.clinic-ai-body h3 { font-size:16px; margin:0 0 10px; }
.clinic-ai-body>p,.clinic-quality-box>p { color:var(--muted); font-size:11px; line-height:1.8; margin:0 0 16px; }
.clinic-data-sources { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:16px; }
.clinic-data-sources span { padding:5px 7px; border-radius:6px; background:#eaf0fb; color:#577197; font-size:10px; }
.clinic-generate { width:100%; margin-bottom:8px; }
.clinic-process { display:flex; justify-content:space-between; gap:5px; margin:15px 0 0; font-size:10px; color:var(--muted); }
.clinic-process .done { color:var(--green); }
.clinic-quality-box { margin:0 14px; padding:15px 0; border-top:1px solid var(--line); }
.clinic-quality-box strong { font-size:12px; }
.clinic-quality-box>p { margin:12px 0; }
.clinic-quality-box ul { padding-left:17px; font-size:11px; color:var(--red); line-height:1.8; }
.clinic-quality-box .clinic-quality-pass { color:var(--green); font-size:11px; line-height:1.8; }
.clinic-document-meta { display:flex; justify-content:space-between; flex-wrap:wrap; align-items:center; gap:12px; font-size:12px; }
.clinic-source-value { font-size:12px; line-height:1.8; padding:12px; white-space:pre-line; }
.clinic-modal-links { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.clinic-report-row { display:flex; align-items:center; gap:12px; padding:16px 0; border-bottom:1px solid var(--line); }
.clinic-report-row .file-icon { flex-shrink:0; }
.clinic-report-row>div { flex:1; }
.clinic-report-row h3 { font-size:13px; margin:0 0 7px; }
.clinic-report-row p { font-size:11px; color:var(--muted); line-height:1.7; margin:3px 0; }
.clinic-report-paper { border:1px solid var(--line); border-radius:12px; padding:20px; }
.clinic-report-paper h2 { font-size:17px; margin:0 0 10px; text-align:center; }
.clinic-report-paper h3 { font-size:13px; }
.clinic-report-paper p { font-size:12px; line-height:1.9; }
.clinic-transcript { margin:20px 0; }
.clinic-transcript-line { width:85%; font-size:12px; margin:14px 0; }
.clinic-transcript-line>div { color:var(--muted); font-size:10px; }
.clinic-transcript-line time { margin-left:8px; }
.clinic-transcript-line p { background:#f3f6fb; border-radius:4px 12px 12px; padding:12px; line-height:1.9; white-space:pre-line; margin:6px 0; }
.clinic-transcript-line.is-patient { margin-left:auto; }
.clinic-transcript-line.is-patient p { background:var(--brand-soft); }
.clinic-draft-compare { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); border-radius:10px; overflow:hidden; }
.clinic-draft-compare>* { padding:12px; font-size:11px; border:1px solid #f0f2f5; }
.clinic-draft-compare>strong { background:#f4f7fc; color:var(--brand); }
.clinic-draft-compare p { white-space:pre-line; line-height:1.8; }
.clinic-quality-details>div { display:flex; align-items:center; gap:10px; padding:12px 0; border-bottom:1px solid var(--line); }
.clinic-quality-details p { flex:1; font-size:12px; line-height:1.7; }
.clinic-voice-panel { margin:14px; padding:14px; border-radius:12px; background:linear-gradient(140deg,#152a50,#21467d); color:white; }
.clinic-assistant-heading { position:sticky; top:0; z-index:4; background:white; }
.clinic-voice-panel strong { font-size:12px; }
.clinic-voice-panel .status { background:#ffffff1c; color:#d1e4ff; font-size:9px; }
.clinic-voice-meter { display:flex; justify-content:center; align-items:center; gap:16px; }
.clinic-voice-meter .wave { margin:14px 0; }
.clinic-voice-meter time { font-size:23px; font-variant-numeric:tabular-nums; letter-spacing:2px; }
.clinic-voice-controls { display:flex; flex-wrap:wrap; gap:7px; justify-content:center; }
.clinic-voice-preview { font-size:11px; line-height:1.8; padding:10px; border-radius:7px; background:#ffffff0d; min-height:56px; margin:12px 0 7px; }
.clinic-voice-review { padding:4px 0; color:#b9d9ff; background:transparent; font-size:11px; }
.clinic-voice-panel small { display:block; font-size:9px; color:#91acd2; margin-top:7px; }
.clinic-voice-new { font-size:10px; line-height:1.7; color:#b76f22; margin:0 0 10px; }
.clinic-voice-new[hidden] { display:none; }
.clinic-voice-edit { margin-top:15px; }
.clinic-voice-edit label { display:block; font-size:11px; color:var(--muted); margin-bottom:7px; }
.clinic-voice-edit textarea { display:block; width:100%; resize:vertical; padding:10px; border:1px solid var(--line); border-radius:9px; font-size:12px; line-height:1.8; }
.clinic-voice-edit select { margin-top:7px; padding:6px 9px; border:1px solid var(--line); border-radius:7px; background:white; font-size:11px; }
.clinic-assistant-chat { margin:0 14px 17px; border:1px solid #dde6f4; border-radius:12px; overflow:hidden; background:#fbfcff; }
.clinic-chat-heading { padding:13px 11px; border-bottom:1px solid var(--line); }
.clinic-chat-heading strong { font-size:12px; display:block; }
.clinic-chat-heading>span { font-size:10px; color:var(--muted); display:block; margin-top:5px; }
.clinic-chat-history { max-height:320px; overflow:auto; padding:10px; overflow-wrap:anywhere; }
.clinic-chat-intro { font-size:11px; color:var(--muted); line-height:1.8; margin:0; }
.clinic-chat-message { margin-bottom:13px; }
.clinic-chat-message>span { color:var(--muted); font-size:9px; }
.clinic-chat-message>p { font-size:11px; line-height:1.8; white-space:pre-wrap; margin:5px 0; }
.clinic-chat-message.is-user { background:#eaf1ff; border-radius:9px; padding:9px; }
.clinic-chat-thinking { font-size:11px; color:var(--brand); }
.clinic-chat-prompts { display:flex; flex-wrap:wrap; gap:5px; padding:0 9px 9px; }
.clinic-chat-prompts button { padding:5px 7px; border-radius:6px; border:1px solid #dce6f5; font-size:9px; background:white; color:#657a9b; }
.clinic-chat-composer { margin:0 9px; border:1px solid #dce6f5; background:white; border-radius:9px; padding:8px; }
.clinic-chat-composer textarea { display:block; width:100%; border:0; resize:vertical; background:transparent; font-size:12px; line-height:1.7; min-height:50px; outline:none; }
.clinic-chat-composer button { display:flex; margin:6px 0 0 auto; }
.clinic-chat-hint { color:var(--muted); font-size:9px; line-height:1.7; padding:0 10px; }
.clinic-chat-changes>div { margin-top:9px; border:1px solid #dde6f4; border-radius:8px; padding:9px; background:white; }
.clinic-chat-changes strong { font-size:11px; }
.clinic-chat-changes details { margin:6px 0; color:var(--muted); font-size:10px; }
.clinic-chat-changes summary { cursor:pointer; }
.clinic-chat-changes details p { line-height:1.8; white-space:pre-wrap; }
.clinic-chat-after { font-size:11px; line-height:1.9; white-space:pre-wrap; padding:7px; border-radius:6px; color:#26634d; background:#edf8f2; }
.clinic-chat-change-actions { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.clinic-chat-change-status { display:block; color:var(--muted); font-size:10px; line-height:1.8; margin-top:8px; }

@media(max-width:1250px){.grid-4{grid-template-columns:repeat(2,1fr)}.workflow{grid-template-columns:230px minmax(0,1fr) 285px}.hero{grid-template-columns:1fr 280px}.info-grid{grid-template-columns:repeat(2,1fr)}}

body.patient-mode { min-width:0; height:100dvh; overflow:hidden; background:#edf3f7; }
.patient-mode { --brand:#00b9bf; --brand-2:#009da5; --brand-soft:#e6f8f8; --ink:#172d35; --muted:#83969c; }
.patient-stage { height:100dvh; display:flex; justify-content:center; background:radial-gradient(ellipse at 25% 20%,#e5f3f4,transparent 55%),#edf3f7; }
.patient-app { width:100%; max-width:480px; height:100%; display:flex; flex-direction:column; position:relative; background:radial-gradient(ellipse at 0 10%,#cdefff,transparent 60%),radial-gradient(ellipse at 100% 38%,#d3f2ef,transparent 48%),#e8f3ff; box-shadow:0 0 60px #243d5010; }
.patient-header { min-height:68px; flex-shrink:0; padding:9px 16px; display:flex; align-items:center; justify-content:space-between; background:#f4fcfc8c; border-bottom:1px solid #ffffff80; }
.patient-header>div { text-align:center; }
.patient-header h1 { margin:0 0 3px; font-size:17px; font-weight:600; letter-spacing:.04em; }
.patient-header>div>span { display:flex; align-items:center; justify-content:center; gap:5px; color:#789397; font-size:10px; }
.patient-header i { width:5px; height:5px; background:#31b8a4; border-radius:50%; }
.patient-icon-btn { width:36px; height:40px; flex-shrink:0; display:grid; place-items:center; color:#203d45; background:transparent; border-radius:12px; padding:6px; }
.patient-icon-btn svg { width:24px; height:24px; }
.patient-icon-btn:hover { background:#dff2f3; }
.patient-scroll { flex:1; min-height:0; overflow-y:auto; overscroll-behavior-y:contain; padding:0 14px 24px; scrollbar-width:thin; scrollbar-color:#c2e0e4 transparent; }
.patient-history { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; background:transparent; color:#8ea4ab; font-size:11px; padding:18px 0 16px; }
.patient-history>span { width:28px; height:1px; background:linear-gradient(90deg,transparent,#9cb2b9); }
.patient-history>span:last-child { transform:rotate(180deg); }
.hospital-card { padding:21px 18px 14px; border-radius:24px; background:#ffffffeb; border:1px solid #ffffff; }
.hospital-heading { display:flex; align-items:center; position:relative; min-height:60px; }
.hospital-heading>div { flex:1; position:relative; z-index:1; }
.hospital-card h2 { font-size:21px; letter-spacing:-.04em; margin:0 0 12px; color:#122b33; font-weight:700; }
.hospital-art { width:66px; height:72px; flex-shrink:0; margin-right:-5px; }
.hospital-tags { display:flex; gap:5px; flex-wrap:wrap; }
.hospital-tags span { font-size:10px; padding:2px 4px; line-height:1.3; color:#00acb4; border:1px solid #4bced1; border-radius:4px; white-space:nowrap; }
.hospital-address { display:flex; align-items:center; gap:5px; color:#8b999e; font-size:12px; margin:12px 0; }
.hospital-address svg { width:13px; height:13px; }
.hospital-divider { height:4px; background:repeating-linear-gradient(130deg,transparent 0 5px,#dbe8ed 5px 6px,transparent 6px 9px); opacity:.6; }
.hospital-intro { font-size:13px; color:#64757b; line-height:1.9; margin:14px 0 10px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.hospital-detail { display:flex; align-items:center; justify-content:center; gap:6px; width:100%; padding:8px 0 1px; background:transparent; font-size:13px; color:#00b8be; }
.hospital-detail span { font-size:21px; line-height:1; }
.patient-conversation { margin-top:16px; }
.patient-message { margin-bottom:14px; }
.patient-bot-label { display:flex; align-items:center; gap:6px; color:#64949a; font-size:10px; margin:0 3px 7px; }
.patient-bot-label>span { display:grid; place-items:center; width:17px; height:17px; border-radius:6px; color:#fff; background:linear-gradient(135deg,#1bc8c9,#009eaf); font-size:12px; }
.patient-bubble { padding:16px 17px; background:#ffffff; border-radius:6px 22px 22px 22px; font-size:15px; line-height:1.9; color:#253d44; overflow-wrap:anywhere; white-space:pre-line; }
.patient-user-message { display:flex; justify-content:flex-end; }
.patient-user-message .patient-bubble { max-width:88%; background:#bcece9; border-radius:20px 6px 20px 20px; }
.patient-questions { margin-top:16px; padding:17px; border:1px solid #fff; border-radius:23px; background:#ffffff9c; }
.patient-questions-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.patient-questions h2 { display:flex; align-items:center; gap:6px; color:#00b6bd; font-size:18px; margin:0; }
.patient-questions h2>span { width:20px; height:22px; border-radius:8px 8px 8px 2px; background:#00bbc3; display:grid; place-items:center; font-size:17px; color:#fff; }
.patient-questions-heading>button { display:flex; align-items:center; gap:5px; color:#798b91; font-size:12px; background:transparent; padding:5px 0 5px 8px; }
.patient-questions-heading svg { width:15px; height:15px; }
.patient-question-list { border-radius:15px; background:#e8f4ff; overflow:hidden; }
.patient-question-list button { display:flex; gap:10px; justify-content:space-between; align-items:center; text-align:left; width:100%; min-height:45px; padding:11px 13px; color:#385b67; font-size:13px; line-height:1.5; background:transparent; }
.patient-question-list button+button { border-top:1px solid #daeaf5; }
.patient-question-list button>span:last-child { color:#96b0bb; font-size:16px; }
.patient-question-list button:hover { background:#daedf9; }
.patient-followups { width:fit-content; max-width:100%; margin:9px 0 0; padding:0 2px; }
.patient-followups .patient-questions-heading { justify-content:flex-start; gap:18px; margin-bottom:6px; }
.patient-followups h2 { margin:0; font-size:11px; font-weight:400; color:#7a959e; }
.patient-followups .patient-questions-heading>button { padding:3px 0; font-size:11px; color:#7a959e; }
.patient-followups .patient-questions-heading svg { width:12px; height:12px; }
.patient-followups .patient-question-list { display:flex; flex-direction:column; align-items:flex-start; gap:5px; border-radius:0; background:transparent; overflow:visible; }
.patient-followups .patient-question-list button { width:auto; max-width:100%; min-height:32px; padding:6px 10px; border:1px solid #cde6ed; border-radius:10px; background:#ffffffa6; font-size:12px; line-height:1.5; gap:12px; }
.patient-followups .patient-question-list button>span:first-child { min-width:0; overflow-wrap:anywhere; }
.patient-followups .patient-question-list button>span:last-child { font-size:12px; flex-shrink:0; }
.patient-followups .patient-question-list button:hover { background:#fff; border-color:#8ecdd2; }
.patient-bubble:has(.patient-result-card) { white-space:normal; }
.patient-bubble:has(.health-chat-notice) { white-space:normal; padding:16px; }
.health-library,.health-detail { color:#263f47; overflow-wrap:anywhere; }
.health-hero { padding:22px; border:1px solid #d4e8f1; border-radius:20px; background:linear-gradient(125deg,#f5fbff,#e9faf6); }
.health-category { display:inline-block; padding:4px 9px; border-radius:7px; background:#e5f5f2; color:#218a80; font-size:11px; line-height:1.5; }
.health-hero h2 { font-size:23px; line-height:1.5; margin:13px 0 8px; }
.health-hero p { font-size:13px; color:#6c8992; line-height:1.8; margin:0 0 16px; }
.health-library-heading { display:flex; justify-content:space-between; align-items:baseline; gap:8px; margin:24px 2px 14px; }
.health-library-heading h2 { font-size:18px; margin:0; }
.health-library-heading>span { font-size:11px; color:#79959e; }
.health-search { display:flex; align-items:center; gap:9px; padding:11px 13px; border:1px solid #dcebf0; border-radius:12px; background:#fff; }
.health-search svg { width:18px; height:18px; flex-shrink:0; color:#73939b; }
.health-search input { min-width:0; flex:1; border:0; outline:none; background:transparent; font-size:16px; color:#31535d; }
.health-search:focus-within { border-color:#51b7b2; }
.health-search input::placeholder { color:#8ba0aa; font-size:13px; }
.health-categories { display:flex; flex-wrap:wrap; gap:7px; margin-top:14px; }
.health-categories button { display:flex; align-items:center; gap:5px; padding:8px 10px; border:1px solid transparent; border-radius:9px; background:#f5f9fc; color:#67808c; font-size:12px; }
.health-categories button[aria-pressed="true"] { color:#008c88; border-color:#8acfc9; background:#e5f8f4; }
.health-categories small { font-size:10px; opacity:.75; }
.health-result-count { font-size:11px; color:#77939d; margin:14px 2px 10px; }
.health-article-list { display:grid; gap:12px; }
.health-list-card { padding:18px; border:1px solid #e2ebef; border-radius:17px; background:#fff; }
.health-article-link { display:block; width:100%; padding:0; text-align:left; background:transparent; color:inherit; }
.health-article-link h3 { margin:12px 0 8px; font-size:16px; line-height:1.6; }
.health-article-link p { margin:0; font-size:13px; color:#79909b; line-height:1.8; }
.health-card-footer { display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; align-items:center; margin-top:15px; padding-top:12px; border-top:1px solid #edf3f5; }
.health-card-footer small { color:#849ba5; font-size:10px; }
.health-card-footer button { padding:7px 10px; border-radius:7px; background:#eef8f6; color:#218a80; font-size:11px; }
.health-content-note { font-size:11px; color:#8599a1; line-height:1.8; margin:18px 2px; }
.health-back { display:block; background:transparent; color:#208d87; padding:8px 0; margin-bottom:14px; font-size:13px; text-align:left; }
.health-detail>article { background:#fff; border:1px solid #e0ecf0; border-radius:18px; padding:23px 21px; }
.health-detail h2 { font-size:23px; line-height:1.5; margin:14px 0 9px; }
.health-detail-meta { font-size:11px; color:#819aa3; margin:0 0 20px; }
.health-detail-intro { border-left:3px solid #8fcfc4; background:#f2faf8; padding:12px; border-radius:0 10px 10px 0; color:#537a7d; font-size:14px; line-height:1.9; }
.health-detail section h3 { font-size:16px; color:#287772; margin:26px 0 10px; }
.health-detail section p { font-size:15px; color:#536e78; line-height:2; margin:0; }
.health-detail .health-content-note { padding-top:18px; border-top:1px solid #eaf1f3; margin-bottom:0; }
.health-detail-push { width:100%; margin:16px 0; }
.health-empty { padding:28px 16px; background:#fff; text-align:center; border-radius:16px; }
.health-empty h3 { font-size:16px; }
.health-empty p { font-size:13px; color:#7b939b; }
.health-notice-heading { display:flex; align-items:center; flex-wrap:wrap; gap:6px; font-size:13px; color:#2a7772; }
.health-notice-heading svg { width:18px; height:18px; }
.health-notice-heading>span { margin-left:auto; color:#8a9fa6; font-size:10px; }
.health-push-card { background:linear-gradient(120deg,#f0faf8,#f5faff); border:1px solid #e1eeed; border-radius:12px; padding:14px; margin-top:12px; }
.health-push-card h3 { font-size:15px; line-height:1.6; margin:9px 0 6px; }
.health-push-card p { color:#728c95; font-size:12px; line-height:1.8; margin:0 0 12px; }
.health-push-card>button { display:flex; justify-content:space-between; align-items:center; gap:8px; width:100%; background:transparent; color:#21877f; padding:10px 0 0; border-top:1px solid #dcecea; font-size:12px; text-align:left; }
.health-push-card>button span { font-size:10px; color:#7a959d; }
.health-notice-actions { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; margin-top:12px; }
.health-notice-actions button { padding:5px 0; font-size:12px; background:transparent; color:#27877f; }
.patient-result-card h3 { display:flex; align-items:center; gap:8px; margin:0 0 12px; color:#1e7775; font-size:16px; line-height:1.5; }
.patient-result-card h3>span { display:grid; place-items:center; flex-shrink:0; width:23px; height:23px; border-radius:50%; color:#00a49f; background:#e3f6f0; font-size:14px; }
.patient-result-card>p { margin:8px 0 12px; font-size:13px; line-height:1.8; }
.patient-result-card dl { margin:0; padding:12px; background:#f2f9f9; border-radius:12px; font-size:13px; }
.patient-result-card dl>div { display:grid; grid-template-columns:62px minmax(0,1fr); gap:10px; padding:4px 0; line-height:1.7; }
.patient-result-card dt { color:#8a9da3; }
.patient-result-card dd { margin:0; color:#36545e; overflow-wrap:anywhere; white-space:pre-line; }
.patient-result-card .patient-result-note { color:#84969d; font-size:12px; }
.patient-report-upload { padding:24px 20px; text-align:center; }
.patient-report-hero-icon { display:grid; place-items:center; width:54px; height:54px; margin:0 auto 15px; border-radius:18px; color:#00aaa8; background:#e8f8f5; }
.patient-report-hero-icon svg { width:29px; height:29px; }
.patient-report-upload h2,.patient-report-processing h2 { font-size:20px; margin:0 0 9px; }
.patient-report-upload>p { font-size:13px; color:#8b9ca3; line-height:1.8; margin:0 0 21px; }
.patient-report-drop { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; width:100%; min-height:190px; padding:18px 12px; border:1px dashed #99d6d4; border-radius:16px; background:#f4fbfa; color:#4c727a; }
.patient-report-drop>span:first-child { font-size:35px; color:#5ac7c2; }
.patient-report-drop strong { max-width:100%; font-size:14px; font-weight:500; overflow-wrap:anywhere; }
.patient-report-drop small { font-size:11px; color:#91a6ab; }
.patient-report-drop img { max-width:100%; max-height:180px; object-fit:contain; border-radius:8px; }
.patient-report-file-icon svg { width:45px; height:45px; }
.patient-report-upload>.primary-btn { width:100%; margin-top:22px; }
.patient-report-upload>.primary-btn:disabled { cursor:not-allowed; box-shadow:none; background:#d9e7e9; color:#9bb0b5; }
.patient-report-reference { display:block; margin:15px auto 0; }
.patient-report-upload>.patient-report-note { font-size:11px; color:#95a8af; margin:16px 0 0; }
.patient-report-processing { padding:50px 20px; text-align:center; }
.patient-report-processing .spinner { margin-bottom:25px; }
.patient-report-processing p { font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
.patient-report-analysis-steps { display:grid; gap:12px; margin:30px 0; color:#6b969c; font-size:13px; }
.patient-report-result-heading { display:flex; align-items:center; justify-content:space-between; }
.patient-report-file-name { font-size:14px; margin:12px 0 8px; overflow-wrap:anywhere; }
.patient-report-note { font-size:12px; line-height:1.7; color:#8a9da4; margin:0 0 16px; }
.patient-report-result .report-layout>aside { display:none; }
.patient-mode .modal-foot { flex-wrap:wrap; }
.patient-triage-status { display:flex; align-items:center; justify-content:space-between; gap:8px; margin:0 0 10px; font-size:10px; color:#7f9ba4; }
.patient-triage-status>span { display:flex; align-items:center; gap:5px; }
.patient-triage-status i { width:5px; height:5px; border-radius:50%; background:#31baa9; }
.patient-triage-status button { background:transparent; color:#7298a1; font-size:11px; padding:5px; }
.triage-typing { display:inline-flex; align-items:center; gap:9px; font-size:13px; color:#8aa0a8; }
.triage-typing-dots { display:inline-flex; gap:4px; }
.triage-typing-dots i { width:5px; height:5px; border-radius:50%; background:#45b8b4; animation:triage-typing 1.1s ease-in-out infinite; }
.triage-typing-dots i:nth-child(2) { animation-delay:.15s; }
.triage-typing-dots i:nth-child(3) { animation-delay:.3s; }
.triage-stream-caret { display:inline-block; width:2px; height:1em; margin-left:3px; vertical-align:-2px; background:#45b8b4; animation:triage-typing .8s ease-in-out infinite; }
.triage-stopped { color:#8aa0a8; font-size:11px; margin:8px 0 0; }
.patient-composer .patient-send:disabled { background:#bed9dc; cursor:wait; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@keyframes triage-typing { 0%,80%,100% { opacity:.35; transform:translateY(0); } 40% { opacity:1; transform:translateY(-3px); } }
@media (prefers-reduced-motion:reduce) { .triage-typing-dots i,.triage-stream-caret { animation:none; } }
.triage-chat-choices { display:flex; flex-wrap:wrap; gap:7px; padding:10px 0 0; }
.triage-chat-choices button { max-width:100%; min-height:38px; padding:8px 12px; border:1px solid #c6e4e8; background:#ffffffbf; border-radius:12px; font-size:13px; line-height:1.5; text-align:left; color:#4c7880; transition:background .15s,border-color .15s; }
.triage-chat-choices button.selected { color:#008b8d; border-color:#25b8b4; background:#d6f4ee; box-shadow:inset 0 0 0 1px #25b8b42b; }
.triage-chat-choices button.selected:before { content:'✓ '; }
.triage-chat-choices button:hover { border-color:#58bdbb; }
.triage-choice-footer { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 0 0; }
.triage-choice-footer>span { font-size:10px; color:#88a1aa; }
.patient-mode .triage-choice-footer .secondary-btn { min-height:34px; font-size:12px; padding:7px 12px; }
.triage-choice-footer button:disabled { opacity:.45; cursor:not-allowed; }
.triage-answer-summary { margin:12px 0; padding:10px 12px; background:#f0f9f8; border-radius:12px; }
.triage-answer-summary p { display:grid; grid-template-columns:60px minmax(0,1fr); gap:9px; margin:4px 0; font-size:13px; }
.triage-answer-summary p>span { color:#8da5aa; }
.triage-recommendation-reason { margin:9px 0; color:#5d7c85; font-size:14px; }
.triage-result-eyebrow { display:block; color:#8ca6ac; font-size:11px; margin-bottom:6px; }
.patient-result-card.triage-department-card h3 { color:#127e80; font-size:20px; margin:0 0 6px; }
.triage-result-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.patient-pre-notice-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:12px; color:#7d9da4; font-size:11px; }
.patient-pre-notice>button { margin-top:14px; width:100%; }
.patient-pre-notice h3 { font-size:17px; }
.patient-dock { flex-shrink:0; min-width:0; padding:6px 14px max(8px,env(safe-area-inset-bottom)); background:linear-gradient(180deg,#e8f3ff00,#e8f3fff5 18%); }
.patient-services { display:flex; gap:8px; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; padding:1px 1px 8px; }
.patient-services::-webkit-scrollbar { display:none; }
.patient-services>button { display:flex; flex:none; align-items:center; justify-content:center; gap:5px; min-height:44px; border-radius:22px; background:#ffffffb8; color:#35565f; font-size:12px; white-space:nowrap; padding:7px 11px; }
.patient-services>button:hover,.patient-services>button[aria-current] { background:#fff; box-shadow:0 0 0 1px #80d6d7; }
.patient-services>button:focus-visible { outline:2px solid #00a6ac; outline-offset:-2px; }
.patient-services .patient-service-icon { width:18px; height:18px; }
.patient-services .patient-service-icon svg { width:18px; height:18px; }
.patient-service-icon { display:grid; place-items:center; width:28px; height:28px; color:#00b5b9; }
.patient-service-icon svg { width:26px; height:26px; }
.patient-service-icon.pre { color:#69a0db; }
.patient-service-icon.report { color:#23b6aa; }
.patient-service-icon.health { color:#e6a870; }
.patient-service-icon.skin { color:#e89e9b; }
.patient-service-icon.drug { color:#8e95d1; }
.patient-service-icon.guidance { color:#69a0db; }
.patient-service-icon.reminder { color:#e6a870; }
.care-section-heading,.care-card-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.care-source-note { padding:12px 14px; border-radius:12px; font-size:12px; line-height:1.8; color:#6a8790; background:#e2f0f8; margin:12px 0; }
.care-card { padding:17px; border-radius:17px; background:#fff; border:1px solid #e8f2f4; margin:12px 0; overflow-wrap:anywhere; }
.care-card h3,.care-section-heading h3 { font-size:16px; line-height:1.5; margin:0 0 8px; color:#31555e; }
.care-card>.status+h3 { margin-top:12px; }
.care-card h4 { font-size:13px; color:#288785; margin:16px 0 7px; }
.care-card p { font-size:13px; line-height:1.9; margin:8px 0 13px; color:#65818b; }
.care-card details { padding:10px 12px; border-radius:10px; background:#f1f7fa; font-size:12px; color:#698792; }
.care-card details summary { cursor:pointer; }
.care-card>.primary-btn,.care-card>.secondary-btn { width:100%; }
.care-section-heading { margin:20px 0 8px; }
.care-section-heading h3 { margin:0; }
.care-section-heading>span { font-size:11px; color:#75949d; }
.care-card .care-section-heading { margin:0; flex-wrap:wrap; }
.care-card .care-times { font-size:20px; color:#278e8e; font-weight:600; letter-spacing:.03em; }
.care-card small { font-size:11px; }
.care-dose-list { display:flex; flex-wrap:wrap; gap:7px; margin:14px 0; }
.care-dose { padding:9px 11px; border-radius:10px; color:#278b85; background:#edf8f5; font-size:12px; }
.care-dose.taken { color:#91aaa5; background:#f1f5f4; }
.care-card-actions { flex-wrap:wrap; justify-content:flex-start; gap:15px; padding-top:10px; border-top:1px solid #edf4f6; }
.care-footnote { font-size:11px; line-height:1.8; color:#859da5; margin:14px 0; }
.care-processing,.care-empty { text-align:center; padding:25px 16px; }
.care-processing .spinner { margin-bottom:14px; }
.care-upload-actions { display:flex; gap:10px; margin-top:12px; }
.care-upload-actions>button { flex:1; }
.care-symptoms { text-align:left; }
.care-symptoms textarea { width:100%; box-sizing:border-box; }
.care-drug-info { margin:14px 0; padding:12px; border-radius:12px; background:#f2f8f9; }
.care-drug-info>div { display:flex; gap:14px; padding:7px 0; font-size:13px; }
.care-drug-info dt { color:#859da5; }
.care-drug-info dd { margin:0; color:#38626a; }
.care-date-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.care-date-fields input { min-width:0; max-width:100%; }
.care-confirm-check { display:flex; align-items:flex-start; gap:9px; margin-top:20px; font-size:13px; color:#5e7e89; line-height:1.8; }
.care-confirm-check input { flex-shrink:0; margin-top:5px; }
.care-form-error { color:#c7574e; font-size:12px; line-height:1.8; }
.patient-composer { display:flex; align-items:center; gap:5px; min-height:54px; padding:5px 8px; background:#fff; border-radius:18px; border:1px solid #fff; }
.patient-composer:focus-within { border-color:#88d6d8; }
.patient-composer textarea { flex:1; min-width:0; width:100%; resize:none; border:0; background:transparent; font-size:15px; padding:9px 2px; line-height:1.5; color:#263c45; max-height:96px; }
.patient-composer textarea::placeholder { color:#a9b7c0; font-size:14px; }
.patient-composer textarea:focus { outline:none; }
.patient-composer .patient-send { width:32px; height:32px; color:white; border-radius:11px; background:#00b9bf; }
.patient-send[hidden] { display:none; }
.patient-ai-note { font-size:9px; color:#97acb6; text-align:center; margin:8px 0 0; }
.patient-mode .modal-backdrop { padding:0; align-items:end; background:#163d5066; }
.patient-mode .modal { width:100%; max-width:480px; max-height:90dvh; border-radius:24px 24px 0 0; display:flex; flex-direction:column; box-shadow:0 -8px 40px #213f4926; }
.patient-mode .modal-head { height:auto; min-height:64px; flex-shrink:0; padding:16px 20px; }
.patient-mode .modal-body { overflow:auto; min-height:0; padding:20px; }
.patient-mode .modal-foot { flex-shrink:0; padding:14px 20px max(20px,env(safe-area-inset-bottom)); }
.patient-mode .modal-foot:empty { display:none; }
.patient-mode .modal h2 { font-size:18px; }
.patient-mode .field label,.patient-mode .field input,.patient-mode .field textarea,.patient-mode .field select { font-size:14px; }
.patient-mode .field input,.patient-mode .field textarea,.patient-mode .field select { font-size:16px; }
.patient-mode .field { margin-top:18px; }
.patient-mode .primary-btn,.patient-mode .secondary-btn,.patient-mode .ghost-btn { min-height:40px; height:auto; padding:10px 13px; font-size:13px; }
.patient-mode .choice { font-size:13px; padding:10px 12px; }
.patient-mode .steps { gap:4px; }
.patient-mode .step { font-size:11px; }
.patient-mode .doctor-card { gap:10px; flex-wrap:wrap; }
.patient-mode .doctor-card h4 { font-size:14px; }
.patient-mode .doctor-card p { font-size:12px; }
.patient-mode .analysis-card h4 { font-size:14px; }
.patient-mode .analysis-card p,.patient-mode .success-state p { font-size:13px; }
.patient-mode .recommend-hero p { font-size:13px; }
.patient-mode .toast-root { top:80px; right:auto; left:50%; transform:translateX(-50%); width:min(90%,430px); }
.patient-mode .toast { font-size:13px; min-width:0; }
.patient-subpage { padding-top:18px; }
.patient-subpage .report-layout,.patient-subpage .grid-2,.patient-subpage .grid-3 { display:grid; grid-template-columns:minmax(0,1fr); }
.patient-subpage .panel { min-width:0; overflow:auto; border-radius:18px; }
.patient-subpage .panel-head { padding:12px; flex-wrap:wrap; }
.patient-subpage .panel-title { font-size:16px; }
.patient-subpage .panel-body { padding:14px; }
.patient-subpage .report-table { font-size:12px; min-width:370px; }
.patient-subpage .report-item { font-size:13px; }
.patient-subpage .section-head { align-items:start; gap:14px; flex-direction:column; }
.patient-subpage .section-title { font-size:18px; }
.patient-subpage .service-card h3 { font-size:17px!important; }
.patient-subpage .service-card p { font-size:14px; }
.patient-subpage .grid-3>.panel { grid-column:auto!important; }
.patient-sheet-hint { margin:0 0 16px; color:#80969d; font-size:13px; line-height:1.7; }
.patient-service-sheet { display:grid; gap:10px; }
.patient-service-sheet button { display:grid; grid-template-columns:38px 1fr 16px; column-gap:10px; text-align:left; align-items:center; padding:15px; border-radius:16px; background:#f2f9fa; }
.patient-service-sheet .patient-service-icon { grid-row:span 2; }
.patient-service-sheet strong { font-size:15px; font-weight:500; color:#29474f; }
.patient-service-sheet small { grid-column:2; font-size:12px; color:#88a0a7; margin-top:5px; }
.patient-sheet-arrow { grid-column:3; grid-row:1 / 3; color:#91adb5; }
.patient-history-item { border-bottom:1px solid #edf2f3; padding:14px 0; font-size:14px; color:#36555f; overflow-wrap:anywhere; }
.patient-menu { display:grid; gap:10px; }
.patient-menu button { padding:15px; border-radius:12px; background:#eff8f9; text-align:left; font-size:14px; color:#31575f; }
.patient-hospital-info { font-size:14px; line-height:1.9; color:#5e747d; }
.patient-hospital-info h3 { color:#2b4954; font-size:15px; margin-bottom:0; }
@media (max-width:360px) {
  .patient-scroll { padding-left:10px; padding-right:10px; }
  .hospital-card { padding:18px 14px 12px; }
  .hospital-card h2 { font-size:19px; }
  .hospital-tags { gap:3px; }
  .hospital-tags span { font-size:9px; }
  .hospital-art { width:50px; }
  .patient-bubble { font-size:14px; }
  .patient-dock { padding-left:10px; padding-right:10px; }
  .patient-services { gap:5px; }
  .patient-composer textarea::placeholder { font-size:12px; }
}

/* Outpatient medical record center */
.center-intro { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:2px 0 20px; }
.center-intro h2 { font-size:19px; margin:0 0 9px; letter-spacing:.3px; }
.center-intro p { font-size:12px; color:var(--muted); margin:0; }
.center-metrics .quick-card { text-align:left; position:relative; transition:border-color .2s,box-shadow .2s; }
.center-metrics .quick-card:hover { border-color:#a7c6f7; box-shadow:0 4px 18px #23477509; }
.center-metrics .label { font-size:12px; }
.center-metrics .big { margin-top:10px; color:#253b62; font-size:32px; }
.center-metrics .big small { margin-left:7px; font:400 11px 'Noto Sans SC',sans-serif; color:var(--muted); }
.center-metrics p { margin:8px 0 0; font-size:10px; color:var(--muted); }
.center-metric-arrow { margin-left:auto; align-self:flex-start; background:#edf4ff; color:var(--brand); border-radius:8px; padding:5px 8px; }
.center-list { margin-top:20px; overflow:hidden; }
.center-list-head { padding:20px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.center-list-head h3 { font-size:14px; margin:0 0 7px; }
.center-list-head span { color:var(--muted); font-size:11px; }
.center-search { display:flex; align-items:center; gap:8px; border:1px solid #dfe5ef; border-radius:9px; padding:0 12px; color:var(--muted); min-width:270px; }
.center-search:focus-within { border-color:var(--brand); box-shadow:0 0 0 3px #edf4ff; }
.center-search input { border:0; outline:none; padding:11px 0; background:transparent; font-size:12px; width:100%; }
.center-filters { display:flex; flex-wrap:wrap; gap:7px; padding:0 20px 18px; }
.center-filters button { padding:8px 10px; border-radius:7px; font-size:11px; color:#69798d; background:#f5f7fa; border:1px solid transparent; }
.center-filters button.active { background:#edf4ff; color:var(--brand); border-color:#bad1f8; }
.center-filters b { font-weight:500; margin-left:4px; opacity:.75; }
.center-table-wrap { overflow-x:auto; }
.center-table { min-width:880px; }
.center-table th { padding:13px 16px; white-space:nowrap; }
.center-table td { padding:18px 16px; vertical-align:top; }
.center-table th:first-child { width:20%; }
.center-table th:nth-child(2) { width:20%; }
.center-table th:nth-child(3) { width:16%; }
.center-table tr:hover td { background:#fbfdff; }
.center-patient { display:flex; align-items:center; gap:9px; }
.center-avatar { width:32px; height:32px; display:grid; place-items:center; border-radius:10px; color:#4b73b0; background:#edf3fc; font-size:13px; flex-shrink:0; }
.center-patient strong { font-size:13px; }
.center-patient small { display:block; margin-top:4px; color:var(--muted); font-size:10px; }
.center-reason { margin:10px 0 6px; color:#62738a; font-size:11px; max-width:175px; line-height:1.6; }
.center-sources { display:flex; flex-wrap:wrap; gap:5px; max-width:190px; }
.center-sources button { background:#eff5ff; color:#4d74ad; padding:5px 6px; border-radius:5px; font-size:10px; }
.records-center button:disabled { opacity:.4; cursor:not-allowed; }
.center-source-more { font-size:10px; margin-top:10px; }
.center-progress { height:4px; border-radius:4px; background:#edf0f5; margin:13px 0 7px; max-width:125px; overflow:hidden; }
.center-progress i { display:block; height:100%; background:#7da7e9; }
.center-quality { min-height:30px; }
.center-time { font-size:11px; color:#61728a; margin:4px 0 10px; white-space:nowrap; }
.center-row-actions { display:grid; gap:12px; white-space:nowrap; }
.center-row-actions>div { display:flex; gap:14px; }
.center-row-actions .link-btn { font-size:11px; }
.center-list-foot { display:flex; justify-content:space-between; gap:12px; padding:15px 20px; font-size:10px; color:var(--muted); background:#fbfcfe; }
.center-empty { text-align:center; padding:50px 20px; color:#7f8da0; }
.center-empty strong { font-size:14px; color:#5c6d86; }
.center-empty p { margin:12px 0 20px; }
.center-workflow { display:flex; padding:16px 0; margin:14px 0 0; list-style:none; background:#f8fafc; border-radius:10px; }
.center-workflow li { flex:1; text-align:center; font-size:11px; color:#94a0b1; }
.center-workflow li.done { color:var(--brand); }
.center-source-cards { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0; }
.center-source-cards button { padding:18px; text-align:left; border:1px solid #dfe8f4; border-radius:10px; background:#f8fbff; }
.center-source-cards strong { display:block; font-size:13px; color:#365e95; }
.center-source-cards span { display:block; margin-top:9px; font-size:11px; color:var(--muted); }
.center-version-tabs { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:20px; }
.center-version-note { font-size:12px; color:#61728a; line-height:1.8; margin:20px 0 12px; }
.center-version-full { margin-top:18px; }
.center-version-full summary { color:var(--brand); cursor:pointer; font-size:12px; padding:10px 0; }
.center-field-view { margin-top:16px; }
@media(max-width:1350px) { .center-metrics .quick-card { padding:14px; }.center-metric-arrow { display:none; }.center-filters { gap:5px; }.center-filters button { padding:7px 8px; } }

/* Patient-based report lookup in outpatient HIS. */
.clinic-report-desk { display:grid; grid-template-columns:224px minmax(0,1fr); gap:16px; align-items:stretch; }
.report-patients { position:sticky; top:16px; overflow:hidden; }
.report-patient-hint { font-size:10px; color:var(--muted); padding:0 14px 12px; margin:0; }
.report-patient-results { max-height:calc(100vh - 300px); overflow:auto; }
.report-patients .patient-row { width:100%; text-align:left; background:white; align-items:center; }
.report-patients .patient-row.active { background:#edf4ff; }
.report-patients .patient-info>span { display:block; }
.report-patient-count { color:#6b87af; font-size:10px; margin-top:7px; }
.report-patient-arrow { color:#95a8c3; }
.report-patients .empty { display:grid; gap:15px; padding:28px 12px; }
.report-patient-workspace { min-width:0; }
.report-desk-summary { overflow:hidden; }
.report-desk-summary .patient-banner h2 { display:flex; align-items:center; gap:9px; }
.report-desk-filters { padding:14px 16px; display:flex; flex-wrap:wrap; align-items:end; gap:12px; }
.report-desk-filters .search-box { margin:0; background:#f7f9fc; border:1px solid #dfe5ee; padding:10px; min-width:180px; flex:1; align-self:end; }
.report-desk-filters>label:not(.search-box),.report-desk-dates label { display:grid; gap:6px; font-size:10px; color:var(--muted); }
.report-desk-filters select,.report-desk-filters input[type=date] { background:white; border:1px solid #dfe5ee; border-radius:7px; padding:8px; font-size:11px; color:#4e6078; height:35px; }
.report-desk-dates { display:flex; align-items:end; gap:7px; }
.report-desk-dates>span { color:#a5afbe; padding-bottom:10px; }
.report-desk-filters>.link-btn { font-size:10px; height:35px; }
.report-date-error { color:var(--red); margin:0 16px 14px; font-size:11px; }
.report-desk-columns { display:grid; grid-template-columns:222px minmax(0,1fr); gap:14px; margin-top:14px; align-items:stretch; }
.report-desk-list { overflow:hidden; }
.report-desk-list .panel-title,.report-patients .panel-title { font-size:13px; }
.report-desk-item { display:grid; grid-template-columns:28px minmax(0,1fr); gap:7px 9px; width:100%; padding:17px 14px; background:white; border-top:1px solid #edf1f5; text-align:left; color:#485970; border-left:3px solid transparent; }
.report-desk-item:hover { background:#f8fbff; }
.report-desk-item.active { background:#f0f6ff; border-left-color:var(--brand); }
.report-desk-type { grid-row:1 / 3; font-size:10px; padding:7px 3px; background:#edf3fc; color:#5f80ae; border-radius:6px; align-self:start; text-align:center; }
.report-desk-item strong { font-size:12px; line-height:1.5; }
.report-desk-item small { font-size:10px; color:var(--muted); }
.report-desk-item-meta { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; margin-top:5px; font-size:10px; color:#7c90ad; }
.report-desk-list .empty { padding:30px 18px; font-size:11px; line-height:1.9; }
.report-desk-detail { min-width:0; overflow:hidden; min-height:510px; }
.report-desk-detail .panel-title { font-size:14px; }
.report-desk-detail-meta { padding:18px 20px; display:grid; gap:8px; font-size:11px; color:#6f8199; }
.report-desk-detail-meta strong { color:#40536d; font-size:12px; }
.report-desk-detail-meta small { color:#96a2b3; font-size:10px; }
.report-desk-tabs { display:flex; border-bottom:1px solid var(--line); gap:22px; padding:0 20px; }
.report-desk-tabs button { padding:13px 0; background:transparent; color:#8491a4; font-size:12px; border-bottom:2px solid transparent; }
.report-desk-tabs button.active { color:var(--brand); border-bottom-color:var(--brand); font-weight:600; }
.report-desk-body { padding:20px; }
.report-desk-body .report-table { font-size:11px; }
.report-desk-body .report-table td { line-height:1.7; }
.report-history-note { padding:11px 13px; border-radius:8px; background:#fff8eb; color:#98713b; font-size:11px; line-height:1.8; margin-bottom:15px; }
.report-findings h3,.report-analysis-section { font-size:12px; margin:8px 0 12px; }
.report-findings p { font-size:12px; color:#5b6e88; line-height:1.9; }
.report-desk-analysis-cta { margin-top:24px; padding-top:20px; border-top:1px solid #edf1f7; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
.report-desk-analysis-cta strong { font-size:12px; color:#425975; }
.report-desk-analysis-cta p { margin:7px 0 0; font-size:10px; color:var(--muted); }
.report-desk-placeholder { padding:55px 15px; text-align:center; }
.report-desk-placeholder>span { display:inline-grid; place-items:center; width:50px; height:50px; font-size:24px; border-radius:14px; background:#f0f5fc; color:#7f9fce; }
.report-desk-placeholder h3 { font-size:14px; color:#5b7090; margin-top:20px; }
.report-desk-placeholder p { font-size:11px; color:#8e9db1; line-height:1.8; margin:12px 0 20px; }
.report-analysis-heading { display:flex; align-items:center; gap:10px; font-size:10px; }
.report-analysis-section { margin-top:23px; }
.report-interpretation-item { padding:14px 0; border-bottom:1px solid #edf1f7; }
.report-interpretation-item strong { font-size:12px; color:#455f82; }
.report-interpretation-item p { font-size:11px; color:#7a8ca5; line-height:1.9; margin:7px 0 0; }
.report-analysis-note { font-size:10px; color:#9aa7b7; line-height:1.8; margin-top:20px; }
@media(max-width:1350px) { .clinic-report-desk { grid-template-columns:200px minmax(0,1fr); gap:12px; }.report-desk-columns { grid-template-columns:190px minmax(0,1fr); gap:12px; }.report-desk-filters { gap:10px; }.report-desk-dates { margin-left:0; }.report-desk-body { padding:16px; } }
