:root{--bg: #fbf9f5;--ink: #17161f;--ink-soft: #33313d;--muted: #6b6875;--faint: #a8a3ae;--border: #e6e1d8;--border-soft: rgba(230, 225, 216, .7);--card: #ffffff;--tint: #f7f4ee;--primary: #6b46f0;--primary-dark: #5a37d8;--primary-soft: rgba(107, 70, 240, .08);--success: #0f6b4f;--success-soft: rgba(15, 107, 79, .06);--danger: #b3243a;--shadow-card: 0 1px 2px rgba(23, 22, 31, .05), 0 12px 30px -24px rgba(23, 22, 31, .28);--shadow-lift: 0 18px 40px -28px rgba(107, 70, 240, .55);--shadow-panel: 0 30px 70px -40px rgba(23, 22, 31, .35);--font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;--font-display: "Instrument Serif", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--gutter: clamp(20px, 4vw, 56px);--radius: 16px}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}::selection{background:#6b46f029}button{font:inherit;color:inherit}button:focus-visible,a:focus-visible{outline:2px solid rgba(107,70,240,.55);outline-offset:3px}.app{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg)}.app__backdrop{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(42rem 30rem at 6% -14%,rgba(107,70,240,.14),transparent 62%),radial-gradient(34rem 26rem at 102% 106%,rgba(18,121,106,.12),transparent 58%),radial-gradient(rgba(23,22,31,.07) 1px,transparent 1px);background-size:auto,auto,22px 22px;background-position:0 0,0 0,-1px -1px}.topbar{position:relative;z-index:20;border-bottom:1px solid var(--border-soft);background:#fbf9f5b8;-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%)}.topbar__row{display:flex;align-items:center;gap:12px;padding:14px var(--gutter) 0}.brand{display:flex;align-items:center;gap:12px;border:0;background:transparent;padding:0;cursor:pointer;text-align:left}.brand__mark{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;border:1px solid rgba(107,70,240,.25);background:var(--primary-soft);color:var(--primary);font-family:var(--font-display);font-size:18px;line-height:1;transition:background .2s,border-color .2s}.brand:hover .brand__mark{background:#6b46f024;border-color:#6b46f066}.brand__name{display:block;font-family:var(--font-display);font-size:16px;line-height:1;letter-spacing:.02em}.brand__sub{display:none;margin-top:5px;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}.topbar__right{display:flex;align-items:center;gap:12px;margin-left:auto}.topbar__hint{display:none;font-size:11px;color:var(--muted)}.counter{font-family:var(--font-mono);font-size:11px;color:var(--muted)}.counter span{color:var(--faint)}.icon-btn{display:grid;place-items:center;width:32px;height:32px;padding:0;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--muted);box-shadow:var(--shadow-card);cursor:pointer;transition:color .2s,border-color .2s}.icon-btn:hover{color:var(--ink);border-color:#6b46f066}.progress{display:flex;gap:4px;padding:12px var(--gutter) 10px}.progress__seg{flex:1;height:3px;padding:0;border:0;border-radius:999px;background:var(--border);cursor:pointer;transition:background .3s}.progress__seg:hover{background:#17161f33}.progress__seg.is-done{background:#6b46f04d}.progress__seg.is-done:hover{background:#6b46f080}.progress__seg.is-current{background:var(--primary)}.stage{position:relative;z-index:10;display:flex;flex:1;min-height:0;padding:20px var(--gutter) 8px}.slide{display:flex;flex:1;width:100%;min-height:0;overflow-y:auto;scrollbar-width:none;animation:slide-in .34s cubic-bezier(.22,1,.36,1) both}.slide::-webkit-scrollbar{display:none}@keyframes slide-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.eyebrow{display:flex;align-items:center;gap:12px}.eyebrow__num{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;border:1px solid rgba(107,70,240,.3);background:var(--primary-soft);color:var(--primary);font-family:var(--font-mono);font-size:10px}.eyebrow__line{width:32px;height:1px;background:var(--border)}.eyebrow__label{font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}.display{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em}.cover{display:grid;align-items:center;gap:26px;width:100%;height:100%;min-height:0;padding:4px 0}.cover__copy{max-width:640px}.cover__title{margin:20px 0 0;font-family:var(--font-display);font-weight:400;font-size:clamp(2.7rem,6.2vw,5.4rem);line-height:.92;letter-spacing:-.02em;text-wrap:balance}.cover__title em{color:var(--primary);font-style:italic}.cover__lead{max-width:600px;margin:16px 0 0;font-size:14.5px;line-height:1.65;color:var(--muted);text-wrap:pretty}.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px}.note{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:1px solid transparent;padding:9px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}.btn:disabled{opacity:.4;pointer-events:none}.btn--primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-lift)}.btn--primary:hover{background:var(--primary-dark)}.btn--ghost{background:var(--card);border-color:var(--border);color:var(--ink);box-shadow:var(--shadow-card)}.btn--ghost:hover{background:var(--tint);border-color:#6b46f066}.btn--lg{padding:12px 24px}.btn__arrow{transition:transform .2s}.btn:hover .btn__arrow{transform:translate(2px)}.stats{display:none;grid-template-columns:repeat(3,1fr);gap:16px;max-width:440px;margin-top:32px;padding-top:20px;border-top:1px solid var(--border)}.stat__value{margin:0;font-family:var(--font-display);font-size:24px;line-height:1}.stat__label{margin-top:6px;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.principles{position:relative}.principles:before{content:"";position:absolute;inset:-24px -20px;border-radius:48px;background:#6b46f012;filter:blur(28px)}.principles__card{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:28px;background:var(--card);box-shadow:var(--shadow-panel)}.principles__head{display:flex;align-items:baseline;justify-content:space-between;padding:11px 16px;border-bottom:1px solid var(--border-soft)}.principles__head p{margin:0;font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}.principles__head span{font-family:var(--font-mono);font-size:10px;color:var(--faint)}.principles__list{margin:0;padding:0;list-style:none}.principle{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border-soft);transition:background .2s}.principle:last-child{border-bottom:0}.principle:hover{background:var(--tint)}.principle__tile{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;border:1px solid var(--border);background:var(--tint);color:var(--primary);font-family:var(--font-display);font-size:18px;line-height:1;transition:background .2s,border-color .2s}.principle:hover .principle__tile{background:#6b46f01a;border-color:#6b46f04d}.principle__body{flex:1;min-width:0}.principle__name{display:block;font-size:13.5px;font-weight:500;line-height:1.2}.principle__desc{display:block;margin-top:3px;font-size:12px;line-height:1.35;color:var(--muted)}.principle__index{display:none;font-family:var(--font-mono);font-size:10px;color:var(--faint)}.question{display:flex;flex-direction:column;gap:18px;width:100%;min-height:100%}.qmeta{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.tag{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:999px;border:1px solid rgba(107,70,240,.25);background:var(--primary-soft);color:var(--primary);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.tag:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor}.qmeta__name{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.qmeta__count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--faint)}.qmeta__count strong{font-size:16px;font-weight:400;color:var(--ink)}.qtitle{max-width:880px;margin:0;font-size:clamp(1.15rem,2.1vw,1.85rem);font-weight:500;line-height:1.28;letter-spacing:-.015em;text-wrap:pretty}.options{display:grid;gap:10px;margin:0;padding:0}.option{display:flex;align-items:flex-start;gap:14px;width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);text-align:left;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s,opacity .2s}.option:hover{transform:translateY(-2px);border-color:#6b46f066;box-shadow:var(--shadow-lift)}.option__letter{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;border:1px solid var(--border);background:var(--tint);color:var(--muted);font-family:var(--font-mono);font-size:12px;transition:background .2s,border-color .2s,color .2s}.option__text{flex:1;padding-top:4px;font-size:13.5px;line-height:1.4;text-wrap:pretty}.option__icon{flex-shrink:0;margin-top:7px}.option.is-selected{border-color:#6b46f099;background:#6b46f00d;box-shadow:0 0 0 1px #6b46f038}.option.is-selected .option__letter{border-color:#6b46f066;background:#6b46f01a;color:var(--primary)}.option.is-correct{border-color:#0f6b4f73;background:var(--success-soft);box-shadow:0 0 0 1px #0f6b4f2e}.option.is-correct .option__letter{border-color:#0f6b4f59;background:#0f6b4f1a;color:var(--success)}.option.is-wrong{border-color:#b3243a73;background:#b3243a0d}.option.is-wrong .option__letter{border-color:#b3243a59;background:#b3243a1a;color:var(--danger)}.option.is-correct:hover,.option.is-wrong:hover,.option.is-dim{transform:none;box-shadow:none}.option.is-dim{opacity:.5;cursor:default}.reveal{margin-top:auto;padding-top:4px}.reveal__bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;border:1px dashed var(--border);border-radius:var(--radius);background:#ffffffb3}.reveal__text{display:flex;align-items:center;gap:8px;margin:0;font-size:12.5px;color:var(--muted)}.btn--reveal{margin-left:auto;padding:8px 14px;font-size:12px;background:var(--primary);color:#fff;box-shadow:var(--shadow-lift)}.btn--reveal:hover{background:var(--primary-dark)}.kbd-inline{padding:1px 5px;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:#ffffff1f;font-family:var(--font-mono);font-size:9px}.answer{padding:14px 16px;border:1px solid rgba(15,107,79,.3);border-radius:var(--radius);background:var(--success-soft);animation:fade-up .3s ease-out both}.answer__row{display:flex;align-items:flex-start;gap:12px}.answer__letter{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:12px;border:1px solid rgba(15,107,79,.35);background:#0f6b4f1a;color:var(--success);font-family:var(--font-mono);font-size:11px}.answer__label{display:flex;align-items:center;gap:6px;margin:0;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--success)}.answer__text{margin:4px 0 0;font-size:14px;font-weight:500;line-height:1.4}.answer__note{margin:6px 0 0;font-size:12.5px;line-height:1.55;color:var(--muted);text-wrap:pretty}.summary{display:flex;flex-direction:column;gap:24px;width:100%;min-height:100%;padding:8px 0 4px}.summary__title{margin:16px 0 0;font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,4vw,3.4rem);line-height:.98;letter-spacing:-.02em}.summary__title em{font-style:italic;color:var(--primary)}.summary__grid{display:grid;gap:12px}.summary__card{padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);transition:transform .2s,border-color .2s,box-shadow .2s}.summary__card:hover{transform:translateY(-2px);border-color:#6b46f04d;box-shadow:var(--shadow-lift)}.summary__letter{font-family:var(--font-display);font-size:30px;line-height:1;color:#6b46f0b3}.summary__name{margin:12px 0 0;font-size:14px;font-weight:500;line-height:1.2}.summary__desc{margin:6px 0 0;font-size:12px;line-height:1.45;color:var(--muted);text-wrap:pretty}.result{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;margin-top:auto;padding:20px;border:1px solid var(--border);border-radius:28px;background:var(--card);box-shadow:var(--shadow-panel)}.result__left{display:flex;align-items:center;gap:20px}.ring{position:relative;display:grid;place-items:center;flex-shrink:0;width:86px;height:86px}.ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.ring__value{font-family:var(--font-display);font-size:20px;line-height:1}.result__label{margin:0;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.result__score{margin:6px 0 0;font-family:var(--font-display);font-size:36px;line-height:1}.result__score span{color:var(--muted)}.result__meta{margin:8px 0 0;font-size:12px;color:var(--muted)}.result__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.bottombar{position:relative;z-index:20;display:flex;align-items:center;gap:16px;padding:12px var(--gutter);border-top:1px solid var(--border-soft);background:#fbf9f5b8;-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%)}.hints{display:none;align-items:center;gap:8px;margin:0;font-size:11px;color:var(--muted)}.hints__sep{width:1px;height:12px;margin:0 6px;background:var(--border)}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:1px 6px;border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--muted);font-family:var(--font-mono);font-size:10px;box-shadow:0 1px 0 var(--border)}.nav{display:flex;align-items:center;gap:8px;margin-left:auto}.error-page{display:grid;place-items:center;min-height:100vh;padding:24px;background:var(--bg);color:var(--ink);text-align:center}.error-page__box{max-width:420px}.error-page__title{margin:0 0 8px;font-size:22px;font-weight:600}.error-page__text{margin:0 0 24px;color:var(--muted)}.error-page__details{margin:0 0 24px;padding:12px;border-radius:10px;background:var(--tint);color:var(--muted);font-size:13px;text-align:left;white-space:pre-wrap;word-break:break-word}@media(min-width:640px){.brand__sub,.topbar__hint{display:block}.eyebrow__label{font-size:10px;letter-spacing:.32em}.cover{gap:36px}.cover__lead{font-size:17px}.stats{display:grid;margin-top:36px}.principles__head{padding:14px 20px}.principle{gap:16px;padding:13px 20px}.principle__tile{width:40px;height:40px;font-size:20px}.principle__index{display:block}.options{grid-template-columns:1fr 1fr}.option__text{font-size:14px}.answer__note{font-size:13px}.summary__grid{grid-template-columns:1fr 1fr}.result{padding:24px}.hints{display:flex}}@media(min-width:1024px){.cover{grid-template-columns:1.06fr .94fr;gap:64px}.stage{padding-top:26px}.summary__grid{grid-template-columns:repeat(5,1fr)}}
