/* Midnight studio: shared presentation layer, no changes to learning data. */
:root,body,body[data-theme]{
 --bg:#080c13;--card:#121a26;--panel:#121a26;--paper:#121a26;--ink:#edf1f7;--text:#edf1f7;
 --muted:#a4b1c5;--line:#2b394b;--border:#2b394b;--accent:#78c6e7;--gold:#d8b77c;
 --memoBg:#0c131e;--bar:#182538;--bar2:#162235;--grid:#344358;--blue:#437895;
 --shadow:0 16px 42px rgba(0,0,0,.25);color-scheme:dark;
}
html{background:#080c13!important;scrollbar-color:#40536b #0b111c}
body{
 color:var(--ink)!important;background-color:#080c13!important;
 background-image:radial-gradient(ellipse at 5% 0%,rgba(54,99,133,.22),transparent 55%),radial-gradient(ellipse at 100% 35%,rgba(170,129,63,.09),transparent 45%),linear-gradient(rgba(160,187,219,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(160,187,219,.018) 1px,transparent 1px)!important;
 background-size:auto,auto,64px 64px,64px 64px!important;background-attachment:fixed!important;
}
::selection{background:#395974;color:#fff}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
a{color:#9dd9ef}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #9dd9ef;outline-offset:4px}
.appHeader{background:linear-gradient(120deg,rgba(16,25,38,.96),rgba(10,17,27,.96))!important;border-color:#2b394b!important;box-shadow:0 8px 28px rgba(0,0,0,.2)!important;backdrop-filter:blur(14px)}
.appHeader h1,.title,.hero h2,.homeCard h1,.resultCard h1{color:#f1f4f9!important}.kicker,.homeKicker{color:#d8b77c!important;letter-spacing:.15em}
.hero,.redHero{background:radial-gradient(ellipse at 100% 0%,rgba(115,162,194,.12),transparent 65%),linear-gradient(120deg,#162333,#101821)!important;border:1px solid #34465b!important;box-shadow:inset 0 1px rgba(255,255,255,.045),0 18px 40px rgba(0,0,0,.24)!important;position:relative;overflow:hidden}
.heroMark,.mark{color:#e6c895!important;background:linear-gradient(135deg,#29374a,#121d2c)!important;border:1px solid #6b5d43;box-shadow:inset 0 1px rgba(255,255,255,.08),0 6px 20px rgba(0,0,0,.18)!important}
.lead,.hero p,.homeCard p,.resultCard p{color:#b4c1d3!important}
.tile,.tile.kenpou,.tile.minpou,.tile.keihou,.tile.sync,.sectionItem,.chapterQuickItem,.card{color:var(--ink)!important;background:linear-gradient(140deg,#162131,#101824)!important;border-color:#2c3c50!important;box-shadow:inset 0 1px rgba(255,255,255,.035),0 10px 24px rgba(0,0,0,.18)!important;transition:background .18s,border-color .18s,transform .18s}
.tile:hover,.sectionItem:hover,.chapterQuickItem:hover,.card:hover{border-color:#658197!important;background:linear-gradient(140deg,#1b2b3f,#142133)!important;transform:translateY(-2px)}
.tile strong,.sectionItem strong{letter-spacing:.015em}.tile span,.sectionItem span,.chapterQuickItem span{color:#aab8cc!important}
.tile.kenpou{border-top:2px solid #81b9d6!important}.tile.minpou{border-top:2px solid #c9ad78!important}.tile.keihou{border-top:2px solid #a59bd2!important}.tile.danger,.tile.warn{border-color:#3c4b60!important}
.deviceBadge,.ghost,.back,.pill,.miniPill,.answerBadge,.qMiniResult,.questionTimer.stopped,.memoTabs button,.explainColorBtn,.homeBtns a,.homeBtns button,.reviewBtn{background:#182334!important;color:#d9e4f3!important;border-color:#3a4b63!important;box-shadow:none!important}
.primary,.homeBtns .primary,.memoTabs button.active,#rnGenerate,#rnSave{background:linear-gradient(135deg,#30617a,#23495d)!important;color:#f4f9fc!important;border:1px solid #527e93!important;border-radius:12px;padding:10px 16px;font-weight:800}
.primary:hover,#rnGenerate:hover,#rnSave:hover{background:#366e88!important}
#rnStop,#rnExport,#rnForget,#rnHome{background:#182334!important;color:#d9e4f3!important;border:1px solid #3a4b63!important;border-radius:12px;padding:10px 16px}
.panelTop,.leftPane,.commandPanel,.memoPanel,.syncPanel,.practiceResultPanel,.homeCard,.resultCard,.reviewItem,.rnNote{background:#111a27!important;color:var(--ink)!important;border-color:#2c3c50!important;box-shadow:inset 0 1px rgba(255,255,255,.035),var(--shadow)!important}
.chapterHomeBlock{background:rgba(15,24,37,.72)!important;border-color:#293a4f!important}.problemToolbar,.rnSettingsBody{background:#152132!important;border-color:#2c3c50!important}
.qCard,.qCard.correct,.qCard.wrong,.qCard.unknown{background:#151f2e!important;border-color:#334258!important;box-shadow:none!important}
.qCard.selected{background:#1a2b3f!important;border-color:#78c6e7!important;outline:2px solid rgba(120,198,231,.45)!important;outline-offset:1px}.qCard.selected .qNo{color:#b6e4f4!important}.qCard.selected .qMiniResult{background:#33546d!important;color:#edf6ff!important}
.circleO{background:linear-gradient(135deg,#245d50,#164536)!important}.circleUnknown{background:linear-gradient(135deg,#8c632a,#664719)!important}.circleX{background:linear-gradient(135deg,#853747,#642737)!important}.choiceBtn{border:1px solid rgba(255,255,255,.13)!important;box-shadow:inset 0 1px rgba(255,255,255,.08)}
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea,.syncBox{background:#0b1420!important;color:#e5edf9!important;border-color:#394b65!important}input::placeholder,textarea::placeholder{color:#94a2b7!important}input[type=checkbox],input[type=radio]{accent-color:#77bad7}
.resultBox,.reviewNotes details,.practiceMetric,.rnFlowStep,.rnTableWrap td,.rnTableWrap th{border-color:#37485e!important}.resultBox{background:#0c1521;color:#b7c4d7}.rnQuestion{background:#182536!important;border-color:#5d7995!important}.rnTableWrap th{background:#1d2b40}.rnTableWrap td{background:#111b29}.rnSmall,.practiceNote{color:#a4b1c5!important}
.notice{background:#2b261c!important;color:#e5c994!important;border-color:#65533a!important}.ok{color:#8dd9b2!important}.ng{color:#efa6b1!important}
/* CBT: preserve the full examination layout and answer controls. */
.homePanel,.resultPanel{background:transparent!important}.homeCard details{background:#172334!important;border-color:#37485e!important}
.cbtShell,.exam,.workArea,.paperWrap,.paperFrame{background:#0b121d!important}.cbtTop,.subHeader,.bottom,.bottomBar{background:#152031!important;border-color:#34465d!important;color:#e5edf8!important}
.examName,.timer,.remain,.statusNo,.currentNo,#examName,.timeLabel{color:#e5edf8!important}.timeLabel b{color:#e5c994!important}.systemTitle{background:#1c2d41!important}
.tools,.leftTools,.side,.answerSheet{background:#111c2b!important;border-color:#34465d!important}.paper{background:#151e2c!important;color:#edf1f7!important;border-color:#34465d!important;box-shadow:0 0 0 1px #34465d!important}
.ansTable,.answerSheet table,.ansTable th,.answerSheet th,.ansTable td,.answerSheet td,.answerSheet td.qGroup,.rowBtn.sameQ td:first-child{background:#172335!important;color:#dfe8f5!important;border-color:#3b4d66!important}
.rowBtn.current td,.answerSheet tr.current td{background:#655334!important;color:#fff1d3!important}.answerSheet tr.done td.answerCell{color:#eaf2fe!important}.answerSheet tr.mark td.reviewCell{color:#ffb8b8!important}
.ansBtn,.choiceButtons button{background:#1b293d!important;color:#e8eff9!important;border-color:#496079!important}.ansBtn.on,.choiceButtons button.on,.choiceButtons button.selected{background:#31566e!important;color:#fff!important;border-color:#8bcee8!important}
.topTools button:nth-child(2){background:#24364c!important;color:#eaf1f9!important;border-color:#465c76!important}.toolStrip .tool,.topTools button,.navs button,.navBtn,.answerPanelBtn{background:#2c4c64;color:#f1f6fb!important}.reviewBtn.on{background:#604825!important;color:#ffe2ad!important}.navBtn.disabled{background:#223044!important;color:#899ab1!important}
@media(prefers-reduced-motion:reduce){.tile,.sectionItem,.chapterQuickItem,.card{transition:none}.tile:hover,.sectionItem:hover,.chapterQuickItem:hover,.card:hover{transform:none}}
.questionTimer{background:#1a2b3f!important;color:#c5e4f3!important;border-color:#415d76!important}.questionTimer.expired{background:#542635!important;color:#ffdce3!important}.qEditBtn,.explainEditBtn{color:#a9bfd6!important}
.remain::first-letter{color:#e5edf8!important}
