:root{--bg:#070b12;--panel:#111827;--panel2:#182231;--line:#263246;--text:#f5f7fb;--muted:#9fb0c7;--green:#35e89d;--blue:#24a8ff;--yellow:#ffd447;--red:#ff5d75;--orange:#c58a62;--shadow:0 18px 60px rgba(0,0,0,.35);--radius:22px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at 20% 0%,rgba(53,232,157,.18),transparent 30%),radial-gradient(circle at 90% 15%,rgba(36,168,255,.18),transparent 28%),var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}a{color:inherit;text-decoration:none}input,select,textarea,button{font:inherit}button,.btn{border:0;border-radius:14px;padding:13px 18px;background:linear-gradient(135deg,var(--green),var(--blue));color:#061018;font-weight:800;cursor:pointer;display:inline-flex;gap:8px;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(53,232,157,.2)}.btn.ghost{background:#172131;color:var(--text);border:1px solid var(--line);box-shadow:none}.btn.small{padding:9px 13px;border-radius:12px;font-size:14px}.btn.danger{background:linear-gradient(135deg,#ff7b8c,#ff415e);color:white}.btn.flat{background:#1b2738;color:#dbe7ff;box-shadow:none}.public-nav{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(18px);position:sticky;top:0;background:rgba(7,11,18,.7);z-index:5}.brand{display:flex;align-items:center;gap:7px;font-size:24px;letter-spacing:-.04em}.brand-mark{font-weight:950;color:white}.brand b{color:var(--green)}.brand em{font-size:10px;background:#213047;color:#aee9ff;padding:3px 6px;border-radius:10px;font-style:normal;margin-left:4px}.public-nav nav{display:flex;gap:18px;align-items:center;color:#dce8f9}.public-main{padding:0 5vw}.hero{min-height:calc(100vh - 120px);display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}.eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(53,232,157,.3);background:rgba(53,232,157,.1);border-radius:999px;padding:9px 13px;color:#bafde2;font-weight:700}.hero h1{font-size:clamp(48px,7vw,94px);line-height:.92;margin:24px 0 18px;letter-spacing:-.075em}.grad{background:linear-gradient(135deg,var(--green),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{font-size:20px;line-height:1.65;color:#b9c7db;max-width:760px}.hero-actions{display:flex;gap:14px;margin-top:24px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}.stat,.glass,.card,.panel{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);box-shadow:var(--shadow)}.stat{padding:22px}.stat b{display:block;font-size:28px;color:var(--green)}.stat span{color:var(--muted)}.hero-card{padding:26px;position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;inset:-80px -120px auto auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,var(--green),transparent 65%);opacity:.3;animation:pulse 4s infinite}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;position:relative}.service-tile{padding:22px;border-radius:20px;background:#121b29;border:1px solid var(--line);min-height:125px}.service-tile strong{display:block;font-size:18px}.service-tile span{display:block;margin-top:7px;color:var(--muted);font-size:14px}.icon{width:44px;height:44px;border-radius:15px;background:linear-gradient(135deg,var(--green),var(--blue));display:grid;place-items:center;color:#061018;font-size:24px;margin-bottom:16px}.section{padding:72px 0}.section h2{font-size:40px;letter-spacing:-.04em;margin:0 0 14px}.section p{color:#b8c6d8}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.feature{padding:24px}.public-footer{padding:34px 5vw;color:#8ea0b8;border-top:1px solid rgba(255,255,255,.06)}.auth-wrap,.installer-wrap{min-height:100vh;display:grid;place-items:center;padding:28px}.auth-card,.installer-card{width:min(460px,94vw);padding:34px;background:#111827;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}.auth-card h1,.installer-card h1{margin:18px 0 20px;font-size:32px}.form-row{margin-bottom:15px}.form-row label{display:block;font-weight:800;margin-bottom:8px;color:#dbe7ff;font-size:14px}.input,input,select,textarea{width:100%;background:#0b1220;color:var(--text);border:1px solid #2a374c;border-radius:14px;padding:13px 15px;outline:none}textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(53,232,157,.1)}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{background:#151d2a;border-right:1px solid #253146;padding:22px 15px;position:sticky;top:0;height:100vh;overflow:auto}.side-brand{justify-content:center;margin:4px 0 26px}.side-card{display:flex;gap:12px;align-items:center;background:#101827;border:1px solid #253146;border-radius:18px;padding:13px;margin-bottom:20px}.side-card small{display:block;color:var(--muted)}.orb{width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,var(--green),var(--blue));box-shadow:0 0 28px rgba(53,232,157,.35)}.side-nav{display:flex;flex-direction:column;gap:6px}.side-nav span{text-transform:uppercase;color:#90a4bf;font-size:12px;font-weight:900;margin:14px 0 5px}.side-nav a{padding:13px 14px;border-radius:14px;color:#dce8f9;font-weight:760;display:flex;justify-content:space-between;align-items:center}.side-nav a:hover,.side-nav a.active{background:linear-gradient(90deg,rgba(53,232,157,.18),rgba(36,168,255,.08));color:var(--green)}.support-card{margin-top:28px;background:linear-gradient(135deg,#bb815e,#6e4a38);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:4px}.support-card small{color:#ffece0}.content{padding:24px 30px 60px;min-width:0}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.topbar h1{font-size:28px;margin:0;letter-spacing:-.04em}.top-actions{display:flex;gap:10px;align-items:center}.pill,.date-pill,.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:9px 13px;background:#101827;border:1px solid #263146;color:#dce8f9;font-weight:800}.pill{color:var(--green)}.grid{display:grid;gap:18px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.panel{padding:22px}.metric{min-height:140px;position:relative;overflow:hidden}.metric:after{content:"";position:absolute;right:-40px;bottom:-50px;width:170px;height:110px;background:rgba(53,232,157,.12);border-radius:50%}.metric b{font-size:30px;display:block;margin-top:12px}.metric span{color:var(--muted);font-weight:760}.hero-strip{background:linear-gradient(135deg,rgba(53,232,157,.92),rgba(36,168,255,.45));border-radius:22px;padding:28px;color:#07121a;position:relative;overflow:hidden}.hero-strip h2{margin:0 0 8px;font-size:30px}.hero-strip p{margin:0;font-weight:800}.table-wrap{overflow:auto;border-radius:20px;border:1px solid var(--line);background:#111827}table{width:100%;border-collapse:collapse;min-width:850px}th,td{padding:14px 16px;border-bottom:1px solid #222e42;text-align:left;vertical-align:top}th{color:#dce8f9;font-size:13px;background:#182231}td{color:#eef5ff;font-size:14px}tr:hover td{background:#151f2e}.badge{font-size:12px;padding:6px 10px}.badge.ok{background:rgba(53,232,157,.12);border-color:rgba(53,232,157,.3);color:var(--green)}.badge.warn{background:rgba(255,212,71,.12);border-color:rgba(255,212,71,.32);color:var(--yellow)}.badge.info{background:rgba(36,168,255,.12);border-color:rgba(36,168,255,.32);color:#8bd3ff}.badge.bad{background:rgba(255,93,117,.12);border-color:rgba(255,93,117,.32);color:#ff91a2}.badge.partial{background:rgba(197,138,98,.15);border-color:rgba(197,138,98,.35);color:#ffc19c}.alert{padding:14px 16px;border-radius:16px;margin:0 0 18px;font-weight:800}.alert.ok{background:rgba(53,232,157,.12);border:1px solid rgba(53,232,157,.35);color:var(--green)}.alert.err{background:rgba(255,93,117,.12);border:1px solid rgba(255,93,117,.35);color:#ff95a5}.alert.info{background:rgba(36,168,255,.12);border:1px solid rgba(36,168,255,.35);color:#93d7ff}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.chip{padding:11px 14px;background:#172131;border:1px solid #27354a;border-radius:14px;font-weight:800;color:#dbe7ff}.chip.active{background:linear-gradient(135deg,var(--green),var(--blue));color:#061018}.order-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:22px}.service-info{background:#111827;border:1px solid var(--line);border-radius:22px;padding:20px;position:sticky;top:24px}.service-info p{color:#b7c5d8;line-height:1.6}.total-box{font-size:34px;font-weight:950;color:var(--green);letter-spacing:-.04em}.actions{display:flex;gap:10px;flex-wrap:wrap}.muted{color:var(--muted)}.mini{font-size:12px;color:var(--muted)}.proforma{background:white;color:#111;padding:38px;border-radius:10px;max-width:900px;margin:0 auto}.proforma table{min-width:0;color:#111}.proforma th,.proforma td{color:#111;border-color:#ddd;background:white}.print-actions{max-width:900px;margin:20px auto;display:flex;gap:10px}.kpi-chart{height:220px;border-radius:18px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 40px),repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 36px);display:flex;align-items:end;gap:9px;padding:18px}.bar{flex:1;border-radius:10px 10px 0 0;background:linear-gradient(180deg,var(--green),var(--blue));min-height:12px}.empty{padding:30px;text-align:center;color:var(--muted)}@keyframes pulse{0%,100%{transform:scale(1);opacity:.22}50%{transform:scale(1.15);opacity:.35}}@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.content{padding:20px}.hero{grid-template-columns:1fr}.cards,.grid.cols-4,.grid.cols-3,.grid.cols-2,.order-layout{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.topbar{height:auto;align-items:flex-start;gap:12px;flex-direction:column}.top-actions{flex-wrap:wrap}.public-nav{height:auto;gap:12px;padding:16px 5vw;align-items:flex-start}.public-nav nav{flex-wrap:wrap}.hero{padding-top:38px}.hero-actions{flex-direction:column}.service-grid{grid-template-columns:1fr}}@media print{body{background:white}.print-actions,.sidebar,.topbar{display:none!important}.app-shell{display:block}.content{padding:0}.proforma{box-shadow:none;border-radius:0}}
