/* Hallmark · macrostructure: Center Stage · tone: playful precision · anchor hue: LUM360 gold */
.pattern{--color-pt-table:oklch(23% .015 175);--color-pt-text:oklch(96% .015 88);--color-pt-muted:oklch(78% .024 100);--color-pt-line:oklch(43% .018 170);--color-pt-gold:oklch(83% .13 86);--color-pt-gold-ink:oklch(24% .025 80);--color-pt-focus:oklch(94% .09 90);--color-pt-overlay:oklch(20% .015 175 / .97);--color-pt-shade:oklch(10% .015 175 / .2)}.pattern,.pattern [data-skin=studio]{--p-bg:#26302f;--p-bg2:#0b0f0f;--p-orb1:#f2d16b33;--p-orb2:#3e8c7f40;--p-orb3:#e3b06226;--p-accent:#f2d16b;--p-accent2:#d39a3f;--p-accent-ink:#2a1c05;--p-text:#f7f2e6;--p-muted:#b8c3bd;--p-panel:#ffffff0f;--p-line:#ffffff1f;--p-sheet:#141b1b;--p-table:linear-gradient(160deg,#2c3534,#151b1b);--p-frame:#f2d16b59;--m-radius:22%;--m-fill:100%;--m-base:#000;--m-sheen:.3;--m-facet:0;--m-depth:3px;--m-ring:0px;--m-glow:0px;--m-edge:#ffffff1a;--m-gap:4px;--m-veil:#ffffff14;--m-bevel:0 0 #0000}.pattern[data-skin=atelier],.pattern [data-skin=atelier]{--p-bg:#f6efe3;--p-bg2:#e4d7c3;--p-orb1:#c0522f26;--p-orb2:#2f5d6226;--p-orb3:#e0b07a33;--p-accent:#c0522f;--p-accent2:#8f3a1f;--p-accent-ink:#fff7ef;--p-text:#2a241c;--p-muted:#6d6152;--p-panel:#0000000a;--p-line:#0000001c;--p-sheet:#f8f2e8;--p-table:linear-gradient(160deg,#fffdf8,#efe6d8);--p-frame:#2a241c26;--m-radius:9%;--m-fill:100%;--m-base:#000;--m-sheen:.05;--m-facet:0;--m-depth:2px;--m-ring:0px;--m-glow:0px;--m-edge:#0000001a;--m-gap:5px;--m-veil:#0000000f;--m-bevel:0 0 #0000}.pattern[data-skin=glass],.pattern [data-skin=glass]{--p-bg:#2a2f6e;--p-bg2:#090b26;--p-orb1:#9fe3ff4d;--p-orb2:#c7b8ff47;--p-orb3:#5fd3ff2e;--p-accent:#9fe3ff;--p-accent2:#8a9bff;--p-accent-ink:#071430;--p-text:#f1f5ff;--p-muted:#b8c2ec;--p-panel:#ffffff14;--p-line:#ffffff2b;--p-sheet:#141947;--p-table:linear-gradient(160deg,#ffffff24,#ffffff08);--p-frame:#ffffff4d;--m-radius:28%;--m-fill:82%;--m-base:#ffffff;--m-sheen:.55;--m-facet:0;--m-depth:2px;--m-ring:0px;--m-glow:6px;--m-edge:#ffffff70;--m-gap:5px;--m-veil:#ffffff1f;--m-bevel:0 0 #0000}.pattern[data-skin=neon],.pattern [data-skin=neon]{--p-bg:#15152e;--p-bg2:#030308;--p-orb1:#ff2e9740;--p-orb2:#49f2ff33;--p-orb3:#8a4dff3d;--p-accent:#49f2ff;--p-accent2:#ff4ecd;--p-accent-ink:#00171a;--p-text:#ecfdff;--p-muted:#a2acd0;--p-panel:#ffffff0d;--p-line:#ffffff1c;--p-sheet:#0b0b18;--p-table:linear-gradient(160deg,#0d0d1a,#050509);--p-frame:#49f2ff4d;--m-radius:16%;--m-fill:16%;--m-base:#05050b;--m-sheen:0;--m-facet:0;--m-depth:0px;--m-ring:2px;--m-glow:12px;--m-edge:#0000;--m-gap:6px;--m-veil:#ffffff0d;--m-bevel:0 0 #0000}.pattern[data-skin=mosaic],.pattern [data-skin=mosaic]{--p-bg:#1f4a3d;--p-bg2:#0a1b15;--p-orb1:#d8b25a3d;--p-orb2:#5fb89440;--p-orb3:#2f8d6640;--p-accent:#d8b25a;--p-accent2:#a87b2c;--p-accent-ink:#231805;--p-text:#f1f4ea;--p-muted:#b9cfc0;--p-panel:#ffffff10;--p-line:#ffffff1f;--p-sheet:#10291f;--p-table:linear-gradient(160deg,#cdbf9c,#a99a76);--p-frame:#d8b25a80;--m-radius:3px;--m-fill:92%;--m-base:#3a2a14;--m-sheen:.12;--m-facet:.05;--m-depth:0px;--m-ring:0px;--m-glow:0px;--m-edge:#00000040;--m-gap:3px;--m-veil:#00000026;--m-bevel:inset 0 2px 0 #ffffff2e,inset 0 -2px 0 #0000003d}.pattern[data-skin=gems],.pattern [data-skin=gems]{--p-bg:#3a1840;--p-bg2:#0e0612;--p-orb1:#ff8fd147;--p-orb2:#8fd8ff3d;--p-orb3:#b06bff38;--p-accent:#ff8fd1;--p-accent2:#b06bff;--p-accent-ink:#2a0620;--p-text:#fff1fb;--p-muted:#d4b9d2;--p-panel:#ffffff10;--p-line:#ffffff21;--p-sheet:#1f0d24;--p-table:linear-gradient(160deg,#2a1230,#12071a);--p-frame:#ff8fd14d;--m-radius:16%;--m-fill:100%;--m-base:#000;--m-sheen:.5;--m-facet:.17;--m-depth:3px;--m-ring:0px;--m-glow:5px;--m-edge:#ffffff40;--m-gap:5px;--m-veil:#ffffff12;--m-bevel:0 0 #0000}.pattern[data-skin=lum360],.pattern [data-skin=lum360]{--p-bg:#2a2418;--p-bg2:#08070a;--p-orb1:#ffecae3b;--p-orb2:#c39a5b3d;--p-orb3:#b3854630;--p-accent:#f1d78c;--p-accent2:#b38546;--p-accent-ink:#2a1d07;--p-text:#fbf4e4;--p-muted:#c9bc9f;--p-panel:#ffffff0e;--p-line:#f1d78c26;--p-sheet:#16130e;--p-table:linear-gradient(160deg,#1d1914,#0c0a08);--p-frame:#f1d78c80;--m-radius:50%;--m-fill:100%;--m-base:#000;--m-sheen:.38;--m-facet:0;--m-depth:3px;--m-ring:0px;--m-glow:0px;--m-edge:#f1d78c40;--m-gap:5px;--m-veil:#f1d78c14;--m-bevel:0 0 #0000}.pattern{position:relative;min-width:0;padding:12px 0 56px;color:var(--p-text);-webkit-tap-highlight-color:transparent}.pattern [hidden]{display:none!important}.pattern .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:where(.pattern) svg[viewBox="0 0 24 24"]{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}:where(.pattern) button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}:where(.pattern) button:disabled{cursor:default}:is(.pt-topbar,.pt-cta,.pt-shop-grid,.pt-handoff,.pt-round-result) button:disabled{opacity:1}.pattern :focus-visible{outline:3px solid var(--p-accent);outline-offset:3px}.pt-app{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:14px;max-width:520px;margin:0 auto;padding:14px 16px 20px;border-radius:34px;overflow:hidden;background:radial-gradient(130% 75% at 50% -8%,var(--p-bg) 0%,var(--p-bg2) 72%);box-shadow:0 0 0 1px var(--p-line) inset,0 40px 90px -36px #000d;transition:background .5s var(--ease-out)}.pt-app:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.06;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.pt-ambient{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}.pt-ambient i{position:absolute;border-radius:50%;filter:blur(46px);animation:pt-drift 22s ease-in-out infinite alternate}.pt-ambient i:nth-child(1){width:70%;aspect-ratio:1;left:-22%;top:-8%;background:var(--p-orb1)}.pt-ambient i:nth-child(2){width:60%;aspect-ratio:1;right:-24%;top:28%;background:var(--p-orb2);animation-duration:27s;animation-delay:-6s}.pt-ambient i:nth-child(3){width:80%;aspect-ratio:1;left:10%;bottom:-34%;background:var(--p-orb3);animation-duration:31s;animation-delay:-12s}@keyframes pt-drift{to{transform:translate3d(12%,9%,0) scale(1.12)}}.pt-topbar{position:relative;z-index:3;display:flex;align-items:center;gap:10px}.pt-level{position:relative;flex:none;display:grid;place-items:center;width:46px;height:46px;padding:0;border:0;border-radius:50%;background:radial-gradient(circle at 50% 35%,#ffffff1f,#0000 70%),var(--p-panel)}.pt-level svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.pt-ring-track,.pt-ring{fill:none;stroke-width:3.4}.pt-ring-track{stroke:var(--p-line)}.pt-ring{stroke:var(--p-accent);stroke-linecap:round;stroke-dasharray:0 100;transition:stroke-dasharray .9s var(--ease-out);filter:drop-shadow(0 0 3px var(--p-accent))}.pt-level b{font:700 1.05rem/1 var(--font-display)}.pt-wallet{display:inline-flex;align-items:center;gap:8px;height:42px;margin-right:auto;padding:0 6px 0 5px;border:1px solid var(--p-line);border-radius:999px;background:linear-gradient(#0000004d,#00000026);box-shadow:0 1px #ffffff14 inset;font:700 1.05rem/1 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.01em;transition:transform .15s var(--ease-out)}.pattern[data-skin=atelier] .pt-wallet{background:#ffffffb3}.pt-wallet:active:not(:disabled){transform:scale(.96)}.pt-wallet .pt-coin{--s:30px}.pt-wallet strong{min-width:2.4ch;text-align:left}.pt-plus{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:linear-gradient(var(--p-accent),var(--p-accent2));color:var(--p-accent-ink);font-size:1.1rem;font-weight:800;box-shadow:0 2px #0000004d}.pt-topbar button:disabled .pt-plus{display:none}.pt-icon{flex:none;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--p-line);border-radius:15px;background:var(--p-panel);transition:transform .15s var(--ease-out),background .15s}.pt-icon:hover{background:color-mix(in srgb,var(--p-panel),var(--p-text) 8%)}.pt-icon:active{transform:scale(.92)}.pt-icon svg{width:22px;height:22px}.pt-coin{--s:1.45em;position:relative;display:inline-block;flex:none;width:var(--s);height:var(--s);border-radius:50%;vertical-align:middle;background:radial-gradient(circle at 30% 26%,#fffbe6 0 6%,#fff0 26%),conic-gradient(from 210deg,#a8732c,#ffe9a8,#d6a24c,#8f6025,#f6d67f,#c1883a,#a8732c);box-shadow:inset 0 0 0 calc(var(--s)*.06) #fff3c94d,inset 0 calc(var(--s)*-.07) calc(var(--s)*.05) #6b3f0f80,0 calc(var(--s)*.06) calc(var(--s)*.14) #0006}.pt-coin:before{content:"";position:absolute;inset:13%;border-radius:50%;background:linear-gradient(150deg,#fbe3a0,#d3a051 55%,#b07a32);box-shadow:inset 0 calc(var(--s)*.04) calc(var(--s)*.05) #6b3f0f99,inset 0 calc(var(--s)*-.03) 0 #fff4}.pt-coin:after{content:"";position:absolute;inset:25%;background:linear-gradient(165deg,#714812,#3d2306);-webkit-mask:var(--isotype) center/contain no-repeat;mask:var(--isotype) center/contain no-repeat;filter:drop-shadow(0 1px 0 #ffeab066)}.pt-coin-xs{--s:1.15em}.pt-coin-sm{--s:22px}.pt-coin-lg{--s:54px;animation:pt-coin-spin 3.6s ease-in-out infinite}.pt-coin-fly{--s:26px;position:absolute;z-index:30;pointer-events:none;will-change:transform}@keyframes pt-coin-spin{0%,70%,to{transform:rotateY(0)}85%{transform:rotateY(180deg)}}.pt-swatch,.pt-mini,.pt-logo-grid i{--t:var(--pt-tile,var(--m-veil));display:block;border-radius:var(--m-radius);background:linear-gradient(160deg,rgb(255 255 255/var(--m-sheen)),#fff0 44%,#0000001c),conic-gradient(from 45deg,#fff0 0 25%,rgb(255 255 255/var(--m-facet)) 25% 50%,#fff0 50% 75%,rgb(0 0 0/var(--m-facet)) 75% 100%),color-mix(in oklab,var(--t) var(--m-fill),var(--m-base));box-shadow:0 var(--m-depth) 0 -1px color-mix(in oklab,var(--t),#000 40%),0 0 var(--m-glow) color-mix(in srgb,var(--t) 65%,transparent),inset 0 0 0 var(--m-ring) var(--t),inset 0 0 0 1px var(--m-edge),inset 0 1px rgb(255 255 255/calc(var(--m-sheen)*.8)),var(--m-bevel)}.pt-lobby{display:flex;flex-direction:column;gap:16px;flex:1;animation:pt-fade .45s var(--ease-out)}.pt-signature{display:flex;align-items:center;justify-content:center;gap:8px;margin:2px 0 0;color:var(--p-muted);font:600 .68rem/1 var(--font-display);letter-spacing:.2em}.pt-signature img{width:22px;height:22px}.pattern:not([data-skin=atelier]) .pt-signature img{filter:invert(1) brightness(1.2)}.pt-logo{display:grid;justify-items:center;gap:14px;margin:4px 0 0;line-height:1}.pt-logo-grid{display:grid;grid-template-columns:repeat(5,.9em);gap:.12em;font-size:clamp(2rem,10vw,2.7rem);perspective:600px;transform:rotate(-4deg)}.pt-logo-grid i{width:.9em;aspect-ratio:1;--m-depth:4px}.pt-logo-grid i[data-swap]{position:relative;z-index:1;animation:pt-logo-swap 5.2s cubic-bezier(.6,0,.3,1) infinite}.pt-logo-grid i[data-swap=b]{animation-name:pt-logo-swap-b}@keyframes pt-logo-swap{0%,22%{transform:translate(2.04em)}34%{transform:translate(1.02em,-.32em) scale(1.12)}46%,88%{transform:none}to{transform:translate(2.04em)}}@keyframes pt-logo-swap-b{0%,22%{transform:translate(-2.04em)}34%{transform:translate(-1.02em,.32em) scale(1.12)}46%,88%{transform:none}to{transform:translate(-2.04em)}}.pt-logo-word{font:800 clamp(1.9rem,9vw,2.5rem)/1 var(--font-display);letter-spacing:.02em}.pt-logo-word b{background:linear-gradient(90deg,var(--p-accent),var(--p-accent2),var(--p-accent));-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:pt-shine 6s ease-in-out infinite}@keyframes pt-shine{50%{background-position:100% 0}}.pt-tagline{margin:-4px auto 0;max-width:30ch;text-align:center;color:var(--p-muted);font-size:.98rem;line-height:1.45}.pt-daily{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"i t r" "i s s";align-items:center;gap:4px 12px;width:100%;padding:12px 14px;border:1px solid color-mix(in srgb,var(--p-accent) 45%,transparent);border-radius:22px;background:linear-gradient(110deg,color-mix(in srgb,var(--p-accent) 16%,transparent),var(--p-panel) 60%);text-align:left;overflow:hidden;transition:transform .15s var(--ease-out)}.pt-daily:not(:disabled):after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,#fff0 35%,#ffffff2e,#fff0 65%) -160% 0/240% 100% no-repeat;animation:pt-sheen 3.2s ease-in-out infinite;pointer-events:none}.pt-daily:not(:disabled):active{transform:scale(.98)}.pt-daily:disabled{border-color:var(--p-line);background:var(--p-panel);opacity:.78}.pt-daily-icon{grid-area:i;display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:linear-gradient(var(--p-accent),var(--p-accent2));color:var(--p-accent-ink);box-shadow:0 3px #0000004d}.pt-daily:not(:disabled) .pt-daily-icon{animation:pt-wiggle 2.6s ease-in-out infinite}.pt-daily-icon svg{width:24px;height:24px}.pt-daily-text{grid-area:t;display:grid;gap:2px;min-width:0}.pt-daily-text strong{font:700 1rem/1.15 var(--font-display)}.pt-daily-text small{color:var(--p-muted);font-size:.8rem}.pt-daily-coins{grid-area:r;display:inline-flex;align-items:center;gap:5px;padding:5px 10px 5px 5px;border-radius:999px;background:#0000004d;font:700 .95rem var(--font-display)}.pattern[data-skin=atelier] .pt-daily-coins{background:#ffffffb3}.pt-streak{grid-area:s;display:flex;gap:5px}.pt-streak i{flex:1;height:5px;border-radius:9px;background:var(--p-line)}.pt-streak i[data-on=true]{background:linear-gradient(90deg,var(--p-accent2),var(--p-accent));box-shadow:0 0 8px color-mix(in srgb,var(--p-accent) 60%,transparent)}@keyframes pt-wiggle{0%,80%,to{transform:rotate(0)}85%{transform:rotate(-10deg) scale(1.06)}90%{transform:rotate(9deg)}95%{transform:rotate(-4deg)}}@keyframes pt-sheen{0%,55%{background-position:-160% 0}to{background-position:260% 0}}.pt-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;border:0;min-width:0}.pt-mode{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"i n" "i b";align-items:center;gap:2px 10px;padding:12px;border:1px solid var(--p-line);border-radius:20px;background:var(--p-panel);text-align:left;cursor:pointer;transition:transform .18s var(--ease-out),border-color .18s,background .18s,box-shadow .18s}.pt-mode input{position:absolute;opacity:0;pointer-events:none}.pt-mode-icon{grid-area:i;display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:#0000002e;color:var(--p-muted);transition:inherit}.pt-mode-icon svg{width:22px;height:22px}.pt-mode strong{grid-area:n;font:700 .95rem/1.1 var(--font-display)}.pt-mode small{grid-area:b;font-size:.7rem;line-height:1.3;color:var(--p-muted)}.pt-mode:has(input:checked){border-color:var(--p-accent);background:linear-gradient(180deg,color-mix(in srgb,var(--p-accent) 18%,transparent),color-mix(in srgb,var(--p-accent) 4%,transparent));box-shadow:0 0 0 1px var(--p-accent) inset,0 12px 26px -14px var(--p-accent);transform:translateY(-2px)}.pt-mode:has(input:checked) .pt-mode-icon{background:linear-gradient(var(--p-accent),var(--p-accent2));color:var(--p-accent-ink)}.pt-mode:has(input:focus-visible){outline:3px solid var(--p-accent);outline-offset:3px}.pt-mode:active{transform:scale(.97)}.pt-mode[data-done=true] .pt-mode-icon{position:relative}.pt-mode[data-done=true] .pt-mode-icon:after{content:"\2713";position:absolute;right:-5px;bottom:-5px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--p-accent);color:var(--p-accent-ink);font:800 .7rem/1 var(--font-display)}.pt-options{display:grid;gap:10px}.pt-segment{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0;padding:4px;border:1px solid var(--p-line);border-radius:16px;background:#0000002e;min-width:0}.pattern[data-skin=atelier] .pt-segment{background:#ffffff8c}.pt-segment label{position:relative;cursor:pointer}.pt-segment input{position:absolute;opacity:0;pointer-events:none}.pt-segment span{display:grid;place-items:center;min-height:40px;border-radius:12px;font:700 .9rem var(--font-display);color:var(--p-muted);transition:background .18s,color .18s}.pt-segment input:checked+span{background:linear-gradient(var(--p-accent),var(--p-accent2));color:var(--p-accent-ink);box-shadow:0 2px #0000004d}.pt-segment input:focus-visible+span{outline:3px solid var(--p-accent);outline-offset:2px}.pt-names{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;border:0;min-width:0}.pt-names input{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--p-line);border-radius:14px;background:#0000002e;color:var(--p-text);font:600 .95rem var(--font-display)}.pattern[data-skin=atelier] .pt-names input{background:#ffffffb3}.pt-cta{display:grid;gap:10px;justify-items:center;margin-top:2px}.pt-play{position:relative;display:inline-grid;place-items:center;width:100%;min-height:64px;padding:0 28px;border:0;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--p-accent),#fff 22%),var(--p-accent) 45%,var(--p-accent2));color:var(--p-accent-ink);font:800 1.3rem/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;box-shadow:0 7px color-mix(in oklab,var(--p-accent2) 55%,#000),0 18px 30px -14px var(--p-accent),inset 0 2px #ffffff80;transition:transform .12s var(--ease-out),box-shadow .12s,filter .2s}.pt-play:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,#fff0 35%,#ffffff6b,#fff0 65%) -160% 0/240% 100% no-repeat;animation:pt-sheen 2.8s ease-in-out infinite}.pt-play:active:not(:disabled){transform:translateY(5px);box-shadow:0 2px color-mix(in oklab,var(--p-accent2) 55%,#000),0 8px 18px -10px var(--p-accent),inset 0 2px #ffffff80}.pt-play:disabled{filter:saturate(.4) brightness(.8)}.pt-play:disabled:after{display:none}.pt-play span{position:relative;z-index:1}.pt-play-sm{width:auto;min-height:50px;font-size:1rem;border-radius:18px}.pt-text{min-height:40px;padding:0 12px;border:0;background:none;color:var(--p-muted);font:600 .9rem var(--font-display);text-decoration:underline;text-underline-offset:4px;text-decoration-color:color-mix(in srgb,var(--p-muted) 50%,transparent)}.pt-text:hover{color:var(--p-text)}.pt-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border:1px solid var(--p-line);border-radius:16px;background:var(--p-panel);font:600 .92rem var(--font-display);transition:transform .12s var(--ease-out),background .15s}.pt-ghost:active{transform:scale(.97)}.pt-ghost svg{width:18px;height:18px}.pt-danger{color:#ff8b8b;border-color:#ff8b8b4d}.pt-fine{margin:0;color:var(--p-muted);font-size:.78rem;line-height:1.45;text-align:center}.pt-fine:empty{display:none}.pt-dock{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px;padding:8px;border:1px solid var(--p-line);border-radius:24px;background:#0000002e;backdrop-filter:blur(10px)}.pattern[data-skin=atelier] .pt-dock{background:#ffffff8c}.pt-dock button{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px 8px;border:0;border-radius:18px;background:none;font:600 .78rem var(--font-display);color:var(--p-muted);transition:background .15s,color .15s,transform .12s var(--ease-out)}.pt-dock button:hover{background:var(--p-panel);color:var(--p-text)}.pt-dock button:active{transform:scale(.94)}.pt-dock svg{width:26px;height:26px;color:var(--p-text)}.pt-badge-dot{position:absolute;top:8px;right:calc(50% - 22px);width:10px;height:10px;border-radius:50%;background:#ff5d6c;box-shadow:0 0 0 2px var(--p-bg2);animation:pt-pulse 1.8s ease-in-out infinite}@keyframes pt-pulse{50%{transform:scale(1.25)}}.pt-import{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;border:1px dashed color-mix(in srgb,var(--p-accent) 55%,transparent);background:color-mix(in srgb,var(--p-accent) 8%,transparent)}.pt-import p{margin:0;font-size:.82rem;line-height:1.4;flex:1}.pt-chip{flex:none;min-height:36px;padding:0 14px;border:0;border-radius:999px;background:var(--p-accent);color:var(--p-accent-ink);font:700 .8rem var(--font-display)}.pt-account{margin:0;text-align:center;color:var(--p-muted);font-size:.78rem;line-height:1.4}.pt-account:empty{display:none}.pt-account a{color:var(--p-accent);font-weight:600}.pt-error{position:relative;z-index:8;max-width:520px;margin:10px auto 0;padding:10px 14px;border-radius:14px;background:#5a1620;color:#ffe3e3;font-size:.85rem;text-align:center}@keyframes pt-fade{0%{opacity:0;transform:translateY(8px)}}.pt-sheet{width:100%;max-width:min(520px,100%);max-height:min(88dvh,820px);margin:auto auto 0;padding:10px 18px calc(18px + env(safe-area-inset-bottom));border:0;border-radius:30px 30px 0 0;background:linear-gradient(180deg,color-mix(in oklab,var(--p-sheet),var(--p-text) 6%),var(--p-sheet) 140px);color:var(--p-text);box-shadow:0 -1px 0 var(--p-line) inset,0 -30px 60px -20px #0009;overflow:auto;overscroll-behavior:contain}.pt-sheet[open]{display:flex;flex-direction:column;gap:14px;animation:pt-sheet-in .38s var(--ease-out)}.pt-sheet:before{content:"";align-self:center;flex:none;width:44px;height:5px;border-radius:9px;background:var(--p-line)}.pt-sheet::backdrop{background:#000000a6;backdrop-filter:blur(6px)}@keyframes pt-sheet-in{0%{transform:translateY(40px);opacity:0}}@media (min-width:640px){.pt-sheet{margin:auto;border-radius:30px;box-shadow:0 0 0 1px var(--p-line) inset,0 40px 90px -30px #000}.pt-sheet:before{display:none}.pt-sheet[open]{animation-name:pt-pop-in}}@keyframes pt-pop-in{0%{transform:scale(.94);opacity:0}}.pt-sheet h2{margin:0;font:700 1.35rem/1.1 var(--font-display);letter-spacing:-.02em}.pt-sheet-head{display:flex;align-items:center;gap:10px}.pt-sheet-head h2{margin-right:auto}.pt-sheet-sub{margin:4px 0 0;font:700 1rem var(--font-display)}.pt-balance{display:inline-flex;align-items:center;gap:6px;margin:0;padding:5px 12px 5px 5px;border-radius:999px;background:#0000004d;font:700 .95rem var(--font-display);font-variant-numeric:tabular-nums}.pattern[data-skin=atelier] .pt-balance{background:#ffffffb3}.pt-dialog{max-width:440px}.pt-dialog p{margin:0;color:var(--p-muted);line-height:1.5}.pt-dialog-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.pt-steps{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:pt-step}.pt-steps li{position:relative;padding:10px 12px 10px 48px;border-radius:16px;background:var(--p-panel);line-height:1.45;counter-increment:pt-step}.pt-steps li:before{content:counter(pt-step);position:absolute;left:12px;top:50%;translate:0 -50%;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:linear-gradient(var(--p-accent),var(--p-accent2));color:var(--p-accent-ink);font:800 .85rem var(--font-display)}.pt-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:16px;background:#0000002e}.pt-tabs button{min-height:40px;border:0;border-radius:12px;background:none;color:var(--p-muted);font:700 .85rem var(--font-display)}.pt-tabs button[aria-selected=true]{background:var(--p-panel);color:var(--p-text);box-shadow:0 0 0 1px var(--p-line) inset}.pt-shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pt-item{position:relative;display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--p-line);border-radius:20px;background:var(--p-panel);animation:pt-fade .35s var(--ease-out) backwards}.pt-item[data-state=equipped]{border-color:var(--p-accent);box-shadow:0 0 0 1px var(--p-accent) inset}.pt-item[data-previewing=true]{outline:2px dashed var(--p-accent);outline-offset:2px}.pt-item h3{margin:2px 0 0;font:700 .92rem/1.15 var(--font-display)}.pt-item p{margin:0;flex:1;color:var(--p-muted);font-size:.74rem;line-height:1.35}.pt-item small{color:var(--p-muted);font-size:.72rem}.pt-item .pt-missing{color:#ffb3a3}.pt-item-art{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--m-gap);aspect-ratio:4/3;padding:9px;border:0;border-radius:14px;background:radial-gradient(120% 90% at 50% 0%,var(--p-bg),var(--p-bg2));overflow:hidden;box-shadow:0 0 0 1px var(--p-line) inset}.pt-item-art .pt-mini{min-height:0}.pt-item-art[data-art]{display:grid;place-items:center;grid-template-columns:1fr;color:var(--p-accent)}.pt-item-art[data-art] svg{width:44%;height:auto;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--p-accent) 50%,transparent))}.pt-item-art[data-art] i{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:var(--p-accent);animation:pt-fx-ring 2s ease-out infinite}.pt-item-art[data-art] i:nth-child(2){animation-delay:-.4s;background:var(--p-accent2)}.pt-item-art[data-art] i:nth-child(3){animation-delay:-.8s}.pt-item-art[data-art] i:nth-child(4){animation-delay:-1.2s;background:var(--p-accent2)}.pt-item-art[data-art] i:nth-child(5){animation-delay:-1.6s}.pt-item-art[data-art=ripple] i{width:12px;height:12px;background:none;border:2px solid var(--p-accent)}.pt-item-art[data-art=prism] i{width:9px;height:14px;border-radius:2px;clip-path:polygon(50% 0,100% 100%,0 100%);animation-name:pt-fx-burst}.pt-item-art[data-art=prism] i:nth-child(1){background:#ff6b8b}.pt-item-art[data-art=prism] i:nth-child(2){background:#ffd36b;--a:72deg}.pt-item-art[data-art=prism] i:nth-child(3){background:#6bffb0;--a:144deg}.pt-item-art[data-art=prism] i:nth-child(4){background:#6bb8ff;--a:216deg}.pt-item-art[data-art=prism] i:nth-child(5){background:#c46bff;--a:288deg}.pt-item-art[data-art=bloom] i{width:12px;height:7px;border-radius:50%;animation-name:pt-fx-fall}.pt-item-art[data-art=bloom] i:nth-child(2){--x:-22px}.pt-item-art[data-art=bloom] i:nth-child(3){--x:20px}.pt-item-art[data-art=bloom] i:nth-child(4){--x:-38px}.pt-item-art[data-art=bloom] i:nth-child(5){--x:34px}.pt-item-art[data-art=stardust] i{width:9px;height:9px;border-radius:0;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation-name:pt-fx-twinkle}.pt-item-art[data-art=stardust] i:nth-child(1){translate:-30px -14px}.pt-item-art[data-art=stardust] i:nth-child(2){translate:18px -20px}.pt-item-art[data-art=stardust] i:nth-child(3){translate:-8px 12px}.pt-item-art[data-art=stardust] i:nth-child(4){translate:30px 10px}.pt-item-art[data-art=stardust] i:nth-child(5){translate:-40px 18px}.pt-item-art[data-art=aurora] i{left:-40%;width:180%;height:14px;border-radius:9px;background:linear-gradient(90deg,#0000,var(--p-accent),#0000);animation-name:pt-fx-sweep;filter:blur(3px)}.pt-item-art[data-art=aurora] i:nth-child(2){top:34%;background:linear-gradient(90deg,#0000,var(--p-accent2),#0000)}.pt-item-art[data-art=aurora] i:nth-child(3){top:66%}.pt-item-art[data-art=aurora] i:nth-child(n+4){display:none}@keyframes pt-fx-ring{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}to{transform:translate(-50%,-50%) scale(4.5);opacity:0}}@keyframes pt-fx-burst{0%{transform:translate(-50%,-50%) rotate(var(--a,0deg)) translateY(0);opacity:1}to{transform:translate(-50%,-50%) rotate(var(--a,0deg)) translateY(-34px);opacity:0}}@keyframes pt-fx-fall{0%{transform:translate(calc(-50% + var(--x,0px)),-40px) rotate(0);opacity:0}30%{opacity:1}to{transform:translate(calc(-50% + var(--x,0px) + 10px),30px) rotate(160deg);opacity:0}}@keyframes pt-fx-twinkle{0%,to{transform:scale(.4);opacity:.3}50%{transform:scale(1.3);opacity:1}}@keyframes pt-fx-sweep{0%{transform:translate(-30%) rotate(-12deg);opacity:0}50%{opacity:.9}to{transform:translate(30%) rotate(-12deg);opacity:0}}.pt-buy,.pt-equip,.pt-equipped{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:40px;padding:0 10px;border:0;border-radius:13px;font:700 .85rem var(--font-display);font-variant-numeric:tabular-nums;transition:transform .12s var(--ease-out),filter .15s}.pt-buy{background:linear-gradient(var(--p-accent),var(--p-accent2));color:var(--p-accent-ink);box-shadow:0 3px color-mix(in oklab,var(--p-accent2) 55%,#000)}.pt-buy[data-confirming=true]{background:linear-gradient(#ffe08a,#ff9b45);animation:pt-pulse 1s ease-in-out infinite}.pt-buy:disabled{filter:grayscale(.7) brightness(.75);box-shadow:none}.pt-buy:active:not(:disabled),.pt-equip:active{transform:translateY(2px)}.pt-equip{background:var(--p-panel);box-shadow:0 0 0 1px var(--p-accent) inset;color:var(--p-text)}.pt-equipped{background:none;color:var(--p-accent)}.pt-missions{display:grid;gap:10px;margin:0;padding:0;list-style:none}.pt-missions li{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;padding:12px 14px;border:1px solid var(--p-line);border-radius:18px;background:var(--p-panel)}.pt-missions li[data-claimed=true]{border-color:color-mix(in srgb,var(--p-accent) 60%,transparent);background:color-mix(in srgb,var(--p-accent) 9%,transparent)}.pt-missions strong{font:700 .9rem/1.3 var(--font-display)}.pt-missions .pt-bar{grid-column:1/-1}.pt-mission-reward{display:inline-flex;align-items:center;gap:4px;font:700 .85rem var(--font-display);color:var(--p-accent)}.pt-bar{display:block;height:7px;border-radius:9px;background:#0000003d;overflow:hidden}.pt-bar>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--p-accent2),var(--p-accent));transform-origin:left;transform:scaleX(0);transition:transform .8s var(--ease-out)}.pt-profile-level{display:flex;align-items:center;gap:14px;padding:14px;border-radius:20px;background:var(--p-panel)}.pt-profile-level>b{display:grid;place-items:center;flex:none;width:58px;height:58px;border-radius:50%;background:linear-gradient(var(--p-accent),var(--p-accent2));color:var(--p-accent-ink);font:800 1.5rem var(--font-display);box-shadow:0 0 0 4px color-mix(in srgb,var(--p-accent) 25%,transparent)}.pt-profile-level>div{display:grid;gap:6px;flex:1;min-width:0}.pt-profile-level small{color:var(--p-muted);font-size:.78rem}.pt-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.pt-stats div{display:grid;gap:2px;padding:10px 12px;border-radius:16px;background:var(--p-panel)}.pt-stats dt{color:var(--p-muted);font-size:.74rem}.pt-stats dd{margin:0;font:700 1.2rem/1.1 var(--font-display);font-variant-numeric:tabular-nums}[data-record-list] h4{margin:6px 0 4px;font:700 .85rem var(--font-display);color:var(--p-muted)}.pattern table{width:100%;border-collapse:collapse;font-size:.82rem;font-variant-numeric:tabular-nums}.pattern th,.pattern td{padding:7px 6px;border-bottom:1px solid var(--p-line);text-align:left}.pattern th{color:var(--p-muted);font-weight:600;font-size:.74rem}.pt-settings{display:grid;gap:8px}.pt-switch,.pt-range{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 14px;border-radius:16px;background:var(--p-panel);font:600 .95rem var(--font-display);cursor:pointer}.pt-switch input{appearance:none;flex:none;position:relative;width:50px;height:30px;margin:0;border-radius:999px;background:#0000004d;box-shadow:0 0 0 1px var(--p-line) inset;cursor:pointer;transition:background .2s}.pt-switch input:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0006;transition:transform .2s var(--ease-out)}.pt-switch input:checked{background:linear-gradient(var(--p-accent),var(--p-accent2))}.pt-switch input:checked:after{transform:translate(20px)}.pt-range input{flex:0 1 55%;accent-color:var(--p-accent)}.pt-settings-actions{display:flex;justify-content:center;margin-top:4px}.pt-results{gap:12px;text-align:center}.pt-results-head{display:grid;justify-items:center;gap:6px}.pt-results-head h2{font-size:1.5rem}.pt-ribbon{padding:5px 14px;border-radius:999px;background:linear-gradient(90deg,var(--p-accent2),var(--p-accent));color:var(--p-accent-ink);font:800 .72rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;animation:pt-pop .6s cubic-bezier(.2,1.6,.4,1)}@keyframes pt-pop{0%{transform:scale(.4);opacity:0}}.pt-result-score{display:flex;align-items:baseline;justify-content:center;gap:8px}.pt-result-score span{color:var(--p-muted);font-size:.8rem}.pt-result-score strong{font:800 clamp(2.8rem,15vw,3.8rem)/1 var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,var(--p-text),var(--p-accent));-webkit-background-clip:text;background-clip:text;color:transparent}.pt-result-score small{color:var(--p-muted);font:600 1rem var(--font-display)}.pt-result-pips{display:flex;justify-content:center;gap:8px;margin:0;padding:0;list-style:none}.pt-result-pips li,.pt-pips li{width:14px;height:14px;border-radius:5px;background:var(--p-line);transform:rotate(45deg)}.pt-result-pips li{animation:pt-pop .45s cubic-bezier(.2,1.6,.4,1) backwards}.pt-result-pips li:nth-child(2){animation-delay:.08s}.pt-result-pips li:nth-child(3){animation-delay:.16s}.pt-result-pips li:nth-child(4){animation-delay:.24s}.pt-result-pips li:nth-child(5){animation-delay:.32s}:is(.pt-result-pips,.pt-pips) li[data-state=solved]{background:var(--p-accent)}:is(.pt-result-pips,.pt-pips) li[data-state=perfect]{background:linear-gradient(135deg,#fff,var(--p-accent));box-shadow:0 0 10px var(--p-accent)}:is(.pt-result-pips,.pt-pips) li[data-state=fail]{background:#ff6b6b66}.pt-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pt-summary section{display:grid;gap:2px;padding:10px;border-radius:16px;background:var(--p-panel)}.pt-summary section[data-winner=true]{box-shadow:0 0 0 2px var(--p-accent) inset}.pt-summary h3{margin:0;color:var(--p-muted);font:600 .8rem var(--font-display)}.pt-summary strong{font:800 1.4rem var(--font-display)}.pt-summary p{margin:0;color:var(--p-muted);font-size:.74rem}.pt-results .pt-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.pt-results .pt-stats div{padding:8px 4px}.pt-results .pt-stats dd{font-size:1rem}.pt-reward{display:grid;gap:8px;padding:14px;border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--p-accent) 14%,transparent),transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--p-accent) 35%,transparent) inset}.pt-reward h3{margin:0;color:var(--p-muted);font:600 .8rem var(--font-display);letter-spacing:.12em;text-transform:uppercase}.pt-reward-total{display:flex;align-items:center;justify-content:center;gap:10px;margin:0;perspective:400px}.pt-reward-total strong{font:800 2.2rem/1 var(--font-display);color:var(--p-accent);font-variant-numeric:tabular-nums}.pt-reward ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.pt-reward li{display:flex;justify-content:space-between;gap:10px;padding:6px 10px;border-radius:10px;background:var(--p-panel);font-size:.85rem;opacity:0;animation:pt-line-in .4s var(--ease-out) forwards}.pt-reward li span{text-align:left}.pt-reward li b{flex:none;color:var(--p-accent);font-family:var(--font-display);font-variant-numeric:tabular-nums}@keyframes pt-line-in{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}.pt-detail{text-align:left}.pt-detail summary{cursor:pointer;color:var(--p-muted);font:600 .85rem var(--font-display);padding:6px 0}.pt-seed{margin:6px 0 0;color:var(--p-muted);font-size:.72rem;word-break:break-all}.pt-result-actions{display:grid;gap:8px}.pt-result-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pt-result-actions .pt-fine{white-space:pre-line}.pt-guide{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--space-lg);margin-top:var(--space-2xl);color:var(--color-ink)}.pt-guide section{padding:var(--space-lg);border:1px solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-surface)}.pt-guide h2{margin:0 0 var(--space-sm);font-size:1.2rem}.pt-guide h3{margin:var(--space-md) 0 var(--space-xs);font-size:1rem}.pt-guide p,.pt-guide li{color:var(--color-muted);line-height:1.6}.pt-guide ol{margin:0;padding-left:1.2em}.pt-guide .pt-text{padding:0;min-height:auto;color:var(--color-ink)}.pattern[data-reduced=true] *,.pattern[data-reduced=true] *:before,.pattern[data-reduced=true] *:after{animation:none!important;transition:none!important}.pattern[data-reduced=true] .pt-reward li{opacity:1}@media (prefers-reduced-motion:reduce){.pattern *,.pattern *:before,.pattern *:after{animation:none!important;transition:none!important}.pt-reward li{opacity:1}}@media (max-width:600px){.pattern{padding:0 0 40px}.pt-app{border-radius:0;box-shadow:none;padding-inline:14px}}@media (max-width:360px){.pt-mode small{display:none}.pt-play{min-height:58px;font-size:1.15rem}.pt-results .pt-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
