:root{--bg: #f7f6f3;--surface: #fff;--surface-2: #f1efe9;--text: #1c1c1a;--text-2: #5f5e5a;--text-3: #8a8880;--border: #e3e1d9;--accent: #534ab7;--accent-bg: #eeedfe;--green: #0f6e56;--green-bg: #e1f5ee;--amber: #854f0b;--amber-bg: #faeeda;--red: #a32d2d;--red-bg: #fcebeb;--blue: #185fa5;--blue-bg: #e6f1fb}@media(prefers-color-scheme:dark){:root{--bg:#171716;--surface:#201f1e;--surface-2:#2a2927;--text:#f2f1ec;--text-2:#b8b6ac;--text-3:#8a8880;--border:#383734;--accent:#afa9ec;--accent-bg:#2d2a4d;--green:#9fe1cb;--green-bg:#123c30;--amber:#fac775;--amber-bg:#3d2c10;--red:#f09595;--red-bg:#421616;--blue:#85b7eb;--blue-bg:#12314d}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Hiragino Sans,Noto Sans JP,system-ui,sans-serif;font-size:14px;line-height:1.6}header{display:flex;align-items:center;gap:12px;padding:14px 24px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:5}header h1{font-size:16px;font-weight:600;margin:0}header h1 span{color:var(--text-3);font-weight:400}.spacer,.grow{flex:1}main{max-width:1200px;margin:0 auto;padding:20px 24px 60px}section{margin-bottom:28px}h2{font-size:15px;font-weight:600;margin:0 0 10px}h2 small{font-weight:400;color:var(--text-3);margin-left:8px}input,button,select{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:7px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}button{cursor:pointer}button:hover{background:var(--surface-2)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.primary:hover{opacity:.9}button.danger{background:var(--red-bg);border-color:var(--red);color:var(--red);font-weight:600}button:disabled{opacity:.5;cursor:wait}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.card .label{font-size:12px;color:var(--text-3)}.card .value{font-size:22px;font-weight:600;margin-top:2px}.card .sub{font-size:12px;color:var(--text-2)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.panel .head{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;gap:8px;align-items:center}.panel .head input{flex:1;min-width:80px}.split{display:grid;grid-template-columns:320px 1fr;gap:16px;align-items:start}@media(max-width:900px){.split{grid-template-columns:1fr}}.list{max-height:520px;overflow-y:auto}.row{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--border);cursor:pointer}.row:hover{background:var(--surface-2)}.row.active{background:var(--accent-bg)}.row.static-row{cursor:default}.row .name{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .meta{font-size:12px;color:var(--text-3)}.badge{display:inline-block;font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;white-space:nowrap}.badge.green{background:var(--green-bg);color:var(--green)}.badge.amber{background:var(--amber-bg);color:var(--amber)}.badge.red{background:var(--red-bg);color:var(--red)}.badge.blue{background:var(--blue-bg);color:var(--blue)}.badge.accent{background:var(--accent-bg);color:var(--accent)}.attribute-badge{margin-left:6px;cursor:help}.amount{font-variant-numeric:tabular-nums;font-weight:600}.muted{color:var(--text-3);font-size:12px}.empty{padding:24px;text-align:center;color:var(--text-3)}.setup{max-width:480px;margin:80px auto;text-align:center}.setup input{width:100%;margin:12px 0}.small{font-size:11px;padding:2px 8px;border-radius:6px;white-space:nowrap}.issued-secret{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;margin:10px 0;background:var(--amber-bg);border:1px solid var(--amber);border-radius:8px}.issued-secret code{word-break:break-all}.tool{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:12px}.tool>summary{cursor:pointer;padding:10px 16px;font-weight:600;list-style:none}.tool>summary:before{content:"▸ ";color:var(--text-3)}.tool[open]>summary:before{content:"▾ "}.tool .body{padding:4px 16px 16px;border-top:1px solid var(--border)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 20px;margin:12px 0}.form-grid label,.modal-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;color:var(--text-2)}.form-grid input[type=number]{width:90px}.config-grid input[type=checkbox]{width:auto}textarea{width:100%;min-height:110px;font:12px/1.5 ui-monospace,monospace;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;resize:vertical}.wide-input{width:100%;margin:8px 0}.tool-inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0}.tool-inline input{flex:1;min-width:160px}.subheading{margin-top:20px}.filter-bar{display:flex;gap:8px;align-items:end;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface)}.filter-bar label{display:grid;gap:3px;color:var(--text-3);font-size:11px}.filter-bar input,.filter-bar select{min-height:34px}.filter-bar input[type=number]{width:110px}.filter-bar input[type=date]{width:142px}.record-tools{margin-left:auto}.preset-controls{display:flex;gap:6px;align-items:center}.selection-bar{justify-content:space-between;align-items:center}.selection-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.table-wrap{overflow-x:auto}.record-table{width:100%;min-width:1120px;border-collapse:collapse;font-size:13px}.record-table th,.record-table td{padding:5px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap}.record-table th{color:var(--text-3);font-weight:600;font-size:12px;background:var(--surface);position:sticky;top:0;z-index:1}.record-table th.sortable{cursor:pointer}.record-table th.draggable-col{cursor:grab}.record-table th.num,.record-table td.num{text-align:right}.record-table tbody tr:nth-child(2n):not(.group-header) td{background:color-mix(in srgb,var(--surface-2) 45%,transparent)}.record-table tbody tr:hover:not(.group-header) td{background:var(--surface-2)}.group-header td{background:var(--surface-2);font-weight:600;padding:8px 10px}.group-meta{font-weight:400;color:var(--text-2);margin-left:10px;font-size:12px}.cell-main,.cell-sub{display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:baseline}.cell-main{font-weight:600}.cell-sub{color:var(--text-3);font-size:11px}.cell-sub-narrow{max-width:160px}.editable-cell{cursor:text;min-width:120px}.editable-cell:hover{background:var(--accent-bg)}.inline-edit{width:100%;min-width:140px}textarea.inline-edit{min-height:64px;font:inherit}.status-match-cell{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;min-width:190px}.action-buttons{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;visibility:hidden}.record-table tr:hover .action-buttons,.record-table tr:focus-within .action-buttons{visibility:visible}.badge-button{font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;background:var(--accent-bg);color:var(--accent);border:none;cursor:pointer;white-space:nowrap}.match-popover-toggle{background:none;border:none;color:var(--text-3);font-size:11px;cursor:pointer;padding:0;text-decoration:underline;white-space:nowrap}@media(hover:none){.record-table .action-buttons{visibility:visible}}.pagination{display:flex;gap:8px;align-items:center;justify-content:flex-end;padding:10px 14px;border-top:1px solid var(--border)}.cand-table{width:100%;border-collapse:collapse;font-size:13px}.cand-table td,.cand-table th{padding:6px 10px;border-bottom:1px solid var(--border);text-align:left}.cand-table th{color:var(--text-3);font-weight:400;font-size:12px}.alias-list{max-height:280px;overflow-y:auto}.cand-table tr.row-selectable{cursor:pointer}.cand-table tr.row-selectable:hover td{background:var(--surface-2)}.cand-table tr.row-selectable.selected td{background:var(--accent-bg)}.timeline{padding:6px 0;max-height:640px;overflow-y:auto}.tl-item{display:flex;gap:12px;padding:6px 16px}.tl-item.window{background:color-mix(in srgb,var(--amber-bg) 34%,transparent)}.tl-item.excluded{opacity:.55}.tl-select{margin-top:3px}.tl-rail{display:flex;flex-direction:column;align-items:center;width:14px;flex-shrink:0}.tl-dot{width:10px;height:10px;border-radius:50%;margin-top:6px;background:var(--text-3);flex-shrink:0}.tl-dot.sale{background:var(--blue)}.tl-dot.pay{background:var(--green)}.tl-dot.open{background:var(--amber)}.tl-line{width:2px;flex:1;background:var(--border);margin-top:2px}.tl-body{flex:1;padding-bottom:8px;min-width:0}.tl-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.tl-date{font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}.tl-reasons{font-size:12px;color:var(--text-2);margin-top:2px}.tl-window-divider{margin:8px 16px 4px;padding-top:8px;border-top:1px solid var(--border);color:var(--text-3);font-size:12px;font-weight:600}.tl-action-bar{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;padding:10px 14px;border-top:1px solid var(--border);background:var(--surface);position:sticky;bottom:0}.match-popover{position:fixed;z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px;min-width:280px;max-width:320px;box-shadow:0 8px 24px #0000002e;display:flex;flex-direction:column;gap:8px}.match-popover-heading{font-size:12px;font-weight:700;color:var(--text-2)}.match-popover-item{border-bottom:1px solid var(--border);padding-bottom:8px;display:flex;flex-direction:column;gap:6px}.match-popover-item:last-of-type{border-bottom:none}.match-popover-member{display:flex;align-items:flex-start;gap:8px}.match-popover-detail{flex:1;min-width:0}.match-popover-name{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.match-popover-raw{color:var(--text-3);font-size:11px}.match-popover-actions{display:flex;justify-content:flex-end;gap:6px}.match-popover-unmatch{margin-top:2px}.match-target,.search-row{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-bottom:8px}.search-row input{flex:1;min-width:200px}.candidate-scroll{max-height:340px;overflow-y:auto;border:1px solid var(--border);border-radius:8px}.match-sum{margin-top:8px;color:var(--text-2)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000061;display:grid;place-items:center;padding:20px;z-index:30}.modal{width:min(460px,100%);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 60px #00000047;padding:16px}.match-modal{width:min(760px,92vw)}.modal h2{margin-bottom:6px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px;flex-wrap:wrap}.modal textarea{min-height:84px;margin-top:10px;font:inherit}.full-input{width:100%;margin-top:10px}.modal-label{display:block;margin-top:10px}.modal-label input,.modal-label textarea{width:100%;margin-top:4px}.check-label{display:flex;gap:6px;align-items:center;margin-top:6px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--text);color:var(--bg);padding:10px 20px;border-radius:10px;font-weight:600;z-index:40;transition:opacity .3s;opacity:0;pointer-events:none}.toast.show{opacity:1}.card{position:relative;transition:transform .15s ease,box-shadow .15s ease}.card-action{cursor:pointer}.card-action:hover,.card-action:focus-visible{transform:translateY(-1px);box-shadow:0 5px 14px #1c1c1a1f}.card-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card-disabled{cursor:default}.card-hint{position:absolute;right:14px;bottom:10px;color:var(--accent);font-size:11px;visibility:hidden;opacity:0;transition:opacity .15s ease}.card-action:hover .card-hint,.card-action:focus-visible .card-hint{visibility:visible;opacity:1}.jump-highlight{animation:jump-highlight 1.2s ease-out}@keyframes jump-highlight{0%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 28%,transparent)}to{box-shadow:0 0 0 0 transparent}}.proposed-row{display:flex;gap:16px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--border)}.proposed-row:last-child{border-bottom:none}.proposed-content{flex:1;min-width:0}.proposed-members{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center}.proposed-side{display:flex;flex-direction:column;gap:5px;min-width:0}.proposed-member{display:flex;align-items:center;gap:7px;min-width:0}.proposed-name{flex:0 1 auto;min-width:0;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:0;background:none;padding:0;text-align:left;font-weight:600;cursor:pointer}.proposed-name:hover{color:var(--accent);text-decoration:underline}.proposed-record-meta{color:var(--text-2);font-size:12px;white-space:nowrap}.proposed-arrow{color:var(--text-3);font-size:18px}.proposed-amount{margin-top:6px}.proposed-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}.proposed-meta .badge{font-size:10px}.proposed-fallback{display:flex;align-items:center;gap:10px;min-width:0}.proposed-actions{display:flex;gap:6px;flex-shrink:0}.proposed-actions button{white-space:nowrap}.cell-inline-filter{display:inline-flex;align-items:center;gap:3px;min-width:0;max-width:100%;vertical-align:middle}.cell-filter-btn{visibility:hidden;border:0;background:transparent;color:var(--text-3);padding:0 3px;line-height:1.2;font-size:13px;cursor:pointer}.cell-filter-btn:hover{color:var(--accent);background:var(--accent-bg)}.record-table tr:hover .cell-filter-btn,.record-table tr:focus-within .cell-filter-btn{visibility:visible}@media(max-width:720px){.proposed-row{align-items:flex-start;flex-direction:column}.proposed-actions{align-self:flex-end}.proposed-members{grid-template-columns:1fr;gap:4px}.proposed-arrow{transform:rotate(90deg);justify-self:center}}@media(hover:none){.cell-filter-btn{visibility:visible}}
