:root{--c-bg:#141416;--c-surface:#1e1f24;--c-surface-2:#26272d;--c-line:#34363d;--c-ink:#f1f2f4;--c-muted:#9aa0a6;--c-orange:#f2611c;--c-orange-d:#d44e12;--c-green:#37c871;--c-amber:#f4c430;--c-red:#ff5a47}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--c-surface);color:var(--c-ink);border-bottom:2px solid var(--c-orange);align-items:center;gap:10px;padding:10px 16px;display:flex}.brand-logo{object-fit:contain;border-radius:8px;flex-shrink:0;width:38px;height:38px}.app-title{letter-spacing:.5px;font-size:18px;font-weight:800}.app-main{flex:1;padding-bottom:76px}.app-nav{background:var(--c-surface);border-top:1px solid var(--c-line);display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--c-muted);flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px;font-size:11px;text-decoration:none;display:flex}.nav-item.active{color:var(--c-orange);font-weight:700}.nav-icon{font-size:20px}.nav-label{white-space:nowrap}@media (width>=900px){.app{max-width:1100px;margin:0 auto}.app-nav{border-top:none;border-bottom:1px solid var(--c-line);position:static}.app-main{padding-bottom:0}}.form{gap:14px;max-width:560px;padding:16px;display:grid}.field{gap:5px;display:grid}.field>span{color:var(--c-muted);font-size:13px;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--c-line);font:inherit;background:var(--c-bg);color:var(--c-ink);border-radius:9px;padding:11px 12px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--c-orange);outline-offset:1px;border-color:var(--c-orange)}.err{color:var(--c-red);font-size:12px}.btn-primary{background:var(--c-orange);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:13px;font-size:15px;font-weight:700}.btn-primary:hover{background:var(--c-orange-d)}.ok{color:var(--c-green);font-weight:600}.loc-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.loc-set{color:var(--c-green);align-items:center;gap:8px;font-weight:600;display:inline-flex}.loc-clear{color:var(--c-muted);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:14px}.loc-status{margin-top:2px}.picker{gap:6px;margin-top:8px;display:grid}.picker-wrap{border:1px solid var(--c-line);border-radius:9px;height:260px;position:relative;overflow:hidden}.picker-wrap .leaflet-container{position:absolute;inset:0}.picker-hint{color:var(--c-muted);font-size:12px}.board{flex-direction:column;gap:8px;padding:12px;display:flex}.board-empty{text-align:center;align-items:center;padding-top:32px}.empty-logo{border-radius:16px;width:200px;max-width:70%;height:auto;margin-bottom:12px}.muted{color:var(--c-muted);padding:4px}.board-head{z-index:2;background:var(--c-bg);gap:8px;padding:6px 0 8px;display:grid;position:sticky;top:0}.board-head h2{margin:0}.count{background:var(--c-orange);color:#fff;vertical-align:middle;border-radius:999px;min-width:20px;margin-left:6px;padding:1px 8px;font-size:13px;font-weight:700;display:inline-block}.board-search{border:1px solid var(--c-line);width:100%;font:inherit;background:var(--c-surface);color:var(--c-ink);border-radius:9px;padding:10px 12px}.board-search::placeholder{color:var(--c-muted)}.board-search:focus{outline:2px solid var(--c-orange);outline-offset:1px;border-color:var(--c-orange)}.seg{border:1px solid var(--c-line);border-radius:9px;align-self:start;display:inline-flex;overflow:hidden}.seg-btn{color:var(--c-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:7px 13px;font-weight:600}.seg-btn.on{background:var(--c-orange);color:#fff}.seg-form{align-self:stretch}.seg-form .seg-btn{text-align:center;flex:1}.age.done{color:var(--c-muted);font-weight:600}.rows{flex-direction:column;gap:6px;display:flex}.row{border:1px solid var(--c-line);border-left:5px solid var(--c-green);background:var(--c-surface);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.row-body{min-width:0;color:inherit;cursor:pointer;flex:1;text-decoration:none}.row-top{align-items:baseline;gap:8px;display:flex}.row-top strong{font-size:15px}.age{white-space:nowrap;margin-left:auto;font-size:12px;font-weight:700}.row-meta{color:var(--c-muted);flex-wrap:wrap;margin-top:2px;font-size:12.5px;display:flex}.row-meta span:not(:last-child):after{content:"·";color:var(--c-line);margin:0 6px}.row-note{color:#f3a460;font-weight:600}.btn-collect{border:1px solid var(--c-orange);color:var(--c-orange);cursor:pointer;background:0 0;border-radius:7px;flex-shrink:0;padding:6px 12px;font-size:13px;font-weight:600}.btn-collect:hover{background:var(--c-orange);color:#fff}.row-actions{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.btn-swap{color:#fff;cursor:pointer;white-space:nowrap;background:#3a4250;border:0;border-radius:7px;padding:6px 12px;font-size:13px;font-weight:600}.btn-swap:hover{background:#47515f}.btn-delete{border:1px solid var(--c-red);color:var(--c-red);cursor:pointer;background:0 0;border-radius:9px;padding:11px;font-size:14px;font-weight:600}.confirm{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.confirm>span{color:var(--c-red);font-weight:600}.btn-danger{background:var(--c-red);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:700}.btn-ghost{border:1px solid var(--c-line);color:var(--c-ink);cursor:pointer;background:0 0;border-radius:8px;padding:10px 16px}.map-screen{flex-direction:column;height:100%;min-height:60vh;display:flex}.map-wrap{flex:1;min-height:360px;position:relative}.map-wrap .leaflet-container{position:absolute;inset:0}.map-note{color:var(--c-muted);background:var(--c-surface);border-top:1px solid var(--c-line);padding:9px 14px;font-size:13px}.skip-pin{border:2px solid #fff;border-radius:50%;width:18px;height:18px;display:block;box-shadow:0 0 0 1px #00000080}.popup-sub{color:#64748b}.money-total{color:var(--c-muted);padding:4px;font-size:15px}.money-total strong{color:var(--c-orange);font-size:18px}.client-card{border:1px solid var(--c-line);background:var(--c-surface);border-radius:10px;gap:10px;padding:12px;display:grid}.client-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.kind-badge{color:var(--c-muted);border:1px solid var(--c-line);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px}.owes{color:var(--c-orange);white-space:nowrap;font-size:18px;font-weight:800}.small{margin-top:2px;font-size:12px}.client-jobs{gap:6px;display:grid}.job-row{color:var(--c-muted);align-items:center;gap:8px;font-size:13px;display:flex}.job-row>span:first-child{flex:1;min-width:0}.job-price{color:var(--c-ink);font-weight:600}.btn-pay{border:1px solid var(--c-green);color:var(--c-green);cursor:pointer;white-space:nowrap;background:0 0;border-radius:7px;padding:4px 10px;font-size:12px;font-weight:600}.btn-pay:hover{background:var(--c-green);color:#fff}.btn-settle{background:var(--c-orange);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-self:start;padding:8px 14px;font-size:13px;font-weight:700}.client-row{width:100%;color:var(--c-ink);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0;display:flex}.pay-chip{white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.pay-chip.paid{color:var(--c-green);border:1px solid var(--c-green)}.pay-chip.unpaid{color:var(--c-amber);border:1px solid var(--c-amber)}:root{font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}*{box-sizing:border-box}body{color:#f1f2f4;background:#141416;margin:0}#root{min-height:100vh}h2{margin:0 0 8px;font-size:20px}
