/*
 * LuckyWeb Design System v1.0
 * Unified marketing surfaces only. Product demos and live theme previews are excluded.
 * Canonical tokens: color, type, elevation, spacing and accessible interactions.
 * Load after the legacy marketing styles until the block CSS migration is complete.
 */
:where(body.lw-premium-site,body.lw-premium-work,body.lw-premium-config,body.lw-marketing-module){
  --lwds-bg:#050b08;
  --lwds-bg-raised:#0b1b13;
  --lwds-card:#102319;
  --lwds-card-hover:#153022;
  --lwds-text:#f4fff8;
  --lwds-muted:#b9d2c2;
  --lwds-accent:#54f59a;
  --lwds-accent-strong:#8dffc0;
  --lwds-border:rgba(141,242,179,.22);
  --lwds-border-hover:rgba(141,255,192,.48);
  --lwds-radius-sm:10px;
  --lwds-radius:16px;
  --lwds-radius-lg:22px;
  --lwds-shadow:0 22px 56px rgba(0,0,0,.23);
  --lwds-focus:0 0 0 3px #050b08,0 0 0 5px #a6ffcc;
  --bg:var(--lwds-bg);
  --panel:var(--lwds-bg-raised);
  --line:var(--lwds-border);
  --green:var(--lwds-accent);
  --ink:var(--lwds-text);
  --text:var(--lwds-text);
  --mut:var(--lwds-muted);
  --muted:var(--lwds-muted);
  color:var(--lwds-text);
  font-family:Inter,"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
}
:where(body.lw-premium-site,body.lw-premium-work,body.lw-premium-config,body.lw-marketing-module) :is(button,input,textarea,select){
  font-family:inherit;
}
:where(body.lw-premium-site,body.lw-premium-work,body.lw-premium-config,body.lw-marketing-module) :is(a,button,input,select,textarea,[role="button"]):focus-visible{
  outline:2px solid var(--lwds-accent-strong)!important;
  outline-offset:3px;
}
:where(body.lw-premium-site,body.lw-premium-work,body.lw-premium-config,body.lw-marketing-module) :is(button,a,[role="button"]){
  -webkit-tap-highlight-color:rgba(84,245,154,.18);
}
@media(prefers-reduced-motion:reduce){
  :where(body.lw-premium-site,body.lw-premium-work,body.lw-premium-config,body.lw-marketing-module) :is(button,a,[role="button"]){scroll-behavior:auto;transition:none!important;}
}

/* Editorial layout: maintain the existing site width. Screenshot browser zoom is NOT layout evidence. */
body.lw-premium-site :is(.section-head h2,.lw39-head h2,.contact-copy h2,.about-copy h2,.lw-glossary h2){
  color:var(--lwds-text);
  letter-spacing:-.047em;
  line-height:1.13;
  text-wrap:balance;
}
body.lw-premium-site :is(.section-head .eyebrow,.eyebrow,.lw39-kicker,.lw-term-code,.lw-card-code){
  letter-spacing:.115em;
}
body.lw-premium-site :is(.lw-section-intro,.lw-glossary-intro,.about-copy>p,.contact-copy>p){
  color:var(--lwds-muted);
  line-height:1.72;
  font-size:clamp(15px,1.18vw,17px);
  text-wrap:pretty;
}
body.lw-premium-site .premium-brand__word,
body.lw-premium-work .premium-brand__word,
body.lw-premium-config .premium-brand__word{
  font-family:Inter,"Segoe UI",system-ui,sans-serif!important;
  letter-spacing:-.06em!important;
}
body.lw-premium-site .header .nav-links>a{
  font-size:13px!important;
  font-weight:750!important;
  border-radius:var(--lwds-radius-sm);
}
body.lw-premium-site .header .nav-links>a:hover,
body.lw-premium-site .header .nav-links>a:focus-visible{
  background:rgba(84,245,154,.11)!important;
  border-color:var(--lwds-border)!important;
}
body.lw-premium-site .header .header-cta{
  border-radius:12px!important;
  min-height:44px!important;
  font-size:12px!important;
}
body.lw-premium-site .hero.lw-hero-next .lw-hero-next__lead{
  color:#d0e6d6!important;
  line-height:1.65!important;
}
body.lw-premium-site .lw-hero-next__studio{
  border-radius:var(--lwds-radius-lg);
  border-color:var(--lwds-border)!important;
}
body.lw-premium-site .lw-hero-next__tile,
body.lw-premium-site .lw-hero-next__tabs button{
  border-radius:var(--lwds-radius-sm);
}

