:root{
  --accent:#11806a;
  --accent-dark:#0d5e4e;
  --soft:#b9d97f;
  --soft-2:#ecf6d7;
  --text:#13211d;
  --muted:#64706b;
  --border:#dce6df;
  --bg:#f7faf8;
  --white:#fff;
  --danger:#bb3d3d;
  --warning:#f0b94a;
  --shadow:0 18px 40px rgba(17,128,106,.12);
  --radius:22px;
}
*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}
body{min-height:100vh}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:14px;padding:12px 18px;font-weight:700;cursor:pointer;transition:.2s;background:#eef5f2}
.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark)}.btn.ghost{background:#fff;border:1px solid var(--border)}.btn.danger{background:var(--danger);color:#fff}.btn.small{padding:8px 12px;border-radius:10px;font-size:13px}.btn.large{padding:16px 22px;border-radius:16px}
.alert{padding:14px 16px;border-radius:16px;margin:14px 0;font-weight:600}.alert.success{background:#e8f8ee;color:#1f6d3b}.alert.error{background:#fff0f0;color:#a13333}
.public-header{display:flex;justify-content:space-between;align-items:center;padding:22px 5vw;position:sticky;top:0;background:rgba(247,250,248,.95);backdrop-filter:blur(12px);z-index:10;border-bottom:1px solid rgba(220,230,223,.8)}
.brand-block{display:flex;align-items:center;gap:14px}.brand-block img{width:62px;height:62px;object-fit:contain;border-radius:18px;background:#fff;padding:8px;box-shadow:var(--shadow)}.brand-block strong{display:block;font-size:18px}.brand-block span{font-size:14px;color:var(--muted)}.header-actions{display:flex;gap:12px;align-items:center}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;padding:48px 5vw 30px;align-items:center;background:linear-gradient(180deg,#f7faf8 0%,#eef6dd 100%)}
.pill{display:inline-flex;padding:8px 12px;background:var(--soft);border-radius:999px;font-weight:800;color:var(--accent-dark);margin-bottom:16px}
.hero h1{font-size:clamp(36px,4vw,62px);line-height:1.02;margin:0 0 14px}.hero p{font-size:18px;color:var(--muted);max-width:650px}
.search-panel{margin-top:22px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.search-panel label{display:block;font-size:20px;font-weight:800;margin-bottom:12px}.live-search{position:relative}.live-search input{width:100%;padding:18px 20px;border-radius:16px;border:1px solid var(--border);font-size:18px;outline:none}.live-search input:focus{border-color:var(--accent)}
.search-results{position:absolute;left:0;right:0;top:calc(100% + 10px);background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);display:none;max-height:320px;overflow:auto;z-index:9}.search-results.active{display:block}.search-item{padding:14px 16px;border-bottom:1px solid #eef3ef;cursor:pointer}.search-item:last-child{border-bottom:0}.search-item strong{display:block}.search-item span{color:var(--muted);font-size:14px}
.hero-card{display:flex;justify-content:center}.screen-box{width:min(480px,100%);background:#111;border-radius:28px;padding:16px;box-shadow:0 30px 50px rgba(0,0,0,.18)}.screen-top{height:18px;background:#1d1d1d;border-radius:12px 12px 0 0}.screen-body{background:#fff;border-radius:0 0 18px 18px;padding:28px;min-height:340px}.screen-body strong{display:block;font-size:20px;margin-top:12px}.screen-body p{margin:8px 0 0;font-size:15px}
.quote-builder{padding:34px 5vw 70px}.builder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.builder-step h2{font-size:22px;margin:0 0 16px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px}.select-card{border:1px solid var(--border);background:#fff;border-radius:18px;padding:14px;min-height:110px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;text-align:center;font-weight:700;cursor:pointer;transition:.2s;box-shadow:0 6px 18px rgba(0,0,0,.03)}.select-card:hover,.select-card.active{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow)}.select-card img{max-height:52px;object-fit:contain}.select-card small{font-size:12px;color:var(--muted);font-weight:600}.muted-panel{background:#f8fbfa;border:1px dashed var(--border);border-radius:24px;padding:12px;min-height:150px}
.quote-form{margin-top:26px;display:grid;grid-template-columns:1fr .95fr;gap:22px;align-items:start}.quote-summary,.panel,.stat-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:22px;box-shadow:var(--shadow)}
.summary-empty{color:var(--muted)}.summary-highlight{display:grid;gap:10px}.summary-price{font-size:34px;font-weight:900;color:var(--accent-dark)}.summary-chip{display:inline-flex;width:max-content;padding:8px 10px;border-radius:999px;font-weight:700}.summary-chip.yes{background:#e7f7ec;color:#22643b}.summary-chip.no{background:#fff1e8;color:#b0591a}.summary-chip.unknown{background:#edf4f2;color:#47635e}
.customer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;background:#fff;border:1px solid var(--border);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.customer-grid .full{grid-column:1/-1}label{display:block;font-size:14px;font-weight:700;margin-bottom:8px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:14px;font:inherit;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent)}textarea{resize:vertical}
.whatsapp-float{position:fixed;right:24px;bottom:24px;background:#25D366;color:#fff;padding:15px 18px;border-radius:999px;font-weight:800;box-shadow:0 20px 30px rgba(37,211,102,.3);z-index:9}.public-footer{text-align:center;padding:20px 0 34px;color:var(--muted)}
.admin-body{background:#eef4f0}.admin-shell{display:grid;grid-template-columns:290px 1fr;min-height:100vh}.sidebar{background:#14201d;color:#dfe9e3;padding:28px 18px;display:flex;flex-direction:column;gap:24px}.sidebar-brand{display:flex;gap:12px;align-items:center}.sidebar-brand img{width:58px;height:58px;background:#fff;padding:6px;border-radius:16px}.sidebar-brand small{display:block;color:#96a59d}.sidebar nav{display:grid;gap:8px}.sidebar nav a,.logout-link{padding:12px 14px;border-radius:14px;color:#dfe9e3}.sidebar nav a.active,.sidebar nav a:hover,.logout-link:hover{background:rgba(255,255,255,.08)}.logout-link{margin-top:auto;background:rgba(255,255,255,.03)}
.content{padding:28px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.topbar h1{margin:0 0 6px;font-size:34px}.topbar p{margin:0;color:var(--muted)}.topbar-actions{display:flex;gap:14px;align-items:center}
.user-chip{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);padding:10px 12px;border-radius:16px}.user-chip img{width:42px;height:42px;border-radius:50%;object-fit:cover}.user-chip small{color:var(--muted)}
.notification-wrap{position:relative}.notif-btn{border:none;background:#fff;border:1px solid var(--border);width:52px;height:52px;border-radius:16px;position:relative;font-size:20px;cursor:pointer}.notif-btn span{position:absolute;top:-6px;right:-6px;min-width:24px;height:24px;background:var(--danger);color:#fff;border-radius:999px;font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:800}.notif-dropdown{position:absolute;top:60px;right:0;width:290px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px;box-shadow:var(--shadow);display:none}.notification-wrap.open .notif-dropdown{display:block}.notif-dropdown a{display:block;padding:10px 0;border-bottom:1px solid #eef3ef}.notif-dropdown a:last-child{border-bottom:0}.notif-dropdown span,.notif-dropdown small,.muted{color:var(--muted)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.stat-card span{color:var(--muted)}.stat-card strong{display:block;font-size:40px;margin-top:10px}
.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.panel-head h2{margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:14px 12px;border-bottom:1px solid #eef3ef;text-align:left;vertical-align:top}th{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.thumb{width:46px;height:46px;object-fit:contain;background:#fff;border:1px solid var(--border);padding:6px;border-radius:10px}
.status-badge{display:inline-flex;padding:8px 10px;border-radius:999px;font-weight:800;font-size:13px}.status-badge.pending{background:#fff6da;color:#8a6a09}.status-badge.approved{background:#e8f8ee;color:#22643b}.status-badge.rejected{background:#fff0f0;color:#a13333}
.split-grid{display:grid;grid-template-columns:390px 1fr;gap:20px}.split-grid.wide-left{grid-template-columns:470px 1fr}.stack-form{display:grid;gap:12px}.check{display:flex;gap:10px;align-items:center}.check input{width:auto}.actions-inline,.inline-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.help-list{display:grid;gap:12px;padding-left:18px}.help-list li{color:var(--muted)}.login-body,.install-body{display:grid;place-items:center;padding:30px;background:linear-gradient(180deg,#eff7de 0%,#eef4f0 100%)}.login-card,.install-card{width:min(960px,95vw);background:#fff;border:1px solid var(--border);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.login-card{width:min(460px,92vw)}.login-logo{width:82px;height:82px;object-fit:contain;margin:0 auto 8px}.form-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.install-card h3{margin-bottom:8px}
hr{border:none;border-top:1px solid #eef3ef;margin:12px 0}
@media (max-width: 1100px){.hero,.builder-grid,.quote-form,.stats-grid,.split-grid,.split-grid.wide-left,.form-columns,.admin-shell{grid-template-columns:1fr}.sidebar{padding-bottom:14px}.content{padding:18px}.public-header,.topbar{flex-direction:column;align-items:flex-start}.header-actions,.topbar-actions{width:100%;justify-content:flex-start}.notif-dropdown{right:auto;left:0}}
@media (max-width: 640px){.hero{padding-top:28px}.hero h1{font-size:34px}.customer-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,1fr)}.sidebar{display:none}.admin-shell{grid-template-columns:1fr}.content{padding:14px}.quote-builder{padding:20px 4vw 60px}.public-header{padding:18px 4vw}.whatsapp-float{right:14px;bottom:14px}}
