/* MetsaCRM V9.3 MICRO POLISH
   Frontend-only override for V9.2 LIGHT VISION.
   Backend / DB / auth untouched.
*/

/* ---------- Global refinement ---------- */
:root{
  --v93-ink:#0b261d;
  --v93-muted:#657a72;
  --v93-green:#209a61;
  --v93-green-deep:#13764a;
  --v93-mint:#dff7ea;
  --v93-line:rgba(21,91,61,.105);
  --v93-glass:rgba(255,255,255,.82);
  --v93-shadow:0 18px 55px rgba(20,63,47,.095),0 3px 12px rgba(20,63,47,.045);
}

html{background:#edf7f1!important;}
body{
  color:var(--v93-ink)!important;
  background:
    radial-gradient(circle at 76% 9%,rgba(137,230,181,.16),transparent 28rem),
    radial-gradient(circle at 18% 72%,rgba(192,232,210,.20),transparent 34rem),
    linear-gradient(180deg,#fbfdfb 0%,#f5faf7 52%,#eaf5ef 100%)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* faint forest atmosphere without a large green slab */
body::after{
  content:"";
  position:fixed;
  z-index:-1;
  left:0;right:0;bottom:0;
  height:22vh;
  pointer-events:none;
  opacity:.24;
  background:
    linear-gradient(180deg,transparent 0%,rgba(67,139,99,.055) 44%,rgba(31,100,68,.13) 100%);
  -webkit-mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.65) 45%,transparent 100%);
  mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.65) 45%,transparent 100%);
}

/* ---------- Typography ---------- */
h1,h2,h3,.page-title,.hero-title{
  letter-spacing:-.035em!important;
  color:#09261c!important;
}
h1,.page-title{font-weight:780!important;}
p,.muted,.sub,.meta,.small{
  color:var(--v93-muted)!important;
}
.eyebrow,.kicker,.hero-kicker{
  color:var(--v93-green-deep)!important;
  letter-spacing:.13em!important;
  font-weight:760!important;
}

/* ---------- White Vision Glass cards ---------- */
.card,.panel,.stat,.metric,.kpi,.hero,.widget,
[class*="card"],[class*="panel"]{
  border-color:var(--v93-line)!important;
}
main .card,main .panel,main .stat,main .metric,main .kpi,main .hero,main .widget,
main [class*="card"],main [class*="panel"]{
  background:
    linear-gradient(145deg,rgba(255,255,255,.93),rgba(250,255,252,.76))!important;
  box-shadow:var(--v93-shadow)!important;
  backdrop-filter:blur(22px) saturate(1.16)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.16)!important;
}

/* fine reflective edge */
main .card::before,main .panel::before,main .hero::before,
main [class*="card"]::before{
  border-color:rgba(255,255,255,.62)!important;
}

/* ---------- KPI refinement ---------- */
.kpi,.stat,.metric,[class*="kpi"],[class*="stat"]{
  position:relative;
  overflow:hidden;
}
.kpi::after,.stat::after,.metric::after,
[class*="kpi"]::after,[class*="stat"]::after{
  content:"";
  position:absolute;
  width:92px;height:92px;
  right:-38px;top:-42px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(72,210,133,.16),rgba(72,210,133,0) 70%);
  pointer-events:none;
}
.kpi strong,.stat strong,.metric strong,
[class*="kpi"] strong,[class*="stat"] strong{
  color:#08291e!important;
  font-weight:790!important;
}

