:root{--wax:#fbf8f1;--ink:#2b2318;--ink-soft:#6e6153;--honey:#d98e04;--honey-deep:#a96c00;--forage:#4a6741;--brood:#b4552d;--line:#e5dccb;--card:#fff}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--ink);background:#efeae0;font-family:Zen Kaku Gothic New,system-ui,sans-serif;font-size:15px;line-height:1.65}button{cursor:pointer;font-family:inherit}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:2px solid var(--honey);outline-offset:2px}.phone{background:var(--wax);flex-direction:column;max-width:430px;height:100dvh;margin:0 auto;display:flex;box-shadow:0 0 40px #2b23181f}.notice{justify-content:center;gap:14px;padding:32px 24px}.notice h1{font-family:Shippori Mincho,serif;font-size:21px;line-height:1.5}.notice p{color:var(--ink-soft)}.wordmark{letter-spacing:.06em;font-family:Shippori Mincho,serif;font-size:20px;font-weight:700}.wordmark span{color:var(--honey)}.top{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:baseline;padding:14px 18px 10px;display:flex}.meta{color:var(--ink-soft);text-align:right;font-size:11.5px;line-height:1.4}.meta b{color:var(--ink)}.staff{background:var(--forage);color:#fff;border-radius:99px;margin-left:6px;padding:0 7px;font-size:10.5px;display:inline-block}.chat{flex-direction:column;flex:1;gap:12px;padding:16px 14px 8px;display:flex;overflow-y:auto}.msg{flex-direction:column;gap:6px;max-width:86%;display:flex}.msg.bee{align-self:flex-start}.msg.human{align-self:flex-end;align-items:flex-end}.bubble{white-space:pre-wrap;word-break:break-word;border-radius:18px;padding:11px 14px}.bee .bubble{background:linear-gradient(160deg,#fff6e3,#ffefc9);border:1px solid #efd9a0;border-top-left-radius:6px;font-family:Shippori Mincho,serif;font-size:15.5px;font-weight:600;line-height:1.75}.human .bubble{background:var(--ink);color:var(--wax);border-top-right-radius:6px}.msg.voice{align-self:flex-start}.voice .bubble{color:var(--ink);background:#f4f1ea;border:1px dashed #b8ae98;border-top-left-radius:6px;font-size:14px;line-height:1.7}.voice .who{color:var(--forage);font-weight:700}.human img{border:1px solid var(--line);border-radius:14px;max-width:220px}.who{color:var(--ink-soft);padding:0 4px;font-size:11px}.received{flex-wrap:wrap;gap:5px;display:flex}.chip{color:var(--forage);background:#e7efe4;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:700}.chip.next{color:var(--honey-deep);background:#fff3d6}.thinking .bubble{color:var(--ink-soft);font-family:inherit}.dots:after{content:"·";animation:1.2s step-end infinite d}@keyframes d{0%{content:"·"}33%{content:"··"}66%{content:"···"}}@media (prefers-reduced-motion:reduce){.dots:after{content:"···";animation:none}}.chip.ask{color:#5b2e91;cursor:pointer;font:inherit;background:#f3e8ff;border:0;font-size:11.5px;font-weight:700}.preview{flex-direction:column;flex:none;gap:6px;padding:6px 14px 0;display:flex}.preview .frame{border:1px solid var(--line);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;align-self:center;max-width:100%;line-height:0;display:inline-block;position:relative;overflow:hidden}.preview .frame img{pointer-events:none;width:auto;max-width:100%;height:auto;max-height:42vh;display:block}.preview .here{border:2px solid var(--honey);pointer-events:none;background:#d98e042e;border-radius:4px;position:absolute;box-shadow:0 0 0 9999px #00000040}.preview .hint{color:var(--ink-soft);font-size:11.5px}.preview .where{gap:6px;display:flex}.thumbs{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.thumbs img{object-fit:cover;border:2px solid #0000;border-radius:6px;width:56px;height:56px}.thumbs.pick img{cursor:pointer;width:64px;height:64px}.thumbs.pick img.on{border-color:var(--honey)}.preview .where select{border:1px solid var(--line);background:#fff;border-radius:8px;flex:1;padding:5px 6px;font-family:inherit;font-size:13px}.preview .inline{gap:8px;display:flex}.preview button{border:1px solid var(--line);color:var(--ink-soft);background:0 0;border-radius:99px;padding:3px 10px;font-size:11px}.preview button.ghost{color:var(--honey-deep);border-color:var(--honey)}.msg.human img.detail{border:2px solid var(--honey);max-width:46%;margin-top:4px}.suggest{scrollbar-width:none;flex:none;gap:6px;padding:6px 14px;display:flex;overflow-x:auto}.suggest button{background:var(--card);border:1px solid var(--line);color:var(--ink);border-radius:999px;flex:none;padding:6px 12px;font-size:12.5px}.suggest button.closing{color:#f7f3ea;background:#2b2520;border-color:#2b2520}.preview{margin-bottom:10px}.composer{border-top:1px solid var(--line);padding:10px 12px max(12px,env(safe-area-inset-bottom));flex:none;align-items:flex-end;gap:8px;display:flex}.composer textarea{resize:none;border:1px solid var(--line);background:var(--card);border-radius:16px;flex:1;max-height:120px;padding:10px 14px;font-family:inherit;font-size:16px;line-height:1.5}.ib{border:1px solid var(--line);background:var(--card);border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:flex}.ib.send{background:var(--ink);color:var(--wax);border-color:var(--ink);font-size:16px}.ib.rec{background:var(--brood);color:#fff;border-color:var(--brood)}.admin{background:var(--wax);max-width:960px;min-height:100dvh;margin:0 auto;padding:24px 16px 80px}.admin h1{margin-bottom:4px;font-family:Shippori Mincho,serif;font-size:22px}.admin h2{margin:28px 0 10px;font-family:Shippori Mincho,serif;font-size:17px}.admin .sub{color:var(--ink-soft);margin-bottom:16px;font-size:13px}.admin .row{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:12px 14px}.admin .row .t{color:var(--ink-soft);margin-bottom:4px;font-size:12px}.admin .row .h{margin-bottom:6px}.admin .row .b{background:#fff6e3;border-radius:8px;margin-bottom:8px;padding:8px 10px;font-family:Shippori Mincho,serif;font-weight:600}.admin .row img{border-radius:8px;max-width:240px;margin:6px 0;display:block}.admin form.inline{flex-wrap:wrap;align-items:flex-start;gap:6px;display:flex}.admin textarea,.admin input,.admin select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 8px;font-family:inherit;font-size:14px}.admin textarea{flex:1;min-width:220px}.admin button{border:1px solid var(--ink);background:var(--ink);color:var(--wax);border-radius:8px;padding:6px 12px;font-size:13px}.admin button.ghost{color:var(--ink);background:0 0}.admin .interp{color:var(--forage);background:#e7efe4;border-radius:6px;margin-bottom:6px;padding:4px 8px;font-size:12px;display:inline-block}.admin a{color:inherit}.admin .days{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.admin .day{border:1px solid var(--line);background:#fff;border-radius:999px;padding:3px 10px;font-size:12px;text-decoration:none}.admin .day.on{background:var(--ink);color:var(--wax);border-color:var(--ink)}.admin table.sum{border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:12px;width:100%;font-size:14px;overflow:hidden}.admin table.sum th{text-align:left;border-bottom:1px solid var(--line);background:#f6efe0;width:9em;padding:6px 10px;font-weight:600}.admin table.sum td{border-bottom:1px solid var(--line);padding:6px 10px}.admin .sess{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:14px;padding:10px 12px}.admin .sess-h{border-bottom:1px dashed var(--line);margin-bottom:6px;padding-bottom:6px;font-size:14px}.admin .lm{border-bottom:1px solid #f1ece2;padding:6px 0}.admin .lm:last-child{border-bottom:none}.admin .lm .t{color:var(--ink-soft);font-size:12px}.admin .lm.bee .tx{background:#fff6e3;border-radius:8px;margin:4px 0;padding:6px 10px;font-family:Shippori Mincho,serif;font-weight:600}.admin .lm.hum .tx{margin:4px 0}.admin .imgs{flex-wrap:wrap;gap:6px;margin:4px 0;display:flex}.admin .imgs img{border-radius:8px;max-width:220px;max-height:220px;display:block}.admin .imgs img.det{outline:2px solid #c8961e}.admin .chips{flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;display:flex}.admin .chips .interp{margin:0}@media print{.admin .days,.admin p.sub a{display:none}.admin .sess{break-inside:avoid}.admin .imgs img{max-width:160px;max-height:160px}}.admin details.judge{margin-top:4px}.admin details.judge summary{color:var(--ink-soft);cursor:pointer;font-size:12px}.admin details.judge form{margin-top:6px}.admin .imgs img.fr{opacity:.9;max-width:120px;max-height:120px}.vid{background:#000;border-radius:10px;width:100%;max-width:420px;max-height:70vh;margin:8px 0;display:block}.chip.share{color:var(--honey-deep);cursor:pointer;font:inherit;background:#fff3d6;border:0;margin-top:6px;font-size:11.5px;font-weight:700}.community{justify-content:flex-start;overflow-y:auto}.community ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.community li{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.community li a{color:inherit;text-decoration:none;display:block}.community .name{font-family:Shippori Mincho,serif;font-size:16px;font-weight:700}.community .name .area{color:var(--ink-soft);margin-left:8px;font-family:inherit;font-size:12px;font-weight:400}.community .line{margin-top:4px;line-height:1.6}.community .when{color:var(--ink-soft);margin-top:4px;font-size:12px}.community .when .n{margin-left:2px}.community .foot{color:var(--ink-soft);margin-top:18px;font-size:12px}.share-small{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;padding:2px 0 0;font-size:11px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.meta .help{color:var(--honey-deep);font-weight:700;text-decoration:none}.demo{color:var(--deep,#a96c00);border-bottom:1px solid var(--line);background:#fff3d6;padding:8px 18px;font-size:12.5px;line-height:1.5}.reserve{gap:10px;margin-top:6px;display:grid}.reserve label{color:var(--ink-soft);gap:4px;font-size:13px;display:grid}.reserve input,.reserve select,.reserve textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:15px}.reserve button{background:var(--ink);color:var(--wax);border:0;border-radius:999px;margin-top:4px;padding:12px;font-size:15px;font-weight:700}
