:root{--bg:#f4f7f6;--surface:#fff;--text:#2f3a3d;--muted:#6b7a7d;--border:#d9e2e1;--accent:#4f7f86;--accent-text:#fff;--accent-soft:#e3eeee;--error:#9a5b4c;--error-soft:#f6ece8;--success:#4c7a5a;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif;font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}h1,h2{margin:0;font-weight:600}h2{color:var(--muted);align-items:baseline;gap:.5rem;margin:1.5rem 0 .5rem;font-size:1rem;display:flex}a{color:var(--accent)}p{margin:0}input,textarea,button{font:inherit;font-size:16px}input,textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:10px;padding:.6rem .75rem}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}button,.button{border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:center;cursor:pointer;border-radius:10px;padding:.6rem 1rem;text-decoration:none;display:inline-block}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button:disabled{opacity:.5;cursor:default}.page{max-width:640px;padding:1rem 1rem calc(2rem + var(--safe-bottom));margin:0 auto}.page.narrow{max-width:440px}.brand{text-align:center;margin:calc(2rem + var(--safe-top)) 0 1.5rem;color:var(--accent);font-size:1.5rem}.topbar{z-index:1;padding:calc(.6rem + var(--safe-top)) 1rem .6rem;background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:.5rem;display:flex;position:sticky;top:0}.topbar-title{text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:1.05rem;overflow:hidden}.topbar-side{flex-shrink:0;width:5.5rem}.topbar-right{text-align:right}.topbar a{text-decoration:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1rem}.form{flex-direction:column;gap:.85rem;display:flex}.form label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.9rem;display:flex}.button-row{flex-wrap:wrap;gap:.5rem;display:flex}.button-row>*{flex:1}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:.85rem}.center{text-align:center;padding:1rem}.notice{background:var(--accent-soft);border-radius:10px;margin-bottom:1rem;padding:.75rem}.error{background:var(--error-soft);color:var(--error);border-radius:10px;padding:.6rem .75rem;font-size:.9rem}.success{color:var(--success);font-size:.9rem}.mono{word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace}.steps{margin:0;padding-left:1.25rem}.tabs{gap:.5rem;margin-bottom:.75rem;display:flex}.tab{background:0 0;flex:1}.tab.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.room-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.room-link{color:var(--text);text-decoration:none;display:block}.member-list{margin:0;padding:.25rem 1rem;list-style:none}.member-list li{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.6rem 0;display:flex}.member-list li:last-child{border-bottom:none}.badge{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.05rem .5rem;font-size:.75rem}.count{font-size:.85rem;font-weight:400}.invite-url{word-break:break-all;background:var(--bg);-webkit-user-select:all;user-select:all;border-radius:8px;padding:.5rem;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85rem}.chat{flex-direction:column;height:100dvh;display:flex}.chat-list{flex-direction:column;flex:1;gap:.6rem;padding:1rem;display:flex;overflow-y:auto}.load-older{align-self:center;font-size:.85rem}.bubble-row{flex-direction:column;align-items:flex-start;max-width:85%;display:flex}.bubble-row.mine{align-self:flex-end;align-items:flex-end}.bubble-name{color:var(--muted);margin:0 .25rem .1rem;font-size:.8rem}.bubble{background:var(--surface);border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:14px;padding:.5rem .8rem}.mine .bubble{background:var(--accent-soft);border-color:#0000}.bubble-time{color:var(--muted);margin:.1rem .25rem 0;font-size:.7rem}.composer{border-top:1px solid var(--border);background:var(--surface);padding:.5rem .75rem calc(.5rem + var(--safe-bottom));flex-direction:column;gap:.4rem;display:flex}.composer-row{align-items:flex-end;gap:.5rem;display:flex}.composer textarea{resize:none;max-height:8rem}.tag-row{flex-wrap:wrap;gap:.3rem;display:flex}.tag{color:var(--muted);background:var(--bg);border:1px solid #0000;border-radius:999px;align-items:center;gap:.2rem;padding:.05rem .5rem;font-size:.75rem;line-height:1.6;display:inline-flex}.tag-subjective{color:#6a5a8c;background:#efeaf6}.tag-proposal{color:#4c7a5a;background:#e6f2e9}.tag-sourced{color:#3f6a92;background:#e4eef8}.tag-unverified{color:#5f6d70;background:#eceeee;border-style:dashed;border-color:#d3dada}.tag-add{background:var(--surface);border-color:var(--border);justify-content:center;min-width:2rem}.tag-remove{opacity:.6;margin-left:.1rem}.tag-empty{color:var(--muted);padding:.05rem .25rem;font-size:.75rem}.tag-chips{flex-direction:column;gap:.2rem;margin-top:.2rem;display:flex}.mine .tag-chips{align-items:flex-end}.tag-description{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;max-width:18rem;padding:.35rem .6rem;font-size:.8rem}.tag-editor{flex-direction:column;gap:.3rem;display:flex}.tag-menu{padding-top:.1rem}.tag-editor .tag{padding:.2rem .65rem;font-size:.85rem}
