/* ==========================================================
  DRR DAMSON — FULL SITE VISUAL UNIFICATION PATCH
  Cel: wygląd wzoru premium / dark teal + gold + laser glow
  Zakres: wszystkie podstrony, narzędzia, kalkulatory, legacy pages
  ========================================================== */
:root{
 --dd-bg:#071214;
 --dd-bg-2:#0b1d21;
 --dd-panel:rgba(11,24,28,.86);
 --dd-panel-2:rgba(15,35,39,.92);
 --dd-card:rgba(16,37,41,.74);
 --dd-card-solid:#10252a;
 --dd-gold:#d7b867;
 --dd-gold-2:#f0d48b;
 --dd-teal:#32e0cf;
 --dd-teal-2:#12aaa2;
 --dd-text:#f5f1e8;
 --dd-muted:#aebec0;
 --dd-line:rgba(215,184,103,.22);
 --dd-line-teal:rgba(50,224,207,.20);
 --dd-shadow:0 22px 60px rgba(0,0,0,.42);
 --dd-radius:22px;
 --primary-gold:var(--dd-gold)!important;
 --secondary-gold:#caa458!important;
 --dark-bg:var(--dd-bg)!important;
 --panel-bg:var(--dd-panel)!important;
 --text-light:var(--dd-text)!important;
 --text-muted:var(--dd-muted)!important;
 --border-gold:var(--dd-line)!important;
}
html{scroll-behavior:smooth;}
body, body.modern-v2, body.site{
 margin:0;
 color:var(--dd-text)!important;
 background:
  radial-gradient(950px 520px at 8% 0%, rgba(50,224,207,.13), transparent 62%),
  radial-gradient(820px 560px at 86% 8%, rgba(215,184,103,.13), transparent 60%),
  radial-gradient(850px 700px at 55% 105%, rgba(18,170,162,.10), transparent 56%),
  linear-gradient(180deg,#071214 0%, #0a171a 46%, #071012 100%)!important;
 font-family:"Open Sans","Segoe UI",Roboto,Arial,sans-serif!important;
 min-height:100vh;
}
body::before{
 content:""; position:fixed; inset:0; pointer-events:none; z-index:-1;
 background-image:linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px, transparent 1px);
 background-size:42px 42px;
 mask-image:linear-gradient(180deg,rgba(0,0,0,.78),rgba(0,0,0,.18));
}
a{color:inherit;}
.container{width:min(1240px,calc(100% - 40px));margin-inline:auto;}
.top-bar{
 background:rgba(5,13,15,.86)!important;
 backdrop-filter:blur(16px);
 border-bottom:1px solid rgba(215,184,103,.18)!important;
 color:var(--dd-muted)!important;
}
.site-header-v2{
 background:rgba(7,18,20,.82)!important;
 backdrop-filter:blur(20px) saturate(145%);
 border-bottom:1px solid rgba(215,184,103,.22)!important;
 box-shadow:0 12px 40px rgba(0,0,0,.27);
}
.site-header-v2 .brand img,.brand-logo{filter:drop-shadow(0 0 14px rgba(215,184,103,.22));}
.header-v2-inner{gap:24px!important;}
.search-container{max-width:560px!important;}
.search-input{
 height:46px; box-sizing:border-box;
 background:rgba(255,255,255,.055)!important;
 border:1px solid rgba(215,184,103,.24)!important;
 color:#fff!important;
 border-radius:999px!important;
 padding:12px 54px 12px 20px!important;
 outline:none;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.search-input:focus{border-color:rgba(50,224,207,.55)!important;box-shadow:0 0 0 4px rgba(50,224,207,.10);}
.search-btn{right:5px!important;border-radius:999px!important;width:38px;height:38px;background:linear-gradient(135deg,var(--dd-gold),var(--dd-gold-2))!important;color:#061012!important;}
.user-actions .action-item{
 min-width:62px; padding:8px 10px; border-radius:16px;
 background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.06);
 transition:.22s ease;
}
.user-actions .action-item:hover{border-color:rgba(215,184,103,.38);background:rgba(215,184,103,.08);transform:translateY(-1px);}
.main-nav-v2{
 position:sticky; top:101px; z-index:999;
 background:rgba(7,18,20,.78)!important;
 backdrop-filter:blur(18px);
 border-bottom:1px solid rgba(50,224,207,.13)!important;
 padding:10px 0!important;
}
.nav-v2-list--rich{gap:10px!important;}
.nav-v2-list--rich li a{
 color:rgba(245,241,232,.92)!important;
 background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018))!important;
 border:1px solid rgba(215,184,103,.16)!important;
 border-radius:999px!important;
 padding:10px 13px!important;
 transition:.22s ease!important;
}
.nav-v2-list--rich li a:hover,.nav-v2-list--rich li a[aria-current="page"]{
 color:#061214!important;
 background:linear-gradient(135deg,var(--dd-gold),var(--dd-teal))!important;
 border-color:transparent!important;
 box-shadow:0 10px 26px rgba(50,224,207,.12),0 10px 28px rgba(215,184,103,.10);
}
main,.site-main{position:relative;}
.hero-v2,.dd-hero,.page-hero,.hero,.section-hero,.dd-ai-hero{
 background:linear-gradient(135deg,rgba(13,32,36,.72),rgba(8,17,20,.44));
 border:1px solid rgba(215,184,103,.18);
 border-radius:30px;
 box-shadow:var(--dd-shadow);
 overflow:hidden;
 margin-top:34px;
 padding:clamp(34px,5vw,72px)!important;
}
.hero-v2{grid-template-columns:1.05fr .95fr!important;}
.hero-v2 h1,h1{
 letter-spacing:-.035em;
 color:var(--dd-text)!important;
}
.hero-v2 h1 span,.gradient-text,.accent,.gold{color:var(--dd-gold)!important;}
.hero-v2 p,.page-hero p,.hero p,p.lead{color:var(--dd-muted)!important;line-height:1.75;}
.hero-v2-image img{border-color:rgba(215,184,103,.60)!important;box-shadow:0 35px 90px rgba(0,0,0,.45),0 0 48px rgba(215,184,103,.13)!important;}
.hero-sidebar{background:rgba(7,18,20,.78)!important;border-color:rgba(215,184,103,.30)!important;box-shadow:var(--dd-shadow)!important;}
.categories-v2 h2,.section-title,h2{color:var(--dd-text)!important;}
.cat-card-v2,.card,.product-card,.category-card,.tool-card-home,.project-card,.service-card,.feature-card,.calc-card,.dd-card,article,.panel,.box,.form-card{
 background:linear-gradient(180deg,rgba(18,40,45,.78),rgba(8,18,21,.80))!important;
 border:1px solid rgba(215,184,103,.18)!important;
 border-radius:var(--dd-radius)!important;
 box-shadow:0 18px 46px rgba(0,0,0,.24)!important;
 color:var(--dd-text)!important;
}
.cat-card-v2:hover,.card:hover,.product-card:hover,.category-card:hover,.tool-card-home:hover,.project-card:hover,.service-card:hover,.feature-card:hover{
 transform:translateY(-5px); border-color:rgba(50,224,207,.28)!important; box-shadow:0 22px 58px rgba(0,0,0,.34)!important;
}
.cat-card-v2 img,.product-card img,.category-card img,.project-card img{background:#0b181b;}
button,.btn,.button,.cta-btn,input[type="submit"],.action-btn,.primary-btn,.cta-primary,.dd-button,.tool-card-home a{
 border-radius:999px!important;
 border:1px solid rgba(215,184,103,.34)!important;
 background:linear-gradient(135deg,var(--dd-gold),#f1d894)!important;
 color:#061214!important;
 font-weight:800!important;
 text-decoration:none!important;
 box-shadow:0 12px 26px rgba(215,184,103,.16);
 transition:.22s ease;
}
button:hover,.btn:hover,.button:hover,.cta-btn:hover,input[type="submit"]:hover,.action-btn:hover,.primary-btn:hover,.dd-button:hover{transform:translateY(-1px);filter:brightness(1.05);}
.cta-secondary,.btn-secondary,.button-outline{background:rgba(255,255,255,.05)!important;color:var(--dd-text)!important;border-color:rgba(50,224,207,.28)!important;}
input,textarea,select{
 background:rgba(255,255,255,.055)!important;
 color:var(--dd-text)!important;
 border:1px solid rgba(215,184,103,.20)!important;
 border-radius:14px!important;
}
input:focus,textarea:focus,select:focus{outline:none!important;border-color:rgba(50,224,207,.58)!important;box-shadow:0 0 0 4px rgba(50,224,207,.10)!important;}
label{color:var(--dd-text)!important;}
small,.muted,.text-muted,.description{color:var(--dd-muted)!important;}
table{background:rgba(12,28,32,.72)!important;border-radius:18px;overflow:hidden;border:1px solid rgba(215,184,103,.14);}
th,td{border-color:rgba(255,255,255,.08)!important;color:var(--dd-text)!important;}
.site-footer,footer{
 margin-top:70px; background:rgba(5,13,15,.92)!important; border-top:1px solid rgba(215,184,103,.18)!important; color:var(--dd-muted)!important;
}
/* legacy shell neutralizacja */
.site-header:not(.site-header-v2){display:none!important;}
.main-nav:not(.main-nav-v2){display:none!important;}
/* embedded tools: keep function, force brand skin */
.wrap,.calculator,.app,.tool-shell{background:transparent!important;}
.kreator-toolbar,.topbar{background:rgba(12,28,32,.78)!important;border:1px solid rgba(215,184,103,.18)!important;border-radius:22px!important;padding:18px!important;}
.preview,.canvas-wrap,.workspace{background:rgba(255,255,255,.035)!important;border:1px solid rgba(50,224,207,.18)!important;border-radius:22px!important;}
/* live search */
.dd-search-results{position:absolute;left:0;right:0;top:calc(100% + 10px);background:rgba(7,18,20,.96);border:1px solid rgba(215,184,103,.24);border-radius:18px;box-shadow:var(--dd-shadow);padding:8px;display:none;z-index:3000;max-height:360px;overflow:auto;}
.dd-search-results.is-open{display:block;}
.dd-search-results a{display:flex;gap:10px;align-items:center;padding:11px 12px;border-radius:12px;text-decoration:none;color:var(--dd-text);font-size:13px;}
.dd-search-results a:hover{background:rgba(215,184,103,.10);color:var(--dd-gold);}
.dd-search-results a i{color:var(--dd-teal);width:18px;text-align:center;}
@media(max-width:1100px){.main-nav-v2{top:0;position:relative}.hero-v2{grid-template-columns:1fr!important}.header-v2-inner{grid-template-columns:1fr!important}.user-actions{justify-content:flex-start!important}.search-container{max-width:none!important}.hero-v2-content h1{font-size:clamp(38px,8vw,58px)!important}}
@media(max-width:720px){.container{width:min(100% - 24px,1240px)}.site-header-v2{position:relative!important}.main-nav-v2{position:relative!important;top:0!important}.top-bar{display:none!important}.nav-v2-list--rich{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:8px!important}.nav-v2-list--rich li a{white-space:nowrap}.user-actions{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px!important}.hero-v2,.dd-hero,.page-hero,.hero,.section-hero,.dd-ai-hero{border-radius:22px;padding:28px 18px!important}.categories-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cat-card-v2 img{height:135px!important}}


/* HOTFIX 19_05_2: stopka ma być pełna i nad treścią, bez efektu przezroczystej nakładki */
.site-footer,footer{
 position:relative !important;
 z-index:30 !important;
 margin-top:48px !important;
 background:#061015 !important;
 background-image:none !important;
 backdrop-filter:none !important;
 -webkit-backdrop-filter:none !important;
 opacity:1 !important;
 overflow:hidden !important;
}
.site-footer::before,footer::before,
.site-footer::after,footer::after{
 content:none !important;
}
.footer-grid,.footer-bottom,.footer-col{
 position:relative;
 z-index:2;
 background:transparent !important;
 box-shadow:none !important;
}



/* HOTFIX 19_05_3: PageSpeed / dostępność / tap target */
a.action-item, .nav-v2-list a, .search-btn, .icon-btn, button, .btn, .btn-shell{
 min-height:44px;
}
.search-btn, .icon-btn{
 min-width:44px;
}
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
 outline:3px solid rgba(50,224,207,.75) !important;
 outline-offset:3px !important;
}


/* HOTFIX 19_05_4: bardziej kompaktowy pasek headera + wyrównanie wyszukiwarki i akcji */
@media (min-width:1101px){
 .site-header-v2{
  padding:8px 0 !important;
 }
 .header-v2-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  min-height:58px !important;
 }
 .header-v2-inner > .brand{
  flex:0 0 auto;
  align-self:center !important;
  margin:0 !important;
 }
 .header-v2-inner > .search-container{
  flex:1 1 560px;
  max-width:560px !important;
  margin:0 !important;
  align-self:center !important;
 }
 .header-v2-inner > .user-actions{
  flex:0 0 auto;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin:0 !important;
  align-self:center !important;
 }
 .header-v2-inner > .user-actions .action-item{
  min-height:42px !important;
  height:42px !important;
  padding:0 14px !important;
  justify-content:center !important;
  margin:0 !important;
 }
 .header-v2-inner > .user-actions .action-item i{
  margin:0 0 2px 0 !important;
  line-height:1 !important;
 }
 .main-nav-v2{
  top:74px !important;
 }
}

/* HOTFIX 23_05: pusty wynik wyszukiwarki - czytelny, bez martwego kliknięcia */
.dd-search-empty{
  padding:11px 12px;
  border-radius:12px;
  color:var(--dd-muted);
  font-size:13px;
}
