:root{--app-ink:#17212b;--app-muted:#536170;--app-line:#d4dce5;--app-soft:#f4f7fa;--app-navy:#173a5e;--app-accent:#9f3b2f}
.skip-link{position:fixed;top:10px;left:10px;z-index:10000;padding:10px 14px;border:2px solid var(--app-ink);border-radius:6px;background:#fff;color:var(--app-ink);font-weight:700;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.interview-app{background:#f7f9fb;color:var(--app-ink)}
body.interview-app :focus-visible{outline:3px solid #c35632!important;outline-offset:3px}
body.interview-app .app-shell{max-width:900px;padding:28px 20px 64px}
body.interview-app .app-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 18px;border:1px solid var(--app-line);border-radius:6px;background:#fff;overflow:hidden}
body.interview-app .app-status{min-height:24px;margin:-6px 0 14px;color:var(--app-muted);font-size:.82rem;line-height:1.5}
body.interview-app .app-status[data-state="loading"]{color:var(--app-navy)}
body.interview-app .app-status[data-state="error"]{padding:10px 12px;border-left:4px solid var(--app-accent);background:#fff4f2;color:#74271f}
body.interview-app .app-steps .s{min-height:58px;padding:10px 6px;color:var(--app-muted);border-left:1px solid var(--app-line)}
body.interview-app .app-steps .s:first-child{border-left:0}
body.interview-app .app-steps .s .n{width:22px;height:22px;margin:0 auto 4px;border-radius:4px;background:var(--app-soft);color:var(--app-muted)}
body.interview-app .app-steps .s.on{background:#eef3f7;color:var(--app-navy);font-weight:800}
body.interview-app .app-steps .s.on .n{background:var(--app-navy);color:#fff}
body.interview-app .app-steps .s.done .n{background:var(--app-accent);color:#fff}
body.interview-app .app-view.active{animation:none}
body.interview-app .app-hero,body.interview-app #view-chapters .app-hero[style]{background:#fff!important;color:var(--app-ink)!important;border:1px solid var(--app-line);border-left:5px solid var(--app-accent);border-radius:6px;padding:22px;margin-bottom:16px}
body.interview-app .app-hero .tag{color:var(--app-accent);letter-spacing:0;font-weight:800}
body.interview-app .app-hero h1{color:var(--app-ink);font-size:1.55rem;letter-spacing:0}
body.interview-app .app-hero p{color:var(--app-muted)}
body.interview-app .egg-badge,body.interview-app .live-meta span,body.interview-app .mini-badge{border:1px solid var(--app-line);border-radius:5px;background:var(--app-soft);color:var(--app-ink)}
body.interview-app .egg-badge b{color:var(--app-accent)}
body.interview-app .card,body.interview-app .diag-mini,body.interview-app .metric,body.interview-app .dash-list,body.interview-app .sentence,body.interview-app .tailq{border-color:var(--app-line);border-radius:6px;box-shadow:none}
body.interview-app .card{background:#fff}
body.interview-app .chips{gap:8px}
body.interview-app .chip{min-height:42px;border-radius:6px;border-color:var(--app-line);box-shadow:none}
body.interview-app .chip:hover{border-color:var(--app-navy);background:#eef3f7}
body.interview-app .chip.sel{background:var(--app-navy);border-color:var(--app-navy)}
body.interview-app .star{width:34px;height:34px;padding:0;border:1px solid var(--app-line);border-radius:6px;background:#fff;color:var(--app-muted);font:inherit;font-size:.82rem;cursor:pointer}
body.interview-app .star.on{background:var(--app-accent);border-color:var(--app-accent);color:#fff}
body.interview-app .diag-progress{border-color:var(--app-line);border-radius:6px;box-shadow:none}
body.interview-app .diag-progress .dp-fill,body.interview-app .bars .b .fill,body.interview-app .trend-bars .bar{background:var(--app-accent)}
body.interview-app .q-train,body.interview-app .score-big{border-radius:6px;background:var(--app-navy)}
body.interview-app .q-train .meta,body.interview-app .q-train .intent{color:#d8e4ef}
body.interview-app .tts,body.interview-app .mic{border-radius:6px}
body.interview-app textarea.app-answer{border-color:var(--app-line);border-radius:6px;min-height:160px}
body.interview-app textarea.app-answer:focus{outline:3px solid #c35632;outline-offset:2px;border-color:var(--app-accent)}
body.interview-app .answer-guide{display:flex;justify-content:space-between;gap:12px;margin:7px 0 0;color:var(--app-muted);font-size:.78rem;line-height:1.45}
body.interview-app .weak,body.interview-app .diag-action,body.interview-app .fb,body.interview-app .privacy-note{border-radius:6px;box-shadow:none}
body.interview-app .btn{min-height:42px;border-radius:6px;box-shadow:none}
body.interview-app .btn:hover{box-shadow:none;transform:none}
body.interview-app .btn.sec{border-color:var(--app-navy)}
body.interview-app #chapterGrid{gap:10px}
body.interview-app .chapter-card,body.interview-app .chapter-card.ch-g1,body.interview-app .chapter-card.ch-g2,body.interview-app .chapter-card.ch-g3,body.interview-app .chapter-card.ch-g4,body.interview-app .chapter-card.ch-g5,body.interview-app .chapter-card.ch-g6,body.interview-app .chapter-card.ch-g7,body.interview-app .chapter-card.ch-g8,body.interview-app .chapter-card.ch-g9,body.interview-app .chapter-card.ch-g10,body.interview-app .chapter-card.ch-g11{min-height:150px;padding:20px;background:#fff;color:var(--app-ink);border:1px solid var(--app-line);border-top:4px solid var(--app-navy);border-radius:6px;box-shadow:none}
body.interview-app .chapter-card:nth-child(3n+2){border-top-color:#23756b}
body.interview-app .chapter-card:nth-child(3n){border-top-color:var(--app-accent)}
body.interview-app .chapter-card::before{display:none}
body.interview-app .chapter-card:hover{background:var(--app-soft);box-shadow:none;transform:none}
body.interview-app .chapter-card .ch-icon{font-size:1.55rem;opacity:1;animation:none}
body.interview-app .chapter-card h3{color:var(--app-navy)}
body.interview-app .chapter-card p{color:var(--app-muted);opacity:1}
body.interview-app .chapter-card .ch-count{border:1px solid var(--app-line);border-radius:4px;background:var(--app-soft);color:var(--app-muted)}
body.interview-app .chapter-card.ch-pending .ch-count{background:var(--app-soft)}
@media(max-width:600px){body.interview-app .app-shell{padding:18px 14px 48px}body.interview-app .app-steps .s{font-size:.69rem}body.interview-app .rate{align-items:flex-start;flex-direction:column}body.interview-app .answer-guide{align-items:flex-start;flex-direction:column;gap:3px}}
@media(prefers-reduced-motion:reduce){body.interview-app *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
