@font-face{font-family:TeachingAid Zhuyin Only;src:url(/fonts/BpmfZihiOnly-R.woff2)format("woff2");font-display:swap}:root{--font-chalk:var(--font-wenkai), "Kaiti TC", serif;--font-body:var(--font-noto-tc), system-ui, sans-serif;--bg:var(--wall);--panel:var(--paper);--muted:var(--ink-soft);--line:var(--paper-border);--accent:var(--board);--danger:#dc2626;--success:#16a34a;--team-0:var(--chalk-blue);--team-1:var(--chalk-orange);--font-board-text:system-ui, -apple-system, "PingFang TC", "Noto Sans TC", sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}.shell{height:100vh;display:flex}.sidebar{flex-direction:column;flex-shrink:0;gap:12px;padding:14px 12px;transition:width .2s;display:flex;overflow:hidden}.sidebar.is-open{width:264px}.sidebar.is-closed{width:72px}.sidebar-backdrop{display:none}@media (max-width:700px){.sidebar{transition:none}.sidebar.is-open{z-index:40;margin-right:-192px;position:relative;box-shadow:6px 0 18px #00000059}.sidebar-backdrop{z-index:35;background:#0000004d;display:block;position:fixed;inset:0}}.sidebar-head{align-items:center;gap:8px;display:flex}.sidebar-logo{min-width:0;font-family:var(--font-chalk);color:var(--heading);white-space:nowrap;flex:1;align-items:center;gap:8px;margin:0;padding:8px 12px;font-size:22px;font-weight:700;text-decoration:none;display:flex;transform:rotate(-1deg)}.sidebar-logo-icon{flex-shrink:0;width:30px;height:25px}.logo-frame{fill:var(--wood)}.logo-board{fill:var(--board)}.logo-chalk{fill:none;stroke:var(--chalk);stroke-width:1.5px;stroke-linecap:round}.sidebar-toggle{border:1.5px solid var(--paper-border);background:var(--paper);width:32px;height:32px;box-shadow:0 2px 0 var(--paper-shadow);color:var(--ink);cursor:pointer;border-radius:6px;flex-shrink:0;font-size:18px;line-height:1}.sidebar>nav{flex-direction:column;flex:1;gap:10px;min-height:0;margin:0 -6px;padding:6px 6px 8px;display:flex;overflow-y:auto}.sidebar-title{margin:8px 0 0}.sidebar-title-arrow{font-size:12px;transition:transform .15s;display:inline-block;transform:rotate(-90deg)}.sidebar-title-arrow.is-open{transform:rotate(0)}.sidebar ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.nav-card .pin{margin-left:0;left:12px}.sidebar li:nth-child(4n+2) .pin{background:var(--pin-blue)}.sidebar li:nth-child(4n+3) .pin{background:var(--pin-gold)}.sidebar li:nth-child(4n+4) .pin{background:var(--pin-teal)}.sidebar li:nth-child(2n) .nav-card{transform:rotate(-.5deg)}.sidebar li .nav-card[aria-current=page]{transform:rotate(-1.6deg)}.nav-card{transition:transform .15s}.sidebar li.is-dragged{opacity:.4}.sidebar li .nav-card:hover:not([aria-current=page]){transform:translateY(-2px)rotate(.5deg)}.nav-card-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.sidebar-account{min-height:52px;color:var(--ink);font:14px var(--font-body);text-align:left;cursor:pointer;border:none;flex-shrink:0;align-items:center;gap:10px;margin-top:auto;padding:8px 10px;display:flex}.sidebar-account.paper:hover{background:var(--paper-warm)}.sidebar-account.is-compact{background:0 0;align-self:center;min-height:0;padding:0}.sidebar-account:focus-visible{outline:3px solid var(--pin-teal);outline-offset:3px}.sidebar-account-avatar{background:var(--board);width:34px;height:34px;color:var(--chalk);font-family:var(--font-chalk);border-radius:50%;flex-shrink:0;place-items:center;font-size:18px;font-weight:700;display:grid;box-shadow:0 2px #1a2a20}.sidebar-account-email{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sidebar-account-more{color:var(--ink-soft);flex-shrink:0;font-size:18px}.account-menu{overscroll-behavior:contain;border:1.5px solid var(--paper-border);width:232px;color:var(--ink);font:14px / 1.5 var(--font-body);border-radius:6px;margin:0;padding:6px;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 10px 24px #3c230a4d}.account-menu-head{border-bottom:1px solid var(--paper-shadow);gap:2px;margin:0 0 4px;padding:8px 10px 10px;display:grid}.account-menu-label{color:var(--ink-soft);font-size:12px}.account-menu-email{overflow-wrap:anywhere}.account-menu-group{border-block:1px solid var(--paper-shadow);margin:4px 0;padding:4px 0;display:grid}.account-menu-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:9px 10px;text-decoration:none;display:block}.account-menu-item:hover:not(:disabled){background:var(--paper-warm)}.account-menu-item:focus-visible{outline:3px solid var(--pin-teal);outline-offset:-3px}.account-menu-item:disabled{color:var(--ink-soft);cursor:default}.account-menu .auth-error{margin:4px 10px 6px;font-size:12px;line-height:1.6}.welcome-footer.contact-footer{justify-content:flex-end}.stage{flex:1;padding:24px;display:flex;overflow:auto}.view{width:100%;margin:auto}.view.is-fill{margin:0;display:flex}.view[hidden]{display:none}.game{flex-direction:column;gap:16px;width:100%;max-width:1200px;margin:0 auto;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.page-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}label.btn-tag{cursor:pointer}.btn-tag.is-on{background:var(--sticky);border-color:var(--chalk-yellow-shadow)}.mute-btn[aria-pressed=true]{color:var(--muted)}.btn-tag:disabled{opacity:.5;cursor:not-allowed}.board-wrap{flex-direction:column;display:flex}.board-wrap .chalkboard{flex-direction:column;align-items:center;gap:16px;padding:20px 24px 24px;display:flex}.board-wrap .chalk-tray{margin-top:-2px}.chalk-tray .stick:first-child{background:var(--chalk);width:46px;left:40px}.chalk-tray .stick:nth-child(2){background:var(--chalk-yellow);width:36px;left:96px}.chalk-tray .stick:nth-child(3){background:var(--chalk-pink);width:30px;left:142px}.board-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.controls{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.status{color:var(--chalk);margin:0;font-size:24px}.status.is-dead{color:var(--chalk-pink);font-size:30px;font-weight:700}.status.is-won{color:var(--chalk-yellow);font-size:30px;font-weight:700}.board-label{width:220px;font:inherit;text-align:center;color:var(--chalk);background:0 0;border:2px dashed #0000;border-radius:6px;padding:4px 8px;font-size:24px;font-weight:700}.board-label::placeholder{color:var(--chalk-dim)}.board-label:hover{border-color:var(--chalk-dim)}.board-label:focus{border:2px solid var(--chalk);background:#ffffff0f;outline:none}.board{flex-direction:column;align-items:center;gap:12px;display:flex}.pk{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;display:flex}.pk .gallows{height:min(44vh,420px)}.pk-vs{color:var(--chalk-dim);font-size:36px;font-weight:700}.gallows{aspect-ratio:200/250;fill:none;width:auto;height:min(50vh,520px);stroke:var(--chalk);stroke-width:5px;stroke-linecap:round;opacity:.92;filter:drop-shadow(0 0 3px #ffffff40)}.gallows.is-dead{stroke:var(--chalk-pink)}.stroke>*{stroke-dasharray:1;stroke-dashoffset:1px;animation:.35s ease-out forwards draw}.dead-eyes>*{stroke-width:3px}@keyframes draw{to{stroke-dashoffset:0}}.file-input{opacity:0;clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}label:has(.file-input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.btn{border:1.5px solid var(--paper-border);background:var(--paper);box-shadow:0 2px 0 var(--paper-shadow);color:var(--ink);cursor:pointer;border-radius:10px;padding:10px 20px;font-size:16px}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--board);border-color:var(--board);color:var(--chalk);padding:12px 32px;font-size:18px;box-shadow:0 3px #1a2a20}.tag-field{color:var(--ink-soft);align-items:center;gap:6px;font-size:15px;display:flex}.ttt-arena{grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:24px;width:100%;display:grid}.ttt-team{border-radius:var(--radius);opacity:.6;border:2px dashed #0000;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;transition:opacity .15s,border-color .15s;display:flex}.ttt-team.is-turn{border-color:var(--team-color);opacity:1}.team-0{--team-color:var(--team-0)}.team-1{--team-color:var(--team-1)}.team-text-0{color:var(--team-0);font-weight:700}.team-text-1{color:var(--team-1);font-weight:700}.ttt-team-symbol{border:4px solid var(--team-color);width:88px;height:88px;color:var(--team-color);font-family:var(--font-chalk);cursor:pointer;background:0 0;border-radius:50%;font-size:52px;font-weight:700;line-height:1}.ttt-team-symbol:disabled{cursor:default}.ttt-team-name{width:100%;max-width:180px;color:var(--team-color)}.ttt-status{font-size:26px}.ttt-status.is-won{font-size:32px;animation:.5s cubic-bezier(.34,1.56,.64,1) pop}.ttt-grid{aspect-ratio:1;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:min(56vh,540px,50vw);display:grid}@media (max-width:700px){.ttt-arena{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ttt-arena>.ttt-grid{grid-area:1/1/auto/-1;justify-self:center;width:min(56vh,100%)}.ttt-team-symbol{width:60px;height:60px;font-size:36px}.ttt-team-name{font-size:18px}}.ttt-cell{min-width:0;font:inherit;color:var(--chalk);border:0 solid var(--chalk);background:0 0;justify-content:center;align-items:center;padding:8%;display:flex;position:relative;overflow:hidden;container-type:size}.ttt-cell:not(:nth-child(3n)){border-right-width:5px}.ttt-cell:nth-child(-n+6){border-bottom-width:5px}button.ttt-cell{cursor:pointer;transition:background-color .15s}button.ttt-cell:not(:disabled):hover{background:#ffffff12}button.ttt-cell:disabled{cursor:default}.ttt-content{flex-direction:column;justify-content:center;align-items:center;gap:4%;width:100%;height:100%;transition:opacity .3s;display:flex}.ttt-cell.is-marked .ttt-content{opacity:.2}.ttt-content img{object-fit:contain;flex:1 1 0;max-width:100%;min-height:0}.ttt-text{line-height:1.1;font-family:var(--font-board-text);text-align:center;overflow-wrap:anywhere;font-weight:700}.ttt-text.is-xl{font-size:60cqmin}.ttt-text.is-large{font-size:44cqmin}.ttt-text.is-medium{font-size:30cqmin}.ttt-text.is-small{font-size:16cqmin}.ttt-text.is-caption,.ttt-input.is-caption{flex-shrink:0;font-size:20cqmin}.ttt-cell.is-win{background:color-mix(in srgb, var(--team-color) 22%, transparent)}.ttt-mark{fill:none;stroke:var(--team-color);filter:drop-shadow(0 0 3px #fff3);stroke-width:11px;stroke-linecap:round;pointer-events:none;position:absolute;inset:6%}.ttt-mark>*{stroke-dasharray:1;stroke-dashoffset:1px;animation:.35s ease-out forwards draw}.ttt-cell.is-editing{flex-direction:column;justify-content:center;gap:3%;padding:5%}.ttt-input{width:100%;min-width:0;min-height:0;font:inherit;font-family:var(--font-board-text);text-align:center;color:var(--chalk);border:2px dashed var(--chalk-dim);background:#ffffff0f;border-radius:8px;flex:1 1 0;padding:4px;font-size:16cqmin;font-weight:700}.ttt-cell.has-image .ttt-input{flex:none;height:24%}.ttt-input.is-xl{font-size:48cqmin}.ttt-input.is-large{font-size:34cqmin}.ttt-input.is-medium{font-size:22cqmin}.ttt-input.is-small{font-size:12cqmin}.ttt-grid .ttt-input::placeholder{font-family:system-ui,-apple-system,PingFang TC,Noto Sans TC,sans-serif;font-size:10cqmin;font-weight:400}.ttt-input:focus{border:2px solid var(--chalk);background:#ffffff1a;outline:none}.ttt-input::placeholder{color:var(--chalk-dim)}.ttt-thumb{flex:1 1 0;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative}.ttt-thumb img{object-fit:contain;max-width:100%;max-height:100%}.ttt-thumb-remove{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:50%;width:22px;height:22px;padding:0;font-size:14px;line-height:1;position:absolute;top:-6px;right:-6px}.ttt-upload{font-family:var(--font-body);color:var(--chalk-yellow);cursor:pointer;white-space:nowrap;flex-shrink:0;font-size:13px}.ttt-upload:hover{text-decoration:underline}@keyframes pop{0%{opacity:0;transform:scale(.4)}}.confetti{pointer-events:none;z-index:1000;width:100%;height:100%;position:fixed;inset:0}.ttt-import{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}label.btn{display:inline-block}.btn.is-busy{opacity:.5;pointer-events:none}.ttt-notice{background:color-mix(in srgb, var(--success) 10%, var(--panel));border:1px solid color-mix(in srgb, var(--success) 40%, var(--line));border-radius:10px;max-width:min(560px,100%);padding:10px 36px 10px 14px;font-size:15px;position:relative}.ttt-notice.is-warn{background:color-mix(in srgb, #f59e0b 12%, var(--panel));border-color:color-mix(in srgb, #f59e0b 50%, var(--line))}.ttt-notice.is-pending{border-color:color-mix(in srgb, var(--accent) 40%, var(--line));background:#eef2ff;padding-right:14px}.ttt-notice p{margin:4px 0}.ttt-notice-files{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.ttt-notice-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.ttt-notice-close{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1;position:absolute;top:6px;right:8px}.ttt-img-missing{color:#b45309;text-align:center;overflow-wrap:anywhere;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;min-height:0;font-size:9cqmin;display:flex}.ttt-img-missing small{color:var(--muted);font-size:7cqmin}.ttt-cell .ttt-img-missing,.quick-card .ttt-img-missing{color:var(--chalk-orange)}.ttt-cell .ttt-img-missing small,.quick-card .ttt-img-missing small{color:var(--chalk-dim)}.game>.ttt-notice{align-self:center}.has-cell-font .ttt-text,.has-cell-font .ttt-input{font-family:var(--cell-font);font-weight:400}.has-cell-font .ttt-text.is-xl,.has-cell-font .ttt-input.is-xl{font-size:44cqmin}.has-cell-font .ttt-text.is-large,.has-cell-font .ttt-input.is-large{font-size:29cqmin}.has-cell-font .ttt-text.is-medium,.has-cell-font .ttt-input.is-medium{font-size:18cqmin}.has-cell-font .ttt-text.is-small,.has-cell-font .ttt-input.is-small{font-size:11cqmin}.has-cell-font .ttt-text.is-caption,.has-cell-font .ttt-input.is-caption{font-size:15cqmin}[data-font=zhuyin-only] .ttt-text.is-xl,[data-font=zhuyin-only] .ttt-input.is-xl{font-size:66cqmin}[data-font=zhuyin-only] .ttt-text.is-large,[data-font=zhuyin-only] .ttt-input.is-large{font-size:40cqmin}[data-font=zhuyin-only] .ttt-text.is-medium,[data-font=zhuyin-only] .ttt-input.is-medium{font-size:25cqmin}[data-font=zhuyin-only] .ttt-text.is-small,[data-font=zhuyin-only] .ttt-input.is-small{font-size:15cqmin}[data-font=zhuyin-only] .ttt-text.is-caption,[data-font=zhuyin-only] .ttt-input.is-caption{font-size:21cqmin}[lang=zh-Hans]{font-family:system-ui,-apple-system,PingFang SC,Noto Sans SC,Microsoft YaHei,sans-serif}.ttt-text ruby{ruby-align:center}.ttt-text rt{font-size:.42em;font-weight:500;line-height:1.2}[data-font=hans-pinyin] .ttt-text,[data-font=hant-pinyin] .ttt-text{line-height:1.5}[data-font=hans-pinyin] .ttt-text.is-xl,[data-font=hant-pinyin] .ttt-text.is-xl{font-size:46cqmin}[data-font=hans-pinyin] .ttt-text.is-large,[data-font=hant-pinyin] .ttt-text.is-large{font-size:32cqmin}[data-font=hans-pinyin] .ttt-text.is-medium,[data-font=hant-pinyin] .ttt-text.is-medium{font-size:20cqmin}[data-font=hans-pinyin] .ttt-text.is-small,[data-font=hant-pinyin] .ttt-text.is-small{font-size:11cqmin}[data-font=hans-pinyin] .ttt-text.is-caption,[data-font=hant-pinyin] .ttt-text.is-caption{font-size:15cqmin}[data-font=pinyin-only] .ttt-text{overflow-wrap:normal}[data-font=pinyin-only] .ttt-text.is-xl{font-size:34cqmin}[data-font=pinyin-only] .ttt-text.is-large{font-size:22cqmin}[data-font=pinyin-only] .ttt-text.is-medium{font-size:17cqmin}[data-font=pinyin-only] .ttt-text.is-small{font-size:10cqmin}[data-font=pinyin-only] .ttt-text.is-caption{font-size:13cqmin}.materials{flex:1;min-width:0;max-width:none}.materials-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.materials-header{flex-wrap:nowrap}.materials-header.is-collapsed{margin-bottom:-10px}.materials-info-toggle{background:var(--paper);color:var(--muted);font:inherit;cursor:pointer;border:none;border-radius:2px;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex;box-shadow:0 1px 2px #3c230a33}.materials-info-toggle:hover{color:inherit}.materials-viewer{background:var(--paper);border-radius:2px;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden;box-shadow:0 2px 3px #3c230a47}.materials-pdf{border:none;width:100%;height:100%}.materials-image{object-fit:contain;max-width:100%;max-height:100%}.drop-board{flex:1;justify-content:center;align-items:center;min-height:360px;padding:40px 24px;display:flex}.materials-drop{cursor:pointer;width:min(640px,100%);padding:28px;display:flex;transform:rotate(-.6deg)}.materials-drop-zone{text-align:center;border:3px dashed var(--paper-border);border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:40px 24px;font-size:20px;transition:border-color .15s,background-color .15s;display:flex}.materials-drop:hover .materials-drop-zone,.is-dragging .materials-drop-zone{border-color:var(--board);background:color-mix(in srgb, var(--board) 6%, transparent)}.materials-drop.is-busy{opacity:.6;pointer-events:none}.materials-drop-icon{font-size:56px}.materials-drop-hint{color:var(--muted);font-size:15px}.materials-drop-warn{color:#b45309;font-size:15px}.resizer{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.resizer.is-dragging{outline-color:var(--accent)}.resizer-intro{color:var(--muted);flex-direction:column;gap:2px;margin:0;padding-left:20px;font-size:15px;display:flex}.resizer-intro strong{color:var(--ink)}.resizer-list{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow:auto}.resizer-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:8px 12px;display:flex}.resizer-row:last-child{border-bottom:none}.resizer-thumb{background:var(--bg);border-radius:6px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.resizer-thumb img{object-fit:contain;max-width:100%;max-height:100%}.resizer-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.resizer-note{color:var(--muted);text-align:right;flex-wrap:wrap;justify-content:flex-end;gap:4px 10px;font-size:15px;display:flex}.resizer-note strong{color:var(--success)}.resizer-note .is-warn,.resizer-note.is-warn{color:#b45309}.resizer-dims{font-size:13px}.resizer-footer{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.resizer-total{flex:1;font-size:16px}.resizer-total strong{color:var(--success)}.rewards{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.rewards.is-dragging{outline-color:var(--accent)}.rewards-template{align-self:center}.rewards-hint{color:var(--muted);margin:0;font-size:15px}.rewards-heading{flex-wrap:wrap;flex:1 1 0;align-items:baseline;gap:4px 20px;min-width:280px;display:flex}.rewards-board{flex-direction:column;flex:1;align-items:center;gap:30px;padding:30px 40px 36px;display:flex}.rewards-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 32px;width:100%;margin:0;padding:0;list-style:none;display:grid}@media (max-width:1100px){.rewards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.rewards-grid li{position:relative}.rewards-grid li:nth-child(8n+1){transform:rotate(-1.2deg)}.rewards-grid li:nth-child(8n+2){transform:rotate(.8deg)}.rewards-grid li:nth-child(8n+3){transform:rotate(-.4deg)}.rewards-grid li:nth-child(8n+4){transform:rotate(1.1deg)}.rewards-grid li:nth-child(8n+5){transform:rotate(.6deg)}.rewards-grid li:nth-child(8n+6){transform:rotate(-1deg)}.rewards-grid li:nth-child(8n+7){transform:rotate(1.2deg)}.rewards-grid li:nth-child(8n+8){transform:rotate(-.6deg)}.rewards-grid li:nth-child(4n+2) .pin{background:var(--pin-blue)}.rewards-grid li:nth-child(4n+3) .pin{background:var(--pin-gold)}.rewards-grid li:nth-child(4n+4) .pin{background:var(--pin-teal)}.rewards-grid li:nth-child(3n+2) .rewards-card{background:var(--paper-warm)}.rewards-card{width:100%;font-family:var(--font-body);color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;flex-direction:column;align-items:center;gap:10px;padding:22px 12px 16px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 3px 5px #3c230a4d}.rewards-card:hover{transform:translateY(-3px);box-shadow:0 6px 10px #3c230a4d}.rewards-name{max-width:100%;font-family:var(--font-chalk);white-space:nowrap;text-overflow:ellipsis;font-size:26px;font-weight:700;overflow:hidden}.chest{width:116px;padding-top:32px;display:block;position:relative}.rewards-card:active .chest-body{transform:scale(.96)}.chest-body{display:block}.chest-body.is-bumped{animation:.3s ease-out chest-bump}.chest-svg{width:100%;display:block}.chest-lid{fill:var(--chest-lid)}.chest-gold{fill:var(--coin)}.chest-inside{fill:var(--chest-inside)}.chest-coins{fill:var(--coin);stroke:var(--coin-edge)}.chest-body-wood{fill:var(--chest-wood)}.coin{background:radial-gradient(circle at 35% 35%, color-mix(in srgb, var(--coin) 40%, white), var(--coin) 45%, var(--coin-edge));width:30px;height:30px;box-shadow:inset 0 0 0 2px var(--coin-edge);pointer-events:none;z-index:1;border-radius:50%;margin-left:-15px;animation:.5s cubic-bezier(.5,0,1,1) forwards coin-drop;position:absolute;top:0;left:50%}.coin-icon{box-sizing:border-box;background:var(--coin);border:2px solid var(--coin-edge);border-radius:50%;width:22px;height:22px;display:inline-block}.rewards-count{color:var(--coin-ink);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:34px;font-weight:700;line-height:1;display:flex}.rewards-today.is-down{background:var(--paper-shadow);color:var(--ink-soft)}.rewards-undo{z-index:1;color:var(--muted);background:var(--paper);border:1px solid var(--line);cursor:pointer;opacity:0;border-radius:6px;padding:2px 8px;font-size:13px;transition:opacity .15s;position:absolute;top:8px;right:8px}.rewards-grid li:hover .rewards-undo,.rewards-undo:focus-visible{opacity:1}.rewards-undo:disabled{visibility:hidden}@keyframes coin-drop{0%{opacity:0;transform:translateY(-10px)rotateY(0)}15%,85%{opacity:1}to{opacity:0;transform:translateY(72px)rotateY(540deg)scale(.8)}}@keyframes chest-bump{40%{transform:translateY(3px)scaleY(.95)}}@media (hover:none){.rewards-undo{opacity:1}}.draw{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex:1;min-width:0;min-height:0}.draw.is-dragging{outline-color:var(--accent)}.draw-body{flex:1;gap:28px;min-height:0;display:flex}.draw-body>.board-wrap{flex:1;min-width:0}.board-wrap .draw-stage{flex:1;justify-content:center;gap:18px;padding:28px}.draw-result{text-align:center;overflow-wrap:anywhere;justify-content:center;align-items:center;max-width:100%;min-height:190px;display:flex}.draw-picked{flex-direction:column;align-items:center;gap:4px;max-width:100%;animation:.45s cubic-bezier(.34,1.56,.64,1) 1s both draw-pop;display:flex}.draw-order{color:var(--chalk-dim);font-size:22px}.draw-name,.draw-flicker{font-size:clamp(64px,9vw,132px);font-weight:700;line-height:1.05}.draw-name{color:var(--chalk-yellow);text-shadow:0 0 2px #fff0b480,0 0 12px #f2d67540}.draw-flicker{color:var(--chalk-dim)}.draw-underline{opacity:.6;width:220px;max-width:100%;height:5px;margin-top:6px;transform:rotate(-1deg)}.draw-placeholder{color:var(--chalk-dim);font-size:40px}.draw-cup-wrap{width:180px;position:relative}.draw-cup{transform-origin:50% 90%;width:100%;display:block;position:relative}.draw-cup.is-shaking{animation:.2s ease-in-out infinite cup-shake}.cup-body{fill:var(--cup-dark)}.cup-rim{fill:var(--cup);stroke:var(--cup-rim-shadow)}.cup-stripe{stroke:var(--chalk-yellow)}.stick-body{fill:var(--stick-wood);stroke:var(--stick-edge)}.draw-picked-rise .stick-body,.draw-picked-front .stick-body{fill:var(--stick-wood-light)}.stick-tip{fill:var(--cup);stroke:var(--cup-rim-shadow)}.draw-stick-name{writing-mode:vertical-rl;text-orientation:upright;fill:var(--stick-ink);font-weight:700}.draw-jiggle{transform-box:view-box;animation:.16s ease-in-out infinite alternate stick-jiggle}.draw-picked-rise,.draw-picked-front{transform-box:view-box;transform-origin:100px 144px}.draw-picked-rise{animation:1s ease-out forwards stick-rise}.draw-picked-front{animation:1s forwards stick-front}.draw-btn{height:60px;padding:0 48px;font-size:26px}.draw-empty{flex-direction:column;align-items:center;gap:12px;font-size:24px;display:flex}.draw-empty p{margin:0}.draw-left{color:var(--chalk-dim);margin:0;font-size:20px}.draw-left strong{color:var(--chalk)}.draw-list{flex-direction:column;flex-shrink:0;gap:10px;width:350px;padding:30px 18px 22px 46px;display:flex;position:relative;transform:rotate(.6deg)}.draw-list .tape{width:120px;margin-left:-60px;top:-12px;left:50%;transform:rotate(-3deg)}.draw-list-head .btn-tag{white-space:nowrap;flex-shrink:0}.draw-list-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.draw-list-head h2{white-space:nowrap;font-family:var(--font-chalk);margin:0;font-size:24px;font-weight:700}.draw-option{cursor:pointer;align-items:center;gap:10px;min-height:36px;font-size:16px;display:flex}.draw-option input{width:18px;height:18px;accent-color:var(--board);margin:0}.draw-list-hint{color:var(--ink-soft);margin:0 0 4px;font-size:13px;line-height:1.6}.draw-list ul{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:2px 10px;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.draw-list-item{width:100%;height:40px;font-family:var(--font-chalk);text-align:left;color:var(--ink);border:0;border-bottom:1px solid var(--paper-rule);cursor:pointer;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:6px;padding:0 8px;font-size:19px;display:flex}.draw-list-item:disabled{cursor:default}.draw-list-item.is-drawn{background:var(--marker-yellow)}.draw-list-item.is-absent{color:var(--ink-faint)}.draw-list-item.is-absent .draw-list-name{text-decoration:line-through}.draw-list-item .stamp{padding:1px 6px}.draw-list-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@keyframes cup-shake{25%{transform:rotate(-6deg)translateY(-3px)}75%{transform:rotate(6deg)translateY(-3px)}}@keyframes stick-jiggle{0%{transform:rotate(-4deg)translateY(0)}to{transform:rotate(4deg)translateY(-8px)}}@keyframes stick-rise{0%{transform:translateY(0)}50%{opacity:1;transform:translateY(-112px)}50.1%,to{opacity:0;transform:translateY(-112px)}}@keyframes stick-front{0%,50%{opacity:0;transform:translateY(-112px)}50.1%{opacity:1;animation-timing-function:cubic-bezier(.34,1.4,.64,1);transform:translateY(-112px)}to{opacity:1;transform:translate(10px,-6px)rotate(-20deg)scale(1.1)}}@keyframes draw-pop{0%{opacity:0;transform:scale(.3)}}@media (max-width:800px){.draw-body{flex-direction:column}.draw-list{width:auto}}.gifts-settings{background:var(--paper);border-radius:2px;flex-direction:column;gap:12px;padding:16px;display:flex;box-shadow:0 2px 3px #3c230a47}.gifts-settings-row{flex-wrap:wrap;gap:12px 20px;display:flex}.gifts-listen{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:6px;margin-left:4px;padding:2px 6px}.gifts-swatches{flex-wrap:wrap;gap:8px;display:flex}.gifts-swatch{color:var(--muted);flex-direction:column;align-items:center;gap:2px;font-size:13px;display:flex}.gifts-swatch input{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;width:36px;height:28px;padding:0}.gifts-stage{flex:1}.gifts-stage.is-boom{animation:.6s ease-out gifts-boom}.gifts-result{text-align:center;overflow-wrap:anywhere;justify-content:center;align-items:center;max-width:100%;min-height:1.3em;font-size:clamp(32px,5vw,60px);font-weight:700;display:flex}.gifts-result-text{animation:.45s cubic-bezier(.34,1.56,.64,1) both draw-pop}.gifts-result-text.kind-good{color:var(--chalk-yellow)}.gifts-result-text.kind-bad{color:var(--chalk-dim)}.gifts-result-text.kind-bomb{color:var(--chalk-pink)}.gifts-placeholder{color:var(--chalk-dim);font-size:.6em}.gifts-grid{grid-template-columns:repeat(auto-fill,minmax(clamp(120px,14vw,180px),1fr));gap:28px 20px;width:100%;margin:0;padding:0;list-style:none;display:grid}.gift-cell{aspect-ratio:1/1.2;position:relative}.gift-cell.is-shaking,.gift-cell.is-revealing{z-index:5}.gift-hit{z-index:2;cursor:pointer;background:0 0;border:none;padding:0;position:absolute;inset:0 0 auto}.gift-hit:disabled{cursor:default}.gift-art{transform-origin:50% 95%;transition:transform .15s;position:relative}.gift-box{width:100%;display:block}.gift-hit:hover:not(:disabled) .gift-art{transform:translateY(-4px)rotate(-2deg)}.gift-cell.is-shaking .gift-art{animation:.18s ease-in-out infinite box-shake}.gift-cover{width:60%;height:43%;color:var(--ink);pointer-events:none;background:#fff;border-radius:8px;padding:3%;position:absolute;top:48%;left:20%;box-shadow:0 1px 3px #0003;container-type:size}.gift-cover-text{font-size:min(62cqh, calc(94cqw / var(--width)));white-space:nowrap}.gift-cover-text.is-caption{font-size:min(24cqh, calc(94cqw / var(--width)));flex-shrink:0}.has-cell-font .gift-cover-text{font-size:min(50cqh, calc(94cqw / var(--width)))}[data-font=zhuyin-only] .gift-cover-text{font-size:min(70cqh, calc(94cqw / var(--width)))}.has-cell-font .gift-cover-text.is-caption{font-size:min(22cqh, calc(94cqw / var(--width)))}[data-font=hans-pinyin] .gift-cover-text,[data-font=hant-pinyin] .gift-cover-text{font-size:min(42cqh, calc(94cqw / var(--width)));line-height:1.5}[data-font=hans-pinyin] .gift-cover-text.is-caption,[data-font=hant-pinyin] .gift-cover-text.is-caption{font-size:min(18cqh, calc(94cqw / var(--width)))}.gift-paper{fill:var(--box)}.gift-ribbon{fill:var(--ribbon)}.gift-inside{fill:#00000073;display:none}.gift-number{text-anchor:middle;dominant-baseline:central;fill:var(--ink);font-size:15px;font-weight:700}.gift-cell.is-open .gift-inside{display:block}.gift-cell.is-open .gift-lid{display:none}.gift-cell.is-open.is-revealing .gift-lid{transform-box:fill-box;transform-origin:50%;animation:.5s ease-out forwards lid-off;display:block}.gift-item{z-index:3;text-align:center;width:68%;color:var(--ink);font-family:var(--font-body);background:#fff;border:3px solid #fcd34d;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:6px;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 6px 16px #0000002e}.gift-item.kind-bad{border-color:#cbd5e1}.gift-item.kind-bomb{border-color:var(--danger)}.gift-item.is-new{animation:1.2s forwards gift-out}.gift-item img{aspect-ratio:4/3;object-fit:contain;width:100%}.gift-emoji{font-size:clamp(36px,5vw,60px);line-height:1.1}.gift-missing{color:#b45309;overflow-wrap:anywhere;flex-direction:column;font-size:12px;display:flex}.gift-name{overflow-wrap:anywhere;font-size:clamp(13px,1.4vw,18px);font-weight:700;line-height:1.25}.gift-name.is-big{padding:10px 0;font-size:clamp(18px,2vw,26px)}.gifts-grid.has-cell-font .gift-name{font-family:var(--cell-font);font-weight:400}.gift-boom{z-index:4;aspect-ratio:1;pointer-events:none;opacity:0;background:radial-gradient(circle,#fff7cc 0%,#fde047 25%,#f97316 55%,#dc262600 72%);border-radius:50%;width:90%;animation:.8s ease-out .6s forwards boom;position:absolute;top:20%;left:50%}@keyframes box-shake{25%{transform:rotate(-7deg)translateY(-4px)}75%{transform:rotate(7deg)translateY(-4px)}}@keyframes lid-off{to{opacity:0;transform:translate(-24px,-70px)rotate(-45deg)}}@keyframes gift-out{0%{z-index:1;animation-timing-function:ease-out;transform:translate(-50%,-30%)scale(.5)}50%{z-index:1;animation-timing-function:cubic-bezier(.34,1.4,.64,1);transform:translate(-50%,-140%)scale(.9)}51%{z-index:3}to{z-index:3;transform:translate(-50%)scale(1)}}@keyframes boom{0%{opacity:1;transform:translate(-50%,-50%)scale(.2)}to{opacity:0;transform:translate(-50%,-50%)scale(2.6)}}@keyframes gifts-boom{15%,45%,75%{transform:translate(-8px,4px)}30%,60%,90%{transform:translate(8px,-4px)}}.welcome{width:min(560px,100vw - 32px);color:var(--ink);border:none;border-radius:2px;padding:26px 28px 26px 76px;overflow:visible}@media (max-height:520px){.welcome{background-attachment:local;overflow:hidden auto}}.welcome::backdrop{background:#1e140573}.welcome-tape-l{top:-12px;left:-26px;transform:rotate(-32deg)}.welcome-tape-r{top:-12px;right:-26px;transform:rotate(32deg)}.welcome h2{font-family:var(--font-chalk);color:var(--heading);margin:0;font-size:26px;line-height:72px}.welcome p{margin:0}.welcome-line{align-items:center;gap:16px;height:144px;display:flex}.welcome-line img{width:108px;height:108px}.welcome-footer{justify-content:space-between;align-items:center;gap:12px;height:72px;display:flex}.welcome-footer label{color:var(--muted);cursor:pointer;align-items:center;gap:6px;font-size:15px;display:flex}.read{flex:1;min-width:0;max-width:none;min-height:0}.read-size{gap:6px;display:flex}.read-size .btn-tag{font-family:var(--font-chalk);font-weight:700}.read-body{flex:1;gap:20px;min-height:0;display:flex}.read-body>.board-wrap{flex:1;min-width:0}.board-wrap .read-board{flex:1;align-items:stretch;min-height:420px;padding:28px 36px;overflow:auto}.read-text{font-family:var(--font-board-text);color:var(--chalk);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.read-line{cursor:pointer;border-radius:8px;margin:0;padding:0 12px}.read-line.is-blank{cursor:default;height:1em}.read-line.is-current{color:var(--chalk-yellow);box-shadow:inset 0 0 0 2px var(--chalk-yellow)}.board-run ruby{ruby-align:center}.board-run rt{font-size:.42em;font-weight:500;line-height:1.2}.board-run[data-font=hans-pinyin],.board-run[data-font=hant-pinyin]{line-height:2.1}.board-run[data-font=hans-pinyin] ruby,.board-run[data-font=hant-pinyin] ruby{margin:0 .06em}.read-placeholder{color:var(--chalk-dim);margin:auto;font-size:28px}.read-panel{flex-direction:column;flex-shrink:0;gap:10px;width:300px;padding:26px 14px 16px;display:flex;position:relative;transform:rotate(.4deg)}.read-panel .tape{width:120px;margin-left:-60px;top:-12px;left:50%;transform:rotate(-3deg)}.read-panel-head{align-items:center;gap:8px;display:flex}.read-panel-head h2{font-family:var(--font-chalk);margin:0 auto 0 0;font-size:20px;font-weight:700}.read-panel-head .is-busy{opacity:.5;pointer-events:none}.read-fonts{flex-wrap:wrap;gap:6px;display:flex}.read-fonts-hint{width:100%;color:var(--ink-soft);margin:0;font-size:13px}.read-font{background:var(--paper);border:1.5px solid var(--paper-border);height:30px;font:13px var(--font-body);color:var(--ink);cursor:pointer;border-radius:8px;padding:0 8px}.read-font.is-on{background:var(--sticky);border-color:var(--chalk-yellow-shadow);font-weight:700}.read-editor{background:var(--paper);border:1.5px solid var(--paper-border);min-height:240px;font-family:var(--font-body);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;outline:none;flex:1;padding:12px 14px;font-size:17px;line-height:1.7;overflow:auto}.read-editor:focus{border-color:var(--board)}.read-editor:empty:before{content:attr(data-placeholder);color:var(--ink-faint);font-family:var(--font-body);font-size:16px}.read-editor [data-font=hans],.read-editor [data-font=hans-pinyin],.read-editor [data-font=hant-pinyin],.read-editor [data-font=pinyin-only]{background:var(--badge-green);border-radius:3px}.read-notice{color:var(--stamp-red);margin:0;font-size:14px}.read-hint{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.6}@media (max-width:1000px){.read-body{flex-direction:column}.read-panel{width:auto}}.fill{flex:1;min-width:0;max-width:none;min-height:0}.fill-main{flex-direction:column;flex:1;gap:16px;min-width:0;display:flex}.fill-main>.board-wrap{flex:1;min-height:0}.read-panel[hidden]{display:none}.fill-line{margin:0;padding:0 12px}.fill-line.is-blank{height:1em}.fill-slot{min-width:calc(var(--slot-width) + .4em);border-bottom:3px dashed var(--chalk-dim);text-align:center;vertical-align:bottom;border-radius:6px 6px 0 0;min-height:1.3em;margin:0 .15em;padding:0 .2em;line-height:1.3;transition:background .15s;display:inline-block}.fill-slot.is-hover{border-bottom-color:var(--chalk-yellow);background:#f2d6752e}.fill-slot.is-filled{border-bottom-style:solid;border-bottom-color:var(--chalk-yellow);color:var(--chalk-yellow);animation:.3s ease-out pop}.fill-pile{border:12px solid var(--wood);min-height:110px;box-shadow:inset 0 0 0 2px var(--wood-dark), inset 0 0 30px #502d0a59;border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px 20px;padding:20px;display:flex}.fill-pile-empty{font-family:var(--font-chalk);color:var(--ink-soft);margin:0;padding:10px 18px;font-size:20px}.fill-card{border:1.5px solid var(--paper-border);min-width:2em;box-shadow:0 3px 0 var(--paper-shadow), 0 6px 12px #462d1433;font-family:var(--font-board-text);font-size:inherit;color:var(--ink);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:center;align-items:center;padding:.15em .45em;line-height:1.5;display:inline-flex}.fill-card.is-lifted{visibility:hidden}.fill-card.is-chosen{outline:4px solid var(--accent);outline-offset:3px}.read-line:focus-visible{outline:3px solid var(--chalk-yellow);outline-offset:2px}.fill-slot[tabindex]:focus-visible{outline:3px solid var(--chalk-yellow);outline-offset:2px;background:#f2d6752e}.fill-card.is-dragging{z-index:50;pointer-events:none;cursor:grabbing;position:fixed;rotate:-3deg;scale:1.08;box-shadow:0 16px 28px #462d1459}.fill-card.is-wrong{border-color:var(--stamp-red);animation:.45s ease-in-out card-shake}@keyframes card-shake{0%,to{translate:0}20%{translate:-10px}40%{translate:9px}60%{translate:-6px}80%{translate:4px}}.fill-blank-btn{background:var(--marker-yellow);border:1.5px solid var(--chalk-yellow-shadow);min-height:40px;font:700 15px var(--font-body);color:var(--ink);cursor:pointer;border-radius:8px;padding:6px 12px}.fill-blank-btn.is-on{background:var(--paper);border-color:var(--paper-border)}.fill-blank-btn:disabled{opacity:.5;cursor:not-allowed}.fill-editor [data-blank]{background:var(--marker-yellow);box-shadow:inset 0 -2px 0 var(--chalk-yellow-shadow);border-radius:2px}.fill .board-wrap .read-board{min-height:280px}.quick{max-width:1320px}.quick-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;width:100%;display:grid}.quick-layout.is-editing{grid-template-columns:minmax(0,1fr) minmax(300px,380px)}.quick-editor{flex-direction:column;gap:12px;padding:18px;display:flex}.quick-heading{font-family:var(--font-chalk);color:var(--heading);margin:0;font-size:28px}.quick-imports{flex-wrap:wrap;gap:8px;display:flex}.quick-textarea{resize:vertical;border:1.5px solid var(--paper-border);width:100%;min-height:150px;color:var(--ink);font:16px/1.6 var(--font-body);background:#fffef8;border-radius:8px;padding:12px}.quick-apply{width:100%}.quick-group-bar{border-top:1.5px dashed var(--paper-border);flex-direction:column;gap:8px;padding-top:12px;display:flex}.quick-group-name{color:var(--ink-soft);font:14px var(--font-body);flex-direction:column;gap:4px;display:flex}.quick-group-name input{border:1.5px solid var(--paper-border);height:38px;color:var(--ink);font:700 16px var(--font-body);background:#fffef8;border-radius:6px;padding:6px 8px}.quick-list{flex-direction:column;gap:8px;max-height:280px;padding-right:4px;display:flex;overflow:auto}.quick-edit-row{grid-template-columns:28px minmax(0,1fr) 54px 34px 34px;align-items:center;gap:6px;display:grid}.quick-edit-row select{border:1.5px solid var(--paper-border);width:54px;height:36px;color:var(--ink);font:700 15px var(--font-body);background:#fffef8;border-radius:6px}.quick-row-number{color:var(--ink-soft);text-align:right;font-variant-numeric:tabular-nums}.quick-edit-row input{border:1.5px solid var(--paper-border);min-width:0;height:36px;color:var(--ink);font:15px var(--font-body);background:#fffef8;border-radius:6px;padding:6px 8px}.quick-icon-btn{border:1.5px solid var(--paper-border);background:var(--paper);width:34px;height:34px;box-shadow:0 2px 0 var(--paper-shadow);color:var(--ink);font:700 20px/1 var(--font-body);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.chalkboard.quick-board{align-items:stretch;min-height:620px;overflow:hidden}.quick-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;display:flex}.quick-slides{align-items:center;gap:10px;min-width:0;display:flex}.quick-slide-btn{border:2px solid var(--chalk-dim);width:48px;height:48px;color:var(--chalk);font:22px/1 var(--font-body);cursor:pointer;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.quick-slide-btn:hover:not(:disabled){background:#ffffff2e}.quick-slide-btn:disabled{opacity:.3;cursor:default}.quick-slide-name{min-width:0;color:var(--chalk);font:700 26px/1.15 var(--font-chalk);text-align:center;overflow-wrap:anywhere;flex-direction:column;align-items:center;display:flex}.quick-slide-name small{color:var(--chalk-dim);font-size:15px}.quick-dots{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:auto;display:flex}.quick-dot{border:2px solid var(--chalk-dim);cursor:pointer;background:0 0;border-radius:50%;width:14px;height:14px;padding:0}.quick-dot.is-current{border-color:var(--chalk);background:var(--chalk)}.quick-empty-group{color:var(--chalk-dim);font:22px var(--font-chalk);text-align:center;grid-column:1/-1;margin:40px 0}.quick-score{color:var(--chalk);font:700 22px var(--font-chalk);flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.quick-score span{border:2px dashed var(--chalk-dim);border-radius:8px;padding:4px 12px}.quick-deck{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:12px;width:100%;animation:.35s ease-out quick-slide-in;display:grid}.quick-deck.is-from-prev{--slide-from:-48px}@keyframes quick-slide-in{0%{opacity:0;translate:var(--slide-from,48px) 0}}@media (prefers-reduced-motion:reduce){.quick-deck{animation:none}}.quick-deck .quick-card .ttt-text.quick-text{font-size:max(40px, var(--size));overflow-wrap:anywhere;flex-shrink:0}.quick-line{display:block}.quick-text.is-1{--size:60cqi}.quick-text.is-2{--size:40cqi}.quick-text.is-3{--size:26cqi}.quick-text.is-caption{--size:20cqi}.has-cell-font .quick-text.is-1{--size:44cqi}.has-cell-font .quick-text.is-2{--size:28cqi}.has-cell-font .quick-text.is-3{--size:18cqi}.has-cell-font .quick-text.is-caption{--size:16cqi}[data-font=zhuyin-only] .quick-text.is-1{--size:66cqi}[data-font=zhuyin-only] .quick-text.is-2{--size:40cqi}[data-font=zhuyin-only] .quick-text.is-3{--size:26cqi}[data-font=zhuyin-only] .quick-text.is-caption{--size:20cqi}[data-font=hans-pinyin] .quick-text.is-1,[data-font=hant-pinyin] .quick-text.is-1{--size:46cqi}[data-font=hans-pinyin] .quick-text.is-2,[data-font=hant-pinyin] .quick-text.is-2{--size:32cqi}[data-font=hans-pinyin] .quick-text.is-3,[data-font=hant-pinyin] .quick-text.is-3{--size:21cqi}[data-font=hans-pinyin] .quick-text.is-caption,[data-font=hant-pinyin] .quick-text.is-caption{--size:17cqi}[data-font=pinyin-only] .quick-text.is-1{--size:30cqi}[data-font=pinyin-only] .quick-text.is-2{--size:19cqi}[data-font=pinyin-only] .quick-text.is-3{--size:13cqi}[data-font=pinyin-only] .quick-text.is-caption{--size:12cqi}.quick-card{cursor:pointer;background:#ffffff14;border:2px solid #ffffff38;border-radius:8px;flex-direction:column;min-height:190px;display:flex;position:relative;overflow:hidden;container-type:inline-size}.quick-card.is-right{border-color:var(--success);box-shadow:inset 0 0 0 3px #86efac38}.quick-card.is-wrong{border-color:var(--chalk-pink);box-shadow:inset 0 0 0 3px #fb718538}.quick-card-content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;min-height:130px;padding:12px;display:flex}.quick-card-content img{object-fit:contain;flex:1 1 0;width:100%;min-height:100px}.quick-card-content p{max-width:100%;color:var(--chalk);margin:0}.quick-card-content .quick-empty{color:var(--chalk-dim);font-size:20px}.quick-result{color:#fff;text-shadow:0 3px #0003,0 0 12px #00000059;pointer-events:none;font-size:clamp(72px,9vw,132px);font-weight:900;line-height:1;position:absolute;inset:50% auto auto 50%;translate:-50% -50%}.quick-result.is-right{color:var(--success)}.quick-result.is-wrong{color:var(--chalk-pink)}.quick-card:focus-visible{outline:4px solid var(--accent);outline-offset:3px}@media (max-width:980px){.quick-layout.is-editing{grid-template-columns:1fr}.chalkboard.quick-board{min-height:420px}}.missing-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px 14px;display:flex}.missing-actions .btn-primary{background:var(--sticky);color:var(--ink)}.missing-hint{color:var(--chalk);font:700 22px var(--font-chalk)}.missing-field{flex:1;width:100%;min-height:480px;position:relative}.missing-card{background:#ffffff14;border:2px solid #ffffff38;border-radius:8px;transition:left .4s,top .4s,opacity .5s,scale .5s,visibility .5s;position:absolute;overflow:hidden;translate:-50% -50%;container-type:size}.missing-card-content{flex-direction:column;justify-content:center;align-items:center;gap:4cqmin;width:100%;height:100%;padding:4cqmin;display:flex}.missing-card p{max-width:100%;color:var(--chalk);margin:0}.missing-card .missing-blank{color:var(--chalk-dim);font-size:20px}.missing-card img{object-fit:contain;pointer-events:none;flex:1 1 0;max-width:100%;min-height:0}.missing-field.is-editing .missing-card{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.missing-card.is-dragging{z-index:1;cursor:grabbing;transition:none}.missing-card:focus-visible{box-shadow:0 0 0 4px var(--chalk);outline:none}.missing-card.is-marked{outline:3px dashed var(--chalk-yellow-shadow);outline-offset:-3px;background:#ffffff2e}.missing-card.is-gone{opacity:0;visibility:hidden;scale:.8}.missing-card.is-found{border-color:var(--success);animation:.6s ease-out missing-found;box-shadow:inset 0 0 0 3px #86efac38,0 0 18px #86efac73}@keyframes missing-found{0%{scale:.6}60%{scale:1.12}}@media (prefers-reduced-motion:reduce){.missing-card{transition:none}.missing-card.is-found{animation:none}}.missing-tip{color:var(--ink-soft);margin:0;font-size:15px}.missing-mark{border:1.5px solid var(--paper-border);height:36px;color:var(--ink-soft);font:700 14px var(--font-body);cursor:pointer;background:#fffef8;border-radius:6px;padding:0}.missing-mark.is-on{border-color:var(--chalk-yellow-shadow);background:var(--sticky);color:var(--ink)}@media (max-width:980px){.missing-field{min-height:320px}}.home-hint{color:var(--muted);margin:6px 0 0}.home-section{flex-direction:column;gap:12px;display:flex}.home-section h2{margin:0}.home-section{container-type:inline-size}.home-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;gap:12px;margin:0;padding:0;list-style:none;display:grid}@container (max-width:860px){.home-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (max-width:640px){.home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (max-width:420px){.home-grid{grid-template-columns:minmax(0,1fr)}}.home-card{outline-offset:-1.5px;background:#fbf8f1;border-radius:6px;outline:1.5px solid #0000;min-height:84px;display:flex;overflow:hidden;box-shadow:0 1px #3c2d1414,0 2px 6px #3c2d140f}.home-card.is-checked{outline-color:#26412f}.home-card-pick{color:#fff;width:52px;font:inherit;cursor:pointer;background:#efe6d6;border:0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;padding:0;transition:background .15s;display:flex}.home-card-pick:hover{filter:brightness(.96)}.is-checked .home-card-pick{background:#26412f}.home-card-box{border:1.5px solid #b9af9b;border-radius:4px;place-items:center;width:20px;height:20px;font-size:13px;font-weight:900;display:grid}.is-checked .home-card-box{border-color:#fff}.home-card-order{font-size:12px;font-weight:700}.home-card-name{cursor:pointer;flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;padding:12px 16px;display:flex}.home-card-zh{color:#2b2a24;font-size:20px;font-weight:700;line-height:1.3}.home-card-en{color:#8a8170;font-size:13px}.home-card-open{color:#7a715f;border-left:1px solid #ebe2d0;flex:none;place-items:center;width:48px;font-size:20px;text-decoration:none;display:grid}.home-card-open:hover{color:#2b2a24;background:#efe6d6}.home-card-pick:focus-visible,.home-card-open:focus-visible{outline-offset:-3px;outline:2px solid #2b2a24}.is-checked .home-card-pick:focus-visible{outline-color:#fff}.home-actions{z-index:1;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;bottom:0}.home-actions p{margin:0}.home-confirm:disabled{opacity:.4;cursor:not-allowed}.home-clear{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start}.home-clear:hover{color:var(--ink);text-decoration:underline}.instant{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex:1;min-width:0;max-width:1320px}.instant.is-dragging{outline-color:var(--accent)}.instant label.is-busy{opacity:.5;pointer-events:none}.instant-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;width:100%;display:grid}.instant-layout.is-managing{grid-template-columns:minmax(0,1fr) 320px}.board-wrap .instant-board{align-items:stretch;min-height:540px}.instant-scene{flex:1;align-items:flex-start;gap:32px;min-height:0;display:flex}.instant-side{flex-direction:column;flex-shrink:0;align-items:center;gap:14px;width:280px;padding-top:8px;display:flex}.instant-camera{width:260px;position:relative}.instant-camera-svg{filter:drop-shadow(0 8px 10px #00000059);width:100%;display:block}.instant-camera.is-shooting .instant-camera-svg{animation:.25s ease-out instant-kick}.instant-body{fill:var(--camera-body);stroke:var(--camera-edge);stroke-width:1.5px}.instant-dark{fill:var(--camera-dark)}.instant-lens-ring{fill:var(--camera-lens-ring)}.instant-glass-light{stop-color:var(--camera-glass-light)}.instant-glass-dark{stop-color:var(--camera-glass)}.instant-shine{fill:color-mix(in srgb, var(--camera-flash) 55%, transparent)}.instant-flash-window{fill:var(--camera-flash);stroke:var(--camera-edge);stroke-width:1.5px}.instant-flash-lines{fill:none;stroke:var(--camera-edge);stroke-width:1.5px}.instant-slot{fill:color-mix(in srgb, var(--camera-dark), black 60%)}.instant-shutter{aspect-ratio:1;border:2px solid var(--camera-button-shadow);background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--camera-button), white 35%), var(--camera-button) 60%);width:13.0769%;box-shadow:0 3px 0 var(--camera-button-shadow);cursor:pointer;border-radius:50%;padding:0;transition:transform 80ms,box-shadow 80ms;position:absolute;top:41.3043%;left:79.6154%}.instant-shutter:active:not(:disabled),.instant-camera.is-shooting .instant-shutter{box-shadow:0 0 0 var(--camera-button-shadow);transform:translateY(3px)}.instant-shutter:disabled{cursor:not-allowed}.instant-eject-window{z-index:2;pointer-events:none;justify-content:center;align-items:flex-start;width:65.3846%;height:200px;display:flex;position:absolute;top:84.1304%;left:17.3077%;overflow:hidden}.instant-take{height:60px;padding:0 40px;font-size:26px}.instant-done{color:var(--chalk-yellow);margin:0;font-size:24px}.instant-left{color:var(--chalk-dim);margin:0;font-size:20px}.instant-left strong{color:var(--chalk)}.instant-photo{--box:150px;--w:calc(var(--box) * min(1, var(--ar)));--s:min(var(--w), var(--w) / var(--ar));padding:calc(var(--s) * .06) calc(var(--s) * .06) calc(var(--s) * .22);background:var(--photo-frame);border:0;border-radius:2px;flex-shrink:0;margin:0;display:block;box-shadow:0 4px 10px #0006}.instant-photo-picture{width:var(--w);aspect-ratio:var(--ar);background:var(--film-dark);display:block;position:relative;overflow:hidden}.instant-photo-picture img{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.instant-photo-film{background:var(--film-dark);opacity:0;position:absolute;inset:0}.instant-eject{--box:132px;animation:1.2s cubic-bezier(.3,.2,.4,1) .2s both instant-eject}.instant-eject .instant-photo-film{opacity:1}.instant-big{--w:min(84vw, 70vh * var(--ar));box-shadow:0 24px 60px #0000008c}.instant-big.is-developing .instant-photo-film{animation:2.2s ease-in .5s both instant-develop-film}.instant-big.is-developing img{animation:2.8s ease-out .5s both instant-develop-picture}.instant-pile{flex-wrap:wrap;flex:1;align-content:flex-start;align-items:center;gap:24px 20px;min-width:0;max-height:500px;margin:0;padding:18px 12px;list-style:none;display:flex;overflow:auto}.instant-pile li{display:flex}.instant-pile-photo{cursor:pointer;transition:box-shadow .15s}.instant-pile-photo:hover{box-shadow:0 0 0 3px var(--chalk-yellow), 0 6px 14px #00000073}.instant-pile-photo.is-away{visibility:hidden}.instant-pile-empty{text-align:center;width:100%;color:var(--chalk-dim);padding-top:140px;font-size:24px}.instant-overlay{z-index:900;cursor:pointer;background-color:#140f08d1;outline:none;justify-content:center;align-items:center;padding-bottom:5vh;transition:background-color .5s;animation:.5s ease-out instant-dim;display:flex;position:fixed;inset:0}.instant-overlay.is-landing{pointer-events:none;background-color:#0000}.instant-overlay-hint{text-align:center;font:22px var(--font-chalk);color:var(--chalk-dim);margin:0;position:absolute;bottom:2.5vh;left:0;right:0}.is-landing .instant-overlay-hint{visibility:hidden}.instant-flash{z-index:950;background:var(--camera-flash);pointer-events:none;animation:.45s ease-out forwards instant-flash;position:fixed;inset:0}.instant-manage{flex-direction:column;gap:12px;padding:18px;display:flex}.instant-manage-heading{font-family:var(--font-chalk);color:var(--heading);margin:0;font-size:28px}.instant-manage-hint{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.6}.instant-manage-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:420px;margin:0;padding:4px;list-style:none;display:grid;overflow:auto}.instant-manage-list li{position:relative}.instant-manage-list img{aspect-ratio:1;object-fit:cover;border:1.5px solid var(--paper-border);background:var(--paper-warm);border-radius:4px;width:100%;display:block}.instant-manage-number{background:color-mix(in srgb, var(--ink) 75%, transparent);min-width:22px;color:var(--paper);font:700 13px/22px var(--font-body);text-align:center;border-radius:999px;padding:0 6px;position:absolute;top:4px;left:4px}.instant-manage-stamp{background:var(--paper);position:absolute;bottom:6px;left:4px}.instant-manage-remove{width:28px;height:28px;font-size:18px;position:absolute;top:2px;right:2px}.instant-manage-remove:disabled{opacity:.5;cursor:not-allowed}.instant-manage-actions{flex-wrap:wrap;gap:8px;display:flex}.instant-text{flex-direction:column;gap:10px;padding:26px 22px 16px;display:flex;transform:rotate(-.2deg)}.instant-text .tape{width:120px;margin-left:-60px;top:-12px;left:50%;transform:rotate(2deg)}.instant-text-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.instant-text-head h2{font-family:var(--font-chalk);margin:0 auto 0 0;font-size:24px;font-weight:700}.instant-text-body{border:1.5px dashed var(--paper-border);width:100%;min-height:calc(1.7em + 20px);color:var(--ink);font-family:var(--font-board-text);white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border-radius:8px;margin:0;padding:8px 14px;font-weight:400;line-height:1.7;display:block}.instant-text-show{cursor:text}.instant-text-show:hover{border-color:var(--board)}.instant-text-input{resize:vertical;field-sizing:content;border-style:solid;border-color:var(--board);outline:none}.instant-text-placeholder,.instant-text-input::placeholder{color:var(--ink-faint)}.instant-text-body[data-font=hans-pinyin],.instant-text-body[data-font=hant-pinyin]{line-height:2.1}.instant-text-show ruby{ruby-align:center}.instant-text-show rt{font-size:.42em;font-weight:500;line-height:1.2}@keyframes instant-kick{30%{transform:translateY(3px)scale(.985)}}@keyframes instant-eject{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes instant-dim{0%{background-color:#0000}}@keyframes instant-flash{0%{opacity:.85}to{opacity:0}}@keyframes instant-develop-film{0%{opacity:1}to{opacity:0}}@keyframes instant-develop-picture{0%{filter:sepia(.8)contrast(.6)brightness(1.2)}to{filter:none}}@media (max-width:1000px){.instant-layout.is-managing{grid-template-columns:1fr}}@media (max-width:800px){.instant-scene{flex-direction:column;align-items:center}.instant-pile{max-height:none}}.slots-stage{flex:1;justify-content:center}.slot-machine{width:min(100%, calc(var(--reels) * 190px + 110px));align-items:center;display:flex}.slot-cabinet{background:linear-gradient(var(--slot-body), var(--slot-body-dark));border:6px solid var(--slot-trim);border-radius:28px 28px 14px 14px;flex-direction:column;flex:1;gap:12px;min-width:0;padding:14px 16px 18px;display:flex;box-shadow:0 8px 16px #00000073}.slot-marquee{background:var(--slot-panel);border:3px solid var(--slot-trim);border-radius:14px;align-items:center;gap:12px;padding:6px 14px;display:flex}.slot-name{font-family:var(--font-chalk);letter-spacing:.2em;color:var(--slot-bulb);text-shadow:0 0 10px color-mix(in srgb, var(--slot-bulb) 70%, transparent);white-space:nowrap;font-size:clamp(22px,3vw,34px);font-weight:700}.slot-lights{background:radial-gradient(circle at 9px 50%, var(--slot-bulb) 0 4px, transparent 5px), radial-gradient(circle at 27px 50%, var(--slot-bulb-off) 0 4px, transparent 5px);background-repeat:repeat-x;background-size:36px 12px;flex:1;height:12px}.slot-cabinet.is-spinning .slot-lights{animation:.35s step-end infinite slot-chase}.slot-cabinet.is-flashing .slot-lights{background:radial-gradient(circle at 9px 50%, var(--slot-bulb) 0 4px, transparent 5px), radial-gradient(circle at 27px 50%, var(--slot-bulb) 0 4px, transparent 5px);background-repeat:repeat-x;background-size:36px 12px;animation:.25s 6 alternate slot-blink}.slot-reels{grid-template-columns:repeat(var(--reels), minmax(0, 1fr));background:var(--slot-panel);border-radius:12px;gap:10px;padding:12px;display:grid;box-shadow:inset 0 4px 10px #0009}.slot-reel{flex-direction:column;gap:8px;min-width:0;display:flex}.slot-title{min-height:1.2em;color:var(--slot-bulb);font-size:clamp(16px,2vw,26px)}.slot-window{aspect-ratio:1;background:var(--slot-reel);border-radius:8px;position:relative;overflow:hidden}.slot-window:after{content:"";pointer-events:none;background:linear-gradient(#00000059,#0000 20% 80%,#00000059);position:absolute;inset:0}.slot-reel:has(.slot-hold.is-held) .slot-window{outline:4px solid var(--slot-trim);outline-offset:2px}.slot-strip{flex-direction:column;height:100%;display:flex}.slot-window.is-spinning .slot-strip{filter:blur(.8px)}.slot-cell{color:var(--ink);flex:0 0 100%;padding:8%;display:flex;container-type:size}.slot-hold{font:inherit;color:var(--chalk);border:2px solid var(--slot-trim);cursor:pointer;background:#00000040;border-radius:999px;align-self:center;padding:4px 10px;font-size:14px}.slot-hold.is-held{color:var(--slot-panel);background:var(--slot-trim);font-weight:700}.slot-hold:disabled{opacity:.6;cursor:default}.slot-lever{cursor:pointer;background:0 0;border:none;flex-shrink:0;width:56px;height:240px;margin-left:-6px;padding:0;position:relative}.slot-lever:disabled{cursor:default}.slot-lever-base{background:linear-gradient(90deg, var(--slot-trim-dark), var(--slot-trim));border-radius:0 10px 10px 0;width:28px;height:60px;position:absolute;bottom:70px;left:0;box-shadow:2px 3px 6px #0006}.slot-lever-arm{background:linear-gradient(90deg, var(--slot-trim-dark), var(--slot-lever), var(--slot-trim-dark));transform-origin:50% 100%;border-radius:5px;width:10px;height:110px;transition:transform .15s;position:absolute;bottom:100px;left:13px}.slot-lever:hover:not(:disabled) .slot-lever-arm{transform:scaleY(.92)}.slot-lever-arm.is-pulled{animation:.9s ease-in-out slot-pull}.slot-lever-knob{background:radial-gradient(circle at 35% 35%, #fff9, transparent 40%), var(--slot-knob);border-radius:50%;width:36px;height:36px;position:absolute;top:-18px;left:50%;translate:-50%;box-shadow:0 2px 4px #0006}@keyframes slot-pull{35%,55%{transform:scaleY(-.7)}}@keyframes slot-chase{50%,to{background-position:18px 0}}@keyframes slot-blink{to{opacity:.25}}@media (max-width:600px){.slot-cabinet{padding:10px}.slot-reels{gap:6px;padding:8px}.slot-lever{width:44px;height:200px}.slot-hold{padding:3px 6px;font-size:12px}}.rps-board{flex:1;justify-content:center}.rps-arena{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;width:100%;display:grid}.rps-team{flex-direction:column;align-items:center;gap:6px;min-width:0;transition:opacity .2s;display:flex}.rps-team.is-loser{opacity:.5}.rps-name{max-width:100%;color:var(--team-color);cursor:text;font-size:clamp(24px,3vw,34px)}.rps-name[data-font^=bpmf],.rps-name[data-font=zhuyin-only]{font-weight:400}.rps-name[data-font=hans-pinyin],.rps-name[data-font=hant-pinyin]{line-height:2}.rps-hand{aspect-ratio:1;border:5px solid var(--team-color);width:clamp(140px,30vh,280px);font:inherit;color:var(--chalk);cursor:default;background:#ffffff0a;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.rps-team.is-winner .rps-hand{cursor:pointer;box-shadow:0 0 0 6px color-mix(in srgb, var(--team-color) 35%, transparent), 0 0 32px var(--team-color);animation:1.2s ease-in-out infinite alternate rps-glow}.rps-team.is-winner .rps-hand:hover{background:#ffffff1a}.rps-hand:focus-visible{outline:3px solid var(--chalk-yellow);outline-offset:4px}.rps-emoji{font-size:clamp(72px,16vh,150px);line-height:1;display:block}.rps-team.team-1 .rps-emoji{scale:-1 1}.rps-emoji.is-shuffling{animation:.18s ease-in-out infinite alternate rps-shake}.rps-emoji.is-landed{animation:.45s cubic-bezier(.34,1.56,.64,1) pop}.rps-hand-name{min-height:1.3em;font-family:var(--font-chalk);color:var(--chalk);margin:0;font-size:clamp(26px,3.4vw,40px);font-weight:700}.rps-score{font-family:var(--font-chalk);color:var(--chalk-yellow);margin:0;font-size:26px}.rps-cheer-hint{font-family:var(--font-chalk);color:var(--chalk-yellow);margin:0;font-size:22px;animation:.8s ease-in-out infinite alternate rps-bob}.rps-vs{font-family:var(--font-chalk);color:var(--chalk-dim);font-size:clamp(32px,5vw,56px);font-weight:700}.rps-go{justify-content:center;min-width:200px}.rps-hint{color:var(--chalk-dim);margin:0;font-size:15px}@keyframes rps-shake{0%{transform:rotate(-8deg)translateY(-4px)}to{transform:rotate(8deg)translateY(4px)}}@keyframes rps-glow{to{box-shadow:0 0 0 12px color-mix(in srgb, var(--team-color) 20%, transparent), 0 0 48px var(--team-color)}}@keyframes rps-bob{to{transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.rps-emoji.is-shuffling,.rps-team.is-winner .rps-hand,.rps-cheer-hint{animation:none}}@media (max-width:600px){.rps-arena{gap:6px}.rps-hand{border-width:4px;width:120px}.rps-emoji{font-size:64px}}.card-board{flex:1;justify-content:center;container-type:inline-size}.card-decks{--card-w:min(clamp(120px, 22vh, 220px), (100cqw - 100px) / 2.3);grid-template-columns:1fr;gap:24px;width:100%;display:grid}.card-decks.is-2{--card-w:min(clamp(90px, 17vh, 170px), (50cqw - 100px) / 2.3);grid-template-columns:1fr 1fr}.card-deck{--card-back:var(--card-back-0);flex-direction:column;align-items:center;gap:12px;min-width:0;display:flex}.card-deck.deck-1{--card-back:var(--card-back-1)}.card-deck-name{font-family:var(--font-chalk);color:var(--chalk);margin:0;font-size:26px}.card-table{justify-content:center;align-items:flex-start;gap:clamp(16px,4vw,48px);display:flex}.card-pile-wrap,.card-slot{flex-direction:column;align-items:center;gap:8px;display:flex}.card-count{min-height:1.3em;font-family:var(--font-chalk);color:var(--chalk-dim);margin:0;font-size:20px}.card-pile{width:var(--card-w);aspect-ratio:5/7;border-radius:calc(var(--card-w) * .07);cursor:pointer;background:0 0;border:0;padding:0;position:relative}.card-pile:disabled{cursor:default}.card-pile>.pcard-back{box-shadow:calc(var(--stack) * 1px) calc(var(--stack) * 1px) 0 var(--card-edge), calc(var(--stack) * 2px) calc(var(--stack) * 2px) 0 var(--card-stack-shadow);position:absolute;inset:0}.card-pile:not(:disabled):hover>.pcard-back{translate:0 -4px}.card-pile:focus-visible{outline:3px solid var(--chalk-yellow);outline-offset:6px}.card-pile.is-shuffling>.pcard-back{animation:.35s ease-in-out 2 card-riffle-l}.card-pile.is-shuffling>.pcard-back.is-riffle{animation-name:card-riffle-r}.card-empty,.card-slot-empty{width:var(--card-w);aspect-ratio:5/7;border:3px dashed var(--chalk-dim);border-radius:calc(var(--card-w) * .07);font-family:var(--font-chalk);color:var(--chalk-dim);justify-content:center;align-items:center;font-size:20px;display:flex}.card-empty{height:100%}.pcard{width:calc(var(--card-w) * 1.15);aspect-ratio:5/7;font:inherit;perspective:1000px;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:0;padding:0}.pcard:disabled{cursor:default}.pcard:focus-visible{outline:3px solid var(--chalk-yellow);outline-offset:6px;border-radius:8px}.pcard.is-dealt{animation:.45s cubic-bezier(.2,.8,.3,1) card-deal}.pcard-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .5s;display:block;position:relative;transform:rotateY(180deg)}.pcard.is-open .pcard-inner{transform:none}.pcard.is-peeking .pcard-inner{transition-duration:.2s}.pcard:not(:disabled):not(.is-peeking):hover .pcard-inner{translate:0 -6px}.pcard-face,.pcard-back{border-radius:calc(var(--card-w) * .07);backface-visibility:hidden;box-shadow:0 6px 14px var(--card-shadow);display:block}.pcard-face,.pcard .pcard-back{position:absolute;inset:0}.pcard-face{border:1px solid var(--card-edge);background:var(--card-face);color:var(--card-black);font-family:Georgia,Times New Roman,serif;font-weight:700}.pcard-face.is-red{color:var(--card-red)}.pcard.is-peeking .pcard-face{outline:4px dashed var(--chalk-yellow);outline-offset:4px}.pcard-corner{font-size:calc(var(--card-w) * .17);text-align:center;line-height:1;position:absolute;top:6%;left:8%}.pcard-corner.is-bottom{inset:auto 8% 6% auto;rotate:180deg}.pcard-pip{font-size:calc(var(--card-w) * .55);justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}.pcard-back{border:calc(var(--card-w) * .05) solid var(--card-face);background:repeating-linear-gradient(45deg, transparent 0 6px, var(--card-back-stripe) 6px 8px), repeating-linear-gradient(-45deg, transparent 0 6px, var(--card-back-stripe) 6px 8px), var(--card-back)}.pcard .pcard-back{transform:rotateY(180deg)}.card-controls .btn-chalk,.card-controls .btn-chalk-outline,.card-controls .btn-chalk-ghost{height:50px;padding:0 20px;font-size:20px}.card-peek{touch-action:none;-webkit-user-select:none;user-select:none}.card-peek:active{background:var(--chalk-press)}.card-history{flex-wrap:wrap;justify-content:center;gap:6px;max-width:100%;margin:0;padding:0;list-style:none;display:flex}.card-history li{background:var(--card-face);color:var(--card-black);border-radius:6px;padding:2px 8px;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:700}.card-history li.is-red{color:var(--card-red)}.card-history li.is-custom{font-family:var(--font-board-text);align-items:center;font-weight:400;display:flex}.card-history li img{object-fit:contain;max-width:48px;height:28px}.pcard-face.is-custom{color:var(--ink);padding:10%;display:flex;container-type:size}@keyframes card-deal{0%{transform:translateX(calc(var(--card-w) * -1.2)) rotate(-12deg);opacity:.4}}@keyframes card-riffle-l{50%{transform:translate(-30%)rotate(-8deg)}}@keyframes card-riffle-r{50%{transform:translate(30%)rotate(8deg)}}@media (prefers-reduced-motion:reduce){.pcard.is-dealt,.card-pile.is-shuffling>.pcard-back{animation:none}.pcard-inner{transition:none}}@container (max-width:760px){.card-decks.is-2{--card-w:min(clamp(90px, 17vh, 170px), (100cqw - 100px) / 2.3);grid-template-columns:1fr}}.match-game>.board-wrap,.match-board{flex:1}.match-board .chalk-segment{align-items:center}.match-board .chalk-segment button{height:38px;padding:0 10px;font-size:17px}.match-segment-name{color:var(--chalk-dim);padding:0 4px 0 10px;font-size:16px}.match-sides{flex:1;grid-template-columns:1fr 1fr;width:100%;min-height:260px;display:grid;position:relative}.match-side{--card-back:var(--card-back-0);--gap:8px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-width:0;padding:0 clamp(8px,1.5vw,24px);display:flex;container-type:size}.match-side.side-1{--card-back:var(--card-back-1);border-left:3px dashed var(--chalk-dim)}.match-grid{--card-w:var(--fit-w,min((100cqw - 32px - (var(--cols) - 1) * var(--gap)) / var(--cols),  (100cqh - 48px - 32px - (var(--rows) - 1) * var(--gap)) / var(--rows) * 4 / 5, 200px));grid-template-columns:repeat(var(--cols), var(--card-w));gap:var(--gap);justify-content:center;max-width:100%;min-height:0;padding:16px;display:grid}.match-sides:not(.is-measured) .match-grid{visibility:hidden}.match-grid.is-scrolling{align-self:stretch;overflow-y:auto}.pcard.match-card{width:var(--card-w);aspect-ratio:4/5;position:relative}.pcard.match-card .pcard-back{justify-content:center;align-items:center;display:flex}.match-back-label{font-family:var(--font-chalk);font-size:calc(var(--card-w) * .38);color:var(--card-face);text-shadow:0 2px 4px #00000059;font-weight:700;line-height:1}.match-card.is-picked .pcard-face{outline:4px solid var(--chalk-yellow);outline-offset:3px}.match-card.is-miss .pcard-inner{animation:.4s ease-in-out match-shake}.match-card.is-miss .pcard-face{outline:4px solid var(--chalk-pink);outline-offset:3px}.match-card.is-done .pcard-face{outline:4px solid var(--chalk-green);outline-offset:3px}.match-card.is-done:not(.is-gone) .pcard-inner{animation:.5s ease-out match-pop}.match-check{background:var(--chalk-green);width:30px;height:30px;color:var(--board-ink);border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex;position:absolute;top:-10px;right:-10px}.match-card.is-gone{opacity:0;visibility:hidden;transition:opacity .5s .9s,visibility 0s linear 1.4s}.match-cheer{z-index:2;background:var(--chalk);color:var(--board-ink);font-family:var(--font-chalk);white-space:nowrap;pointer-events:none;border-radius:16px;margin:0;padding:12px 32px;font-size:44px;font-weight:700;animation:1.6s ease-out forwards match-cheer;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 8px 24px #00000059}.match-cheer.is-final{font-size:56px;animation:.6s ease-out forwards match-cheer-stay}@keyframes match-shake{25%{translate:-6px}75%{translate:6px}}@keyframes match-pop{50%{scale:1.08}}@keyframes match-cheer{0%{opacity:0;scale:.6}15%,70%{opacity:1;scale:1}to{opacity:0;scale:1}}@keyframes match-cheer-stay{0%{opacity:0;scale:.6}}@media (prefers-reduced-motion:reduce){.match-card.is-miss .pcard-inner,.match-card.is-done .pcard-inner,.match-cheer{animation:none}.match-cheer:not(.is-final){display:none}}.scr-game>.board-wrap,.scr-board{flex:1}.scr-board .chalk-segment{align-items:center}.scr-board .chalk-segment button{height:38px;padding:0 10px;font-size:17px}.scr-stage{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;width:100%;min-height:320px;display:flex;position:relative}.scr-line,.scr-pool{--gap:16px;justify-content:center;gap:20px var(--gap);flex-wrap:wrap;width:min(100%,1200px);display:flex}.scr-line{border-bottom:4px dashed var(--chalk-dim);align-items:flex-end;min-height:130px;padding:20px 12px 18px;position:relative}.scr-line.is-solved{border-bottom-style:solid;border-bottom-color:var(--chalk-green)}.scr-line-hint{font-family:var(--font-chalk);color:var(--chalk-dim);align-self:center;font-size:26px}.scr-pool{align-items:center;min-height:100px}.scr-chunk{background:var(--paper);min-width:1.6em;color:var(--ink);font-family:var(--font-board-text);box-shadow:0 4px 0 var(--paper-shadow), 0 6px 14px #0000004d;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border:0;border-radius:10px;justify-content:center;align-items:center;padding:.25em .55em;font-size:clamp(28px,2.4vw + 10px,52px);line-height:1.3;transition:translate .15s;display:inline-flex;position:relative}.scr-chunk:hover:not(:disabled,.is-empty){translate:0 -3px}.scr-chunk:disabled{cursor:default}.scr-line.is-solved .scr-chunk{outline:4px solid var(--chalk-green);outline-offset:2px;animation:.5s ease-out match-pop}.scr-chunk.is-lifted{opacity:.3}.scr-chunk.is-empty{box-shadow:none;outline:3px dashed var(--chalk-dim);outline-offset:-3px;cursor:default;background:0 0}.scr-chunk.is-empty>*{visibility:hidden}.scr-chunk.is-dragged{z-index:1000;pointer-events:none;cursor:grabbing;box-shadow:0 4px 0 var(--paper-shadow), 0 14px 28px #0006;position:fixed;rotate:2deg;scale:1.05}.scr-label{background:var(--chalk-yellow);min-width:30px;height:30px;color:var(--board-ink);font-family:var(--font-chalk);border-radius:15px;justify-content:center;align-items:center;padding:0 7px;font-size:18px;font-weight:700;line-height:1;display:flex;position:absolute;top:-12px;left:-12px;box-shadow:0 2px 4px #0000004d}.scr-caret{background:var(--chalk-yellow);border-radius:2px;width:4px;margin-left:-2px;position:absolute}.scr-status{min-height:1.4em;font-family:var(--font-chalk);color:var(--chalk-pink);margin:0;font-size:26px}.scr-status.is-solved{color:var(--chalk-green);font-weight:700}.scr-controls{align-items:center}.scr-dots{flex-wrap:wrap;justify-content:center;gap:10px;max-width:420px;display:flex}.scr-dot{border:2px solid var(--chalk-dim);cursor:pointer;background:0 0;border-radius:50%;width:16px;height:16px;padding:0}.scr-dot.is-solved{border-color:var(--chalk-green);background:var(--chalk-green)}.scr-dot[aria-current]{outline:3px solid var(--chalk-yellow);outline-offset:2px}@media (prefers-reduced-motion:reduce){.scr-line.is-solved .scr-chunk{animation:none}}.cn-area{flex:1;justify-content:space-between;gap:clamp(60px,18%,260px);width:100%;min-height:320px;padding:8px clamp(8px,2vw,32px);display:flex;position:relative}.cn-area.is-column{flex-direction:column;gap:clamp(80px,16vh,200px)}.cn-side{flex-direction:column;flex:1;justify-content:center;gap:8px;min-width:0;min-height:0;display:flex}.cn-area.is-column .cn-side{flex-direction:row;align-items:flex-end}.cn-area.is-column .cn-side.side-1{align-items:flex-start}.cn-item{flex:1 1 0;justify-content:flex-end;align-items:center;gap:10px;min-height:0;max-height:150px;display:flex}.cn-side.side-1 .cn-item{flex-direction:row-reverse}.cn-area.is-column .cn-item{flex-direction:column;min-width:0;max-width:200px;height:100%;max-height:240px}.cn-area.is-column .cn-side.side-1 .cn-item{flex-direction:column-reverse}.cn-label{background:var(--chalk-yellow);min-width:36px;height:36px;color:var(--board-ink);font-family:var(--font-chalk);border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;padding:0 8px;font-size:20px;font-weight:700;display:flex}.cn-card{border:1px solid var(--card-edge);background:var(--card-face);min-width:0;max-width:320px;min-height:0;color:var(--ink);font:inherit;box-shadow:0 6px 14px var(--card-shadow);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:12px;flex:1;align-self:stretch;padding:4px 8px;position:relative;container-type:size}.cn-card:disabled{cursor:default}.cn-card:focus-visible{outline:3px solid var(--chalk-yellow);outline-offset:4px}.cn-card.is-picked{outline:4px solid var(--chalk-yellow);outline-offset:3px}.cn-card.is-miss{outline:4px solid var(--chalk-pink);outline-offset:3px}.cn-card.is-done{outline:4px solid var(--chalk-green);outline-offset:3px}.cn-card .ttt-text.is-xl{font-size:min(70cqh,70cqw)}.cn-card .ttt-text.is-large{font-size:min(62cqh,40cqw)}.cn-card .ttt-text.is-medium{font-size:min(55cqh,21cqw)}.cn-card .ttt-text.is-small{font-size:min(36cqh,11cqw)}.cn-card .ttt-text.is-caption{font-size:min(22cqh,14cqw)}.has-cell-font .cn-card .ttt-text.is-xl{font-size:min(60cqh,47cqw)}.has-cell-font .cn-card .ttt-text.is-large{font-size:min(55cqh,27cqw)}.has-cell-font .cn-card .ttt-text.is-medium{font-size:min(48cqh,14cqw)}.has-cell-font .cn-card .ttt-text.is-small{font-size:min(32cqh,7cqw)}.has-cell-font .cn-card .ttt-text.is-caption{font-size:min(18cqh,9cqw)}.cn-dot{border:3px solid var(--board-ink);background:var(--chalk);border-radius:50%;width:18px;height:18px;margin-top:-9px;position:absolute;top:50%;right:-9px}.cn-side.side-1 .cn-dot{left:-9px;right:auto}.cn-area.is-column .cn-dot{margin-top:0;margin-left:-9px;inset:auto auto -9px 50%}.cn-area.is-column .cn-side.side-1 .cn-dot{top:-9px;bottom:auto}.cn-card.is-picked .cn-dot{background:var(--chalk-yellow)}.cn-card.is-done .cn-dot{background:var(--chalk-green)}.cn-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.cn-lines line{stroke-width:5px;stroke-linecap:round}.cn-lines .is-done{stroke:var(--chalk-green)}.cn-lines .is-miss{stroke:var(--chalk-pink);animation:.9s ease-in forwards cn-miss}.cn-lines .is-drawing{stroke:var(--chalk-yellow);stroke-dasharray:12 10}@keyframes cn-miss{60%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.cn-lines .is-miss{animation:none}}.cd-board{flex:1;justify-content:center}.cd-layout{grid-template-columns:minmax(280px,1fr) 2fr;align-items:center;gap:32px;width:100%;display:grid}.cd-timer{flex-direction:column;align-items:center;gap:20px;min-width:0;display:flex;container-type:inline-size}.cd-dial{aspect-ratio:1;width:min(100%,52vh,360px);position:relative}.cd-dial svg{width:100%;height:100%;transform:rotate(-90deg)scaleY(-1)}.cd-ring-track,.cd-ring{fill:none;stroke-width:10px}.cd-ring-track{stroke:#f3f0e426}.cd-ring{stroke:var(--chalk);stroke-linecap:round;transition:stroke-dashoffset .1s linear,stroke .3s}.cd-digits{color:var(--chalk);font-family:var(--font-chalk);font-variant-numeric:tabular-nums;place-items:center;font-size:min(22cqw,80px);font-weight:700;line-height:1;display:grid;position:absolute;inset:0}.cd-dial.is-hurry .cd-ring{stroke:var(--chalk-yellow)}.cd-dial.is-hurry .cd-digits{color:var(--chalk-yellow)}.cd-dial.is-up .cd-digits{color:var(--chalk-pink);font-size:min(14cqw,52px);animation:.5s ease-in-out 4 alternate cd-up}@keyframes cd-up{to{transform:scale(1.12)}}.cd-setting{flex-direction:column;align-items:center;gap:12px;display:flex}.cd-seconds{color:var(--chalk);font-family:var(--font-chalk);align-items:center;gap:8px;font-size:20px;display:flex}.cd-seconds input{width:110px;height:44px;color:var(--chalk);font:inherit;text-align:center;background:0 0;border:2px solid #f3f0e4bf;border-radius:10px;padding:0 10px;font-size:22px}.cd-seconds input:disabled,.cd-setting .chalk-segment button:disabled{opacity:.5;cursor:not-allowed}.cd-setting .chalk-segment button{height:38px;padding:0 14px;font-size:17px}.cd-show{flex-direction:column;align-items:center;gap:16px;min-width:0;display:flex}.cd-slide{width:100%;height:clamp(260px,62vh,680px);color:var(--chalk);border:2px dashed #f3f0e459;border-radius:14px;justify-content:center;align-items:center;padding:3%;display:flex;container-type:size}.cd-slide .ttt-content{animation:.25s ease-out cd-slide-in}@keyframes cd-slide-in{0%{opacity:0;transform:translate(16px)}}.cd-text{max-width:100%;font-family:var(--font-board-text);text-align:center;white-space:pre-line;overflow-wrap:anywhere;font-weight:700;line-height:1.35}.has-cell-font .cd-text{font-family:var(--cell-font);font-weight:400}.cd-text.is-xl{font-size:30cqmin}.cd-text.is-large{font-size:15cqmin}.cd-text.is-medium{font-size:9cqmin}.cd-text.is-small{font-size:6cqmin}.cd-text.is-caption{flex-shrink:0;font-size:7cqmin}.cd-text rt{font-size:.42em;font-weight:500;line-height:1.2}[data-font=hans-pinyin] .cd-text,[data-font=hant-pinyin] .cd-text{line-height:1.8}[data-font=pinyin-only] .cd-text{overflow-wrap:normal}.cd-empty{color:var(--chalk-dim);font-family:var(--font-chalk);text-align:center;flex-direction:column;align-items:center;gap:12px;font-size:26px;display:flex}.cd-empty small{font-size:17px}.cd-nav{align-items:center}.cd-count{min-width:80px;color:var(--chalk);font-family:var(--font-chalk);text-align:center;font-size:20px}@media (prefers-reduced-motion:reduce){.cd-dial.is-up .cd-digits,.cd-slide .ttt-content{animation:none}}.puzzle{height:calc(100vh - 48px);min-height:0}.puzzle .board-wrap{flex:1;min-height:0}.board-wrap .puzzle-board{flex:1;gap:12px;min-height:0;padding:16px}.puzzle.is-dragging .puzzle-board{outline:3px dashed var(--accent);outline-offset:-8px}.puzzle-stage{touch-action:none;-webkit-user-select:none;user-select:none;flex:1 1 0;width:100%;min-height:0;overflow:visible}.puzzle-frame{fill:#00000040;stroke:var(--chalk-dim);stroke-width:2px;vector-effect:non-scaling-stroke}.puzzle-ghost{opacity:.3;pointer-events:none}.puzzle-slot{fill:none;stroke:var(--chalk-dim);stroke-width:1px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;opacity:.6;pointer-events:none}.puzzle-number{fill:var(--chalk);stroke:#0009;stroke-width:4px;paint-order:stroke;vector-effect:non-scaling-stroke;text-anchor:middle;dominant-baseline:central;pointer-events:none;font-weight:700}.puzzle-piece{cursor:grab}.puzzle-piece.is-held{cursor:grabbing}.puzzle-piece.is-placed{cursor:default}.puzzle-piece image{pointer-events:none}.puzzle-outline{fill:#0000;stroke:#ffffffd9;stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:all}.puzzle-piece.is-held .puzzle-outline{stroke:var(--chalk-yellow);stroke-width:3px}.puzzle-piece.is-placed .puzzle-outline{stroke:#0000;pointer-events:none}.board-wrap .sl-chalkboard{padding:20px}.sl-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:24px;width:100%;display:grid}.sl-board{width:min(100%, calc((100vh - 220px) * var(--cols) / var(--rows)));aspect-ratio:var(--cols) / var(--rows);-webkit-user-select:none;user-select:none;justify-self:center;position:relative;container-type:inline-size}.sl-board.can-hop{cursor:pointer}.sl-square{width:calc(100% / var(--cols));height:calc(100% / var(--rows));color:var(--chalk);background:#f3f0e40f;border:1px solid #f3f0e459;position:absolute}.sl-square.is-alt{background:#f3f0e424}.sl-square.is-start{background:#a8dba04d}.sl-square.is-goal{background:#f2d67559}.sl-num{font-family:var(--font-chalk);font-size:calc(100cqw / var(--cols) * .22);font-weight:700;line-height:1;position:absolute;top:4%;left:7%}.sl-label{font-family:var(--font-chalk);font-size:calc(100cqw / var(--cols) * .17);text-align:center;font-weight:700;position:absolute;bottom:6%;left:0;right:0}.sl-links{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.sl-ladder line{stroke:var(--chalk-yellow);stroke-width:6px;stroke-linecap:round;filter:drop-shadow(0 2px 2px #00000073)}.sl-ladder .sl-rung{stroke-width:5px}.sl-snake path{fill:none;stroke-linecap:round;stroke-linejoin:round}.sl-snake-edge{stroke:#141e18bf;stroke-width:19px}.sl-snake-body{stroke:var(--snake);stroke-width:13px}.sl-snake-spots{stroke:#ffffff73;stroke-width:5px;stroke-dasharray:4 14}.sl-snake-tongue{stroke:#e2453c;stroke-width:3px;stroke-linecap:round}.sl-snake-head{fill:var(--snake);stroke:#141e18bf;stroke-width:3px}.sl-snake-eye{fill:#fff}.sl-snake-pupil{fill:#1b1b1b}.sl-piece{z-index:1;width:calc(100cqw / var(--cols) * var(--size));aspect-ratio:1;pointer-events:none;transition:left .3s ease-in-out,top .3s ease-in-out;position:absolute;transform:translate(-50%,-50%)}.sl-piece.is-turn{z-index:2}.sl-piece.is-sliding{transition-duration:1.1s}.sl-piece.is-done{opacity:.75}.sl-piece-body{width:100%;height:100%;display:block}.sl-piece.is-turn .sl-token{box-shadow:0 0 0 3px var(--chalk-yellow), 0 4px 6px #00000073}.sl-piece-body.is-hopping{animation:.36s ease-out sl-hop}@keyframes sl-hop{0%{transform:translateY(0)scale(1.08,.9)}45%{transform:translateY(-75%)scale(.95,1.06)}85%{transform:translateY(0)scale(1.08,.9)}to{transform:translateY(0)scale(1)}}.sl-token{background:var(--piece);width:100%;height:100%;color:var(--board-ink);font-family:var(--font-chalk);font-size:calc(100cqw / var(--cols) * var(--size,.5) * .5);border:3px solid #ffffffd9;border-radius:50%;place-items:center;font-weight:700;line-height:1;display:inline-grid;overflow:hidden;box-shadow:0 3px 5px #00000073}.sl-token img{object-fit:cover;width:100%;height:100%}.sl-side .sl-token,.sl-piece-setting .sl-token{vertical-align:middle;width:40px;height:40px;font-size:20px}.sl-side{min-width:0;color:var(--chalk);flex-direction:column;align-items:center;gap:16px;display:flex}.sl-turn{font-family:var(--font-chalk);align-items:center;gap:8px;margin:0;font-size:26px;display:flex}.sl-status{text-align:center;min-height:1.4em}.sl-die{background:var(--chalk);cursor:pointer;border:none;border-radius:24px;grid-template:repeat(3,1fr)/repeat(3,1fr);gap:6px;width:150px;height:150px;padding:20px;display:grid;box-shadow:inset 0 -6px #00000026,0 6px 10px #0006}.sl-die:disabled{cursor:default}.sl-die .sl-pip{background:var(--board-ink);border-radius:50%}.sl-die.is-rolling{animation:.2s linear infinite sl-tumble}@keyframes sl-tumble{25%{transform:rotate(-12deg)translateY(-6px)}75%{transform:rotate(12deg)translateY(-6px)}}.sl-card-wrap{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.sl-card{aspect-ratio:1;background:var(--paper);width:100%;color:var(--ink);cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;padding:6%;display:flex;box-shadow:0 6px 10px #0006;container-type:size}.sl-card:disabled{cursor:default}.sl-card.is-revealed{background:var(--chalk-yellow);animation:.4s ease-out sl-flip}@keyframes sl-flip{0%{transform:perspective(600px)rotateY(90deg)}}.sl-card.is-empty{box-shadow:none;cursor:default;background:0 0;border:2px dashed #f3f0e459}.sl-card-number{color:var(--board-ink);font-family:var(--font-chalk);font-size:60cqmin;font-weight:700;line-height:1}.sl-card-text{max-width:100%;font-family:var(--font-board-text);text-align:center;white-space:pre-line;overflow-wrap:anywhere;font-weight:700;line-height:1.3}.has-cell-font .sl-card-text{font-family:var(--cell-font);font-weight:400}.sl-card-text.is-xl{font-size:28cqmin}.sl-card-text.is-large{font-size:16cqmin}.sl-card-text.is-medium{font-size:10cqmin}.sl-card-text.is-small{font-size:7cqmin}.sl-card-text.is-caption{flex-shrink:0;font-size:10cqmin}.sl-card-text rt{font-size:.42em;font-weight:500;line-height:1.2}[data-font=hans-pinyin] .sl-card-text,[data-font=hant-pinyin] .sl-card-text{line-height:1.8}[data-font=pinyin-only] .sl-card-text{overflow-wrap:normal}.sl-card .ttt-img-missing{font-size:8cqmin}.sl-places{font-family:var(--font-chalk);flex-direction:column;gap:6px;margin:0;padding:0;font-size:20px;list-style:none;display:flex}.sl-places li{align-items:center;gap:8px;display:flex}.sl-place{min-width:96px;color:var(--chalk-yellow);font-weight:700}.sl-piece-settings{flex-wrap:wrap;gap:12px 24px;display:flex}.sl-piece-setting{align-items:center;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){.sl-piece-body.is-hopping,.sl-die.is-rolling,.sl-card.is-revealed{animation:none}}.gallery{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex:1;min-width:0;max-width:1320px}.gallery.is-dragging{outline-color:var(--accent)}.gallery label.is-busy{opacity:.5;pointer-events:none}.gallery-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;width:100%;display:grid}.gallery-layout.is-managing{grid-template-columns:minmax(0,1fr) 320px}.gallery-hall{flex-direction:column;min-width:0;display:flex}.gallery-wall{background:repeating-linear-gradient(90deg, #00000012 0 2px, transparent 2px 9px) top / 100% 30px no-repeat, linear-gradient(to bottom, var(--wood-dark), var(--wood) 55%, var(--gallery-wood-deep)) top / 100% 30px no-repeat, linear-gradient(to bottom, #462d1459, transparent) 0 30px / 100% 16px no-repeat, radial-gradient(ellipse 75% 70% at 50% 40%, transparent 50%, #5a3c1e38), repeating-linear-gradient(90deg, var(--gallery-paper) 0 26px, var(--gallery-stripe) 26px 28px, var(--gallery-paper) 28px 34px, var(--gallery-stripe) 34px 36px, var(--gallery-paper) 36px 64px);border-radius:6px;flex-direction:column;height:clamp(480px,100vh - 220px,960px);display:flex;overflow:hidden;box-shadow:0 12px 24px #462d1438}.gallery-plaque{background:repeating-linear-gradient(175deg, #0000000d 0 3px, transparent 3px 11px), linear-gradient(to bottom, var(--gallery-sign-light), var(--gallery-sign));max-width:80%;color:var(--gallery-sign-ink);font:700 26px/1.4 var(--font-chalk);letter-spacing:.1em;text-align:center;text-shadow:0 1px #ffe6be80;overflow-wrap:anywhere;border-radius:10px;align-self:center;margin:46px 0 10px;padding:6px 32px 8px;position:relative;box-shadow:inset 0 2px #ffe6be80,inset 0 -3px #00000040,0 8px 14px #462d1459}.gallery-plaque:before{content:"";background:linear-gradient(to bottom right, transparent calc(50% - 1.5px), var(--gallery-string) 50%, transparent calc(50% + 1.5px)) left / 50% 100% no-repeat, linear-gradient(to bottom left, transparent calc(50% - 1.5px), var(--gallery-string) 50%, transparent calc(50% + 1.5px)) right / 50% 100% no-repeat;height:16px;position:absolute;bottom:100%;left:22%;right:22%}.gallery-hang{flex:1;min-height:0;padding:0 24px}.gallery-frames{flex-wrap:wrap;place-content:center;height:100%;margin:0;padding:0;list-style:none;display:flex}.gallery-frames.is-from-next{animation:.45s ease-out gallery-in-next}.gallery-frames.is-from-prev{animation:.45s ease-out gallery-in-prev}.gallery-cell{box-sizing:border-box;width:calc(100% / var(--cols));height:calc(100% / var(--rows));place-items:center;padding:12px 22px;display:grid;position:relative;container-type:size}.gallery-sconce{aspect-ratio:1/2;background:radial-gradient(ellipse 50% 50% at 50% 30%, var(--gallery-glow), transparent 70%);pointer-events:none;width:clamp(70px,34cqmin,160px);position:absolute;top:2%;left:0;translate:-50%}.gallery-sconce:before{content:"";aspect-ratio:46/32;background:linear-gradient(to bottom, var(--gallery-shade), var(--gallery-shade-warm));clip-path:polygon(22% 0,78% 0,100% 100%,0 100%);width:26%;position:absolute;top:18%;left:50%;translate:-50%}.gallery-sconce:after{content:"";background:linear-gradient(90deg, var(--gallery-gold), var(--gallery-gold-light), var(--gallery-gold));border-radius:1px 1px 3px 3px;width:7%;height:12%;position:absolute;top:27%;left:50%;translate:-50%;box-shadow:1px 3px 4px #462d1459}.gallery-frame{--wood:clamp(2px, 4.5cqmin, 18px);--fillet:clamp(1px, .8cqmin, 3px);--mat:clamp(2px, 5.5cqmin, 24px);--edge:calc(var(--wood) + var(--fillet) + var(--mat));box-sizing:border-box;width:min(100cqw, (100cqh - 2 * var(--edge)) * var(--ar) + 2 * var(--edge));padding:var(--wood);background:repeating-linear-gradient(90deg, #00000012 0 2px, transparent 2px 7px), linear-gradient(135deg, var(--gallery-frame-light), var(--gallery-frame) 45%, var(--gallery-frame-dark));box-shadow:inset 3px 3px 0 #ffdcaa59, inset -3px -3px 0 #00000073, inset 0 0 0 calc(var(--wood) / 2) #0000001f, 10px 18px 22px #462d1466, 2px 4px 6px #462d144d;cursor:zoom-in;border:0;border-radius:6px;margin:0;transition:transform .15s;display:block}.gallery-frame:hover{transform:translateY(-3px)}.gallery-frame:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.gallery-fillet{padding:var(--fillet);background:linear-gradient(135deg, var(--gallery-gold-light), var(--gallery-gold) 50%, var(--gallery-gold-light));border-radius:2px;display:block}.gallery-mat{padding:var(--mat);background:repeating-linear-gradient(0deg, #5a3c1e09 0 1px, transparent 1px 3px), repeating-linear-gradient(90deg, #5a3c1e09 0 1px, transparent 1px 3px), var(--gallery-mat);display:block;box-shadow:inset 3px 4px 8px #462d144d}.gallery-frame img{width:100%;aspect-ratio:var(--ar);object-fit:cover;-webkit-user-select:none;user-select:none;display:block;box-shadow:0 0 0 1px #462d1440,1px 2px 3px #462d144d}.gallery-frame.is-away img{visibility:hidden}.gallery-empty{height:100%;color:var(--ink-soft);font:24px var(--font-chalk);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.gallery-empty p{margin:0}.gallery-wainscot{background:linear-gradient(to bottom, var(--gallery-sign-light), var(--wood) 55%, var(--gallery-wood-deep)) top / 100% 10px no-repeat, linear-gradient(to bottom, #00000040, transparent) 0 10px / 100% 14px no-repeat, linear-gradient(to bottom, var(--wood), var(--gallery-wood-deepest)) bottom / 100% 8px no-repeat, repeating-linear-gradient(90deg, var(--gallery-beadboard) 0 30px, var(--board) 30px 32px, var(--gallery-beadboard-light) 32px 34px);flex-shrink:0;height:44px}.gallery-floor{background:linear-gradient(to bottom, var(--gallery-floor-far), var(--gallery-floor-near));flex-shrink:0;height:84px;position:relative}.gallery-floor svg{width:100%;height:100%;position:absolute;inset:0}.gallery-planks{stroke:var(--gallery-plank);stroke-width:1px;opacity:.45}.gallery-rope{fill:none;stroke:var(--gallery-rope);stroke-width:6px;stroke-linecap:round}.gallery-rope-shine{fill:none;stroke:var(--gallery-rope-light);stroke-width:1.5px;opacity:.7}.gallery-post{background:linear-gradient(90deg, var(--gallery-gold), var(--gallery-gold-light), var(--gallery-gold));width:6px;height:46px;position:absolute;top:9px;translate:-50%}.gallery-post:before{content:"";background:radial-gradient(circle at 40% 35%, var(--gallery-gold-light), var(--gallery-gold) 70%);border-radius:50%;width:14px;height:14px;position:absolute;top:-7px;left:50%;translate:-50%}.gallery-post:after{content:"";background:linear-gradient(90deg, var(--gallery-gold), var(--gallery-gold-light), var(--gallery-gold));border-radius:50%;width:30px;height:8px;position:absolute;bottom:-4px;left:50%;translate:-50%;box-shadow:0 3px 5px #2b1a0b66}.gallery-nav{align-items:center;margin-top:14px}.gallery-dots{flex-wrap:wrap;justify-content:center;gap:10px;max-width:420px;display:flex}.gallery-dot{border:2px solid var(--ink-soft);cursor:pointer;background:0 0;border-radius:50%;width:16px;height:16px;padding:0}.gallery-dot[aria-current]{border-color:var(--wood);background:var(--wood);outline:3px solid var(--gallery-gold-light);outline-offset:2px}.gallery-count{font:700 20px var(--font-chalk);color:var(--ink-soft)}.gallery-room-list{flex-direction:column;gap:4px;max-height:280px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.gallery-room-list li{border-radius:6px;align-items:center;gap:6px;padding:4px;display:flex}.gallery-room-list li.is-current{background:var(--paper-warm)}.gallery-room-go{border:1.5px solid var(--paper-border);background:var(--paper);width:30px;height:30px;color:var(--ink);font:700 14px var(--font-body);cursor:pointer;border-radius:50%;flex-shrink:0;padding:0}.gallery-room-go[aria-current=true]{border-color:var(--wood);background:var(--wood);color:var(--paper)}.gallery-room-name{border:1.5px solid var(--paper-border);background:var(--paper);min-width:0;color:var(--ink);font:16px var(--font-body);border-radius:6px;flex:1;padding:4px 8px}.gallery-room-tools{gap:4px;display:flex}.gallery-room-tools .quick-icon-btn{width:28px;height:28px;font-size:13px}.gallery-room-tools .quick-icon-btn:disabled{opacity:.4;cursor:not-allowed}.gallery-manage-sub{font:700 18px var(--font-chalk);color:var(--heading);margin:6px 0 0}.gallery-overlay{z-index:900;cursor:zoom-out;background-color:#140f08e0;outline:none;justify-content:center;align-items:center;padding-bottom:5vh;transition:background-color .35s;animation:.45s ease-out instant-dim;display:flex;position:fixed;inset:0}.gallery-overlay.is-closing{pointer-events:none;background-color:#0000}.gallery-big{width:min(84vw, 84vh * var(--ar));height:auto;aspect-ratio:var(--ar);object-fit:cover;-webkit-user-select:none;user-select:none;display:block;box-shadow:0 24px 60px #0000008c}.gallery-big.is-stepped{animation:.3s ease-out gallery-fade}.gallery-step{width:64px;height:64px;color:var(--chalk);cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;font-size:26px;position:absolute;top:50%;translate:0 -50%}.gallery-step:hover:not(:disabled){background:#ffffff40}.gallery-step:disabled{opacity:.25;cursor:default}.gallery-step.is-prev{left:2vw}.gallery-step.is-next{right:2vw}.gallery-overlay-hint{text-align:center;font:22px var(--font-chalk);color:var(--chalk-dim);margin:0;position:absolute;bottom:2.5vh;left:0;right:0}.is-closing .gallery-step,.is-closing .gallery-overlay-hint{visibility:hidden}@keyframes gallery-in-next{0%{opacity:0;transform:translate(8%)}}@keyframes gallery-in-prev{0%{opacity:0;transform:translate(-8%)}}@keyframes gallery-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.gallery-frames.is-from-next,.gallery-frames.is-from-prev,.gallery-big.is-stepped,.gallery-overlay{animation:none}.gallery-frame{transition:none}}.wheel{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex:1;min-width:0;min-height:0}.wheel.is-dragging{outline-color:var(--accent)}.wheel-body{flex:1;gap:28px;min-height:0;display:flex}.wheel-body>.board-wrap{flex:1;min-width:0}.board-wrap .wheel-board{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex;overflow:hidden}.wheel-machine{justify-content:center;align-items:center;gap:18px;width:100%;display:flex}.wheel-frame{aspect-ratio:1;flex-shrink:1;width:min(100% - 80px,66vh,620px);position:relative;container-type:inline-size}.wheel-disc{will-change:transform;border-radius:50%;position:absolute;inset:0;box-shadow:0 10px 24px #00000073}.wheel-disc svg{width:100%;height:100%;display:block}.wheel-rim{fill:var(--wheel-rim);stroke:var(--wheel-rim-dark);stroke-width:2px}.wheel-slice{stroke:var(--wheel-rim-dark);stroke-width:.6px;transition:opacity .3s}.has-result .wheel-slice:not(.is-picked),.has-result .wheel-label:not(.is-picked){opacity:.4}.wheel-peg{fill:var(--wheel-peg);stroke:var(--wheel-rim-dark);stroke-width:.6px}.wheel-empty-face{fill:var(--board);stroke:var(--chalk-dim);stroke-width:1px;stroke-dasharray:4 3}.wheel-label{box-sizing:border-box;transform-origin:0 0;width:45cqw;height:0;font-family:var(--font-chalk);color:var(--wheel-ink);white-space:nowrap;pointer-events:none;justify-content:flex-end;align-items:center;padding:0 5cqw 0 8cqw;font-weight:700;line-height:1.1;transition:opacity .3s;display:flex;position:absolute;top:50%;left:50%}.wheel-label>span{overflow:hidden}.wheel-hub{background:radial-gradient(circle at 35% 35%, #fff9, transparent 45%), var(--wheel-peg);border:.6cqw solid var(--wheel-rim-dark);border-radius:50%;width:11cqw;height:11cqw;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 2px 6px #0006}.wheel-pointer{z-index:1;transform-origin:50% 25%;background:var(--wheel-pointer);clip-path:polygon(0 0,100% 0,100% 35%,50% 100%,0 35%);filter:drop-shadow(0 2px 2px #00000080);width:8cqw;height:11cqw;position:absolute;top:-3cqw;left:50%;translate:-50%}.wheel-empty-hint{text-align:center;width:56%;color:var(--chalk-dim);margin:0;padding-top:16cqw;font-size:max(16px,3.6cqw);position:absolute;top:50%;left:50%;translate:-50% -50%}.wheel-lever{margin-left:0}.wheel-status{color:var(--chalk-dim);margin:0;font-size:20px}.wheel-result{z-index:2;text-align:center;background:color-mix(in srgb, var(--board) 72%, transparent);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;animation:.45s cubic-bezier(.34,1.56,.64,1) both draw-pop;display:flex;position:absolute;inset:0}.wheel-result-label{color:var(--chalk-dim);font-size:26px}.wheel-result-name{overflow-wrap:anywhere;max-width:100%;color:var(--chalk-yellow);text-shadow:0 0 2px #fff0b480,0 0 12px #f2d67540;font-size:clamp(64px,9vw,132px);font-weight:700;line-height:1.05}.wheel-result-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:18px;display:flex}.wheel-result-actions .btn-chalk{height:56px;padding:0 32px;font-size:22px}.wheel-list{flex-direction:column;flex-shrink:0;gap:10px;width:340px;padding:30px 18px 22px 46px;display:flex;position:relative;transform:rotate(.6deg)}.wheel-list .tape{width:120px;margin-left:-60px;top:-12px;left:50%;transform:rotate(-3deg)}.wheel-list-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.wheel-list-head h2{white-space:nowrap;font-family:var(--font-chalk);margin:0;font-size:24px;font-weight:700}.wheel-list-head .btn-tag,.wheel-list-file .btn-tag{white-space:nowrap;flex-shrink:0}.wheel-list-file{flex-wrap:wrap;gap:8px;display:flex}label.btn-tag.is-disabled{opacity:.5;cursor:not-allowed}.wheel-list-hint{color:var(--ink-soft);margin:0 0 4px;font-size:13px;line-height:1.6}.wheel-list ol{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.wheel-list li{border-bottom:1px solid var(--paper-rule);align-items:center;gap:8px;height:40px;padding:0 4px 0 8px;display:flex}.wheel-list li.is-picked{background:var(--marker-yellow)}.wheel-list-swatch{border:1px solid var(--wheel-rim-dark);border-radius:50%;flex-shrink:0;width:12px;height:12px}.wheel-list-name{min-width:0;height:32px;font-family:var(--font-chalk);color:var(--ink);background:0 0;border:1px solid #0000;border-radius:4px;flex:1;padding:0 6px;font-size:19px}.wheel-list-name:hover:not(:disabled),.wheel-list-name:focus{background:var(--paper);border-color:var(--paper-border);outline:none}.wheel-list-name:focus-visible{outline:2px solid var(--board);outline-offset:1px}.wheel-list-remove{width:30px;height:30px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;padding:0;font-size:20px;line-height:1}.wheel-list-remove:hover:not(:disabled){color:var(--pin-red);background:var(--paper-warm)}.wheel-list-remove:disabled{opacity:.4;cursor:not-allowed}.wheel-list-add{align-items:flex-end;gap:8px;display:flex}.wheel-list-add textarea{min-width:0;font-family:var(--font-body);color:var(--ink);background:var(--paper);border:1px solid var(--paper-border);resize:vertical;border-radius:6px;flex:1;padding:6px 8px;font-size:15px;line-height:1.5}.wheel-list-add .btn-tag{white-space:nowrap;flex-shrink:0}@media (prefers-reduced-motion:reduce){.wheel-result{animation:none}.wheel-slice,.wheel-label{transition:none}}.gacha{--gacha-red:#e2392f;--gacha-red-dark:#a8231c;--gacha-yellow:#f6c73b;--gacha-blue:#36a3e0;--gacha-glass:#3cc6f0;--gacha-shell:#fbf6ea;--gacha-gray:#b8bec6;--gacha-outline:#28140a73}.gacha-machine{aspect-ratio:100/128;flex-shrink:1;width:min(100%,52vh,460px);position:relative;container-type:inline-size}.gacha-cap,.gacha-head,.gacha-base,.gacha-ear,.gacha-foot{box-sizing:border-box;border:.8cqw solid var(--gacha-outline);position:absolute;box-shadow:inset 0 -1.6cqw #0000001f}.gacha-cap{background:var(--gacha-red);border-radius:3cqw 3cqw 0 0;height:8cqw;top:0;left:10cqw;right:10cqw}.gacha-head{background:linear-gradient(90deg, var(--gacha-yellow) 0 4cqw, var(--gacha-red) 4cqw calc(100% - 4cqw), var(--gacha-yellow) calc(100% - 4cqw));border-radius:2cqw;height:88cqw;padding:6cqw;top:6cqw;left:6cqw;right:6cqw}.gacha-ear{background:var(--gacha-red);border-radius:50%;width:8cqw;height:12cqw;top:40cqw}.gacha-ear.is-left{left:1cqw}.gacha-ear.is-right{right:1cqw}.gacha-window{aspect-ratio:1;background:linear-gradient(170deg, #8fe2fa, var(--gacha-glass) 60%, #2bb2e0);border:.8cqw solid var(--gacha-outline);border-radius:1cqw;width:100%;position:relative;overflow:hidden;container-type:size}.gacha-window:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(135deg,#0000 18%,#ffffff80 18% 23%,#0000 23% 27%,#ffffff59 27% 29%,#0000 29%),linear-gradient(135deg,#0000 70%,#ffffff4d 70% 73%,#0000 73%);position:absolute;inset:0}.gacha-empty-hint{text-align:center;color:#0d4a63;width:80%;margin:0;font-size:max(15px,6cqw);line-height:1.5;position:absolute;top:50%;left:50%;translate:-50% -50%}.gacha-ball{aspect-ratio:1;transition:left .35s ease-out,top .35s ease-out;position:absolute;translate:-50% -50%}.gacha-ball.is-hopping{animation-name:gacha-hop;animation-timing-function:linear;animation-iteration-count:3;animation-fill-mode:both}.gacha-shell{background:radial-gradient(circle at 32% 28%, #ffffffbf, transparent 22%), linear-gradient(180deg, var(--color) 0 47%, #00000040 47% 53%, var(--gacha-shell) 53%);box-shadow:inset -.12em -.12em .3em #0003, 0 0 0 1px var(--gacha-outline);border-radius:50%;font-size:min(1cqw,6px);position:absolute;inset:0}@keyframes gacha-hop{0%{animation-timing-function:cubic-bezier(.3,.7,.6,1);transform:translate(0)rotate(0)}50%{transform:translate(calc(var(--side) / 2), calc(-1 * var(--up))) rotate(calc(var(--spin) / 2));animation-timing-function:cubic-bezier(.4,0,.7,.3)}to{transform:translate(0, 0) rotate(var(--spin))}}.gacha-base{background:var(--gacha-red);border-radius:2cqw;height:30cqw;top:92cqw;left:2cqw;right:2cqw}.gacha-stick{background:var(--gacha-yellow);width:1.8cqw;height:6cqw;box-shadow:0 -1.2cqw 0 .4cqw var(--gacha-yellow);border-radius:1cqw;position:absolute;top:-3.6cqw;left:26cqw}.gacha-dots{gap:1.6cqw;display:flex;position:absolute;top:3cqw;left:27cqw}.gacha-dots i{background:var(--gacha-yellow);border-radius:50%;width:2.6cqw;height:2.6cqw}.gacha-chute{box-sizing:border-box;background:var(--gacha-gray);border:.6cqw solid var(--gacha-outline);border-radius:1cqw;width:18cqw;height:21cqw;padding:1.6cqw;position:absolute;bottom:3cqw;left:5cqw}.gacha-hole{background:linear-gradient(#4a5058,#7d848c);border-radius:.6cqw;width:100%;height:100%;position:relative;overflow:hidden;container-type:inline-size}.gacha-drop{aspect-ratio:1;width:78%;animation:.7s both gacha-drop;position:absolute;bottom:4%;left:50%;translate:-50%}.gacha-drop.is-still{animation:none}@keyframes gacha-drop{0%{animation-timing-function:cubic-bezier(.5,0,1,.6);transform:translateY(-160%)rotate(-90deg)}45%{animation-timing-function:cubic-bezier(0,.4,.5,1);transform:translateY(0)rotate(0)}65%{animation-timing-function:cubic-bezier(.5,0,1,.6);transform:translateY(-22%)rotate(15deg)}80%{transform:translateY(0)rotate(20deg)}90%{transform:translateY(-6%)rotate(22deg)}to{transform:translateY(0)rotate(24deg)}}.gacha-coin{box-sizing:border-box;border:.6cqw solid var(--gacha-outline);background:radial-gradient(circle at 35% 30%,#ffffff80,#0000 40%),#f3a5bf;border-radius:50%;width:13cqw;height:13cqw;position:absolute;top:4cqw;left:50cqw}.gacha-coin:after{content:"";background:#b9566f;border-radius:1cqw;width:6cqw;height:1.6cqw;position:absolute;top:50%;left:50%;translate:-50% -50%;rotate:-40deg}.gacha-hearts{letter-spacing:.4cqw;color:#2bb2e0;background:var(--gacha-yellow);border:.5cqw solid var(--gacha-outline);border-radius:1cqw;padding:.6cqw 2cqw;font-size:3.6cqw;line-height:1;position:absolute;bottom:3cqw;left:32cqw}.gacha-knob{cursor:pointer;background:0 0;border:none;border-radius:50%;width:24cqw;height:24cqw;padding:0;position:absolute;top:2.5cqw;right:5cqw}.gacha-knob:disabled{cursor:default}.gacha-knob:focus-visible{outline:4px solid var(--chalk-yellow);outline-offset:3px}.gacha-knob.is-ready:before{content:"";border:1cqw solid var(--chalk-yellow);pointer-events:none;border-radius:50%;animation:1.8s ease-out infinite gacha-ready;position:absolute;inset:0}.gacha-knob-face{box-sizing:border-box;background:radial-gradient(circle at 35% 30%, #ffffff73, transparent 45%), var(--gacha-blue);box-shadow:0 0 0 .6cqw var(--gacha-outline), 0 1cqw 1.6cqw #00000059;border:1.8cqw solid #fff;border-radius:50%;transition:scale .15s;position:absolute;inset:0}.gacha-knob-face:after{content:"";background:linear-gradient(#fff,#dfe8ee);border-radius:2cqw;height:26%;position:absolute;top:50%;left:8%;right:8%;translate:0 -50%;rotate:-45deg;box-shadow:0 .4cqw #0003}.gacha-knob:hover:not(:disabled) .gacha-knob-face{scale:1.05}.gacha-knob:disabled .gacha-knob-face{filter:saturate(.6)}.gacha-knob-face.is-turning{animation:.9s ease-in-out gacha-turn}@keyframes gacha-turn{to{transform:rotate(360deg)}}@keyframes gacha-ready{0%{opacity:.9;scale:1}to{opacity:0;scale:1.35}}.gacha-foot{background:var(--gacha-blue);border-radius:0 0 2cqw 2cqw;width:14cqw;height:8cqw;bottom:0}.gacha-foot.is-left{left:8cqw}.gacha-foot.is-right{right:8cqw}.gacha-result{animation:.3s both gacha-fade}@keyframes gacha-fade{0%{opacity:0}}.gacha-prize{aspect-ratio:1;background:radial-gradient(circle at 30% 22%, #ffffffb3, transparent 18%), linear-gradient(180deg, var(--color) 0 50%, var(--gacha-shell) 50%);border-radius:50%;justify-content:center;align-items:center;width:min(48vh,70%,440px);display:flex;position:relative;box-shadow:inset -2cqw -3cqw 6cqw #00000038,0 0 0 .8cqw #28140a80,0 3cqw 6cqw #00000073;container-type:inline-size}.gacha-prize-band{box-sizing:border-box;clip-path:circle(50cqw);background:#fffdf6;border-block:1.2cqw solid #28140a59;justify-content:center;align-items:center;width:100%;min-height:34cqw;padding:2cqw 9cqw;display:flex;box-shadow:0 1cqw 2cqw #00000026}.gacha-prize-name{max-width:100%;font-family:var(--font-chalk);white-space:nowrap;text-align:center;color:#2b2118;font-size:15cqw;font-weight:700;line-height:1.15;animation:.35s .6s both gacha-name;display:block;overflow:hidden}@keyframes gacha-name{0%{opacity:0;scale:.6}}@media (prefers-reduced-motion:reduce){.gacha-ball{transition:none}.gacha-knob.is-ready:before,.gacha-result,.gacha-prize-name{animation:none}}.claw{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex:1;min-width:0;max-width:1320px;container:claw-page/inline-size}.claw.is-dragging{outline-color:var(--accent)}.claw label.is-busy{opacity:.5;pointer-events:none}.board-wrap .claw-board{align-items:stretch;gap:14px}.claw-status{font-family:var(--font-chalk)}.claw-scene{align-items:flex-start;gap:20px;display:flex}.claw-machine{background:linear-gradient(180deg, var(--claw-body), var(--claw-body-dark));transform-origin:50% 100%;border-radius:26px 26px 14px 14px;flex:0 0 66%;min-width:0;padding:12px 14px 16px;box-shadow:0 10px 18px #0006,inset 0 2px #ffffff59;container:claw-machine/inline-size}.claw-marquee{background:var(--claw-sign);color:var(--claw-body-dark);font:700 24px var(--font-chalk);letter-spacing:.2em;border-radius:14px;justify-content:center;align-items:center;gap:14px;margin-bottom:8px;padding:2px 0;display:flex}.claw-bulbs{background:radial-gradient(circle, var(--slot-bulb) 0 4px, transparent 5px) 0 0 / 14px 12px repeat-x;width:70px;height:12px;animation:1.2s steps(2,end) infinite claw-bulbs}.claw-glass{aspect-ratio:16/10;border:6px solid var(--claw-body-dark);background:var(--claw-wall);-webkit-user-select:none;user-select:none;isolation:isolate;border-radius:10px;position:relative;overflow:hidden}.claw-box,.claw-chute-walls{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.claw-chute-walls{z-index:580}.claw-wall-back{fill:var(--claw-wall)}.claw-wall-side{fill:var(--claw-wall-side)}.claw-floor{fill:var(--claw-floor)}.claw-chute{fill:var(--claw-chute)}.claw-side-rail{stroke:var(--claw-metal-dark);stroke-width:4px;vector-effect:non-scaling-stroke}.claw-acrylic{fill:#ffffff4d;stroke:#ffffffd9;stroke-width:1.5px;vector-effect:non-scaling-stroke}.claw-rail{z-index:5;background:linear-gradient(180deg, var(--claw-metal), var(--claw-metal-dark));border-radius:4px;height:2.4%;position:absolute;translate:0 -50%}.claw-doll{aspect-ratio:1;transform-origin:50% 100%;pointer-events:none;transition:left .8s cubic-bezier(.34,1.4,.64,1),top .8s cubic-bezier(.34,1.4,.64,1),rotate .8s ease-out;position:absolute;translate:-50% -100%}.claw-doll:after{content:"";z-index:-1;background:radial-gradient(closest-side,#0000004d,#0000);border-radius:50%;height:12%;position:absolute;bottom:-5%;left:12%;right:12%}.claw-doll img{object-fit:contain;object-position:50% 100%;transform-origin:50% 100%;filter:drop-shadow(0 2px 2px #0000004d);width:100%;height:100%;display:block}.claw-doll.is-held{transition:none}.claw-doll.is-held:after{display:none}.claw-doll.is-held img{transform-origin:50% 0;animation:1.4s ease-in-out infinite alternate claw-sway}.claw-doll.is-falling{animation:.6s ease-in forwards claw-fall}.claw-target{z-index:3000;aspect-ratio:3;pointer-events:none;background:#ffffff2e;border:2px dashed #fffffff2;border-radius:50%;position:absolute;translate:-50% -50%;box-shadow:0 0 0 1px #00000040}.claw-cable{background:linear-gradient(90deg, var(--claw-metal-dark), var(--claw-metal), var(--claw-metal-dark));width:.7%;min-width:2px;position:absolute;translate:-50%}.claw-head{aspect-ratio:100/110;pointer-events:none;position:absolute;translate:-50%}.claw-head-svg{filter:drop-shadow(0 2px 2px #0000004d);width:100%;height:100%;display:block;overflow:visible}.claw-prong{fill:none;stroke:var(--claw-metal);stroke-width:8px;stroke-linecap:round;stroke-linejoin:round}.claw-prong.is-back{stroke:var(--claw-metal-dark)}.claw-hub{fill:var(--claw-hub)}.claw-hub-shine{fill:#ffffff73}.claw-bolt{fill:var(--claw-metal-dark)}.claw-glare{z-index:4000;pointer-events:none;background:linear-gradient(115deg,#ffffff38 0 10%,#0000 10% 26%,#ffffff1a 26% 30%,#0000 30%);position:absolute;inset:0}.claw-panel{background:#0000002e;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:8px;padding:8px 14px;display:grid}.claw-door{border:4px solid var(--claw-body-dark);background:linear-gradient(180deg, var(--claw-chute), #1c1418);width:96px;height:64px;color:var(--chalk-dim);font:16px var(--font-chalk);border-radius:10px;justify-content:center;align-items:flex-end;padding-bottom:6px;display:flex;box-shadow:inset 0 8px 12px #0009}.claw-pad{grid-template-areas:".up.""left.right"".down.";justify-self:center;gap:4px;display:grid}.claw-move{background:var(--claw-button);width:56px;height:34px;box-shadow:0 4px 0 var(--claw-button-shadow);color:var(--ink);font:700 17px/1.1 var(--font-chalk);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border:0;border-radius:10px;justify-content:center;align-items:center;gap:4px;display:flex}.claw-move span{font-size:14px}.claw-move:active:not(:disabled){box-shadow:0 1px 0 var(--claw-button-shadow);translate:0 3px}.claw-move:disabled,.claw-shake:disabled,.claw-go:disabled{opacity:.5;cursor:not-allowed}.claw-move.is-up{grid-area:up}.claw-move.is-left{grid-area:left}.claw-move.is-right{grid-area:right}.claw-move.is-down{grid-area:down}.claw-actions{align-items:center;gap:12px;display:flex}.claw-shake{background:var(--claw-sign);height:34px;box-shadow:0 3px 0 var(--claw-body-dark);color:var(--claw-body-dark);font:700 19px var(--font-chalk);white-space:nowrap;cursor:pointer;border:0;border-radius:999px;padding:0 18px}.claw-shake:active:not(:disabled){box-shadow:0 1px 0 var(--claw-body-dark);translate:0 2px}.claw-go{background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--claw-go) 60%, white), var(--claw-go));width:66px;height:66px;box-shadow:0 6px 0 var(--claw-go-shadow);color:#fff;font:700 28px var(--font-chalk);cursor:pointer;border:4px solid #ffffffb3;border-radius:50%}.claw-go:active:not(:disabled){box-shadow:0 2px 0 var(--claw-go-shadow);translate:0 4px}.claw-shelf{flex:1;min-width:0}.claw-shelf-heading{font:20px var(--font-chalk);color:var(--chalk);margin:4px 0 10px}.claw-shelf-list{flex-wrap:wrap;align-content:flex-start;gap:10px;max-height:620px;margin:0;padding:4px;list-style:none;display:flex;overflow:auto}.claw-prize{border:2px dashed var(--chalk-dim);cursor:pointer;background:#ffffff0f;border-radius:14px;width:72px;height:72px;padding:4px;transition:box-shadow .15s;display:block}.claw-prize:hover{box-shadow:0 0 0 3px var(--chalk-yellow)}.claw-prize img{object-fit:contain;width:100%;height:100%;display:block}.claw-prize.is-away{visibility:hidden}.claw-shelf-empty{text-align:center;width:100%;color:var(--chalk-dim);padding-top:60px;font-size:18px}.claw-overlay{z-index:900;cursor:pointer;background-color:#140f08d1;outline:none;justify-content:center;align-items:center;padding-bottom:5vh;transition:background-color .5s;animation:.5s ease-out instant-dim;display:flex;position:fixed;inset:0}.claw-overlay.is-landing{pointer-events:none;background-color:#0000}.claw-big{width:min(80vw, 72vh * var(--ar));aspect-ratio:var(--ar);background:radial-gradient(closest-side,#ffecaa73,#0000);border-radius:50%}.claw-big img{object-fit:contain;filter:drop-shadow(0 18px 30px #00000080);width:100%;height:100%;display:block}.claw-overlay-hint{text-align:center;font:22px var(--font-chalk);color:var(--chalk-dim);margin:0;position:absolute;bottom:2.5vh;left:0;right:0}.is-landing .claw-overlay-hint{visibility:hidden}@container claw-machine (max-width:600px){.claw-panel{grid-template-columns:auto 1fr}.claw-actions{grid-column:1/-1;justify-content:center}}@container claw-page (max-width:1100px){.claw-layout.is-managing{grid-template-columns:minmax(0,1fr)}}@keyframes claw-bulbs{to{background-position-x:7px}}@keyframes claw-sway{0%{rotate:-5deg}to{rotate:5deg}}@keyframes claw-fall{to{opacity:0;translate:-50% 10%;scale:.85}}@media (prefers-reduced-motion:reduce){.claw-doll,.claw-prize{transition:none}.claw-bulbs,.claw-doll.is-held img,.claw-overlay{animation:none}.claw-overlay{transition:none}.claw-doll.is-falling{opacity:0;animation:none}}.bricks{outline-offset:4px;border-radius:12px;outline:3px dashed #0000;flex:1;min-width:0;min-height:0}.bricks.is-dragging{outline-color:var(--accent)}.bricks-body{flex:1;gap:28px;min-height:0;display:flex}.bricks-body>.board-wrap{flex:1;min-width:0}.board-wrap .bricks-board{align-items:stretch;gap:12px;padding:16px 20px 18px}.bricks-toolbar{align-items:center}.bricks-status{font-family:var(--font-chalk);font-size:22px}.bricks-status.is-won{font-size:24px}.bricks-score{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.bricks-plan{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.bricks-plan li{border:1.5px solid var(--chalk-dim);color:var(--chalk);border-radius:999px;padding:2px 10px;font-size:16px}.bricks-plan li.is-done{border-color:var(--chalk-yellow);background:var(--chalk-yellow);color:var(--board-ink)}.bricks-count{color:var(--chalk-yellow);white-space:nowrap;font-size:20px}.bricks-count.is-bonus{color:var(--brick-bonus-light)}.bricks-restart{height:44px;font-size:18px}.bricks-stage{aspect-ratio:1000/440;align-self:center;width:min(100%,227.273vh - 818.182px);min-width:560px;position:relative;container-type:inline-size}.bricks-scene{background:var(--brick-sky);border:4px solid #1b2a20;border-radius:6px;position:absolute;inset:0;overflow:hidden}.bricks-cloud{width:13.2%;fill:var(--brick-cloud);position:absolute}.bricks-cloud .is-shade{fill:var(--brick-cloud-shade)}.bricks-cloud.is-a{width:9.6%;top:10%;left:30%}.bricks-cloud.is-b{top:6%;left:55%}.bricks-cloud.is-c{width:11%;top:20%;left:80%}.bricks-hills{width:100%;height:29.5%;fill:var(--brick-hill);position:absolute;bottom:16.3636%;left:0}.bricks-hills .is-far{fill:var(--brick-hill-far)}.bricks-ground{background-color:var(--brick-dirt);background-image:linear-gradient(var(--brick-grass) 0 1.4cqw, var(--brick-grass-dark) 1.4cqw 2cqw, transparent 2cqw), repeating-linear-gradient(90deg, transparent 0 4.6cqw, var(--brick-dirt-line) 4.6cqw 4.8cqw), repeating-linear-gradient(0deg, transparent 0 2.4cqw, var(--brick-dirt-line) 2.4cqw 2.6cqw);height:16.3636%;position:absolute;bottom:0;left:0;right:0}.brick-block{box-sizing:border-box;border:.4cqw solid var(--brick-block-edge);background:var(--brick-block);box-shadow:inset -.6cqw -.6cqw 0 var(--brick-block-dark), inset .6cqw .6cqw 0 var(--brick-block-light);font-family:var(--font-pixel), ui-monospace, monospace;color:var(--brick-block-mark);text-shadow:.4cqw .4cqw 0 var(--brick-block-edge);justify-content:center;align-items:center;font-size:2.6cqw;font-weight:700;line-height:1;display:flex;position:absolute}.brick-block.is-bonus{border-color:var(--brick-bonus-edge);background:var(--brick-bonus);box-shadow:inset -.6cqw -.6cqw 0 var(--brick-bonus-dark), inset .6cqw .6cqw 0 var(--brick-bonus-light)}.brick-block.is-used{border-color:var(--brick-block-edge);background:var(--brick-used);box-shadow:inset -.6cqw -.6cqw 0 var(--brick-used-dark), inset .6cqw .6cqw 0 var(--brick-used-light)}.brick-star{width:50%;height:50%;fill:var(--brick-star)}.brick-block.is-mini{width:48px;height:48px;box-shadow:inset -4px -4px 0 var(--brick-block-dark), inset 4px 4px 0 var(--brick-block-light);text-shadow:3px 3px 0 var(--brick-block-edge);border-width:4px;font-size:18px;position:static}.brick-block.is-mini.is-bonus{box-shadow:inset -4px -4px 0 var(--brick-bonus-dark), inset 4px 4px 0 var(--brick-bonus-light)}.brick-lock{font-family:var(--font-chalk);white-space:nowrap;color:#fff;background:#1c2f66d9;border-radius:.6cqw;align-items:center;gap:.4cqw;padding:.2cqw .8cqw;font-size:1.5cqw;display:inline-flex;position:absolute;translate:-50%}.brick-lock svg{width:1.4cqw;height:1.4cqw}.brick-hero{transition:width .4s steps(4,end),height .4s steps(4,end);position:absolute}.brick-hero svg{display:block;position:absolute;overflow:visible}.brick-hero-body{width:100%;height:100%;inset:0}.brick-hero[data-facing="-1"] .brick-hero-body{scale:-1 1}.brick-wing{transform-origin:100%;width:41.6667%;height:35.7143%;top:42%}.brick-wing.is-left{left:-33.3333%}.brick-wing.is-right{transform-origin:50%;left:91.6667%;scale:-1 1}@keyframes brick-flap{50%{translate:0 -14%;rotate:-30deg}}.brick-halo{width:66.6667%;height:21.4286%;fill:var(--brick-halo);filter:drop-shadow(0 0 .5cqw #fff3a0e6);top:-12%;left:16.6667%}.brick-levelup{border:.5cqw dashed var(--brick-star);opacity:0;pointer-events:none;border-radius:50%;animation:.8s ease-out brick-levelup;position:absolute;inset:-20%}@keyframes brick-levelup{0%{opacity:1;scale:.4}to{opacity:0;scale:1.6}}.brick-bubble{z-index:2;box-sizing:border-box;border:3px solid var(--ink);background:var(--paper);width:32cqw;box-shadow:0 5px 0 var(--ink);text-align:left;font-family:var(--font-chalk);color:var(--ink);cursor:pointer;border-radius:10px;flex-direction:column;gap:.6cqw;padding:1.2cqw 1.6cqw;animation:.25s ease-out brick-pop;display:flex;position:absolute}.brick-bubble:hover{background:var(--paper-warm)}.brick-bubble:focus-visible{outline:4px solid var(--chalk-yellow);outline-offset:3px}@keyframes brick-pop{0%{opacity:0;scale:.4}}.brick-bubble-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.brick-chip{background:var(--brick-block-dark);font-family:var(--font-pixel), ui-monospace, monospace;color:var(--paper);border-radius:4px;padding:.5cqw .8cqw;font-size:1.1cqw}.brick-bubble-hint{color:var(--ink-soft);align-items:center;gap:4px;font-size:max(14px,1.5cqw);display:inline-flex}.brick-bubble-text{font-family:var(--font-board-text);font-size:max(18px,2.3cqw);font-weight:700;line-height:1.4}.bricks-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.brick-ctl{border:3px solid var(--ink);background:var(--paper);min-height:60px;box-shadow:0 5px 0 var(--ink);font-family:var(--font-chalk);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:10px;align-items:center;gap:10px;padding:0 26px;font-size:24px;font-weight:700;display:inline-flex}.brick-ctl:active:not(:disabled){box-shadow:none;translate:0 5px}.brick-ctl.is-jump{background:var(--chalk-yellow);justify-content:center;min-width:140px}.brick-ctl:disabled{opacity:.45;cursor:not-allowed}.bricks-keys{color:var(--chalk-dim);margin-left:8px;font-size:16px}.brick-question{z-index:5;border:4px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:8px;flex-direction:column;gap:24px;padding:28px 44px;animation:.25s ease-out brick-zoom;display:flex;position:absolute;inset:0;overflow:auto}@keyframes brick-zoom{0%{opacity:0;scale:.6}}.brick-question-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.brick-question-label{font-family:var(--font-chalk);color:var(--ink-soft);align-items:center;gap:12px;font-size:26px;font-weight:700;display:inline-flex}.brick-question-tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.brick-question-text{text-align:center;font-family:var(--font-board-text);margin:0;font-size:clamp(32px,4.4vw,60px);font-weight:700;line-height:1.5}.brick-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;max-width:960px;margin:0 auto;display:grid}.brick-option{border:3px solid var(--ink);min-height:96px;box-shadow:0 5px 0 var(--ink);text-align:left;font-family:var(--font-board-text);color:var(--ink);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:18px;padding:8px 28px;font-size:clamp(26px,3vw,40px);font-weight:700;line-height:1.4;display:flex}.brick-option:hover:not([aria-disabled]){background:var(--paper-warm)}.brick-option:focus-visible{outline:4px solid var(--pin-blue);outline-offset:3px}.brick-option[aria-disabled]{cursor:default}.brick-option[data-state=right]{border:4px solid var(--brick-right);background:var(--brick-right-bg);box-shadow:0 5px 0 var(--brick-right)}.brick-option[data-state=wrong]{border:4px solid var(--brick-wrong);background:var(--brick-wrong-bg);box-shadow:0 5px 0 var(--brick-wrong)}.brick-option-key{font-family:var(--font-pixel), ui-monospace, monospace;color:var(--ink-soft);flex-shrink:0;font-size:18px}.brick-feedback{justify-content:center;display:flex}.brick-feedback-box{font-family:var(--font-chalk);border:3px solid;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;padding:14px 24px;font-size:30px;font-weight:700;display:flex}.brick-feedback-box.is-right{border-color:var(--brick-right);color:#22602a;background:#e3f4df}.brick-feedback-box.is-wrong{border-color:var(--brick-wrong);color:#8a4310;background:#fdeee0}.brick-feedback-hint{color:var(--ink-soft);margin:0;font-size:18px}.bricks-panel{flex-direction:column;flex-shrink:0;gap:10px;width:340px;padding:30px 18px 22px 46px;display:flex;position:relative;transform:rotate(.6deg)}.bricks-panel .tape{width:120px;margin-left:-60px;top:-12px;left:50%;transform:rotate(-3deg)}.bricks-panel h2{font-family:var(--font-chalk);margin:0;font-size:22px;font-weight:700}.bricks-panel-file{flex-wrap:wrap;gap:8px;display:flex}.bricks-panel-hint{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.6}.bricks-panel-hint.is-warn{color:#8a4310}.bricks-panel-count{align-self:flex-start}.bricks-panel-list{flex:1;min-height:0;max-height:60vh;margin:0;padding:0 0 0 20px;overflow-y:auto}.bricks-panel-list li{border-bottom:1px dashed var(--paper-border);padding:6px 0}.bricks-panel-q{font-size:16px;font-weight:700;line-height:1.5;display:block}.bricks-panel-star{font-family:var(--font-body);color:var(--brick-bonus-dark);margin-right:6px;font-size:12px;font-weight:700}.bricks-panel-a{color:var(--ink-soft);font-size:14px;display:block}@media (prefers-reduced-motion:reduce){.brick-hero{transition:none}.brick-hero.is-airborne .brick-wing,.brick-levelup,.brick-bubble,.brick-question{animation:none}}.brick-hero-pose{transform-origin:50% 100%;position:absolute;inset:0}.brick-hero-body{display:none}.brick-hero[data-pose=stand] .brick-hero-body.is-stand,.brick-hero[data-pose=step] .brick-hero-body.is-step,.brick-hero[data-pose=air] .brick-hero-body.is-air{display:block}.brick-hero.is-airborne .brick-wing{animation:.3s ease-in-out infinite brick-flap}.brick-dust{opacity:0;pointer-events:none;fill:#ffffffd9;width:7%;height:2%;position:absolute;translate:-50%}.brick-dust svg{width:100%;height:100%;display:block}.bricks-panel-item{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:column;gap:2px;padding:4px 6px;display:flex}.bricks-panel-item:hover{background:var(--paper-warm)}.bricks-panel-empty{color:var(--ink-soft);font-weight:400}.bricks-panel-lack{color:#8a4310;margin:0;font-size:13px}.bricks-panel-list li.is-editing{padding:8px 0 12px}.bricks-add{align-self:flex-start}.bricks-edit{flex-direction:column;gap:10px;display:flex}.bricks-edit-field{flex-direction:column;gap:4px;font-size:14px;font-weight:700;display:flex}.bricks-edit textarea,.bricks-edit input[type=text]{box-sizing:border-box;border:1.5px solid var(--paper-border);width:100%;font:16px var(--font-board-text);color:var(--ink);background:#fff;border-radius:6px;padding:6px 8px}.bricks-edit textarea{resize:vertical}.bricks-edit-options{border:0;flex-direction:column;gap:6px;margin:0;padding:0;display:flex}.bricks-edit-options legend{margin-bottom:4px;padding:0;font-size:14px;font-weight:700}.bricks-edit-options>.btn-tag{align-self:flex-start}.bricks-edit-option{align-items:center;gap:6px;display:flex}.bricks-edit-option input[type=radio]{width:18px;height:18px;accent-color:var(--brick-right);flex-shrink:0;margin:0}.bricks-edit-option.is-answer input[type=text]{border-color:var(--brick-right);background:#eef8ec}.bricks-edit-key{width:14px;font-family:var(--font-pixel), ui-monospace, monospace;color:var(--ink-soft);flex-shrink:0;font-size:11px}.bricks-edit-remove{width:28px;height:28px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;font-size:20px}.bricks-edit-remove:hover{background:var(--paper-warm);color:var(--danger)}.bricks-edit-bonus{cursor:pointer;align-items:flex-start;gap:6px;font-size:14px;display:flex}.bricks-edit-bonus input{accent-color:var(--brick-bonus-dark);margin-top:3px}.bricks-edit-actions{justify-content:space-between;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){.brick-hero.is-airborne .brick-wing{animation:none}}.sb-board{flex:1;justify-content:center;container-type:inline-size}.sb-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);align-items:stretch;gap:24px;width:100%;display:grid}.sb-answer{flex-direction:column;gap:10px;min-width:0;display:flex}.sb-answer-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.sb-answer-title{font-family:var(--font-chalk);color:var(--chalk-yellow);font-size:24px;font-weight:700}.sb-zoom-btn{align-items:center;gap:6px;display:inline-flex}.sb-slide{width:100%;min-height:260px;font:inherit;color:var(--chalk);cursor:zoom-in;background:#ffffff0a;border:2px dashed #f3f0e459;border-radius:14px;flex:1;justify-content:center;align-items:center;padding:4%;display:flex;container-type:size}button.sb-slide:hover{border-color:var(--chalk-dim);background:#ffffff14}button.sb-slide:focus-visible{outline:3px solid var(--chalk-yellow);outline-offset:3px}.sb-slide.is-empty{cursor:default}.sb-slide .ttt-content,.sb-zoom-slide .ttt-content{animation:.25s ease-out cd-slide-in}.sb-nav{align-items:center}.sb-play{flex-direction:column;align-items:center;gap:10px;min-width:0;display:flex}.sb-status{text-align:center;min-height:1.4em}.sb-status.is-won{font-size:28px}.sb-scene{aspect-ratio:4/3;border:3px solid #f3f0e480;border-radius:12px;width:min(100%,max(320px,133.333vh - 440px));position:relative;overflow:hidden;container-type:inline-size}.sb-scene-svg{width:100%;height:100%;display:block}.sb-climber{transition:transform .55s cubic-bezier(.45,0,.3,1.25)}.sb-climber.is-falling{transition:transform .38s cubic-bezier(.5,0,1,.6)}.sb-climber-art{transform-box:fill-box;transform-origin:50% 100%}.sb-climber-art.is-scared{animation:.11s linear infinite alternate sb-shiver}.sb-climber.is-stepping .sb-climber-art:not(.is-scared){animation:.55s ease-out sb-squash}@keyframes sb-shiver{0%{transform:translate(-2px)rotate(-1.5deg)}to{transform:translate(2px)rotate(1.5deg)}}@keyframes sb-squash{60%{transform:scale(1.08,.9)}}.sb-shark{transition:transform .36s cubic-bezier(.2,.9,.3,1.2)}.sb-shark:not(.is-up){transition:transform .6s ease-in}.sb-shark>g{transform-box:fill-box;transform-origin:50% 100%}.sb-shark.is-chomping>g{animation:.14s ease-in-out 4 alternate sb-chomp}@keyframes sb-chomp{0%{transform:rotate(-4deg)scale(1.03)}to{transform:rotate(4deg)scale(.98)}}.sb-fin-swim{animation:6s ease-in-out infinite alternate sb-swim}.sb-fin.team-1 .sb-fin-swim{animation-delay:-3s}@keyframes sb-swim{0%{transform:translate(0)}49.9%{transform:translate(110px)scaleX(1)}50%{transform:translate(110px)scaleX(-1)}to{transform:translate(0)scaleX(-1)}}.sb-wave{animation:5s ease-in-out infinite alternate sb-drift}.sb-wave.is-front{animation-duration:4s;animation-direction:alternate-reverse}@keyframes sb-drift{to{transform:translate(40px)}}.sb-drop{fill:#e8f6fb;stroke:#3e97c2;stroke-width:2px;animation:.8s ease-out forwards sb-splash}@keyframes sb-splash{0%{opacity:1;transform:translate(0)}60%{transform:translate(var(--dx), -90px);opacity:1}to{transform:translate(calc(var(--dx) * 1.4), -40px);opacity:0}}.sb-team{flex-direction:column;align-items:center;gap:4px;width:24%;display:flex;position:absolute;top:34%}.sb-team.team-0{left:2%}.sb-team.team-1{right:2%}.sb-name{width:100%;color:var(--team-color);cursor:text;background:#23392bd1;border-radius:8px;padding:2px 4px;font-size:clamp(16px,3.2cqi,26px)}.sb-name:hover{background:#23392beb}.sb-name[data-font^=bpmf],.sb-name[data-font=zhuyin-only]{font-weight:400}.sb-name[data-font=hans-pinyin],.sb-name[data-font=hant-pinyin]{line-height:2}.sb-hand{aspect-ratio:1;border:4px solid var(--team-color);background:#23392bd1;border-radius:50%;justify-content:center;align-items:center;width:72%;display:flex}.sb-team.is-winner .sb-hand{box-shadow:0 0 0 5px color-mix(in srgb, var(--team-color) 40%, transparent), 0 0 24px var(--team-color)}.sb-hand-emoji{font-size:clamp(34px,7.5cqi,72px);line-height:1;display:block}.sb-team.team-1 .sb-hand-emoji:not(.is-none){scale:-1 1}.sb-hand-emoji.is-shuffling{animation:.18s ease-in-out infinite alternate rps-shake}.sb-hand-emoji.is-landed{animation:.45s cubic-bezier(.34,1.56,.64,1) pop}.sb-left{font-family:var(--font-chalk);color:var(--chalk);text-align:center;overflow-wrap:anywhere;background:#23392bd1;border-radius:999px;max-width:100%;margin:0;padding:1px 8px;font-size:clamp(11px,2.2cqi,18px)}.sb-go{justify-content:center;min-width:180px}.sb-settings-row{flex-wrap:wrap;gap:12px 28px;display:flex}.sb-pick{flex-direction:column;gap:6px;display:flex}.sb-pick-label{color:var(--ink);font-weight:700}.sb-pick-list{flex-wrap:wrap;gap:6px;display:flex}.sb-pick-btn{border:2px solid var(--paper-border);background:var(--paper);width:72px;font:inherit;color:var(--ink);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:6px 4px 4px;font-size:14px;display:flex}.sb-pick-btn svg{width:48px;height:54px}.sb-pick-btn[aria-pressed=true]{border-color:var(--ink);background:var(--sticky);font-weight:700}.sb-add-text{align-items:flex-end;gap:10px;display:flex}.sb-add-text textarea{border:1px solid var(--paper-border);max-width:560px;font:inherit;resize:vertical;border-radius:6px;flex:1;padding:6px 10px;font-size:16px}.sb-zoom{z-index:1000;background-color:var(--board);border:14px solid var(--wood);color:var(--chalk);font-family:var(--font-chalk);background-image:radial-gradient(60% 45% at 28% 22%,#ffffff12,#0000 70%);flex-direction:column;gap:16px;padding:20px 32px 24px;animation:.25s ease-out brick-zoom;display:flex;position:fixed;inset:0}.sb-zoom-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sb-zoom-tools{align-items:center;gap:12px;display:flex}.sb-zoom-tools .tag-field{color:var(--chalk)}.sb-zoom-slide{flex:1;justify-content:center;align-items:center;min-height:0;padding:2%;display:flex;container-type:size}@container (max-width:760px){.sb-layout{grid-template-columns:minmax(0,1fr)}.sb-slide{height:32vh;min-height:200px}}@media (prefers-reduced-motion:reduce){.sb-splash{display:none}.sb-climber,.sb-climber.is-falling,.sb-shark,.sb-shark:not(.is-up){transition:none}.sb-climber-art.is-scared,.sb-climber.is-stepping .sb-climber-art:not(.is-scared),.sb-shark.is-chomping>g,.sb-fin-swim,.sb-wave,.sb-hand-emoji.is-shuffling,.sb-hand-emoji.is-landed,.sb-slide .ttt-content,.sb-zoom-slide .ttt-content,.sb-zoom{animation:none}}
