@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-5.3.0-latin-wght.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-5.3.0-latin-wght.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);size-adjust:107.4%;ascent-override:90.2%;descent-override:22.5%;line-gap-override:0%}:root{--paper:#f8f7f4;--ink:#121213;--muted:#6a6a6e;--surface:#efeee9;--line:#e2e0da;--outline:#c6c8cc;--link:#3a7335;--accent:#121213;--on-accent:#f8f7f4;--accent-ink:#3a7335;--on-disk:#121213;--field:#ecebe6;--peg-fill:#c4c7cc;--base:#787c7e;--disk-edge:#5a5c5f;--win:#6aaa64;--edge:24px;--column:1048px;--measure:960px;--page-top:40px;--header-h:49px;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-text:"Inter", "Inter Fallback", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius:16px;--radius-sm:8px;--radius-lg:24px;--text-12:12px;--text-14:14px;--text-16:16px;--text-20:20px;--text-24:24px;--text-32:32px;--text-48:48px;--leading-16:16px;--leading-24:24px;--leading-32:32px;--leading-40:40px;--leading-56:56px;--disk-0:#e6d3a3;--disk-1:#b9c4a0;--disk-2:#a9bccb;--disk-3:#c7a9b8;--disk-4:#d9b19a;--disk-5:#9fc0b8;--disk-6:#d4a5a0;--disk-7:#c2b48f;--disk-8:#9fadc4;--disk-9:#cfc8bd}body{background:var(--paper);color:var(--ink);font-family:var(--font-text);font-size:var(--text-16);line-height:var(--leading-24);margin:0}h1,h2,h3,.wordmark{font-family:var(--font-display);letter-spacing:-.01em;font-weight:700}.page-column{box-sizing:border-box;width:100%;max-width:calc(var(--column) + 2 * var(--edge));padding-inline:var(--edge);margin-inline:auto}@media (width<=899px){:root{--edge:16px;--page-top:24px}}main{padding:0 0 48px}.reading{padding-top:var(--page-top)}.reading>*{box-sizing:border-box;max-width:var(--measure)}.play{--paper:#f8f7f4;background:var(--paper);border-bottom:1px solid var(--line);color:var(--ink);min-height:calc(100svh - var(--header-h));flex-direction:column;justify-content:flex-start;display:flex}body.embed{margin:0}body.embed main{padding:0}.embed-page,body.embed .play{box-sizing:border-box;min-height:100vh}.embed-credit{box-sizing:border-box;max-width:720px;color:var(--muted);font-size:var(--text-12);line-height:var(--leading-16);margin:0 auto;padding:0 12px 12px}.embed-credit a{color:var(--link)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.play .hanoi{box-sizing:border-box;width:100%;max-width:calc(var(--column) + 2 * var(--edge));padding:var(--page-top) var(--edge);margin-inline:auto}body.embed .hanoi{padding:12px 12px 4px}body.embed .hanoi.hanoi-class{max-width:none}h1{font-size:var(--text-32);line-height:var(--leading-40)}.muted{color:var(--muted)}button{border:1px solid var(--outline);background:var(--paper);min-height:44px;color:var(--ink);font-family:inherit;font-size:var(--text-16);cursor:pointer;border-radius:999px;padding:0 16px;font-weight:600}button.primary{background:var(--accent);color:var(--on-accent);border-color:#0000}button:hover:not(:disabled){border-color:var(--ink)}button:disabled{opacity:.5;cursor:default}button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.skip-link{background:var(--ink);color:var(--paper);border-radius:var(--radius-sm);padding:12px 16px;position:absolute;top:-64px;left:8px}.skip-link:focus{top:8px}.site-header{border-bottom:1px solid var(--line);font-size:var(--text-14);line-height:var(--leading-24)}.header-inner{flex-wrap:wrap;align-items:center;gap:4px 24px;padding-block:8px;display:flex}.site-header a{color:inherit}.wordmark{font-size:var(--text-24);line-height:var(--leading-32);margin-right:24px;text-decoration:none}.wordmark-mark{vertical-align:-4px;width:32px;height:28px;margin-right:8px}.site-header nav{flex-wrap:wrap;flex:1;gap:0 24px;display:flex}.site-header nav a{color:var(--muted);border-bottom:2px solid #0000;padding:3px 0;text-decoration:none;display:inline-block}.site-header nav a:hover{color:var(--ink);border-bottom-color:var(--line)}.site-header nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent-ink);font-weight:600}.nav-group{position:relative}.site-header .nav-group>button{min-height:0;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:4px;padding:3px 0;display:inline-flex}.site-header .nav-group>button:hover{color:var(--ink);border-bottom-color:var(--line)}.site-header .nav-group[data-current]>button{color:var(--ink);border-bottom-color:var(--accent-ink);font-weight:600}.site-header .nav-group>button:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:var(--radius-sm)}.nav-menu{z-index:10;white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:100%;padding:8px;position:absolute;top:100%;left:-8px}.site-header .nav-menu a{border-bottom:0;padding:8px;display:block}.site-header a:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:var(--radius-sm)}.menu-button{display:none}.language-menu{position:relative}.language-menu summary{color:var(--muted);cursor:pointer;border-bottom:2px solid #0000;align-items:center;gap:4px;padding:3px 0;list-style:none;display:inline-flex}.language-menu summary::-webkit-details-marker{display:none}.language-menu summary:hover,.language-menu[open] summary{color:var(--ink);border-bottom-color:var(--line)}.language-menu summary:focus-visible,.language-menu li a:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:var(--radius-sm)}.language-menu ul{z-index:10;white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:100%;margin:0;padding:8px;list-style:none;position:absolute;top:100%;right:-8px}.language-menu li a{color:var(--muted);padding:8px;text-decoration:none;display:block}.language-menu li a:hover{color:var(--ink)}.language-menu li a[aria-current=page]{color:var(--ink);font-weight:600}.calendar-head{font-size:var(--text-14);justify-content:space-between;align-items:center;margin:16px 0 8px;display:flex}.calendar-head button{min-width:44px;padding:0}.calendar-head button.is-hidden{visibility:hidden}.calendar-weekdays,.calendar-days{text-align:center;font-size:var(--text-14);grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-day{min-height:44px;color:var(--ink);font-size:var(--text-14);background:0 0;border:1px solid #0000;padding:0}.calendar-day.is-selected{border-color:var(--ink);font-weight:700}.calendar-star{margin:0 auto;display:block}.calendar-day.is-closed{color:var(--muted)}.demo-actions,.result-actions{flex-wrap:wrap;gap:8px;display:flex}.sound-toggle[aria-pressed=false]{color:var(--muted);border-style:dashed}.result-panel{border-radius:var(--radius);background:var(--surface);margin-top:16px;padding:16px 24px 24px}.result-panel h2:focus{outline:none}.result-stats{border-block:1px solid var(--line);grid-template-columns:repeat(3,auto);justify-content:space-between;margin:12px 0;padding:12px 0;display:grid}.result-stats>div{align-content:start;display:grid}.result-stats dt{color:var(--muted);font-size:var(--text-14);line-height:var(--leading-24);margin:0}.result-stats dd{color:var(--ink);font-family:var(--font-display);font-size:var(--text-32);font-weight:600;line-height:var(--leading-40);font-variant-numeric:tabular-nums;margin:0}.result-stats dd.result-tag{background:var(--win);color:var(--on-disk);font-family:var(--font-text);font-size:var(--text-12);font-weight:600;line-height:var(--leading-24);border-radius:999px;justify-self:start;padding:0 8px}.result-panel h2{font-size:var(--text-24);line-height:var(--leading-32);margin:0 0 4px}.result-panel p{color:var(--muted);font-size:var(--text-14);line-height:var(--leading-24);margin:0 0 4px}.result-panel p:first-of-type{color:var(--ink);font-size:var(--text-16);font-variant-numeric:tabular-nums;font-weight:600}.result-actions{margin-top:16px}.result-share{margin-top:12px;position:relative}.result-share label{color:var(--muted);font-size:var(--text-14);line-height:var(--leading-24);gap:4px;display:grid}.result-share textarea{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);width:100%;color:var(--ink);font:inherit;resize:none;overflow-wrap:anywhere;padding:8px 12px;overflow:hidden}.result-copy{border-radius:var(--radius-sm);width:36px;min-height:36px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:-6px;right:-9px}.result-copy:hover{color:var(--ink)}.result-copy .icon{width:18px;height:18px}.result-copied{background:var(--ink);color:var(--paper);font-size:var(--text-12);font-weight:600;line-height:var(--leading-24);border-radius:999px;padding:0 8px;position:absolute;top:0;right:32px}.result-copied:empty{display:none}.site-footer{border-top:1px solid var(--line);margin-top:16px}.footer-inner{font-size:var(--text-14);line-height:var(--leading-24);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 24px;padding-block:24px 40px;display:flex}.footer-inner nav{flex-wrap:wrap;gap:0 24px;display:flex}.lang-footer{display:none}.footer-copy{font-size:var(--text-14);color:var(--muted);padding:8px 0}.footer-inner nav a{color:var(--muted);padding:8px 0;text-decoration:none;display:inline-block}.footer-inner nav a:hover{color:var(--ink);text-decoration:underline}.footer-inner a:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:var(--radius-sm)}@media (width<=640px){.lang-header{display:none}.lang-footer{flex-basis:100%;display:block}.lang-footer .language-menu summary{padding:8px 0}.lang-footer .language-menu ul{inset:auto auto 100% -8px}.wordmark{font-size:var(--text-20);margin-right:0}.wordmark-mark{vertical-align:-3px;width:27px;height:24px;margin-right:6px}.site-header nav{flex-basis:100%;order:3}.has-menu .menu-button{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:-6px -10px -6px auto;padding:0;display:inline-flex}.has-menu .menu-button:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.has-menu .menu-button[aria-expanded=false]+nav{display:none}.has-menu nav{flex-direction:column;padding-block:4px}.has-menu nav a{border-bottom:0;align-items:center;min-height:44px;padding:0;display:flex}.has-menu .nav-group>button{pointer-events:none;min-height:44px}.has-menu .nav-group>button svg{display:none}.has-menu .nav-menu{background:0 0;border:0;padding:0 0 0 16px;position:static;display:block!important}.has-menu .nav-menu a{align-items:center;min-height:44px;padding:0;display:flex}.has-menu nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--accent-ink);text-underline-offset:6px;text-decoration-thickness:2px}}
