:root {
  color-scheme: light;
  --ink: #17181d;
  --muted: #6c717d;
  --line: #e7e8ec;
  --paper: #f5f5f7;
  --card: #fff;
  --purple: #6d4aff;
  --purple-dark: #4f31d2;
  --orange: #ff6f3d;
  --green: #18875f;
  --red: #d84b4b;
  --shadow: 0 18px 55px rgba(21, 23, 32, .09);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, select { cursor: pointer; }
.shell { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }
.announcement { min-height: 34px; padding: 7px 20px; display: flex; align-items: center; justify-content: center; gap: 12px; color: white; background: #16151b; font-size: 12px; }
.announcement span { color: #c9c6d1; }
.announcement strong { color: #b9a9ff; }
.announcement a { padding-left: 12px; border-left: 1px solid #49464f; }
.site-header { position: sticky; z-index: 40; top: 0; background: rgba(255,255,255,.94); border-bottom: 1px solid var(--line); backdrop-filter: blur(18px); }
.header-main { min-height: 72px; display: grid; grid-template-columns: auto minmax(300px, 1fr) auto; align-items: center; gap: 30px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 900; letter-spacing: -.03em; }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; color: white; background: var(--purple); border-radius: 12px; box-shadow: 0 8px 20px rgba(109,74,255,.26); }
.brand-name { font-size: 19px; }.brand-name span { color: var(--purple); }
.header-search { position: relative; height: 44px; padding-left: 15px; display: grid; grid-template-columns: 20px 1fr auto; align-items: center; gap: 9px; background: #f0f1f4; border: 1px solid transparent; border-radius: 13px; }
.header-search:focus-within { background: white; border-color: #b8a9ff; box-shadow: 0 0 0 3px rgba(109,74,255,.10); }
.header-search svg { width: 19px; fill: none; stroke: #787e89; stroke-width: 2; stroke-linecap: round; }
.header-search input { min-width: 0; height: 40px; border: 0; outline: 0; color: var(--ink); background: transparent; }
.header-search button { height: 36px; margin-right: 3px; padding: 0 18px; color: white; background: var(--ink); border: 0; border-radius: 10px; font-size: 13px; font-weight: 750; }
.search-suggest { position: absolute; z-index: 45; top: 50px; left: 0; right: 0; padding: 8px; background: white; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); }
.suggest-item { padding: 8px; display: grid; grid-template-columns: 46px 1fr auto; gap: 10px; align-items: center; border-radius: 10px; }
.suggest-item:hover { background: var(--paper); }.suggest-item img { width: 46px; height: 46px; object-fit: cover; border-radius: 9px; }.suggest-item span { display: grid; gap: 2px; font-size: 13px; }.suggest-item small { color: var(--muted); }.suggest-item strong { font-size: 13px; }
.header-actions { display: flex; align-items: center; gap: 8px; }
.action-link { position: relative; min-width: 58px; padding: 6px 8px; display: grid; justify-items: center; gap: 2px; color: #4d525c; border-radius: 10px; font-size: 11px; }
.action-link:hover { background: var(--paper); }.action-link svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cart-link b, .mobile-cart b { position: absolute; top: 0; right: 4px; min-width: 18px; height: 18px; padding: 0 5px; display: grid; place-items: center; color: white; background: var(--orange); border: 2px solid white; border-radius: 20px; font-size: 10px; }
.category-nav { min-height: 42px; display: flex; align-items: center; gap: 28px; color: #525762; font-size: 13px; font-weight: 650; overflow-x: auto; scrollbar-width: none; }
.category-nav::-webkit-scrollbar { display: none; }.category-nav a { flex: 0 0 auto; }.category-nav a:hover { color: var(--purple); }.category-nav .nav-sale { margin-left: auto; color: var(--orange); }
.mobile-bar { display: none; }
.flash-stack { position: fixed; z-index: 80; top: 130px; right: 22px; width: min(390px, calc(100% - 32px)); display: grid; gap: 10px; }
.flash { padding: 14px 14px 14px 17px; display: flex; justify-content: space-between; gap: 12px; color: #272933; background: white; border: 1px solid var(--line); border-left: 4px solid var(--purple); border-radius: 12px; box-shadow: var(--shadow); font-size: 14px; }
.flash-success { border-left-color: var(--green); }.flash-error { border-left-color: var(--red); }.flash button { padding: 0; color: var(--muted); background: transparent; border: 0; font-size: 20px; }
.button { min-height: 46px; padding: 0 21px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 13px; font-weight: 780; transition: .2s ease; }
.button:hover { transform: translateY(-1px); }.button-primary { color: white; background: var(--purple); box-shadow: 0 12px 28px rgba(109,74,255,.22); }.button-primary:hover { background: var(--purple-dark); }.button-ghost { background: white; border-color: var(--line); }.button-dark { color: white; background: var(--ink); }
.hero { min-height: 580px; position: relative; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; overflow: hidden; color: white; background: #16151b; border-radius: 0 0 34px 34px; }
.hero::before { content: ""; width: 600px; height: 600px; position: absolute; left: -280px; bottom: -390px; background: var(--purple); border-radius: 50%; filter: blur(80px); opacity: .38; }
.hero-copy { position: relative; z-index: 2; padding: 70px 0 70px 68px; }.hero-kicker, .overline { display: block; margin-bottom: 13px; color: #8c70ff; font-size: 11px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.hero-kicker { color: #c2b5ff; }.hero h1 { max-width: 670px; margin: 0; font-size: clamp(48px, 6vw, 78px); line-height: .96; letter-spacing: -.06em; }.hero-copy > p { max-width: 600px; margin: 26px 0 32px; color: #c8c5d0; font-size: 18px; line-height: 1.6; }.hero-actions { display: flex; gap: 12px; }.hero .button-ghost { color: white; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.18); }.hero-points { margin-top: 46px; display: flex; gap: 35px; }.hero-points span { display: grid; gap: 2px; color: #aaa6b2; font-size: 12px; }.hero-points b { color: white; font-size: 19px; }
.hero-products { height: 100%; position: relative; }.hero-glow { width: 440px; height: 440px; position: absolute; top: 75px; right: -40px; background: radial-gradient(circle, #7757ff 0, #382c7b 38%, transparent 70%); border-radius: 50%; opacity: .78; }.hero-phone { width: 510px; height: 510px; position: absolute; z-index: 2; top: 35px; right: 20px; object-fit: cover; border-radius: 40px; transform: rotate(-5deg); filter: drop-shadow(0 38px 42px rgba(0,0,0,.45)); }.floating-deal { position: absolute; z-index: 3; right: 42px; bottom: 48px; padding: 15px 18px; display: grid; gap: 3px; color: var(--ink); background: rgba(255,255,255,.92); border: 1px solid white; border-radius: 15px; backdrop-filter: blur(10px); box-shadow: var(--shadow); }.floating-deal span, .floating-deal small { color: var(--muted); font-size: 11px; }.floating-deal strong { font-size: 18px; }
.category-section, .products-section, .promo-grid, .service-strip { margin-top: 88px; }.section-head { margin-bottom: 28px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }.section-head h2, .simple-heading h1, .catalog-heading h1 { margin: 0; font-size: clamp(32px, 4vw, 48px); line-height: 1; letter-spacing: -.045em; }.section-head > a { color: var(--purple); font-size: 14px; font-weight: 750; }.category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }.category-card { min-height: 100px; padding: 18px; display: flex; align-items: center; gap: 14px; background: white; border: 1px solid var(--line); border-radius: 17px; transition: .2s ease; }.category-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); border-color: transparent; }.category-card > span { width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; color: var(--purple); background: #eeeaff; border-radius: 14px; font-size: 25px; }.category-card div { display: grid; gap: 5px; }.category-card strong { font-size: 14px; }.category-card small { color: var(--muted); font-size: 11px; line-height: 1.35; }
.product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }.product-card { min-width: 0; overflow: hidden; background: white; border: 1px solid var(--line); border-radius: 19px; transition: transform .2s, box-shadow .2s; }.product-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }.product-media { height: 290px; position: relative; display: block; overflow: hidden; background: #ececf0; }.product-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }.product-card:hover .product-media img { transform: scale(1.035); }.product-badge, .discount-badge { position: absolute; z-index: 2; top: 13px; left: 13px; padding: 6px 9px; color: white; background: var(--ink); border-radius: 8px; font-size: 10px; font-weight: 800; }.discount-badge { left: auto; right: 13px; background: var(--orange); }.product-body { padding: 18px; }.rating { color: #555a64; font-size: 12px; }.rating > span { color: #f5a623; }.rating small { margin-left: 6px; color: #9a9faa; }.product-title { min-height: 46px; margin-top: 9px; display: block; font-size: 18px; font-weight: 800; line-height: 1.25; letter-spacing: -.02em; }.product-title:hover { color: var(--purple); }.product-body > p { min-height: 42px; margin: 8px 0 12px; color: var(--muted); font-size: 12px; line-height: 1.45; }.swatches { height: 18px; display: flex; gap: 6px; }.swatches span { width: 14px; height: 14px; background: var(--swatch); border: 2px solid white; border-radius: 50%; box-shadow: 0 0 0 1px #d5d7dc; }.product-buy { min-height: 48px; margin-top: 14px; display: flex; align-items: end; justify-content: space-between; gap: 10px; }.price-block { display: grid; }.price-block strong { font-size: 20px; }.price-block del { color: #989da6; font-size: 12px; }.icon-button { width: 43px; height: 43px; display: grid; place-items: center; color: white; background: var(--purple); border: 0; border-radius: 12px; }.icon-button:hover { background: var(--purple-dark); }.icon-button svg { width: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }.sold-out { color: var(--muted); font-size: 12px; }
.promo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.promo-card { min-height: 330px; position: relative; padding: 42px; overflow: hidden; border-radius: 24px; }.promo-card > span { font-size: 11px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }.promo-card h2 { max-width: 370px; margin: 13px 0; font-size: 38px; line-height: 1; letter-spacing: -.045em; }.promo-card p { max-width: 360px; line-height: 1.5; }.promo-card > a { display: inline-block; margin-top: 16px; font-weight: 780; }.promo-card img { width: 270px; height: 270px; position: absolute; right: -20px; bottom: -30px; object-fit: cover; border-radius: 50%; transform: rotate(-10deg); box-shadow: 0 20px 40px rgba(0,0,0,.2); }.promo-purple { color: white; background: #5d42db; }.promo-purple > span { color: #d1c8ff; }.promo-orange { background: #ffb36c; }.promo-orange > span { color: #7d3a0d; }.sale-section { margin-bottom: 88px; }.service-strip { margin-bottom: 90px; padding: 28px 0; display: grid; grid-template-columns: repeat(4, 1fr); background: white; border: 1px solid var(--line); border-radius: 20px; }.service-strip > div { padding: 4px 26px; display: grid; grid-template-columns: 42px 1fr; align-items: center; column-gap: 11px; }.service-strip > div + div { border-left: 1px solid var(--line); }.service-strip > div > span { width: 42px; height: 42px; grid-row: 1 / 3; display: grid; place-items: center; color: var(--purple); background: #eeeaff; border-radius: 12px; }.service-strip strong { font-size: 13px; }.service-strip p { margin: 3px 0 0; color: var(--muted); font-size: 11px; }
.page-shell { min-height: 60vh; padding-top: 28px; padding-bottom: 90px; }.breadcrumbs { margin-bottom: 30px; display: flex; gap: 8px; color: #8a8f99; font-size: 12px; }.breadcrumbs a:hover { color: var(--purple); }.catalog-heading, .simple-heading { margin-bottom: 28px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }.catalog-heading p { margin: 12px 0 0; color: var(--muted); }.catalog-heading > strong, .simple-heading > span { color: var(--muted); font-size: 13px; }.category-chips { margin-bottom: 18px; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; }.category-chips a { flex: 0 0 auto; padding: 9px 13px; color: #555a63; background: white; border: 1px solid var(--line); border-radius: 20px; font-size: 12px; font-weight: 700; }.category-chips a.active, .category-chips a:hover { color: white; background: var(--ink); border-color: var(--ink); }.catalog-toolbar { margin-bottom: 24px; padding: 12px; display: flex; align-items: center; justify-content: space-between; gap: 15px; background: white; border: 1px solid var(--line); border-radius: 15px; }.catalog-filter { flex: 1; display: flex; align-items: center; gap: 12px; }.catalog-filter input[type="search"] { min-width: 180px; flex: 1; }.catalog-toolbar input, .catalog-toolbar select { height: 42px; padding: 0 13px; background: var(--paper); border: 1px solid var(--line); border-radius: 10px; outline: none; }.catalog-toolbar .button { min-height: 42px; }.toggle { display: flex; align-items: center; gap: 7px; white-space: nowrap; color: var(--muted); font-size: 12px; }.toggle input { position: absolute; opacity: 0; }.toggle > span { width: 38px; height: 22px; position: relative; background: #d9dbe0; border-radius: 20px; }.toggle > span::after { content: ""; width: 16px; height: 16px; position: absolute; top: 3px; left: 3px; background: white; border-radius: 50%; transition: .2s; }.toggle input:checked + span { background: var(--purple); }.toggle input:checked + span::after { transform: translateX(16px); }.empty-state { min-height: 370px; display: grid; place-items: center; align-content: center; text-align: center; background: white; border: 1px solid var(--line); border-radius: 22px; }.empty-state > span { color: #c2c5cb; font-size: 58px; }.empty-state h2 { margin: 12px 0 5px; }.empty-state p { margin: 0 0 22px; color: var(--muted); }
.product-detail { display: grid; grid-template-columns: 1.06fr .94fr; gap: 48px; }.product-gallery { min-width: 0; }.gallery-main { height: 610px; position: relative; overflow: hidden; background: white; border: 1px solid var(--line); border-radius: 24px; }.gallery-main img { width: 100%; height: 100%; object-fit: cover; }.gallery-thumbs { margin-top: 12px; display: flex; gap: 10px; }.gallery-thumbs button { width: 78px; height: 78px; padding: 0; overflow: hidden; background: white; border: 1px solid var(--line); border-radius: 12px; }.gallery-thumbs button.active { border: 2px solid var(--purple); }.gallery-thumbs img { width: 100%; height: 100%; object-fit: cover; }.product-panel { padding: 12px 0; }.product-brand { color: var(--muted); font-size: 11px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }.product-panel h1 { margin: 12px 0; font-size: clamp(38px, 5vw, 60px); line-height: 1; letter-spacing: -.055em; }.product-rating { display: flex; gap: 14px; font-size: 12px; }.product-rating > span:first-child { color: #f5a623; font-weight: 800; }.product-rating a { color: var(--purple); }.in-stock { color: var(--green); }.product-lead { margin: 22px 0; color: var(--muted); font-size: 16px; line-height: 1.55; }.detail-price { margin-bottom: 27px; display: flex; align-items: baseline; gap: 12px; }.detail-price strong { font-size: 34px; }.detail-price del { color: #9a9ea7; }.detail-price > span { padding: 5px 8px; color: #a3331f; background: #ffe2d8; border-radius: 7px; font-size: 11px; font-weight: 800; }.variant-picker { margin: 0 0 24px; padding: 0; border: 0; }.variant-picker legend { margin-bottom: 11px; font-size: 13px; font-weight: 800; }.variant-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }.variant-option input { position: absolute; opacity: 0; }.variant-option > span { min-height: 65px; padding: 10px 12px; display: grid; grid-template-columns: 18px 1fr; align-content: center; column-gap: 9px; background: white; border: 1px solid var(--line); border-radius: 12px; cursor: pointer; }.variant-option.selected > span, .variant-option input:checked + span { border-color: var(--purple); box-shadow: 0 0 0 2px rgba(109,74,255,.1); }.variant-option i { width: 16px; height: 16px; grid-row: 1 / 3; align-self: center; background: var(--swatch); border: 2px solid white; border-radius: 50%; box-shadow: 0 0 0 1px #d0d2d7; }.variant-option b { font-size: 12px; }.variant-option small { color: var(--muted); font-size: 10px; }.buy-row { display: grid; grid-template-columns: 116px 1fr; gap: 10px; }.quantity { height: 50px; display: grid; grid-template-columns: 34px 1fr 34px; align-items: center; background: white; border: 1px solid var(--line); border-radius: 13px; }.quantity button { height: 100%; color: var(--muted); background: none; border: 0; font-size: 20px; }.quantity input { width: 100%; text-align: center; border: 0; outline: 0; -moz-appearance: textfield; }.quantity input::-webkit-inner-spin-button { display: none; }.add-cart-button { height: 50px; }.purchase-benefits { margin-top: 22px; display: grid; gap: 10px; }.purchase-benefits > div { padding: 11px 0; display: flex; align-items: center; gap: 11px; border-bottom: 1px solid var(--line); }.purchase-benefits > div > span { width: 34px; height: 34px; display: grid; place-items: center; color: var(--purple); background: #eeeaff; border-radius: 10px; }.purchase-benefits p { margin: 0; display: grid; gap: 2px; }.purchase-benefits strong { font-size: 12px; }.purchase-benefits small { color: var(--muted); font-size: 10px; }.product-info { margin-top: 65px; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.product-info article { padding: 38px; background: white; border: 1px solid var(--line); border-radius: 20px; }.product-info h2 { margin: 0 0 18px; font-size: 28px; letter-spacing: -.035em; }.product-info p { color: var(--muted); line-height: 1.7; }.product-info dl { margin: 0; }.product-info dl div { padding: 12px 0; display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line); }.product-info dt { color: var(--muted); }.product-info dd { margin: 0; text-align: right; font-weight: 700; }.related { margin-top: 75px; }
.cart-layout, .order-layout { display: grid; grid-template-columns: 1fr 370px; gap: 24px; align-items: start; }.cart-list { overflow: hidden; background: white; border: 1px solid var(--line); border-radius: 19px; }.cart-line { padding: 20px; display: grid; grid-template-columns: 120px 1fr auto 140px; align-items: center; gap: 18px; }.cart-line + .cart-line { border-top: 1px solid var(--line); }.cart-line > a img { width: 120px; height: 120px; object-fit: cover; border-radius: 14px; }.cart-line-info { min-width: 0; }.cart-line-info small { color: #9a9ea8; }.cart-line-info h2 { margin: 4px 0; font-size: 17px; }.cart-line-info p { margin: 0 0 8px; color: var(--muted); font-size: 12px; }.cart-line-info .in-stock { font-size: 11px; }.cart-quantity { height: 38px; display: flex; align-items: center; background: var(--paper); border: 1px solid var(--line); border-radius: 10px; }.cart-quantity button { width: 34px; height: 100%; background: none; border: 0; }.cart-quantity button:disabled { opacity: .35; }.cart-quantity span { min-width: 28px; text-align: center; font-size: 12px; }.cart-line-price { display: grid; justify-items: end; gap: 4px; }.cart-line-price small { color: var(--muted); font-size: 10px; }.text-button { padding: 0; color: var(--red); background: none; border: 0; font-size: 11px; }.order-summary { position: sticky; top: 142px; padding: 25px; display: grid; gap: 13px; background: white; border: 1px solid var(--line); border-radius: 18px; }.order-summary h2 { margin: 0 0 8px; }.order-summary > div:not(.mini-line):not(.summary-divider) { display: flex; justify-content: space-between; gap: 15px; font-size: 13px; }.order-summary .discount-row { color: var(--green); }.order-summary .summary-total { padding-top: 15px; border-top: 1px solid var(--line); align-items: baseline; }.summary-total strong { font-size: 25px; }.order-summary > small, .legal-note { color: var(--muted); font-size: 10px; line-height: 1.5; }.promo-form { margin-top: 8px; display: grid; grid-template-columns: 1fr auto; }.promo-form input { min-width: 0; height: 42px; padding: 0 12px; border: 1px solid var(--line); border-radius: 10px 0 0 10px; outline: none; }.promo-form button { padding: 0 12px; color: white; background: var(--ink); border: 0; border-radius: 0 10px 10px 0; font-size: 11px; }.promo-success { margin: 0; color: var(--green); font-size: 11px; }.form-error { margin: 0; color: var(--red); font-size: 11px; }
.checkout-layout { display: grid; grid-template-columns: 1fr 380px; gap: 24px; align-items: start; }.checkout-main { display: grid; gap: 16px; }.checkout-card { position: relative; padding: 28px; background: white; border: 1px solid var(--line); border-radius: 18px; }.checkout-card h2 { margin: 0 0 22px 42px; }.step-number { width: 29px; height: 29px; position: absolute; top: 27px; left: 28px; display: grid; place-items: center; color: white; background: var(--purple); border-radius: 9px; font-size: 12px; font-weight: 800; }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }.form-grid label, .comment-field, .auth-form label { display: grid; gap: 7px; }.form-grid label > span, .comment-field > span, .auth-form label > span { font-size: 11px; font-weight: 750; }.form-grid .full, .comment-field { grid-column: 1 / -1; }.form-grid input, .auth-form input, .comment-field textarea { width: 100%; padding: 0 13px; color: var(--ink); background: var(--paper); border: 1px solid var(--line); border-radius: 11px; outline: none; }.form-grid input, .auth-form input { height: 45px; }.comment-field textarea { padding-top: 12px; resize: vertical; }.form-grid input:focus, .auth-form input:focus, textarea:focus { background: white; border-color: #aa98ff; box-shadow: 0 0 0 3px rgba(109,74,255,.08); }.choice-grid { margin-top: 18px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }.choice-card input { position: absolute; opacity: 0; }.choice-card > span { min-height: 69px; padding: 13px; display: grid; gap: 4px; background: var(--paper); border: 1px solid var(--line); border-radius: 11px; cursor: pointer; }.choice-card input:checked + span { background: #f2efff; border-color: var(--purple); }.choice-card b { font-size: 12px; }.choice-card small { color: var(--muted); font-size: 10px; line-height: 1.35; }.comment-field { margin-top: 18px; }.mini-line { padding: 8px 0; display: grid; grid-template-columns: 50px 1fr auto; gap: 9px; align-items: center; }.mini-line img { width: 50px; height: 50px; object-fit: cover; border-radius: 9px; }.mini-line p { min-width: 0; margin: 0; display: grid; gap: 2px; }.mini-line b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }.mini-line small { color: var(--muted); font-size: 9px; }.mini-line > strong { font-size: 11px; }.summary-divider { border-top: 1px solid var(--line); }
.auth-shell { min-height: 690px; padding: 55px 0 85px; display: grid; grid-template-columns: 1fr 460px; gap: 70px; align-items: center; }.auth-copy h1 { max-width: 700px; margin: 0; font-size: clamp(45px, 6vw, 72px); line-height: .98; letter-spacing: -.055em; }.auth-copy > p { max-width: 590px; color: var(--muted); font-size: 17px; line-height: 1.6; }.auth-copy ul { padding: 0; display: grid; gap: 10px; list-style: none; }.auth-copy li::before { content: "✓"; margin-right: 10px; color: var(--green); font-weight: 900; }.auth-card { padding: 34px; background: white; border: 1px solid var(--line); border-radius: 21px; box-shadow: var(--shadow); }.auth-card h2 { margin: 0; font-size: 29px; }.auth-card > p { color: var(--muted); font-size: 13px; }.auth-card > p a { color: var(--purple); font-weight: 750; }.auth-form { margin-top: 24px; display: grid; gap: 15px; }.auth-form small { color: var(--muted); font-size: 9px; }.auth-divider { margin: 24px 0; display: flex; align-items: center; color: var(--muted); font-size: 11px; }.auth-divider::before, .auth-divider::after { content: ""; height: 1px; flex: 1; background: var(--line); }.auth-divider span { padding: 0 10px; }.telegram-widget { min-height: 40px; display: flex; justify-content: center; }.integration-note { padding: 11px; color: var(--muted); background: var(--paper); border-radius: 10px; font-size: 10px !important; line-height: 1.45; }.auth-visual { width: 230px; height: 230px; margin-top: 28px; overflow: hidden; border-radius: 32px; transform: rotate(-5deg); box-shadow: var(--shadow); }.auth-visual img { width: 100%; height: 100%; object-fit: cover; }
.account-head { margin: 12px 0 35px; display: flex; align-items: end; justify-content: space-between; }.account-head h1 { margin: 0; font-size: 46px; letter-spacing: -.045em; }.account-head p { color: var(--muted); }.verified { color: var(--green); }.unverified { color: var(--orange); }.account-grid { display: grid; grid-template-columns: 230px 1fr; gap: 20px; }.account-menu, .orders-panel { padding: 20px; background: white; border: 1px solid var(--line); border-radius: 17px; }.account-menu { align-self: start; display: grid; gap: 4px; }.account-menu a { padding: 11px; color: var(--muted); border-radius: 9px; font-size: 13px; }.account-menu a.active, .account-menu a:hover { color: var(--ink); background: var(--paper); font-weight: 750; }.orders-panel h2 { margin: 0 0 15px; }.order-row { padding: 15px 5px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); }.order-row > div { display: grid; gap: 5px; }.order-row > div:last-child { justify-items: end; }.order-row span { color: var(--muted); font-size: 10px; }.status { display: inline-flex; width: fit-content; padding: 5px 8px; color: #6d5222 !important; background: #fff0ca; border-radius: 7px; font-size: 10px !important; font-weight: 800; }.status-paid, .status-processing { color: #3e3691 !important; background: #e9e5ff; }.status-shipped, .status-completed { color: #176849 !important; background: #daf5e9; }.status-cancelled { color: #a13b3b !important; background: #ffe0e0; }.empty-inline { padding: 45px; text-align: center; background: var(--paper); border-radius: 14px; }.empty-inline p { color: var(--muted); }
.order-success { margin: 12px 0 30px; padding: 30px; display: flex; gap: 18px; align-items: center; color: white; background: linear-gradient(135deg, #176e51, #29a979); border-radius: 20px; }.order-success > span { width: 56px; height: 56px; display: grid; place-items: center; background: rgba(255,255,255,.15); border-radius: 50%; font-size: 26px; }.order-success p, .order-success h1 { margin: 0; }.order-success h1 { font-size: 33px; }.order-success small { color: #d2f5e7; }.order-details { padding: 28px; background: white; border: 1px solid var(--line); border-radius: 18px; }.order-status-line { margin-bottom: 30px; display: flex; align-items: center; gap: 12px; }.order-status-line p { color: var(--muted); }.order-details h2 { margin: 26px 0 12px; }.order-item { padding: 13px 0; display: grid; grid-template-columns: 1fr auto 130px; gap: 15px; border-bottom: 1px solid var(--line); }.order-item > div { display: grid; gap: 3px; }.order-item span { color: var(--muted); font-size: 11px; }.order-item > strong { text-align: right; }.order-contact { margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.order-contact div { padding: 12px; background: var(--paper); border-radius: 10px; }.order-contact dt { color: var(--muted); font-size: 10px; }.order-contact dd { margin: 4px 0 0; font-size: 13px; }.info-page { max-width: 850px; padding: 50px; background: white; border: 1px solid var(--line); border-radius: 22px; }.info-page h1 { margin: 0; font-size: 54px; letter-spacing: -.05em; }.info-page p { margin: 25px 0; color: var(--muted); font-size: 17px; line-height: 1.75; }
.site-footer { padding: 65px 0 25px; color: #d5d2dc; background: #17161c; }.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 50px; }.footer-brand { color: white; }.footer-grid > div { display: flex; flex-direction: column; align-items: start; gap: 10px; }.footer-grid p, .footer-grid span, .footer-grid a { color: #9f9ca7; font-size: 12px; line-height: 1.6; }.footer-grid a:hover { color: white; }.footer-grid h3 { margin: 0 0 8px; color: white; font-size: 13px; }.footer-bottom { margin-top: 50px; padding-top: 20px; display: flex; justify-content: space-between; color: #77747f; border-top: 1px solid #36343c; font-size: 10px; }

@media (max-width: 1060px) {
  .header-main { gap: 15px; }.header-actions .action-link > span { display: none; }.category-grid, .product-grid { grid-template-columns: repeat(3, 1fr); }.hero-copy { padding-left: 45px; }.hero-phone { right: -70px; }.product-detail { gap: 28px; }.gallery-main { height: 530px; }.cart-line { grid-template-columns: 100px 1fr auto; }.cart-line > a img { width: 100px; height: 100px; }.cart-line-price { grid-column: 2 / 4; display: flex; justify-content: space-between; }.checkout-layout { grid-template-columns: 1fr 330px; }
}

@media (max-width: 820px) {
  body { padding-bottom: 68px; }.shell { width: min(100% - 26px, 1240px); }.announcement { justify-content: flex-start; overflow: hidden; white-space: nowrap; }.header-main { min-height: 64px; grid-template-columns: auto 1fr; }.brand-name { display: none; }.header-search { height: 40px; }.header-search button { display: none; }.header-actions { display: none; }.category-nav { min-height: 38px; gap: 20px; }.category-nav .nav-sale { margin-left: 0; }.mobile-bar { height: 64px; position: fixed; z-index: 70; left: 0; right: 0; bottom: 0; padding: 7px 12px 5px; display: grid; grid-template-columns: repeat(4, 1fr); background: rgba(255,255,255,.96); border-top: 1px solid var(--line); backdrop-filter: blur(14px); }.mobile-bar a { position: relative; display: grid; justify-items: center; align-content: center; gap: 2px; color: #666b75; font-size: 9px; }.mobile-bar span { color: var(--ink); font-size: 20px; }.mobile-cart b { top: 0; right: calc(50% - 23px); }.hero { min-height: 680px; grid-template-columns: 1fr; align-items: start; }.hero-copy { padding: 52px 28px 0; }.hero h1 { font-size: 55px; }.hero-copy > p { font-size: 16px; }.hero-products { min-height: 290px; }.hero-phone { width: 315px; height: 315px; top: 0; right: 7%; border-radius: 27px; }.hero-glow { width: 300px; height: 300px; top: 0; right: 0; }.floating-deal { right: 5%; bottom: 30px; }.category-grid, .product-grid { grid-template-columns: repeat(2, 1fr); }.promo-grid { grid-template-columns: 1fr; }.service-strip { grid-template-columns: 1fr 1fr; }.service-strip > div:nth-child(3) { border-left: 0; }.service-strip > div { padding: 18px; border-bottom: 1px solid var(--line); }.catalog-toolbar, .catalog-filter { align-items: stretch; flex-direction: column; }.catalog-toolbar form:last-child select { width: 100%; }.product-detail { grid-template-columns: 1fr; }.gallery-main { height: min(78vw, 590px); }.product-panel { padding-top: 10px; }.product-info { grid-template-columns: 1fr; }.cart-layout, .order-layout, .checkout-layout { grid-template-columns: 1fr; }.order-summary { position: static; }.checkout-summary { order: -1; }.auth-shell { grid-template-columns: 1fr; gap: 35px; }.auth-copy { text-align: center; }.auth-copy > p { margin-inline: auto; }.auth-copy ul, .auth-visual { display: none; }.account-grid { grid-template-columns: 1fr; }.account-menu { display: flex; overflow-x: auto; }.footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 540px) {
  .announcement a { margin-left: auto; }.hero { min-height: 650px; border-radius: 0 0 23px 23px; }.hero-copy { padding: 40px 20px 0; }.hero h1 { font-size: 44px; }.hero-actions { align-items: stretch; flex-direction: column; }.hero-points { margin-top: 30px; gap: 22px; }.hero-phone { right: 0; }.floating-deal { right: 10px; bottom: 18px; }.section-head { align-items: start; flex-direction: column; }.section-head h2 { font-size: 34px; }.category-section, .products-section, .promo-grid, .service-strip { margin-top: 64px; }.category-grid { grid-template-columns: 1fr 1fr; }.category-card { min-height: 118px; align-items: start; flex-direction: column; }.product-grid { grid-template-columns: 1fr; }.product-media { height: 350px; }.promo-card { min-height: 390px; padding: 30px; }.promo-card h2 { font-size: 33px; }.promo-card img { width: 235px; height: 235px; }.service-strip { grid-template-columns: 1fr; }.service-strip > div + div { border-left: 0; }.catalog-heading, .simple-heading { align-items: start; flex-direction: column; }.variant-grid { grid-template-columns: 1fr; }.product-panel h1 { font-size: 42px; }.detail-price { flex-wrap: wrap; }.buy-row { grid-template-columns: 105px 1fr; }.product-info article { padding: 25px; }.cart-line { grid-template-columns: 82px 1fr; gap: 12px; }.cart-line > a img { width: 82px; height: 82px; }.cart-quantity { grid-column: 1 / 2; }.cart-line-price { grid-column: 2 / 3; }.choice-grid, .form-grid { grid-template-columns: 1fr; }.form-grid .full { grid-column: auto; }.checkout-card { padding: 24px 18px; }.step-number { left: 18px; }.checkout-card h2 { margin-left: 38px; }.auth-card { padding: 24px 18px; }.auth-copy h1 { font-size: 43px; }.account-head { align-items: start; flex-direction: column; gap: 15px; }.account-head h1 { font-size: 38px; }.order-success { padding: 22px; }.order-success h1 { font-size: 24px; }.order-item { grid-template-columns: 1fr auto; }.order-item > strong { grid-column: 2; }.order-contact { grid-template-columns: 1fr; }.info-page { padding: 30px 22px; }.info-page h1 { font-size: 42px; }.footer-grid { grid-template-columns: 1fr; }.footer-bottom { gap: 12px; flex-direction: column; }
}

