
:root{--bg:#071015;--panel:#0c1820;--panel2:#101f29;--line:#223541;--text:#ecf4f7;--muted:#9fb0ba;--blue:#0b84ff;--green:#62d847;--yellow:#ffc107;--orange:#ff8a00;--red:#ff4b42}
*{box-sizing:border-box} body{margin:0;background:radial-gradient(circle at top,#102634,#050b0f 65%);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Inter,Arial,sans-serif}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line);background:#081117e8;position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:12px}.logo{font-size:38px} h1{font-size:22px;margin:0}.brand p{margin:3px 0 0;color:var(--muted);font-size:13px}
.metrics{display:flex;gap:10px}.metric{min-width:82px;padding:10px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(#10202a,#0a141b);text-align:center}.metric span{text-transform:uppercase;font-size:11px;color:var(--muted)}.metric b{display:block;font-size:26px;color:#4eb3ff}.yellow b{color:var(--yellow)}.orange b{color:var(--orange)}.green b{color:var(--green)}
.tabs{display:flex;gap:2px;overflow:auto;padding:8px 12px;border-bottom:1px solid var(--line);background:#070e13;position:sticky;top:76px;z-index:9}.tab{white-space:nowrap;padding:11px 14px;text-transform:uppercase;font-size:12px;border-radius:6px;background:#0a141b;border:1px solid #111;color:var(--text)}.tab.active{background:#0b3972;border-color:#0b84ff}
.toolbar{display:flex;gap:8px;padding:10px 12px;background:#071015;border-bottom:1px solid var(--line);position:sticky;top:128px;z-index:8}input,select,button,textarea{background:#0b1720;color:var(--text);border:1px solid var(--line);border-radius:7px;padding:10px}button{cursor:pointer}.primary{background:#075fc9;border-color:#0b84ff;font-weight:800}.danger{border-color:var(--red);color:var(--red)}
#search{flex:1}main{padding:12px}.filters{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.filter{font-size:12px;padding:8px 12px}.filter.active{background:#0b3972;border-color:#0b84ff}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.card{min-width:0;background:linear-gradient(160deg,#10202a,#071015);border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 3px 12px #0008}.photo{height:150px;background:#15232e;position:relative;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover}.nophoto{display:grid;place-items:center;height:100%;color:#789}.badge{position:absolute;top:8px;left:8px;max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#075fc9;padding:4px 8px;border-radius:4px;font-weight:800}.type{position:absolute;top:8px;right:8px;max-width:38%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#111c24;padding:4px 8px;border-radius:4px;font-size:11px}
.card-body{padding:14px}.card h3{margin:0 0 5px;font-size:19px;line-height:1.25;overflow-wrap:anywhere}.loc{color:#79beff;font-size:13px;overflow-wrap:anywhere}.row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:9px;color:var(--muted);line-height:1.35}.row>span:first-child{flex:0 0 auto}.row>b,.row-value{min-width:0;text-align:right;overflow-wrap:anywhere}.row b{color:#fff}.row-value{display:grid;gap:3px}.target{color:var(--green)!important}.profit{color:var(--green)}.small,.muted{font-size:13px;color:var(--muted)}
.card-note{margin:12px 0 0;padding:10px 11px;border-left:3px solid #315064;background:#0c1820;color:#b6c6cf;font-size:13px;line-height:1.45;overflow-wrap:anywhere}.card-note span{display:block;margin-bottom:3px;color:#77bce8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;border-top:1px solid var(--line);padding-top:11px}.score{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:900;border:5px solid var(--green)}.score.med{border-color:var(--orange);color:var(--orange)}.score.low{border-color:var(--red);color:var(--red)}.status{min-width:0;max-width:calc(100% - 84px);overflow-wrap:anywhere;border:1px solid var(--orange);color:var(--yellow);padding:6px 9px;border-radius:4px;font-weight:700;font-size:12px}.btns{display:flex;gap:5px;flex:0 0 auto}.btns button{padding:7px;margin:0}
.price-dot{display:inline-block;width:11px;height:11px;border-radius:50%;vertical-align:middle;box-shadow:0 0 0 2px #0006}.price-dot.automatic{background:#ffd400}.price-dot.reviewed{background:#42d86b}
.view{display:none}.view.active{display:block}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}th{background:#0d1b24;color:#8fd0ff}
.analysis-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.analysis-card{background:#0a141b;border:1px solid var(--line);border-radius:8px;padding:14px}.quick,#itemForm{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick label,#itemForm label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}.full{grid-column:1/-1}.quick textarea,#itemForm textarea{min-height:90px}
.detail{position:fixed;right:0;top:0;height:100vh;width:min(660px,96vw);background:#0a141b;border-left:1px solid var(--line);z-index:30;padding:16px;transform:translateX(100%);transition:.25s;overflow:auto}.detail.open{transform:translateX(0)}.panel-head{display:flex;align-items:center;justify-content:space-between}.panel-head button{font-size:26px;border:0;background:transparent}
.spec-block{margin-top:12px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.spec-line{display:flex;border-bottom:1px solid var(--line)}.spec-line span{width:42%;padding:8px;background:#0d1b24;color:var(--muted)}.spec-line b{padding:8px;font-weight:500}
.gallery{margin:8px 0 14px}.gallery-main{display:block;width:100%;height:min(52vh,430px);object-fit:contain;background:#020609;border:1px solid var(--line);border-radius:10px}.gallery-strip{display:flex;gap:7px;overflow-x:auto;padding:9px 1px 5px;scroll-snap-type:x proximity}.gallery-thumb{flex:0 0 82px;height:62px;padding:2px;border:2px solid transparent;scroll-snap-align:start;background:#020609}.gallery-thumb.active{border-color:var(--blue)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:4px}.gallery-count{font-size:12px;color:var(--muted);padding-top:4px}.source-button{display:block;text-align:center;text-decoration:none;color:#fff;background:#075fc9;border:1px solid #0b84ff;border-radius:7px;padding:11px;font-weight:800;margin:10px 0 18px}.auction-copy{background:#0d1b24;border:1px solid var(--line);border-radius:8px;padding:12px;line-height:1.45}.auction-copy p:last-child{margin-bottom:0}.inspection-box{background:#332306;border:1px solid var(--orange);color:#ffe39b;border-radius:8px;padding:10px 14px}.inspection-box ul{margin:0;padding-left:20px}.inspection-box li+li{margin-top:7px}
.modal{position:fixed;inset:0;background:#000a;display:none;z-index:40;align-items:center;justify-content:center}.modal.open{display:flex}.modal-content{width:min(880px,94vw);max-height:92vh;overflow:auto;background:#0a141b;border:1px solid var(--line);border-radius:10px;padding:18px}
.data-actions{display:flex;gap:10px;flex-wrap:wrap}.fileBtn{display:inline-block;background:#0b1720;border:1px solid var(--line);border-radius:7px;padding:10px}.fileBtn input{display:none}#jsonBox{width:100%;height:320px;margin-top:12px;font-family:monospace}
@media(max-width:780px){.topbar{display:block}.brand{margin-bottom:10px}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.metric{min-width:0;padding:7px}.metric b{font-size:20px}.tabs{position:static}.toolbar{position:static;flex-wrap:wrap}.toolbar>*{min-width:0}.grid{grid-template-columns:1fr}.detail{width:100vw}.quick,#itemForm{grid-template-columns:1fr}h1{font-size:18px}.photo{height:180px}.row{gap:8px}.row-value{font-size:12px}.spec-line{display:grid;grid-template-columns:minmax(110px,38%) 1fr}.spec-line span{width:auto}.spec-line b{overflow-wrap:anywhere}.card-bottom{align-items:flex-end}}
.integrity{padding:9px 14px;border-bottom:1px solid var(--line);font-size:13px;position:sticky;top:76px;z-index:9}.integrity.good{background:#092314;color:#8ff08a}.integrity.warn{background:#352708;color:#ffd55c}.lane-tabs{display:flex;gap:8px;padding:9px 12px;background:#091219;border-bottom:1px solid var(--line)}.lane-tabs button{font-weight:900;flex:1}.lane-tabs button.active{background:#0b3972;border-color:#0b84ff}.missing{margin-top:10px;padding:8px;border:1px solid var(--orange);background:#342709;color:#ffd55c;border-radius:6px;font-size:12px;font-weight:800}.card.unpaid{border-color:#8d5b14}.status-won_unpaid{border-color:var(--orange)!important}.status-owned,.status-active,.status-in_prep,.status-listed{border-color:var(--green)!important;color:#9afa8a!important}.status-sold{border-color:#48a7ff!important;color:#8fd0ff!important}.form-note{background:#0e2635;border:1px solid #29526a;padding:11px;border-radius:7px;color:#c6e9ff}.confirm{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px!important;padding:12px;border:1px solid var(--green);border-radius:7px;color:#d9ffd2!important}.confirm input{width:auto}.big{width:100%;margin:14px 0}.tx-list,.audit-list{display:grid;gap:7px}.tx{border:1px solid var(--line);padding:9px;border-radius:6px;display:grid;grid-template-columns:1fr auto;gap:4px}.tx small{grid-column:1/-1;color:var(--muted)}.tx em{color:var(--orange);font-size:10px}.tx-edit{grid-column:2;padding:5px 9px;font-size:11px}.audit-list div{font-size:12px;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 0}.audit-list span{color:#6fa8c6}.audit-queue{display:grid;gap:8px}.queue-item{display:grid;grid-template-columns:1fr 2fr auto;gap:12px;align-items:center;border:1px solid var(--orange);background:#211a08;padding:10px;border-radius:7px}.queue-item span,.bad{color:#ffd55c}.goodbox{padding:14px;border:1px solid var(--green);border-radius:7px;color:#a5f79a}.empty{padding:30px;color:var(--muted);text-align:center}.narrow{width:min(650px,94vw)}.analysis-card p{color:var(--muted);margin-bottom:0}.metric:last-child{min-width:130px}.metric:last-child b{font-size:19px;margin-top:5px}
@media(max-width:780px){.integrity{position:static}.lane-tabs{position:static}.queue-item{grid-template-columns:1fr}.metric:last-child{min-width:0}.metric:last-child b{font-size:15px}}
.hidden{display:none!important}
.cloud-bar{min-height:38px;display:flex;align-items:center;gap:9px;padding:7px 12px;background:#0a141b;border-bottom:1px solid var(--line);font-size:12px;position:relative;z-index:110}
.cloud-bar .cloud-dot{width:10px;height:10px;border-radius:50%;background:#789;box-shadow:0 0 9px currentColor}
.cloud-bar.live{color:#91f28b;background:#082215}.cloud-bar.live .cloud-dot{background:var(--green)}
.cloud-bar.saving,.cloud-bar.connecting{color:#8fd0ff}.cloud-bar.saving .cloud-dot,.cloud-bar.connecting .cloud-dot{background:var(--blue);animation:pulse 1.1s infinite}
.cloud-bar.error,.cloud-bar.offline{color:#ffd25c;background:#2b2108}.cloud-bar.error .cloud-dot,.cloud-bar.offline .cloud-dot{background:var(--orange)}
.cloud-bar #cloudUser{margin-left:auto;color:var(--muted)}.cloud-bar button{padding:4px 8px;font-size:11px}
@keyframes pulse{50%{opacity:.35;transform:scale(.72)}}
.cloud-gate{position:fixed;inset:0;z-index:100;display:none;place-items:center;padding:18px;background:rgba(2,7,10,.93);backdrop-filter:blur(10px)}
.cloud-gate.open{display:grid}.gate-card{width:min(520px,96vw);max-height:94vh;overflow:auto;padding:24px;background:linear-gradient(155deg,#102631,#071015);border:1px solid #315064;border-radius:14px;box-shadow:0 24px 80px #000}
.gate-mark{font-size:46px}.gate-card h2{margin:8px 0}.gate-card>p{color:var(--muted);line-height:1.45}
.gate-form{display:grid;gap:13px;margin-top:18px}.gate-form label{display:grid;gap:6px;color:#b9cad3;font-size:12px}.gate-form textarea{resize:vertical;word-break:break-all}
.gate-form small{color:var(--muted);line-height:1.4}.gate-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
@media(max-width:580px){.cloud-bar{flex-wrap:wrap}.cloud-bar #cloudUser{order:3;width:100%;margin-left:19px}.gate-card{padding:18px}.gate-actions{grid-template-columns:1fr}}

#fundingForm,#loanForm,#loanPaymentForm,#publishForm{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
#fundingForm label,#loanForm label,#loanPaymentForm label,#publishForm label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}
#fundingForm textarea,#loanForm textarea,#loanPaymentForm textarea,#publishForm textarea{min-height:90px}
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.funding-ok{color:var(--green)}.funding-short{color:var(--orange)}.funding-over{color:var(--red)}.inline-actions{display:flex;gap:6px;flex-wrap:wrap}.inline-actions button{padding:6px 8px;font-size:11px}.source-total{font-size:28px;color:var(--green);font-weight:900}.privacy-note{padding:10px;border-left:4px solid var(--green);background:#092314;color:#caffc4}.loan-balance{color:var(--orange);font-weight:900}
#fundingAudit{margin-bottom:24px}#fundingAudit td:last-child,#fundingAudit th:last-child{text-align:right}#fundingAudit button{white-space:nowrap}
@media(max-width:780px){#fundingForm,#loanForm,#loanPaymentForm,#publishForm{grid-template-columns:1fr}.section-head{display:block}.section-head button{width:100%;margin-bottom:12px}}

/* Asset repair and action control */
.action-list{display:grid;gap:12px;margin-top:14px}.action-card{border:1px solid var(--line);border-left:5px solid #4eb3ff;border-radius:9px;background:linear-gradient(145deg,#10202a,#081117);padding:14px}.action-card.priority-high,.asset-action-row.priority-high{border-left-color:var(--orange)}.action-card.priority-safety,.asset-action-row.priority-safety{border-left-color:var(--red)}.action-card.priority-low,.asset-action-row.priority-low{border-left-color:#71818a}.action-card.overdue{box-shadow:inset 0 0 0 1px var(--red)}.action-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.action-head h3{margin:5px 0 0}.action-asset{color:#79beff;font-weight:800}.action-priority{white-space:nowrap;border:1px solid currentColor;border-radius:999px;padding:5px 9px;color:#ffd55c;font-size:12px;font-weight:800}.action-meta{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0;color:var(--muted);font-size:13px}.action-total{display:block;font-size:30px;color:#4eb3ff}.action-modal{z-index:120}.action-modal form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.action-modal label{display:grid;gap:6px;color:var(--muted);font-size:14px}.asset-actions{border:1px solid var(--line);border-radius:9px;padding:14px;margin-bottom:16px}.asset-actions h3{margin:0}.asset-action-row{display:grid;width:100%;text-align:left;border-left:5px solid #4eb3ff;margin-top:8px}.asset-action-row span{color:var(--muted);font-size:12px;margin-top:4px}.action-filters{margin-top:16px}
@media(max-width:650px){.action-modal form{grid-template-columns:1fr}.action-head{display:grid}.action-priority{justify-self:start}.action-meta{display:grid;gap:6px}}
.funding-group{border:1px solid var(--line);border-radius:8px;padding:14px;margin:10px 0}
.funding-group summary{cursor:pointer;font-size:16px;font-weight:700;overflow-wrap:anywhere}
#editorFunding{border:1px solid var(--line);border-radius:8px;padding:14px;min-width:0}
#editorFunding h3{margin-top:0}
#editorFunding p{font-size:14px;color:var(--muted)}
.tx{min-width:0;grid-template-columns:minmax(0,1fr) auto}
.tx span,.tx small{overflow-wrap:anywhere}
.tx-edit{font-size:14px;min-height:36px}
#fundingModal{z-index:60}
#editorFunding>.primary,.funding-group>.primary{margin-top:12px}
#itemForm .form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#itemForm .funding-shortcut{display:flex;flex-direction:column;gap:6px;min-width:0}
#itemForm h3{margin:16px 0 0}
#itemForm .photo-order{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#itemForm .photo-edit{display:flex;flex-wrap:wrap;gap:5px;min-width:0;padding:8px;border:1px solid var(--line)}
#itemForm .photo-edit img{width:100%;height:110px;object-fit:contain}
#itemForm .photo-edit span{width:100%;font-size:14px}
#itemForm .photo-edit button{font-size:14px}
@media(max-width:650px){#itemForm .form-grid{grid-template-columns:1fr}#itemForm .photo-order{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Private evidence capture: touch-sized controls, no public gallery integration. */
.evidence-modal{z-index:90}.evidence-modal [hidden]{display:none!important}.evidence-modal label,.evidence-modal p{font-size:1rem}.evidence-modal button{min-height:44px;font-size:1rem}.evidence-actions{display:flex;gap:12px;flex-wrap:wrap}.evidence-thumbs{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:12px 0}.evidence-thumbs img{display:block;width:100%;height:140px;object-fit:contain;background:#13232d}.evidence-thumbs a,.evidence-thumb{min-width:0;overflow-wrap:anywhere}.evidence-thumb small{display:block;overflow-wrap:anywhere}.evidence-card{border:1px solid var(--line);border-radius:8px;padding:14px;margin:12px 0}.evidence-card h4{margin:0;font-size:1.1rem}.evidence-note{white-space:pre-wrap;overflow-wrap:anywhere}.evidence-section{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}.evidence-modal [data-status]{color:#ffd55c;overflow-wrap:anywhere}
