:root{--green: #2c7a3f;--ink: #243024;--line: #e3e3e3}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:#f6f7f4}.app{min-height:100vh;display:flex;flex-direction:column}.hdr{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:#fff;border-bottom:1px solid var(--line);font-size:16px}.hdr-right{font-size:13px;color:#555}.center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:40px 16px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px;max-width:420px;width:100%;box-shadow:0 4px 18px #0000000d}.card h2{margin:0 0 8px}.dim{color:#777}.err{color:#a11}input,select{font-family:inherit;font-size:14px;padding:8px 10px;border:1px solid #cdd4c6;border-radius:8px}.card input{width:100%;margin:10px 0}.btn{background:var(--green);color:#fff;border:none;border-radius:8px;padding:9px 16px;font-size:14px;cursor:pointer}.btn:disabled{opacity:.5;cursor:default}.btn.sm{padding:5px 12px;font-size:13px}.link{background:none;border:none;color:var(--green);cursor:pointer;text-decoration:underline;font-size:inherit;padding:0}.sheet{max-width:900px;width:100%;margin:0 auto;padding:20px 16px}.sheet-intro{margin:0 0 16px}.round{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:16px}.round h2{margin:0 0 10px;font-size:18px}table.bids{width:100%;border-collapse:collapse}table.bids th{text-align:left;font-size:12px;color:#888;font-weight:600;padding:4px 8px;border-bottom:1px solid var(--line)}table.bids td{padding:6px 8px;border-bottom:1px solid #f0f0ec;vertical-align:middle}table.bids .price{width:110px}table.bids .comments{width:100%;min-width:120px}table.bids tr.dirty td{background:#fbfdf7}table.bids tr.blocked td{background:#fdf6f6}.rowstat{width:18px;text-align:center}.rowstat .dot{color:var(--green);font-size:22px;line-height:0}.rowstat .warn-dot{color:#a11;font-weight:700}.needs{margin-left:8px;font-size:12px;color:#a11;white-space:nowrap}.savebar-status .warn{color:#a11}.savebar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:12px 16px;margin-top:4px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 -2px 12px #0000000f}.savebar-status{margin-right:auto;font-size:13px}
