:root{--paper:#f4ecdd;--paper-deep:#ebe0c9;--paper-ground:#e3d6bd;--card:#faf5ea;--ink:#2f2a24;--ink-soft:#5c5348;--ink-faint:#8a7f70;--vermillion:#b5502f;--vermillion-deep:#9a3f22;--vermillion-soft:#b5502f1f;--indigo:#2c4a4a;--indigo-soft:#2c4a4a1a;--gold:#b8944f;--line:#2f2a2424;--line-strong:#2f2a2447;--stamp-text:#fbf3e6;--danger:#8f2f2f;--shadow:0 10px 30px #2f2a2424;--serif:"Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;--sans:"Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif}@media (prefers-color-scheme:dark){:root{--paper:#221e1a;--paper-deep:#2b2622;--paper-ground:#17140f;--card:#2e2924;--ink:#efe6d4;--ink-soft:#c4b8a4;--ink-faint:#8f8474;--vermillion:#d47450;--vermillion-deep:#e08a68;--vermillion-soft:#d474502e;--indigo:#9dbfbb;--indigo-soft:#9dbfbb24;--gold:#d2b26e;--line:#efe6d424;--line-strong:#efe6d44d;--danger:#e39b9b;--shadow:0 10px 30px #00000073}}*{box-sizing:border-box}html{background:var(--paper-ground)}body{background:var(--paper-ground);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.7}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--vermillion);outline-offset:2px}a{color:var(--vermillion-deep)}.stage{justify-content:center;align-items:stretch;min-height:100dvh;display:flex}.phone{background:var(--paper);width:100%;max-width:430px;min-height:100dvh;box-shadow:var(--shadow);background-image:radial-gradient(at 20% 0,#ffffff59,#0000 55%),repeating-linear-gradient(0deg,#2f2a2405 0 1px,#0000 1px 3px);flex-direction:column;display:flex;position:relative}@media (width>=480px){.stage{align-items:flex-start;padding:28px 0}.phone{border-radius:28px;min-height:calc(100dvh - 56px);overflow:hidden}}.top{z-index:5;background:var(--paper);border-bottom:1px solid var(--line);padding:calc(14px + env(safe-area-inset-top)) 18px 10px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid;position:sticky;top:0}.stamp{background:var(--vermillion);width:38px;height:38px;color:var(--stamp-text);font-family:var(--serif);letter-spacing:.02em;border-radius:3px;place-items:center;font-size:15px;font-weight:700;line-height:1;display:grid;transform:rotate(-4deg);box-shadow:inset 0 0 0 2px #ffffff47}.top h1{font-family:var(--serif);letter-spacing:.08em;margin:0;font-size:20px;font-weight:700;line-height:1.2}.season{color:var(--ink-soft);letter-spacing:.04em;margin:2px 0 0;font-size:12px}.season b{color:var(--indigo);font-weight:700}.pill{letter-spacing:.12em;border:1px solid var(--line-strong);color:var(--ink-soft);background:0 0;border-radius:999px;padding:4px 10px;font-size:11px;text-decoration:none}.views{padding-bottom:calc(84px + env(safe-area-inset-bottom));flex:1}.section{padding:16px 18px 4px}.section h2{font-family:var(--serif);letter-spacing:.06em;text-wrap:balance;margin:0 0 10px;font-size:17px;font-weight:700}.eyebrow{letter-spacing:.16em;color:var(--ink-faint);margin:0 0 4px;font-size:11px}.note{color:var(--ink-soft);margin:0;font-size:12.5px}.fine{color:var(--ink-faint);font-size:12px}.error{color:var(--danger);margin:6px 0 0;font-size:13px}.ok{color:var(--indigo);margin:6px 0 0;font-size:13px}.btn{border:1px solid var(--line-strong);color:inherit;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:7px 16px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.btn.primary{background:var(--vermillion);border-color:var(--vermillion);color:var(--stamp-text)}.btn.primary:hover{background:var(--vermillion-deep);border-color:var(--vermillion-deep)}.btn.small{padding:5px 12px;font-size:13px}.btn:disabled{opacity:.5;cursor:default}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}.field{margin:0 0 12px;display:block}.field span{color:var(--ink-soft);letter-spacing:.06em;margin-bottom:4px;font-size:12px;display:block}.field input,.field textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);letter-spacing:.04em;border-radius:10px;padding:10px 12px}.field textarea{resize:vertical;min-height:84px}.field input.digits{font-family:var(--serif);letter-spacing:.4em;text-align:center;font-size:26px}.avatar{background:var(--indigo-soft);width:36px;height:36px;color:var(--indigo);font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.avatar.owner{background:var(--vermillion);color:var(--stamp-text)}.tag{color:var(--vermillion);vertical-align:1px;border:1px solid;border-radius:3px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:500}.empty{color:var(--ink-faint);border:1px dashed var(--line-strong);border-radius:8px;padding:10px 12px;font-size:13px}.tabs{background:var(--paper);border-top:1px solid var(--line);width:100%;max-width:430px;padding:6px 4px calc(8px + env(safe-area-inset-bottom));z-index:6;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}@media (width>=480px){.tabs{max-width:none;position:absolute;left:0;transform:none}}.tab{color:var(--ink-faint);letter-spacing:.04em;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:4px 0;font-size:11px;text-decoration:none;display:flex}.tab svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.tab.on{color:var(--vermillion-deep)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
