:root{--line:#e4ddd2;--danger:#b3261e;--shadow:0 1px 2px #1e1b180f, 0 8px 24px #1e1b1814;--card-shadow:0 2px 6px #1e1b180f, 0 18px 40px #1e1b1824;--serif:"Fraunces", Georgia, "Times New Roman", serif}@media (prefers-color-scheme:dark){:root{--line:#35302a;--danger:#f2b8b5;--shadow:0 1px 2px #0006, 0 8px 24px #00000059;--card-shadow:0 2px 6px #0006, 0 18px 40px #00000080}}.screen{flex-direction:column;gap:16px;max-width:440px;min-height:100dvh;margin:0 auto;padding:24px 16px 96px;display:flex}.screen h1{font-family:var(--serif);margin:8px 0 0;font-size:1.75rem;font-weight:500;line-height:1.18}.screen p{margin:0}.muted{color:var(--ink-muted)}.small{font-size:.85rem}button{font:inherit;color:inherit;cursor:pointer}.btn{border:1px solid var(--line);background:var(--surface);width:100%;min-height:52px;color:var(--ink);border-radius:16px;justify-content:center;align-items:center;padding:0 18px;font-weight:600;text-decoration:none;display:flex}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.danger{color:var(--danger)}.btn:disabled{opacity:.5;cursor:default}.linkbtn{color:var(--accent-ink);text-align:left;background:0 0;border:0;padding:8px 0;font-weight:600}.input{border:1px solid var(--line);background:var(--surface);width:100%;height:52px;color:var(--ink);border-radius:14px;padding:0 14px;font-size:16px}label.field{flex-direction:column;gap:6px;font-size:.9rem;font-weight:600;display:flex}.row{gap:8px;display:flex}.error{color:var(--danger);font-size:.9rem}.devnote{border:1px dashed var(--accent-ink);border-radius:12px;padding:10px 12px;font-size:.85rem}.panel,.path-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;flex-direction:column;gap:10px;padding:18px;display:flex}.path-card h2,.panel h2{font-family:var(--serif);margin:0;font-size:1.3rem;font-weight:500}.option{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:16px;align-items:center;gap:12px;width:100%;padding:16px;font-weight:600;display:flex}.option[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;min-height:40px;padding:9px 14px;font-weight:500}.chips{flex-wrap:wrap;gap:8px;display:flex}.checks{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.checks li:before{content:"✓ ";color:var(--accent-ink);font-weight:700}.checks li.no:before{content:"✕ ";color:var(--ink-muted)}.tabbar{padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);z-index:10;justify-content:center;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar a{text-align:center;max-width:110px;color:var(--ink-muted);border-radius:12px;flex:1;padding:8px 4px;font-size:.8rem;font-weight:600;text-decoration:none}.tabbar a[aria-current=page]{color:var(--accent-ink);background:var(--surface-soft)}.progress{background:var(--surface-soft);border-radius:6px;height:6px;overflow:hidden}.progress>span{background:var(--accent);height:100%;transition:width .4s;display:block}.counter{font-family:var(--serif);text-align:center;font-size:3rem}.stack{height:min(62dvh,460px);margin:4px 0;position:relative}.card{background:var(--surface);box-shadow:var(--card-shadow);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:28px;flex-direction:column;transition:transform .38s cubic-bezier(.2,.9,.25,1.15),opacity .3s;display:flex;position:absolute;inset:0;overflow:hidden}.card.back{transform:translateY(14px)scale(.95)}.card.dragging{transition:none}.card .art{font-family:var(--serif);color:var(--accent-ink);background:var(--surface-soft);flex:1;place-items:center;min-height:0;font-size:4rem;display:grid}.card .body{flex-direction:column;gap:4px;padding:16px 20px 18px;display:flex}.card .cat{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);font-size:.75rem;font-weight:700}.card .pname{font-family:var(--serif);font-size:1.5rem;line-height:1.15}.card .giftflag{background:var(--surface);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600;position:absolute;top:14px;left:14px}.stamp{border:2.5px solid var(--accent);color:var(--accent-ink);background:var(--surface);z-index:3;border-radius:12px;padding:6px 14px;font-size:1.1rem;font-weight:700;position:absolute;top:28px;left:50%;transform:translate(-50%)}.question .qhead{padding:24px 20px 12px}.question .qhead h2{font-family:var(--serif);margin:6px 0 0;font-size:1.5rem;font-weight:500}.question .answers{flex-direction:column;gap:10px;margin-top:auto;padding:0 20px 20px;display:flex}.question .answers .btn{min-height:60px;font-size:1.05rem}.question .pair{grid-template-columns:1fr 1fr;gap:10px;padding:0 20px 12px;display:grid}.question .pair div{background:var(--surface-soft);border-radius:16px;flex-direction:column;justify-content:space-between;min-height:110px;padding:12px;font-weight:600;display:flex}.question .pair .art{font-family:var(--serif);color:var(--accent-ink);font-size:2rem}.actions{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.act{color:var(--ink-muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:flex}.act .c{background:var(--surface);border:1px solid var(--line);width:56px;height:56px;box-shadow:var(--shadow);border-radius:50%;place-items:center;font-size:1.2rem;display:grid}.act.love .c{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.sheet-backdrop{z-index:20;background:#00000059;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:440px;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;flex-direction:column;gap:12px;display:flex}.sheet h2{font-family:var(--serif);margin:0;font-weight:500}.toast{background:var(--ink);color:var(--surface);z-index:30;border-radius:12px;max-width:calc(100vw - 32px);padding:10px 16px;font-size:.9rem;position:fixed;bottom:84px;left:50%;transform:translate(-50%)}.tastebar{border:1px solid var(--line);border-radius:16px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.tastebar button{background:var(--surface);border:0;min-height:56px;font-weight:600}.tastebar button+button{border-left:1px solid var(--line)}.tastebar button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.list{background:var(--surface);border:1px solid var(--line);border-radius:20px;margin:0;padding:0;list-style:none;overflow:hidden}.list li{flex-direction:column;gap:4px;padding:14px 16px;display:flex}.list li+li{border-top:1px solid var(--line)}.list .title{font-weight:600}.list .meta{color:var(--ink-muted);font-size:.85rem}.list .rowactions{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.list .rowactions button{min-height:32px;padding:6px 10px;font-size:.8rem}.badge{background:var(--surface-soft);color:var(--accent-ink);border-radius:99px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-block}@media (prefers-reduced-motion:reduce){.card,.progress>span{transition:none}}
.b-ui{--radius:14px;font-family:var(--font);line-height:1.5}.b-ui .page{max-width:560px;margin:0 auto;padding:20px 16px 120px}.b-ui .wordmark{letter-spacing:-.02em;color:var(--ink);font-size:1.25rem;font-weight:800;text-decoration:none}.b-ui .wordmark span{color:var(--accent-ink)}.b-ui .topbar{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:8px;display:flex}.b-ui h1{font-family:var(--serif);margin:8px 0;font-size:1.75rem;font-weight:500;line-height:1.18}.b-ui h2{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);margin:28px 0 10px;font-size:.8rem;font-weight:700}.b-ui .lead{color:var(--ink-muted);font-size:1.05rem}.b-ui .muted{color:var(--ink-muted)}.b-ui .fine{color:var(--ink-faint);font-size:.82rem}.b-ui .hero{border-radius:var(--radius);background:var(--surface-soft);margin-top:24px;padding:24px}.b-ui .hero h1{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(1.75rem,5vw,2.5rem)}.b-ui .hero p{color:var(--ink-muted);margin:0}.b-ui .categories{flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none;display:flex}.b-ui .categories li{background:var(--accent);color:var(--on-accent);border-radius:999px;padding:6px 14px;font-weight:600}.b-ui .footer{color:var(--ink-muted);margin-top:40px;font-size:.875rem}.b-ui .btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;min-height:48px;color:var(--ink);border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.b-ui .btn.block{width:100%}.b-ui .btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.b-ui .btn.primary:disabled{opacity:.4;cursor:not-allowed}.b-ui .btn.ghost{color:var(--ink-muted);background:0 0;border-color:#0000}.b-ui .btn.small{border-radius:12px;min-height:40px;font-size:.9rem}.b-ui .linkish{color:var(--accent-ink);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.b-ui .chips{flex-wrap:wrap;gap:8px;display:flex}.b-ui .chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:8px 14px;font-weight:500;display:inline-flex}.b-ui .chip[aria-pressed=true],.b-ui .chip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.b-ui .chip.no{background:var(--surface-2);color:var(--ink-muted);border-style:dashed;text-decoration:line-through}.b-ui .chip.soft{background:var(--surface-2);cursor:default;border-color:#0000}.b-ui .chip .x{cursor:pointer;color:inherit;background:0 0;border:0;min-width:24px;min-height:24px;font-size:1.1rem;line-height:1}.b-ui .tiles{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px;display:grid}.b-ui .tile{border:1px solid var(--line);background:var(--surface);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:16px;flex-direction:column;justify-content:center;gap:4px;min-height:92px;padding:12px 10px;font-size:.9rem;font-weight:600;line-height:1.2;display:flex;position:relative}.b-ui .tile small{color:var(--ink-faint);font-size:.78rem;font-weight:500}.b-ui .tile.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset}.b-ui .tile.no{opacity:.7;border-style:dashed}.b-ui .tile .mark{border-radius:50%;place-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:6px;right:6px}.b-ui .tile.on .mark{background:var(--accent);color:var(--on-accent)}.b-ui .tile.no .mark{background:var(--ink-muted);color:var(--surface)}.b-ui .option{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:16px;align-items:center;width:100%;min-height:56px;margin-bottom:10px;padding:14px 16px;font-weight:500;display:flex}.b-ui .option[aria-checked=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset}.b-ui .seg{background:var(--surface-2);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.b-ui .seg button{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:40px;padding:8px 12px;font-weight:600}.b-ui .seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.b-ui .input,.b-ui textarea.input{border:1px solid var(--line);background:var(--surface);border-radius:14px;width:100%;min-height:48px;padding:12px 14px}.b-ui textarea.input{resize:vertical;min-height:84px}.b-ui .progress{align-items:center;gap:6px;display:flex}.b-ui .progress i{background:var(--line);border-radius:4px;width:7px;height:7px}.b-ui .progress i.done{background:var(--accent);opacity:.5}.b-ui .progress i.on{background:var(--accent);width:20px}.b-ui .q-cat{letter-spacing:.04em;text-transform:uppercase;color:var(--accent-ink);font-size:.8rem;font-weight:700}.b-ui .reason{background:var(--accent-soft);border-radius:12px;margin:4px 0 14px;padding:10px 12px;font-size:.92rem}.b-ui .part{margin:18px 0}.b-ui .part h3{margin:0 0 10px;font-size:1rem}.b-ui .sticky-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);position:fixed;bottom:0;left:0;right:0}.b-ui .sticky-foot .inner{gap:10px;max-width:560px;margin:0 auto;display:flex}.b-ui .tb{margin:16px 0 8px}.b-ui .tb-track{background:var(--surface-2);border-radius:20px;grid-template-columns:1fr 1fr 1fr;gap:0;min-height:64px;padding:0;display:grid}.b-ui .tb-zone{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:20px;min-height:64px;font-size:.95rem;font-weight:600;transition:background .18s,color .18s}.b-ui .tb-zone[aria-checked=true].z0{background:var(--ink-muted);color:var(--surface)}.b-ui .tb-zone[aria-checked=true].z1{background:color-mix(in srgb, var(--accent) 55%, var(--surface));color:var(--on-accent)}.b-ui .tb-zone[aria-checked=true].z2{background:var(--accent);color:var(--on-accent)}.b-ui .tb-zone:disabled{cursor:default}.b-ui .followup{margin-top:14px;animation:.35s cubic-bezier(.2,.8,.2,1) rise}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.b-ui .panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:16px}.b-ui .panel+.panel{margin-top:12px}.b-ui .list{background:var(--surface);border:1px solid var(--line);border-radius:20px;margin:0;padding:0;list-style:none;overflow:hidden}.b-ui .list>li{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.b-ui .list>li:last-child{border-bottom:0}.b-ui .list .grow{flex:1;min-width:0}.b-ui .list .src{color:var(--ink-faint);font-size:.82rem}.b-ui .nq{border:1px solid var(--line);color:var(--ink-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;min-height:36px;padding:6px 12px;font-size:.8rem;font-weight:600}.b-ui .hscroll{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.b-ui .ptile{border:1px solid var(--line);background:var(--surface);border-radius:16px;flex:0 0 132px;padding:12px;font-size:.88rem;font-weight:600}.b-ui .empty{color:var(--ink-faint);font-size:.92rem}.b-ui .toast{pointer-events:none;z-index:50;justify-content:center;display:flex;position:fixed;bottom:96px;left:16px;right:16px}.b-ui .toast div{background:var(--ink);color:var(--bg);border-radius:14px;padding:12px 16px;font-weight:500}.b-ui .error{color:var(--danger)}
.agents h2{margin:28px 0 8px;font-size:1.05rem}.agents .muted,.agents .fine{color:var(--ink-muted)}.agents .fine{font-size:.85rem;display:block}.agents .list{margin:0;padding:0;list-style:none}.agents .row,.agents .scope,.agents .log-item{border-bottom:1px solid color-mix(in srgb, var(--ink) 12%, transparent);color:inherit;align-items:center;gap:12px;min-height:44px;padding:14px 0;text-decoration:none;display:flex}.agents .log-item{flex-direction:column;align-items:flex-start;gap:2px}.agents .log-item .when{color:var(--ink-muted);font-size:.8rem}.agents .grow{flex-direction:column;flex:1;display:flex}.agents .sub{color:var(--ink-muted);font-size:.9rem}.agents .monogram{background:var(--surface-soft);border-radius:12px;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.agents .monogram.lg{width:56px;height:56px;font-size:1.4rem}.agents .agent-head{align-items:center;gap:14px;margin-top:12px;display:flex}.agents .agent-head h1{margin:0}.agents .panel,.agents .sheet{background:var(--surface-soft);border-radius:var(--radius);padding:16px}.agents .switch input{width:22px;height:22px;accent-color:var(--accent)}.agents .btn{width:100%;min-height:48px;font:inherit;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:12px;margin-top:12px;font-weight:700;display:block}.agents .btn.danger{color:#b00020;border-color:#b00020}.agents .sheet .btn.danger{color:#fff;background:#b00020}.agents .toast{font-weight:600}.agents .back{min-height:44px;display:inline-block}
