@charset "UTF-8";:root{--bg: #f5f1ea;--bg-deep: #ece7dd;--surface: #fffdf8;--surface-2: #f3efe6;--ink: #35312a;--ink-soft: #7a7468;--ink-faint: #a49c8d;--line: rgba(70, 60, 40, .13);--line-strong: rgba(70, 60, 40, .22);--accent: oklch(.56 .09 168);--accent-strong: oklch(.48 .09 168);--accent-soft: oklch(.92 .045 168);--accent-ink: #ffffff;--danger: oklch(.56 .13 25);--warn: oklch(.62 .1 75);--note-mint: #a9d9c4;--note-sky: #a3cdf2;--note-lilac: #c7b8ec;--note-butter: #ffe18d;--note-blush: #f5bbcb;--note-peach: #f9c89f;--note-ink: #3b362c;--note-ink-soft: rgba(59, 54, 44, .62);--shadow-paper: 0 1px 2px rgba(70, 55, 30, .1), 0 5px 12px rgba(70, 55, 30, .09);--shadow-paper-lift: 0 2px 4px rgba(70, 55, 30, .12), 0 14px 28px rgba(70, 55, 30, .16);--shadow-card: 0 1px 2px rgba(70, 55, 30, .07), 0 3px 8px rgba(70, 55, 30, .06);--shadow-sheet: 0 -8px 32px rgba(50, 40, 20, .16);--radius-s: 8px;--radius-m: 14px;--radius-l: 22px;--font-ui: "Nunito", "Helvetica Neue", sans-serif;--font-hand: "Caveat", cursive;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}[data-theme=dark]{--bg: #211e19;--bg-deep: #1a1814;--surface: #2c2822;--surface-2: #353026;--ink: #f0ebe0;--ink-soft: #aaa08e;--ink-faint: #7c7466;--line: rgba(240, 230, 205, .13);--line-strong: rgba(240, 230, 205, .24);--accent: oklch(.72 .1 168);--accent-strong: oklch(.79 .1 168);--accent-soft: oklch(.34 .045 168);--accent-ink: #1c2a25;--shadow-paper: 0 1px 2px rgba(0, 0, 0, .35), 0 5px 14px rgba(0, 0, 0, .32);--shadow-paper-lift: 0 2px 4px rgba(0, 0, 0, .4), 0 14px 30px rgba(0, 0, 0, .45);--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 3px 8px rgba(0, 0, 0, .25);--shadow-sheet: 0 -8px 32px rgba(0, 0, 0, .5)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:16px;-webkit-font-smoothing:antialiased}app-root{display:block;height:100%}button{font-family:var(--font-ui);border:none;background:none;color:inherit;cursor:pointer;padding:0}input,textarea,select{font-family:var(--font-ui);color:var(--ink)}.app-frame{height:100%;display:flex;flex-direction:column;overflow:hidden}.app-scroll{flex:1;overflow-y:auto;padding:16px 16px calc(28px + var(--safe-bottom));-webkit-overflow-scrolling:touch}.app-inner{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:14px;min-height:100%}.app-inner.wide{max-width:640px}@media(min-width:1024px){.app-inner.wide{max-width:1080px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:var(--radius-m);font-size:16px;font-weight:800;letter-spacing:.01em;transition:transform .12s ease,box-shadow .12s ease,background .15s ease,opacity .15s;-webkit-user-select:none;user-select:none;text-decoration:none}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-card)}.btn-primary:hover{background:var(--accent-strong)}.btn-secondary{background:var(--surface);border:1.5px solid var(--line-strong);color:var(--ink)}.btn-secondary:hover{border-color:var(--ink-faint)}.btn-ghost{color:var(--ink-soft);font-weight:700;min-height:44px;padding:0 14px;border-radius:var(--radius-s)}.btn-ghost:hover{background:var(--surface-2);color:var(--ink)}.btn-danger{background:color-mix(in oklab,var(--danger) 12%,var(--surface));color:var(--danger)}.btn[disabled]{opacity:.45;pointer-events:none}.btn-block{width:100%}.btn-sm{min-height:38px;padding:0 14px;font-size:14px;border-radius:10px}.sticky{position:relative;background:linear-gradient(180deg,#ffffff6b,#fff0 22%),var(--note-c, var(--note-butter));color:var(--note-ink);border-radius:4px 4px 10px;padding:12px 14px 14px;box-shadow:var(--shadow-paper);font-family:var(--font-hand);font-size:21px;line-height:1.15;font-weight:600;transform:rotate(var(--tilt, -1.2deg));transition:transform .18s ease,box-shadow .18s ease;text-wrap:pretty;word-break:break-word}.sticky:hover{transform:rotate(0) scale(1.02);box-shadow:var(--shadow-paper-lift);z-index:2}.sticky .sticky-meta{display:flex;align-items:center;gap:6px;margin-top:10px;font-family:var(--font-ui);font-size:11.5px;font-weight:800;color:var(--note-ink-soft);letter-spacing:.02em}.sticky.sticky-hidden{background:repeating-linear-gradient(-45deg,rgba(59,54,44,.06) 0 6px,transparent 6px 12px),var(--note-c, var(--note-butter));color:transparent}.sticky.sticky-hidden .sticky-meta{color:var(--note-ink-soft)}.pcard{position:relative;width:var(--pcard-w, 64px);aspect-ratio:5/7;border-radius:10px;background:var(--surface);border:1.5px solid var(--line);box-shadow:var(--shadow-card);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:calc(var(--pcard-w, 64px) * .42);color:var(--ink);-webkit-user-select:none;user-select:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s}.pcard .pip{position:absolute;top:5px;left:7px;font-size:calc(var(--pcard-w, 64px) * .17);font-weight:800;color:var(--ink-faint)}.pcard .pip-b{inset:auto 7px 5px auto;transform:rotate(180deg)}.pcard.sel{border-color:var(--accent);box-shadow:0 0 0 2.5px var(--accent),var(--shadow-paper-lift);transform:translateY(-10px);color:var(--accent-strong)}.pcard-back{background:radial-gradient(circle at 1.5px 1.5px,color-mix(in oklab,var(--accent) 55%,transparent) 1.5px,transparent 1.6px) 0 0/9px 9px,var(--accent-soft);border-color:color-mix(in oklab,var(--accent) 30%,var(--line))}.flip{perspective:700px}.flip-inner{position:relative;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.34,1.3,.5,1)}.flip.revealed .flip-inner{transform:rotateY(180deg)}.flip .face{backface-visibility:hidden;-webkit-backface-visibility:hidden}.flip .face-front{position:relative}.flip .face-back{position:absolute;inset:0;transform:rotateY(180deg)}.avatar{width:var(--av, 34px);height:var(--av, 34px);border-radius:50%;background:var(--member-c, var(--note-butter));color:var(--note-ink);display:inline-flex;align-items:center;justify-content:center;font-size:calc(var(--av, 34px) * .4);font-weight:900;letter-spacing:.01em;flex:none;position:relative;box-shadow:inset 0 -2px #3b362c24}.avatar .dot{position:absolute;right:-1px;bottom:-1px;width:calc(var(--av, 34px) * .3);height:calc(var(--av, 34px) * .3);border-radius:50%;background:#4caf7d;border:2px solid var(--bg)}.avatar .dot.off{background:var(--ink-faint)}.chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;border-radius:999px;background:var(--surface-2);color:var(--ink-soft);font-size:13px;font-weight:800}.field{width:100%;min-height:50px;border-radius:var(--radius-m);border:1.5px solid var(--line-strong);background:var(--surface);padding:12px 16px;font-size:16px;font-weight:700;outline:none;transition:border-color .15s,box-shadow .15s}.field:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 22%,transparent)}.field::placeholder{color:var(--ink-faint);font-weight:600}.field[disabled]{opacity:.6}.seg{display:flex;background:var(--surface-2);border-radius:12px;padding:3px;gap:2px}.seg>button{flex:1;min-height:38px;border-radius:9px;font-size:14px;font-weight:800;color:var(--ink-soft);transition:background .15s,color .15s,box-shadow .15s;white-space:nowrap;padding:0 12px}.seg>button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);box-shadow:var(--shadow-card)}.queue-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:11px 12px;border-radius:14px;border:1.5px solid transparent;transition:background .15s,border-color .15s}.queue-item:hover{background:var(--surface-2)}.queue-item.cur{border-color:var(--accent);background:var(--accent-soft)}.queue-item[disabled]{cursor:default}.est-badge{flex:none;min-width:34px;height:34px;border-radius:9px;padding:0 6px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;background:var(--surface-2);color:var(--ink-faint);border:1.5px dashed var(--line-strong)}.est-badge.done{background:var(--accent);color:var(--accent-ink);border:none}.sheet-veil{position:fixed;inset:0;background:#19140c73;z-index:60;animation:veil-in .2s ease;display:flex;align-items:flex-end;justify-content:center}@keyframes veil-in{0%{opacity:0}}.sheet{width:100%;max-width:560px;background:var(--surface);border-radius:var(--radius-l) var(--radius-l) 0 0;box-shadow:var(--shadow-sheet);padding:10px 20px calc(22px + var(--safe-bottom));animation:sheet-up .28s cubic-bezier(.2,.9,.3,1);max-height:86vh;overflow:auto}@keyframes sheet-up{0%{transform:translateY(40px);opacity:.4}}.sheet-grab{width:40px;height:4px;border-radius:2px;background:var(--line-strong);margin:4px auto 14px}@media(min-width:760px){.sheet-veil{align-items:center;padding:24px}.sheet{border-radius:var(--radius-l);animation:pop-in .22s cubic-bezier(.2,.9,.3,1)}@keyframes pop-in{0%{transform:scale(.96) translateY(10px);opacity:0}}}.h1{font-size:27px;font-weight:900;letter-spacing:-.015em;margin:0}.h2{font-size:20px;font-weight:900;letter-spacing:-.01em;margin:0}.h3{font-size:16px;font-weight:900;margin:0}.sub{font-size:14.5px;font-weight:700;color:var(--ink-soft);margin:0;line-height:1.45;text-wrap:pretty}.micro{font-size:12px;font-weight:800;color:var(--ink-faint);letter-spacing:.06em;text-transform:uppercase;margin:0}.toast{position:fixed;left:50%;bottom:calc(90px + var(--safe-bottom));transform:translate(-50%);background:var(--ink);color:var(--bg);font-size:14px;font-weight:800;padding:10px 18px;border-radius:999px;box-shadow:var(--shadow-paper-lift);z-index:80;animation:toast-in .25s cubic-bezier(.2,.9,.3,1);white-space:nowrap}@keyframes toast-in{0%{transform:translate(-50%,12px);opacity:0}}.color-row{display:flex;gap:10px;flex-wrap:wrap}.color-swatch{width:44px;height:44px;border-radius:50%;border:3px solid transparent;box-shadow:inset 0 -3px #3b362c26;transition:transform .12s}.color-swatch.sel{border-color:var(--ink);transform:scale(1.1)}.join-wait-row{display:flex;align-items:center;gap:10px;padding:9px 4px}.reveal-btn-pulse{animation:pulse-ring 1.2s ease-out infinite}@keyframes drop-in{0%{transform:translateY(-14px) scale(.7);opacity:0}60%{transform:translateY(2px) scale(1.05);opacity:1}to{transform:translateY(0) scale(1);opacity:1}}@keyframes wiggle{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}@keyframes pulse-ring{0%{box-shadow:0 0 color-mix(in oklab,var(--accent) 45%,transparent)}to{box-shadow:0 0 0 12px transparent}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:4px}::-webkit-scrollbar-track{background:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
