:root{
  --ink:#15322d;
  --ink-2:#274a43;
  --cream:#f5f3ec;
  --paper:#fffefa;
  --lime:#e5f38d;
  --mint:#9fd6c0;
  --line:#dce5e0;
  --muted:#687b76;
  --shadow:0 18px 55px rgba(21,50,45,.09);
  --shadow-soft:0 8px 28px rgba(21,50,45,.065);
}

html{background:var(--cream)}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 72% 0%,rgba(159,214,192,.16),transparent 30rem),
    linear-gradient(180deg,#f8f6f0 0%,var(--cream) 48%,#f2f0e8 100%);
  -webkit-font-smoothing:antialiased;
}

button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{
  outline:3px solid rgba(73,139,113,.28);
  outline-offset:3px;
}

.sidebar{
  background:
    radial-gradient(circle at 15% 8%,rgba(229,243,141,.09),transparent 13rem),
    linear-gradient(180deg,#17362f 0%,#112b27 100%);
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:14px 0 42px rgba(20,48,43,.08);
}
.brand-mark{box-shadow:0 8px 22px rgba(229,243,141,.15)}
.nav-item{border:1px solid transparent;font-weight:600}
.nav-item:hover{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.055)}
.nav-item.active{
  background:linear-gradient(90deg,rgba(229,243,141,.16),rgba(159,214,192,.08));
  border-color:rgba(229,243,141,.12);
  box-shadow:inset 3px 0 0 var(--lime);
}
.nav-icon{color:var(--lime);font-weight:700}
.nav-count{background:rgba(255,255,255,.09);color:#fff}
.company-card{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);padding:14px;border-radius:14px}

