    :root {
      --ink:#0f4173; --ink-soft:#4c6680; --muted:#5b748d; --paper:#f6f7f9; --white:#fff;
      --line:#dce5ed; --blue:#0f4173; --blue-deep:#0b345d; --blue-light:#135393; --blue-pale:#eaf3fc;
      --green:#17814a; --green-pale:#eaf8ef; --amber:#a65a08; --amber-pale:#fff2df;
      --radius:16px; --mono:ui-monospace,SFMono-Regular,Menlo,monospace; --sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    }
    * { box-sizing:border-box } body { margin:0; font-family:var(--sans); color:var(--ink); background:var(--paper); line-height:1.4; font-variant-numeric:tabular-nums; }
    button,input { font:inherit } button { cursor:pointer; border:0 } a { color:inherit; text-decoration:none } .mono { font-family:var(--mono) }
    .site-head { height:72px; background:rgba(255,255,255,.94); backdrop-filter:blur(10px); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:20; }
    .head-inner { max-width:1440px; height:100%; margin:auto; padding:0 28px; display:flex; align-items:center; gap:20px; }
    .brand { display:flex; align-items:center; gap:9px; color:var(--blue); white-space:nowrap; }
    .brand-logo { display:block; width:160px; height:44px; object-fit:cover; object-position:center; }
    .brand small { font:600 9px var(--mono); color:var(--muted); letter-spacing:.16em; text-transform:uppercase; }
    .head-spacer { flex:1 }.manager { color:var(--ink-soft); font-size:13px; display:flex; gap:9px; align-items:center; }.manager b { color:var(--ink) }
    .cart-link { display:inline-flex; min-height:44px; align-items:center; justify-content:center; gap:9px; padding:9px 15px; border:1px solid var(--blue); border-radius:8px; color:#fff; background:var(--blue); font-size:13.5px; font-weight:750; white-space:nowrap; transition:background-color .15s,border-color .15s,transform .15s; }
    .cart-link:hover { border-color:var(--blue-light); background:var(--blue-light); transform:translateY(-1px) }
    .cart-link svg { width:19px; height:19px; flex:none }
    .shell { max-width:1440px; margin:auto; padding:26px 28px 72px; display:grid; grid-template-columns:234px minmax(0,1fr); gap:24px; align-items:start; }
    .side { position:sticky; top:98px; padding:10px; border:1px solid var(--line); border-radius:8px; background:var(--white) }.side nav { display:grid; gap:3px }
    .nav-btn { width:100%; display:flex; align-items:center; gap:11px; padding:12px; border-radius:10px; color:var(--ink-soft); background:transparent; text-align:left; font-size:14px; font-weight:600; }.nav-btn svg { width:18px; height:18px; flex:none }.nav-btn:hover { background:var(--paper); color:var(--ink) }.nav-btn.active { color:var(--blue); background:var(--blue-pale) }.nav-badge { margin-left:auto; color:var(--muted); padding:2px 7px; border-radius:6px; background:var(--paper); font:600 10px var(--mono) }.active .nav-badge { color:#fff; background:var(--blue) }
    .side-rule { height:1px; margin:10px 5px; background:var(--line) }.tier { width:calc(100% - 10px); margin:0 5px 4px; padding:15px; color:#fff; background:var(--blue); border-radius:8px; text-align:left }.tier:hover { background:var(--blue-light) }.eyebrow { font:600 10px var(--mono); letter-spacing:.13em; text-transform:uppercase; color:var(--muted) }.tier .eyebrow { color:#cfe4f8 }.tier b { display:block; margin:6px 0 5px; font-size:17px; letter-spacing:0 }.tier p { margin:0; color:#e1effb; font-size:11.5px; line-height:1.45 }.progress { height:5px; overflow:hidden; margin-top:12px; border-radius:8px; background:rgba(255,255,255,.15) }.progress i { display:block; height:100%; width:66%; background:#fff; border-radius:inherit }
    .main { min-width:0 }.screen { display:none }.screen.active { display:block }.page-head { display:flex; gap:18px; align-items:end; justify-content:space-between; margin-bottom:20px }.page-head h1 { margin:0; font-size:28px; letter-spacing:0 }.page-head p { margin:5px 0 0; color:var(--muted); font-size:13.5px }.buttons { display:flex; gap:9px; flex-wrap:wrap }.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 16px; border-radius:6px; font-weight:700; font-size:13.5px }.btn svg { width:16px; height:16px }.btn-primary { color:#fff; background:var(--blue) }.btn-primary:hover { background:var(--blue-light) }.btn-quiet { color:var(--ink); border:1px solid var(--line); background:#fff }.btn-quiet:hover { border-color:var(--blue); color:var(--blue) }
    .hero { display:grid; grid-template-columns:1.28fr .72fr; overflow:hidden; border-radius:8px; color:#fff; background:linear-gradient(135deg,var(--blue),var(--blue-light)); box-shadow:0 12px 28px rgba(15,65,115,.16) }.hero-main { padding:27px 30px; position:relative; isolation:isolate }.hero-main:before { content:''; position:absolute; inset:0; z-index:-1; opacity:.25; background-image:radial-gradient(rgba(255,255,255,.2) 1.2px,transparent 1.35px); background-size:18px 18px }.hero-main:after { content:''; position:absolute; right:-62px; top:-92px; z-index:-1; width:260px; height:260px; border-radius:50%; border:1px solid rgba(255,255,255,.22); box-shadow:0 0 0 28px rgba(255,255,255,.06),0 0 0 58px rgba(255,255,255,.04) }.hero .eyebrow { color:#d7eafb }.hero h2 { position:relative; z-index:1; margin:7px 0 7px; font-size:23px; letter-spacing:0 }.hero p { position:relative; z-index:1; margin:0; max-width:50ch; color:#e6f2fc; font-size:14px }.hero-actions { position:relative; z-index:1; display:flex; gap:9px; margin-top:20px; flex-wrap:wrap }.btn-white { background:#fff; color:var(--blue) }.btn-clear { color:#fff; border:1px solid rgba(255,255,255,.48); background:rgba(255,255,255,.08) }.hero-side { display:flex; flex-direction:column; justify-content:center; gap:8px; padding:25px; background:rgba(5,44,84,.18); border-left:1px solid rgba(255,255,255,.18) }.hero-side span { color:#d7eafb; font:600 10px var(--mono); letter-spacing:.1em; text-transform:uppercase }.hero-side b { font:700 28px/1 var(--mono); letter-spacing:0 }.hero-side small { color:#e6f2fc; font-size:12.5px }.dot { display:inline-block; width:7px; height:7px; margin-right:6px; border-radius:50%; background:#82e5aa }
    .section-head { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin:26px 0 12px }.section-head h2 { margin:0; font-size:17px; letter-spacing:0 }.section-head a,.text-link { color:var(--blue); font-size:13px; font-weight:700; background:transparent; padding:0 }.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:13px }.card { background:#fff; border:1px solid var(--line); border-radius:8px; padding:17px }.metric span { display:block; color:var(--muted); font-size:12.5px }.metric b { display:block; margin-top:6px; font-size:23px; letter-spacing:0 }.metric b small { color:var(--green); font-size:12px; margin-left:5px }.conditions-summary { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; padding:0; background:transparent; text-align:left }.conditions-summary .card { min-height:132px; transition:border-color .15s,box-shadow .15s }.conditions-summary .card:hover { border-color:var(--blue-light); box-shadow:0 5px 15px rgba(15,65,115,.09) }.conditions-arrow { margin-top:16px; color:var(--blue); font-size:13px; font-weight:700 }.order-card { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:13px; padding:15px 17px }.status-icon { display:grid; place-items:center; width:38px; height:38px; color:var(--green); background:var(--green-pale); border-radius:8px }.status-icon svg { width:20px }.order-card b { display:block; font-size:14px }.order-card p { margin:3px 0 0; color:var(--muted); font-size:12.5px }.status { padding:5px 9px; border-radius:6px; color:var(--green); background:var(--green-pale); font-size:11.5px; font-weight:700; white-space:nowrap }.status.ship { color:var(--blue); background:var(--blue-pale) }
    .freq-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px }.product { position:relative; padding:16px; border:1px solid var(--line); border-radius:var(--radius); background:#fff }.product .art { color:var(--muted); font:600 10px var(--mono); letter-spacing:.06em }.product h3 { min-height:42px; margin:8px 0 8px; font-size:14px; line-height:1.35 }.stock { display:inline-flex; align-items:center; gap:5px; color:var(--green); background:var(--green-pale); padding:4px 8px; border-radius:6px; font:600 11px var(--mono) }.prices { display:flex; align-items:baseline; gap:8px; margin-top:14px }.old { color:var(--muted); text-decoration:line-through; font:500 11px var(--mono) }.price { font:700 16px var(--mono) }.discount { color:var(--blue); font:700 10px var(--mono) }.icon-btn { position:absolute; right:13px; bottom:13px; display:grid; place-items:center; width:34px; height:34px; color:var(--blue); border-radius:9px; background:var(--blue-pale) }.icon-btn:hover { color:#fff; background:var(--blue) }.icon-btn svg { width:17px }
    .level-progress { margin-top:12px }.level-progress .progress { margin:7px 0 0; background:var(--line) }.level-progress .progress i { background:var(--blue) }.level-progress small { color:var(--muted); font-size:11.5px }
    .review-request { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:18px; padding:18px 0; border-bottom:1px solid var(--line) }.review-request[hidden] { display:none }.review-request h2 { margin:0 0 4px; font-size:17px }.review-request p { margin:0; max-width:68ch; color:var(--muted); font-size:13px }.review-request .btn { flex:none; min-height:44px }.btn:focus-visible,.nav-btn:focus-visible,.order-row:focus-visible { outline:3px solid #8fc4f1; outline-offset:3px }
    .filters { display:flex; gap:9px; padding:11px; margin-bottom:13px; border:1px solid var(--line); border-radius:13px; background:#fff }.search { flex:1; display:flex; align-items:center; gap:8px; padding:0 10px; border:1px solid var(--line); border-radius:9px }.search svg { width:16px; color:var(--muted) }.search input { width:100%; padding:9px 0; outline:0; border:0 }.select { padding:9px 11px; color:var(--ink-soft); border:1px solid var(--line); border-radius:9px; background:#fff }.table-wrap { overflow:auto; border:1px solid var(--line); border-radius:var(--radius); background:#fff }.table { width:100%; min-width:780px; border-collapse:collapse; font-size:13px }.table th { padding:12px 14px; color:var(--muted); background:#f8faff; border-bottom:1px solid var(--line); text-align:left; font:600 10px var(--mono); letter-spacing:.1em; text-transform:uppercase; white-space:nowrap }.table td { padding:13px 14px; border-bottom:1px solid var(--line); vertical-align:middle }.table tr:last-child td { border:0 }.product-name b { display:block; font-size:13px }.product-name span { color:var(--muted); font-size:11.5px }.quantity { display:flex; align-items:center; width:max-content; overflow:hidden; border:1px solid var(--line); border-radius:8px }.quantity button { width:28px; height:29px; color:var(--ink-soft); background:#fff }.quantity input { width:38px; height:29px; outline:0; border:0; border-left:1px solid var(--line); border-right:1px solid var(--line); text-align:center; font:600 12px var(--mono) }.add-small { padding:8px 10px; color:#fff; background:var(--blue); border-radius:8px; font-size:12px; font-weight:700 }
    .orders-list { display:grid; gap:11px }.order-row { display:grid; width:100%; grid-template-columns:95px 1fr auto auto; align-items:center; gap:15px; padding:15px 17px; color:var(--ink); border:1px solid var(--line); border-radius:8px; background:#fff; text-align:left; transition:border-color .15s,box-shadow .15s }.order-row:hover { border-color:var(--blue); box-shadow:0 5px 16px rgba(15,65,115,.08) }.order-num { font:700 13px var(--mono) }.order-row b { display:block; font-size:14px }.order-row p { margin:3px 0 0; color:var(--muted); font-size:12.5px }.order-sum { text-align:right; font:700 14px var(--mono) }.link { display:block; margin-top:4px; color:var(--blue); font:700 12px var(--sans) }
    .profile-grid,.conditions-grid,.loyalty-grid,.partner-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:14px }.info-row { display:flex; align-items:center; justify-content:space-between; padding:12px 0; border-bottom:1px solid var(--line); font-size:13px }.info-row:last-child { border:0 }.info-row span { color:var(--muted) }.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px }.form-field { display:grid; gap:6px }.form-field.full { grid-column:1/-1 }.form-field label { color:var(--ink-soft); font-size:12px; font-weight:700 }.form-field input,.form-field textarea { width:100%; padding:11px 12px; color:var(--ink); outline:0; border:1px solid var(--line); border-radius:6px; background:#fff; line-height:1.4 }.form-field textarea { min-height:86px; resize:vertical }.form-field input:focus,.form-field textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-pale) }.address-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px }.address-card { display:flex; min-height:230px; flex-direction:column }.address-card h2 { margin:0 0 18px; font-size:21px }.conditions-card h2,.loyalty-card h2,.partner-card h2 { margin:0 0 5px; font-size:17px }.conditions-card p,.loyalty-card p,.partner-card p { min-height:33px; margin:0 0 13px; color:var(--muted); font-size:13px }.pickup-current { min-height:72px; margin-bottom:16px; padding:12px; border:1px solid var(--line); border-radius:8px; color:var(--ink-soft); background:#f8faff; font-size:13px; line-height:1.45 }.pickup-current.empty { color:var(--muted) }.address-card .btn { width:100%; margin-top:auto }.loyalty-card.primary { color:#fff; border:0; background:var(--blue) }.loyalty-card.primary p,.loyalty-card.primary .eyebrow { color:#e5f1fb }.loyalty-tiers { display:grid; gap:7px; margin-top:14px }.loyalty-tier { display:flex; justify-content:space-between; gap:12px; padding:9px 0; border-bottom:1px solid var(--line); color:var(--ink-soft); font-size:13px }.loyalty-tier:last-child { border:0 }.loyalty-tier b { color:var(--blue); font-family:var(--mono); white-space:nowrap }.loyalty-note { grid-column:1/-1; padding:18px }.loyalty-note b { color:var(--blue) }.partner-grid { grid-template-columns:repeat(2,minmax(0,1fr)) }.partner-card { min-height:250px; display:flex; flex-direction:column; align-items:flex-start }.partner-card .btn { margin-top:auto }.partner-card.service { color:#fff; border:0; background:var(--blue) }.partner-card.service p,.partner-card.service .eyebrow { color:#e5f1fb }.application-form { margin-top:14px }.application-form[hidden] { display:none }.telegram-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:7px 0 5px }.telegram-heading h2 { margin:0; font-size:20px }.telegram-connected-badge { flex:none; padding:6px 11px; border-radius:6px; color:#fff; background:var(--green); font-size:12px; font-weight:800 }.form-actions { display:flex; align-items:center; gap:11px; margin-top:15px }.form-note { display:none; color:var(--green); font-size:12px; font-weight:700 }.form-note.show { display:block }.form-note.error { color:#a03838 }.logout-btn { margin-top:6px; color:var(--ink-soft)!important }.logout-btn:hover { color:#a03838!important }.logout-btn:disabled { cursor:wait; opacity:.65 }.logout-note { display:none; margin:0 12px 8px; color:#a03838; font-size:12px; line-height:1.45 }.logout-note.show { display:block }.modal-backdrop { display:none; position:fixed; z-index:80; inset:0; padding:18px; place-items:center; background:rgba(10,18,37,.56); backdrop-filter:blur(3px) }.modal-backdrop.open { display:grid }.order-modal { width:min(860px,100%); max-height:calc(100vh - 36px); overflow:auto; padding:24px; border-radius:12px; background:#fff; box-shadow:0 24px 70px rgba(5,35,66,.3) }.order-modal-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:18px }.order-modal-head h2 { margin:2px 0 3px; font-size:25px }.order-modal-head p { margin:0; color:var(--muted); font-size:13px }.modal-close { width:38px; height:38px; flex:none; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:#fff; font-size:24px }.order-state-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; margin-bottom:18px }.order-state { padding:14px; border:1px solid var(--line); border-radius:8px; background:#f8faff }.order-state span { display:block; color:var(--muted); font-size:11.5px }.order-state b { display:block; margin-top:4px; font-size:14px }.order-state small { display:block; margin-top:5px; color:var(--ink-soft); font-size:12px }.order-lines { width:100%; margin:14px 0; border-collapse:collapse; font-size:13px }.order-lines th { padding:9px 8px; color:var(--muted); border-bottom:1px solid var(--line); text-align:left; font-size:10px; text-transform:uppercase }.order-lines td { padding:11px 8px; border-bottom:1px solid var(--line); vertical-align:top }.order-lines .money { text-align:right; white-space:nowrap }.order-total { display:grid; gap:8px; margin:16px 0; padding:15px; border-radius:8px; background:#f5f8fb }.order-total div { display:flex; justify-content:space-between; gap:16px; font-size:13px }.order-total .grand { padding-top:8px; border-top:1px solid var(--line); font-size:16px; font-weight:800 }.order-actions { display:flex; flex-wrap:wrap; gap:9px; align-items:center }.btn-danger { color:#a03838; border:1px solid #e4bcbc; background:#fff }.btn-danger:hover { background:#fff2f2 }.cancel-note { flex-basis:100%; margin:2px 0 0; color:var(--muted); font-size:12px }.logout-confirm-modal { width:min(430px,100%); padding:24px; border-radius:12px; background:#fff; box-shadow:0 24px 70px rgba(5,35,66,.3) }.logout-confirm-modal h2 { margin:0 0 8px; font-size:23px; letter-spacing:-.01em }.logout-confirm-modal p { margin:0; color:var(--muted); font-size:14px; line-height:1.55 }.logout-confirm-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:22px }.logout-confirm-actions .btn { min-height:44px }
    .recipient-manager { margin-top:14px }.recipient-manager-head { display:flex; align-items:center; justify-content:space-between; gap:18px }.recipient-manager-head h2 { margin:0; font-size:20px }.recipient-manager-head p { margin:4px 0 0; color:var(--muted); font-size:13px }.recipient-list { display:grid; gap:9px; margin-top:15px }.recipient-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; align-items:center; padding:14px; border:1px solid var(--line); border-radius:8px; background:#fff }.recipient-row.selected { border-color:#a9c8e4; background:#f8faff }.recipient-row-main { min-width:0 }.recipient-row-title { display:flex; flex-wrap:wrap; align-items:center; gap:7px }.recipient-row-title b { overflow:hidden; text-overflow:ellipsis; font-size:14px }.recipient-badge { display:inline-flex; align-items:center; min-height:24px; padding:3px 8px; border-radius:6px; color:var(--ink-soft); background:var(--paper); font-size:11px; font-weight:700 }.recipient-badge.selected { color:var(--blue); background:var(--blue-pale) }.recipient-row p { margin:4px 0 0; color:var(--ink-soft); font-size:13px }.recipient-row small { display:block; overflow:hidden; margin-top:4px; color:var(--muted); font-size:12px; text-overflow:ellipsis; white-space:nowrap }.recipient-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px }.recipient-actions .btn { min-height:38px; padding:8px 12px; font-size:12px }.recipient-empty { padding:16px; border:1px dashed var(--line); border-radius:8px; color:var(--muted); background:#f8faff; font-size:13px }.recipient-editor { margin-top:15px; padding-top:16px; border-top:1px solid var(--line) }.recipient-editor[hidden] { display:none }.recipient-editor-title { margin:0 0 13px; font-size:16px }.recipient-type { min-width:0; margin:0; padding:0; border:0 }.recipient-type legend { margin-bottom:7px; color:var(--ink-soft); font-size:12px; font-weight:700 }.recipient-type-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px }.recipient-type label { display:flex; min-height:44px; align-items:center; gap:9px; padding:9px 11px; border:1px solid var(--line); border-radius:6px; color:var(--ink-soft); background:#fff; font-size:13px; font-weight:700; cursor:pointer }.recipient-type label:has(input:checked) { color:var(--blue); border-color:var(--blue); background:var(--blue-pale) }.recipient-type input { width:16px; height:16px; flex:none; accent-color:var(--blue) }.address-owner { display:flex; align-items:center; gap:7px; margin:-6px 0 15px; padding:10px 12px; border:1px solid var(--line); border-radius:8px; color:var(--ink-soft); background:#fff; font-size:13px }.address-owner b { color:var(--ink) }
    .pickup-map-modal { width:min(1180px,100%); height:min(760px,calc(100vh - 36px)); overflow:hidden; padding:0; border-radius:12px; background:#fff; box-shadow:0 24px 70px rgba(5,35,66,.34) }.pickup-map-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 20px; border-bottom:1px solid var(--line) }.pickup-map-head h2 { margin:0; font-size:21px }.pickup-map-toolbar { display:flex; gap:8px; padding:12px 20px; border-bottom:1px solid var(--line) }.pickup-map-toolbar input { min-width:0; flex:1; padding:10px 12px; outline:0; border:1px solid var(--line); border-radius:6px }.pickup-map-toolbar input:focus { border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-pale) }.pickup-map-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; height:calc(100% - 126px) }.pickup-map-canvas { min-width:0; height:100%; background:#e9eef3 }.pickup-points { overflow:auto; padding:10px; border-left:1px solid var(--line); background:#f8faff }.pickup-point { width:100%; margin-bottom:8px; padding:12px; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:#fff; text-align:left }.pickup-point:hover,.pickup-point.active { border-color:var(--blue); box-shadow:0 4px 12px rgba(15,65,115,.08) }.pickup-point b { display:block; font-size:13px }.pickup-point span { display:block; margin-top:4px; color:var(--muted); font-size:12px }.pickup-empty { padding:28px 14px; color:var(--muted); text-align:center; font-size:13px }.pickup-popup { min-width:210px }.pickup-popup b { display:block; color:var(--ink); font-size:13px }.pickup-popup span { display:block; margin:5px 0 10px; color:var(--ink-soft); font-size:12px }.pickup-popup button { width:100%; padding:8px 10px; border-radius:6px; color:#fff; background:var(--blue); font-weight:700 }.leaflet-control-attribution { font-size:9px!important } body.pickup-map-open { overflow:hidden }
    .return-contact-modal { position:relative; width:min(440px,100%); padding:28px; border-radius:14px; background:#fff; box-shadow:0 24px 70px rgba(5,35,66,.32); text-align:center }.return-contact-modal .modal-close { position:absolute; top:14px; right:14px }.return-contact-icon { display:grid; place-items:center; width:52px; height:52px; margin:0 auto 15px; border-radius:14px; color:#fff; background:var(--blue); font-size:24px }.return-contact-modal h2 { margin:6px 38px 9px; font-size:23px; line-height:1.2 }.return-contact-modal > p { margin:0 auto 18px; max-width:35ch; color:var(--ink-soft); font-size:14px; line-height:1.55 }.return-phone { display:block; padding:15px; border:1px solid var(--line); border-radius:10px; color:var(--blue); background:#f8faff; font:800 21px var(--mono) }.return-hours { display:block; margin:8px 0 20px; color:var(--muted); font-size:12px }.return-contact-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px }.return-contact-actions .btn { min-height:46px }
    .mobile-nav { display:none } [data-demo] { display:none!important }
    .auth-gate { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:20px; background:rgba(246,247,249,.96); backdrop-filter:blur(8px) }.auth-card { width:min(420px,100%); padding:30px; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 20px 50px rgba(15,65,115,.12) }.auth-card h1 { margin:12px 0 8px; font-size:26px; letter-spacing:0 }.auth-card p { margin:0 0 20px; color:var(--ink-soft); font-size:14px }.auth-mark { display:grid; place-items:center; width:42px; height:42px; border-radius:6px; color:#fff; background:var(--blue); font-weight:900 }.auth-loader { display:grid; justify-items:center; gap:13px; min-height:96px; padding-top:15px; color:var(--ink-soft); text-align:center; font-size:14px }.auth-loader[hidden] { display:none }.loader-ring { width:34px; height:34px; border:3px solid var(--blue-pale); border-top-color:var(--blue); border-radius:50%; animation:spin .75s linear infinite } @keyframes spin { to { transform:rotate(360deg) } }.auth-phone-field { margin-top:14px }.auth-phone-field label span { color:var(--muted); font-weight:600 }.auth-phone-field small { color:var(--muted); font-size:11.5px; line-height:1.4 }.remember { display:flex; align-items:center; gap:9px; margin-top:14px; color:var(--ink-soft); font-size:13px; cursor:pointer }.remember input { width:16px; height:16px; accent-color:var(--blue) }.auth-note { margin-top:14px!important; color:var(--muted)!important; font-size:12px!important }.auth-gate[hidden] { display:none }
    @media (max-width:1040px) { .manager { display:none }.shell { grid-template-columns:1fr; padding:16px 16px 90px }.side { position:static; overflow:auto }.side nav { display:flex; min-width:max-content }.nav-btn { width:auto; white-space:nowrap }.side-rule,.tier { display:none }.cards,.freq-grid { grid-template-columns:repeat(2,1fr) }.hero { grid-template-columns:1fr }.hero-side { border-left:0; border-top:1px solid rgba(255,255,255,.14); flex-direction:row; align-items:center; justify-content:flex-start }.profile-grid,.conditions-grid,.loyalty-grid,.partner-grid { grid-template-columns:1fr }.address-grid { grid-template-columns:1fr } }
    @media (max-width:640px) { body { background:#fff }.site-head { height:58px }.head-inner { padding:0 16px; gap:12px }.brand-logo { width:132px; height:36px }.brand small { display:none }.cart-link { min-height:40px; padding:8px 11px; gap:7px; font-size:12.5px }.cart-link svg { width:18px; height:18px }.shell { display:block; width:100%; max-width:680px; margin-inline:auto; padding:16px 16px 90px }.side { display:none }.page-head { align-items:flex-start; margin-bottom:16px }.page-head h1 { font-size:24px }.page-head p { font-size:12.5px }.page-head .buttons { display:none }.hero { border-radius:8px }.hero-main { padding:20px }.hero h2 { font-size:20px }.hero p { font-size:13px }.hero-side { padding:14px 20px; display:block }.hero-side small { display:block; margin-top:3px }.hero-actions .btn { flex:1; padding:10px 9px; font-size:12px }.review-request { display:grid; gap:13px; padding:17px 2px }.review-request .btn { width:100% }.cards,.freq-grid,.conditions-summary,.partner-grid { grid-template-columns:1fr; gap:9px }.cards { grid-template-columns:repeat(2,1fr) }.card { padding:14px }.metric b { font-size:19px }.section-head { margin-top:22px }.freq-grid .product:nth-child(3) { display:none }.filters { padding:0; border:0; display:block }.search { padding:0 10px; height:42px }.select { width:100%; margin-top:8px }.table-wrap { display:none }.catalog-mobile { display:grid!important; gap:10px }.catalog-mobile .product { min-height:142px }.order-row { grid-template-columns:1fr auto; gap:5px 10px }.order-row .order-num { grid-column:1 }.order-row p { grid-column:1 }.order-row .status { grid-column:2; grid-row:1 }.order-sum { grid-column:2; grid-row:2; align-self:end }.link { grid-column:1; grid-row:3 }.recipient-manager-head { align-items:flex-start }.recipient-manager-head .btn { padding-inline:11px }.recipient-row { grid-template-columns:1fr; gap:11px }.recipient-actions { justify-content:flex-start }.recipient-actions .btn { flex:1 }.recipient-type-options { grid-template-columns:1fr }.recipient-editor .form-grid { grid-template-columns:1fr }.recipient-editor .form-field.full { grid-column:auto }.modal-backdrop { padding:12px; place-items:end center }.order-modal { width:100%; max-height:calc(100dvh - 24px); padding:20px 16px max(20px,env(safe-area-inset-bottom)); border-radius:14px }.order-modal-head h2 { font-size:22px }.order-state-grid { grid-template-columns:1fr; gap:8px }.order-lines { font-size:12px }.order-lines th:nth-child(3),.order-lines td:nth-child(3) { display:none }.order-lines th,.order-lines td { padding-inline:5px }.order-actions { display:grid; grid-template-columns:1fr }.order-actions .btn { width:100%; min-height:46px }.cancel-note { margin-top:2px }.mobile-nav { position:fixed; display:grid; grid-template-columns:repeat(5,1fr); gap:2px; left:0; right:0; bottom:0; z-index:30; padding:8px 8px max(8px,env(safe-area-inset-bottom)); border-top:1px solid var(--line); background:rgba(255,255,255,.96); backdrop-filter:blur(10px) }.mobile-nav button { display:grid; place-items:center; gap:3px; padding:5px 2px; color:var(--muted); background:transparent; font:600 10px var(--sans) }.mobile-nav svg { width:19px; height:19px }.mobile-nav button.active { color:var(--blue) }.mobile-nav .mobile-logout { color:#a03838 }.mobile-nav .mobile-logout:disabled { cursor:wait; opacity:.55 }.auth-card { padding:24px 20px }.notice { margin-top:14px; font-size:12px } }
    @media (max-width:640px) { .return-contact-modal { padding:26px 18px max(20px,env(safe-area-inset-bottom)); border-radius:16px 16px 0 0 }.return-contact-modal h2 { margin-inline:34px; font-size:21px }.return-phone { font-size:18px }.return-contact-actions { grid-template-columns:1fr }.logout-confirm-modal { padding:24px 18px max(20px,env(safe-area-inset-bottom)); border-radius:16px 16px 0 0 }.logout-confirm-modal h2 { font-size:21px }.logout-confirm-actions { display:grid; grid-template-columns:1fr }.logout-confirm-actions .btn { width:100% } }
    @media (min-width:641px) { .catalog-mobile { display:none } }
    @media (max-width:760px) { .pickup-map-modal { width:100%; height:100%; max-height:none; border-radius:0 }.modal-backdrop:has(.pickup-map-modal) { padding:0 }.pickup-map-head { padding:12px 14px }.pickup-map-toolbar { padding:10px 14px }.pickup-map-layout { grid-template-columns:1fr; grid-template-rows:minmax(300px,58vh) minmax(150px,1fr); height:calc(100% - 116px) }.pickup-points { border-top:1px solid var(--line); border-left:0 }.pickup-map-toolbar .btn { padding-inline:12px } }
    :focus-visible { outline:3px solid #84b9ec; outline-offset:2px }
    ::selection { color:#fff; background:var(--blue) }
    .visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important }
    .btn { min-height:44px; padding-block:10px }
    .modal-close { width:44px; height:44px }
    .mobile-nav button { min-height:44px; font-size:11px }
    .pickup-popup button { min-height:44px }
    .brand small,.nav-badge,.eyebrow,.hero-side span,.table th,.order-lines th { font-size:11px }
    .auth-card { border:0 }
    @media (prefers-reduced-motion:reduce) {
      *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important }
    }
    .partner-grid.partner-only { grid-template-columns:1fr }
    .partner-card[hidden] { display:none }
    .partner-card .btn:disabled { cursor:default; opacity:.72 }
.delivery-benefit-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,1fr) minmax(360px,.9fr);gap:24px;align-items:end}.delivery-benefit-card p{margin:5px 0 0;color:var(--muted);font-size:13px}.delivery-benefit-card form{display:grid;grid-template-columns:minmax(210px,1fr) auto;gap:9px;align-items:end}.delivery-benefit-card .form-note{grid-column:1/-1}.delivery-benefit-card .form-field span{color:var(--ink-soft);font-size:12px;font-weight:700}
@media(max-width:640px){.delivery-benefit-card,.delivery-benefit-card form{grid-template-columns:1fr}.delivery-benefit-card .btn{width:100%}}
    .application-state { display:inline-flex; align-items:center; min-height:28px; margin:1px 0 14px; padding:5px 9px; border-radius:6px; color:var(--green); background:var(--green-pale); font-size:12px; font-weight:800 }
    .partner-card.service .application-state { color:#fff; background:rgba(255,255,255,.16) }
    .application-state[hidden] { display:none }
