@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display&display=swap');

:root{--paper:#f6f4ee;--card:#fffefa;--ink:#183c32;--muted:#727c74;--line:#e6e4db;--accent:#ca8056;--soft:#e9eee8;--good:#386a4b;--bad:#a7493c;--shadow:0 16px 46px rgba(26,48,39,.07);font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--paper)}button,a,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,6vw,88px);border-bottom:1px solid rgba(24,60,50,.08)}.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:22px;letter-spacing:-1.1px}.brand-period{color:var(--accent)}.brand-mark{width:29px;height:29px;border-radius:10px;background:var(--ink);display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:7px}.brand-mark span{width:3px;border-radius:4px;background:#f4e7cc}.brand-mark span:nth-child(1){height:8px}.brand-mark span:nth-child(2){height:13px}.brand-mark span:nth-child(3){height:10px;background:#d9956e}.topbar-right{display:flex;align-items:center;gap:22px}.topbar-note{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}.status-dot{width:7px;height:7px;border-radius:50%;background:#8caa86}.icon-button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);transition:.2s}.icon-button:hover{background:white;transform:translateY(-1px)}.icon-button svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.app-shell{max-width:1150px;margin:0 auto;padding:0 30px;min-height:calc(100vh - 138px)}.footer{max-width:1150px;margin:0 auto;padding:24px 30px 34px;display:flex;justify-content:space-between;color:#92978f;font-size:11px;border-top:1px solid rgba(24,60,50,.08)}
.hero{padding:68px 0 45px;display:grid;grid-template-columns:1fr .72fr;gap:48px;align-items:end}.eyebrow{text-transform:uppercase;letter-spacing:1.9px;font-size:10px;font-weight:700;color:var(--accent);display:flex;align-items:center;gap:9px}.eyebrow:before{content:'';width:22px;height:1px;background:currentColor}.hero h1,.result-title{font-family:'DM Serif Display',Georgia,serif;letter-spacing:-1.6px;font-weight:400;font-size:clamp(42px,5vw,62px);line-height:1.05;margin:19px 0 15px;max-width:600px}.hero h1 em{color:var(--accent);font-weight:400}.hero-copy{color:var(--muted);font-size:14px;line-height:1.75;max-width:440px;margin:0}.hero-aside{border-left:1px solid var(--line);padding:5px 0 4px 26px;color:var(--muted);font-size:12px;line-height:1.7;margin-bottom:4px}.hero-aside strong{display:block;font-size:24px;color:var(--ink);font-family:'DM Serif Display',Georgia,serif;font-weight:400;line-height:1.2;margin-bottom:5px}.section-heading{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px}.section-heading h2{margin:0;font-size:13px;letter-spacing:.2px}.section-heading span{font-size:11px;color:var(--muted)}.quiz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.quiz-card{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:25px;min-height:230px;display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s,border-color .2s}.quiz-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#d1d8cf}.card-top{display:flex;justify-content:space-between;align-items:center}.card-tag{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;font-weight:700;color:#617769;background:#eef1eb;border-radius:30px;padding:7px 10px}.card-arrow{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#f4f2ec;color:#69766c;font-size:16px}.quiz-card h3{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:27px;line-height:1.2;margin:23px 0 8px;letter-spacing:-.3px}.card-description{font-size:12px;color:var(--muted);line-height:1.55;margin:0 0 20px}.card-bottom{margin-top:auto}.progress-meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted);margin-bottom:8px}.progress-track{height:4px;background:#eeede6;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:var(--good);border-radius:10px;transition:width .3s}.card-cta{display:flex;align-items:center;justify-content:space-between;margin-top:18px;font-size:11px;font-weight:700;color:var(--ink)}.card-cta span:last-child{font-size:17px;font-weight:400;color:var(--accent)}.library-note{margin:20px 0 52px;display:flex;gap:10px;align-items:center;color:#899087;font-size:10px}.library-note svg{width:15px;fill:none;stroke:currentColor;stroke-width:1.5}
.player-shell{max-width:820px;margin:0 auto;padding:35px 0 50px}.player-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.back-link{display:inline-flex;gap:9px;align-items:center;color:var(--muted);font-size:11px}.back-link:hover{color:var(--ink)}.back-link b{font-size:17px;font-weight:400}.quiz-name{font-family:'DM Serif Display',Georgia,serif;font-size:17px}.player-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:17px;margin-bottom:29px}.player-progress .progress-track{height:5px}.progress-count{font-size:10px;white-space:nowrap;color:var(--muted)}.question-card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:clamp(23px,4.2vw,42px);box-shadow:0 8px 32px rgba(26,48,39,.035)}.question-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:21px}.question-index{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px}.answer-type{font-size:10px;color:#67796c;display:flex;align-items:center;gap:7px}.type-mark{width:15px;height:15px;border:1.4px solid #8ca092;border-radius:50%;display:grid;place-items:center}.type-mark.multiple{border-radius:4px}.type-mark.multiple:after{content:'';width:6px;height:6px;background:#8ca092;border-radius:1px}.question-text{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(23px,3.3vw,32px);line-height:1.3;letter-spacing:-.35px;font-weight:400;margin:0 0 24px}.question-image{display:block;max-width:min(100%,490px);max-height:300px;object-fit:contain;margin:0 auto 24px;border-radius:8px;background:#fff;padding:7px;border:1px solid #efeee8}.options{display:grid;gap:9px}.option{width:100%;text-align:left;display:grid;grid-template-columns:34px 1fr 20px;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);background:#fffefa;border-radius:9px;color:#344a40;transition:.15s;min-height:52px}.option:hover:not(:disabled){border-color:#a9b8aa;background:#fdfcf7}.option.selected{border-color:#668273;background:#f2f5ef}.option-letter{width:27px;height:27px;display:grid;place-items:center;border:1px solid #dfdfd6;border-radius:50%;font-size:10px;color:#879087}.question-card[data-multiple="true"] .option-letter{border-radius:6px}.option.selected .option-letter{border-color:var(--ink);background:var(--ink);color:white}.option-text{font-size:12px;line-height:1.5}.option-trailing{width:16px;height:16px;border:1px solid #dadbd2;border-radius:50%;justify-self:end}.question-card[data-multiple="true"] .option-trailing{border-radius:4px}.option.selected .option-trailing{background:var(--ink);border-color:var(--ink);position:relative}.option.selected .option-trailing:after{content:'✓';position:absolute;color:#fff;font-size:11px;line-height:14px;left:2px;top:0}.option.correct{border-color:#a8c4aa;background:#f0f6ef}.option.correct .option-letter{background:#e1eee0;border-color:#bfd3c0;color:var(--good)}.option.correct .option-trailing{background:var(--good);border-color:var(--good)}.option.correct .option-trailing:after{content:'✓';position:absolute;color:white;font-size:11px;line-height:14px;left:2px;top:0}.option.incorrect{border-color:#dfb6aa;background:#fbf0ed}.option.incorrect .option-letter{color:var(--bad);border-color:#dfb6aa}.option.incorrect .option-trailing{background:var(--bad);border-color:var(--bad)}.option-feedback{font-size:11px;margin:15px 1px 0;min-height:17px;color:var(--muted)}.option-feedback.good{color:var(--good)}.option-feedback.bad{color:var(--bad)}.player-actions{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:15px}.button{min-height:42px;border:1px solid transparent;border-radius:7px;padding:0 17px;font-size:11px;font-weight:600;transition:transform .15s,background .15s,border .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.44;cursor:not-allowed}.button-dark{background:var(--ink);color:#fff}.button-dark:hover:not(:disabled){background:#245044}.button-outline{background:transparent;border-color:var(--line);color:var(--ink)}.button-outline:hover:not(:disabled){border-color:#9daa9e;background:#fffefa}.button-quiet{background:transparent;border-color:transparent;color:var(--muted);padding:0 7px}.action-right{display:flex;align-items:center;gap:12px}.review-link{color:var(--muted);font-size:10px;text-decoration:underline;text-underline-offset:3px;background:none;border:0;padding:8px}.key-hint{text-align:center;color:#a0a49b;font-size:9px;margin-top:25px}
.result-shell{max-width:760px;margin:0 auto;padding:68px 0 74px}.result-card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:clamp(28px,6vw,58px);box-shadow:var(--shadow)}.result-kicker{color:var(--accent);font-size:10px;text-transform:uppercase;letter-spacing:1.7px;font-weight:700}.result-title{font-size:clamp(38px,5vw,54px);margin:16px 0 13px}.result-copy{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 29px}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:28px}.result-stat{padding:17px 13px 17px 0}.result-stat+.result-stat{border-left:1px solid var(--line);padding-left:20px}.result-stat strong{display:block;font-family:'DM Serif Display',Georgia,serif;font-size:25px;font-weight:400}.result-stat span{display:block;color:var(--muted);font-size:9px;margin-top:4px}.result-actions{display:flex;gap:10px;flex-wrap:wrap}.result-actions .button{min-width:150px}.result-progress{margin-top:20px;font-size:10px;color:var(--muted)}.transfer-dialog{width:min(490px,calc(100% - 30px));max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);padding:33px;box-shadow:0 26px 80px rgba(19,46,35,.22)}.transfer-dialog::backdrop{background:rgba(21,37,30,.44);backdrop-filter:blur(2px)}.dialog-close{float:right;border:0;background:none;font-size:26px;color:var(--muted);line-height:1}.transfer-dialog h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:31px;letter-spacing:-.6px;margin:12px 0 8px}.dialog-intro{font-size:11px;line-height:1.65;color:var(--muted);margin:0 0 22px}.transfer-section{border-top:1px solid var(--line);padding-top:17px;margin-top:17px;display:grid;gap:9px}.transfer-section label{font-size:10px;font-weight:700}.transfer-section textarea{resize:vertical;width:100%;border:1px solid var(--line);border-radius:7px;padding:10px;background:#fcfbf6;color:#45584d;font-size:10px;line-height:1.5;outline:none}.transfer-section textarea:focus{border-color:#9eae9f}.button-wide{width:100%;min-height:39px}.transfer-feedback{font-size:10px;min-height:14px;color:var(--good);margin:0}.transfer-feedback.error{color:var(--bad)}.fine-print{font-size:9px;color:#989b92;line-height:1.5;margin:20px 0 0}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,15px);padding:11px 16px;border-radius:7px;background:var(--ink);color:white;font-size:11px;opacity:0;transition:.2s;pointer-events:none;box-shadow:var(--shadow);z-index:2}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:720px){.app-shell{padding:0 19px}.topbar{height:66px;padding:0 19px}.topbar-note{display:none}.hero{grid-template-columns:1fr;padding:49px 0 33px;gap:21px}.hero h1{font-size:45px;margin-top:14px}.hero-aside{border-left:0;border-top:1px solid var(--line);padding:16px 0 0;display:flex;align-items:center;gap:12px}.hero-aside strong{font-size:22px;margin:0}.hero-aside span{max-width:170px;line-height:1.5}.quiz-grid{grid-template-columns:1fr}.quiz-card{min-height:206px;padding:21px}.quiz-card h3{font-size:25px;margin-top:18px}.footer{padding:20px 19px 25px;gap:12px;align-items:flex-start;flex-direction:column}.player-shell{padding:24px 0 42px}.player-top{margin-bottom:20px}.quiz-name{font-size:14px}.question-card{padding:22px 17px}.question-text{font-size:25px}.option{grid-template-columns:30px 1fr 18px;padding:10px 10px;gap:9px}.option-text{font-size:11px}.player-actions{align-items:stretch}.action-right{gap:4px}.player-actions .button{padding:0 12px}.result-shell{padding:40px 0}.result-stats{grid-template-columns:repeat(3,1fr)}.result-stat{padding-right:7px}.result-stat+.result-stat{padding-left:10px}.result-stat strong{font-size:21px}.transfer-dialog{padding:26px 21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

.quiz-card{font-family:inherit;text-align:left;color:var(--ink)}
.card-content{display:block}
.card-title{display:block;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:27px;line-height:1.2;margin:23px 0 8px;letter-spacing:-.3px}
.card-description{display:block}
.card-bottom{display:block}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:720px){.card-title{font-size:25px;margin-top:18px}}

