/* Haminpaz - responsive RTL commerce UI */
:root{
    --bg:#fff8f4;
    --surface:#ffffff;
    --surface-2:#fff1eb;
    --text:#1f2937;
    --muted:#6b7280;
    --line:#ebd7cf;
    --primary:#ff6b57;
    --primary-2:#ff9572;
    --secondary:#ffb26b;
    --dark:#17212b;
    --success:#127c55;
    --warning:#b86a00;
    --error:#b42318;
    --shadow:0 18px 60px rgba(23,33,43,.08);
    --radius:24px;
    --radius-lg:32px;
    --radius-sm:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family: Tahoma, Arial, sans-serif;
    background:
        radial-gradient(circle at top right, rgba(255,107,87,.18), transparent 26%),
        radial-gradient(circle at 20% 10%, rgba(255,149,114,.14), transparent 26%),
        linear-gradient(180deg,#fffaf7 0%,#fff8f4 100%);
    color:var(--text);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(1180px, calc(100% - 32px)); margin-inline:auto}
.site-shell{min-height:100vh; display:flex; flex-direction:column}
.main-content{flex:1; padding:24px 0 48px}
.glass{
    background: rgba(255,255,255,.84);
    backdrop-filter: blur(16px);
    border:1px solid rgba(255,255,255,.8);
}
.site-header{
    position:sticky; top:0; z-index:40;
    margin:16px auto 0; width:min(1240px, calc(100% - 24px));
    border-radius:28px; box-shadow:var(--shadow);
}
.nav-wrap{
    display:flex; align-items:center; gap:18px;
    min-height:84px;
}
.brand{display:flex; align-items:center; gap:14px; min-width:240px}
.brand-mark{
    inline-size:52px; block-size:52px; display:grid; place-items:center;
    border-radius:18px;
    background:linear-gradient(135deg,var(--primary),var(--primary-2));
    color:#fff; font-weight:700; letter-spacing:.6px;
    box-shadow:0 14px 30px rgba(255,107,87,.32);
}
.brand-copy strong{display:block; font-size:1.1rem}
.brand-copy small{color:var(--muted)}
.main-nav{display:flex; gap:10px; flex:1; flex-wrap:wrap}
.main-nav a{
    padding:12px 16px; border-radius:14px; color:var(--text);
    transition:.2s ease; font-size:.96rem;
}
.main-nav a:hover, .main-nav a.active{background:var(--surface-2); color:var(--primary)}
.nav-actions{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
.mobile-menu-btn{
    display:none; background:none; border:1px solid var(--line); border-radius:14px; padding:10px 12px; cursor:pointer;
}
.icon-pill{
    display:inline-flex; align-items:center; gap:8px; padding:10px 14px;
    border-radius:999px; background:var(--surface-2); color:var(--dark);
    border:1px solid var(--line); font-weight:700;
}
.icon-pill span{
    inline-size:24px; block-size:24px; border-radius:999px; background:var(--surface); display:grid; place-items:center; font-size:.82rem;
}
.btn{
    border:none; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:8px;
    padding:13px 18px; border-radius:16px; transition:.2s ease; font-weight:700;
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{
    background:linear-gradient(135deg,var(--primary),var(--primary-2)); color:#fff;
    box-shadow:0 14px 30px rgba(255,107,87,.28);
}
.btn-soft{background:var(--surface-2); color:var(--dark); border:1px solid var(--line)}
.btn-outline{background:#fff; color:var(--dark); border:1px solid var(--line)}
.btn-block{width:100%}
.hero{
    display:grid; grid-template-columns:1.12fr .88fr; gap:22px;
    padding-top:12px;
}
.hero-panel{
    background:linear-gradient(135deg,#fff, #fff7f3 58%, #fff0e6 100%);
    border:1px solid rgba(255,255,255,.9);
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow);
    padding:36px;
    position:relative; overflow:hidden;
}
.hero-panel::after{
    content:"";
    position:absolute; inset:auto -80px -100px auto;
    inline-size:240px; block-size:240px;
    background:radial-gradient(circle, rgba(255,107,87,.28), transparent 68%);
}
.hero h1{
    margin:0 0 14px; font-size:clamp(1.9rem, 3.2vw, 3.4rem); line-height:1.18;
}
.hero p{margin:0 0 22px; color:var(--muted); font-size:1.04rem}
.hero-stats{display:flex; gap:14px; flex-wrap:wrap; margin-top:22px}
.stat{
    background:#fff; border:1px solid var(--line); border-radius:18px; padding:14px 16px; min-width:130px;
    box-shadow:0 12px 30px rgba(23,33,43,.05);
}
.stat strong{display:block; font-size:1.18rem}
.stat small{color:var(--muted)}
.hero-side{display:grid; gap:18px}
.card{
    background:var(--surface);
    border:1px solid rgba(255,255,255,.88);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
}
.card-pad{padding:24px}
.section{margin-top:30px}
.section-head{
    display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:18px;
}
.section-head h2{margin:0; font-size:1.6rem}
.section-head p{margin:6px 0 0; color:var(--muted)}
.grid{display:grid; gap:18px}
.grid-2{grid-template-columns:repeat(2, minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3, minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4, minmax(0,1fr))}
.recipe-card,.product-card,.feature-card{position:relative; overflow:hidden}
.recipe-thumb,.product-thumb{
    aspect-ratio: 16/10;
    background:#fde9df;
    overflow:hidden;
}
.recipe-thumb img,.product-thumb img{
    width:100%; height:100%; object-fit:cover;
}
.card-body{padding:18px}
.card-title{
    margin:0 0 10px; font-size:1.1rem; display:flex; align-items:flex-start; justify-content:space-between; gap:10px;
}
.badge,.pill{
    display:inline-flex; align-items:center; justify-content:center; gap:6px;
    border-radius:999px; padding:8px 12px; background:var(--surface-2); color:var(--primary); border:1px solid var(--line); font-size:.82rem; font-weight:700;
}
.badge-dark{background:rgba(23,33,43,.9); color:#fff; border:none}
.meta-line{display:flex; flex-wrap:wrap; gap:10px; color:var(--muted); font-size:.92rem}
.match-bar{
    margin-top:14px; inline-size:100%; block-size:10px; background:#ffe1d8; border-radius:999px; overflow:hidden;
}
.match-bar > span{
    display:block; block-size:100%;
    background:linear-gradient(90deg,var(--primary),var(--primary-2));
}
.price{
    display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:10px;
}
.price strong{font-size:1.18rem}
.price s{color:var(--muted)}
.filter-form, .auth-form, .checkout-form, .pantry-form, .search-panel{display:grid; gap:14px}
.form-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px}
.field{display:grid; gap:8px}
.field label{font-weight:700; font-size:.95rem}
.field input,.field select,.field textarea{
    border:1px solid var(--line); background:#fff; border-radius:16px; padding:14px 15px; outline:none; transition:.18s ease;
}
.field textarea{min-height:120px; resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{
    border-color:var(--primary); box-shadow:0 0 0 4px rgba(255,107,87,.11);
}
.ingredient-picker{display:grid; gap:14px}
.chips{display:flex; flex-wrap:wrap; gap:10px}
.chip{
    padding:10px 14px; border-radius:999px; background:#fff; border:1px solid var(--line); cursor:pointer; transition:.2s ease;
}
.chip:hover{transform:translateY(-1px); border-color:var(--primary)}
.chip.active{background:var(--primary); border-color:var(--primary); color:#fff}
.note{color:var(--muted); font-size:.92rem}
.alert{
    padding:14px 16px; border-radius:18px; margin-bottom:18px; border:1px solid var(--line);
}
.alert a{text-decoration:underline}
.alert-success{background:rgba(18,124,85,.10); color:var(--success); border-color:rgba(18,124,85,.18)}
.alert-error{background:rgba(180,35,24,.09); color:var(--error); border-color:rgba(180,35,24,.18)}
.alert-warning{background:rgba(184,106,0,.09); color:var(--warning); border-color:rgba(184,106,0,.18)}
.detail-layout{display:grid; grid-template-columns:1.08fr .92fr; gap:24px}
.sticky{position:sticky; top:116px}
.recipe-head{display:grid; gap:16px}
.hero-badges{display:flex; gap:10px; flex-wrap:wrap}
.content-block{padding:26px}
.list-clean{list-style:none; padding:0; margin:0; display:grid; gap:12px}
.list-clean li{
    display:flex; align-items:flex-start; justify-content:space-between; gap:14px;
    padding:14px 16px; border:1px solid var(--line); background:#fffdfb; border-radius:18px;
}
.step{display:flex; gap:14px; padding:18px 0; border-bottom:1px dashed var(--line)}
.step:last-child{border-bottom:none}
.step-index{
    inline-size:42px; block-size:42px; border-radius:14px; display:grid; place-items:center;
    background:var(--surface-2); color:var(--primary); font-weight:700; flex-shrink:0;
}
.toolbar{display:flex; gap:12px; flex-wrap:wrap; align-items:center}
.kpis{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
.kpi{
    background:var(--surface-2); border:1px solid var(--line); border-radius:20px; padding:16px;
}
.kpi strong{display:block; font-size:1.15rem}
.muted{color:var(--muted)}
.table-wrap{overflow:auto; border:1px solid var(--line); border-radius:24px; background:#fff}
.table{width:100%; border-collapse:collapse; min-width:720px}
.table th,.table td{text-align:right; padding:16px 14px; border-bottom:1px solid #f2e2db}
.table th{background:#fff5f0; font-size:.92rem}
.table tr:last-child td{border-bottom:none}
.empty{padding:34px 24px; text-align:center; color:var(--muted)}
.cart-layout,.checkout-layout,.dashboard-layout{display:grid; grid-template-columns:1.08fr .92fr; gap:22px}
.summary-card{padding:22px}
.summary-row{
    display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 0;
}
.summary-row + .summary-row{border-top:1px dashed var(--line)}
.summary-total{font-size:1.18rem; font-weight:700}
.footer-grid{display:grid; grid-template-columns:1.3fr .8fr .9fr; gap:24px; padding:36px 0 20px}
.footer-grid h3,.footer-grid h4{margin:0 0 12px}
.footer-grid p,.footer-grid a,.footer-grid span{display:block; color:#d8dee6; margin:10px 0}
.site-footer{background:linear-gradient(180deg,#1b2632 0%,#111923 100%); color:#fff; margin-top:40px}
.footer-bottom{
    padding:18px 0 28px; border-top:1px solid rgba(255,255,255,.08);
    display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; color:#b9c0c9;
}
.auth-shell{min-height:calc(100vh - 220px); display:grid; place-items:center}
.auth-card{width:min(960px,100%); display:grid; grid-template-columns:1fr .92fr; overflow:hidden}
.auth-art{
    padding:36px;
    background: radial-gradient(circle at 100% 0, rgba(255,255,255,.18), transparent 32%), linear-gradient(135deg, var(--primary), var(--primary-2));
    color:#fff; display:grid; gap:18px; align-content:space-between;
}
.auth-art h1{margin:0; font-size:2rem}
.auth-art .feature-list{display:grid; gap:14px}
.auth-art .feature{
    background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.18); padding:14px; border-radius:18px;
}
.auth-pane{padding:32px}
.hero-illustration{
    min-height:260px;
    background: url('../img/ui/hero.svg') center/cover no-repeat, linear-gradient(135deg,#ffefea,#ffe0d4);
    border-radius:28px;
}
.inline-form{display:flex; gap:10px; flex-wrap:wrap}
.inline-form > *{flex:1}
.tag-cloud,.category-pills{display:flex; gap:10px; flex-wrap:wrap}
.tag{padding:9px 12px; border-radius:12px; background:#fff; border:1px dashed var(--line); color:var(--muted)}
.category-pills a{padding:10px 14px; border-radius:999px; background:#fff; border:1px solid var(--line)}
.category-pills a.active, .category-pills a:hover{background:var(--surface-2); color:var(--primary)}
.actions-row{display:flex; gap:10px; flex-wrap:wrap}
.icon-btn{inline-size:46px; block-size:46px; border:none; cursor:pointer; border-radius:16px; background:var(--surface-2); border:1px solid var(--line)}
.order-status{padding:8px 12px; border-radius:999px; font-size:.84rem; font-weight:700; display:inline-flex}
.status-paid{background:rgba(18,124,85,.1); color:var(--success)}
.status-pending{background:rgba(184,106,0,.12); color:var(--warning)}
.status-failed{background:rgba(180,35,24,.09); color:var(--error)}
.rating{color:#ff9e2c; letter-spacing:2px}
.small{font-size:.88rem}
.text-center{text-align:center}
.mt-0{margin-top:0}.mt-1{margin-top:10px}.mt-2{margin-top:18px}.mt-3{margin-top:26px}.mb-0{margin-bottom:0}
.hidden{display:none !important}
.hero-mini{padding:24px; background:linear-gradient(135deg,#fffaf7,#fff3ee); border-radius:28px; border:1px solid var(--line)}
.install-grid{display:grid; grid-template-columns:1fr .95fr; gap:22px}
.code-box{
    background:#111923; color:#eaf0f6; padding:18px; border-radius:22px; overflow:auto;
    font-size:.92rem; line-height:1.8; direction:ltr; text-align:left;
}
.search-highlight{
    background:#fff1eb; padding:2px 8px; border-radius:999px; color:var(--primary); font-weight:700;
}
@media (max-width: 1040px){
    .hero,.detail-layout,.cart-layout,.checkout-layout,.dashboard-layout,.footer-grid,.install-grid{grid-template-columns:1fr}
    .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
    .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
    .auth-card{grid-template-columns:1fr}
    .sticky{position:static}
}
@media (max-width: 860px){
    .site-header{width:min(100%, calc(100% - 16px)); margin-top:8px}
    .nav-wrap{min-height:74px; flex-wrap:wrap; padding:12px 0}
    .mobile-menu-btn{display:inline-flex}
    .main-nav{
        width:100%; display:none; padding:8px 0 4px; border-top:1px solid var(--line);
    }
    .main-nav.open{display:flex}
    .nav-actions{margin-inline-start:auto}
}

@media (max-width: 900px){
    .recipe-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 700px){
    .container{width:min(100% - 22px, 100%)}
    .hero-panel,.card-pad,.content-block,.summary-card,.auth-pane,.auth-art{padding:20px}
    .grid-4,.grid-3,.grid-2,.form-grid,.kpis{grid-template-columns:1fr}
    .main-nav a{padding:10px 12px}
    .brand-copy small{display:none}
    .hero h1{font-size:1.76rem}
    .section-head{flex-direction:column; align-items:flex-start}
    .footer-bottom{flex-direction:column; align-items:flex-start}
}

/* --- Pro UI extensions --- */
.section-tight{margin-top:18px}
.section-head--rich{align-items:flex-start}
.eyebrow{
    display:inline-flex; align-items:center; gap:8px; margin-bottom:12px;
    font-size:.86rem; font-weight:700; color:var(--primary);
    background:rgba(255,107,87,.10); border:1px solid rgba(255,107,87,.14);
    border-radius:999px; padding:9px 12px;
}
.hero-home .hero-panel--xl{padding:40px 38px}
.hero-media-card{overflow:hidden}
.hero-illustration--wide{min-height:300px}
.feature-card-soft{
    background:#fff8f5; border:1px solid var(--line); border-radius:24px; padding:18px;
    box-shadow:0 12px 28px rgba(23,33,43,.04)
}
.feature-card-soft h3{margin:14px 0 8px}
.feature-card-soft--green{background:#f5fff8}
.feature-card-soft--yellow{background:#fffdf4}
.feature-card-soft--blue{background:#f5faff}
.recipe-filter-shell{background:linear-gradient(180deg,#fff, #fffaf8)}
.ingredient-picker-compact{display:flex; flex-wrap:wrap; gap:10px}
.showcase-slider{position:relative}
.slide-track{
    display:grid; grid-auto-flow:column; grid-auto-columns:minmax(320px, 1fr);
    gap:16px; overflow:auto; scroll-snap-type:x mandatory; padding-bottom:6px;
    scrollbar-width:none;
}
.slide-track::-webkit-scrollbar{display:none}
.slide-card{scroll-snap-align:start; min-width:0}
.slide-media{
    position:relative; display:block; border-radius:30px; overflow:hidden;
    min-height:420px; background:#f9e4dc; box-shadow:var(--shadow);
}
.slide-media img{width:100%; height:100%; min-height:420px; object-fit:cover}
.slide-overlay,
.thumb-overlay{
    position:absolute; inset:0; display:flex; flex-direction:column; justify-content:space-between;
    padding:18px; color:#fff;
    background:linear-gradient(180deg, rgba(17,25,35,.10) 0%, rgba(17,25,35,.18) 25%, rgba(17,25,35,.68) 75%, rgba(17,25,35,.86) 100%);
}
.slide-topline,.thumb-overlay-top{display:flex; gap:8px; flex-wrap:wrap; align-items:flex-start}
.slide-copy,.thumb-overlay-bottom{display:grid; gap:10px}
.slide-copy h3,
.thumb-overlay-bottom h3,
.thumb-overlay-bottom h1{
    margin:0; font-size:clamp(1.1rem,1.6vw,1.72rem); line-height:1.32; text-shadow:0 2px 14px rgba(0,0,0,.28)
}
.overlay-lines,
.overlay-meta{display:flex; flex-wrap:wrap; gap:8px 14px; font-size:.94rem; color:rgba(255,255,255,.96)}
.overlay-lines span,
.overlay-meta span{
    display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px;
    background:rgba(255,255,255,.15); backdrop-filter:blur(8px);
}
.overlay-meta--compact{font-size:.86rem}
.recipe-grid-pro .recipe-card-pro{display:flex; flex-direction:column}
.recipe-card-pro .card-body{display:grid; gap:10px; flex:1}
.recipe-thumb-overlay{position:relative; display:block; border-radius:26px 26px 0 0; overflow:hidden}
.recipe-thumb-overlay img{width:100%; height:100%; min-height:280px; object-fit:cover}
.thumb-overlay--strong{padding:16px}
.thumb-overlay--hero{padding:24px}
.thumb-overlay--hero .thumb-overlay-bottom h1{font-size:clamp(1.6rem, 3vw, 2.6rem)}
.recipe-hero-media,
.product-thumb-large{position:relative; min-height:420px; overflow:hidden; background:#f9e4dc}
.recipe-hero-media img,
.product-thumb-large img{width:100%; height:100%; min-height:420px; object-fit:cover}
.product-card-pro .product-thumb{background:linear-gradient(180deg,#fffaf7,#fff1ea)}
.product-card-pro .product-thumb img{padding:10px; object-fit:contain}
.slider-actions{display:flex; gap:10px}
.inline-form--qty > *{flex:unset}
.inline-form--qty input{flex:1; min-width:84px; text-align:center}
.product-detail-card{overflow:hidden}
.recipe-detail-card{overflow:hidden}

.overlay-meta--second{margin-top:4px}
.recipe-tech-grid{
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:18px;
}
.tech-item{
    background:#fff8f5; border:1px solid rgba(255,107,87,.12); border-radius:18px;
    padding:14px 16px; display:grid; gap:6px;
}
.tech-item strong{font-size:1rem; color:var(--text)}
.recipe-tips-box{
    margin-top:18px; padding:18px; border-radius:20px; background:#fffaf6;
    border:1px solid rgba(255,107,87,.12);
}
.step-pills{display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 10px}
.step-note{
    margin:10px 0 0; font-size:.92rem; color:#5d6672; background:#f8fafc;
    border:1px dashed rgba(23,33,43,.12); border-radius:14px; padding:10px 12px;
}
.list-clean--tips li{padding:10px 0}
.hero-panel .ingredient-picker input[type="text"]{min-height:54px}
.hero-panel .ingredient-picker .chips{margin-top:2px}
.category-pills a{box-shadow:0 10px 24px rgba(23,33,43,.03)}
.card:hover{box-shadow:0 22px 66px rgba(23,33,43,.10)}
.site-header .main-nav a.active,
.site-header .main-nav a:hover{box-shadow:inset 0 0 0 1px rgba(255,107,87,.12)}

@media (max-width: 1040px){
    .slide-media,
    .slide-media img,
    .recipe-hero-media,
    .recipe-hero-media img,
    .product-thumb-large,
    .product-thumb-large img{min-height:360px}
}

@media (max-width: 900px){
    .recipe-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 700px){
    .hero-home .hero-panel--xl{padding:22px}
    .slide-track{grid-auto-columns:88%}
    .slide-media,
    .slide-media img{min-height:340px}
    .thumb-overlay,
    .slide-overlay{padding:14px}
    .overlay-lines,
    .overlay-meta{font-size:.82rem; gap:6px}
    .overlay-lines span,
    .overlay-meta span{padding:5px 9px}
    .thumb-overlay-bottom h3,
    .slide-copy h3{font-size:1.12rem}
    .recipe-thumb-overlay img{min-height:250px}

    .recipe-tech-grid{grid-template-columns:1fr}
    .tech-item{padding:12px 14px}
    .step-note{font-size:.88rem}
    .recipe-hero-media,
    .recipe-hero-media img,
    .product-thumb-large,
    .product-thumb-large img{min-height:300px}
}



.actions-row--between{justify-content:space-between;align-items:center}
.like-btn{
    display:inline-flex; align-items:center; gap:8px; border:none; cursor:pointer;
    background:#fff5f0; color:var(--primary); border:1px solid rgba(255,107,87,.18);
    border-radius:999px; padding:10px 14px; font-weight:800; transition:.18s ease;
    box-shadow:0 8px 24px rgba(255,107,87,.10);
}
.like-btn:hover{transform:translateY(-1px)}
.like-btn.active{background:linear-gradient(135deg,var(--primary),var(--primary-2)); color:#fff}
.like-btn:disabled{opacity:.7; cursor:wait}
.like-btn__icon{font-size:1rem; line-height:1}
.like-btn__count{font-size:.92rem}
.like-btn--large{padding:12px 18px}
.pagination-wrap{
    display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:center;
    margin-top:28px;
}
.pagination-link{
    min-inline-size:46px; block-size:46px; display:inline-flex; align-items:center; justify-content:center;
    border-radius:14px; background:#fff; color:var(--dark); border:1px solid var(--line);
    box-shadow:0 10px 22px rgba(23,33,43,.04);
}
.pagination-link.is-active,
.pagination-link:hover{background:var(--surface-2); color:var(--primary); border-color:rgba(255,107,87,.18)}
.meta-line + .actions-row{margin-top:12px}

@media (max-width: 900px){
    .recipe-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 700px){
    .actions-row--between{align-items:stretch}
    .like-btn{width:100%; justify-content:center}
    .recipe-card-pro .actions-row--between{flex-direction:column}
}


/* --- Ultimate package additions --- */
.ingredient-selector-shell{display:grid;gap:14px}
.ingredient-quick-add{display:flex;gap:10px;flex-wrap:wrap}
.ingredient-quick-add input{flex:1;min-width:220px}
.selected-ingredients{display:flex;flex-wrap:wrap;gap:10px;min-height:44px;margin-top:10px}
.selected-ingredient-chip{
    border:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;
    padding:10px 14px;border-radius:999px;background:#fff7f3;color:var(--dark);
    border:1px solid rgba(255,107,87,.18);box-shadow:0 8px 20px rgba(23,33,43,.04)
}
.selected-ingredient-chip strong{font-size:1rem;color:var(--primary)}
.autocomplete-box{
    display:grid;gap:8px;background:#fff;border:1px solid var(--line);
    border-radius:18px;padding:10px;box-shadow:var(--shadow)
}
.autocomplete-item{
    border:none;background:#fffdfb;cursor:pointer;border-radius:14px;
    padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;
    border:1px solid #f2e2db;text-align:right
}
.autocomplete-item small{color:var(--muted)}
.autocomplete-item:hover{border-color:rgba(255,107,87,.22);background:#fff3ee}
.ingredient-picker-compact--rich{max-height:180px;overflow:auto;padding-inline-end:4px}
.recipe-source-badge{background:#edf7ff;color:#1267a1;border-color:#cfe7ff}
.recipe-source-badge--user{background:#f5fff8;color:#127c55;border-color:#cfeedd}
.stats-grid-compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.stats-grid-compact .card{padding:18px}
.submission-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:24px}
.repeater-group{display:grid;gap:12px}
.repeater-row{
    padding:14px;border-radius:18px;background:#fffdfb;border:1px solid var(--line);
    display:grid;gap:12px
}
.repeater-row .form-grid--triple{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px}
.repeater-row .form-grid--double{display:grid;grid-template-columns:1fr auto;gap:10px}
.inline-check{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.92rem}
.preview-image-box{
    min-height:220px;border-radius:24px;border:1px dashed var(--line);background:#fffdfb;
    display:grid;place-items:center;overflow:hidden
}
.preview-image-box img{width:100%;height:100%;object-fit:cover}
.card-stack{display:grid;gap:16px}
.submission-card{display:grid;gap:16px}
.submission-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.submission-card__meta{display:flex;flex-wrap:wrap;gap:10px}
.small-code{font-size:.82rem;color:var(--muted);word-break:break-word}
.hero-copy-grid{display:grid;gap:18px}
.hero-copy-grid p:last-child{margin-bottom:0}
.status-chip{
    display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;
    font-size:.84rem;font-weight:800
}
.status-chip.status-pending{background:rgba(184,106,0,.12);color:var(--warning)}
.status-chip.status-paid{background:rgba(18,124,85,.10);color:var(--success)}
.status-chip.status-failed{background:rgba(180,35,24,.09);color:var(--error)}
.kbd-pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:10px;border:1px solid var(--line);background:#fff;font-size:.82rem}
.admin-filter-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.admin-filter-bar a{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line)}
.admin-filter-bar a.active{background:var(--surface-2);color:var(--primary)}
.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;border-radius:999px;background:#fff;color:var(--dark);border:1px solid var(--line)}
.meta-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
.upload-note{font-size:.88rem;color:var(--muted)}
@media (max-width: 1040px){
    .submission-layout,.stats-grid-compact,.meta-grid{grid-template-columns:1fr 1fr}
}

@media (max-width: 900px){
    .recipe-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 700px){
    .ingredient-quick-add,.repeater-row .form-grid--triple,.repeater-row .form-grid--double,
    .stats-grid-compact,.meta-grid{grid-template-columns:1fr;display:grid}
    .ingredient-quick-add input{min-width:0}
    .submission-layout{grid-template-columns:1fr}
    .selected-ingredient-chip{padding:9px 12px}
}


.toast-root{
    position:fixed;
    inset:auto 18px 18px 18px;
    display:grid;
    gap:10px;
    z-index:9999;
    pointer-events:none;
}
.toast{
    pointer-events:auto;
    min-width:min(100%,320px);
    max-width:420px;
    padding:14px 16px;
    border-radius:18px;
    box-shadow:0 18px 45px rgba(17,24,39,.18);
    transform:translateY(14px);
    opacity:0;
    transition:all .2s ease;
    font-weight:700;
}
.toast.show{transform:translateY(0);opacity:1}
.toast-success{background:#ecfdf3;color:#0f6a46;border:1px solid rgba(15,106,70,.15)}
.toast-error{background:#fff1f0;color:#b42318;border:1px solid rgba(180,35,24,.14)}

.receipt-layout{
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr);
    gap:24px;
}
.receipt-card{display:grid;gap:18px}
.receipt-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    flex-wrap:wrap;
}
.receipt-kpis{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.receipt-kpis .card{
    padding:16px;
}
.receipt-kpis strong{
    display:block;
    font-size:1.05rem;
    margin-bottom:6px;
}
.detail-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.detail-box{
    border:1px solid var(--line);
    border-radius:18px;
    padding:16px;
    background:#fffdfb;
    display:grid;
    gap:8px;
}
.detail-box h3{
    margin:0 0 4px;
    font-size:1rem;
}
.timeline{
    display:grid;
    gap:14px;
}
.timeline-item{
    display:grid;
    grid-template-columns:18px 1fr;
    gap:14px;
    align-items:flex-start;
}
.timeline-dot{
    width:18px;
    height:18px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--primary),var(--secondary));
    box-shadow:0 8px 18px rgba(255,107,87,.25);
    margin-top:4px;
}
.timeline-body{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px 16px;
    background:#fff;
}
.timeline-body h4{
    margin:0 0 6px;
    font-size:.98rem;
}
.timeline-body p{
    margin:0;
}
.order-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
.receipt-print-note{
    font-size:.88rem;
    color:var(--muted);
}
.product-line{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.product-line + .product-line{
    padding-top:12px;
    border-top:1px solid var(--line);
}
.table td .btn-link{
    color:var(--primary);
    font-weight:700;
}

@media (max-width: 920px){
    .receipt-layout,.receipt-kpis,.detail-grid{
        grid-template-columns:1fr;
    }
}



/* --- Superapp layer --- */
.user-chip{
    padding-inline:16px;
    min-height:48px;
    align-items:center;
    gap:10px;
}
.user-chip span{font-weight:700}
.sub-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    padding:4px 10px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--primary),var(--primary-2));
    color:#fff;
    font-size:.78rem;
    font-weight:800;
    box-shadow:0 10px 22px rgba(255,107,87,.22);
}
.mobile-bottom-nav{
    position:fixed;
    inset:auto 12px 12px 12px;
    display:none;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:8px;
    z-index:45;
    padding:10px;
    border-radius:24px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(255,255,255,.9);
    box-shadow:0 20px 50px rgba(23,33,43,.12);
    backdrop-filter:blur(14px);
}
.mobile-bottom-nav a{
    display:grid;
    gap:4px;
    justify-items:center;
    padding:10px 8px;
    border-radius:18px;
    color:var(--muted);
    font-weight:700;
    transition:.2s ease;
}
.mobile-bottom-nav a span{font-size:1.08rem; line-height:1}
.mobile-bottom-nav a small{font-size:.73rem}
.mobile-bottom-nav a.active,
.mobile-bottom-nav a:hover{
    background:var(--surface-2);
    color:var(--primary);
}

.plans-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.plan-card{
    position:relative;
    overflow:hidden;
    border:1px solid rgba(255,107,87,.10);
    background:linear-gradient(180deg,#fff, #fffaf7 100%);
}
.plan-card::before{
    content:"";
    position:absolute;
    inset:0 auto auto 0;
    width:100%;
    height:6px;
    background:linear-gradient(90deg,var(--primary),var(--primary-2));
    opacity:.18;
}
.plan-card--featured{
    transform:translateY(-4px);
    box-shadow:0 24px 66px rgba(255,107,87,.14);
    border-color:rgba(255,107,87,.22);
}
.plan-card--featured::before{opacity:1}
.plan-card__topline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
}
.plan-price{
    display:flex;
    align-items:flex-end;
    gap:10px;
    flex-wrap:wrap;
    margin:16px 0 14px;
}
.plan-price strong{font-size:1.45rem}
.plan-price s{color:var(--muted)}
.plan-features{
    list-style:none;
    padding:0;
    margin:0 0 18px;
    display:grid;
    gap:10px;
}
.plan-features li,
.feature-bullet{
    position:relative;
    padding:12px 14px 12px 12px;
    border-radius:16px;
    background:#fffdfb;
    border:1px solid var(--line);
    color:var(--text);
}
.plan-features li::before,
.feature-bullet::before{
    content:"✓";
    display:inline-grid;
    place-items:center;
    inline-size:22px;
    block-size:22px;
    margin-inline-start:8px;
    border-radius:999px;
    background:rgba(18,124,85,.10);
    color:var(--success);
    font-weight:800;
}
.plan-features--spacious li{padding-block:14px}
.premium-widget,
.subscription-hero-card{
    background:linear-gradient(135deg,#fff7f2,#fff2ea 58%,#ffffff 100%);
    border:1px solid rgba(255,107,87,.12);
}
.premium-widget--active{
    background:linear-gradient(135deg,#f5fff9,#ffffff 60%,#eefcf5 100%);
    border-color:rgba(18,124,85,.16);
}
.subscription-hero-card__meta,
.feature-bullets{
    display:grid;
    gap:10px;
}
.planner-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.planner-grid--blurred{
    filter:blur(8px);
    pointer-events:none;
    user-select:none;
}
.planner-day{
    display:grid;
    gap:12px;
    padding:20px;
    border-radius:24px;
    background:#fff;
    border:1px solid rgba(255,107,87,.10);
    box-shadow:0 16px 40px rgba(23,33,43,.06);
}
.planner-day__head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
}
.planner-day h3{margin:0}
.planner-slot,
.planner-slot-card{
    display:grid;
    gap:6px;
    padding:14px 16px;
    border-radius:18px;
    background:#fffaf7;
    border:1px solid var(--line);
}
.planner-slot-card a{font-weight:700}
.planner-slot-card--dessert{background:#fffdf4}
.locked-preview{
    position:relative;
    overflow:hidden;
}
.empty-soft{
    min-height:0;
    padding:18px 0;
    text-align:right;
}
.auth-card--otp .auth-pane{display:grid; align-content:center}
.auth-card--otp .otp-form{max-width:460px}

.recipe-lock-blur{
    position:relative;
    overflow:hidden;
    background:linear-gradient(180deg,#fffdfb,#fff8f5);
}
.recipe-lock-blur::after{
    content:"";
    position:absolute;
    inset:0;
    backdrop-filter:blur(16px);
    background:rgba(255,255,255,.18);
    pointer-events:none;
}
.recipe-lock-preview-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.recipe-lock-preview-block{
    display:grid;
    gap:12px;
    padding:18px;
    border-radius:22px;
    border:1px solid var(--line);
    background:#ffffffd4;
}
.recipe-lock-title,
.recipe-lock-line{
    display:block;
    border-radius:999px;
    background:linear-gradient(90deg,#f3e3da,#fff4ef,#f3e3da);
    background-size:200% 100%;
    animation:recipeShimmer 1.7s linear infinite;
}
.recipe-lock-title{height:20px; width:42%}
.recipe-lock-line{height:12px}
.recipe-lock-line--tall{height:16px}
.recipe-lock-card{
    position:relative;
    align-self:start;
    background:linear-gradient(135deg,#ffffff,#fff8f3 70%,#fff2ea 100%);
    border:1px solid rgba(255,107,87,.16);
    box-shadow:0 24px 64px rgba(23,33,43,.08);
}
.recipe-lock-form{max-width:440px}
.recipe-lock-form .btn + .btn{margin-top:8px}
.recipe-lock-shell{display:grid; gap:18px}

.order-kind-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 12px;
    border-radius:999px;
    font-size:.82rem;
    font-weight:800;
    background:#f5f8ff;
    color:#1267a1;
    border:1px solid #d9e8ff;
}
.order-kind-badge--subscription{
    background:#fff6ea;
    color:#b86a00;
    border-color:#f4dfbe;
}
.quick-superapp-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.superapp-tile{
    display:grid;
    gap:12px;
    padding:20px;
    border-radius:24px;
    background:linear-gradient(180deg,#fff,#fffaf7);
    border:1px solid rgba(255,107,87,.12);
}
.superapp-tile h3{margin:0}
.superapp-tile p{margin:0;color:var(--muted)}
.superapp-tile__icon{
    inline-size:52px;
    block-size:52px;
    display:grid;
    place-items:center;
    border-radius:18px;
    background:var(--surface-2);
    font-size:1.35rem;
}
.subscription-strip{
    padding:22px 24px;
    border-radius:28px;
    background:linear-gradient(135deg,#1a2430,#253140 58%,#314156 100%);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
}
.subscription-strip .muted{color:#d0d8e1}

@keyframes recipeShimmer{
    from{background-position:200% 0}
    to{background-position:-200% 0}
}

@media (max-width: 1040px){
    .plans-grid,
    .planner-grid,
    .quick-superapp-grid,
    .recipe-lock-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 860px){
    .mobile-bottom-nav{display:grid}
    .main-content{padding-bottom:110px}
}
@media (max-width: 700px){
    .plans-grid,
    .planner-grid,
    .quick-superapp-grid,
    .recipe-lock-preview-grid{grid-template-columns:1fr}
    .subscription-strip{padding:18px}
    .mobile-bottom-nav{inset:auto 10px 10px 10px; gap:6px; padding:8px}
    .mobile-bottom-nav a{padding:8px 4px}
    .user-chip{max-width:100%; justify-content:center}
}

@media print{
    .site-header,.site-footer,.toast-root,.btn,.mobile-menu-btn,.main-nav,.nav-actions{
        display:none !important;
    }
    body{
        background:#fff !important;
    }
    .site-shell,.main-content,.container,.section,.card,.content-block{
        margin:0 !important;
        padding:0 !important;
        box-shadow:none !important;
        background:#fff !important;
    }
}


/* --- Superapp polish patch --- */
:root{
    --page-max:1280px;
    --radius-xl:36px;
    --shadow-soft:0 18px 44px rgba(15,23,42,.08);
    --shadow-card:0 24px 70px rgba(15,23,42,.08);
    --line-strong:rgba(255,107,87,.18);
}
html{font-size:16px}
body.site-body{
    line-height:1.72;
    color:var(--text);
    background:
        radial-gradient(circle at top right, rgba(255,107,87,.16), transparent 26%),
        radial-gradient(circle at 8% 12%, rgba(255,177,107,.14), transparent 18%),
        linear-gradient(180deg, #fffaf8 0%, #fff7f3 38%, #fffdfc 100%);
}
.container{width:min(var(--page-max), calc(100% - 36px))}
.main-content{padding:34px 0 80px}
.site-header{
    margin:14px auto 0;
    width:min(calc(var(--page-max) + 40px), calc(100% - 22px));
    border-radius:30px;
    box-shadow:0 18px 48px rgba(15,23,42,.08);
    background:rgba(255,255,255,.88);
}
.glass{
    background:rgba(255,255,255,.84);
    backdrop-filter:blur(18px) saturate(140%);
    -webkit-backdrop-filter:blur(18px) saturate(140%);
}
.nav-wrap{min-height:86px; gap:16px}
.brand{min-width:0; flex:0 0 auto}
.brand-mark{
    inline-size:54px;
    block-size:54px;
    border-radius:20px;
    font-size:1rem;
}
.brand-copy strong{font-size:1.05rem}
.main-nav{align-items:center; justify-content:center; gap:8px}
.main-nav a{
    font-weight:700;
    padding:12px 15px;
    border-radius:16px;
    position:relative;
}
.main-nav a.active,
.main-nav a:hover{
    background:#fff4ef;
    color:var(--primary);
    box-shadow:inset 0 0 0 1px rgba(255,107,87,.14);
}
.nav-actions{gap:8px; justify-content:flex-end}
.nav-actions .btn,
.nav-actions .icon-pill{min-height:46px}
.icon-pill{padding:10px 15px; box-shadow:0 10px 24px rgba(15,23,42,.05)}
.hero{gap:24px; align-items:stretch}
.hero-panel,
.card,
.summary-card,
.plan-card,
.superapp-tile,
.feature-card-soft,
.subscription-strip,
.recipe-lock-card,
.recipe-detail-card,
.product-detail-card,
.auth-card,
.receipt-card,
.timeline-body,
.detail-box,
.planner-day{
    border-color:rgba(255,255,255,.92);
    box-shadow:var(--shadow-card);
}
.hero-panel{
    padding:40px;
    border-radius:var(--radius-xl);
    background:linear-gradient(135deg,#ffffff 0%, #fffaf7 52%, #fff1ea 100%);
}
.hero-panel::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(255,255,255,.08), transparent 35%);
    pointer-events:none;
}
.hero p{font-size:1.02rem; max-width:62ch}
.hero-stats{gap:12px}
.stat{
    min-width:145px;
    padding:16px 18px;
    border-radius:20px;
}
.card{border:1px solid rgba(255,255,255,.88)}
.card-pad,.content-block,.summary-card,.auth-pane,.auth-art{padding:28px}
.section{margin-top:38px}
.section-head{margin-bottom:20px}
.section-head h2{font-size:1.5rem}
.grid,.plans-grid,.planner-grid,.quick-superapp-grid,.stats-grid-compact,.meta-grid,.receipt-kpis,.detail-grid{gap:20px}
.feature-card-soft,
.superapp-tile,
.plan-card,
.planner-day,
.recipe-lock-preview-block,
.tech-item,
.kpi,
.detail-box{
    border-radius:24px;
}
.superapp-tile,
.feature-card-soft,
.plan-card .card-pad,
.planner-day{padding:22px}
.search-panel,.auth-form,.checkout-form,.pantry-form,.ingredient-selector-shell{gap:16px}
.field{gap:9px}
.field label{font-size:.92rem; color:#374151}
.field input,
.field select,
.field textarea{
    min-height:54px;
    padding:14px 16px;
    border-color:#ead8cf;
    background:#fff;
}
.field textarea{min-height:132px}
.field input::placeholder,
.field textarea::placeholder{color:#9aa3af}
.btn{
    min-height:50px;
    padding:13px 18px;
    border-radius:18px;
    font-weight:800;
}
.btn-primary{box-shadow:0 16px 34px rgba(255,107,87,.24)}
.btn-outline,.btn-soft{box-shadow:0 10px 22px rgba(15,23,42,.04)}
.alert{margin-bottom:20px; border-radius:20px; padding:15px 16px}
.table-wrap{border-radius:28px; box-shadow:var(--shadow-soft)}
.table th,.table td{padding:17px 15px}
.recipe-thumb-overlay,
.slide-media,
.recipe-hero-media,
.product-thumb-large,
.product-thumb,
.recipe-thumb{
    border-radius:28px 28px 0 0;
}
.recipe-card,
.product-card,
.feature-card,
.plan-card,
.superapp-tile,
.recipe-card-pro,
.product-card-pro{
    height:100%;
}
.recipe-card .card-body,
.recipe-card-pro .card-body,
.product-card .card-body,
.product-card-pro .card-body{
    display:flex;
    flex-direction:column;
    gap:12px;
    height:100%;
}
.card-title{align-items:flex-start; margin-bottom:6px}
.meta-line{gap:10px 14px; line-height:1.8}
.meta-line span{
    display:inline-flex;
    align-items:center;
    gap:6px;
}
.kpis{gap:14px}
.kpi,.tech-item{
    background:linear-gradient(180deg,#fffaf8 0%, #fff 100%);
}
.recipe-tech-grid{gap:14px}
.recipe-tips-box{border-radius:24px; padding:20px}
.step{padding:22px 0}
.step-index{
    inline-size:48px;
    block-size:48px;
    border-radius:16px;
}
.step-note{line-height:1.8}
.slide-media{
    min-height:440px;
    border-radius:32px;
}
.slide-media img,
.recipe-hero-media img,
.product-thumb-large img{transform:translateZ(0)}
.slide-overlay,
.thumb-overlay{
    padding:20px;
    background:linear-gradient(180deg, rgba(15,23,42,.10) 0%, rgba(15,23,42,.22) 26%, rgba(15,23,42,.78) 100%);
}
.overlay-lines span,
.overlay-meta span,
.thumb-overlay-top .badge{
    box-shadow:0 8px 20px rgba(15,23,42,.12);
}
.thumb-overlay-bottom h1,
.slide-copy h3{
    max-width:18ch;
    line-height:1.35;
}
.recipe-lock-shell{gap:20px}
.recipe-lock-card{padding:4px}
.auth-shell{padding:14px 0 22px}
.auth-card{
    width:min(1040px, 100%);
    min-height:620px;
    border-radius:32px;
}
.auth-art{
    border-radius:32px 0 0 32px;
    background:
        radial-gradient(circle at 100% 0, rgba(255,255,255,.18), transparent 32%),
        radial-gradient(circle at 0 100%, rgba(255,255,255,.10), transparent 26%),
        linear-gradient(135deg, var(--primary), var(--primary-2));
}
.auth-art h1{line-height:1.35; font-size:2.05rem}
.auth-pane{display:flex; flex-direction:column; justify-content:center}
.footer-grid{padding:42px 0 24px}
.footer-grid p,.footer-grid a,.footer-grid span{line-height:1.95}
.toast-root{inset:auto 18px 24px 18px}
.toast{border-radius:20px}
.mobile-bottom-nav{
    padding:10px;
    border-radius:26px;
    box-shadow:0 22px 48px rgba(15,23,42,.16);
    background:rgba(255,255,255,.94);
}
.mobile-bottom-nav a{
    min-height:58px;
    border-radius:18px;
}
.ingredient-selector-shell{
    padding:18px;
    border-radius:26px;
    background:linear-gradient(180deg,#fff 0%, #fff9f6 100%);
    border:1px solid rgba(255,107,87,.08);
    box-shadow:0 14px 36px rgba(15,23,42,.04);
}
.selected-ingredients{min-height:48px}
.autocomplete-box{
    max-height:250px;
    overflow:auto;
}
.subscription-strip{padding:24px 26px; border-radius:30px}
.user-chip{
    background:#fff7f2;
    border:1px solid rgba(255,107,87,.14);
}
.badge,.pill,.status-chip,.order-kind-badge,.order-status{white-space:nowrap}
@media (max-width: 1180px){
    .container{width:min(var(--page-max), calc(100% - 28px))}
    .nav-wrap{min-height:80px}
}
@media (max-width: 1040px){
    .site-header{width:min(100%, calc(100% - 18px))}
    .hero-panel{padding:30px}
    .auth-card{min-height:0}
}
@media (max-width: 860px){
    .site-header{margin-top:10px; border-radius:24px}
    .nav-wrap{padding:12px 0; min-height:72px}
    .main-nav{
        justify-content:flex-start;
        background:rgba(255,255,255,.78);
        border-top:1px solid rgba(234,216,207,.9);
        padding-top:10px;
    }
    .nav-actions{width:100%; justify-content:space-between}
    .nav-actions .btn{flex:1}
}
@media (max-width: 700px){
    body.site-body{font-size:15px}
    .container{width:min(100% - 18px, 100%)}
    .main-content{padding:22px 0 110px}
    .hero-panel,
    .card-pad,
    .content-block,
    .summary-card,
    .auth-pane,
    .auth-art{padding:20px}
    .hero-panel{border-radius:28px}
    .hero h1{font-size:1.82rem; line-height:1.32}
    .hero p{font-size:.97rem}
    .slide-media,
    .slide-media img,
    .recipe-hero-media,
    .recipe-hero-media img,
    .product-thumb-large,
    .product-thumb-large img{min-height:300px}
    .thumb-overlay,
    .slide-overlay{padding:14px}
    .thumb-overlay-bottom h1,
    .slide-copy h3{max-width:100%; font-size:1.14rem}
    .overlay-lines,
    .overlay-meta{gap:7px 10px}
    .overlay-lines span,
    .overlay-meta span{padding:6px 9px}
    .auth-card{border-radius:26px}
    .auth-art{border-radius:26px 26px 0 0}
    .ingredient-selector-shell{padding:14px; border-radius:22px}
    .mobile-bottom-nav{
        inset:auto 8px calc(8px + env(safe-area-inset-bottom)) 8px;
        padding:8px;
    }
}
