/* Shared modern shell for public pages */
body.has-modern-shell{
  --bg:#07090d;
  --bg-secondary:#0c1016;
  --text:#f3ead4;
  --muted:#cbbf9f;
  --card:#10151d;
  --card-hover:#161d27;
  --line:rgba(255,210,0,.18);
  --accent:#ffd200;
  --accent-hover:#ffdf65;
  --accent2:#f59e0b;
  --accent2-hover:#fbbf24;
  --shadow:0 10px 24px rgba(0,0,0,.32);
  --shadow-lg:0 22px 48px rgba(0,0,0,.45);
  --shadow-accent:0 10px 26px rgba(245,158,11,.26);
  background:
    radial-gradient(140% 90% at 50% -10%,rgba(255,210,0,.08) 0%,rgba(255,210,0,0) 55%),
    linear-gradient(180deg,#06080c 0%,#0b1016 48%,#080b11 100%);
  color:var(--text);
}

body.has-modern-shell a{
  color:#ffd86d;
}

body.has-modern-shell a:hover{
  color:#ffe7a4;
}

body.has-modern-shell main .section{
  background:linear-gradient(180deg,rgba(10,13,18,.94),rgba(8,11,16,.94));
}

body.has-modern-shell main .section:nth-child(even){
  background:linear-gradient(180deg,rgba(12,15,21,.95),rgba(9,12,18,.95));
}

body.has-modern-shell .card,
body.has-modern-shell .feature,
body.has-modern-shell .prod,
body.has-modern-shell .product-card,
body.has-modern-shell details,
body.has-modern-shell .hours-card,
body.has-modern-shell .modal-content{
  background:linear-gradient(180deg,rgba(15,20,28,.95),rgba(10,14,20,.93));
  border:1px solid rgba(255,210,0,.18);
  color:#f3ead4;
  box-shadow:var(--shadow);
}

body.has-modern-shell .card:hover,
body.has-modern-shell .feature:hover,
body.has-modern-shell .prod:hover,
body.has-modern-shell .product-card:hover{
  border-color:rgba(255,210,0,.34);
  box-shadow:var(--shadow-lg);
}

body.has-modern-shell .product-card,
body.has-modern-shell .product-card:hover{
  transform:none;
}

body.has-modern-shell h1,
body.has-modern-shell h2,
body.has-modern-shell h3,
body.has-modern-shell strong{
  color:#f7e7bc;
}

body.has-modern-shell .muted,
body.has-modern-shell p,
body.has-modern-shell li,
body.has-modern-shell summary{
  color:#d6c9a9;
}

body.has-modern-shell .btn{
  border-radius:12px;
}

body.has-modern-shell .btn-outline,
body.has-modern-shell .btn-ghost{
  border:1px solid rgba(255,210,0,.24);
  background:rgba(255,255,255,.03);
  color:#f2e5c5;
}

body.has-modern-shell .btn-accent{
  background:linear-gradient(135deg,#ffd200,#f59e0b);
  color:#1a1300;
  border:1px solid #ffd200;
}

body.has-modern-shell .btn-outline:hover,
body.has-modern-shell .btn-ghost:hover,
body.has-modern-shell .btn-accent:hover{
  background:linear-gradient(135deg,#ffd200,#f59e0b);
  color:#1a1300;
  border-color:#ffd200;
}

body.has-modern-shell .badge,
body.has-modern-shell .product-badge{
  background:rgba(255,210,0,.12);
  border:1px solid rgba(255,210,0,.24);
  color:#ffd76b;
}

body.has-modern-shell input,
body.has-modern-shell select,
body.has-modern-shell textarea{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.14);
  color:#f3ead4;
}

body.has-modern-shell input:focus,
body.has-modern-shell select:focus,
body.has-modern-shell textarea:focus{
  border-color:rgba(255,210,0,.5);
  box-shadow:0 0 0 3px rgba(255,210,0,.14);
}

body.has-modern-shell .theme-toggle{
  border-color:rgba(255,210,0,.22);
  background:rgba(255,255,255,.08);
}

body.has-modern-shell header{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(8,10,14,.92);
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:0 6px 18px rgba(0,0,0,.28);
}

body.has-modern-shell .nav{
  gap:12px;
  padding:10px 0;
}

body.has-modern-shell .brand-logo{
  height:34px !important;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.32));
}

body.has-modern-shell .menu{
  display:flex;
  align-items:center;
  gap:10px;
}

body.has-modern-shell .menu .btn{
  border:none;
  background:transparent;
  color:#e8dbc0;
  min-height:34px;
  padding:6px 10px;
  font-weight:500;
  border-radius:0;
  box-shadow:none;
}

