@font-face{font-family:Fraunces;font-style:normal;font-weight:300 900;font-display:swap;src:url(/app/fonts/Fraunces-normal.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:300 900;font-display:swap;src:url(/app/fonts/Fraunces-italic.woff2) format("woff2")}@font-face{font-family:Quicksand;font-style:normal;font-weight:300 700;font-display:swap;src:url(/app/fonts/Quicksand-normal.woff2) format("woff2")}:root{--paper: #f1ead9;--paper-hi: #faf5e9;--paper-edge: #e0d6bf;--ink: #262b3f;--ink-70: rgba(38, 43, 63, .7);--ink-45: rgba(38, 43, 63, .68);--ink-15: rgba(38, 43, 63, .15);--hanko: #b8382b;--ok: #4c7a2e;--ok-soft: #4f6b34;--hanko-strong: var(--hanko);--plate-bloom: #c96d8b;--plate-drizzle: #4a8fbe;--plate-bento: #c4502f;--plate-inkling: #3e5ba9;--plate-sleepwalker: #5f6cc9;--font-display: "Fraunces", Georgia, serif;--font-ui: "Quicksand", system-ui, sans-serif;--space-1: 4px;--space-2: 8px;--space-3: 14px;--space-4: 22px;--space-5: 34px;--radius-card: 10px;--radius-pill: 999px;--ease-press: cubic-bezier(.2, .9, .3, 1.2);--dur-quick: .16s;--dur-settle: .32s;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}html,body{margin:0;padding:0;background:var(--paper);-webkit-tap-highlight-color:transparent;overscroll-behavior:none}#root{min-height:100vh}button{font-family:var(--font-ui);touch-action:manipulation}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root[data-theme=kraft]{--paper: #c9b48c;--paper-hi: #dbc9a2;--paper-edge: #ab926a;--ink: #322816;--ink-70: rgba(50, 40, 22, .84);--ink-45: rgba(50, 40, 22, .8);--ink-15: rgba(50, 40, 22, .16);--hanko: #a83525;--hanko-strong: color-mix(in srgb, var(--ink) 40%, var(--hanko));--ok: #365e1c;--ok-soft: #3f5a28}:root[data-theme=freshink]{--paper: #faf5e9;--paper-hi: #fffdf6;--paper-edge: #ece3d1;--hanko: #e0432f;--plate-bloom: #e86a92;--plate-drizzle: #2f9fd6;--plate-bento: #e85a2f;--plate-inkling: #4f6be0;--plate-sleepwalker: #6f7ef0;--hanko-strong: color-mix(in srgb, var(--ink) 25%, var(--hanko))}:root[data-theme=blueprint]{--paper: #133150;--paper-hi: #1b4266;--paper-edge: #2f628c;--ink: #eef5fc;--ink-70: rgba(238, 245, 252, .74);--ink-45: rgba(238, 245, 252, .62);--ink-15: rgba(238, 245, 252, .18);--hanko: #ff7a6b;--plate-bloom: #f4a8be;--plate-drizzle: #8fc7e8;--plate-bento: #f0876a;--plate-inkling: #a7b6ee;--plate-sleepwalker: #b3bcf5;--hanko-strong: color-mix(in srgb, var(--ink) 20%, var(--hanko));--ok: #8fca80;--ok-soft: #a7bf98}:root[data-theme=midnight]{--paper: #10142a;--paper-hi: #1a1f3d;--paper-edge: #2c3358;--ink: #dfe4fa;--ink-70: rgba(223, 228, 250, .72);--ink-45: rgba(223, 228, 250, .55);--ink-15: rgba(223, 228, 250, .16);--hanko: #ff7a6b;--plate-bloom: #e88faa;--plate-drizzle: #7fbbe4;--plate-bento: #e8795a;--plate-inkling: #8b9ce8;--plate-sleepwalker: #9aa6f0;--ok: #8fca80;--ok-soft: #a7bf98}:root[data-theme=kraft] .gpage,:root[data-theme=kraft] .demo-wrap,:root[data-theme=kraft] .plate,:root[data-theme=kraft] .appbar{--plate-strong: color-mix(in srgb, var(--ink) 70%, var(--plate, var(--ink)))}:root[data-theme=freshink] .gpage,:root[data-theme=freshink] .demo-wrap,:root[data-theme=freshink] .plate,:root[data-theme=freshink] .appbar{--plate-strong: color-mix(in srgb, var(--ink) 45%, var(--plate, var(--ink)))}:root[data-theme=blueprint] .gpage,:root[data-theme=blueprint] .demo-wrap,:root[data-theme=blueprint] .plate,:root[data-theme=blueprint] .appbar{--plate-strong: color-mix(in srgb, var(--ink) 15%, var(--plate, var(--ink)))}:root[data-theme=midnight] .gpage,:root[data-theme=midnight] .demo-wrap,:root[data-theme=midnight] .plate,:root[data-theme=midnight] .appbar{--plate-strong: var(--plate, var(--ink))}.hub{height:100dvh;background:var(--paper);color:var(--ink);font-family:var(--font-ui);display:flex;flex-direction:column;align-items:center;padding:calc(var(--safe-top) + 66px) 18px calc(var(--safe-bottom) + 30px);position:relative;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.hubbar{position:fixed;top:0;left:0;right:0;z-index:900;height:calc(var(--safe-top) + 52px);padding-top:var(--safe-top);display:flex;flex-direction:column;align-items:center;justify-content:center;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--ink-15);box-sizing:border-box}.hubbar .over{font-size:8.5px;font-weight:700;letter-spacing:.34em;text-indent:.34em;color:var(--ink-45);text-transform:uppercase}.hubbar .word{font-family:var(--font-display);font-weight:640;font-size:20px;line-height:1.1;color:var(--ink)}.hub:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.5;background-image: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='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.33 0 0 0 0 0.28 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.hub>:not(.hubbar){position:relative}.masthead{text-align:center;margin-bottom:var(--space-4);animation:rise .5s ease both}.masthead .over{font-size:11px;font-weight:600;letter-spacing:.34em;text-indent:.34em;color:var(--ink-45);text-transform:uppercase}.masthead h1{font-family:var(--font-display);font-size:40px;font-weight:640;font-variation-settings:"opsz" 100;letter-spacing:.01em;margin:2px 0 0;color:var(--ink)}.masthead .tagline{font-family:var(--font-display);font-style:italic;font-size:15px;color:var(--ink-70);margin-top:2px}.masthead .rule{width:56px;height:2px;background:var(--ink);margin:14px auto 0}.ticket{width:100%;max-width:380px;background:var(--paper-hi);border:1.5px solid var(--ink);border-radius:var(--radius-card);padding:16px 18px 12px;position:relative;box-shadow:0 2px 0 var(--ink-15);margin-bottom:var(--space-5);text-align:left;color:var(--ink);font-family:var(--font-ui);animation:rise .5s .06s ease both;box-sizing:border-box}.ticket .eyebrow,.ticket .date{padding-right:62px}.ticket .eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--hanko-strong)}.ticket .date{font-family:var(--font-display);font-size:22px;font-weight:600;margin:3px 0 1px}.ticket .streak{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hanko-strong);margin-top:2px}.ticket .streak.atrisk{display:block;text-transform:none;letter-spacing:.02em;opacity:.75;padding-right:62px}.ticket .streak.saved{display:inline-flex;align-items:center;gap:5px;text-transform:none;letter-spacing:.02em;padding-right:62px}.ticket .streak.saved svg{flex:none}.ticket .task{width:100%;display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;background:var(--paper);border:1.5px solid var(--ink-15);border-radius:9px;cursor:pointer;font-family:var(--font-ui);color:var(--ink);text-align:left;box-shadow:0 1.5px 0 var(--ink-15);transition:transform var(--dur-quick) var(--ease-press),box-shadow var(--dur-quick);box-sizing:border-box}.ticket .task:active{transform:translateY(1.5px);box-shadow:none}.ticket .task .tbody{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ticket .task .tname{font-size:14px;font-weight:700}.ticket .task .tsub{font-size:11.5px;color:var(--ink-45)}.ticket .task.mend{border-color:var(--hanko);border-style:dashed}.ticket .task.mend .tname{color:var(--hanko-strong)}.ticket.perfect .hanko{background:var(--hanko-strong);color:var(--paper-hi);opacity:1}.ticket .strip{display:flex;gap:5px;justify-content:center;margin-top:12px;padding-top:10px;border:none;border-top:2px dashed var(--paper-edge);background:none;width:100%;cursor:pointer;font:inherit}.ticket .strip:active{opacity:.7}.ticket .strip:focus-visible{outline:2px solid var(--hanko);outline-offset:3px;border-radius:4px}.stampday{width:14px;height:14px;border-radius:4px;border:1.5px solid var(--ink-15);background:transparent;transform:rotate(3deg)}.stampday.half{border-color:var(--hanko);background:transparent;box-shadow:inset 0 -6px 0 var(--hanko)}.stampday.full{border-color:var(--hanko);background:var(--hanko)}.stampday.today{border-color:var(--ink)}.hanko{position:absolute;top:12px;right:14px;width:52px;height:52px;border:2.5px solid var(--hanko);border-radius:10px;color:var(--hanko-strong);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(6deg);opacity:.9;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cfilter id='r'%3E%3CfeTurbulence baseFrequency='0.7' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.55 0.45'/%3E%3C/filter%3E%3Crect width='60' height='60' filter='url(%23r)'/%3E%3C/svg%3E");mask-size:cover;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cfilter id='r'%3E%3CfeTurbulence baseFrequency='0.7' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.55 0.45'/%3E%3C/filter%3E%3Crect width='60' height='60' filter='url(%23r)'/%3E%3C/svg%3E");-webkit-mask-size:cover}.hanko .no{font-size:9px;font-weight:700;letter-spacing:.14em}.hanko .day{font-family:var(--font-display);font-size:21px;font-weight:700;line-height:1}.plates-label{font-size:11px;font-weight:700;letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;color:var(--ink-45);margin-bottom:var(--space-3);animation:rise .5s .1s ease both}.plates{display:flex;flex-direction:column;gap:10px;width:100%;max-width:380px}.plate{display:flex;align-items:center;gap:14px;background:var(--paper-hi);border:1.5px solid var(--ink-15);border-radius:var(--radius-card);padding:13px 16px;cursor:pointer;text-align:left;color:var(--ink);font-family:var(--font-ui);box-shadow:0 2px 0 var(--ink-15);transition:transform var(--dur-quick) var(--ease-press),box-shadow var(--dur-quick),border-color var(--dur-quick);animation:rise .5s ease both}.plate:nth-child(1){animation-delay:.14s}.plate:nth-child(2){animation-delay:.18s}.plate:nth-child(3){animation-delay:.22s}.plate:nth-child(4){animation-delay:.26s}.plate:nth-child(5){animation-delay:.3s}.plate:active{transform:translateY(2px);box-shadow:0 0 0 var(--ink-15);border-color:var(--plate, var(--ink-45))}.plate:focus-visible,.ticket .task:focus-visible,.ogo:focus-visible,.olink:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.plate .mark{width:44px;height:44px;flex:none;border-radius:9px;border:1.5px solid var(--plate);display:flex;align-items:center;justify-content:center;padding:7px;box-sizing:border-box}.plate .mark svg{width:100%;height:100%}.plate .body{flex:1;min-width:0}.plate .eyebrow{font-size:9.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--plate-strong)}.plate .inprog{color:var(--hanko-strong)}.plate .name{font-family:var(--font-display);font-size:20px;font-weight:620;line-height:1.15;margin:1px 0}.plate .verb{font-size:12.5px;color:var(--ink-70);font-weight:500}.plate .chev{color:var(--ink-45);flex:none}.colophon{margin-top:var(--space-5);font-family:var(--font-display);font-style:italic;font-size:12px;color:var(--ink-45);text-align:center;max-width:300px;line-height:1.5;animation:rise .5s .34s ease both}.gpage.album .gmain{gap:6px}.ledger-rank{text-align:center;margin-top:4px}.ledger-rank .rank-name{font-family:var(--font-display);font-size:26px;font-weight:640;color:var(--ink)}.ledger-rank .rank-sub{font-size:12px;color:var(--ink-45);font-weight:600;margin-top:2px}.ledger-row3{display:flex;gap:10px;margin-top:12px;width:100%;max-width:360px}.ledger-row3 .stat{flex:1;background:var(--paper-hi);border:1.5px solid var(--ink-15);border-radius:9px;padding:10px 4px;text-align:center;display:flex;flex-direction:column;gap:1px}.ledger-row3 .stat b{font-family:var(--font-display);font-size:22px;color:var(--hanko)}.ledger-row3 .stat span{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-45)}.section-count{font-size:10px;letter-spacing:.04em;color:var(--ink-45);border:1px solid var(--ink-15);border-radius:999px;padding:1px 7px;margin-left:6px}.badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 8px;width:100%;max-width:380px}.badge{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.badge-seal{width:52px;height:52px;border-radius:50%;border:2px solid var(--ink-45);display:flex;align-items:center;justify-content:center;background:var(--paper-hi)}.badge.got .badge-seal{background:color-mix(in srgb,currentColor 8%,var(--paper-hi));box-shadow:0 1.5px 0 var(--ink-15)}.badge:not(.got) .badge-seal{border-style:dashed;opacity:.55}.badge-mark{width:58%;height:58%;display:inline-flex}.badge-mark svg{width:100%;height:100%}.badge-txt{font-family:var(--font-display);font-weight:700;font-size:17px}.badge-name{font-size:11.5px;font-weight:700;color:var(--ink);line-height:1.15}.badge:not(.got) .badge-name{color:var(--ink-70)}.badge-hint{font-size:9.5px;color:var(--ink-45);line-height:1.2}.album-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;max-width:360px}.album-cell{background:var(--paper-hi);border:1.5px solid var(--ink-15);border-radius:8px;padding:6px;display:flex;flex-direction:column;align-items:center;gap:4px}.miniart{display:grid;width:100%;aspect-ratio:1}.album-day{font-size:9.5px;font-weight:700;letter-spacing:.1em;color:var(--ink-45)}.rank-bar{width:100%;max-width:220px;height:6px;margin:8px auto 0;background:var(--ink-15);border-radius:999px;overflow:hidden}.rank-bar-fill{display:block;height:100%;background:var(--hanko);border-radius:999px;transition:width .5s cubic-bezier(.2,.8,.3,1)}.ledger-row3 .stat.zero b,.ledger-row3 .stat.zero span{color:var(--ink-15)}.badge{border:none;background:none;padding:0;cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent}.badge:active{transform:translateY(1px)}.badge:focus-visible{outline:2px solid var(--hanko);outline-offset:3px;border-radius:8px}.album-cell{cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent}.album-cell:active{transform:translateY(1px)}.album-cell:focus-visible{outline:2px solid var(--plate-inkling);outline-offset:2px}.detail-body{display:flex;flex-direction:column;align-items:center}.detail-seal{width:78px;height:78px}.detail-seal .badge-mark{width:56%;height:56%}.detail-art{width:148px;height:148px;padding:12px;background:var(--paper-hi);border:1.5px solid var(--ink-15);border-radius:12px}.miniart.big span{border-radius:1px}.detail-line{font-size:13.5px;color:var(--ink-70);margin:0 0 8px;line-height:1.4}.detail-status{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-45);margin:0}.detail-status.earned{color:var(--hanko)}.album-empty{font-family:var(--font-display);font-style:italic;font-size:13.5px;color:var(--ink-45);text-align:center;line-height:1.6;margin:8px 0 0}.ledger-table{width:100%;max-width:360px;display:flex;flex-direction:column;gap:6px;padding-bottom:20px}.ledger-line{display:flex;align-items:baseline;gap:10px;background:var(--paper-hi);border:1.5px solid var(--ink-15);border-left:3px solid var(--plate);border-radius:8px;padding:8px 12px;font-size:12px}.ledger-line .lname{font-family:var(--font-display);font-weight:640;font-size:14px;flex:none}.ledger-line .lnums{color:var(--ink-70);font-weight:700;flex:none}.ledger-line .lbests{color:var(--ink-45);margin-left:auto;text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hubbar .albumbtn,.hubbar .settingsbtn{position:absolute;top:calc(var(--safe-top) + 7px);width:38px;height:38px;border-radius:50%;border:1.5px solid var(--ink-15);background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer}.hubbar .settingsbtn{right:10px}.hubbar .albumbtn{right:54px}.hubbar .albumbtn:active,.hubbar .settingsbtn:active{background:var(--ink-15)}.hubbar .albumbtn:before,.hubbar .settingsbtn:before{content:"";position:absolute;top:50%;left:50%;width:48px;height:48px;transform:translate(-50%,-50%)}.hubbar .albumbtn:focus-visible,.hubbar .settingsbtn:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.onboard{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:var(--paper);color:var(--ink);font-family:var(--font-ui);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(var(--safe-top) + 24px) 30px calc(var(--safe-bottom) + 34px);text-align:center;box-sizing:border-box}.ocard{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:320px;animation:rise .4s ease both}.ocard h2{font-family:var(--font-display);font-weight:640;font-size:28px;margin:6px 0 0}.ocard p{font-size:15px;line-height:1.6;color:var(--ink-70);margin:0}.omarks{display:flex;gap:14px}.omarks span{width:40px;height:40px;display:block}.omarks svg{width:100%;height:100%}.ostamp{width:76px;height:76px;border:3px solid var(--hanko);border-radius:14px;color:var(--hanko-strong);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(6deg)}.ostamp .no{font-size:12px;font-weight:700;letter-spacing:.16em}.ostamp .day{font-family:var(--font-display);font-size:30px;font-weight:700;line-height:1}.odots{display:flex;gap:8px;margin-top:30px}.odot{width:9px;height:9px;border-radius:50%;background:var(--ink-15);border:0;padding:0;cursor:pointer}.odot.on{background:var(--ink);transform:scale(1.15)}.obtns{display:flex;align-items:center;gap:18px;margin-top:22px;min-height:46px}.olink{background:none;border:none;color:var(--ink-45);font-family:var(--font-ui);font-size:14px;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.ogo{padding:12px 34px;border-radius:999px;border:1.5px solid var(--ink);background:var(--ink);color:var(--paper-hi);font-family:var(--font-ui);font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 2px 0 var(--ink-15)}.ogo:active{transform:translateY(2px);box-shadow:none}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.game-back{position:fixed;top:calc(var(--safe-top) + 10px);left:12px;z-index:1000;width:42px;height:42px;border-radius:50%;border:1.5px solid var(--ink);background:var(--paper-hi);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 0 var(--ink-15);transition:transform var(--dur-quick) var(--ease-press),box-shadow var(--dur-quick)}.game-back:active{transform:translateY(2px);box-shadow:0 0 0 var(--ink-15)}.game-back:before{content:"";position:absolute;top:50%;left:50%;width:48px;height:48px;transform:translate(-50%,-50%)}.game-back:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.fb-text{width:100%;box-sizing:border-box;margin:12px 0 8px;min-height:100px;resize:vertical;border:1.5px solid var(--ink-15);border-radius:12px;padding:12px;font-family:var(--font-ui);font-size:15px;line-height:1.4;background:var(--paper-hi);color:var(--ink)}.fb-email{width:100%;box-sizing:border-box;margin-bottom:12px;border:1.5px solid var(--ink-15);border-radius:12px;padding:11px 12px;font-family:var(--font-ui);font-size:15px;background:var(--paper-hi);color:var(--ink)}.fb-text:focus,.fb-email:focus{outline:2px solid var(--hanko);outline-offset:-1px;border-color:transparent}.fb-note{font-family:var(--font-display);font-style:italic;font-size:13.5px;color:var(--ink-45);margin:2px 0 12px;line-height:1.5}.fb-actions{display:flex;gap:10px;justify-content:flex-end}.fb-send:disabled{opacity:.5;cursor:default}.fb-done{text-align:center;padding:8px 0 2px}.rate-actions{display:flex;gap:10px;margin-top:4px}.rate-actions .pill{flex:1}.pill.fb-send,.pill.rate-yes{background:var(--hanko);color:#fff;border-color:var(--hanko)}.pill.fb-send:disabled{opacity:.5}.gpage{height:100dvh;background:var(--paper);color:var(--ink);font-family:var(--font-ui);display:flex;flex-direction:column;align-items:center;padding:calc(var(--safe-top) + 58px) 14px 0;position:relative;overflow:hidden;box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.gpage,.demo-wrap,.plate,.appbar{--plate-strong: color-mix(in srgb, var(--ink) 35%, var(--plate, var(--ink)))}.gmain{flex:1 1 auto;min-height:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.gbottom{flex:none;width:100%;display:flex;flex-direction:column;gap:7px;align-items:center;padding:8px 0 calc(var(--safe-bottom) + 14px)}.pillrow{display:flex;gap:8px;max-width:100%;overflow-x:auto;padding:2px 4px 4px;scrollbar-width:none}.pillrow::-webkit-scrollbar{display:none}.pillrow .pill{flex:none;white-space:nowrap}.appbar{position:fixed;top:0;left:0;right:0;z-index:900;height:calc(var(--safe-top) + 52px);padding:var(--safe-top) 12px 0;display:flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--ink-15);box-sizing:border-box;font-family:var(--font-ui);color:var(--ink);pointer-events:none}.appbar .aback{pointer-events:auto}.appbar .aback{width:40px;height:40px;flex:none;border:none;border-radius:50%;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.appbar .aback:active{background:var(--ink-15)}.appbar .aback:before{content:"";position:absolute;top:50%;left:50%;width:48px;height:48px;transform:translate(-50%,-50%)}.appbar .atitle{display:flex;flex-direction:column;gap:1px;min-width:0}.appbar .aeyebrow{font-size:8.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--plate-strong, var(--ink-45))}.appbar .aname{font-family:var(--font-display);font-weight:640;font-size:18px;line-height:1.05;color:var(--ink)}.appbar-action{position:fixed;top:calc(var(--safe-top) + 7px);right:12px;z-index:901;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--ink-15);background:transparent;color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.appbar-action:active{background:var(--ink-15)}.appbar-action.second{right:58px}.share-opts{display:flex;flex-direction:column;gap:8px;margin:4px 0 12px}.share-opt{display:flex;flex-direction:column;gap:2px;text-align:left;width:100%;padding:12px 14px;min-height:48px;border:1.5px solid var(--ink-15);border-radius:var(--radius-card);background:var(--paper-hi);color:var(--ink);cursor:pointer;font-family:var(--font-ui)}.share-opt:active{background:var(--paper)}.share-opt:disabled{opacity:.55;cursor:default}.so-name{font-weight:700;font-size:15px}.so-sub{font-family:var(--font-display);font-style:italic;font-size:13px;color:var(--ink-45)}.share-note{margin:0 0 10px;font-family:var(--font-display);font-style:italic;font-size:13.5px;color:var(--ink-45);text-align:center}.appbar-action:before{content:"";position:absolute;top:50%;left:50%;width:48px;height:48px;transform:translate(-50%,-50%)}.gpage:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.5;background-image: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='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.33 0 0 0 0 0.28 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.gpage>:not(.appbar-action):not(.sheet):not(.sheet-scrim):not(.fall-bit):not(.helpfull):not(.btut){position:relative}.night{--paper: #10142a;--paper-hi: #1a1f3d;--paper-edge: #2c3358;--ink: #dfe4fa;--ink-70: rgba(223, 228, 250, .72);--ink-45: rgba(223, 228, 250, .55);--ink-15: rgba(223, 228, 250, .16);--ok: #8fca80;--ok-soft: #a7bf98;--plate-strong: color-mix(in srgb, var(--ink) 35%, var(--plate, var(--ink)));--hanko-strong: color-mix(in srgb, var(--ink) 35%, var(--hanko))}.gheader{text-align:center;margin:34px 0 4px;max-width:420px}.gheader .eyebrow{font-size:10px;font-weight:700;letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;color:var(--plate-strong)}.gheader .gtitle{font-family:var(--font-display);font-weight:640;font-size:34px;margin:1px 0 0;color:var(--ink);line-height:1.1}.gheader .gtagline{font-family:var(--font-display);font-style:italic;font-size:14px;color:var(--ink-70);margin:3px 0 0}.rules-link{background:none;border:none;color:var(--plate-strong);font-family:var(--font-ui);font-size:12.5px;font-weight:700;letter-spacing:.04em;cursor:pointer;text-decoration:underline;text-underline-offset:3px;margin-top:6px;padding:6px 10px}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#14162266;z-index:1100;animation:scrimIn var(--dur-quick) ease both}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:1101;background:var(--paper-hi);color:var(--ink);border-top:1.5px solid var(--ink);border-radius:18px 18px 0 0;padding:10px 22px calc(var(--safe-bottom) + 18px);max-height:62dvh;display:flex;flex-direction:column;box-sizing:border-box;animation:sheetUp var(--dur-settle) ease-out both;font-family:var(--font-ui)}.sheet .sbody{overflow-y:auto;min-height:0;flex:1 1 auto}.sheet .handle{width:40px;height:4px;border-radius:2px;background:var(--ink-15);margin:4px auto 12px}.sheet .sheet-title{font-family:var(--font-display);font-size:19px;font-weight:640;margin:0 0 10px}.sheet .line{display:flex;gap:12px;align-items:baseline;font-size:14px;line-height:1.5;margin:10px 0;color:var(--ink)}.sheet .line .no{font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--plate-strong);flex:none}.sheet .ok{flex:none;margin-top:12px;width:100%;min-height:48px;padding:12px;border-radius:var(--radius-pill);border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 2px 0 var(--ink-15);box-sizing:border-box;display:flex;align-items:center;justify-content:center}.sheet .ok:active{transform:translateY(2px);box-shadow:none}html,body{overscroll-behavior:none}.gpage{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.gpage button,.gpage [role=button],.appbar button,.appbar-action,.pill,.seg-btn,.picker-chip,.cellp,.cellc,.demo-cell{touch-action:manipulation}.picker-chip{align-self:center;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1.5px solid var(--plate, var(--ink));border-radius:var(--radius-pill);background:var(--paper-hi);color:var(--ink);font-family:var(--font-ui);cursor:pointer;box-shadow:0 1.5px 0 var(--ink-15)}.picker-chip:active{transform:translateY(1.5px);box-shadow:none}.picker-chip:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.picker-chip .pk-label{font-weight:700;font-size:14px;letter-spacing:.01em}.picker-chip .pk-chev{color:var(--ink-45);flex:none}.effort-meter{display:inline-flex;align-items:center;gap:2.5px}.effort-meter .drop{color:var(--ink-15);display:block}.effort-meter .drop.on{color:var(--plate, var(--hanko))}.picker-section{margin:4px 0 16px}.picker-section-label{font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-45);margin:0 0 8px}.seg{display:flex;flex-wrap:wrap;gap:6px}.seg-btn{flex:1 1 auto;min-width:52px;min-height:44px;padding:8px 10px;border:1.5px solid var(--ink-15);border-radius:10px;background:var(--paper-hi);color:var(--ink);font-family:var(--font-ui);font-weight:700;font-size:14px;cursor:pointer}.seg-btn.on{background:var(--plate-strong, var(--plate));color:var(--paper-hi);border-color:var(--plate-strong, var(--plate))}.seg-btn.deep:not(.on){color:var(--plate-inkling)}.seg-btn.gap{margin-left:12px}.seg-btn.off{opacity:.35;text-decoration:line-through;cursor:default}.seg-btn:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.picker-effort{display:flex;align-items:center;gap:10px;padding:12px 0 2px}.picker-effort .pe-text{font-family:var(--font-display);font-style:italic;font-size:13px;color:var(--ink-70);line-height:1.4}.demo-slot{margin:4px 0 14px}.demo-wrap{background:var(--paper);border:1.5px solid var(--ink-15);border-radius:10px;padding:14px 12px 10px;display:flex;flex-direction:column;align-items:center;gap:10px}.demo-board{display:grid;gap:4px;position:relative}.demo-cell{width:38px;height:38px;border:1.5px solid var(--ink-15);border-radius:7px;background:var(--paper-hi);display:flex;align-items:center;justify-content:center;box-sizing:border-box;transition:background var(--dur-settle),border-color var(--dur-settle),opacity var(--dur-settle)}.demo-cell.hl{border-color:var(--plate);background:color-mix(in srgb,var(--plate) 12%,var(--paper-hi))}.demo-cell.dim{opacity:.4}.demo-glyph{width:62%;height:62%;animation:demoPop .35s cubic-bezier(.2,1.6,.4,1)}.demo-glyph svg{width:100%;height:100%;display:block}.demo-num{font-family:var(--font-display);font-weight:700;font-size:17px;color:var(--ink)}.demo-num.good{color:var(--ok)}.demo-tap{position:absolute;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--ink) 28%,transparent);border:2px solid var(--ink-45);pointer-events:none;transform:translate(-50%,-50%);animation:demoTap 1.1s ease-in-out infinite;z-index:2}.demo-caption{font-family:var(--font-ui);font-size:12.5px;font-weight:600;color:var(--ink-70);text-align:center;min-height:32px;line-height:1.45;max-width:250px}.demo-dots{display:flex;gap:5px;align-items:center}.demo-dot{width:5px;height:5px;border-radius:50%;background:var(--ink-15)}.demo-dot.on{background:var(--plate)}.demo-wrap.walk{cursor:pointer;-webkit-tap-highlight-color:transparent}.demo-wrap.walk .demo-caption{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:15px;color:var(--ink);min-height:46px;max-width:262px;display:flex;align-items:center;justify-content:center}.demo-hint{font-family:var(--font-ui);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-45);min-height:15px;margin-top:-2px}.demo-wrap.walk .demo-dots{gap:0}.demo-wrap.walk .demo-dot{width:40px;height:30px;padding:0;border:none;background:none;cursor:pointer;position:relative;border-radius:6px}.demo-wrap.walk .demo-dot:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:var(--ink-15)}.demo-wrap.walk .demo-dot.on:after{background:var(--plate);width:8px;height:8px}.demo-wrap.walk .demo-dot:focus-visible{outline:2px solid var(--plate);outline-offset:0}.demo-back{min-height:40px;padding:4px 18px;margin-top:-4px;border:none;background:none;cursor:pointer;font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--ink-45)}.demo-back.hidden{visibility:hidden}.demo-back:active{color:var(--ink)}.sheet .ok.quiet{background:none;border-color:var(--ink-15);color:var(--ink-45);box-shadow:none}@keyframes demoPop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes demoTap{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.9}50%{transform:translate(-50%,-50%) scale(.72);opacity:.55}}.print-opt{display:flex;align-items:center;gap:11px;font-size:14px;font-weight:600;color:var(--ink);padding:9px 2px;cursor:pointer}.print-opt input{width:20px;height:20px;accent-color:var(--hanko)}.print-left{font-size:12.5px;color:var(--ink-45);font-weight:700;margin:6px 0 0}.print-msg{font-size:13px;color:var(--hanko-strong);margin:6px 0 0}.confirmsheet{max-height:none}.confirm-body{font-size:14px;line-height:1.5;color:var(--ink-70);margin:0 0 4px}.confirm-row{display:flex;gap:10px}.confirm-row .ok{flex:1}.confirm-row .ok.danger{border-color:var(--hanko);color:var(--hanko-strong)}.controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:14px}.pill{background:var(--paper-hi);color:var(--ink);border:1.5px solid var(--ink-15);border-radius:var(--radius-pill);padding:9px 15px;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-family:var(--font-ui);font-weight:700;cursor:pointer;box-shadow:0 2px 0 var(--ink-15);transition:transform var(--dur-quick) var(--ease-press),box-shadow var(--dur-quick),background var(--dur-quick),color var(--dur-quick)}.pill:active{transform:translateY(2px);box-shadow:none}.pill.active{background:var(--plate-strong);color:var(--paper-hi);border-color:var(--plate-strong)}.pill:disabled{opacity:.45;cursor:default}.win-stamp{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:10px 22px;border:2.5px solid var(--stamp, var(--plate));border-radius:12px;color:var(--stamp, var(--plate));transform:rotate(-3deg);animation:stampIn .45s var(--ease-press) both;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='r'%3E%3CfeTurbulence baseFrequency='0.55' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0.4'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23r)'/%3E%3C/svg%3E");mask-size:cover;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='r'%3E%3CfeTurbulence baseFrequency='0.55' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.6 0.4'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23r)'/%3E%3C/svg%3E");-webkit-mask-size:cover}.win-stamp .big{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:.02em}.win-stamp .small{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.appbar-action:focus-visible,.appbar .aback:focus-visible,.rules-link:focus-visible,.pill:focus-visible,.sheet .ok:focus-visible,.reward-btn:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.reward-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#14141e8c;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .25s ease both}.reward-card{background:var(--paper-hi);border:1.5px solid var(--ink-15);border-radius:18px;padding:26px 28px 20px;max-width:320px;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:0 12px 40px #00000059;animation:stampIn .45s var(--ease-press) both}.reward-eyebrow{font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-45)}.reward-seal{width:96px;height:96px;border-radius:50%;border:3px solid var(--hanko);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,currentColor 6%,var(--paper-hi));margin:4px 0}.reward-mark{width:56%;height:56%;display:inline-flex}.reward-mark svg{width:100%;height:100%}.reward-txt{font-family:var(--font-display);font-weight:700;font-size:34px}.reward-name{font-family:var(--font-display);font-weight:700;font-size:21px;color:var(--ink)}.reward-hint{font-family:var(--font-display);font-style:italic;font-size:13.5px;color:var(--ink-70)}.reward-btn{margin-top:12px;padding:10px 30px;min-height:48px;box-sizing:border-box;border-radius:var(--radius-pill);border:none;background:var(--hanko-strong);color:var(--paper-hi);font-family:var(--font-ui);font-weight:700;font-size:14px;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.whatsnew-notes{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:7px;width:100%;text-align:left}.whatsnew-notes li{font-family:var(--font-ui);font-size:13.5px;line-height:1.4;color:var(--ink-70);padding-left:15px;position:relative}.whatsnew-notes li:before{content:"·";position:absolute;left:2px;top:-1px;color:var(--ink-45);font-weight:700}.fall-bit{position:fixed;top:-20px;z-index:50;pointer-events:none;animation-name:fallBit;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes pageIn{0%{opacity:0}to{opacity:1}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}@keyframes stampIn{0%{transform:rotate(-3deg) scale(1.6);opacity:0}55%{transform:rotate(-3deg) scale(.94);opacity:1}to{transform:rotate(-3deg) scale(1);opacity:1}}@keyframes fallBit{0%{transform:translateY(-20px) rotate(0);opacity:.95}to{transform:translateY(105vh) rotate(320deg);opacity:.6}}.helpfull{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:var(--paper-hi);--hf-cell: var(--paper);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top)}.hf-top{flex:none;display:flex;align-items:center;justify-content:space-between;padding:16px 18px 6px}.hf-title{font-family:var(--font-display);font-style:italic;font-weight:600;font-size:20px;color:var(--ink)}.hf-x{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--ink-15);background:transparent;color:var(--ink-70);font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.hf-deck{flex:1 1 auto;min-height:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.hf-deck::-webkit-scrollbar{display:none}.hf-card{flex:0 0 100%;box-sizing:border-box;scroll-snap-align:center;padding:0 30px;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.hf-card::-webkit-scrollbar{display:none}.hf-cardin{margin:auto 0;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}.hf-ct{font-family:var(--font-display);font-weight:600;font-size:clamp(22px,6vw,27px);color:var(--ink);margin:0;text-wrap:balance}.hf-illus{margin:30px 0 26px;display:flex;justify-content:center;align-items:center;min-height:150px}.hf-cap{font-size:16px;line-height:1.6;color:var(--ink);max-width:32ch;margin:0}.hf-foot{flex:none;padding:6px 24px calc(18px + env(safe-area-inset-bottom))}.hf-nav{display:flex;align-items:center;justify-content:center;gap:18px;padding:6px 0 14px}.hf-dots{display:flex;gap:8px}.hf-dot{width:9px;height:9px;border-radius:50%;background:var(--ink-15);cursor:pointer;transition:background .2s,transform .2s}.hf-dot.on{background:var(--plate);transform:scale(1.25)}.hf-arw{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--ink-15);background:transparent;color:var(--ink);font-size:21px;cursor:pointer;display:flex;align-items:center;justify-content:center}.hf-arw:disabled{opacity:.28;cursor:default}.hf-cta{width:100%;border:0;border-radius:15px;background:var(--plate);color:#fff;font-family:var(--font-ui);font-weight:700;font-size:16px;padding:15px;cursor:pointer}@media(prefers-reduced-motion:reduce){.hf-dot{transition:none}}.hf-tryin{justify-content:center;text-align:center;gap:18px}.hf-try{width:100%;max-width:320px;border:0;border-radius:15px;background:var(--plate);color:#fff;font-family:var(--font-ui);font-weight:700;font-size:16px;padding:15px;cursor:pointer}.btut{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1180;display:flex;flex-direction:column;background:#16120e9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.btut-top{display:flex;align-items:center;justify-content:space-between;padding:14px 16px calc(14px + env(safe-area-inset-top,0px))}.btut-kicker{font-family:var(--font-ui);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:#f4ede2}.btut-x{width:40px;height:40px;border:0;border-radius:999px;background:#ffffff24;color:#fff;font-size:18px;cursor:pointer}.btut-stage{flex:1;display:flex;align-items:center;justify-content:center;min-height:0}.btut-card{background:var(--paper);border-radius:16px;padding:14px;box-shadow:0 18px 50px #0006}.btut-ring{position:fixed;border:3px solid var(--plate-bento, #c4502f);border-radius:8px;box-shadow:0 0 0 3px #c4502f47,0 0 18px #c4502f80;pointer-events:none;z-index:1181;animation:btut-pulse 1.15s ease-in-out infinite}.btut-ring.still{animation:none}.btut-cellspot{position:fixed;border-radius:6px;pointer-events:none;z-index:1181;box-shadow:inset 0 0 0 2.5px #c4502f8c}@keyframes btut-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.06);opacity:.72}}.btut-coach{background:var(--paper-hi);border-top:1px solid var(--paper-edge);padding:16px 20px calc(18px + env(safe-area-inset-bottom,0px));text-align:center}.btut-body{font-family:var(--font-ui);font-size:15.5px;line-height:1.5;color:var(--ink);max-width:460px;margin:0 auto}.btut-body b{color:var(--plate-bento, #c4502f)}.btut-skip{margin-top:10px;border:0;background:transparent;cursor:pointer;font-family:var(--font-ui);font-weight:600;font-size:13.5px;color:var(--ink-45);text-decoration:underline;text-underline-offset:3px}.btut-win{display:flex;flex-direction:column;align-items:center;gap:12px}.btut-done{background:var(--plate-bento, #c4502f);color:#fff;border-color:var(--plate-bento, #c4502f)}.btut-dots{display:flex;gap:7px;justify-content:center;margin-top:12px}.btut-dot{width:8px;height:8px;border-radius:999px;background:var(--ink-15);transition:background .2s}.btut-dot.on{background:var(--plate-bento, #c4502f)}@media(prefers-reduced-motion:reduce){.btut-ring{animation:none}}.gpage.settings .gmain{gap:4px;align-items:stretch}.set-group-label{font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-45);margin:16px 4px 8px}.set-card{background:var(--paper-hi);border:1.5px solid var(--ink-15);border-radius:var(--radius-card);overflow:hidden;flex-shrink:0}.set-row{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:14px;padding:13px 16px;background:none;border:none;border-bottom:1px solid var(--ink-15);cursor:pointer;text-align:left;color:var(--ink);font-family:var(--font-ui)}.set-row:focus-visible{outline:2px solid var(--hanko);outline-offset:-2px}.set-card .set-row:last-child{border-bottom:none}.set-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.set-label{font-size:15px;font-weight:600}.set-sub{font-size:12px;color:var(--ink-45)}.set-switch{flex:none;width:46px;height:28px;border-radius:999px;background:var(--ink-15);position:relative;transition:background var(--dur-quick)}.set-switch.on{background:var(--hanko)}.set-switch .knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--paper-hi);box-shadow:0 1px 2px #00000040;transition:transform var(--dur-quick) var(--ease-press)}.set-switch.on .knob{transform:translate(18px)}.set-about{padding:14px 16px}.about-name{font-family:var(--font-display);font-weight:640;font-size:18px}.about-line{font-size:13px;color:var(--ink-70);margin-top:2px}.about-note{font-family:var(--font-display);font-style:italic;font-size:12.5px;color:var(--ink-45);line-height:1.5;margin-top:8px}.about-copyright{font-size:11px;color:var(--ink-45);margin-top:10px}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px}.theme-cell{display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:none;cursor:pointer;padding:4px 2px;font-family:var(--font-ui);color:var(--ink);border-radius:10px}.theme-cell.locked{cursor:default}.theme-cell:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.theme-swatch{position:relative;width:100%;aspect-ratio:1.35;border-radius:9px;border:1.5px solid var(--ink-15);box-shadow:inset 0 1px 3px #0000001f;display:block}.theme-cell.active .theme-swatch{border-color:var(--plate-inkling);box-shadow:0 0 0 2px var(--plate-inkling)}.sw-ink{position:absolute;left:12%;bottom:16%;width:42%;height:30%;border-radius:4px}.sw-accent{position:absolute;right:14%;top:16%;width:26%;height:26%;border-radius:50%}.sw-lock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:18px;background:#00000052;border-radius:8px}.sw-check{position:absolute;top:3px;left:5px;font-size:13px;font-weight:800;color:color-mix(in srgb,var(--ink) 35%,var(--plate-inkling))}[data-theme=kraft] .sw-check{color:color-mix(in srgb,var(--ink) 70%,var(--plate-inkling))}[data-theme=freshink] .sw-check{color:color-mix(in srgb,var(--ink) 45%,var(--plate-inkling))}[data-theme=blueprint] .sw-check{color:color-mix(in srgb,var(--ink) 15%,var(--plate-inkling))}[data-theme=midnight] .sw-check{color:var(--plate-inkling)}.theme-cell.locked .theme-swatch{filter:saturate(.6) brightness(.95)}.theme-name{font-size:12.5px;font-weight:700}.theme-sub{font-size:10px;color:var(--ink-45);text-align:center;line-height:1.2}.set-data-msg{margin:8px 8px 0;font-size:12px;color:var(--ink-45)}.set-data-msg.error{color:var(--hanko-strong)}.set-danger{margin:22px 4px 0;padding:13px;min-height:48px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);border:1.5px solid var(--hanko);background:transparent;color:var(--hanko-strong);font-family:var(--font-ui);font-weight:700;font-size:14px;cursor:pointer}.set-danger:active{background:color-mix(in srgb,var(--hanko) 10%,transparent)}.set-danger:focus-visible{outline:2px solid var(--hanko);outline-offset:2px}.set-time{cursor:default;gap:10px}.set-time .set-text{flex:1 1 auto;min-width:0}.set-time .set-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.set-time input[type=time]{flex:0 0 auto;width:132px;box-sizing:border-box;font-family:var(--font-ui);font-size:15px;color:var(--ink);background:var(--paper);border:1.5px solid var(--ink-15);border-radius:8px;padding:6px 10px;color-scheme:light dark}.set-note{margin:0;padding:10px 16px 12px;font-size:12px;color:var(--ink-45)}.install-coach{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8000;background:var(--paper);display:flex;align-items:center;justify-content:center;padding:calc(var(--safe-top) + 20px) 22px calc(var(--safe-bottom) + 20px);overflow-y:auto}.ic-card{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;text-align:center}.ic-mast{font-family:var(--font-display);font-weight:600;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--hanko);margin-bottom:16px}.ic-icon{border-radius:20px;box-shadow:0 2px 12px #0000001f}.ic-title{font-family:var(--font-display);font-weight:640;font-size:24px;color:var(--ink);margin:18px 0 6px;line-height:1.15}.ic-sub{font-family:var(--font-display);font-style:italic;font-size:14.5px;color:var(--ink-70);margin:0 0 22px;line-height:1.45;max-width:300px}.ic-steps{width:100%;display:flex;flex-direction:column;gap:13px;margin-bottom:22px}.ic-step{display:flex;align-items:center;gap:14px;text-align:left}.ic-step-glyph{flex:none;width:44px;height:44px;border-radius:12px;border:1.5px solid var(--ink-15);background:var(--paper-hi);display:flex;align-items:center;justify-content:center;color:var(--ink)}.ic-step-text{font-family:var(--font-ui);font-size:14px;color:var(--ink);line-height:1.4}.ic-step-text b{font-weight:700}.ic-btn{min-height:48px;padding:12px 22px;width:100%;box-sizing:border-box;border-radius:var(--radius-pill);border:1.5px solid var(--ink);background:var(--paper-hi);color:var(--ink);font-family:var(--font-ui);font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 2px 0 var(--ink-15)}.ic-btn.primary{background:var(--hanko);color:var(--paper-hi);border-color:var(--hanko)}.ic-btn:active{transform:translateY(2px);box-shadow:none}.ic-or{display:flex;align-items:center;gap:12px;width:100%;margin:18px 0 12px;color:var(--ink-45)}.ic-or:before,.ic-or:after{content:"";flex:1;height:1px;background:var(--ink-15)}.ic-or span{font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.ic-peek{width:100%;box-sizing:border-box;min-height:48px;padding:12px 22px;background:none;border:1.5px solid var(--ink-15);border-radius:var(--radius-card, 14px);cursor:pointer;font-family:var(--font-ui);font-weight:700;font-size:15px;color:var(--ink)}.ic-peek:active{transform:translateY(2px)}.ic-peek-sub{font-family:var(--font-display);font-style:italic;font-size:12px;color:var(--ink-45);margin:8px 0 0;line-height:1.45;max-width:300px}.ic-note{font-family:var(--font-display);font-style:italic;font-size:12px;color:var(--ink-45);margin:4px 0 0;line-height:1.45;max-width:300px}.rotate-notice{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:var(--paper)}@media(orientation:landscape)and (max-height:500px){.rotate-notice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:0 32px}}.rotate-glyph{color:var(--ink);margin-bottom:6px}.rotate-title{margin:0;font-family:var(--font-display);font-size:19px;font-weight:600;color:var(--ink)}.rotate-sub{margin:0;font-family:var(--font-ui);font-size:13.5px;color:var(--ink-45)}
