:root{--font: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ui-outline: #EBBEBB;--ui-fill: #E5DAD9;--ui-text: #434343}*{-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0}body{background:#efebe9;color:var(--ui-text);font-family:var(--font)}.tutorial-speckle{position:fixed;inset:0;z-index:0;pointer-events:none}.main{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.panel{max-width:960px;width:100%;background:transparent;border:0;border-radius:10px;padding:28px;box-shadow:none;text-align:center}.title{font-size:28px;font-weight:800;margin:0 0 12px;text-align:center;color:var(--ui-text)}.logo{display:block;margin:0 auto 8px;width:200px;height:auto}.subtitle-top{font-size:14px;font-weight:800;color:var(--ui-text);margin:0 0 18px;letter-spacing:.03em}.lead{font-size:14px;color:var(--ui-text);margin:0 0 16px;line-height:1.6;text-align:center}.chapter .lead{min-height:3.2em;margin:0;display:flex;align-items:center;justify-content:center}.h2{font-size:18px;font-weight:800;margin:24px 0 12px;text-align:center;color:var(--ui-text)}.section{margin:18px 0 8px}.row{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.badge{display:inline-block;padding:0;border:none;font-size:12px;color:var(--ui-text);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.chapter .badge{display:block;margin:0 0 12px}.card-label{font-size:12px;color:var(--ui-text);margin-top:6px}.group{background:transparent;border:0;border-radius:0;padding:8px 0}.group .row{margin-bottom:8px}.group-label{font-size:12px;color:var(--ui-text);text-align:center;margin-top:2px;text-transform:uppercase;letter-spacing:.04em}.chapter{display:none}.chapter.active{display:block}.chapter-nav{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:22px}.chapter-arrow{width:40px;height:34px;border-radius:6px;background:var(--ui-fill);border:none;color:var(--ui-text);font-family:var(--font);font-size:16px;font-weight:700;cursor:pointer;line-height:1}.chapter-arrow:disabled{opacity:.45;cursor:not-allowed}.chapter-label{min-width:88px;font-size:12px;font-weight:700;color:var(--ui-text);text-transform:uppercase;letter-spacing:.05em}:root{--tut-board-stage:min(280px, 78vw)}.board{background:transparent;border:0;border-radius:0;padding:0;margin:0 auto;display:flex;align-items:center;justify-content:center;line-height:0;overflow:visible;width:var(--tut-board-stage);height:var(--tut-board-stage)}.board[data-kind]{border-radius:12px}.board canvas{display:block}#tut-card-root,#tut-card-crown,#tut-card-ground{border-radius:12px;overflow:hidden}#tut-card-root canvas,#tut-card-crown canvas,#tut-card-ground canvas{border-radius:12px;border:0}#tut-score-indicator,#tut-pm-indicator{height:20px;margin:12px 0;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ui-text);display:flex;align-items:center;justify-content:center;white-space:nowrap;visibility:hidden;opacity:0;transition:opacity .14s ease;pointer-events:none}#tut-score-indicator.active,#tut-pm-indicator.active{visibility:visible;opacity:1}.tut-indicator-spacer{height:20px;margin:12px 0}.actions{display:flex;gap:10px;margin-top:10px;justify-content:center}.back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:0;background:transparent;color:var(--ui-text);text-decoration:none;font-weight:700;background-image:none;position:relative;font-size:22px;line-height:1;box-sizing:border-box}.back:hover{opacity:.65}.back:after{content:none}.tut-pips{display:flex;gap:8px;align-items:center;justify-content:center;margin:12px 0 4px;min-height:12px}.tut-pip{width:10px;height:10px;border-radius:50%;background:var(--ui-fill);border:1px solid var(--ui-outline);transition:background .18s ease,transform .18s ease,border-color .18s ease}.tut-pip.done{background:#fda1ff;border-color:#fda1ff;transform:scale(1.12)}.tut-hint{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#9b938e;margin:4px 0 0}.tut-end{margin:22px auto 0;max-width:320px}.tut-play-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;box-sizing:border-box;padding:14px 22px;background:#fda1ff;border:none;border-radius:8px;color:#2a2826;font-family:var(--font);font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:filter .16s ease,transform .16s ease}.tut-play-cta:hover{filter:brightness(.96)}.tut-play-cta.pulse{animation:tut-cta-pulse .62s ease}@keyframes tut-cta-pulse{0%{transform:scale(1)}45%{transform:scale(1.06)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.tut-pip.done{transform:none}.tut-play-cta.pulse{animation:none}}
