:root{--quest-bg:#071b30;--quest-header:#102d48;--quest-brass:#a88a51;--quest-heading:#f3e7c9;--quest-title:#eddbad;--quest-owner:#d0b97f;--quest-card:#102b44;--quest-text:#f4eedf;--quest-border:#577083;--quest-ayah:#fff8e6;--quest-muted:#c4d2df;--quest-answer:#173c59;--quest-line:#678297;--quest-answer-text:#fff6dd;--quest-button:#dac18a;--quest-button-text:#14283c;--quest-gold:#e0cb98;--quest-feedback-text:#fff1cc;--quest-feedback:#193c59;--quest-pass:#244e72;--quest-pass-bg:#d6e3ed;}
/* Quest integration: quiet reading surface; decoration belongs to the shell. */
body.mumin-layout{background:var(--quest-bg)}
.mumin-layout .app>header{background:var(--quest-header);border-bottom-color:var(--quest-brass);color:var(--quest-heading)}
.mumin-layout .brand-name{display:block;white-space:nowrap;font-family:Georgia,serif;font-size:clamp(20px,5.5vw,28px);line-height:1.15;color:var(--quest-title)}
.quest-owner{display:block;font:12px/1.5 Georgia,serif;letter-spacing:1px;color:var(--quest-owner)}
.mumin-layout #main .flow-question{background:var(--quest-card);color:var(--quest-text);border:1px solid var(--quest-border);border-radius:12px;padding:24px;box-shadow:none;outline:none}
.mumin-layout #main .flow-question::before,.mumin-layout #main .flow-question::after{content:none}
.mumin-layout #main .flow-question h1{margin:12px 0;font-size:19px;color:var(--quest-text)}
.mumin-layout #main .flow-ayah{color:var(--quest-ayah);font-size:calc(var(--quran-size,28px) + 4px);line-height:2.1;margin:20px 0}
.mumin-layout #main .flow-question :is(.flow-note,.flow-quiet,.flow-typing label){color:var(--quest-muted)}
.mumin-layout #main .flow-answers button,.mumin-layout #main .flow-typing input{background:var(--quest-answer);border:1px solid var(--quest-line);color:var(--quest-answer-text);box-shadow:none;min-height:60px}
.mumin-layout #main .flow-answers button:disabled{opacity:.45}
.mumin-layout #main .flow-question button.primary{background:var(--quest-button);color:var(--quest-button-text);border:1px solid var(--quest-button);min-height:44px}
.mumin-layout .flow-difficulty{grid-template-columns:repeat(2,minmax(0,1fr))}
.quest-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.mumin-layout #main .quest-controls button{background:transparent;color:var(--quest-gold);border:1px solid var(--quest-line);min-height:44px;padding:8px 12px;font-size:13px}
.quest-points{font-size:13px;text-align:end;color:var(--quest-gold);margin:12px 0}
.mumin-layout #main .flow-feedback.correct,.mumin-layout #main .flow-feedback.wrong{width:100%;max-width:none;color:var(--quest-feedback-text);border:1px solid var(--quest-brass);background:var(--quest-feedback);margin:12px 0 0}
.flow-feedback .full{display:block;width:100%;margin-top:12px}
.mumin-layout .flow-verdict.pass{color:var(--quest-pass);background:var(--quest-pass-bg)}
@media(max-width:690px){.mumin-layout #main{padding:16px 10px}.mumin-layout #main .flow-question{padding:16px 12px;width:100%;max-width:100%}.mumin-layout .app>header{padding-inline:10px}.mumin-layout #main .flow-quiet{margin-bottom:10px;font-size:12px}.flow-answers{gap:8px}.mumin-layout #main .flow-answers button{padding:10px 6px;line-height:1.7;height:auto;overflow:visible}.mumin-layout #main .flow-question h1{font-size:17px}}

/* CSS-only Home: normal document flow, shared header, no image-dependent geometry. */
.mumin-layout.on-title .app{max-width:1120px;min-height:100svh}
.mumin-layout #main .quest-home{width:100%;max-width:880px;margin:0 auto;display:grid;gap:20px}
.quest-home-intro h1{font-size:clamp(22px,4vw,28px);margin:0 0 6px;line-height:1.3}
.quest-home-intro p{font-size:14px;color:var(--muted);margin:0}
.quest-home-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.quest-home-stats>div{display:flex;align-items:baseline;justify-content:center;gap:8px;padding:14px 8px;border-bottom:1px solid var(--line);min-width:0}
.quest-home-stats strong{font-size:26px;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--gold)}
.quest-home-stats span{font-size:13px;color:var(--muted)}
.quest-home .preview-home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.quest-home-panel{display:flex;flex-direction:column;gap:16px;min-width:0;padding:20px;background:var(--wood);border:1px solid var(--line);border-radius:10px}
.quest-home-panel h2{font-size:20px;line-height:1.3;margin:0}.quest-home-panel p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.quest-home-panel button{width:100%;margin-top:auto;min-height:48px;padding:12px;line-height:1.4}
.quest-home-progress{display:grid;gap:12px;color:var(--muted);font-size:14px;line-height:1.6}
.quest-home-progress progress{width:100%;height:10px;accent-color:var(--gold)}
.quest-home-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.quest-home-links button{min-width:0;min-height:48px;background:transparent;font-size:14px;padding:10px 6px}
.quest-home .title-version{text-align:center;margin-top:4px;font-size:10px;color:var(--muted)}
@media(max-width:600px){.quest-home .preview-home-actions{grid-template-columns:1fr;gap:16px}.quest-home-panel{padding:16px}.quest-home-links{gap:8px}.quest-home-stats{gap:8px}.quest-home-stats>div{gap:6px}.quest-home-stats span{font-size:12px}.quest-home-stats strong{font-size:24px}}
/* First paint before data/modules arrive; does not write or override saved preferences. */
.quest-loading{--bg:var(--quest-bg);--wood:var(--quest-card);--wood-raised:var(--quest-header);--text:var(--quest-text);--muted:var(--quest-muted)}
.quest-loading .app,.quest-loading #main{background:var(--quest-bg);color:var(--quest-text)}
.quest-loading #nav{display:none!important}.quest-loading .brand-logo{display:none!important}
.quest-loading .startup-status{padding:24px;text-align:center;color:var(--quest-muted)}

.mumin-layout #main .quest-home-panel button{min-height:48px;padding:12px;font-size:16px}
.mumin-layout #main .quest-home-map{background:var(--gold);color:var(--bg);border-color:var(--gold)}
