:root{--bg:#06151d;--panel:#0a2430;--card:#103541;--line:#2b6473;--text:#effbfc;--muted:#a9c7ce;--accent:#31c3b4;--accent2:#168cff;--danger:#d65454;--warning:#d99a22;--ok:#2e9d50}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{border:0;border-radius:9px;padding:10px 13px;background:var(--accent);font-weight:800;color:#04272d;cursor:pointer}button.secondary{background:#d9edf1}button.danger{background:var(--danger);color:#fff}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{width:100%;padding:10px;border-radius:9px;border:1px solid var(--line);background:#061d26;color:var(--text)}textarea{min-height:85px;resize:vertical}label{display:block;color:var(--muted);font-size:.84rem;margin:10px 0 5px}.hidden{display:none!important}.error{color:#ff9a9a;margin-top:8px}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top,#0b3542,#06151d 55%)}.card{background:linear-gradient(180deg,#113846,#0d303c);border:1px solid var(--line);border-radius:13px;padding:13px;margin-bottom:12px}.login-card{width:min(430px,100%);padding:26px}.brand-mark{font-size:2.2rem}.login-card h1{margin:5px 0}.login-card p,.page p{color:var(--muted)}header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#08212b;border-bottom:1px solid var(--line);position:relative;z-index:1001}header h1{margin:0;font-size:1.22rem}header small{color:var(--muted)}nav{display:flex;gap:7px;flex-wrap:wrap}.tabbtn{background:#163d49;color:#fff}.tabbtn.active{background:var(--accent);color:#04272d}.tab{display:none}.tab.active{display:block}.area{display:grid;grid-template-columns:repeat(4,1fr) auto auto;gap:8px;padding:9px;background:#08212b}.toolbar{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#0a2a35;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.toolbar select{width:150px}.toolbar span{font-size:.83rem;color:var(--muted);margin-left:auto}main{display:grid;grid-template-columns:minmax(0,1fr) 410px;height:calc(100vh - 166px)}#map{height:100%;min-height:430px}aside{overflow:auto;padding:12px;background:var(--panel);border-left:1px solid var(--line)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.stats div,.reportcards>div{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:11px;text-align:center}.stats b{display:block;font-size:1.4rem}.stats span,.target-box span{font-size:.76rem;color:var(--muted)}.summary{padding:9px;background:#082833;border-radius:8px;color:var(--muted)}.target-box{border-width:2px}.target-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.target-row small{display:block;color:var(--muted)}.target-row b{display:block;font-size:2.25rem;line-height:1}.target-controls{display:grid;grid-template-columns:130px 70px auto;gap:7px}.target-controls input{text-align:center}.target-complete{border-color:var(--ok);background:#103c32}.warning{background:#654b0f;border:1px solid #d99a22;padding:11px;border-radius:10px;margin-bottom:12px}.card-head,.page-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.card-head h2,.page-head h2{margin:0}.icon{font-size:1.3rem;padding:7px 11px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.quick{min-height:52px;color:#fff}.quick.sale{background:#2e9d50}.quick.follow{background:#d99a22;color:#221700}.quick.noanswer{background:#d9534f}.quick.uninterested{background:#657078}.quick.solar{background:#8e44ad}.quick.dnc{background:#111;border:1px solid #777}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}details{border-top:1px solid var(--line);margin-top:10px;padding-top:8px}summary{font-weight:800;cursor:pointer;padding:8px 0}.checks{display:flex;gap:16px}.checks label{display:flex;gap:6px;align-items:center}.checks input{width:auto}.timer{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;margin-top:12px}.timer b{font-size:1.2rem}.wide{width:100%;margin-top:10px}.property{padding:9px;border:1px solid var(--line);border-radius:9px;margin:7px 0;background:#082833;cursor:pointer}.property:hover{border-color:var(--accent)}.property small{display:block;color:var(--muted)}.small-search{width:120px}.offline{position:sticky;bottom:5px;background:#855900;padding:9px;border-radius:9px;text-align:center}.page{padding:18px;max-width:1450px;margin:auto}.report-actions{display:flex;gap:8px;flex-wrap:wrap}.report-actions select{width:auto}.reportcards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.reportcards b{display:block;font-size:1.65rem}.reportcards span{color:var(--muted)}.table{overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:10px 0 22px}table{border-collapse:collapse;width:100%;min-width:740px}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left}th{background:#123744}.userform{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:var(--panel);padding:14px;border-radius:12px}.userform button{grid-column:span 3}.followup-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.follow-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px}.follow-card.overdue{border-color:var(--danger)}.follow-card h3{margin:0 0 5px}.follow-card p{margin:5px 0}.pin{width:22px;height:22px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:3px solid white;box-shadow:0 1px 5px #000}.pin i{display:block;width:6px;height:6px;border-radius:50%;background:#fff;margin:5px}.my-location{width:18px;height:18px;border-radius:50%;background:#168cff;border:3px solid #fff;box-shadow:0 0 0 7px rgba(22,140,255,.2)}.modal{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:18px}.modal-card{width:min(680px,100%);max-height:88vh;overflow:auto;margin:0}.history-item{border-left:3px solid var(--accent);padding:9px 12px;margin:9px 0;background:#082833}.toast{position:fixed;z-index:10000;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ok);color:#fff;padding:12px 18px;border-radius:999px;font-weight:800;box-shadow:0 5px 20px #000}
@media(max-width:1000px){.area{grid-template-columns:1fr 1fr}.toolbar{flex-wrap:wrap}.toolbar span{width:100%;margin:0}main{grid-template-columns:1fr;grid-template-rows:55vh auto;height:auto}aside{border-left:0;border-top:1px solid var(--line);overflow:visible}.reportcards{grid-template-columns:repeat(2,1fr)}.followup-list{grid-template-columns:1fr 1fr}.userform{grid-template-columns:1fr}.userform button{grid-column:auto}}
@media(max-width:600px){header{display:block}nav{margin-top:8px}.area{grid-template-columns:1fr 1fr}.toolbar button,.toolbar select{flex:1;min-width:130px}.target-row{align-items:flex-start}.target-controls{grid-template-columns:1fr 60px}.target-controls button{grid-column:span 2}.quick-grid,.action-grid,.form-grid{grid-template-columns:1fr 1fr}.timer{grid-template-columns:1fr 1fr}.timer b{grid-column:span 2;text-align:center}.followup-list{grid-template-columns:1fr}.page-head{align-items:flex-start}.report-actions{justify-content:flex-end}}

.header-brand{display:flex;align-items:center;gap:10px}.header-logo{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;background:#103541;overflow:hidden;font-size:1.4rem}.header-logo img,.brand-mark img{width:100%;height:100%;object-fit:contain}.brand-mark{width:76px;height:76px;display:grid;place-items:center;overflow:hidden}.version{display:block;color:var(--muted);margin:4px 0 10px}.version-badge{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-grid .card{margin:0}.logo-preview{min-height:90px;border:1px dashed var(--line);border-radius:10px;margin:8px 0 12px;display:grid;place-items:center;color:var(--muted);padding:8px}.logo-preview img{max-width:100%;max-height:110px;object-fit:contain}.button-row{display:flex;gap:8px;flex-wrap:wrap}.button-row button{flex:1}.settings-grid h3{margin-top:0}
@media(max-width:800px){.settings-grid{grid-template-columns:1fr}}
