:root{--ink:#3b2a22;--paper:#f8eeda;--card:#fffaf0;--line:#d6c3a3;--soft:#5a463a;--mute:#7d6a5c;--amber:#e2a23f;--rust:#a8501f;--leaf:#4f7a55;--hand:"Hannotate TC", "HanziPen TC", "Hannotate SC", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--sans:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;--wobble:255px 18px 225px 18px / 18px 225px 18px 255px;--wobble-soft:26px 18px 24px 16px / 18px 24px 16px 26px;--grain: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' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 .3 0 0 0 0 .2 0 0 0 0 .12 .55 0 0 0 -.25'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--lift:3px 4px 0 #3b2a2247}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--sans);background:#efe1c4;margin:0;font-size:16px;line-height:1.6}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;border:2px solid var(--ink);background:var(--card);color:var(--ink);border-radius:var(--wobble);padding:7px 16px}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--amber);outline-offset:2px}button.primary{background:var(--ink);color:var(--paper);font-weight:700}a{color:var(--rust)}.room{min-height:100dvh;position:relative;overflow:hidden}.scene{pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.gate,.clock,.panel,.dialog,.status,.brand{background-color:var(--paper);background-image:var(--grain);border:2px solid var(--ink);box-shadow:var(--lift)}.gate{border-radius:var(--wobble-soft);flex-direction:column;gap:12px;max-width:440px;margin:11vh auto 0;padding:30px;display:flex;position:relative}.gate h1{font-family:var(--hand);margin:0;font-size:36px;line-height:1.2}.gate-sub{color:var(--soft);margin:0 0 8px}.gate label{color:var(--rust);letter-spacing:.08em;font-size:14px;font-weight:700}.gate input,.panel input[type=url],.panel textarea,.dialog input{border:2px solid var(--ink);border-radius:var(--wobble-soft);background:var(--card);width:100%;padding:11px 14px}.gate-note{color:var(--mute);margin:4px 0 0;font-size:14px}.last-time{border-left:5px solid var(--amber);color:var(--soft);background:#e2a23f29;border-radius:4px 14px 14px 4px;padding:10px 14px;font-size:14px}.last-time p{margin:0}.last-time strong{font-family:var(--hand);color:var(--ink);font-size:16px}.closed{text-align:center;align-items:center}.press{background:var(--card);border-radius:50%;width:148px;height:148px;padding:10px;animation:.7s cubic-bezier(.2,.9,.3,1) both press}@keyframes press{0%{opacity:0;transform:scale(1.7)rotate(-14deg)}60%{opacity:1;transform:scale(.94)rotate(2deg)}to{transform:scale(1)rotate(0)}}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:16px 20px;display:flex;position:relative}.brand{font-family:var(--hand);border-radius:var(--wobble);padding:4px 14px;font-size:18px;font-weight:700;transform:rotate(-1.2deg)}.tag{font-family:var(--sans);color:var(--mute);margin-left:8px;font-size:12px;font-weight:400}.status{border-radius:var(--wobble);align-items:center;gap:8px;padding:5px 14px;font-size:14px;display:flex}.status span{color:var(--rust);white-space:nowrap;font-weight:700}.status input{width:min(52vw,280px);font-family:var(--hand);background:0 0;border:0;font-size:16px}.clock{text-align:left;border-radius:var(--wobble-soft);width:fit-content;margin:3vh 0 0 20px;padding:18px 26px 16px;position:relative;transform:rotate(-.8deg)}.clock:before{content:"";background:#e2a23fbf;width:84px;height:24px;position:absolute;top:-13px;left:50%;transform:translate(-50%)rotate(-3deg)}.clock p{margin:0}.phase{letter-spacing:.3em;color:var(--rust);justify-content:space-between;align-items:baseline;gap:24px;font-size:14px;font-weight:700;display:flex}.is-break .phase{color:var(--leaf)}.nowtime{letter-spacing:.06em;font-variant-numeric:tabular-nums;color:var(--mute);font-size:15px;font-weight:400}.time{font-variant-numeric:tabular-nums;font-family:Georgia,Times New Roman,serif;font-size:clamp(56px,7vw,88px);font-weight:700;line-height:1.1}.hint{font-family:var(--hand);color:var(--soft);font-size:16px}.screen{border:7px solid var(--ink);width:320px;max-width:calc(100vw - 40px);height:200px;box-shadow:var(--lift);background:#2b2530;border-radius:16px 14px 18px 12px;place-items:center;display:grid;position:fixed;bottom:84px;left:20px;overflow:hidden}.screen p{font-family:var(--hand);text-align:center;color:#c9b9a6;margin:0;padding:0 24px;font-size:15px}.screen iframe{border:0;width:100%;height:100%}.dock{flex-wrap:wrap;justify-content:center;gap:10px;padding:16px;display:flex;position:fixed;bottom:0;left:0;right:0}.dock button{background-color:var(--paper);background-image:var(--grain);box-shadow:var(--lift);font-family:var(--hand);font-size:17px}.dock button:nth-child(odd){transform:rotate(-1deg)}.dock button:nth-child(2n){transform:rotate(.8deg)}.dock button.on{background:var(--ink);color:var(--paper)}.dock button.leave{border-style:dashed;margin-left:12px}.panel{border-radius:var(--wobble-soft);width:min(400px,100vw - 32px);padding:24px;position:fixed;top:16px;bottom:84px;right:16px;overflow-y:auto}.panel h2,.dialog h2{font-family:var(--hand);margin:0 0 12px;font-size:28px}.dialog h3,.panel h3{letter-spacing:.08em;color:var(--rust);margin:14px 0 0;font-size:13px;font-weight:700}.panel .close{border-radius:50%;width:36px;height:36px;padding:0;font-size:20px;line-height:1;position:absolute;top:14px;right:14px}.panel input[type=url],.panel textarea{resize:vertical}.panel textarea{font-family:var(--hand);font-size:17px}.panel form,.panel fieldset{flex-direction:column;gap:8px;display:flex}.panel fieldset{border:0;margin:0 0 16px;padding:0}.panel legend,.panel label,.dialog label{color:var(--soft);font-size:14px}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.muted{color:var(--mute)}.small,.count{color:var(--mute);font-size:13px}.count.over,.error{color:#9b2c1f}.error{margin:4px 0;font-size:14px}.tabs,.chips{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.tabs button[aria-selected=true],.chips button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.wall,.log{flex-direction:column;gap:14px;margin:16px 0;padding:0;list-style:none;display:flex}.note{border:2px solid var(--ink);box-shadow:var(--lift);background:#fde7a0;border-radius:4px 16px 14px 18px/4px 14px 18px 16px;padding:14px 16px}.note:nth-child(odd){transform:rotate(-.6deg)}.note:nth-child(2n){transform:rotate(.5deg)}.note.mood{background:#f3d3c2}.note.plainnote{background:var(--card);box-shadow:none}.note p{font-family:var(--hand);font-size:17px}.note p,.log p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.note time,.log time{color:var(--mute);font-size:12px}.note .actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.note .actions button{border-width:1.5px;padding:3px 12px;font-size:13px}.note .actions button.quiet{color:var(--mute);background:0 0;border-color:#0000;margin-left:auto}.log li{border-bottom:2px dashed var(--line);padding-bottom:12px}.month{font-family:var(--hand);justify-content:space-between;align-items:center;margin:12px 0;font-size:18px;display:flex}.month button{border-radius:50%;width:36px;height:36px;padding:0}.grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.wd{text-align:center;color:var(--mute);font-size:12px}.cell{aspect-ratio:1;border:1.5px dashed var(--line);border-radius:50%;place-items:center;display:grid}.cell .num{color:#a8978a;font-size:13px}.stamp{width:100%;height:100%}.slider,.check,.url{align-items:center;gap:8px;margin:12px 0;display:flex}.url{flex-direction:column;align-items:stretch}.slider input{accent-color:var(--rust);flex:1}.check input{accent-color:var(--rust)}.veil{background:#3b2a2273;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog{border-radius:var(--wobble-soft);flex-direction:column;gap:10px;width:min(480px,100%);max-height:calc(100dvh - 32px);padding:28px;display:flex;overflow-y:auto}.dialog>*{flex-shrink:0}.dialog p{margin:0}.dialog label,.dialog .row{margin-top:12px}ul.plain{font-family:var(--hand);margin:0;padding-left:1.2em;font-size:17px}ul.plain.small{max-height:140px;font-size:15px;overflow-y:auto}.stats{flex-direction:column;gap:8px;margin:8px 0;display:flex}.stats div{border-bottom:2px dashed var(--line);padding-bottom:8px}.stats dt{color:var(--mute);font-size:13px}.stats dd{margin:0}.rain{animation:1.3s linear infinite fall}@keyframes fall{0%{transform:translate(0)}to{transform:translate(-90px,480px)}}.snow{animation:7s linear infinite snowfall}@keyframes snowfall{0%{transform:translate(0)}to{transform:translate(24px,460px)}}.clouds{animation:90s ease-in-out infinite alternate cloud-drift}@keyframes cloud-drift{0%{transform:translate(-50px)}to{transform:translate(60px)}}.steam{animation:4.2s ease-in-out infinite steam}@keyframes steam{0%{opacity:0;transform:translateY(6px)}40%{opacity:1}to{opacity:0;transform:translateY(-10px)}}.drip{animation:3.6s ease-in infinite drip}@keyframes drip{0%,55%{opacity:0;transform:translateY(0)}60%{opacity:1}to{opacity:0;transform:translateY(112px)}}.cat-breathe,.cat-tail{transform-box:fill-box}.cat-breathe{transform-origin:50% 100%;animation:4.5s ease-in-out infinite cat-breathe}@keyframes cat-breathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.06)}}.cat-tail{transform-origin:0 100%;animation:5s ease-in-out infinite cat-tail}@keyframes cat-tail{0%,to{transform:rotate(0)}50%{transform:rotate(-14deg)}}.cat-blink{animation:6s step-end infinite cat-blink}@keyframes cat-blink{0%,94%,to{opacity:1}96%{opacity:0}}@media (prefers-reduced-motion:reduce){.rain,.snow,.clouds,.steam,.drip,.cat-breathe,.cat-tail,.cat-blink,.press{animation:none}}.tasks{flex-direction:column;gap:8px;margin:4px 0;padding:0;list-style:none;display:flex}.tasks li{background:var(--card);border:2px solid var(--line);border-radius:var(--wobble-soft);flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 12px;display:flex}.tasks li.current{border-color:var(--ink);background:#fde7a0}.tasks li.done .text{color:var(--mute);text-decoration:line-through}.tasks li.muted{border-style:dashed}.tasks .text{font-family:var(--hand);overflow-wrap:anywhere;flex:140px;font-size:17px}.tasks .actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tasks button,.suggest button{border-width:1.5px;padding:3px 12px;font-size:13px}.tasks button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.tasks button.quiet{color:var(--mute);background:0 0;border-color:#0000}.tasks input[type=checkbox]{width:18px;height:18px;accent-color:var(--leaf)}.suggest{color:var(--mute);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.suggest button{font-family:var(--hand);border-style:dashed;font-size:15px}.addrow{gap:8px;display:flex}.addrow input{border:2px solid var(--ink);border-radius:var(--wobble-soft);background:var(--card);flex:1;min-width:0;padding:9px 14px}p.last-time{margin:0}.timeline{border-left:3px solid var(--line);flex-direction:column;gap:8px;margin:4px 0;padding:0 0 0 14px;list-style:none;display:flex}.timeline li{flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.timeline time{font-variant-numeric:tabular-nums;color:var(--rust);font-size:13px}.timeline .text{font-family:var(--hand);overflow-wrap:anywhere;flex:120px;font-size:16px}.meta{font-family:var(--sans);color:var(--mute);font-size:12px}.struck{color:var(--mute)}.ask{background-color:#fde7a0;background-image:var(--grain);border:2px solid var(--ink);width:fit-content;max-width:min(340px,100vw - 40px);box-shadow:var(--lift);border-radius:4px 18px 16px 20px/4px 16px 20px 18px;margin:14px 0 0 20px;padding:14px 40px 12px 18px;position:relative;transform:rotate(.6deg)}.ask p{font-family:var(--hand);margin:0 0 8px;font-size:17px}.ask .chips{margin:0}.ask .chips button{padding:4px 14px;font-size:14px}.ask .close{width:28px;height:28px;color:var(--mute);background:0 0;border-color:#0000;padding:0;line-height:1;position:absolute;top:6px;right:6px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sr-only:focus-visible{clip-path:none;width:auto;height:auto}.cat{cursor:pointer;pointer-events:all}.cat-eyes{transform:translate(calc(var(--look-x,0) * 1px), calc(var(--look-y,0) * 1px));transition:transform .25s ease-out}.cat-twitch{transform-box:fill-box;transform-origin:50% 100%;animation:.5s ease-in-out 2 cat-twitch}@keyframes cat-twitch{0%,to{transform:rotate(0)}40%{transform:rotate(-9deg)scaleY(1.08)}}.heart{transform-box:fill-box;transform-origin:50%;animation:1.6s ease-out infinite heart}@keyframes heart{0%{opacity:0;transform:translateY(8px)scale(.6)}30%{opacity:1}to{opacity:0;transform:translateY(-34px)scale(1.05)}}@media (prefers-reduced-motion:reduce){.cat-twitch,.heart{animation:none}.cat-eyes{transition:none}}.ring{width:min(240px,100%);margin:10px auto 6px;display:block}.ring-hour{font-family:var(--sans);fill:var(--mute);font-size:9px}.ring-main{font-family:var(--hand);fill:var(--ink);font-size:21px}.ring-sub{font-family:var(--sans);fill:var(--mute);font-size:11px}.ring-key{gap:4px;margin:4px 0 10px;padding:0;list-style:none;display:grid}.ring-key li{align-items:baseline;gap:8px;font-size:14px;display:flex}.ring-key i{border:1.5px solid var(--ink);border-radius:50%;flex:none;width:12px;height:12px;transform:translateY(1px)}.ring-key .text{overflow-wrap:anywhere;flex:1}button.cell{border:1.5px solid var(--line);font:inherit;background:0 0;border-radius:50%;padding:0}button.cell .num{color:var(--ink)}button.cell.picked{border:2.5px solid var(--ink);background:var(--card)}.daypage{border-top:2px dashed var(--line);margin-top:14px;padding-top:12px}.daypage h3{font-family:var(--hand);letter-spacing:0;color:var(--ink);margin:0;font-size:20px}.daypage h4{letter-spacing:.08em;color:var(--rust);margin:12px 0 0;font-size:13px;font-weight:700}.export{margin-top:14px}.export .chips{margin:6px 0}a.btn{border:2px solid var(--ink);background:var(--card);color:var(--ink);border-radius:var(--wobble);padding:7px 16px;text-decoration:none;display:inline-block}.board{background:#2f3b35;background-image:var(--grain);outline:2px solid var(--ink);width:300px;max-width:calc(100vw - 40px);box-shadow:var(--lift);color:#f1ece0;font-family:var(--hand);border:8px solid #8a5a3a;border-radius:6px 9px 7px 10px;padding:12px 16px 14px;position:fixed;top:78px;right:20px;transform:rotate(.5deg)}.board h2{letter-spacing:.12em;color:#e9c98a;border-bottom:1.5px dashed #f1ece047;justify-content:space-between;align-items:baseline;margin:0 0 4px;padding-bottom:3px;font-size:13px;font-weight:400;display:flex}.board-here-open{color:inherit;font:inherit;letter-spacing:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted #e9c98a8c;text-decoration:underline dotted #e9c98a8c}.board-here-open:hover,.board-here-open:focus-visible{color:#fff3cf}.board h2 span{font-family:var(--sans);letter-spacing:0;color:#f1ece099;font-size:11px}.board ul{margin:0 0 10px;padding:0;list-style:none}.board ul:last-child{margin-bottom:0}.board li{align-items:baseline;gap:8px;padding:2px 0;font-size:15px;line-height:1.35;display:flex}.board li b,.board .who{color:#a9d3bd;white-space:nowrap;flex:none;width:4.4em;font-weight:400;overflow:hidden}.board li.me b{color:#f3c9a8}.board li span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.board-here span{color:#f1ece0d1}.board-done{min-height:127px;animation:.9s board-turn}.board-done li.fresh .what{color:#fff7d6;animation:1.6s chalk}.board-empty{color:#f1ece08c;margin:4px 0 0;font-size:14px}.board .pat{color:#f1ece099;font-family:var(--sans);background:0 0;border:0;border-radius:10px;flex:none;padding:0 6px;font-size:13px;line-height:1.4}.board .pat:hover,.board .pat.on{color:#ffb4a0}.board .pats{flex:none;align-items:center;display:inline-flex}.words{display:inline-flex;position:relative}.board .words-more{color:#f1ece08c;font-family:var(--sans);background:0 0;border:0;padding:0 4px;font-size:13px;line-height:1.4}.board .words-more:hover,.board .words-more[aria-expanded=true]{color:#ffb4a0}.words-menu{z-index:6;border:2px solid var(--ink,#3b2a22);white-space:nowrap;background:#f8eeda;border-radius:10px;flex-wrap:wrap;gap:4px;width:max-content;max-width:250px;padding:5px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #28190f40}.words-menu button{color:#3b2a22;font-family:var(--sans);background:#fffaf0;border:1.5px solid #3b2a2259;border-radius:999px;padding:3px 9px;font-size:13px;line-height:1.4}.words-menu button.on{background:#f6d9c4;border-color:#c2603a}.words-menu button.quiet{color:#7d6a5c;background:0 0;border-color:#0000}.note .actions{position:relative}.note .words{position:static}.note .words-menu{width:auto;max-width:100%;left:0;right:auto}@keyframes board-turn{0%{opacity:.25}}@keyframes chalk{0%{opacity:0;letter-spacing:.2em}}.digest{background:var(--card);border:1.5px dashed var(--soft);border-radius:var(--wobble-soft);width:fit-content;max-width:min(340px,100vw - 40px);font-family:var(--hand);color:var(--soft);margin:12px 0 0 24px;padding:8px 14px;font-size:15px;animation:1.2s board-turn}.digest p{margin:0}.ask form{gap:6px;display:grid}.ask label{font-family:var(--hand);font-size:17px}.ask input{border:1.5px solid var(--ink);border-radius:var(--wobble-soft);background:var(--card);width:min(280px,70vw);font-family:var(--hand);padding:5px 10px;font-size:16px}.ask form p{margin:0}.note .patted{color:var(--rust);align-self:center;font-size:13px}.note .actions button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.keeps{gap:10px;margin:6px 0 0;padding:0;list-style:none;display:grid}.keeps li{border:1.5px solid var(--ink);background:#f3d3c2;border-radius:3px 12px 10px 14px/3px 10px 14px 12px;padding:12px 30px 8px 14px;position:relative;transform:rotate(-.7deg)}.keeps li:nth-child(2n){background:#fde7a0;transform:rotate(.6deg)}.keeps li:before{content:"";background:#e2a23fbf;width:54px;height:14px;position:absolute;top:-7px;left:38%;transform:rotate(-3deg)}.keeps p{font-family:var(--hand);margin:0;font-size:15px}.keeps button{color:var(--mute);background:0 0;border:0;padding:0 7px;position:absolute;top:2px;right:2px}@media (prefers-reduced-motion:reduce){.board-done,.board-done li.fresh .what,.digest{animation:none}}button.tag{cursor:pointer;background:0 0;border:0;padding:0 2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.screen,.panel{bottom:120px}.offdesk{color:var(--mute);margin:6px 0;font-size:13px}.offdesk summary{cursor:pointer}.offdesk button{color:var(--rust);background:0 0;border:0;padding:0 6px;font-size:12px;text-decoration:underline}.board-note{color:#ffe9a8;border-top:1.5px dashed #f1ece047;margin-top:10px;padding-top:6px;font-size:14px;animation:1.2s board-turn}.board-note p{margin:0}@media (prefers-reduced-motion:reduce){.thing{transition:none}.board-note{animation:none}}.room{background:#6e4c3a;height:100dvh;min-height:0}.roomscroll{position:fixed;inset:0;overflow:hidden}.stagewrap{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.room.narrow .roomscroll{overflow:auto hidden}.room.narrow .stagewrap{position:relative;top:auto;left:auto;overflow:hidden;transform:none}.stage{width:1600px;height:900px;transform:scale(var(--s,1));transform-origin:0 0;pointer-events:none;position:absolute;top:0;left:0}.stage>:not(.scene){pointer-events:auto}.scene{width:1600px;height:900px;position:absolute;inset:0;overflow:visible}.obj{pointer-events:all;cursor:pointer;outline:none}.obj-art{transform-box:fill-box;transform-origin:bottom;transition:transform .18s}.obj:hover .obj-art,.obj:focus-visible .obj-art,.obj.on .obj-art{transform:translateY(-6px)rotate(-1.2deg)}.obj-label{opacity:0;pointer-events:none;transition:opacity .25s}.obj:hover .obj-label,.obj:focus-visible .obj-label,.scene.hint .obj-label{opacity:1}.obj:focus-visible .obj-label rect{stroke:#e2a23f;stroke-width:4px}.stage .clock{width:286px;margin:0;padding:16px 22px 14px;position:absolute;top:62px;left:198px}.stage .clock .time{font-size:68px}.stage .clock .hint{font-size:14px}.stage .board{width:292px;max-width:none;position:absolute;top:56px;left:1128px;right:auto}.stage .screen{width:calc(300px * var(--k,1));height:calc(218px * var(--k,1));max-width:none;position:absolute;bottom:262px;left:auto;right:180px;transform:rotate(-.6deg)}.nowcard{background-color:var(--card);background-image:var(--grain);border:2px solid var(--ink);width:360px;box-shadow:0 5px 0 -2px var(--card), 0 5px 0 0 var(--ink), 0 10px 0 -4px var(--card), 0 10px 0 -2px var(--ink), 5px 16px 0 #3b2a2240;border-radius:5px 14px 3px 3px/5px 12px 3px 3px;gap:2px;padding:10px 18px 0;display:grid;position:absolute;top:694px;left:640px;transform:rotate(-1deg)}.nowcard label{letter-spacing:.1em;color:var(--rust);font-size:12px;font-weight:700}.nowcard .nowhead{justify-content:space-between;align-items:baseline;display:flex}.switch{position:relative}.switch-open{box-shadow:none;color:var(--mute);text-underline-offset:3px;background:0 0;border:0;padding:0 2px;font-size:12px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.switch-open:hover,.switch-open[aria-expanded=true]{color:var(--ink)}.switch-menu{z-index:8;background-color:var(--card);background-image:var(--grain);border:2px solid var(--ink);border-radius:8px;gap:6px;width:300px;padding:12px 14px;display:grid;position:absolute;bottom:calc(100% + 10px);right:-10px;box-shadow:4px 6px #3b2a2240}.switch-menu p{margin:0}.switch-list{flex-wrap:wrap;gap:6px;display:flex}.switch-list button{border-radius:999px;padding:3px 10px;font-size:14px}.switch-menu form{gap:4px;display:grid}.switch-menu .row{gap:6px;display:flex}.nowcard .switch-menu input{flex:1;min-width:0;font-size:16px}.nowcard input{border:0;border-bottom:1.5px dashed var(--line);width:100%;font-family:var(--hand);background:0 0;padding:2px 0;font-size:22px}.nowcard .under{color:var(--mute);background:0 0;border:0;justify-self:end;padding:2px 4px 6px;font-size:12px}.nowcard .under:hover,.nowcard .under.on{color:var(--ink);text-decoration:underline}.stage .ask{width:340px;max-width:none;margin:0;position:absolute;top:auto;bottom:216px;left:668px}.top{pointer-events:none;padding:8px 12px;position:fixed;inset:auto 0 0 auto}.top>*{pointer-events:auto}.brand{opacity:.7;box-shadow:none;padding:1px 8px;font-size:12px;transform:none}.panel.from-desk{border-bottom:0;border-radius:22px 18px 0 0/18px 22px 0 0;width:min(580px,100vw - 24px);max-height:min(74dvh,660px);animation:.28s from-desk;inset:auto auto 0 50%;transform:translate(-50%);box-shadow:0 -6px #3b2a222e}.panel.from-wall{outline:2px solid var(--ink);background-color:#c9a06c;border-width:6px;border-color:#8a5a3a;border-radius:8px;width:min(380px,100vw - 32px);max-height:calc(70dvh - 16px);animation:.28s from-wall;inset:30dvh auto auto 16px}.panel.from-wall h2{color:var(--ink)}.panel.from-wall .muted{color:#4a362b}.panel.from-page{width:min(520px,100vw - 24px);max-height:calc(100dvh - 48px);inset:50% auto auto 50%;transform:translate(-50%,-50%)}@keyframes from-desk{0%{opacity:0;transform:translate(-50%,40px)}}@keyframes from-wall{0%{opacity:0;transform:translate(-30px)}}.gate{z-index:1}@media (prefers-reduced-motion:reduce){.obj-art,.obj-label{transition:none}.panel.from-desk,.panel.from-wall{animation:none}}.tv{width:calc(300px * var(--k,1) + 28px);background:#e9dcc0;background-image:var(--grain);border:3px solid var(--ink);border-radius:22px 18px 20px 16px/18px 22px 16px 20px;padding:14px 14px 8px;position:absolute;bottom:96px;left:196px;transform:rotate(-.8deg);box-shadow:5px 7px #3b2a2247}.tv:before,.tv:after{content:"";background:var(--ink);border-radius:0 0 6px 6px;width:16px;height:12px;position:absolute;bottom:-13px}.tv:before{left:34px}.tv:after{right:34px}.tv-ears{width:116px;height:58px;fill:var(--ink);stroke:var(--ink);stroke-width:3px;stroke-linecap:round;margin-left:-58px;position:absolute;top:-58px;left:50%}.tv-screen{width:calc(300px * var(--k,1));height:calc(204px * var(--k,1));border:3px solid var(--ink);background:#2b2530;border-radius:16px 12px 14px;overflow:hidden}.tv-screen iframe{border:0;width:100%;height:100%;display:block}.tv-idle{color:#f1e3cc;width:100%;height:100%;font-family:var(--hand);background:radial-gradient(circle at 50% 45%,#4a4258 0,#2b2530 70%);border:0;border-radius:0;place-content:center;justify-items:center;gap:4px;padding:0;font-size:22px;display:grid}.tv-idle .tv-note{color:#e9c98a;font-size:40px;line-height:1;animation:3.6s ease-in-out infinite sway}.tv-strip{justify-content:space-between;align-items:center;gap:12px;padding:7px 4px 0;display:flex}.tv-grille{background:repeating-linear-gradient(90deg, var(--ink) 0 2px, transparent 2px 8px);opacity:.45;flex:1;height:16px}.tv-knob{border:2.5px solid var(--ink);background:#fffaf0;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid;box-shadow:2px 2px #3b2a224d}.tv-knob svg{fill:#fffaf0;width:20px;height:20px;stroke:var(--ink);stroke-width:2px;stroke-linecap:round}.tv-knob:hover,.tv.on .tv-knob{background:var(--amber)}.tv.on .tv-knob svg,.tv-knob:hover svg{fill:var(--amber)}.tv-label{font-family:var(--hand);color:#4a362b;white-space:nowrap;opacity:0;pointer-events:none;background:#fffaf0;border:2px solid #4a362b;border-radius:4px;padding:2px 12px;font-size:16px;transition:opacity .25s;position:absolute;top:-34px;left:50%;transform:translate(-50%)rotate(-2deg)}.tv:hover .tv-label,.tv:focus-within .tv-label,.room.hinting .tv-label{opacity:1}@keyframes sway{50%{transform:translateY(-5px)rotate(6deg)}}@media (prefers-reduced-motion:reduce){.tv-idle .tv-note{animation:none}.tv-label{transition:none}}.tv:not(.playing){width:208px;padding:11px 11px 6px}.tv:not(.playing) .tv-screen{width:180px;height:122px}.tv:not(.playing) .tv-idle{font-size:18px}.tv:not(.playing) .tv-idle .tv-note{font-size:30px}.tv:not(.playing) .tv-ears{width:88px;height:44px;margin-left:-44px;top:-44px}.tv:not(.playing) .tv-knob{width:28px;height:28px}.tv:not(.playing) .tv-knob svg{width:16px;height:16px}.nowcard{padding:9px 18px 0;top:690px}.nowcard.pile-0{box-shadow:5px 9px #3b2a2240}.nowcard.pile-1{box-shadow:0 5px 0 -2px var(--card), 0 5px 0 0 var(--ink), 5px 12px 0 #3b2a2240}.nowcard .jot input{color:var(--soft);border:0;padding:4px 0 3px;font-size:15px}.nowcard .jot input::placeholder{color:#b3a292}.nowcard .tear{border-top:2px dashed var(--line);justify-content:space-between;gap:12px;margin:2px -18px 0;padding:4px 14px 5px;display:flex}.nowcard .tear button{font-family:var(--hand);color:var(--mute);background:0 0;border:0;border-radius:4px;padding:1px 4px;font-size:14px}.nowcard .tear button:not(:disabled):hover{color:var(--ink);background:#e2a23f40}.nowcard .tear button:first-child:not(:disabled){color:var(--leaf)}.nowcard{padding-bottom:12px;box-shadow:5px 9px #3b2a2240}.nowcard.pile-1,.nowcard.pile-2{margin-bottom:0;box-shadow:5px 16px #3b2a2238}.nowcard .jot input{width:calc(100% - 34px)}.dogear{background:linear-gradient(135deg, #e6d6b8 0 48%, var(--ink) 48% 53%, transparent 53%);clip-path:none;border:0;border-radius:0;width:40px;height:40px;padding:0;transition:width .15s,height .15s;position:absolute;bottom:-2px;right:-2px}.dogear:after{content:"";background:linear-gradient(135deg, transparent 0 53%, var(--desk,#b07a52) 53%);width:100%;height:100%;position:absolute;bottom:0;right:0}.dogear:not(:disabled):hover,.dogear:focus-visible{width:54px;height:54px}.dogear:disabled{opacity:.35}.pile{border:2px solid var(--ink);background:var(--card);height:11px;box-shadow:none;z-index:-1;border-top:0;border-radius:0 0 4px 4px;padding:0;position:absolute;bottom:-13px;left:4px;right:30px}.nowcard.pile-2 .pile{box-shadow:3px 5px 0 -1px var(--card), 3px 5px 0 1px var(--ink)}.pile:hover,.pile:focus-visible{background:#fde7a0}.nowcard .tip{font-family:var(--hand);color:#4a362b;white-space:nowrap;opacity:0;pointer-events:none;background:#fffaf0;border:2px solid #4a362b;border-radius:4px;padding:2px 10px;font-size:15px;transition:opacity .2s;position:absolute;bottom:calc(100% + 6px);right:0;transform:rotate(-2deg)}.pile .tip{inset:calc(100% + 8px) auto auto 8px}.dogear:not(:disabled):hover .tip,.dogear:focus-visible .tip,.pile:hover .tip,.pile:focus-visible .tip,.room.hinting .nowcard .tip{opacity:1}@media (prefers-reduced-motion:reduce){.dogear,.nowcard .tip{transition:none}}.stage .clock .clockface{border-radius:inherit;background:0 0;border:0;padding:0;position:absolute;inset:0}.stage .clock .clockface:hover,.stage .clock.on .clockface{background:#e2a23f1f}.stage .clock .tip{font-family:var(--hand);color:#4a362b;white-space:nowrap;opacity:0;pointer-events:none;background:#fffaf0;border:2px solid #4a362b;border-radius:4px;padding:2px 10px;font-size:15px;transition:opacity .2s;position:absolute;bottom:-16px;left:50%;transform:translate(-50%)rotate(-2deg)}.stage .clock .clockface:hover .tip,.stage .clock .clockface:focus-visible .tip,.room.hinting .stage .clock .tip{opacity:1}.stage .rhythm{background-color:var(--card);background-image:var(--grain);border:2px solid var(--ink);border-radius:var(--wobble-soft);width:300px;box-shadow:var(--lift);z-index:2;gap:10px;padding:14px 16px;display:grid;position:absolute;top:250px;left:210px}.rhythm p{color:var(--soft);margin:0;font-size:13px}.rhythm .chips{margin:0}.rhythm .chips button{font-family:var(--hand);padding:4px 12px}.rhythm .custom{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.rhythm .custom input{border:1.5px solid var(--ink);background:#fffaf0;border-radius:6px;width:52px;margin:0 4px;padding:3px 6px}.rhythm .custom button{padding:3px 10px;font-size:13px}.rhythm .quiet{color:var(--rust);background:0 0;border:0;justify-self:start;padding:0;font-size:13px;text-decoration:underline}.jots{font-family:var(--hand);color:var(--soft);flex-basis:100%;margin:2px 0 0;padding-left:1.1em;font-size:14px;list-style:"– "}.ontask{color:var(--rust);margin-bottom:2px;font-size:12px;display:block}.board-here li.resting span{color:#f1ece080}.filepick{border:2px solid var(--ink);border-radius:var(--wobble);background:var(--card);cursor:pointer;padding:7px 16px;display:inline-block;position:relative}.filepick input{opacity:0;cursor:pointer;position:absolute;inset:0}.confirm{border:2px dashed var(--rust);border-radius:var(--wobble-soft);margin:8px 0;padding:10px 12px}.tv-btn,.tv-ch{border:2px solid var(--ink);height:28px;font-family:var(--sans);background:#fffaf0;border-radius:8px;flex:none;place-items:center;padding:0 6px;font-size:12px;font-weight:700;display:grid}.tv-btn{width:30px}.tv-btn svg{width:14px;height:14px;fill:var(--ink);stroke:var(--ink);stroke-width:2.5px;stroke-linejoin:round}.tv-btn:hover,.tv-ch:hover{background:var(--amber)}.tv-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--hand);color:var(--soft);flex:1;font-size:14px;overflow:hidden}.channels{gap:6px;margin:6px 0;padding:0;list-style:none;display:grid}.channels li{align-items:center;gap:6px;display:flex}.ch-pick{text-align:left;border-width:1.5px;flex:1;align-items:center;gap:10px;min-width:0;padding:6px 12px;display:flex}.channels li.on .ch-pick{color:#f1e3cc;background:#2b2530}.ch-no{font-family:var(--sans);flex:none;font-size:12px;font-weight:700}.ch-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--hand);flex:1;overflow:hidden}.ch-state{color:#e9c98a;flex:none;font-size:12px}.channels .quiet{color:var(--mute);background:0 0;border:0;padding:2px 8px}.reel{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;max-height:260px;margin:6px 0;padding:0;list-style:none;display:grid;overflow-y:auto}.reel button{border:2px solid var(--line);background:#2b2530;border-radius:6px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.reel button[aria-pressed=true]{border-color:var(--amber);box-shadow:0 0 0 2px var(--amber)}.reel img{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;display:block}.reel span{color:#fff;background:#0009;border-radius:4px;padding:0 5px;font-size:11px;position:absolute;bottom:3px;left:4px}.gate.door{z-index:2}.door-rules{color:var(--soft);margin:0;padding-left:1.2em;font-size:14px}.captcha{min-height:65px}button.link{box-shadow:none;color:var(--rust);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.bind{flex-direction:column;gap:6px;margin:8px 0;display:flex}.bind .addrow{gap:8px;display:flex}.bind .addrow input{flex:1;min-width:0}.bindprompt{border-top:1px dashed var(--line);margin-top:8px;padding-top:12px}.tour-ring{z-index:30;border:3px dashed var(--amber);border-radius:var(--wobble-soft);pointer-events:none;animation:1.6s ease-in-out infinite tour-glow;position:absolute;box-shadow:0 0 0 6px #e2a23f40}.stage>.tour-ring{pointer-events:none}@keyframes tour-glow{50%{box-shadow:0 0 0 12px #e2a23f1f}}.tour-card{z-index:31;width:calc(320px * var(--k,1));background-color:var(--card);background-image:var(--grain);border:2px solid var(--ink);border-radius:var(--wobble-soft);box-shadow:var(--lift);font-size:calc(15px * var(--k,1));padding:14px 18px;position:absolute;transform:rotate(-.5deg)}.tour-card h3{font-family:var(--hand);margin:0 0 4px;font-size:1.3em}.tour-card p{margin:0 0 10px}.tour-card .tour-step{color:var(--mute);margin:0;font-size:.8em}.tour-card .row{justify-content:flex-end;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){.tour-ring{animation:none}}.tour-card.wide{width:calc(460px * var(--k,1))}.tour-card .tour-try{color:var(--rust);font-size:.9em}a.button{border:2px solid var(--ink);background:var(--card);color:var(--ink);border-radius:var(--wobble);padding:7px 16px;text-decoration:none;display:inline-block}.board-seats{color:#f1ece0b3;margin:6px 0 0;font-size:13px}.seat-ask{margin:10px 0 2px;font-weight:700}.seatlinks,.shareday{border-top:1px dashed var(--line);margin-top:10px;padding-top:10px}.seatlinks .row,.shareday{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.donelist{border-top:1px dashed var(--line);margin-top:16px;padding-top:12px}.donelist input[type=search]{border:2px solid var(--line);border-radius:var(--wobble-soft);background:var(--card);width:100%;margin:4px 0 10px;padding:6px 10px}.donelist h4{color:var(--mute);margin:10px 0 4px;font-size:14px}.donelist li{align-items:baseline;gap:8px;padding:2px 0;display:flex}.donelist li .link{flex:none}.mini-offer{border-top:1px dashed var(--line);margin-top:10px;padding-top:10px}body.mini-body{background:var(--paper);background-image:var(--grain);height:100vh;margin:0;overflow:hidden}.mini{box-sizing:border-box;flex-direction:column;gap:2px;height:100vh;padding:10px 14px;display:flex}.mini-phase{letter-spacing:.2em;color:var(--rust);margin:0;font-size:13px;font-weight:700}.mini.is-break .mini-phase{color:var(--leaf)}.mini-time{margin:0;font-family:Georgia,Times New Roman,serif;font-size:46px;font-weight:700;line-height:1.1}.mini-card{background:var(--card);border:2px solid var(--ink);border-radius:var(--wobble-soft);align-items:center;gap:8px;margin-top:auto;padding:6px 8px;font-size:14px;display:flex}.mini-card span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.mini-card button{flex:none;padding:2px 10px;font-size:13px}.board .sim{vertical-align:2px;color:#f1ece0cc;border:1px solid #a9d3bd99;border-radius:4px;margin-left:2px;padding:0 3px;font-size:10px;font-style:normal;line-height:1.4;display:inline-block}.sill-thing{pointer-events:all;cursor:default;outline:none}.sill-thing .sill-ring{stroke:#0000;stroke-width:3px}.sill-thing:focus-visible .sill-ring{stroke:#e2a23f}.sill-pick{grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0 4px;display:grid}.sill-pick button{border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:6px 4px 4px;font-size:12px;display:flex}.sill-pick button.on{background:#f6d9c4;border-color:#c2603a}.here-list{margin:10px 0;padding:0;list-style:none}.here-list li{border-bottom:1px dashed #3b2a2233;align-items:center;gap:10px;padding:6px 0;display:flex}.here-list li b{flex:none;min-width:3.5em}.here-list li span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.here-list li.resting span{color:#7d6a5c}.here-list li.pick{display:block}.sill-thing{animation:1s both sill-in}.sill-thing.leaving{pointer-events:none;animation:1.1s forwards sill-out}.sill-thing[role=button]{cursor:pointer}@keyframes sill-in{0%{opacity:0}}@keyframes sill-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){.sill-thing{animation:none}.sill-thing.leaving{opacity:0;animation:none}}.note:has(.words-menu){z-index:4;position:relative}.board-done li:has(.words-menu){z-index:4;position:relative}
