:root{--bg:#0d0d1a;--surface:#1a1a2e;--border:#333;--text:#e0e0e0;--text-muted:#888;--text-dim:#666;--accent-blue:#4fc3f7;--accent-green:#81c784;--accent-purple:#ce93d8;--accent-amber:#ffb74d;--positive:#81c784;--negative:#ef5350;--chip-active:#2e7d32;--chip-inactive:#333;--chip-negative-active:#c62828;--delayed-badge:#e65100}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.app{max-width:1200px;margin:0 auto;padding:24px}h1{margin-bottom:4px;font-size:28px}.subtitle{color:var(--text-muted);margin-bottom:32px;font-size:14px}h2{margin-bottom:16px;font-size:18px}section{margin-bottom:40px}.divider{border:none;border-top:1px solid var(--border);margin:32px 0}.costs-grid{grid-template-columns:1fr 1fr;gap:12px;max-width:500px;display:grid}.costs-grid label{align-items:center;font-weight:600;display:flex}.costs-grid input{background:var(--surface);border:1px solid var(--border);color:var(--accent-blue);border-radius:6px;width:100%;padding:8px 12px;font-family:inherit;font-size:16px}.costs-grid input:focus{border-color:var(--accent-blue);outline:none}.total-pot{color:var(--positive);margin-top:16px;font-size:20px;font-weight:700}.feature-list{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.feature-pill{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:10px 16px;display:flex}.feature-pill .feat-name{color:var(--text);background:0 0;border:none;border-bottom:1px solid #0000;min-width:60px;font-family:inherit;font-size:14px;font-weight:600}.feature-pill .feat-name:focus{border-bottom-color:var(--accent-blue);outline:none}.feature-pill .feat-percent{background:var(--chip-inactive);color:var(--accent-blue);text-align:center;border:none;border-radius:4px;width:55px;padding:4px 8px;font-family:inherit;font-size:14px;font-weight:600}.feature-pill .feat-percent:focus{border:1px solid var(--accent-blue);outline:none}.feature-pill .feat-delete{color:var(--negative);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:18px}.feature-pill .feat-delete:hover{opacity:.7}.add-btn{background:var(--surface);border:1px dashed var(--text-dim);color:var(--text-muted);cursor:pointer;border-radius:8px;padding:10px 20px;font-family:inherit;font-size:13px}.add-btn:hover{border-color:var(--text-muted);color:var(--text)}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.room-card{background:var(--surface);border:2px dashed var(--border);border-radius:10px;padding:16px;position:relative}.room-card.drag-over{border-style:solid;border-color:var(--accent-blue)}.room-card .room-label{text-transform:uppercase;color:var(--text-dim);letter-spacing:1px;margin-bottom:4px;font-size:11px}.room-card .room-name{color:var(--text);background:0 0;border:none;border-bottom:1px solid #0000;width:100%;margin-bottom:8px;padding:4px 0;font-family:inherit;font-size:16px;font-weight:600}.room-card .room-name:focus{border-bottom-color:var(--accent-blue);outline:none}.room-card .room-remove{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:18px;position:absolute;top:8px;right:10px}.room-card .room-remove:hover{color:var(--negative)}.person-chip{cursor:grab;color:#000;border-radius:20px;align-items:center;gap:6px;margin:8px 0;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.person-chip.dragging{opacity:.4}.empty-room{color:var(--text-dim);margin:8px 0;padding:6px 0;font-size:13px;font-style:italic}.feature-chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.feature-chip{cursor:pointer;border:none;border-radius:16px;padding:4px 12px;font-family:inherit;font-size:12px;transition:background .15s}.feature-chip.active-positive{background:var(--chip-active);color:#fff}.feature-chip.active-negative{background:var(--chip-negative-active);color:#fff}.feature-chip.inactive{background:var(--chip-inactive);color:var(--text-muted)}.room-result{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.room-result .amount{color:var(--accent-amber);font-size:24px;font-weight:700}.room-result .detail{color:var(--text-muted);font-size:11px}.delayed-badge{background:var(--delayed-badge);color:#fff;cursor:pointer;border:none;border-radius:16px;margin-top:4px;padding:4px 12px;font-family:inherit;font-size:11px;display:inline-block}.delayed-badge:hover{opacity:.8}.delay-controls{align-items:center;gap:6px;margin-top:6px;display:flex}.delay-controls input[type=date]{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:4px 8px;font-family:inherit;font-size:12px}.delay-controls button{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;padding:4px 8px;font-family:inherit;font-size:11px}.delay-controls button:hover{color:var(--text)}.set-delay-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;margin-top:4px;padding:4px 0;font-family:inherit;font-size:11px}.set-delay-btn:hover{color:var(--accent-amber)}.results-cards{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.result-card{background:var(--surface);text-align:center;border-top:3px solid var(--border);border-radius:8px;padding:16px}.result-card .person-name{color:var(--text-muted);font-size:13px}.result-card .person-amount{margin:8px 0;font-size:28px;font-weight:700}.result-card .person-detail{color:var(--text-muted);font-size:12px}.phases{flex-wrap:wrap;gap:16px;display:flex}.phase-block{background:var(--surface);border-left:3px solid var(--accent-blue);border-radius:8px;flex:1;min-width:280px;padding:16px}.phase-block h3{margin-bottom:12px;font-size:14px}.phase-row{justify-content:space-between;padding:4px 0;font-size:13px;display:flex}@media (width<=600px){.app{padding:16px}.rooms-grid{grid-template-columns:1fr}.results-cards{grid-template-columns:1fr 1fr}.costs-grid{grid-template-columns:1fr}.phases{flex-direction:column}.feature-list{gap:8px}}