/* Marketing card families: one border, padding rhythm and hover language. */
body.lw-premium-site :is(.lw-card-polish,.lw-term,#portfolio .project,.lw39-card){
  border-color:var(--lwds-border)!important;
  border-radius:var(--lwds-radius)!important;
  box-shadow:inset 0 1px 0 rgba(244,255,248,.035);
}
body.lw-premium-site :is(.lw-card-polish,.lw-term,#portfolio .project,.lw39-card):hover{
  border-color:var(--lwds-border-hover)!important;
}
body.lw-premium-site :is(.lw-card-polish,.lw-term) h3{
  font-size:clamp(17px,1.48vw,20px)!important;
  line-height:1.28!important;
  letter-spacing:-.035em;
  color:var(--lwds-text);
  text-wrap:balance;
}
body.lw-premium-site :is(.lw-card-polish,.lw-term) p{
  color:var(--lwds-muted)!important;
  font-size:14px!important;
  line-height:1.63!important;
}
body.lw-premium-site #portfolio .project{
  overflow:hidden;
  background:linear-gradient(160deg,#102219,#07130d)!important;
}
body.lw-premium-site #portfolio .project-title{
  color:var(--lwds-text);
  letter-spacing:-.035em;
  line-height:1.3;
  font-size:clamp(18px,1.4vw,21px)!important;
}
body.lw-premium-site #portfolio .project-desc{
  color:var(--lwds-muted)!important;
  line-height:1.55!important;
  font-size:14px!important;
}
body.lw-premium-site #portfolio .case-toggle{
  border-radius:var(--lwds-radius-sm)!important;
  min-height:42px;
  font-size:13px!important;
}
body.lw-premium-site #portfolio :is(.project .thumb,.project img){
  border-radius:inherit;
}
body.lw-premium-site #cenik .lw39-card{
  background:linear-gradient(160deg,#102519,#07170f)!important;
}
body.lw-premium-site #cenik .lw39-price{
  color:var(--lwds-text);
  font-variant-numeric:tabular-nums;
}
body.lw-premium-site #cenik :is(.lw39-card-bottom p,.lw49-features li){
  color:var(--lwds-muted)!important;
  font-size:13px!important;
  line-height:1.55;
}
body.lw-premium-site #cenik .lw39-more{
  border-radius:var(--lwds-radius-sm)!important;
  min-height:42px;
}
body.lw-premium-site #slovnik .lw-term,
body.lw-premium-site #sluzby .lw-card-polish{
  background:linear-gradient(160deg,rgba(24,56,39,.98),rgba(11,33,23,.98))!important;
}
body.lw-premium-site .lw-software-promo .lw-promo-simple-example{
  border-radius:var(--lwds-radius)!important;
}
body.lw-premium-site .lw-software-promo .lw-promo-benefit{
  border-color:var(--lwds-border)!important;
  border-radius:var(--lwds-radius-sm)!important;
}
body.lw-premium-site #chargealign :is(p,small){
  line-height:1.6;
}

/* Contact path: readable controls, clear action, no changes to submission hooks. */
body.lw-premium-site #kontakt .contact-form{
  border-color:var(--lwds-border)!important;
  border-radius:var(--lwds-radius-lg)!important;
  background:linear-gradient(155deg,#10261a,#07150e 75%)!important;
  box-shadow:var(--lwds-shadow);
}
body.lw-premium-site #kontakt .contact-form :is(input,select,textarea){
  border:1px solid var(--lwds-border)!important;
  border-radius:var(--lwds-radius-sm)!important;
  color:var(--lwds-text)!important;
  background:#07150e!important;
  min-height:44px;
  font-size:14px!important;
}
body.lw-premium-site #kontakt .contact-form :is(input,select,textarea):focus{
  border-color:var(--lwds-accent)!important;
}
body.lw-premium-site #kontakt .contact-form :is(label span,.form-bottom p){
  color:var(--lwds-muted);
}
body.lw-premium-site #kontakt .contact-form .badge-btn{
  min-height:44px;
  border-radius:var(--lwds-radius-sm)!important;
}
body.lw-premium-site .footer-main{
  border-color:var(--lwds-border);
}
body.lw-premium-site .footer-brand .footer-promo-clover{
  filter:drop-shadow(0 4px 12px rgba(84,245,154,.18));
}

/* LuckyWork landing page uses the same tokens, but keeps its interactive module UI. */
body.lw-premium-work :is(.ecosystem-story__heading h2,section h2,.cta h2){
  color:var(--lwds-text);
  letter-spacing:-.05em;
  line-height:1.12;
  text-wrap:balance;
}
body.lw-premium-work :is(.hero .lead,.ecosystem-story__heading p,.intro,.cta p){
  color:var(--lwds-muted);
  line-height:1.7;
}
body.lw-premium-work :is(.card,.principle,.lw-core-plain>div,.ecosystem-story__core){
  border-color:var(--lwds-border)!important;
  border-radius:var(--lwds-radius)!important;
  background-color:var(--lwds-bg-raised);
}
body.lw-premium-work :is(.card,.principle,.lw-core-plain>div):hover{
  border-color:var(--lwds-border-hover)!important;
}
body.lw-premium-work :is(.card p,.principle p,.lw-core-plain p){
  color:var(--lwds-muted)!important;
  font-size:clamp(14px,1.1vw,16px)!important;
  line-height:1.64;
}
body.lw-premium-work :is(.btn,.nav-cta){
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  border-radius:var(--lwds-radius-sm)!important;
  font-weight:800;
}
body.lw-premium-work .btn.primary{
  background:var(--lwds-accent);
  border-color:var(--lwds-accent);
  color:#062013;
}
body.lw-premium-work .cta{
  border-color:var(--lwds-border);
  border-radius:var(--lwds-radius-lg);
}

