@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;600;700;800&display=swap";:root{--bg:#f4f2ed;--card:#fff;--ink:#16181b;--muted:#6b7077;--line:#e3e0d8;--dark:#0f172a;--red:#dc2626;--pink:#e11d48;--green:#16a34a}*{box-sizing:border-box}body{margin:0;font-family:Plus Jakarta Sans,system-ui,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit}.wrap{max-width:1180px;margin:0 auto;padding:16px 12px 120px}h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em}h2{margin:0 0 8px;font-size:15px;font-weight:800}.muted{color:var(--muted);font-size:13px}.small{font-size:11px;color:var(--muted)}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;margin:12px 0}label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:12px 0 5px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px;font:15px inherit;font-family:inherit;background:#fbfaf7;color:var(--ink)}input:focus{outline:2px solid #0f172a22;border-color:#0f172a55}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:11px;padding:11px 16px;font:700 14px inherit;font-family:inherit;cursor:pointer;color:var(--ink);text-decoration:none;white-space:nowrap}.btn.dark{background:var(--dark);color:#fff;border-color:var(--dark)}.btn.red{background:var(--pink);color:#fff;border-color:var(--pink)}.btn.green{background:#25d366;color:#fff;border-color:#25d366}.btn.full{width:100%}.btn.sm{padding:7px 11px;font-size:12px;border-radius:9px}.btn:disabled{opacity:.45;cursor:default}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.between{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.seg{display:flex;background:#e7e4dc;border-radius:13px;padding:3px;gap:2px;overflow-x:auto}.seg button{flex:1;border:none;background:transparent;padding:10px;border-radius:10px;font:700 13px inherit;font-family:inherit;color:var(--muted);cursor:pointer;white-space:nowrap}.seg button.on{background:var(--dark);color:#fff}.chips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.chips button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:6px 12px;font:600 12px inherit;font-family:inherit;cursor:pointer}.chips button.on{background:var(--dark);color:#fff;border-color:var(--dark)}.hidden{display:none!important}.toast{position:fixed;top:14px;left:50%;transform:translate(-50%);background:var(--dark);color:#fff;padding:10px 16px;border-radius:12px;font-size:13px;display:none;z-index:50;max-width:92%;text-align:center}.err{color:#b91c1c;font-size:13px;margin-top:8px;min-height:18px}.ok{color:#15803d}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px}.kpi b{display:block;font-size:22px;font-weight:800}.kpi span{font-size:12px;color:var(--muted)}.tw{overflow:auto;max-height:374px;border:1px solid var(--line);border-radius:12px;background:#fff}table{width:100%;border-collapse:collapse;font-size:13px}th{position:sticky;top:0;background:#f8f7f3;z-index:1;text-align:left;white-space:nowrap;font-size:12px;color:var(--muted)}td,th{padding:6px 10px;border-bottom:1px solid var(--line);white-space:nowrap;height:36px}tr.off td{opacity:.45}input[type=checkbox]{width:18px;height:18px;accent-color:var(--pink);cursor:pointer;padding:0}.pill{display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;border-radius:99px;background:#f1f5f9;color:#334155}.pill.g{background:#dcfce7;color:#14532d}.pill.r{background:#fee2e2;color:#b91c1c}.pill.y{background:#fef3c7;color:#92400e}.avatar{width:36px;height:36px;border-radius:50%;background:#e2e8f0;object-fit:cover;flex:none;display:inline-grid;place-items:center;font-weight:800;color:#475569}.mapbox{background:#cddeb9;border:1px solid var(--line);border-radius:16px;overflow:hidden}svg.plan{display:block;width:100%;height:auto;user-select:none;-webkit-user-select:none}rect.u{fill:transparent}rect.u.dim{fill:#ffffff59}rect.u.sold{fill:#3c3c3c73}@keyframes blink{0%,to{fill:#16a34af2;stroke:#fff}50%{fill:#4ade8059;stroke:#14532d}}rect.u.av{animation:blink 1.1s ease-in-out infinite;stroke-width:5;cursor:pointer}rect.u.can{fill:#16a34a59;stroke:#15803d;stroke-width:3;cursor:pointer}rect.u.pk{animation:none;fill:#dc2626e6;stroke:#7f1d1d;stroke-width:6}.zoom{display:flex;gap:6px}.zoom .btn{min-width:42px;height:38px;font-size:18px;padding:0 10px}.zoom [data-z=fit]{font-size:12px}.legend{display:flex;gap:12px;font-size:12px;color:var(--muted);flex-wrap:wrap;align-items:center}.dot{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-2px;margin-right:5px}.chip{background:#dcfce7;color:#14532d;font-weight:700;font-size:12px;padding:5px 10px;border-radius:999px}.bottombar{position:fixed;left:0;right:0;bottom:0;background:var(--dark);color:#fff;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));display:none;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;box-shadow:0 -6px 24px #0000002e;z-index:20}.bottombar.show{display:flex}@media(max-width:600px){.wrap{padding:12px 10px 130px}h1{font-size:20px}.bottombar .btn{flex:1}.bottombar>div{flex:1 1 100%}td,th{padding:6px 8px}.seg{flex-wrap:wrap}.seg button{flex:1 1 auto;padding:9px 8px}.kpis{grid-template-columns:1fr 1fr}.kpis>.kpi:last-child:nth-child(odd){grid-column:1/-1}input,select,textarea{font-size:16px}#tb td:nth-child(4),#tb th:nth-child(4),#tb td:nth-child(6),#tb th:nth-child(6){display:none}.tw.stack{max-height:none;border:none;background:transparent;overflow:visible}.stack table,.stack tbody{display:block}.stack tr:first-child{display:none}.stack tr{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 12px;margin-bottom:8px}.stack td{display:block;height:auto;padding:5px 0;border:none;white-space:normal;text-align:right;overflow:hidden}.stack td:before{content:attr(data-l);float:left;margin-right:12px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;line-height:20px}.stack td>.row{display:flex}#tb td{white-space:normal}#tb td:nth-child(5){white-space:nowrap}#ut th:nth-child(n+3):nth-child(-n+9),#ut td:nth-child(n+3):nth-child(-n+9),#ut th:nth-child(11),#ut td:nth-child(11){display:none}.stack td:empty{display:none}.stack td>.row{justify-content:flex-end}}
