:root{color:#1f1530;--bg: #f7f5fb;--surface: rgba(255, 255, 255, .84);--surface-strong: rgba(255, 255, 255, .96);--border: rgba(76, 51, 120, .08);--muted: #83769a;--text: #221833;--accent: #6c4cf5;--accent-strong: #5738de;--accent-soft: rgba(108, 76, 245, .12);--rose-soft: rgba(217, 131, 161, .12);--shadow: 0 8px 20px rgba(58, 32, 93, .055);--shadow-strong: 0 12px 26px rgba(93, 63, 172, .18);font-family:Inter,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(108,76,245,.11),transparent 24%),radial-gradient(circle at top right,rgba(217,131,161,.12),transparent 28%),linear-gradient(180deg,#fbfafe,#f6f3fb)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top left,rgba(108,76,245,.11),transparent 24%),radial-gradient(circle at top right,rgba(217,131,161,.12),transparent 28%),linear-gradient(180deg,#fbfafe,#f6f3fb)}button,input{font:inherit}h1,h2,h3,p{margin:0}button{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease}button:active{transform:scale(.98)}input::placeholder{color:#9a90ad}.app-shell.boutique{width:min(100%,430px);min-height:100vh;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) 14px 110px}.boot-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;align-content:center;gap:14px;background:radial-gradient(circle at 50% 32%,rgba(108,76,245,.14),transparent 28%),linear-gradient(180deg,#fbfafe,#f6f3fb);animation:boot-fade .22s ease both}.boot-mark{display:grid;width:72px;height:72px;place-items:center;border-radius:24px;background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:#fff;box-shadow:0 14px 30px #5d3fac2e;animation:boot-pulse 1.35s ease-in-out infinite}.boot-screen span{color:var(--text);font-weight:900;letter-spacing:.04em;text-transform:uppercase}.boot-loader{position:relative;width:92px;height:4px;border-radius:999px;background:#6c4cf521;overflow:hidden}.boot-loader:after{content:"";position:absolute;inset:0 auto 0 0;width:36px;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#ff7a9f);animation:loader-run 1.05s ease-in-out infinite}.topbar.boutique{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.topbar-title{min-width:0}.eyebrow{display:block;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.topbar.boutique h1{margin-top:3px;font-size:29px;line-height:1.02;font-weight:900;color:var(--text)}.top-actions{display:flex;gap:8px}.catalog-back{display:inline-flex;align-items:center;gap:6px;min-height:32px;margin-bottom:8px;border:0;border-radius:999px;padding:0 12px 0 10px;background:var(--accent-soft);color:var(--accent-strong);font-size:13px;font-weight:800}.icon-button.boutique{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--border);border-radius:15px;background:#ffffffb8;color:#5e4a7a;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.icon-button.boutique:hover,.mini-action:hover,.mini-icon:hover{transform:translateY(-1px)}.icon-button.boutique.active-boutique{background:linear-gradient(180deg,#6c4cf529,#6c4cf51f);color:var(--accent-strong);box-shadow:0 8px 18px #5d3fac1f}.hero-copy span,.section-kicker,.sheet-heading.boutique span{color:#8f80aa;font-size:12px;font-weight:800}.hero-copy h2{margin-top:6px;max-width:270px;font-size:24px;line-height:1.05;color:var(--text)}.hero-copy p{margin-top:8px;max-width:250px;color:#736687;font-size:13px;line-height:1.45}.top-function-rail{display:flex;gap:10px;margin-top:16px;overflow:visible}.function-card{flex:1 1 0;min-width:0;min-height:110px;border:1px solid var(--border);border-radius:20px;padding:15px 14px;box-shadow:0 6px 16px #3a205d0d;cursor:pointer}.points-card{background:linear-gradient(180deg,#ffffffeb,#f5efffeb)}.referral-card{background:radial-gradient(circle at 84% 70%,rgba(255,255,255,.2),transparent 32%),linear-gradient(160deg,#2f82ff,#205be4);color:#fff}.meta-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:800}.arrow-icon{transform:rotate(180deg)}.function-card strong{display:block;margin-top:12px;font-size:28px;line-height:1}.function-card p{margin-top:9px;color:inherit;opacity:.82;font-size:12px;line-height:1.42}.horizontal-rail{display:flex;gap:10px;margin-top:10px;overflow-x:auto;padding:4px 3px 12px;scrollbar-width:none}.horizontal-rail::-webkit-scrollbar{display:none}.draggable-rail{cursor:grab;scroll-behavior:smooth;touch-action:pan-y;-webkit-user-select:none;user-select:none}.draggable-rail:active{cursor:grabbing}.draggable-rail>*{-webkit-user-select:none;user-select:none}.rail-progress{position:relative;width:68px;height:4px;margin:0 auto;border-radius:999px;background:#ddd6eaf2;overflow:hidden}.rail-progress:after{content:"";position:absolute;inset:0 auto 0 0;width:28px;border-radius:inherit;background:linear-gradient(90deg,#2f82ff,var(--accent));animation:rail-glide 2.4s ease-in-out infinite}.feature-card{position:relative;flex:0 0 74%;min-height:86px;border:1px solid rgba(108,76,245,.08);border-radius:16px;padding:13px 14px;text-align:left;overflow:hidden;color:#fff;box-shadow:0 5px 13px #3a205d0e;isolation:isolate}.feature-card:hover{box-shadow:0 8px 18px #3a205d14}.feature-card span,.feature-card strong{position:relative;z-index:1;display:block}.feature-card span{font-size:14px;font-weight:900}.feature-card strong{max-width:210px;margin-top:6px;font-size:14px;line-height:1.25}.feature-card svg{position:absolute;right:16px;top:16px}.feature-card:after{content:"";position:absolute;right:-20px;bottom:-28px;width:120px;height:120px;border-radius:999px;background:#ffffff2e;z-index:0}.accent-blue{background:linear-gradient(160deg,#2f82ff,#205be4)}.accent-pink{background:linear-gradient(160deg,#ff7a9f,#d64272)}.accent-soft{background:linear-gradient(160deg,#f4f1fa,#ebe6f4);color:var(--text)}.search-row.boutique{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:12px;border:1px solid var(--border);border-radius:16px;padding:0 14px;background:#ffffffc7;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.search-row.boutique input{width:100%;border:0;outline:0;background:transparent;color:var(--text)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:18px}.compact-head h2{margin-top:4px;font-size:24px;line-height:1.04;color:var(--text)}.result-badge{min-width:38px;height:38px;display:grid;place-items:center;border-radius:14px;background:#fffc;color:var(--accent-strong);font-weight:800;box-shadow:var(--shadow)}.category-strip.boutique,.subcategory-strip{display:flex;gap:8px;margin-top:12px;overflow-x:auto;scrollbar-width:none}.category-strip.boutique::-webkit-scrollbar,.subcategory-strip::-webkit-scrollbar{display:none}.soft-chip,.sub-chip{min-height:36px;flex:0 0 auto;border:1px solid transparent;border-radius:999px;padding:0 14px;background:#ffffffb8;color:#5c4d72;font-size:13px;font-weight:700;box-shadow:0 3px 9px #3a205d09}.soft-chip.active,.sub-chip.active{background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:#fff;box-shadow:0 6px 14px #5d3fac24}.sub-chip{background:#ffffff8f}.product-grid.boutique{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.product-card.boutique{min-width:0;border:1px solid var(--border);border-radius:24px;padding:10px;background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;animation:card-in .36s ease both;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.product-card.boutique:hover{transform:translateY(-2px);border-color:#6c4cf524;box-shadow:0 10px 24px #3a205d14}.product-media.boutique{position:relative;aspect-ratio:.9 / 1.08;border-radius:18px;overflow:hidden}.product-media.boutique:after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(180deg,transparent,rgba(35,22,53,.12));pointer-events:none}.product-tag{position:absolute;top:10px;left:10px;z-index:1;min-height:27px;display:inline-flex;align-items:center;border-radius:999px;padding:0 10px;background:#ffffffdb;color:var(--accent-strong);font-size:11px;font-weight:800}.favorite-button.boutique{position:absolute;top:8px;right:8px;z-index:1;display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:999px;background:#ffffffd6;color:#6f5b87}.favorite-button.boutique:active{animation:pop-tap .24s ease}.product-info.compact{margin-top:10px}.product-info.compact h3{min-height:36px;font-size:14px;line-height:1.24;color:var(--text)}.product-info.compact p{margin-top:4px;color:#5f4c75;font-size:14px;font-weight:800}.add-button.boutique{width:100%;min-height:38px;margin-top:10px;border:0;border-radius:15px;background:linear-gradient(180deg,#6c4cf5f5,#5738defa);color:#fff;font-weight:800;box-shadow:0 8px 18px #5d3fac29}.quantity-stepper.boutique{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;min-height:38px;margin-top:10px;border:1px solid rgba(108,76,245,.13);border-radius:15px;background:#ffffffc2;box-shadow:0 6px 14px #5d3fac1a;animation:stepper-in .19s ease both;overflow:hidden}.quantity-stepper.boutique button{display:grid;width:100%;height:38px;place-items:center;border:0;background:transparent;color:var(--accent-strong)}.quantity-stepper.boutique button:disabled{color:#bdb4ca;opacity:.65}.quantity-stepper.boutique strong{color:var(--text);font-size:15px;text-align:center}.add-button.boutique:disabled{background:#ddd7e9;color:#8e84a4;box-shadow:none}.cart-plaque{position:fixed;right:14px;bottom:max(14px,env(safe-area-inset-bottom));left:14px;z-index:5;display:flex;align-items:center;justify-content:center;gap:10px;width:min(calc(100% - 28px),402px);min-height:54px;margin:0 auto;border:0;border-radius:20px;background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:#fff;font-weight:900;box-shadow:var(--shadow-strong)}.cart-plaque.animated{animation:plaque-float 2.8s ease-in-out infinite}.checkout-sheet.boutique{position:fixed;right:14px;bottom:max(14px,env(safe-area-inset-bottom));left:14px;z-index:8;display:grid;gap:12px;width:min(calc(100% - 28px),402px);max-height:calc(100vh - 28px);margin:0 auto;padding:10px 14px 14px;border:1px solid var(--border);border-radius:24px;background:#fdfbfffa;box-shadow:0 18px 44px #2e1c4e29;overflow-y:auto;animation:sheet-up .22s ease}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:7;display:grid;align-items:end;background:#0c0912ad;animation:fade-up .16s ease both}.info-sheet{width:min(100%,430px);max-height:calc(100vh - 70px);margin:0 auto;border-radius:24px 24px 0 0;padding:10px 16px 18px;background:#fff;overflow-y:auto;animation:sheet-up .22s ease}.info-sheet h2{margin-top:14px;font-size:21px;color:#141018}.info-sheet p{margin-top:10px;color:#4f465d;line-height:1.45}.banner-sheet-image{min-height:220px;margin:12px -16px 14px;border-radius:22px 22px 0 0;background:linear-gradient(150deg,#f6f1fff5,#eee7f8eb),radial-gradient(circle at 72% 28%,rgba(108,76,245,.16),transparent 32%)}.banner-subtitle{font-weight:800;color:var(--text)!important}.product-detail-sheet h2,.order-detail-sheet h2{margin-top:10px}.product-detail-visual{position:relative;min-height:250px;margin:12px -16px 14px;border-radius:22px 22px 0 0;overflow:hidden}.product-detail-visual:after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(180deg,transparent,rgba(35,22,53,.14))}.detail-favorite{position:absolute!important;top:14px!important;right:14px!important;z-index:1}.product-detail-tag{display:inline-flex;min-height:26px;align-items:center;border-radius:999px;padding:0 10px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:900}.product-detail-meta,.order-total-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.product-detail-meta strong,.order-total-row strong{color:var(--text);font-size:20px}.product-detail-meta span,.order-total-row span{color:var(--muted);font-size:13px;font-weight:800}.detail-stepper{margin-top:16px!important}.order-detail-list{display:grid;gap:10px;margin-top:16px}.order-detail-list div,.order-summary-box{border:1px solid var(--border);border-radius:18px;padding:12px;background:#fbf9ff}.order-detail-list span,.order-summary-box span{color:var(--muted);font-size:12px;font-weight:800}.order-detail-list strong,.order-summary-box strong{display:block;margin-top:4px;color:var(--text)}.order-summary-box{margin-top:12px}.benefit-list{display:grid;gap:16px;margin:22px 0}.benefit-list div{display:grid;grid-template-columns:24px minmax(0,1fr);column-gap:10px}.benefit-list svg{color:#2f82ff}.benefit-list span{color:#686074;font-size:15px}.benefit-list strong{grid-column:2;margin-top:3px;color:#111}.birthday-visual{display:grid;min-height:210px;place-items:center;margin:0 -16px;background:radial-gradient(circle at 50% 74%,rgba(255,255,255,.5),transparent 22%),linear-gradient(180deg,#3183ff,#2571f4);color:#fff}.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.news-card{min-width:0}.news-image{aspect-ratio:1.35 / 1;border-radius:10px;background:radial-gradient(circle at 28% 22%,rgba(47,130,255,.22),transparent 30%),linear-gradient(145deg,#f4f1f8,#e9e4f0)}.news-card span{display:block;margin-top:7px;color:#756b81;font-size:12px}.news-card strong{display:block;margin-top:3px;color:#111;font-size:14px;line-height:1.25}.news-card p{margin-top:4px;color:#5e5569;font-size:12px}.feedback-topic-list{display:grid;margin-top:18px}.feedback-topic-list button{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:4px 10px;align-items:center;border:0;border-bottom:1px solid #eee8f3;padding:14px 0;background:transparent;color:#111;text-align:left}.feedback-topic-list button.selected{color:#2f82ff}.feedback-topic-list span{font-weight:800}.feedback-topic-list small{color:#696174;font-size:13px}.feedback-topic-list svg{grid-row:1 / span 2;grid-column:2}.info-sheet textarea{width:100%;min-height:92px;margin:14px 0 10px;border:1px solid #eee8f3;border-radius:14px;padding:12px;resize:vertical;font:inherit;outline:0}.sheet-handle{justify-self:center;width:42px;height:4px;border-radius:999px;background:#d9d0e7}.sheet-heading.boutique{display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet-heading.boutique h2{margin-top:3px;font-size:21px;color:var(--text)}.sheet-heading.boutique button{min-height:34px;border:0;border-radius:14px;padding:0 12px;background:#6c4cf51a;color:var(--accent-strong);font-weight:800}.sheet-cart{display:grid;gap:8px}.sheet-cart-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.sheet-cart-row h3{font-size:14px;color:var(--text)}.sheet-cart-row p{margin-top:4px;color:var(--muted);font-size:13px}.sheet-cart-row button{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:12px;background:#f2ecfa;color:#6a56a8}.delivery-options.boutique{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.delivery-options.boutique button{display:grid;gap:4px;min-height:76px;border:1px solid transparent;border-radius:18px;padding:12px;background:#f5f1fb;text-align:left;color:#4f3f66}.delivery-options.boutique button.selected{background:#6c4cf51a;color:var(--accent-strong);border-color:#6c4cf526}.delivery-options.boutique span{color:#827494;font-size:13px;font-weight:800}.checkout-sheet.boutique label{display:grid;gap:6px;color:#695a80;font-size:13px;font-weight:700}.checkout-sheet.boutique input{min-height:42px;border:1px solid transparent;border-radius:16px;padding:0 12px;background:#f5f2fb;color:var(--text);outline:0}.checkout-sheet.boutique input:focus{border-color:#6c4cf52e}.checkout-submit.boutique{min-height:46px;border:0;border-radius:16px;background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:#fff;font-weight:900;box-shadow:0 9px 20px #5d3fac29}.checkout-submit.boutique:disabled{opacity:.62;box-shadow:none}.checkout-error{margin:-2px 0 0;border-radius:14px;padding:10px 12px;background:#d643621a;color:#b73157;font-size:13px;font-weight:800}.empty-state.boutique,.list-panel.boutique,.profile-panel.boutique{margin-top:16px;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.empty-state.boutique{padding:24px 18px}.empty-state.boutique h2{font-size:22px;color:var(--text)}.empty-state.boutique p{margin-top:7px;color:var(--muted);line-height:1.45}.list-panel.boutique{display:grid;overflow:hidden}.order-card.boutique{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:12px;align-items:center;width:100%;border:0;padding:14px;border-bottom:1px solid var(--border);background:transparent;color:inherit;text-align:left}.order-card.boutique:last-child{border-bottom:0}.order-card.boutique span,.profile-card span{color:#8f80aa;font-size:12px;font-weight:800}.order-card.boutique h3{margin-top:4px;font-size:15px;line-height:1.25;color:var(--text)}.order-card.boutique p{margin-top:5px;color:var(--muted);font-size:13px}.status-pill{display:inline-flex;width:fit-content;min-height:24px;align-items:center;margin-top:8px;border-radius:999px;padding:0 9px;background:#6c4cf51a;color:var(--accent-strong);font-size:11px;font-weight:900}.status-paid,.status-assembling,.status-shipped,.status-delivered{background:#30ae761f;color:#1f8f5c}.status-cancelled{background:#d643621a;color:#b73157}.profile-panel.boutique{display:grid;gap:12px;padding:14px}.profile-card{border-radius:20px;padding:16px;background:var(--surface-strong)}.profile-card h2{margin-top:4px;font-size:24px;color:var(--text)}.profile-card p{margin-top:6px;color:var(--muted);line-height:1.45}.profile-orders-button{display:flex;align-items:center;justify-content:space-between;min-height:46px;border:0;border-radius:18px;padding:0 14px;background:linear-gradient(180deg,#6c4cf51f,#6c4cf514);color:var(--accent-strong);font-weight:900}.phone-request{display:grid;gap:10px;margin-top:8px}.phone-request p{margin-top:0}.phone-request small{color:#7e7191;font-size:12px;line-height:1.35}.contact-button.boutique{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:fit-content;min-height:40px;border:0;border-radius:15px;padding:0 14px;background:linear-gradient(180deg,var(--accent),var(--accent-strong));color:#fff;font-weight:900;box-shadow:0 8px 18px #5d3fac26}.contact-button.boutique:disabled{opacity:.76}.phone-hint{font-size:13px}.fade-up{animation:fade-up .38s ease both}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes sheet-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes plaque-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes card-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes stepper-in{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pop-tap{0%{transform:scale(1)}45%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes boot-fade{0%{opacity:0}to{opacity:1}}@keyframes boot-pulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.035)}}@keyframes loader-run{0%{transform:translate(-42px)}55%,to{transform:translate(98px)}}@keyframes rail-glide{0%{transform:translate(-30px)}45%{transform:translate(22px)}to{transform:translate(72px)}}
