:root{--navy:#061126;--ink:#09142f;--gold:#e5bf65;--blue:#1f6dff;--muted:#778199;--surface:#f8faff;font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#e9edf4}button,a{font:inherit;-webkit-tap-highlight-color:transparent}.app-shell{position:relative;width:min(100%,430px);min-height:100vh;margin:auto;overflow:hidden;background:var(--surface);box-shadow:0 18px 50px #07112626}.topbar{position:absolute;z-index:10;top:0;left:0;right:0;height:58px;padding:8px 14px;display:flex;align-items:center;border-bottom:1px solid #ffffff1c;color:#fff;background:#071126e6}.back{width:32px;height:40px;padding:8px;border:0;background:transparent;color:#fff}.back svg,.start-button svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.brand{display:flex;align-items:center;gap:7px;color:#fff;text-decoration:none}.brand-mark{position:relative;width:34px;height:34px;border-radius:50%;overflow:hidden;background:linear-gradient(145deg,#f8e5a9,#c89843)}.brand-mark:after{content:"";position:absolute;width:12px;height:42px;left:11px;top:-4px;border-radius:50%;background:#fff;transform:rotate(16deg)}.brand-mark i{position:absolute;z-index:1;left:15px;width:3px;height:3px;border-radius:50%;background:#d2a74b}.brand-mark i:nth-child(1){top:8px}.brand-mark i:nth-child(2){top:16px}.brand-mark i:nth-child(3){top:24px}.brand b{font-size:18px;white-space:nowrap}.brand small{font-size:10px;color:var(--gold);white-space:nowrap}.top-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.language,.register,.menu{min-height:36px;border:0}.language{padding:0 10px;border-radius:18px;color:#fff;background:#ffffff13;font-size:11px}.register{padding:0 12px;border-radius:18px;color:#17150f;background:linear-gradient(135deg,#f6dda0,#d2a448);font-size:11px;font-weight:700}.menu{width:36px;padding:8px;background:transparent}.menu i{display:block;height:2px;margin:5px 0;border-radius:2px;background:#fff}
.hero{position:relative;height:438px;padding-top:58px;color:#fff;background:#071126 url("assets/hero-bg-mobile.png") center 33%/cover no-repeat;overflow:hidden}.hero:after{content:"";position:absolute;inset:58px 0 0;background:linear-gradient(180deg,#0611263d 0%,#0611260d 56%,#06112633 100%);pointer-events:none}.hero-copy,.voice-stage,.recommendation,.hero-tail,.world-line{position:relative;z-index:2}.hero-copy{text-align:center}.eyebrow{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px 0 3px;color:#e7c66f;font-size:11px;letter-spacing:.08em}.eyebrow span{width:30px;height:1px;background:linear-gradient(90deg,transparent,#e7c66f)}.eyebrow span:last-child{transform:scaleX(-1)}h1{margin:0;font-size:31px;line-height:1.16;letter-spacing:-.03em}h1 em{font-style:normal;color:#f0c767}.subtitle{margin:5px 0 0;color:#fff;font-size:12px;letter-spacing:.06em}.voice-stage{height:87px;margin:1px auto 0;display:flex;align-items:center;justify-content:center}.voice-ring{position:relative;z-index:2;width:76px;height:76px;display:grid;place-items:center;border:1px solid #4294ff55;border-radius:50%;box-shadow:0 0 28px #156ff25c}.voice-ring:before,.voice-ring:after{content:"";position:absolute;border-radius:50%;border:1px solid #e9be5b66}.voice-ring:before{inset:8px}.voice-ring:after{inset:15px;box-shadow:0 0 18px #e5b9518a}.voice-core{width:47px;height:47px;display:grid;place-items:center;border-radius:50%;color:#f5d37e;background:#e0b65917;box-shadow:0 0 16px #f1c75d}.voice-core svg{width:25px;fill:currentColor}.bars{width:82px;height:42px;background:repeating-linear-gradient(90deg,transparent 0 4px,#4ba5ff 4px 6px,transparent 6px 9px);filter:drop-shadow(0 0 4px #2387ff);clip-path:polygon(0 45%,8% 36%,14% 62%,20% 20%,27% 80%,34% 7%,41% 92%,48% 20%,55% 75%,62% 35%,70% 63%,78% 31%,87% 67%,100% 45%,100% 55%,87% 77%,78% 41%,70% 73%,62% 45%,55% 85%,48% 30%,41% 100%,34% 17%,27% 90%,20% 30%,14% 72%,8% 46%,0 55%)}.bars-left{transform:scaleX(-1)}.beam{position:absolute;width:290px;height:1px;background:linear-gradient(90deg,transparent,#2080ff,#f3c860,#2080ff,transparent)}.handwriting{position:absolute;right:17px;top:29px;color:#71aaff;font:italic 10px Georgia,serif;line-height:1.2;transform:rotate(-8deg)}
.recommendation{height:73px;margin:0 20px;padding:12px 12px 9px;display:grid;grid-template-columns:38px 1fr auto;gap:9px;align-items:center;border:1px solid #ffffff31;border-radius:13px;background:linear-gradient(135deg,#ffffff1f,#ffffff09);box-shadow:0 8px 22px #0005;backdrop-filter:blur(12px)}.recommendation-label{position:absolute;left:12px;top:-9px;padding:3px 10px;border-radius:5px;color:#5b400d;background:linear-gradient(135deg,#ffefb4,#dfad46);font-size:9px;font-weight:700}.school-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid #ffffff21;border-radius:6px;color:#f4d78b;background:#ffffff0d}.school-icon svg{width:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.recommendation-copy{min-width:0}.recommendation h2{margin:0;font-size:13px;white-space:nowrap}.recommendation p{margin:3px 0 0;color:#ffffff9e;font-size:9px}.start-button{height:38px;padding:0 13px;border:0;border-radius:20px;color:#fff;background:linear-gradient(110deg,#f3d572 0%,#dcb34f 35%,#1775ff 100%);box-shadow:0 3px 13px #2f78ff66;font-size:11px;font-weight:700;white-space:nowrap}.start-button svg{width:12px;vertical-align:-2px}.hero-tail{height:20px;margin:5px 25px 0;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:9px}.dots{display:flex;gap:6px}.dots i{width:6px;height:6px;border-radius:50%;background:#ffffff4a}.dots i:first-child{width:15px;border-radius:5px;background:#e9c45f}.world-line{margin:1px 0 0;text-align:center;color:#ffffffab;font-size:8px;line-height:1.45;letter-spacing:.15em}.world-line i{display:inline-block;width:28px;height:1px;margin:0 8px 3px;background:linear-gradient(90deg,transparent,#dab85d)}.world-line i:last-child{transform:scaleX(-1)}
.content-panel{position:relative;z-index:3;margin-top:-22px;padding:17px 17px 82px;border-radius:24px 24px 0 0;background:var(--surface)}.section-heading{height:28px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between}.section-heading h2{margin:0;padding-left:8px;border-left:3px solid #08152f;font-size:17px}.section-heading button{min-height:32px;border:0;color:#60709a;background:transparent;font-size:11px}.scene-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.scene-card{position:relative;height:58px;padding:7px 9px;display:flex;align-items:center;gap:8px;text-align:left;border:1px solid #e2e7f0;border-radius:10px;color:var(--ink);background:#fff;box-shadow:0 4px 12px #0b153309}.scene-card.active{border-color:#e9cd89}.scene-card.active:after{content:"";position:absolute;right:8px;top:7px;width:5px;height:5px;border-radius:50%;background:#e9cd89}.scene-icon{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#edf4ff}.scene-icon svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.scene-icon.blue{color:#2568dd}.scene-icon.orange{color:#d85f2b;background:#fff1e9}.scene-icon.cyan{color:#2387b8;background:#e9f8ff}.scene-icon.gold{color:#a86f22;background:#fff7e7}.scene-card b,.scene-card small{display:block;white-space:nowrap}.scene-card b{font-size:11px}.scene-card small{margin-top:2px;color:#7a8498;font-size:8px}.lower-section{margin-top:11px}.lower-section .section-heading{margin-bottom:6px}.mode-tabs{height:43px;padding:3px;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #dfe4ee;border-radius:11px;background:#fff}.mode-tab{border:0;border-radius:9px;color:#5f687d;background:transparent;font-size:10px}.mode-tab.active{color:#175ccc;background:#eaf4ff;box-shadow:inset 0 0 0 1px #bfdbff}.mode-note{margin:4px 0 0;text-align:center;color:#7c8599;font-size:8px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tool-grid button{height:43px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;border:1px solid #e2e7f0;border-radius:9px;color:var(--ink);background:#fff;font-size:10px;font-weight:700}.wave-icon,.chart-icon{color:#2777ed;letter-spacing:-2px;font-weight:800}.weekly-summary{height:29px;margin:6px 0 0;padding:7px;border-radius:7px;text-align:center;color:#6c7690;background:#edf2fa;font-size:8px}.bottom-nav{position:absolute;z-index:9;left:0;right:0;bottom:0;height:65px;padding:6px 18px max(6px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #e3e7ef;background:#fffc;backdrop-filter:blur(14px)}.bottom-nav a{display:grid;place-items:center;align-content:center;gap:2px;color:#465066;font-size:20px}.bottom-nav small{font-size:9px}.bottom-nav .active{color:#b18635}.sheet-backdrop{position:fixed;z-index:50;inset:0;background:#03091699}.session-sheet{position:fixed;z-index:51;left:50%;bottom:0;width:min(100%,430px);padding:26px 22px;text-align:center;transform:translateX(-50%);border-radius:22px 22px 0 0;background:#fff}.session-sheet[hidden],.sheet-backdrop[hidden]{display:none}.sheet-close{position:absolute;right:12px;top:8px;width:44px;height:44px;border:0;background:transparent;font-size:25px}.session-sheet p{color:#a68032;font-size:9px;letter-spacing:.16em}.session-sheet h2{margin:7px}.session-sheet span{display:block;color:#778199;font-size:12px}.primary-action{width:100%;height:48px;margin-top:18px;border:0;border-radius:12px;color:#fff;background:#0b1834;font-weight:700}
@media(max-width:370px){.topbar{padding-left:8px;padding-right:8px}.brand small,.register{display:none}.hero{height:430px}.recommendation{margin-left:13px;margin-right:13px}.handwriting{display:none}.content-panel{padding-left:13px;padding-right:13px}.scene-card{padding-left:6px;gap:5px}.scene-icon{width:30px;height:30px}.scene-card b{font-size:10px}.scene-card small{font-size:7px}}@media(min-width:700px){body{padding:28px}.app-shell{border-radius:28px}.bottom-nav{position:sticky}}

/* ===== 接入后端后新增面板(不改 V2 首页样式) ===== */
.live-panel[hidden]{display:none !important}
.live-panel{position:fixed;inset:0;z-index:60;background:#F6F8FC;display:flex;flex-direction:column;max-width:430px;margin:0 auto;padding:calc(env(safe-area-inset-top,0px) + 16px) 18px calc(env(safe-area-inset-bottom,0px) + 16px);color:#0B1533;font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Inter,sans-serif}
.live-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.live-kicker{margin:0;font-size:10px;letter-spacing:.18em;color:#D9B86C}
.live-head h2{margin:2px 0 0;font-size:20px}
.live-head small{color:#65708B;font-size:11px}
.live-head b{font-size:22px;font-variant-numeric:tabular-nums}
.live-status{margin:10px 0 8px;font-size:13px;color:#2563EB}
.live-transcript{flex:1;overflow-y:auto;background:#fff;border:1px solid #E5E9F2;border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px}
.live-msg{max-width:88%;padding:9px 12px;border-radius:14px;font-size:14px;line-height:1.5}
.live-msg b{display:block;font-size:11px;color:#65708B;margin-bottom:3px}
.live-msg p{margin:0}
.live-msg.me{align-self:flex-end;background:#EAF1FF}
.live-msg.ai{align-self:flex-start;background:#FBF6E8}
.live-msg.typing p{opacity:.7}
.live-controls{display:flex;gap:10px;margin-top:12px}
.live-controls button{flex:1;min-height:48px;border-radius:14px;border:1px solid #E5E9F2;background:#fff;font-size:15px;font-weight:700;color:#0B1533}
.live-controls button.danger{background:linear-gradient(135deg,#F1D58A,#C89E4C);border:0;color:#241B04}
.report-panel{overflow-y:auto}
.report-body{flex:1;overflow-y:auto;margin-top:10px;font-size:14px}
.report-body h3{font-size:14px;margin:16px 0 6px;color:#112A52}
.report-body ul{margin:0;padding-left:18px}
.report-body li{margin:6px 0;line-height:1.5}
.report-body .was{color:#9a3b3b}
.report-body .better{color:#1d6b3a}
.report-score{display:flex;align-items:baseline;gap:10px;background:#fff;border:1px solid #E5E9F2;border-radius:16px;padding:14px}
.report-score b{font-size:34px;color:#D9B86C}
.report-score span{font-size:12px;color:#65708B}
.report-summary{background:#fff;border:1px solid #E5E9F2;border-radius:14px;padding:12px;line-height:1.6}
.report-empty{color:#65708B;padding:20px 4px}
.history-item{display:block;width:100%;text-align:left;background:#fff;border:1px solid #E5E9F2;border-radius:14px;padding:12px;margin-bottom:10px;font:inherit}
.history-item b{display:block;font-size:14px}
.history-item small{color:#65708B;font-size:11px}
.history-item p{margin:6px 0 0;font-size:12px;color:#334}
.panel-close{width:34px;height:34px;border-radius:50%;border:0;background:#E5E9F2;font-size:20px;line-height:1;color:#0B1533}
.coach-toast{position:fixed;top:calc(env(safe-area-inset-top,0px) + 14px);left:50%;transform:translateX(-50%);background:#0B1834;color:#fff;padding:10px 16px;border-radius:12px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:100;max-width:90%}
.coach-toast.show{opacity:1}
