/* 老年人智能陪诊终端 · 平板版 设计系统 */
:root{
  --cream:#F8F5F0;
  --green:#87A878;
  --green-deep:#4A6B3C;
  --green-bg:#EDF3E8;
  --green-soft:#EAF3E5;
  --clay:#D89575;
  --clay-warm:#D4A574;
  --clay-deep:#C0703F;
  --clay-ink:#8A6A45;
  --clay-bg:#F7EFE2;
  --clay-bg2:#F9EBE4;
  --red:#C94F3D;
  --red-bg:#FBEEE9;
  --ink:#1F1E1B;
  --gray:#5C5A55;
  --gray-2:#A9A69F;
  --line:#DDD8CE;
  --white:#FFFFFF;
  --radius:24px;
  --shadow:0 8px 24px -4px rgba(31,30,27,.08);
  --scale:1;
}

*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html,body{height:100%}
body{
  font-family:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  background:var(--cream);
  color:var(--ink);
  overflow:hidden;
  font-weight:400;
  user-select:none;
  -webkit-font-smoothing:antialiased;
}

/* ---------- 全屏终端（无外框、无状态栏，按设计稿铺满整屏） ---------- */
.viewport{
  width:100%;height:100%;
  overflow:hidden;position:relative;
  background:var(--cream);
}

/* ---------- 屏幕容器 ---------- */
.screens{position:absolute;inset:0;overflow:hidden}
.screen{
  position:absolute;inset:0;
  display:none;flex-direction:column;
  padding:28px 30px 32px;gap:22px;
  background:var(--cream);
}
.screen.active{display:flex;animation:fade .22s ease}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* 背景柔光 */
.screen::before,.screen::after{content:"";position:absolute;pointer-events:none}
.screen::before{width:520px;height:520px;right:-180px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(135,168,120,.20),rgba(135,168,120,0) 70%)}
.screen::after{width:460px;height:460px;left:-160px;bottom:-160px;border-radius:50%;background:radial-gradient(circle,rgba(216,149,117,.16),rgba(216,149,117,0) 70%)}
.screen>*{position:relative;z-index:1}

