/* ===== GIFTIK.CLICK — CUSTOM THEME ===== */
@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@400;700;900&family=Manrope:wght@400;500;600&display=swap');

:root {
  --bg: #0f0f13;
  --bg2: #16161d;
  --bg3: #1e1e28;
  --orange: #FF6B35;
  --teal: #00D4B4;
  --white: #f0f0f5;
  --muted: #8888a0;
  --border: rgba(255,255,255,0.07);
  --card: #1a1a24;
  --radius: 16px;
}
*,*::before,*::after{box-sizing:border-box;}
body{background:var(--bg);color:var(--white);font-family:'Manrope',sans-serif;font-size:14px;line-height:1.6;margin:0;}
h1,h2,h3,h4,h5,h6{font-family:'Unbounded',sans-serif;color:var(--white);line-height:1.2;}
h1{font-size:32px;}h2{font-size:26px;}h3{font-size:20px;}h4{font-size:16px;}h5{font-size:13px;}h6{font-size:11px;}
a{color:var(--orange);text-decoration:none;transition:.2s;}
a:hover{color:var(--teal);}
img{max-width:100%;}
button:focus{outline:none!important;}
label{font-size:13px;}
#top{background:var(--bg2);border-bottom:1px solid var(--border);padding:7px 0;font-size:12px;color:var(--muted);}
#top .container{display:flex;justify-content:space-between;align-items:center;}
#top .nav{display:flex;gap:16px;align-items:center;}
#top .list-inline{display:flex;gap:12px;list-style:none;margin:0;padding:0;align-items:center;}
#top .list-inline-item a{color:var(--muted);font-size:12px;}
#top .list-inline-item a:hover{color:var(--orange);}
#top .dropdown-menu{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius);padding:8px;min-width:160px;}
#top .dropdown-item{color:var(--muted);font-size:12px;padding:6px 12px;border-radius:8px;}
#top .dropdown-item:hover{background:rgba(255,107,53,.1);color:var(--orange);}
header{background:var(--bg);border-bottom:1px solid var(--border);padding:14px 0;position:sticky;top:0;z-index:100;}
header .container{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;}
#logo a{font-family:'Unbounded',sans-serif;font-size:22px;font-weight:900;color:var(--white);text-decoration:none;}
#logo h1{font-size:22px;margin:0;}
#logo h1 a{color:var(--white);}
#search{position:relative;}
#search .input-group{position:relative;}
#search input{width:100%;padding:11px 50px 11px 20px;background:var(--bg3);border:1px solid var(--border);border-radius:50px;color:var(--white);font-size:14px;outline:none;transition:.3s;font-family:'Manrope',sans-serif;}
#search input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,107,53,.1);}
#search input::placeholder{color:var(--muted);}
#search .btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:var(--orange);border:none;border-radius:50px;width:34px;height:34px;color:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;padding:0;}
#search .btn:hover{background:#ff8555;}
#header-cart{display:flex;justify-content:flex-end;align-items:center;}
#header-cart .btn{background:var(--orange);border:none;border-radius:12px;padding:10px 18px;color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;transition:.2s;}
#header-cart .btn:hover{background:#ff8555;}
#header-cart .dropdown-menu{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius);padding:16px;min-width:280px;right:0;left:auto;}
#header-cart .dropdown-menu table{width:100%;}
#header-cart .dropdown-menu td{color:var(--white);font-size:13px;padding:6px 0;}
#menu{background:var(--bg2);border-bottom:1px solid var(--border);padding:0;}
#menu .navbar{background:transparent!important;padding:0;border-radius:0;}
#menu .nav-link{color:var(--muted)!important;font-size:13px;font-weight:500;padding:14px 16px!important;border-bottom:2px solid transparent;transition:.2s;white-space:nowrap;}
#menu .nav-link:hover{color:var(--white)!important;border-bottom-color:var(--orange);}
#menu .dropdown-menu{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-top:0;}
#menu .dropdown-menu .nav-link{color:var(--muted)!important;padding:8px 12px!important;border-bottom:none;}
#menu .dropdown-menu .nav-link:hover{color:var(--orange)!important;}
#menu .see-all{color:var(--teal);font-size:12px;padding:8px 12px;display:block;border-top:1px solid var(--border);margin-top:8px;}
#menu .navbar-toggler{border-color:var(--border);color:var(--white);}
.breadcrumb{background:transparent;padding:12px 0;margin-bottom:24px;}
.breadcrumb-item a{color:var(--muted);font-size:12px;}
.breadcrumb-item a:hover{color:var(--orange);}
.breadcrumb-item.active{color:var(--muted);font-size:12px;}
.breadcrumb-item+.breadcrumb-item::before{color:var(--border);}
.product-thumb{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:.3s;height:100%;}
.product-thumb:hover{border-color:rgba(255,107,53,.4);transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.3);}
.product-thumb .image{position:relative;overflow:hidden;}
.product-thumb .image img{width:100%;height:220px;object-fit:cover;transition:.3s;}
.product-thumb:hover .image img{transform:scale(1.05);}
.product-thumb .caption{padding:16px;}
.product-thumb .caption h4{font-family:'Manrope',sans-serif;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--white);}
.product-thumb .caption h4 a{color:var(--white);}
.product-thumb .caption h4 a:hover{color:var(--orange);}
.product-thumb .caption .description{font-size:12px;color:var(--muted);margin-bottom:12px;line-height:1.5;}
.product-thumb .caption .price{font-family:'Unbounded',sans-serif;font-size:18px;font-weight:700;color:var(--orange);}
.product-thumb .caption .price-old{font-size:13px;color:var(--muted);text-decoration:line-through;font-family:'Manrope',sans-serif;font-weight:400;}
.product-thumb .caption .price-new{font-family:'Unbounded',sans-serif;font-size:18px;font-weight:700;color:var(--orange);}
.product-thumb .caption .price-tax{font-size:11px;color:var(--muted);}
.product-thumb .button-group{border-top:1px solid var(--border);padding:12px 16px;display:flex;gap:8px;}
.product-thumb .button-group button{background:var(--bg3);border:1px solid var(--border);color:var(--white);border-radius:10px;padding:8px 12px;font-size:12px;cursor:pointer;transition:.2s;flex:1;}
.product-thumb .button-group button:hover{background:var(--orange);border-color:var(--orange);}
.product-thumb .button-group button.btn-cart{background:var(--orange);border-color:var(--orange);font-weight:600;}
.product-thumb .button-group button.btn-cart:hover{background:#ff8555;}
#product-category h2{font-size:24px;margin-bottom:24px;}
#product-category #display-control{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;margin-bottom:24px;align-items:center;}
#product-category .form-select{background:var(--bg3);border:1px solid var(--border);color:var(--white);border-radius:10px;font-size:13px;}
#product-category .form-select:focus{border-color:var(--orange);box-shadow:none;}
#product-category .input-group-text{background:var(--bg3);border:1px solid var(--border);color:var(--muted);font-size:13px;}
#product-category .btn-primary{background:var(--orange);border:none;border-radius:10px;font-size:13px;}
#product-info h1{font-size:26px;margin-bottom:16px;}
#product-info .price-new{font-family:'Unbounded',sans-serif;font-size:28px;color:var(--orange);}
#product-info .price-old{color:var(--muted);text-decoration:line-through;font-size:18px;}
#product-info .list-unstyled li{color:var(--muted);font-size:13px;padding:4px 0;}
#product-info .nav-tabs{border-bottom:1px solid var(--border);}
#product-info .nav-tabs .nav-link{color:var(--muted);border:none;padding:10px 20px;font-size:14px;border-bottom:2px solid transparent;}
#product-info .nav-tabs .nav-link.active{color:var(--orange);border-bottom-color:var(--orange);background:transparent;}
#product-info .tab-content{padding:20px 0;color:var(--muted);font-size:14px;line-height:1.8;}
.btn-primary{background:var(--orange)!important;border-color:var(--orange)!important;border-radius:10px;font-size:14px;font-weight:600;padding:10px 20px;transition:.2s;}
.btn-primary:hover{background:#ff8555!important;border-color:#ff8555!important;transform:translateY(-1px);}
.btn-secondary{background:var(--bg3)!important;border-color:var(--border)!important;color:var(--white)!important;border-radius:10px;font-size:14px;padding:10px 20px;}
.btn-secondary:hover{border-color:var(--orange)!important;color:var(--orange)!important;}
.btn-light{background:var(--bg3)!important;border-color:var(--border)!important;color:var(--white)!important;border-radius:10px;}
.form-control{background:var(--bg3)!important;border:1px solid var(--border)!important;color:var(--white)!important;border-radius:10px;font-size:14px;padding:10px 16px;}
.form-control:focus{border-color:var(--orange)!important;box-shadow:0 0 0 3px rgba(255,107,53,.1)!important;}
.form-control::placeholder{color:var(--muted);}
.form-select{background-color:var(--bg3)!important;border:1px solid var(--border)!important;color:var(--white)!important;border-radius:10px;}
.input-group-text{background:var(--bg3)!important;border:1px solid var(--border)!important;color:var(--muted)!important;}
.form-check-input{background-color:var(--bg3);border-color:var(--border);}
.form-check-input:checked{background-color:var(--orange);border-color:var(--orange);}
.table{color:var(--white);}
.table th{color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-color:var(--border);}
.table td{border-color:var(--border);font-size:14px;vertical-align:middle;}
.table-hover tbody tr:hover{background:rgba(255,255,255,.03);}
.alert{border-radius:var(--radius);border:none;font-size:14px;}
.alert-success{background:rgba(0,212,180,.15);color:var(--teal);}
.alert-danger{background:rgba(255,107,53,.15);color:var(--orange);}
.alert-info{background:rgba(0,212,180,.1);color:var(--teal);}
.alert-warning{background:rgba(255,193,7,.1);color:#ffc107;}
.pagination .page-item .page-link{background:var(--bg3);border:1px solid var(--border);color:var(--muted);border-radius:8px!important;margin:0 3px;}
.pagination .page-item.active .page-link{background:var(--orange);border-color:var(--orange);color:#fff;}
.pagination .page-item .page-link:hover{background:rgba(255,107,53,.2);color:var(--orange);}
footer{background:var(--bg2);border-top:1px solid var(--border);padding:48px 0 24px;margin-top:60px;}
footer .container .row{margin-bottom:40px;}
footer h5{font-family:'Unbounded',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--white);margin-bottom:16px;}
footer ul{list-style:none;padding:0;}
footer ul li{margin-bottom:10px;}
footer ul li a{color:var(--muted);font-size:13px;}
footer ul li a:hover{color:var(--orange);}
footer hr{border-color:var(--border);margin:0 0 20px;}
footer p{color:var(--muted);font-size:12px;}
#alert{z-index:9999;pointer-events:all;}
.img-thumbnail{background:var(--bg3);border:1px solid var(--border);border-radius:10px;padding:4px;}
hr{border-color:var(--border);}
.text-muted{color:var(--muted)!important;}
.list-unstyled a{text-decoration:none;}
.nav-tabs{margin-bottom:15px;}
.required .col-form-label:before,.required .form-label:before{content:"* ";color:var(--orange);font-weight:bold;}
.form-switch-lg{font-size:20px;min-height:30px;line-height:30px;}
#cookie{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius);padding:16px 24px;z-index:9999;display:flex;gap:16px;align-items:center;max-width:600px;box-shadow:0 20px 40px rgba(0,0,0,.4);}
#cookie p{margin:0;font-size:13px;color:var(--muted);}
@media(max-width:991px){header .container{grid-template-columns:auto 1fr;}#header-cart{display:none;}}
@media(max-width:767px){header .container{grid-template-columns:1fr;gap:12px;}#logo{text-align:center;}h1{font-size:24px;}h2{font-size:20px;}}
@media(min-width:768px){.col-form-label{text-align:right;}}

/* ===== ДОПОЛНИТЕЛЬНЫЕ СТИЛИ ДЛЯ GIFTIK.CLICK ===== */
.hero {
  position: relative;
  overflow: hidden;
  min-height: 480px;
  display: flex;
  align-items: center;
  background: linear-gradient(135deg, #0f0f13 0%, #1a0f1f 50%, #0f1a1a 100%);
}
.hero-bg {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 80% at 80% 50%, rgba(0,212,180,0.08) 0%, transparent 60%),
              radial-gradient(ellipse 50% 70% at 20% 30%, rgba(255,107,53,0.07) 0%, transparent 60%);
}
.hero-grid {
  position: absolute;
  inset: 0;
  opacity: 0.03;
  background-image: linear-gradient(var(--border) 1px, transparent 1px),
                    linear-gradient(90deg, var(--border) 1px, transparent 1px);
  background-size: 40px 40px;
}
.hero .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 20px;
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.hero-text h1 {
  font-family: 'Unbounded', sans-serif;
  font-size: 42px;
  font-weight: 900;
  line-height: 1.1;
  margin-bottom: 20px;
}
.hero-text h1 .line2 { color: var(--orange); }
.hero-text h1 .line3 { color: var(--teal); }
.hero-text p {
  color: var(--muted);
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 32px;
  max-width: 420px;
}
.hero-btns {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.btn-primary {
  background: var(--orange) !important;
  border-color: var(--orange) !important;
  border-radius: 50px !important;
  font-weight: 700;
  font-size: 15px;
  padding: 14px 28px !important;
  transition: 0.2s;
}
.btn-primary:hover {
  background: #ff8555 !important;
  border-color: #ff8555 !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(255,107,53,0.3);
}
.btn-secondary {
  background: transparent !important;
  color: var(--white) !important;
  padding: 14px 28px !important;
  border-radius: 50px !important;
  font-weight: 600;
  border: 1px solid var(--border) !important;
}
.btn-secondary:hover {
  border-color: var(--teal) !important;
  color: var(--teal) !important;
}
.hero-stats {
  display: flex;
  gap: 32px;
  margin-top: 40px;
}
.stat .num {
  font-family: 'Unbounded', sans-serif;
  font-size: 28px;
  font-weight: 900;
  color: var(--orange);
}
.stat .label {
  font-size: 12px;
  color: var(--muted);
  margin-top: 2px;
}
.hero-visual {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}
.hero-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 16px;
  width: 140px;
  text-align: center;
  animation: float 3s ease-in-out infinite;
}
.hero-card:nth-child(2) { animation-delay: 0.5s; margin-top: 20px; }
.hero-card:nth-child(3) { animation-delay: 1s; }
.hero-card:nth-child(4) { animation-delay: 1.5s; margin-top: 20px; }
@keyframes float {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.hero-card .emoji {
  font-size: 40px;
  margin-bottom: 8px;
}
.hero-card .name {
  font-size: 11px;
  color: var(--muted);
}
.hero-card .price {
  font-size: 14px;
  font-weight: 700;
  color: var(--orange);
  margin-top: 4px;
}

.section {
  padding: 60px 0;
}
.section .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 32px;
}
.section-title {
  font-family: 'Unbounded', sans-serif;
  font-size: 22px;
  font-weight: 700;
}
.section-title span {
  color: var(--orange);
}
.see-all {
  color: var(--teal);
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
}
.see-all:hover {
  color: var(--orange);
}

.cats {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}
.cat-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 24px 16px;
  text-align: center;
  text-decoration: none;
  color: var(--white);
  transition: 0.3s;
}
.cat-card:hover {
  border-color: var(--orange);
  transform: translateY(-4px);
}
.cat-card .icon {
  font-size: 36px;
  margin-bottom: 12px;
  display: block;
}
.cat-card .cat-name {
  font-size: 13px;
  font-weight: 600;
}
.cat-card .cat-count {
  font-size: 11px;
  color: var(--muted);
  margin-top: 4px;
}

.products-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.product-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 20px;
  overflow: hidden;
  transition: 0.3s;
}
.product-card:hover {
  border-color: rgba(255,107,53,0.4);
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}
.product-img {
  height: 200px;
  background: var(--bg3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 64px;
  position: relative;
}
.product-img img {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}
.product-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  background: var(--orange);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 20px;
  text-transform: uppercase;
}
.product-info {
  padding: 16px;
}
.product-name {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 6px;
  line-height: 1.4;
}
.product-name a {
  color: var(--white);
}
.product-name a:hover {
  color: var(--orange);
}
.product-desc {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 12px;
  line-height: 1.5;
}
.product-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.product-price {
  font-family: 'Unbounded', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--orange);
}
.product-price span {
  font-size: 11px;
  color: var(--muted);
  font-family: 'Manrope', sans-serif;
  font-weight: 400;
}
.add-to-cart {
  background: var(--bg3);
  border: 1px solid var(--border);
  color: var(--white);
  width: 36px;
  height: 36px;
  border-radius: 10px;
  cursor: pointer;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.2s;
}
.add-to-cart:hover {
  background: var(--orange);
  border-color: var(--orange);
}

.promo-banner {
  margin: 0 0 60px;
  background: linear-gradient(135deg, #1a0f0a, #1a1a0a);
  border: 1px solid rgba(255,107,53,0.2);
  border-radius: 24px;
  padding: 48px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 40px;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.promo-banner::before {
  content: '';
  position: absolute;
  right: -100px;
  top: -100px;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,107,53,0.1), transparent 70%);
}
.promo-banner h2 {
  font-family: 'Unbounded', sans-serif;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.2;
  margin-bottom: 12px;
}
.promo-banner h2 span {
  color: var(--orange);
}
.promo-banner p {
  color: var(--muted);
  font-size: 15px;
}
.promo-banner .big-emoji {
  font-size: 80px;
  position: relative;
  z-index: 2;
}

.footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 40px;
  margin-bottom: 40px;
}
.footer-brand .logo {
  font-family: 'Unbounded', sans-serif;
  font-size: 20px;
  font-weight: 900;
  margin-bottom: 12px;
}
.footer-brand .logo .g { color: var(--orange); }
.footer-brand .logo .dot { color: var(--teal); }
.footer-brand p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
  max-width: 240px;
}
.footer-col h5 {
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 16px;
  color: var(--white);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-col ul li {
  margin-bottom: 10px;
}
.footer-col ul li a {
  color: var(--muted);
  text-decoration: none;
  font-size: 13px;
  transition: 0.2s;
}
.footer-col ul li a:hover {
  color: var(--orange);
}
.footer-bottom {
  border-top: 1px solid var(--border);
  padding-top: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer-bottom p {
  color: var(--muted);
  font-size: 12px;
}
.social-links {
  display: flex;
  gap: 8px;
}
.social-link {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: var(--bg3);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--muted);
  text-decoration: none;
  font-size: 14px;
  transition: 0.2s;
}
.social-link:hover {
  border-color: var(--orange);
  color: var(--orange);
}
@media (max-width: 992px) {
  .products-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
  .hero .container { grid-template-columns: 1fr; }
  .hero-visual { display: none; }
  .hero-text h1 { font-size: 28px; }
  .cats { grid-template-columns: repeat(2, 1fr); }
  .products-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 576px) {
  .products-grid { grid-template-columns: 1fr; }
}