.topbar{
  position:sticky;
  top:0;
  z-index:8;
  height:92px;
  background:rgba(248,246,240,.84);
  border-bottom:1px solid rgba(21,50,45,.08);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.topbar h1{font-size:23px}
.view{padding-top:36px}

.hero-panel{
  min-height:350px;
  background:
    radial-gradient(circle at 78% 48%,rgba(229,243,141,.48),transparent 10rem),
    linear-gradient(135deg,#dceadf 0%,#e8f0df 54%,#d4e7df 100%);
  border:1px solid rgba(21,50,45,.08);
  box-shadow:var(--shadow);
}
.hero-panel::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(rgba(21,50,45,.12) .75px,transparent .75px);
  background-size:18px 18px;
  opacity:.2;
  pointer-events:none;
}
.hero-panel h2{max-width:650px}
.hero-panel .primary-btn{padding:13px 20px}
.ai-core{box-shadow:0 28px 70px rgba(21,50,45,.26),0 0 0 12px rgba(255,255,255,.3)}
.orbit{border-color:rgba(21,50,45,.22)}
.agent-dot{border:5px solid rgba(255,255,255,.7)}

.stat-card,.panel,.form-card,.proposal-sheet,.coming-soon{
  box-shadow:var(--shadow-soft);
  border-color:rgba(21,50,45,.09);
}
.stat-card{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.stat-card::after{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--mint),transparent)}
.stat-card.accent::after{background:var(--ink)}
.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.panel-heading{margin-bottom:4px}
.agent-row{border-color:rgba(21,50,45,.08);transition:background .18s ease,padding .18s ease}
.agent-row:hover{background:#f6f9f5;padding-left:10px;padding-right:10px;border-radius:10px}
.agent-number{background:linear-gradient(145deg,#e6f0e7,#d4e5da);box-shadow:inset 0 0 0 1px rgba(21,50,45,.04)}
.status-chip{display:inline-flex;align-items:center;gap:6px;font-weight:700;padding:6px 9px}
.status-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:#4c9b70;box-shadow:0 0 0 3px rgba(76,155,112,.12)}
.dark-panel{background:linear-gradient(145deg,#193b34,#102d28);box-shadow:var(--shadow)}

.workspace-heading{margin-bottom:28px}
.workspace-heading h2{max-width:720px}
.stepper{padding:8px 0}
.step>span{box-shadow:inset 0 0 0 1px rgba(21,50,45,.05)}
.step.active>span{box-shadow:0 7px 18px rgba(21,50,45,.18)}
.form-card{border-radius:20px;padding:38px}
textarea,input,select{background:#fff;border-color:#d7e1dc}
textarea:hover,input:hover,select:hover{border-color:#bdcec6}
.check-row,.quantity-row{background:#fff;transition:border-color .18s ease,background .18s ease}
.check-row:hover,.quantity-row:hover{border-color:#a9c7ba;background:#fbfdfb}
.catalog-option{display:grid;grid-template-columns:auto 1fr 100px;align-items:center;gap:13px;border:1px solid var(--line);padding:13px 15px;margin-top:9px;border-radius:11px;background:#fff;transition:border-color .18s ease,background .18s ease}.catalog-option:hover{border-color:#a9c7ba;background:#fbfdfb}.catalog-option>input[type=checkbox]{width:18px;height:18px}.catalog-option span strong,.catalog-option span small{display:block}.catalog-option span strong{font-size:13px}.catalog-option span small{margin-top:3px;color:var(--muted);font-size:11px}.catalog-option>input[type=number]{height:38px;text-align:center}
.missing-info{border-radius:0 10px 10px 0;background:#fff9ec}

.workflow-panel{
  background:linear-gradient(145deg,#f0f7f3,#edf5f0);
  border-color:#d1e4d8;
  box-shadow:var(--shadow-soft);
}
.workflow-stages li{position:relative;overflow:hidden;min-height:88px;justify-content:center}
.workflow-stages li::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--mint)}
.workflow-stages li strong{font-family:"Manrope",sans-serif}
.workflow-mode{box-shadow:inset 0 0 0 1px rgba(35,94,77,.06)}
.sector-settings{margin:18px 0 8px}.catalog-editor{display:grid;gap:10px}.catalog-service{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(100px,.6fr) minmax(120px,.7fr) auto 40px;align-items:end;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfcf9}.catalog-service label>span{display:block;font-size:10px;font-weight:700;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.55px}.catalog-price{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px}.catalog-price b{font-size:12px;color:var(--muted)}.catalog-default{display:flex!important;align-items:center;gap:7px;height:45px;white-space:nowrap}.catalog-default input{width:16px;height:16px}.catalog-default span{margin:0!important;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important}.catalog-service .icon-btn{color:#9b4331;font-size:22px}

.proposal-sheet{border-radius:22px;background:linear-gradient(180deg,#fffefa,#fffdf7)}
.proposal-logo span{box-shadow:0 7px 16px rgba(21,50,45,.16)}
.proposal-title>span{font-weight:800}
.price-table{border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.price-table th:first-child{border-radius:10px 0 0 0}.price-table th:last-child{border-radius:0 10px 0 0}
.price-table tbody tr:nth-child(even){background:#fafbf7}
.price-table .grand-total td{color:var(--ink)}
.proposal-notes{border:1px solid #e8ece7}
.approval-bar{box-shadow:0 8px 24px rgba(239,124,69,.08)}

.primary-btn,.approve-btn{box-shadow:0 8px 18px rgba(21,50,45,.14)}
.primary-btn:hover,.approve-btn:hover{box-shadow:0 11px 26px rgba(21,50,45,.2)}
.ghost-btn:hover,.secondary-btn:hover,.install-btn:hover{background:#f6f8f4;border-color:#c5d3cd}
.toast{box-shadow:0 15px 45px rgba(21,50,45,.24)}

dialog{box-shadow:0 30px 90px rgba(21,50,45,.24)}
dialog::backdrop{backdrop-filter:blur(5px)}

@media(max-width:900px){
  .topbar{height:80px;padding-left:22px;padding-right:22px}
  .view{padding:28px 22px 60px}
  .hero-panel{padding:38px 30px;min-height:310px}
  .workspace-heading{align-items:flex-start;flex-direction:column}
  .catalog-service{grid-template-columns:1fr 1fr}.catalog-service .icon-btn{grid-column:2;justify-self:end}
}
@media(max-width:600px){
  .view{padding-left:16px;padding-right:16px}
  .hero-panel{padding:30px 24px;border-radius:18px}
  .hero-panel h2,.workspace-heading h2{font-size:30px;letter-spacing:-1.1px}
  .form-card,.proposal-sheet{padding:24px 18px;border-radius:16px}
  .form-actions{align-items:stretch;flex-direction:column-reverse}
  .form-actions button{width:100%}
  .proposal-head{gap:14px}
  .approval-bar{align-items:flex-start;gap:14px;flex-direction:column}
  .approval-bar .approve-btn{width:100%}
  .price-table{font-size:11px}
  .price-table td,.price-table th{padding:10px 7px}
  .catalog-option{grid-template-columns:auto 1fr 76px}.catalog-service{grid-template-columns:1fr}.catalog-service .icon-btn{grid-column:1;justify-self:end}.sector-settings{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media print{
  body{background:#fff}.topbar{position:static}.proposal-sheet{box-shadow:none;background:#fff}
}
