@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap");:root{--navy:#0a2140;--ink:#10243d;--red:#f04448;--red-dark:#d92f39;--paper:#f4f6f8;--line:#d9e0e8;--muted:#708096;--green:#2e9b70}.shop-shell{min-height:100vh;min-height:100dvh;background:var(--paper);color:var(--ink);font-family:Manrope,sans-serif;overflow:hidden}.shop-shell button:focus-visible,.shop-shell input:focus-visible{outline:3px solid rgba(240,68,72,.35);outline-offset:3px}.back-link:disabled{cursor:not-allowed;opacity:.45}.shop-notice{position:fixed;z-index:20;top:96px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;border-radius:9px;padding:11px 15px;display:flex;align-items:center;gap:8px;font-size:12px;box-shadow:0 12px 25px rgba(10,33,64,.2);animation:notice-in .25s ease both}.shop-notice svg{color:#8ee0bb}@keyframes notice-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.shop-header{height:82px;padding:0 clamp(22px,5vw,76px);justify-content:space-between;background:rgba(244,246,248,.9);border-bottom:1px solid rgba(10,33,64,.08);position:relative;z-index:2}.brand,.shop-header{display:flex;align-items:center}.brand{border:0;background:none;padding:0;cursor:pointer}.brand img{width:148px;height:auto;display:block}.header-status{display:flex;align-items:center;gap:9px;color:var(--muted);font:500 11px DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(46,155,112,.13)}.fullscreen-button{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--navy);display:grid;place-items:center;cursor:pointer}.cart-button{margin-left:7px;height:42px;border:1px solid var(--line);border-radius:13px;background:white;color:var(--navy);display:flex;align-items:center;gap:7px;padding:0 13px;cursor:pointer}.cart-button b{color:var(--red)}.welcome{min-height:calc(100vh - 82px);display:grid;grid-template-columns:minmax(360px,.85fr) 1.15fr;align-items:center;padding:clamp(40px,9vh,112px) clamp(22px,9vw,150px);gap:5vw;background:radial-gradient(circle at 80% 40%,rgba(255,255,255,.95),transparent 38%),var(--paper)}.welcome-copy{max-width:570px;position:relative;z-index:1}.eyebrow{color:var(--red);font:500 11px DM Mono,monospace;letter-spacing:.13em;margin:0 0 20px}.cart-view h1,.catalog h1,.payment-view h1,.success-view h1,.welcome h1{color:var(--navy);font-size:clamp(45px,6.2vw,88px);line-height:.98;letter-spacing:-.065em;margin:0;font-weight:800}.welcome h1 em{font-style:normal}.cart-view h1 span,.catalog h1 span,.payment-view h1 span,.scanner-modal h2 span,.success-view h1 span,.welcome h1 em,.welcome h1 span{color:var(--red)}.welcome-copy>p:not(.eyebrow){max-width:390px;margin:28px 0 36px;color:var(--muted);font-size:16px;line-height:1.7}.primary-button,.secondary-button{border:0;cursor:pointer;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 13px Manrope,sans-serif;transition:transform .2s,background .2s,box-shadow .2s}.primary-button{background:var(--red);color:#fff;padding:15px 19px;box-shadow:0 10px 20px rgba(240,68,72,.18)}.primary-button:hover{background:var(--red-dark);transform:translateY(-2px);box-shadow:0 13px 25px rgba(240,68,72,.26)}.secondary-button{background:#fff;color:var(--navy);border:1px solid var(--line);padding:14px 18px}.secondary-button:hover{border-color:var(--navy)}.start-button{min-height:54px;padding:0 24px}.welcome-meta{display:flex;align-items:center;gap:12px;margin-top:80px;color:var(--muted);font:10px DM Mono,monospace;letter-spacing:.08em}.welcome-meta div{height:1px;width:55px;background:var(--red)}.welcome-art{min-height:530px;position:relative;display:grid;place-items:center}.art-ring{position:absolute;border:1px solid rgba(10,33,64,.11);border-radius:50%}.ring-one{width:min(42vw,530px);height:min(42vw,530px)}.ring-two{width:min(31vw,390px);height:min(31vw,390px);border-color:rgba(240,68,72,.3)}.art-card{width:min(27vw,310px);aspect-ratio:.73;background:var(--navy);color:white;padding:26px;box-shadow:25px 35px 50px rgba(10,33,64,.22);transform:rotate(8deg);display:flex;flex-direction:column;justify-content:space-between}.art-card span{font:11px DM Mono;letter-spacing:.14em;color:#95abc4}.art-card strong{font-size:clamp(30px,4vw,58px);line-height:.9;letter-spacing:-.06em}.art-card strong span{color:var(--red);font:inherit}.art-bar{width:36%;height:8px;background:var(--red)}.carousel-frame{width:min(100%,610px);aspect-ratio:1.78;overflow:hidden;border-radius:14px;box-shadow:20px 28px 50px rgba(10,33,64,.2);background:var(--navy)}.carousel-frame img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;animation:carousel-fade .45s ease both}.carousel-dots{position:absolute;bottom:28px;display:flex;gap:7px}.carousel-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#b8c3cf;cursor:pointer}.carousel-dots button.active{width:25px;border-radius:9px;background:var(--red)}@keyframes carousel-fade{0%{opacity:.35;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}.page-in{animation:appear .55s ease both}@keyframes appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.cart-view,.catalog,.payment-view{max-width:1250px;margin:0 auto;padding:clamp(35px,6vw,78px) clamp(22px,5vw,70px) 90px}.catalog-heading,.section-title{display:flex;justify-content:space-between;align-items:end;gap:25px}.cart-view h1,.catalog h1,.payment-view h1{font-size:clamp(40px,5vw,68px)}.lede{color:var(--muted);margin:16px 0 0;font-size:15px}.back-link,.clear-button,.scan-link{border:0;background:none;color:var(--red);font:700 12px Manrope;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.toolbar{margin:55px 0 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.code-field,.search-field{background:#fff;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;gap:12px;padding:0 15px;color:var(--muted);min-height:48px}.search-field{width:min(100%,360px)}.code-field input,.search-field input{width:100%;outline:0;border:0;color:var(--ink);font:500 13px Manrope;background:none}.categories{display:flex;gap:8px;flex-wrap:wrap}.categories button{color:var(--muted);border:1px solid transparent;background:transparent;padding:9px 13px;border-radius:20px;cursor:pointer;font:600 12px Manrope}.categories button.active{background:var(--navy);color:#fff}.offline-note{color:#65748a;font:11px DM Mono;background:#e8edf2;border-radius:8px;padding:11px 14px;display:flex;align-items:center;gap:8px;margin-bottom:18px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.product-card{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden;transition:transform .25s,box-shadow .25s}.product-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px rgba(10,33,64,.11)}.product-image{height:190px;background:#eef2f5;position:relative;display:grid;place-items:center}.product-image>span{font-size:70px;filter:drop-shadow(0 12px 10px rgba(10,33,64,.12))}.product-image small{position:absolute;top:13px;left:13px;color:var(--green);font:9px DM Mono;letter-spacing:.1em}.product-info{padding:17px}.product-info p{color:var(--muted);font:10px DM Mono;text-transform:uppercase;margin:0 0 8px}.product-info h2{font-size:15px;line-height:1.25;margin:0 0 18px;min-height:38px}.product-bottom{display:flex;align-items:center;justify-content:space-between}.product-bottom strong{font-size:18px;color:var(--navy)}.add-button{width:37px;height:37px;border-radius:10px;border:0;background:var(--red);color:#fff;cursor:pointer;display:grid;place-items:center}.cart-view{min-height:calc(100vh - 82px)}.back-link{margin-bottom:55px}.back-link,.clear-button{color:var(--muted)}.cart-layout,.payment-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;margin-top:58px}.cart-lines{border-top:1px solid var(--line)}.cart-line{display:grid;grid-template-columns:58px 1fr auto 110px;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:20px 0}.line-emoji{width:58px;height:58px;border-radius:10px;background:#e9edf0;display:grid;place-items:center;font-size:29px}.line-name{display:flex;flex-direction:column;gap:6px}.line-name strong{font-size:14px}.line-name small{color:var(--muted);font-size:11px}.quantity{display:flex;align-items:center;gap:14px}.quantity button{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;color:var(--navy);background:white;cursor:pointer}.line-total{text-align:right;font-size:14px}.order-summary{align-self:start;background:var(--navy);color:white;padding:27px;border-radius:13px}.order-summary>p{color:#91a7c1;font:10px DM Mono;letter-spacing:.12em;margin:0 0 27px}.order-summary>div{display:flex;justify-content:space-between;font-size:13px;color:#bdcadd}.summary-total{border-top:1px solid rgba(255,255,255,.16);margin-top:24px;padding-top:20px;align-items:end}.summary-total strong{font-size:25px;color:white}.order-summary .primary-button{width:100%;margin-top:28px;background:var(--red)}.empty-state{color:var(--muted);text-align:center;padding:70px 20px}.empty-state.large{background:white;border:1px solid var(--line);border-radius:13px;margin-top:50px}.empty-state h2{color:var(--navy);margin:15px 0 7px}.empty-state p{margin:0 0 22px}.payment-layout{margin-top:65px}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:42px}.method-grid button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:25px 17px;text-align:left;cursor:pointer;color:var(--navy);display:flex;flex-direction:column;gap:12px;transition:.2s}.method-grid button:hover{border-color:var(--red);transform:translateY(-3px)}.method-grid button svg{color:var(--red)}.method-grid button span{color:var(--muted);font-size:11px}.processing{margin-top:45px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:var(--muted)}.processing strong{color:var(--navy)}.loader{width:46px;height:46px;border:3px solid #e2e8ee;border-top:3px solid var(--red);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.payment-summary .mini-line{margin:0 0 15px;font-size:11px;gap:12px}.payment-summary .mini-line span:last-child{color:white}.payment-summary .summary-total{margin-top:15px}.success-view{min-height:calc(100vh - 82px);display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;padding:50px 22px}.success-mark{width:75px;height:75px;border-radius:50%;background:#e0f3eb;color:var(--green);display:grid;place-items:center;margin-bottom:28px}.success-view h1{font-size:clamp(55px,7vw,88px)}.success-copy{color:var(--muted);line-height:1.7;margin:22px 0 30px}.success-card{display:flex;gap:35px;padding:17px 25px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:left}.success-card div{display:flex;flex-direction:column;gap:5px}.success-card span{color:var(--muted);font:10px DM Mono;text-transform:uppercase}.success-card strong{font-size:13px}.success-actions{display:flex;gap:10px;margin-top:25px}.modal-backdrop{position:fixed;inset:0;background:rgba(10,33,64,.65);z-index:10;display:grid;place-items:center;padding:20px;backdrop-filter:blur(5px)}.receipt-modal,.scanner-modal{background:var(--paper);width:min(100%,500px);border-radius:15px;padding:35px;position:relative;box-shadow:0 25px 70px rgba(0,0,0,.25)}.modal-close{position:absolute;right:18px;top:18px;border:0;background:none;color:var(--muted);cursor:pointer}.scanner-icon{width:60px;height:60px;display:grid;place-items:center;border-radius:12px;background:#e5eaef;color:var(--red);margin-bottom:25px}.receipt-modal h2,.scanner-modal h2{color:var(--navy);font-size:30px;letter-spacing:-.04em;margin:0 0 12px}.receipt-modal>p,.scanner-modal>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.6}.code-field{margin-top:25px}.found-product{margin-top:18px;padding:15px;background:white;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:11px;flex-wrap:wrap}.found-product>span{font-size:29px}.found-product strong{flex:1;font-size:13px}.not-found{color:var(--red)!important}.receipt-top{display:flex;align-items:center;gap:13px;color:var(--red)}.receipt-top .eyebrow{margin:0 0 4px}.receipt-top h2{margin:0;font-size:27px}.receipt-meta{padding:20px 0;margin-bottom:8px;display:flex;justify-content:space-between;color:var(--muted);font:10px DM Mono}.receipt-items,.receipt-meta{border-bottom:1px solid var(--line)}.receipt-items{padding:10px 0}.receipt-items div{gap:15px;padding:8px 0;font-size:12px}.receipt-items div,.receipt-total{display:flex;justify-content:space-between}.receipt-total{align-items:center;padding:20px 0}.receipt-total strong{font-size:22px;color:var(--navy)}.full-button{width:100%}@media (max-width:820px){.welcome{grid-template-columns:1fr;padding-top:60px}.welcome-art{min-height:270px;order:-1}.art-card{width:170px}.ring-one{width:280px;height:280px}.ring-two{width:200px;height:200px}.welcome-meta{margin-top:45px}.product-grid{grid-template-columns:repeat(2,1fr)}.cart-layout,.payment-layout{grid-template-columns:1fr;gap:35px}.payment-summary{order:-1}.catalog-heading{align-items:flex-start;flex-direction:column}.toolbar{margin-top:35px}}@media (max-width:520px){.shop-header{height:68px;padding:0 18px}.brand img{width:125px}.header-status{font-size:0}.header-status .status-dot{margin-right:7px}.cart-button{margin-left:3px}.welcome{min-height:calc(100dvh - 68px);padding:28px 22px 55px}.welcome-art{min-height:220px}.cart-view h1,.catalog h1,.payment-view h1,.welcome h1{font-size:45px}.welcome-copy>p:not(.eyebrow){margin:22px 0 28px;font-size:14px}.product-grid{grid-template-columns:1fr 1fr;gap:9px}.product-image{height:135px}.product-image>span{font-size:49px}.product-info{padding:12px}.product-info h2{font-size:12px;min-height:31px;margin-bottom:13px}.product-bottom strong{font-size:14px}.add-button{width:32px;height:32px}.cart-view,.catalog,.payment-view{padding:33px 17px 60px}.toolbar{margin:30px 0 18px}.search-field{width:100%}.categories{flex-wrap:nowrap;overflow-x:auto;width:calc(100vw - 34px);padding-bottom:4px}.categories button{flex:0 0 auto}.cart-line{grid-template-columns:46px 1fr auto;gap:10px}.line-emoji{width:46px;height:46px;font-size:23px}.line-total{grid-column:2/3;text-align:left}.quantity{grid-column:3;grid-row:1}.success-card{gap:15px;padding:15px;flex-direction:column;text-align:center}.success-actions{flex-direction:column;width:100%}.success-actions button{width:100%}.method-grid{grid-template-columns:1fr;margin-top:30px}.method-grid button{padding:17px;display:grid;grid-template-columns:32px 1fr;gap:3px 12px}.method-grid button svg{grid-row:span 2;align-self:center}.method-grid button span{grid-column:2}.receipt-modal,.scanner-modal{padding:27px 20px}.receipt-modal h2,.scanner-modal h2{font-size:26px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.product-image img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;mix-blend-mode:multiply}.method-grid button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.payment-stage{margin-top:34px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.pix-qr{width:min(100%,310px);aspect-ratio:1;-o-object-fit:contain;object-fit:contain;align-self:center;background:#fff;border:12px solid #fff;border-radius:8px}.terminal-select{width:100%;display:flex;flex-direction:column;gap:7px;color:var(--muted);font:11px DM Mono;text-transform:uppercase}.terminal-select select{min-height:45px;border:1px solid var(--line);border-radius:9px;padding:0 12px;background:#fff;color:var(--ink);font:13px Manrope}.checkout-error{color:var(--red);background:#fff0f0;border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.4}.success-countdown{color:var(--muted);font:10px DM Mono;margin:20px 0 0}.scanner-video{width:100%;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;border-radius:11px;background:var(--navy);margin-top:20px}.scanner-actions{margin:18px 0 0;display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px}.scanner-submit{width:100%;margin-top:12px}@media (max-width:520px){.shop-notice{top:78px;max-width:calc(100vw - 34px);white-space:nowrap}}.welcome{grid-template-columns:1fr;justify-items:center;align-content:center;gap:24px;padding:clamp(28px,5vh,60px) 2%}.showcase-carousel{width:96vw;position:relative}.showcase-carousel .carousel-frame{width:100%;max-width:none;aspect-ratio:2.55}.showcase-carousel .carousel-dots{bottom:-22px}.floating-cart{position:fixed;z-index:5;bottom:22px;left:50%;transform:translateX(-50%);width:min(570px,calc(100vw - 34px));min-height:66px;padding:10px 14px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:var(--navy);color:white;box-shadow:0 15px 35px rgba(10,33,64,.28);display:flex;align-items:center;gap:12px;cursor:pointer;text-align:left}.floating-cart:hover{background:#12345d}.floating-cart-icon{position:relative;display:grid;place-items:center;width:41px;height:41px;border-radius:10px;background:var(--red)}.floating-cart-icon b{position:absolute;top:-7px;right:-7px;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:white;color:var(--red);display:grid;place-items:center;font-size:10px}.floating-cart-copy{display:flex;flex:1;flex-direction:column;gap:3px}.floating-cart-copy small{color:#91a7c1;font:9px DM Mono;letter-spacing:.1em}.floating-cart-copy strong{font-size:16px}.floating-cart-cta{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700}@media (max-width:820px){.showcase-carousel .carousel-frame{aspect-ratio:1.65}}