/* ---------- Buttons ---------- */
button,.btn,a.btn,[class*="button"]{
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease!important;
}
.btn-primary,.primary,button.primary,a.primary,
a[href="/contacts/new"],a[href="/deals/new"]{
  background:linear-gradient(180deg,#5ce292 0%,#38c977 100%)!important;
  color:#062719!important;
  border:1px solid rgba(26,145,86,.16)!important;
  box-shadow:0 9px 25px rgba(48,193,112,.19),inset 0 1px 0 rgba(255,255,255,.55)!important;
}
.btn-primary:hover,.primary:hover,button.primary:hover,a.primary:hover{
  transform:translateY(-1px);
  box-shadow:0 13px 30px rgba(48,193,112,.24),inset 0 1px 0 rgba(255,255,255,.6)!important;
}
.btn-secondary,.secondary{
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(20,73,52,.11)!important;
  color:#173c2e!important;
  box-shadow:0 5px 15px rgba(29,75,57,.06)!important;
}

/* ---------- Sidebar: deeper Vision Glass ---------- */
aside,.sidebar,#sidebar,[class*="sidebar"]{
  background:
    radial-gradient(circle at 22% 2%,rgba(86,195,134,.14),transparent 18rem),
    linear-gradient(180deg,rgba(16,35,29,.985),rgba(22,38,33,.965))!important;
  border-right:1px solid rgba(255,255,255,.075)!important;
  box-shadow:18px 0 48px rgba(12,42,31,.10)!important;
  backdrop-filter:blur(28px) saturate(1.12)!important;
  -webkit-backdrop-filter:blur(28px) saturate(1.12)!important;
}
aside a,.sidebar a,#sidebar a{
  color:rgba(236,247,241,.67)!important;
}
aside a:hover,.sidebar a:hover,#sidebar a:hover{
  color:#fff!important;
  background:rgba(255,255,255,.045)!important;
}
aside a.active,.sidebar a.active,#sidebar a.active,
aside .active>a,.sidebar .active>a{
  color:#fff!important;
  background:
    linear-gradient(90deg,rgba(79,214,137,.15),rgba(255,255,255,.045))!important;
  border-color:rgba(102,224,156,.18)!important;
  box-shadow:inset 3px 0 0 rgba(82,225,143,.92),0 9px 25px rgba(0,0,0,.10)!important;
}
aside img,.sidebar img{
  filter:drop-shadow(0 7px 13px rgba(0,0,0,.25));
}

/* hide/soften sidebar scrollbar */
aside,.sidebar,#sidebar{scrollbar-width:thin;scrollbar-color:rgba(154,190,173,.22) transparent;}
aside::-webkit-scrollbar,.sidebar::-webkit-scrollbar,#sidebar::-webkit-scrollbar{width:4px;}
aside::-webkit-scrollbar-track,.sidebar::-webkit-scrollbar-track{background:transparent;}
aside::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb{
  background:rgba(167,199,184,.20);border-radius:999px;
}

/* ---------- Top bar ---------- */
header,.topbar,[class*="topbar"]{
  background:rgba(255,255,255,.70)!important;
  border-bottom:1px solid rgba(21,83,58,.08)!important;
  backdrop-filter:blur(22px) saturate(1.16)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.16)!important;
}

/* ---------- Intelligence orb ---------- */
.orb,.ai-orb,[class*="orb"]{
  position:relative;
  background:
    radial-gradient(circle at 38% 32%,#caffdd 0 4%,#78e4a5 13%,#3acb7c 34%,#1a7c4d 61%,rgba(25,105,68,.14) 72%,transparent 74%)!important;
  box-shadow:
    0 0 0 1px rgba(39,151,91,.10),
    0 0 46px rgba(59,200,119,.20),
    inset -14px -18px 32px rgba(5,67,38,.18),
    inset 10px 10px 22px rgba(255,255,255,.30)!important;
}
.orb::after,.ai-orb::after,[class*="orb"]::after{
  content:"";
  position:absolute;
  inset:22%;
  border-radius:50%;
  background:radial-gradient(circle at 36% 30%,rgba(255,255,255,.78),rgba(255,255,255,0) 37%);
  filter:blur(2px);
  pointer-events:none;
}

/* ---------- Inputs / pills ---------- */
input,select,textarea{
  background:rgba(255,255,255,.84)!important;
  border-color:rgba(22,83,59,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
}
.badge,.pill,[class*="badge"],[class*="pill"]{
  background:rgba(222,247,233,.74)!important;
  border-color:rgba(40,142,87,.11)!important;
  color:#26734d!important;
}

/* ---------- Mobile ---------- */
@media (max-width:900px){
  body{background:linear-gradient(180deg,#fbfdfb,#edf7f1)!important;}
  main{padding-left:14px!important;padding-right:14px!important;}
  main .card,main .panel,main [class*="card"],main [class*="panel"]{
    box-shadow:0 12px 34px rgba(20,63,47,.085)!important;
  }
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important;}
}
