:root{--color-heading: #2b292b;--color-text: #403c34;--color-accent: #ac8435;--color-bg: #f7f2e9;--color-border: #d4ccc1;--color-subtle: #e8e1d6;--color-correct: #2f6f4e;--color-wrong: #8a3b2f;--color-correct-bg: #e2efe8;--color-wrong-bg: #f2e3e0;--font-serif: "PT Serif", serif;--font-decorative: "Cinzel Decorative", serif;--font-quote: "IM Fell English", serif;--font-mono: Menlo, "JetBrains Mono", Roboto Mono, ui-monospace, SFMono-Regular, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-size-base: 16px;--font-size-small: 14px;--font-size-large: 18px;--font-size-h1: 28px;--font-size-h2: 24px;--font-size-h3: 20px;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--max-width: 800px;--content-padding: 1rem}@media(min-width:768px){:root{--font-size-h1: 36px;--font-size-h2: 28px;--font-size-h3: 22px;--content-padding: 2rem}}@media(min-width:1024px){:root{--font-size-h1: 44px}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-family:var(--font-serif);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text);background-color:var(--color-bg);scroll-behavior:smooth}body{background-color:var(--color-bg);display:flex;flex-direction:column;min-height:100vh}header{background-color:var(--color-bg);border-bottom:1px solid var(--color-border);padding:var(--spacing-sm) var(--content-padding);position:sticky;top:0;z-index:100}nav{display:flex;justify-content:flex-end;gap:var(--spacing-md);max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-sm)}nav a{color:var(--color-accent);text-decoration:none;font-size:var(--font-size-small);font-weight:700;letter-spacing:.5px;transition:color .2s ease;text-transform:uppercase}nav a:hover,nav a:focus{color:var(--color-heading);outline:none}main{flex:1;width:100%;max-width:100%;margin:0 auto;padding:var(--spacing-lg) var(--content-padding);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--spacing-sm)}main>*{width:100%;max-width:var(--max-width)}h1,h2,h3,h4,h5,h6{color:var(--color-heading);line-height:1.2;margin-bottom:var(--spacing-sm)}h1{font-family:var(--font-decorative);font-size:var(--font-size-h1);font-weight:700;margin-bottom:var(--spacing-md)}h2{font-family:var(--font-serif);font-size:var(--font-size-h2);font-weight:700;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}h3{font-family:var(--font-serif);font-size:var(--font-size-h3);font-weight:700;margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs)}p{margin-bottom:var(--spacing-sm);line-height:1.8;font-size:var(--font-size-base)}strong{color:var(--color-heading);font-weight:700}em{font-style:italic}a{color:var(--color-accent);text-decoration:underline;transition:color .2s ease}a:hover,a:focus{color:var(--color-heading);outline:none}a:active{color:var(--color-accent)}ul,ol{margin:var(--spacing-sm) 0;padding-left:var(--spacing-md);font-size:var(--font-size-base)}li{margin-bottom:var(--spacing-xs)}pre{background-color:var(--color-subtle);border:1px solid var(--color-border);padding:var(--spacing-sm);border-radius:4px;overflow-x:auto;margin:var(--spacing-sm) 0;font-family:var(--font-mono);font-size:var(--font-size-small);line-height:1.4}code{background-color:var(--color-subtle);padding:.2rem .4rem;border-radius:2px;font-family:var(--font-mono);font-size:var(--font-size-small);color:var(--color-heading)}pre code{background-color:transparent;padding:0;border-radius:0;color:var(--color-text)}footer{background-color:var(--color-heading);color:var(--color-bg);text-align:center;padding:var(--spacing-md) var(--content-padding);margin-top:auto;border-top:1px solid var(--color-border);font-size:var(--font-size-small)}footer p{margin-bottom:0;line-height:1.4}button,input[type=submit],input[type=button]{background-color:var(--color-accent);color:var(--color-bg);border:none;padding:var(--spacing-xs) var(--spacing-md);border-radius:4px;font-family:var(--font-serif);font-size:var(--font-size-base);font-weight:700;cursor:pointer;transition:background-color .2s ease;letter-spacing:.5px}button:hover,input[type=submit]:hover,input[type=button]:hover{background-color:var(--color-heading)}button:active,input[type=submit]:active,input[type=button]:active{opacity:.8}input[type=text],input[type=email],input[type=password],textarea,select{font-family:var(--font-serif);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-subtle);border:1px solid var(--color-border);padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;transition:border-color .2s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-accent);background-color:#fff}@media(max-width:767px){main{padding:var(--spacing-md) var(--content-padding)}nav{gap:var(--spacing-sm)}h1{margin-bottom:var(--spacing-sm)}footer{padding:var(--spacing-md) var(--content-padding)}}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--content-padding)}.text-center{text-align:center}.mt-md{margin-top:var(--spacing-md)}.mb-md{margin-bottom:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-lg{margin-bottom:var(--spacing-lg)}.puzzle-header{margin-bottom:var(--spacing-md)}.puzzle-date{margin-top:calc(var(--spacing-xs) * -.5)}.puzzle-page{display:flex;flex-direction:column;gap:var(--spacing-lg)}.puzzle-content p{max-width:70ch;margin-left:auto;margin-right:auto}.rt-quote{max-width:66ch;margin:var(--spacing-sm) auto;padding:.35rem;border:1px solid #000;background:#f8f3e4;box-shadow:0 1px #00000024;font-family:var(--font-quote)}.rt-quote-inner{padding:.65rem .8rem}.rt-quote-inner p{margin:0;max-width:none}.rt-quote-inner p+p{margin-top:.6rem}.rt-quote h1{margin:0 0 .65rem;padding-bottom:.35rem;border-bottom:1px solid rgba(0,0,0,.45);font-family:var(--font-quote);font-size:1.85rem;font-weight:700;line-height:1.2;letter-spacing:.01em;text-align:center}.rt-code-block{--rt-code-columns: 39ch;--rt-code-pad-y: .75rem;--rt-code-pad-x: clamp(.45rem, 2vw, .9rem);--rt-code-border-width: 1px;width:min(100%,calc(var(--rt-code-columns) + (2 * var(--rt-code-pad-x)) + (2 * var(--rt-code-border-width))));max-width:calc(var(--rt-code-columns) + (2 * var(--rt-code-pad-x)) + (2 * var(--rt-code-border-width)));margin:var(--spacing-sm) auto;padding:var(--rt-code-pad-y) var(--rt-code-pad-x);border:var(--rt-code-border-width) solid #4a4d53;border-radius:6px;background:#33373d;color:#f4f4f4;overflow-x:auto}.rt-code-block code{display:block;padding:0;background:transparent;color:inherit;font-family:var(--font-mono);font-size:.95rem;line-height:1.45;white-space:pre}.qa-card{border:1px solid var(--color-border);background:#ffffff59;border-radius:10px;padding:var(--spacing-md);box-shadow:0 1px #0000000a}.qa-question{margin-top:0;margin-bottom:var(--spacing-sm)}.qa-options{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.qa-option{width:100%;text-align:left;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;padding:.75rem .9rem;font-weight:700;letter-spacing:.2px;transition:transform .06s ease,background-color .2s ease,border-color .2s ease,color .2s ease}.qa-option:hover,.qa-option:focus{background:var(--color-subtle);border-color:var(--color-accent);outline:none;transform:translateY(-1px)}.qa-option:active{transform:translateY(0);opacity:1}.qa-option.is-selected{border-color:var(--color-accent);box-shadow:0 0 0 3px #ac84352e}.qa-option.is-locked{cursor:default}.qa-option:disabled{opacity:1}.qa-option.is-correct{background:var(--color-correct-bg);border-color:var(--color-correct);color:var(--color-heading)}.qa-option.is-wrong{background:var(--color-wrong-bg);border-color:var(--color-wrong);color:var(--color-heading)}.qa-feedback{margin-top:var(--spacing-sm);font-weight:700;color:var(--color-heading)}.qa-explanation{margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.qa-explanation-body p{margin-bottom:var(--spacing-sm)}
