: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}.composer-row button{white-space:nowrap;flex-shrink:0}.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}@media (hover:none){.bubble{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}}.bubble-row{border-radius:14px;transition:background-color .3s}.bubble-row.highlighted .bubble{outline-offset:2px;outline:3px solid #e9d98a}.bubble-row.restated .bubble{opacity:.6}.restate-link,.restated-link{color:var(--accent);text-align:left;background:0 0;border:none;padding:.1rem .25rem;font-size:.8rem}.restate-snippet{color:var(--muted)}.restating{background:var(--bg);border-left:3px solid var(--accent);border-radius:8px;padding:.35rem .6rem}.restating-head{color:var(--accent);justify-content:space-between;align-items:center;font-size:.8rem;font-weight:600;display:flex}.restating-cancel{color:var(--muted);background:0 0;border:none;padding:0 .6rem;font-size:1.1rem}.restating-original{color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;display:-webkit-box;overflow:hidden}.composer-target{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.composer-target strong{color:var(--text)}.ack{flex-direction:column;gap:.2rem;margin-top:.2rem;display:flex}.mine .ack{align-items:flex-end}.ack-row{align-items:center;gap:.25rem;display:flex}.ack-button,.ack-count,.ack-label{border-radius:999px;padding:.1rem .55rem;font-size:.75rem;line-height:1.6}.ack-button{background:var(--surface);color:var(--muted)}.ack-button.pressed{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.ack-label{color:var(--muted)}.ack-count{background:var(--bg);min-width:1.8rem;color:var(--text)}.ack-names{background:var(--surface);border:1px solid var(--border);border-radius:10px;max-width:18rem;padding:.35rem .6rem;font-size:.8rem}.sheet-backdrop{z-index:10;background:#2f3a3d59;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:640px;padding:.75rem 1rem calc(.75rem + var(--safe-bottom));border-radius:16px 16px 0 0;flex-direction:column;gap:.5rem;display:flex}.sheet-preview{color:var(--muted);overflow-wrap:anywhere;font-size:.85rem}.sheet button{width:100%;padding:.75rem 1rem}.sheet .sheet-cancel{color:var(--muted);background:var(--bg)}.toast{left:50%;bottom:calc(9rem + var(--safe-bottom));z-index:5;background:var(--text);color:var(--surface);border-radius:999px;padding:.4rem 1rem;font-size:.85rem;position:fixed;transform:translate(-50%)}.link-button{color:var(--accent);font-size:inherit;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.room-bar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem 1rem;font-size:.85rem;display:flex}.room-bar a{text-decoration:none}.awaiting{color:#7a6420;background:#fbf5dc;border-color:#e3cf7a;border-radius:999px;padding:.15rem .7rem;font-size:.85rem;font-weight:600}.agreement-card{background:var(--surface);border:1px solid var(--border);border-left:4px solid #e3cf7a;border-radius:14px;flex-direction:column;align-self:center;gap:.3rem;width:min(100%,30rem);padding:.6rem .8rem;display:flex}.agreement-card.status-decided{border-left-color:#7fae8c}.agreement-card.status-rejected,.agreement-card.status-withdrawn{border-left-color:#c9d1d1}.agreement-card.highlighted{outline-offset:2px;outline:3px solid #e9d98a}.agreement-head{color:var(--muted);justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.agreement-status,.agreement-badge{color:#7a6420;background:#fbf5dc;border:1px solid #0000;border-radius:999px;padding:.05rem .55rem;font-size:.75rem}.status-decided.agreement-status,.status-decided.agreement-badge{color:#4c7a5a;background:#e6f2e9}.status-rejected.agreement-status,.status-rejected.agreement-badge,.status-withdrawn.agreement-status,.status-withdrawn.agreement-badge{color:#5f6d70;background:#eceeee}.agreement-badge{margin-top:.2rem}.agreement-content{white-space:pre-wrap;overflow-wrap:anywhere;font-weight:600}.agreement-meta,.agreement-superseded,.agreement-objection{color:var(--muted);overflow-wrap:anywhere;font-size:.8rem}.agreement-superseded{color:var(--text)}.agreement-tally{background:var(--bg);border-radius:999px;align-self:flex-start;padding:.1rem .6rem;font-size:.8rem}.agreement-responses{margin:0;padding:0;font-size:.85rem;list-style:none}.agreement-responses li{border-bottom:1px solid var(--border);justify-content:space-between;gap:.5rem;padding:.15rem 0;display:flex}.agreement-responses li:last-child{border-bottom:none}.answer-none{color:var(--muted)}.agreement-answer{flex-direction:column;gap:.4rem;margin-top:.2rem;display:flex}.answer-buttons{flex-wrap:wrap;gap:.4rem;display:flex}.answer-button{flex:auto;padding:.5rem .6rem;font-size:.9rem}.answer-button.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.answer-confirm{flex-direction:column;gap:.4rem;display:flex}.agreement-actions{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.agreement-actions button:not(.link-button){padding:.35rem .8rem;font-size:.85rem}.propose-button{color:var(--accent);border-radius:999px;margin-top:.2rem;padding:.1rem .6rem;font-size:.75rem}.propose-sheet{max-height:90dvh;overflow-y:auto}.sheet-title{color:var(--text);margin:0}.sheet-field{color:var(--muted);border:none;flex-direction:column;gap:.3rem;margin:0;padding:0;font-size:.9rem;display:flex}.sheet-field legend{margin-bottom:.3rem;padding:0}.sheet-field select{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:10px;padding:.6rem .75rem;font-size:16px}.check{color:var(--text);align-items:center;gap:.5rem;padding:.2rem 0;display:flex}.check input{width:1.2rem;height:1.2rem}.check.muted{color:var(--muted)}.decision-list{flex-direction:column;gap:.6rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.decision{flex-direction:column;gap:.3rem;display:flex}.decision.superseded{opacity:.6}.decision-main{text-align:left;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:.15rem;padding:0;display:flex}.decision-content{overflow-wrap:anywhere;font-weight:600}.propose-notice{color:var(--text);margin:0;font-size:.9rem}.composer-row textarea{flex:1;min-width:0}.composer-row button{padding:.6rem .75rem}.composer-row .quote-button{color:var(--accent);padding:.6rem .55rem;font-size:.9rem}.restate-hint{color:var(--accent);margin-top:.2rem;font-size:.8rem}.quote-card{background:var(--bg);border-left:3px solid var(--border);border-radius:8px;align-items:flex-start;gap:.25rem;max-width:100%;margin-bottom:.2rem;display:flex}.mine .quote-card{align-self:flex-end}.quote-main{text-align:left;min-width:0;color:var(--text);background:0 0;border:none;flex-wrap:wrap;flex:1;align-items:center;gap:.15rem .4rem;padding:.3rem .6rem;font-size:.8rem;display:flex}.quote-name{color:var(--muted)}.quote-title{overflow-wrap:anywhere}.quote-tags{width:100%;color:var(--muted);font-size:.75rem}.quote-pick-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.quote-pick{text-align:left;flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;display:flex}.quote-pick.superseded{opacity:.6}.tag-partner{color:#3f6f62;background:#e8f1ee}.tag-partner-pending{color:#7a6420;background:#fbf5dc;border-color:#e9dba0}.tag-partner-left{color:#6b7a7d;background:#eceeee}.tag-description p{margin:0}.add-source-button{color:var(--accent);margin-top:.35rem;padding:.3rem .7rem;font-size:.8rem}.partner-comment{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;max-width:18rem;padding:.3rem .6rem;font-size:.8rem}.partner-answer{background:var(--surface);border:1px solid #e9dba0;border-radius:12px;flex-direction:column;gap:.35rem;max-width:22rem;margin-top:.3rem;padding:.5rem .6rem;display:flex}.room-bar .bar-button{white-space:nowrap;border-radius:999px;padding:.15rem .55rem;font-size:.85rem}.room-bar a,.room-bar .awaiting{white-space:nowrap}.room-bar .bar-spacer{flex:1}.room-bar{justify-content:flex-start}.break-bar{color:#6a5a2e;text-align:left;background:#f6f1e3;border:none;border-bottom:1px solid #e9dfc2;border-radius:0;width:100%;padding:.45rem 1rem;font-size:.85rem;display:block}.break-bar p{margin:0}.break-bar.ended{color:#3f6a4c;background:#e6f2e9;border-bottom-color:#cfe3d4}.break-actions{gap:.4rem;margin-top:.3rem;display:flex}.break-actions button{padding:.25rem .75rem;font-size:.85rem}.system-line{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;align-self:center;padding:.15rem .8rem;font-size:.8rem}.break-confirm{background:#f6f1e3;border-radius:10px;flex-direction:column;gap:.4rem;padding:.5rem .75rem;font-size:.9rem;display:flex}.composer-target-row{align-items:center;gap:.5rem;display:flex}.composer-target-row .composer-target{flex:1;min-width:0}.split-toggle{white-space:nowrap;color:var(--accent);border-radius:999px;flex-shrink:0;padding:.15rem .6rem;font-size:.8rem}.split-toggle[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}.parts-fields{flex-direction:column;gap:.35rem;display:flex}.part-field{color:var(--muted);flex-direction:column;gap:.15rem;font-size:.8rem;display:flex}.part-field textarea{resize:none;min-height:2.6rem;max-height:6rem}.composer-spacer{flex:1}.bubble-part+.bubble-part{margin-top:.35rem}.bubble-part-label{color:var(--muted);font-size:.75rem;display:block}.summary-label{color:var(--accent);margin:0 .25rem .1rem;font-size:.75rem}.pinned-mark{font-size:.7rem}.pin-item{flex-direction:column;align-items:flex-start;gap:.2rem;display:flex}button,.button{white-space:nowrap}.button-row>*,.answer-buttons>*{flex:auto}@media (width<=360px){.button-row button,.answer-buttons button,.composer-row button,.room-bar .bar-button,.room-bar .awaiting{font-size:.85rem}}.quote-main,.quote-pick,.decision-main,.restate-link,.break-bar,.agreement-meta .link-button,.agreement-superseded .link-button,.hint .link-button{white-space:normal}.ack-names p{margin:0}.ack-note{color:var(--muted);font-size:.75rem}.break-actions,.agreement-actions,.ack-row,.tag-row{flex-wrap:wrap}.composer-row .image-button{padding:.6rem .5rem}.image-attach{flex-direction:column;gap:.25rem;display:flex}.image-attach-row{align-items:flex-start;gap:.25rem;display:flex}.image-attach-thumb{object-fit:cover;border:1px solid var(--border);border-radius:10px;width:4.5rem;height:4.5rem;display:block}.image-notice{color:var(--muted);font-size:.75rem}.bubble.image-only{padding:.3rem}.message-image{background:var(--bg);border:none;border-radius:10px;width:min(14rem,60vw);max-height:18rem;padding:0;display:block;overflow:hidden}.message-image+*{margin-top:.35rem}.message-image img,.message-image .image-loading{object-fit:cover;width:100%;height:100%;display:block}.image-loading{background:var(--bg);min-height:4rem;display:inline-block}.image-missing,.image-removed{color:var(--muted);white-space:normal;font-size:.8rem;display:block}.viewer{z-index:20;padding:calc(.75rem + var(--safe-top)) .75rem calc(.75rem + var(--safe-bottom));background:#141a1ceb;flex-direction:column;gap:.5rem;display:flex;position:fixed;inset:0}.viewer-image{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.viewer-image img{object-fit:contain;border-radius:6px;max-width:100%;max-height:100%}.viewer-bar{flex-direction:column;gap:.4rem;width:100%;max-width:640px;margin:0 auto;display:flex}.viewer-note,.viewer-size{color:#e8eeee;text-align:center;font-size:.85rem}.composer-tools{flex-direction:column;flex-shrink:0;gap:.25rem;display:flex}.composer-tools .tool-button{color:var(--accent);border-radius:8px;padding:.2rem .5rem;font-size:.8rem;line-height:1.5}.composer{--composer-base:3.6rem}.composer-tools{height:var(--composer-base)}.composer-tools .tool-button{flex:1;justify-content:center;align-items:center;display:flex}.composer-row>textarea{min-height:var(--composer-base);height:var(--composer-base);max-height:8rem;overflow-y:auto}.topbar-right{justify-content:flex-end;align-items:center;gap:.6rem;width:auto;min-width:5.5rem;display:flex}.topbar .link-like{color:var(--accent);background:0 0;border:none;padding:0}.bell{align-items:center;padding:.15rem;font-size:1.15rem;line-height:1;display:inline-flex;position:relative}.bell-count{background:var(--accent);min-width:1.15rem;height:1.15rem;color:var(--accent-text);border-radius:999px;justify-content:center;align-items:center;padding:0 .3rem;font-size:.7rem;font-weight:600;display:inline-flex;position:absolute;top:-.45rem;right:-.65rem}.notification-list{flex-direction:column;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.notification{flex-direction:column;gap:.4rem;padding:.7rem .85rem;display:flex}.notification.unread{border-color:var(--accent);background:var(--accent-soft)}.notification.need-answer{border-color:#e9dba0}.notification-main{text-align:left;white-space:normal;overflow-wrap:anywhere;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:.15rem;padding:0;display:flex}.notification .partner-answer{border:none;max-width:none;padding:0}.setting-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.setting-row:last-of-type{border-bottom:none}.card.setting-row{border-bottom:1px solid var(--border);padding:.75rem 1rem}.setting-text{flex-direction:column;flex:1;min-width:0;display:flex}.switch{min-width:3.5rem;color:var(--muted);border-radius:999px;padding:.3rem .7rem;font-size:.85rem}.switch.on{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.setting-warning{width:100%}.chip-button,.topbar-side a,.topbar-side button,.room-bar a,.room-bar button,.restated-link{border:1px solid var(--border);background:var(--surface);color:var(--accent);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:.2rem;padding:.2rem .65rem;font-size:.85rem;line-height:1.5;text-decoration:none;display:inline-flex}.restate-link{border:1px solid var(--border);background:var(--surface);color:var(--accent);text-align:left;white-space:normal;border-radius:10px;padding:.2rem .6rem;font-size:.8rem}.room-bar .awaiting{color:#7a6420;background:#fbf5dc;border-color:#e3cf7a;font-weight:600}.topbar-side .bell{border-radius:50%;flex-shrink:0;width:2.1rem;height:2.1rem;padding:0;font-size:1rem;position:relative}.topbar-side .bell .bell-count{top:-.35rem;right:-.45rem}.restating-cancel{border:1px solid var(--border);background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;padding:0;line-height:1;display:inline-flex}.topbar{gap:.5rem}.topbar-side{align-items:center;gap:.4rem;width:auto;min-width:4.5rem;display:flex}.topbar-right{justify-content:flex-end;gap:.4rem}.topbar-title{min-width:0}.room-bar{flex-wrap:nowrap;gap:.4rem;overflow-x:auto}@media (width<=360px){.topbar-side a,.topbar-side button:not(.bell),.room-bar a,.room-bar button{padding:.2rem .5rem;font-size:.8rem}}