/* Checkout/configurator shell only: do not restyle user-selected mock website previews. */
body.lw-premium-config .premium-config-nav{
  border-bottom-color:var(--lwds-border)!important;
}
body.lw-premium-config .intro>p{
  color:var(--lwds-muted);
  line-height:1.7;
}
body.lw-premium-config :is(.panel,.summary){
  border-color:var(--lwds-border)!important;
  border-radius:var(--lwds-radius-lg)!important;
}
body.lw-premium-config :is(.choice,.check,.step){
  border-radius:var(--lwds-radius-sm)!important;
  border-color:var(--lwds-border)!important;
}
body.lw-premium-config :is(.choice,.check):hover{
  border-color:var(--lwds-border-hover)!important;
}
body.lw-premium-config :is(.btn,.back){
  min-height:44px;
  border-radius:var(--lwds-radius-sm)!important;
}
body.lw-premium-config .formgrid :is(input,textarea){
  min-height:44px;
  border-radius:var(--lwds-radius-sm)!important;
  border-color:var(--lwds-border)!important;
  background:#07150e;
  color:var(--lwds-text);
}
body.lw-premium-config .formgrid :is(input,textarea):focus{
  border-color:var(--lwds-accent)!important;
}
@media(max-width:900px){
  body.lw-premium-site .header .nav-links>a{font-size:15px!important}
}
@media(max-width:640px){
  body.lw-premium-site :is(.lw-card-polish,.lw-term) p{font-size:14px!important}
  body.lw-premium-site #portfolio .project-desc{font-size:14px!important}
  body.lw-premium-site :is(.lw-section-intro,.lw-glossary-intro,.about-copy>p,.contact-copy>p){font-size:15px}
  body.lw-premium-work .hero .lead{font-size:17px}
}

/* LuckyWeb official four-leaf wordmark. Identical markup in header and footer.
   Overrides obsolete SVG script-logo and its historical padding offsets. */
body.lw-premium-site .footer-brand{
  position:relative!important;
  padding:0!important;
  min-width:0;
}
body.lw-premium-site .footer-brand .footer-premium-brand{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:12px!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:48px;
  padding:0!important;
  transform:none!important;
  text-decoration:none!important;
}
body.lw-premium-site .footer-brand .footer-premium-brand .premium-brand__icon{
  width:43px!important;
  height:55px!important;
  flex:0 0 43px!important;
  filter:drop-shadow(0 0 9px rgba(76,241,129,.28));
}
body.lw-premium-site .footer-brand .footer-premium-brand .premium-brand__word{
  display:inline!important;
  margin:0!important;
  color:#f4fff8!important;
  font-family:Inter,"Segoe UI",system-ui,sans-serif!important;
  font-size:clamp(23px,2.4vw,31px)!important;
  font-weight:900!important;
  line-height:1.05!important;
  letter-spacing:-.055em!important;
  text-shadow:none!important;
  white-space:nowrap!important;
}
body.lw-premium-site .footer-brand .footer-premium-brand .premium-brand__accent{
  color:#5af59a!important;
  font-weight:900!important;
  text-decoration:none!important;
}
body.lw-premium-site .footer-brand .footer-premium-brand .premium-brand__word small{
  display:block!important;
  margin-top:5px!important;
  color:#a5c6b3!important;
  font-family:Inter,"Segoe UI",system-ui,sans-serif!important;
  font-size:8px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  opacity:.82!important;
}
@media(max-width:480px){
  body.lw-premium-site .footer-brand .footer-premium-brand .premium-brand__icon{
    width:38px!important;height:49px!important;flex-basis:38px!important;
  }
  body.lw-premium-site .footer-brand .footer-premium-brand .premium-brand__word{
    font-size:25px!important;
  }
}

/* Homepage-only tonal lift. Product workspaces keep their independent UI palettes. */
body.lw-premium-site{
  --lwds-bg:#0a1912;
  --lwds-bg-raised:#10271b;
  --lwds-card:#163524;
  --lwds-card-hover:#1b422e;
  --lwds-border:rgba(141,242,179,.29);
}
