/* Sarwamangla Colour Theme Lab — homepage review utility */
:root{
  --theme-green:#063c31;
  --theme-green-rgb:6,60,49;
  --theme-green-2:#0b5b47;
  --theme-green-3:#0e7257;
  --theme-green-deep:#052f27;
  --theme-green-ink:#14362f;
  --theme-on-primary:#fff;
  --theme-on-primary-soft:rgba(255,255,255,.78);
}

/* Route the existing design system through the live theme */
:root{
  --forest:var(--theme-green)!important;
  --forest2:var(--theme-green-2)!important;
  --forest3:var(--theme-green-3)!important;
  --ink:var(--theme-green-ink)!important;
  --line:rgba(var(--theme-green-rgb),.14)!important;
  --shadow:0 30px 80px rgba(var(--theme-green-rgb),.13)!important;
}

/* Homepage surfaces that previously used literal green values */
.hero{background:var(--theme-green)!important}
.hero:after{background:
  linear-gradient(90deg,rgba(var(--theme-green-rgb),.90) 0%,rgba(var(--theme-green-rgb),.64) 42%,rgba(var(--theme-green-rgb),.21) 75%),
  linear-gradient(0deg,rgba(var(--theme-green-rgb),.46),transparent 58%)!important}

.home-intro-section .image-stack .img-a{box-shadow:0 35px 90px rgba(var(--theme-green-rgb),.18)!important}
.home-intro-section .stat{border-color:rgba(var(--theme-green-rgb),.12)!important}
.home-products-section:before,.home-vision-section:after{color:rgba(var(--theme-green-rgb),.038)!important}
.home-products-section .product-card{border-color:rgba(var(--theme-green-rgb),.12)!important;box-shadow:0 14px 42px rgba(var(--theme-green-rgb),.07)!important}
.home-products-section .product-card:after{color:var(--theme-green)!important}

.process-story,.section.green{background:var(--theme-green)!important}
.process-stage{background:var(--theme-green-deep)!important}
.process-stage-overlay{background:
  linear-gradient(180deg,rgba(var(--theme-green-rgb),.12),rgba(var(--theme-green-rgb),.18) 45%,rgba(var(--theme-green-rgb),.92) 100%),
  linear-gradient(90deg,rgba(var(--theme-green-rgb),.28),transparent 50%)!important}
.process-step.is-active i{color:var(--theme-green)!important}

.vision-panel{box-shadow:0 34px 90px rgba(var(--theme-green-rgb),.13)!important}
.vision-visual-shade{background:linear-gradient(180deg,rgba(var(--theme-green-rgb),.05),rgba(var(--theme-green-rgb),.78))!important}

.home-faq-section .faq-grid>div:first-child,
.home-cta-section .cta-card{background:linear-gradient(145deg,var(--theme-green),var(--theme-green-2))!important}
.home-faq-section .faq-item{border-color:rgba(var(--theme-green-rgb),.16)!important}
.home-cta-section .cta-card{box-shadow:0 26px 70px rgba(var(--theme-green-rgb),.14)!important}

.premium-footer,.site-footer{background:var(--theme-green-deep)!important}
.footer-statement-wrap{color:var(--theme-green)!important}
.footer-talk{background:var(--theme-green)!important;box-shadow:0 20px 50px rgba(var(--theme-green-rgb),.18)!important}
.footer-talk:hover{background:var(--theme-green-2)!important}
.footer-grain-orbit{border-color:rgba(var(--theme-green-rgb),.17)!important}