/* ---------- 通用组件 ---------- */
.card{
  background:var(--white);border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.btn{
  border:none;background:none;font:inherit;color:inherit;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:12px;
  border-radius:var(--radius);transition:transform .12s ease,box-shadow .12s ease;
}
.btn:active{transform:scale(.98)}
.btn-primary{background:var(--green);color:var(--white);font-weight:600}
.btn-ghost{background:var(--white);border:2px solid var(--line);color:var(--gray);font-weight:600}
.btn-block{width:100%}
.ico{display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.ico svg{width:100%;height:100%;display:block}
.ico-56{width:56px;height:56px}
.ico-48{width:48px;height:48px}
.ico-44{width:44px;height:44px}
.ico-40{width:40px;height:40px}
.ico-36{width:36px;height:36px}
.ico-32{width:32px;height:32px}
.ico-28{width:28px;height:28px}
.ico-26{width:26px;height:26px}
.c-green{color:var(--green)}
.c-green-deep{color:var(--green-deep)}
.c-clay{color:var(--clay)}
.c-clay-warm{color:var(--clay-warm)}
.c-clay-deep{color:var(--clay-deep)}
.c-red{color:var(--red)}
.c-gray{color:var(--gray)}
.c-white{color:var(--white)}
.rnd{border-radius:24px;display:flex;align-items:center;justify-content:center}

/* 页头 */
.phead{display:flex;align-items:center;justify-content:space-between;height:112px;flex:0 0 auto}
#scr-home .phead{height:128px;align-items:flex-start;padding-top:6px}
.phead h2{font-size:36px;font-weight:600;letter-spacing:.5px}
.phead .side{font-size:22px;color:var(--gray)}
.btn-round{
  width:80px;height:80px;border-radius:40px;background:var(--white);
  box-shadow:var(--shadow);border:none;padding:0;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
}
.pill{
  display:flex;align-items:center;gap:12px;padding:18px 24px;border-radius:32px;
  background:var(--white);border:1.5px solid #C8D4BD;
}
.pill span{font-size:22px;font-weight:500}

/* ---------- 首页 ---------- */
.home-body{display:flex;gap:24px;flex:1;min-height:0}
.fgrid{display:flex;flex-direction:column;gap:24px;flex:1;min-width:0}
.frow{display:flex;gap:24px;flex:1;min-height:0}
.fcard{
  flex:1;min-width:0;
  display:flex;flex-direction:column;gap:18px;padding:32px;
  background:var(--white);border:none;border-radius:var(--radius);
  box-shadow:var(--shadow);cursor:pointer;text-align:left;
  transition:transform .14s ease,box-shadow .14s ease;
}
.fcard:active{transform:scale(.985)}
.fcard:hover{box-shadow:0 14px 30px -6px rgba(31,30,27,.14)}
.fcard .f-t{font-size:32px;font-weight:600}
.fcard .f-d{font-size:21px;color:var(--gray)}
.icobox{width:96px;height:96px;border-radius:24px}
.side-col{width:400px;flex:0 0 400px;display:flex;flex-direction:column;gap:24px;min-height:0}
.sos-card{
  height:210px;border:none;border-radius:var(--radius);background:var(--red);
  color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  cursor:pointer;box-shadow:0 10px 28px -6px rgba(201,79,61,.45);
}
.sos-card .sos-t{font-size:38px;font-weight:700}
.sos-card .sos-s{font-size:20px;opacity:.85}
.sched{display:flex;flex-direction:column;gap:16px;padding:26px;flex:1;min-height:0}
.sched h3{font-size:26px;font-weight:600;display:flex;align-items:center;gap:12px}
.sched .si{display:flex;align-items:center;gap:14px}
.sched .si b{font-size:21px;font-weight:600;color:var(--green)}
.sched .si span{font-size:21px}
.fam{display:flex;flex-direction:column;gap:12px;padding:24px;height:140px}
.fam h3{font-size:26px;font-weight:600}
.fam-row{display:flex;align-items:center;gap:14px}
.fam-row .av{width:48px;height:48px;border-radius:24px;background:var(--clay);color:var(--white);font-size:22px;font-weight:600}
.fam-row .txt{display:flex;flex-direction:column;gap:2px}
.fam-row .txt b{font-size:20px;font-weight:500}
.fam-row .txt span{font-size:17px;color:var(--gray)}
.avatar{width:88px;height:88px;border-radius:44px;background:var(--green);color:var(--white);font-size:36px;font-weight:600}

/* ---------- 步骤条 ---------- */
.steps{display:flex;gap:14px;height:64px;flex:0 0 auto}
.step{
  flex:1;border-radius:32px;display:flex;align-items:center;justify-content:center;
  font-size:22px;font-weight:500;
}
.step.done{background:var(--green-bg);color:var(--green-deep)}
.step.now{background:var(--green);color:var(--white);font-size:24px;font-weight:600}
.step.todo{background:var(--white);border:1.5px solid #C8D4BD;color:var(--gray)}

/* ---------- 网格按钮 ---------- */
.grid2{display:flex;flex-direction:column;gap:20px;flex:1;min-height:0}
.grow{display:flex;gap:20px;flex:1;min-height:0}
.gcell{
  flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  padding:20px;background:var(--white);border:2px solid transparent;border-radius:20px;
  box-shadow:var(--shadow);cursor:pointer;transition:transform .14s ease;
}
.gcell:active{transform:scale(.98)}
.gcell.sel{border-color:var(--green);box-shadow:0 10px 24px -6px rgba(135,168,120,.5)}
.gcell b{font-size:26px;font-weight:600}

/* ---------- 用药列表 ---------- */
.med-list{display:flex;flex-direction:column;gap:20px;flex:1;min-height:0}
.mrow{
  flex:1;min-height:0;display:flex;align-items:center;gap:20px;padding:26px;
  background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);
}
.mrow.cur{border:3px solid var(--green);box-shadow:0 10px 26px -6px rgba(135,168,120,.45)}
.mrow.dim{background:#FCFBF8;box-shadow:none;border:2px solid #EDE9E1;opacity:.9}
.mrow .mt{width:110px;flex:0 0 110px;display:flex;flex-direction:column;gap:2px}
.mrow .mt b{font-size:26px;font-weight:600;color:var(--green)}
.mrow.dim .mt b{color:var(--gray)}
.mrow .mt span{font-size:18px;color:var(--gray)}
.mrow .mc{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.mrow .mc b{font-size:26px;font-weight:600}
.mrow .mc span{font-size:20px;color:var(--gray)}
.tag{
  display:flex;align-items:center;gap:10px;padding:18px;border-radius:28px;flex:0 0 auto;
}
.tag span{font-size:22px;font-weight:600}
.tag-ok{background:var(--green-bg);color:var(--green-deep)}
.tag-wait{background:var(--clay-bg);color:var(--clay-ink)}
.btn-med{
  width:240px;height:84px;border-radius:22px;background:var(--green);color:var(--white);
  font-size:26px;font-weight:600;flex:0 0 auto;
}
.prog{display:flex;align-items:center;gap:24px;padding:28px}
.prog .p-t{font-size:30px;font-weight:600;flex:1}
.bar{width:380px;height:28px;border-radius:14px;background:#E4EBDF;overflow:hidden}
.bar i{display:block;height:100%;width:66%;background:var(--green);border-radius:14px}

/* ---------- 视频页 ---------- */
.video{
  height:520px;border-radius:32px;background:#E8EDE3;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:20px;flex:0 0 auto;
}
.video .v-av{width:210px;height:210px;border-radius:105px;background:var(--green);color:var(--white);font-size:84px;line-height:1.1;font-weight:600;flex:0 0 auto}
.video .v-n{font-size:36px;font-weight:600}
.video .v-t{font-size:24px;color:var(--gray)}
.video .v-tip{font-size:22px;color:#7A8A70}
.ctrl{display:flex;gap:24px;height:160px;align-items:center;justify-content:center;flex:0 0 auto}
.ctrl-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:12px;background:none;border:none;cursor:pointer}
.ctrl-item .ci{width:96px;height:96px;border-radius:48px}
.ctrl-item span{font-size:24px;font-weight:600}

/* ---------- 呼救页 ---------- */
.sos-main{
  flex:1;min-height:0;border-radius:32px;background:var(--red);color:var(--white);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;
  box-shadow:0 14px 36px -8px rgba(201,79,61,.5);
}
.sos-main h1{font-size:52px;font-weight:700}
.sos-main p{font-size:28px;opacity:.9}
.sos-wait{
  display:flex;align-items:center;gap:14px;padding:20px 32px;border-radius:32px;
  background:rgba(255,255,255,.92);
}
.sos-wait span{font-size:26px;font-weight:600;color:var(--red)}
.btnrow{display:flex;gap:24px;height:150px;flex:0 0 auto}
.btnrow .btn{flex:1;font-size:28px;font-weight:600}
.tipbar{
  height:96px;border-radius:24px;background:var(--red-bg);display:flex;align-items:center;
  justify-content:center;gap:18px;flex:0 0 auto;
}
.tipbar span{font-size:26px;font-weight:600;color:var(--red)}

/* ---------- 预约成功 ---------- */
.ok-main{
  flex:1;min-height:0;background:var(--green-bg);border-radius:32px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:32px;
}
.ok-main h1{font-size:52px;font-weight:700}
.ok-main>p{font-size:26px;color:var(--gray)}
.ok-circle{width:104px;height:104px;border-radius:52px;background:var(--green);color:var(--white);font-size:56px}
.detail{
  width:100%;background:var(--white);border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:16px;
}
.drow{display:flex;gap:24px}
.ditem{flex:1;display:flex;flex-direction:column;gap:4px}
.ditem label{font-size:20px;color:var(--gray)}
.ditem b{font-size:26px;font-weight:600}
.tip-line{
  height:90px;border-radius:24px;background:var(--white);display:flex;align-items:center;gap:16px;padding:0 24px;flex:0 0 auto;
}
.tip-line span{font-size:24px;font-weight:500}

/* ---------- 陪诊员 ---------- */
.wk-card{
  height:320px;display:flex;align-items:center;gap:28px;padding:32px;flex:0 0 auto;
}
.wk-av{width:168px;height:168px;border-radius:84px;background:var(--green);color:var(--white);font-size:64px;font-weight:600;flex:0 0 auto}
.wk-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}
.wk-info h3{font-size:40px;font-weight:600}
.wk-tags{display:flex;gap:14px;flex-wrap:wrap}
.wk-tag{padding:14px 20px;border-radius:24px;font-size:20px;font-weight:500}
.wk-t1{background:var(--green-bg);color:var(--green-deep)}
.wk-t2{background:var(--clay-bg);color:var(--clay-ink)}
.wk-t3{background:var(--clay-bg2);color:var(--clay-deep)}
.wk-info p{font-size:24px;color:var(--gray)}
.wk-rate{width:200px;flex:0 0 200px;display:flex;flex-direction:column;align-items:center;gap:10px}
.wk-rate b{font-size:26px;font-weight:600;color:var(--clay-ink)}
.info-row{display:flex;gap:24px;height:130px;flex:0 0 auto}
.info-cell{
  flex:1;display:flex;align-items:center;gap:18px;padding:24px;background:var(--white);
  border-radius:var(--radius);box-shadow:var(--shadow);
}
.info-cell .ic{flex:1;display:flex;flex-direction:column;gap:4px}
.info-cell label{font-size:20px;color:var(--gray)}
.info-cell b{font-size:26px;font-weight:600}

/* ---------- 健康档案 ---------- */
.vitals{display:flex;gap:24px;height:196px;flex:0 0 auto}
.vcard{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  padding:20px;background:var(--white);border-radius:28px;box-shadow:var(--shadow);
}
.vcard label{font-size:24px;color:var(--gray);font-weight:500}
.vcard b{font-size:42px;font-weight:700}
.vcard .st{font-size:22px;font-weight:600}
.rec-list{display:flex;flex-direction:column;gap:20px;flex:1;min-height:0}
.rec{
  flex:1;min-height:0;display:flex;align-items:center;gap:20px;padding:24px;
  background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);
}
.rec .rd{width:130px;flex:0 0 130px;display:flex;flex-direction:column;gap:2px}
.rec .rd b{font-size:28px;font-weight:600}
.rec .rd span{font-size:18px;color:var(--gray)}
.rec .rc{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.rec .rc b{font-size:24px;font-weight:600}
.rec .rc span{font-size:20px;color:var(--gray)}
.rec .rbtn{
  display:flex;align-items:center;gap:10px;padding:18px 24px;border-radius:24px;
  border:none;cursor:pointer;flex:0 0 auto;font-size:22px;font-weight:600;
}
.rbtn-g{background:var(--green-bg);color:var(--green-deep)}
.rbtn-c{background:var(--clay-bg);color:var(--clay-ink)}
.rbtn-o{background:var(--clay-bg2);color:var(--clay-deep)}
/* 检查报告三卡 */
.report-row{display:flex;gap:20px;height:130px;flex:0 0 auto}
.rp-card2{
  flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;
  padding:14px 20px;background:var(--white);border-radius:24px;
  border:1px solid #E4E0D6;box-shadow:none;cursor:pointer;
  font:inherit;color:inherit;text-align:left;
  transition:transform .12s ease;
}
.rp-card2:active{transform:scale(.985)}
.rp-card2 .rw{display:flex;align-items:center;justify-content:space-between;gap:8px}
.rp-card2 .rw b{font-size:23px;font-weight:600}
.rp-card2 .dt{font-size:19px;color:var(--gray)}
.ico-20{width:20px;height:20px}

/* ---------- 提示气泡 ---------- */
.toast{
  position:absolute;left:50%;bottom:56px;transform:translateX(-50%) translateY(20px);
  background:rgba(31,30,27,.94);color:var(--white);
  padding:20px 36px;border-radius:28px;font-size:24px;font-weight:500;
  opacity:0;pointer-events:none;transition:all .25s ease;z-index:60;white-space:nowrap;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- 屏幕高度自适应：内容随真实窗口伸缩 ---------- */
@media (min-height:900px){
  .video{height:540px}
  .appt-card h1,.rp-card .txt{letter-spacing:.3px}
}
.u-col{display:flex;flex-direction:column}
.u-row{display:flex;align-items:center}
.u-wrap{flex:1;min-width:0}
.u-t40{font-size:40px;font-weight:600}
.u-t36{font-size:36px;font-weight:600}
.u-t30{font-size:30px;font-weight:600}
.u-t26{font-size:26px;font-weight:600}
.u-t24{font-size:24px;font-weight:600}
.u-t22{font-size:22px;font-weight:500}
.u-t21{font-size:21px}
.u-t20{font-size:20px}
.u-t18{font-size:18px}
.u-gray{color:var(--gray)}
.u-green{color:var(--green)}
.u-green-d{color:var(--green-deep)}
.u-clay{color:var(--clay-warm)}
.u-red{color:var(--red)}
.u-muted{color:var(--gray-2)}
.dot{width:14px;height:14px;border-radius:50%;background:var(--green);display:block;flex:0 0 auto}
.u-center{text-align:center;justify-content:center}

/* ---------- 日期卡 / 时段卡 ---------- */
.dcell,.scell{
  flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;padding:16px;border-radius:20px;background:#FFFFFF;cursor:pointer;
  transition:transform .12s ease;
}
.dcell b{font-size:38px;font-weight:600}
.dcell.sel,.scell.sel{
  background:var(--green);box-shadow:0 8px 20px -4px rgba(135,168,120,.5);
}
.dcell.sel b,.scell.sel b{color:var(--white)}
.dcell.sel span,.scell.sel span{color:var(--green-soft)}
.dcell.dim,.scell.dim{background:#FCFBF8;cursor:not-allowed}
.dcell.dim b,.scell.dim b{color:var(--gray-2)}
.dcell.dim span,.scell.dim span{color:var(--gray-2)}
.dcell:active,.scell:active{transform:scale(.98)}
.scell{gap:6px;padding:18px}
.scell b{font-size:34px;font-weight:600}
.scell span{font-size:20px}
.ico-52{width:52px;height:52px}

/* ---------- 尺寸微调（适配 1280x800 屏内） ---------- */
.wk-card{height:300px}
.info-row{height:120px}
.vitals{height:190px}
.rec{padding:20px 24px}
.video{height:480px}
.ctrl{height:150px}
.ok-main{gap:14px;padding:28px}
.ok-main h1{font-size:46px}
.ok-main>p{font-size:22px}
.ok-circle{width:88px;height:88px}
.mrow{padding:22px 26px}
.btn-med{height:76px}
.btnrow{height:140px}

/* 首页右侧栏收紧，保证今日安排三条完整显示 */
.sos-card{height:170px}
.fam{height:120px;padding:20px 24px}
.sched{gap:10px;padding:20px 24px}
.sched h3{font-size:24px}
.sched .si b,.sched .si span{font-size:20px}

/* 头像统一居中 */
.avatar,.video .v-av,.fam-row .av,.wk-av{display:flex;align-items:center;justify-content:center}

/* ================================================================
   新方案：后台代挂号 + 问诊录音留存
   ================================================================ */

/* ---------- 就诊安排页 ---------- */
.appt-card{flex:1;min-height:0;display:flex;flex-direction:column;gap:18px;padding:30px}
.appt-card h1{font-size:36px;font-weight:600}
.appt-row{display:flex;gap:20px;flex:1;min-height:0}
.appt-cell{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:22px;border-radius:24px}
.appt-cell label{font-size:22px;color:var(--gray)}
.appt-cell b{font-size:30px;font-weight:600}
.appt-cell.bg1{background:var(--green-bg)}
.appt-cell.bg2{background:var(--clay-bg2)}
.appt-cell.bg3{background:var(--clay-bg)}
.appt-time{height:100px;display:flex;align-items:center;gap:20px;padding:0 26px;background:var(--green-bg);border-radius:28px;flex:0 0 auto}
.appt-time b{font-size:30px;font-weight:600}
.appt-time span{font-size:22px;font-weight:500;color:var(--green-deep);margin-left:auto;text-align:right}
.badge-ok{display:flex;align-items:center;gap:12px;padding:18px 24px;border-radius:32px;background:var(--green-bg);color:var(--green-deep);font-size:22px;font-weight:600}
.tip-center{font-size:22px;color:var(--gray);text-align:center;flex:0 0 auto}

/* ---------- 问诊录音页 ---------- */
.rec-live{display:flex;align-items:center;gap:28px;padding:24px 28px;height:168px;flex:0 0 auto}
.rec-dot{width:110px;height:110px;border-radius:55px;background:var(--red);display:flex;align-items:center;justify-content:center;flex:0 0 auto;animation:pulse 1.2s ease infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(201,79,61,.35)}50%{box-shadow:0 0 0 18px rgba(201,79,61,0)}}
.rec-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.rec-info .rt{font-size:56px;font-weight:700;color:var(--red);line-height:1}
.rec-info .rs{font-size:20px;color:var(--gray)}
.wave{display:flex;align-items:center;gap:7px;height:40px}
.wave i{width:10px;border-radius:5px;background:var(--red);display:block;opacity:.75}
.qcard{flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;padding:26px}
.qhead{display:flex;align-items:center;gap:12px}
.qhead h3{font-size:26px;font-weight:600}
.qhead .qn{font-size:20px;color:var(--gray);margin-left:auto}
.qlist{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow:hidden}
.qline{display:flex;align-items:center;padding:8px 16px;border-radius:20px;background:#F8F5F0;font-size:22px}
.qline.hot{background:var(--red-bg);font-weight:500}
.btnrow2{display:flex;gap:24px;height:96px;flex:0 0 auto}
.btnrow2 .btn{flex:1;font-size:28px;font-weight:600}

/* ---------- 陪诊员接单 ---------- */
.wk-main{flex:0 0 auto;height:250px;display:flex;align-items:center;gap:26px;padding:26px 30px}
.wk-main .av{
  width:112px;height:112px;border-radius:56px;background:var(--green);color:var(--white);
  font-size:46px;font-weight:600;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;
}
.wk-main .info{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.wk-main h3{font-size:32px;font-weight:600}
.chips{display:flex;gap:12px;align-items:center}
.chip{height:40px;padding:0 16px;border-radius:20px;display:flex;align-items:center;font-size:20px;font-weight:600}
.chip.g{background:var(--green-bg);color:var(--green-deep)}
.chip.c{background:var(--clay-bg);color:var(--clay-ink)}
.chip.r{background:var(--red-bg);color:var(--clay-deep)}
.wk-main p{font-size:22px;color:var(--gray)}
.wk-rate{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:0 0 auto}
.wk-rate .stars{font-size:24px;color:var(--clay-deep);letter-spacing:2px;font-weight:600}
.wk-rate b{font-size:30px;font-weight:700}
.info3{display:flex;gap:20px;height:150px;flex:0 0 auto}
.icard{
  flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;padding:16px 24px;
  background:var(--white);border-radius:24px;box-shadow:var(--shadow);
  border:none;text-align:left;font:inherit;color:inherit;
}
.icard label{font-size:22px;color:var(--gray)}
.icard b{font-size:26px;font-weight:600}
.icard b.hot{color:var(--red)}
.icard-btn{cursor:pointer;transition:transform .12s ease}
.icard-btn:active{transform:scale(.98)}
.rec-tag{display:flex;align-items:center;gap:12px;padding:18px 24px;border-radius:32px;background:var(--red-bg);color:var(--red);font-size:22px;font-weight:600}
.rec-tag .dot-r{width:16px;height:16px;border-radius:50%;background:var(--red);display:block;animation:blink 1s ease infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}

/* ---------- 本次问诊记录页 ---------- */
.audio-bar{height:120px;display:flex;align-items:center;gap:20px;padding:0 24px;background:var(--green-bg);border-radius:28px;flex:0 0 auto}
.audio-bar .play{width:88px;height:88px;border-radius:44px;background:var(--green);display:flex;align-items:center;justify-content:center;flex:0 0 auto;border:none;cursor:pointer}
.audio-bar .ainfo{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.audio-bar .ainfo b{font-size:28px;font-weight:600}
.audio-bar .ainfo span{font-size:20px;color:var(--gray)}
.bar-s{width:300px;height:20px;border-radius:10px;background:#D9E5D2;overflow:hidden;flex:0 0 auto}
.bar-s i{display:block;height:100%;width:62%;background:var(--green);border-radius:10px}
.qgrid{display:flex;flex-direction:column;gap:20px;flex:1;min-height:0}
.seg{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:28px;box-shadow:var(--shadow)}
.seg .sh{display:flex;align-items:center;gap:12px}
.seg .sh h4{font-size:26px;font-weight:600;flex:1}
.seg p{font-size:24px}
.listen{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:24px;background:var(--white);border:none;cursor:pointer;font-size:20px;font-weight:600}
.seg.g{background:var(--green-bg)}
.seg.o{background:var(--clay-bg2)}
.seg.y{background:var(--clay-bg)}
.seg.r{background:var(--red-bg)}

/* ---------- 逐句重听页 ---------- */
.rp-card{flex:1;min-height:0;border-radius:32px;background:var(--white);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:36px}
.rp-card .lab{font-size:26px;font-weight:500;color:var(--gray)}
.rp-card .txt{font-size:44px;font-weight:600;text-align:center;line-height:1.3}
.rp-row{display:flex;align-items:center;justify-content:center;gap:24px;width:100%}
.rp-play{width:130px;height:130px;border-radius:65px;background:var(--green);display:flex;align-items:center;justify-content:center;flex:0 0 auto;border:none;cursor:pointer}
.rp-bar{width:420px;height:24px;border-radius:12px;background:#E4EBDF;overflow:hidden}
.rp-bar i{display:block;height:100%;width:60%;background:var(--green);border-radius:12px}
.btn-slow{padding:16px 24px;border-radius:24px;background:var(--clay-bg);border:none;cursor:pointer;font-size:24px;font-weight:600;color:var(--clay-ink)}
.btnrow3{display:flex;gap:24px;height:100px;flex:0 0 auto}
.btnrow3 .btn{flex:1;font-size:28px;font-weight:600}

/* ---------- 录音列表页 ---------- */
.rl-card{height:160px;display:flex;align-items:center;gap:20px;padding:0 26px;flex:0 0 auto}
.rl-ic{width:96px;height:96px;border-radius:48px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.rl-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.rl-txt b{font-size:28px;font-weight:600}
.rl-txt span{font-size:22px;color:var(--gray)}
.rl-btn{width:190px;height:88px;border-radius:24px;display:flex;align-items:center;justify-content:center;gap:10px;border:none;cursor:pointer;font-size:26px;font-weight:600;flex:0 0 auto}
.rl-btn.solid{background:var(--green);color:var(--white)}
.rl-btn.ghost{background:var(--white);border:2px solid #C8D4BD;color:var(--gray)}

/* ---------- 医嘱来源条（用药页顶部） ---------- */
.src-bar{height:80px;display:flex;align-items:center;gap:18px;padding:0 18px;background:var(--green-bg);border-radius:28px;flex:0 0 auto}
.src-bar b{font-size:24px;font-weight:600;flex:1;min-width:0}
.src-btn{height:72px;width:280px;border-radius:24px;background:var(--green-deep);color:var(--white);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;font-size:24px;font-weight:600;flex:0 0 auto}
.src-btn:active{transform:scale(.98)}

/* ---------- 就诊陪同页 ---------- */
.wk-card-sm{height:280px;display:flex;align-items:center;gap:28px;padding:28px;flex:0 0 auto}
.wk-av-sm{width:160px;height:160px;border-radius:80px;background:var(--green);color:var(--white);font-size:62px;font-weight:600;flex:0 0 auto;display:flex;align-items:center;justify-content:center}
.wk-info-sm{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.wk-info-sm h3{font-size:36px;font-weight:600}
.wk-info-sm .g{font-size:22px;font-weight:500;color:var(--green-deep)}
.wk-info-sm p{font-size:24px;color:var(--gray)}
.rec-banner{height:150px;display:flex;align-items:center;gap:20px;padding:0 26px;background:var(--red-bg);border-radius:28px;flex:0 0 auto}
.rec-banner .rt{flex:1;min-width:0}
.rec-banner .rt b{font-size:28px;font-weight:600;display:block}
.rec-banner .rt span{font-size:21px;color:var(--gray)}
.rec-banner .go{width:320px;height:96px;border-radius:24px;background:var(--red);color:var(--white);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;font-size:24px;font-weight:600;flex:0 0 auto}
.rec-banner .go:active{transform:scale(.98)}

/* 档案页录音按钮 */
.rbtn-rec{display:flex;align-items:center;gap:10px;width:200px;height:76px;border-radius:24px;border:none;cursor:pointer;font-size:20px;font-weight:600;flex:0 0 auto;justify-content:center}
.rbtn-rec.g{background:var(--green-bg);color:var(--green-deep)}
.rbtn-rec.o{background:var(--clay-bg2);color:var(--clay-deep)}
.rbtn-rec.off{background:#F0EEE8;color:var(--gray-2);cursor:default}

/* 用药页：按设计稿压紧纵向节奏，保证三张药卡完整可见 */
#scr-med .phead{height:96px}
#scr-med .src-bar{height:74px}
#scr-med .prog{padding:20px 28px}
#scr-med .med-list{gap:16px}
