:root{--b1fs-font-scale:1}
html{font-size:calc(16px * var(--b1fs-font-scale))}
body.b1fs-dark{--bg:#0d1420;--card:#151f2e;--ink:#eef4ff;--muted:#b8c5d8;--line:#34445b;--accent-soft:#1e335b;--good:#173c29;--good-ink:#8ee2ad;--bad:#482525;--bad-ink:#ffb0b0;--warn:#493a16;--focus:#182a47;background:linear-gradient(180deg,#0b111b,#111b29)!important;color:var(--ink)!important}
body.b1fs-dark .hero,body.b1fs-dark .card,body.b1fs-dark .question-block,body.b1fs-dark .panel,body.b1fs-dark details,body.b1fs-dark .note-block,body.b1fs-dark .focus-block,body.b1fs-dark .transcript-block,body.b1fs-dark .option,body.b1fs-dark .gap-row,body.b1fs-dark select,body.b1fs-dark input,body.b1fs-dark button.secondary{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
body.b1fs-dark .appbar{background:rgba(13,20,32,.96)!important;border-color:var(--line)!important}body.b1fs-dark .appbar .brand,body.b1fs-dark .appbar a{color:var(--ink)!important}body.b1fs-dark .appbar a{background:var(--card)!important;border-color:var(--line)!important}body.b1fs-dark .appbar a.active{background:#4f7fe8!important;color:#fff!important}
body.b1fs-dark .small,body.b1fs-dark .hero p,body.b1fs-dark .footer,body.b1fs-dark .footerline{color:var(--muted)!important}
.b1fs-settings-btn{position:fixed!important;right:18px!important;bottom:18px!important;z-index:10020!important;width:auto!important;min-width:142px!important;padding:12px 16px!important;border:2px solid #fff!important;border-radius:999px!important;background:#2357c4!important;color:#fff!important;font-weight:900!important;font-size:1rem!important;line-height:1.1!important;cursor:pointer!important;box-shadow:0 10px 30px rgba(20,50,120,.36)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important}
.b1fs-settings-btn:hover,.b1fs-settings-btn:focus{background:#17449f!important;transform:translateY(-1px);outline:3px solid rgba(35,87,196,.24)!important;outline-offset:2px}
.b1fs-settings-overlay{position:fixed;inset:0;z-index:10030;background:rgba(8,16,32,.68);display:none;align-items:center;justify-content:center;padding:18px}
.b1fs-settings-overlay.open{display:flex}
.b1fs-settings-panel{width:min(560px,100%);max-height:90vh;overflow:auto;background:var(--card,#fff);color:var(--ink,#162031);border:1px solid var(--line,#d9e2ef);border-radius:22px;padding:20px;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.b1fs-settings-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.b1fs-settings-head h2{margin:0;font-size:1.35rem}.b1fs-close{width:auto!important;padding:8px 12px!important;background:transparent!important;color:inherit!important;border:1px solid var(--line,#d9e2ef)!important}
.b1fs-setting-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.b1fs-setting{margin-bottom:14px}.b1fs-setting label{display:block;font-weight:800;margin-bottom:6px}.b1fs-setting select,.b1fs-setting input{width:100%;padding:11px;border:1px solid var(--line,#d9e2ef);border-radius:12px;background:var(--card,#fff);color:var(--ink,#162031)}
.b1fs-preview{padding:12px;border:1px solid var(--line,#d9e2ef);border-radius:14px;background:var(--accent-soft,#edf3ff);margin:5px 0 14px}.b1fs-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.b1fs-actions button{padding:11px;border-radius:12px;font-weight:800;cursor:pointer}.b1fs-test{background:#148943!important;color:#fff!important;border:0!important}.b1fs-reset{background:transparent!important;color:inherit!important;border:1px solid var(--line,#d9e2ef)!important}
@media(max-width:650px){.b1fs-setting-row{grid-template-columns:1fr}.b1fs-settings-panel{padding:16px}.b1fs-settings-btn{right:12px!important;bottom:12px!important;min-width:52px!important;width:52px!important;height:52px!important;padding:0!important;border-radius:50%!important;font-size:0!important}.b1fs-settings-btn::before{content:'⚙';font-size:1.45rem}.b1fs-settings-btn::after{content:''}}


/* Clearer dark mode refinements */
body.b1fs-dark{--bg:#101827;--card:#162234;--ink:#f5f8ff;--muted:#d0dbec;--line:#45607f;--accent-soft:#1a3356;--good:#173f2c;--good-ink:#a8f0c0;--bad:#4f2a2a;--bad-ink:#ffc5c5;--warn:#5b4819;--focus:#20375a}
body.b1fs-dark .hero,
body.b1fs-dark .card,
body.b1fs-dark .question-block,
body.b1fs-dark .panel,
body.b1fs-dark details,
body.b1fs-dark .note-block,
body.b1fs-dark .focus-block,
body.b1fs-dark .transcript-block,
body.b1fs-dark .feature,
body.b1fs-dark .stat,
body.b1fs-dark .transcript,
body.b1fs-dark .explain,
body.b1fs-dark .vocabbox,
body.b1fs-dark .context,
body.b1fs-dark .notice,
body.b1fs-dark .option,
body.b1fs-dark .gap-row,
body.b1fs-dark select,
body.b1fs-dark input,
body.b1fs-dark button.secondary,
body.b1fs-dark .btn:not(.primary):not(.good):not(.warn){background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important;box-shadow:none!important}
body.b1fs-dark .hero,body.b1fs-dark .card,body.b1fs-dark .feature{box-shadow:0 12px 34px rgba(0,0,0,.28)!important}
body.b1fs-dark .pill,body.b1fs-dark .tag{background:#20314a!important;color:var(--ink)!important;border-color:#4a678b!important}
body.b1fs-dark .progress{background:#27384f!important;border:1px solid #3f5675!important}
body.b1fs-dark .progress>span{background:linear-gradient(90deg,#2db470,#8ce3a8)!important}
body.b1fs-dark .btn.primary{background:#4d7ef0!important;border-color:#79a0ff!important;color:#fff!important;box-shadow:0 8px 22px rgba(77,126,240,.32)!important}
body.b1fs-dark .btn.good{background:#1d9850!important;border-color:#39b86d!important;color:#fff!important}
body.b1fs-dark .btn.warn{background:#a57208!important;border-color:#d69d27!important;color:#fff!important}
body.b1fs-dark .cta .btn{background:#21344d!important;border-color:#496683!important;color:#f5f8ff!important}
body.b1fs-dark .cta .btn.primary{background:#4d7ef0!important}
body.b1fs-dark .small,
body.b1fs-dark .hero p,
body.b1fs-dark .card p,
body.b1fs-dark .feature span,
body.b1fs-dark .footer,
body.b1fs-dark .footerline,
body.b1fs-dark .stat .k{color:var(--muted)!important}
body.b1fs-dark .question-top .small,body.b1fs-dark #modeText{color:#dbe5f5!important}
body.b1fs-dark .feedback.good{background:#154a30!important;color:#c7f6d6!important}
body.b1fs-dark .feedback.bad{background:#5b2727!important;color:#ffd0d0!important}
body.b1fs-dark .b1fs-preview{background:#20314a!important;border-color:#4a678b!important}
body.b1fs-dark .pic-option{background:var(--card)!important;border-color:var(--line)!important}
body.b1fs-dark .pic-option .pic-visual{background:linear-gradient(180deg,#243d63,#1d2e4a)!important;border-color:#5273a0!important}
body.b1fs-dark .pic-option .pic-text{color:var(--ink)!important}
body.b1fs-dark .pic-option .pic-label{background:#4d7ef0!important;color:#fff!important}