/* Floating review panel */
.theme-lab-toggle{
  position:fixed;right:22px;bottom:22px;z-index:10050;border:0;border-radius:999px;
  min-height:54px;padding:8px 16px 8px 9px;background:#fff;color:#17201d;
  box-shadow:0 18px 55px rgba(0,0,0,.18);display:flex;align-items:center;gap:10px;
  font:700 16px/1 "Manrope",Arial,sans-serif;cursor:pointer
}
.theme-lab-toggle-swatch{width:38px;height:38px;border-radius:50%;background:var(--theme-green);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.theme-lab-panel{
  position:fixed;right:22px;bottom:86px;z-index:10049;width:min(390px,calc(100vw - 28px));
  background:rgba(255,255,255,.96);backdrop-filter:blur(22px);border:1px solid rgba(0,0,0,.08);
  border-radius:24px;box-shadow:0 28px 80px rgba(0,0,0,.22);padding:20px;transform:translateY(12px) scale(.98);
  opacity:0;visibility:hidden;pointer-events:none;transition:.24s ease;color:#17201d;font-family:"Manrope",Arial,sans-serif
}
.theme-lab-panel.is-open{transform:none;opacity:1;visibility:visible;pointer-events:auto}
.theme-lab-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}
.theme-lab-head strong{font-size:19px}.theme-lab-head p{margin:5px 0 0;color:#69716e;font-size:16px;line-height:1.45}
.theme-lab-close{border:0;background:#f2f2ef;width:38px;height:38px;border-radius:50%;font-size:22px;cursor:pointer}
.theme-lab-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.theme-lab-preset{border:1px solid rgba(0,0,0,.08);background:#fff;border-radius:14px;padding:8px 6px;cursor:pointer;font:600 16px/1.2 "Manrope",Arial,sans-serif;color:#373d3a}
.theme-lab-preset i{display:block;width:100%;height:34px;border-radius:10px;margin-bottom:7px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}
.theme-lab-preset.is-active{outline:2px solid var(--theme-green);outline-offset:1px}
.theme-lab-custom{display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:center;margin-top:14px}
.theme-lab-custom input[type="color"]{width:56px;height:48px;padding:3px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff;cursor:pointer}
.theme-lab-custom input[type="text"]{width:100%;height:48px;border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:0 14px;font:700 16px "Manrope",Arial,sans-serif;text-transform:uppercase;outline:none}
.theme-lab-custom input[type="text"]:focus{border-color:var(--theme-green);box-shadow:0 0 0 3px rgba(var(--theme-green-rgb),.10)}
.theme-lab-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}
.theme-lab-preview span{min-height:42px;border-radius:11px;display:grid;place-items:center;color:#fff;font-size:16px;font-weight:700}
.theme-lab-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.theme-lab-actions button{min-height:46px;border-radius:12px;border:1px solid rgba(0,0,0,.1);font:700 16px "Manrope",Arial,sans-serif;cursor:pointer;background:#fff}
.theme-lab-actions .theme-copy{background:var(--theme-green);color:var(--theme-on-primary);border-color:transparent}
.theme-lab-note{margin:12px 0 0;font-size:16px;line-height:1.45;color:#747c78}
.theme-lab-toast{position:absolute;left:20px;right:20px;bottom:20px;background:#111;color:#fff;border-radius:12px;padding:11px 14px;text-align:center;font-size:16px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}
.theme-lab-toast.show{opacity:1;transform:none}
@media(max-width:600px){.theme-lab-toggle{right:14px;bottom:14px}.theme-lab-panel{right:14px;bottom:78px}.theme-lab-presets{grid-template-columns:repeat(2,1fr)}}
@media print{.theme-lab-toggle,.theme-lab-panel{display:none!important}}

/* Colour-aware foregrounds for non-green themes */
.process-story,.section.green,.home-faq-section .faq-grid>div:first-child,.home-cta-section .cta-card{color:var(--theme-on-primary)!important}
.process-story p,.section.green p,.home-faq-section .faq-grid>div:first-child p,.home-cta-section .cta-card p{color:var(--theme-on-primary-soft)!important}
.home-faq-section .faq-grid>div:first-child h2,.home-cta-section .cta-card h2,.home-cta-section .cta-card h3{color:var(--theme-on-primary)!important}
.theme-lab-toggle-swatch{transition:background .2s ease}
.theme-lab-presets{max-height:300px;overflow:auto;padding-right:2px}