body.has-modern-shell .menu .btn:hover{
  background:transparent;
  color:#ffd86d;
  box-shadow:none;
  transform:none;
}

body.has-modern-shell .menu .btn-accent{
  color:#ffd86d;
  font-weight:700;
}

body.has-modern-shell .theme-toggle{
  display:none !important;
}

body.has-modern-shell .menu-toggle{
  display:none;
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(6,8,12,.55);
  color:#f0dfb1;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}

body.has-modern-shell .menu-toggle-lines{
  width:20px;
  height:14px;
  position:relative;
  display:block;
}

body.has-modern-shell .menu-toggle-lines::before,
body.has-modern-shell .menu-toggle-lines::after,
body.has-modern-shell .menu-toggle-lines span{
  content:'';
  position:absolute;
  left:0;
  width:100%;
  height:2px;
  background:currentColor;
  transition:transform .25s ease,opacity .25s ease;
}

body.has-modern-shell .menu-toggle-lines::before{top:0}
body.has-modern-shell .menu-toggle-lines span{top:6px}
body.has-modern-shell .menu-toggle-lines::after{top:12px}

body.has-modern-shell .menu-toggle.is-open .menu-toggle-lines::before{
  transform:translateY(6px) rotate(45deg);
}

body.has-modern-shell .menu-toggle.is-open .menu-toggle-lines span{
  opacity:0;
}

body.has-modern-shell .menu-toggle.is-open .menu-toggle-lines::after{
  transform:translateY(-6px) rotate(-45deg);
}

/* Footer: vedi footer.css */

/* Delivery notice tab + popup */
body.has-modern-shell .delivery-notice-tab{
  position:fixed;
  right:14px;
  bottom:18px;
  z-index:1400;
  border:1px solid rgba(255,210,0,.45);
  background:linear-gradient(135deg,#ffd200,#f59e0b);
  color:#1a1300;
  border-radius:999px;
  min-height:42px;
  padding:0 16px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 14px 32px rgba(0,0,0,.35);
}

body.has-modern-shell .delivery-notice-popup{
  position:fixed;
  inset:0;
  z-index:1500;
  display:none;
  align-items:center;
  justify-content:center;
  padding:16px;
  background:rgba(0,0,0,.65);
  backdrop-filter:blur(4px);
}

body.has-modern-shell .delivery-notice-popup.is-open{
  display:flex;
}

body.has-modern-shell .delivery-notice-card{
  width:min(720px,96vw);
  border:1px solid rgba(255,210,0,.34);
  border-radius:14px;
  background:linear-gradient(165deg,rgba(8,10,14,.98),rgba(17,22,30,.94));
  color:#f3ead4;
  box-shadow:0 26px 60px rgba(0,0,0,.5);
  padding:20px;
}

body.has-modern-shell .delivery-notice-card h3{
  margin:0 0 10px;
  color:#ffd86d;
  font-size:clamp(22px,3vw,30px);
  line-height:1.2;
}

body.has-modern-shell .delivery-notice-card p{
  margin:0 0 12px;
  color:#e7dcc2;
  line-height:1.7;
}

body.has-modern-shell .delivery-notice-card .delivery-notice-strong{
  color:#ffd86d;
  font-weight:700;
}

body.has-modern-shell .delivery-notice-actions{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  margin-top:10px;
}

@media(max-width:980px){
  body.has-modern-shell .nav{
    align-items:center;
    flex-wrap:nowrap;
  }

  body.has-modern-shell .menu-toggle{
    display:inline-flex;
    margin-left:auto;
  }

  body.has-modern-shell .menu{
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    width:min(360px,92vw);
    display:none;
    flex-direction:column;
    align-items:stretch;
    padding:12px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:12px;
    background:rgba(8,10,14,.97);
    box-shadow:0 12px 30px rgba(0,0,0,.4);
    backdrop-filter:blur(8px);
  }

  body.has-modern-shell .menu.is-open{
    display:flex;
  }

  body.has-modern-shell .menu .btn,
  body.has-modern-shell .menu .theme-toggle{
    width:100%;
  }

  body.has-modern-shell .menu .btn{
    text-align:left;
    justify-content:flex-start;
    padding:10px 8px;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  body.has-modern-shell .delivery-notice-tab{
    right:10px;
    bottom:12px;
    min-height:40px;
    padding:0 14px;
    font-size:13px;
  }

  body.has-modern-shell .delivery-notice-actions{
    flex-direction:column;
  }

  body.has-modern-shell .delivery-notice-actions .btn{
    width:100%;
    justify-content:center;
  }

}