/* Quiet, dark interface */
:root{--paper:#101114;--card:#191a1f;--ink:#f5f5f7;--muted:#9a9ba3;--line:#2c2d33;--accent:#c8c9d0;--soft:#222329;--good:#83c99b;--bad:#f09a91;--shadow:0 18px 60px rgba(0,0,0,.28);color-scheme:dark}
body{background:var(--paper)}
.topbar,.footer{border-color:#25262b}
.brand-mark{background:#f5f5f7}.brand-mark span{background:#141519}.brand-mark span:nth-child(3){background:#858791}
.brand-period,.card-cta span:last-child{color:#d6d7dc}
.icon-button,.card-arrow,.card-tag{background:#222329;border-color:#34353c;color:#d7d8de}
.hero-aside,.section-heading,.quiz-card,.question-card,.result-card,.transfer-dialog{border-color:#2d2e35}
.hero h1 em{color:#c9cad1}
.quiz-card,.question-card,.result-card,.transfer-dialog{background:#191a1f}
.quiz-card:hover{border-color:#4a4c54;box-shadow:var(--shadow)}
.progress-track{background:#303138}.progress-fill{background:#aeb0b8}
.option{background:#202126;border-color:#33343b;color:#ededf0;border-radius:15px}
.option:hover:not(:disabled){background:#25262c;border-color:#555761}
.option.selected,.option.selected .option-letter{background:#303138;border-color:#858791;color:#fff}
.option-letter,.option-trailing{border-color:#55565e;color:#a9aab1}
.option.correct{background:#1b2a21;border-color:#527d5f}.option.correct .option-letter{background:#26392c;border-color:#527d5f;color:#a5e1b4}
.option.incorrect{background:#2d201f;border-color:#80534e}.option.incorrect .option-letter{border-color:#80534e;color:#f09a91}
.answer-type,.type-mark{color:#c5c6cd;border-color:#858791}.type-mark.multiple:after{background:#c5c6cd}
.button-dark{background:#f1f1f3;color:#17181c}.button-dark:hover:not(:disabled){background:#d9d9de}
.button-outline{border-color:#3d3e46;color:#f1f1f3}.button-outline:hover:not(:disabled){background:#23242a;border-color:#676972}
.button-quiet,.back-link{color:#a6a7ae}.back-link:hover{color:#fff}
.question-image{background:#fff;border-color:#33343b}
.question-image{width:100%;max-width:760px;max-height:none;object-fit:contain;border-radius:16px;cursor:zoom-in}
.reset-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}.reset-actions .button{flex:1;min-width:150px}.button-danger{background:#a7493c;color:#fff}.button-danger:hover{background:#87382e}
.transfer-section textarea{background:#111216;border-color:#35363d;color:#f1f1f3}
.transfer-dialog::backdrop{background:rgba(0,0,0,.72)}
.library-note,.footer{color:#777981}
.toast{background:#f1f1f3;color:#17181c}
.card-title,.question-text,.hero h1,.result-title,.quiz-name,.result-stat strong,.transfer-dialog h2,.hero-aside strong{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.045em;font-weight:600}
.hero h1{font-size:clamp(38px,4.5vw,54px)}
.card-title{font-size:23px}
.eyebrow:before{display:none}
.eyebrow,.result-kicker{color:#a6a7ae;letter-spacing:1.2px}
.quiz-card,.question-card,.result-card,.transfer-dialog{border-radius:24px}
.option{border-radius:16px;min-height:58px}
.button{border-radius:14px;min-height:46px}
.icon-button{border-radius:14px}
.card-tag{border-radius:999px}
.transfer-dialog{background:#191a1f;color:var(--ink)}
.button-danger{background:#c77870;color:#171719}.button-danger:hover{background:#db8b83}
@media(max-width:720px){.hero{padding-top:42px}.hero h1{font-size:40px}.card-title{font-size:22px}}

