:root{color-scheme:light;--ink:#232039;--muted:#7c7890;--line:#ebe8f2;--white:#fff;--violet:#7958ea;--shadow:0 16px 45px #322f5315;--radius:26px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#f8f7fc;color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer;border:0}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #775ae4;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.4}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.055em}a{color:inherit}#app{min-height:100vh}.shell{max-width:1480px;margin:0 auto;padding:0 36px}.pill{display:inline-flex;align-items:center;gap:7px;border-radius:100px;padding:8px 14px;font-size:12px;font-weight:800;letter-spacing:.035em}.eyebrow{text-transform:uppercase;font-weight:900;font-size:11px;letter-spacing:.16em;color:#7c699e}.muted{color:var(--muted)}.btn{padding:13px 20px;border-radius:15px;font-weight:800;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #3a285b23}.btn-primary{background:#25203d;color:#fff}.btn-lilac{background:#7958ea;color:#fff}.btn-light{background:#f3f0fa;color:#4a4564}.btn-white{background:#fff;color:#241f38}.btn-danger{background:#ffeef0;color:#b13d5c}.btn-small{padding:10px 14px;border-radius:12px;font-size:13px}.icon-btn{display:grid;place-items:center;background:#f3f0fa;width:40px;height:40px;border-radius:12px;font-size:20px}.full{width:100%}
.home{min-height:100vh;background:radial-gradient(circle at 6% 25%,#ede7ff 0,transparent 34%),radial-gradient(circle at 95% 83%,#ffe9d9 0,transparent 34%),#faf9fd;overflow:hidden}.home nav,.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:20px;font-weight:950;letter-spacing:-.06em}.brand-mark{display:grid;place-items:center;width:43px;height:43px;background:#26223d;color:#fff;border-radius:14px;font-size:22px;box-shadow:0 8px 18px #33245a28}.nav-note{font-size:12px;font-weight:700;color:#827b92}.home-heading{text-align:center;padding:16px 0 30px}.home-heading .eyebrow{display:inline-block;margin-bottom:12px}.home-heading h1{font-size:clamp(38px,5.4vw,70px);font-weight:930;line-height:1.04}.home-heading h1 span{background:linear-gradient(120deg,#8060e8,#f18d9c);color:transparent;background-clip:text}.home-heading p{max-width:630px;line-height:1.55;font-size:16px;color:#77738a;margin:13px auto 0}.store-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}.store-card{min-height:470px;border-radius:32px;overflow:hidden;position:relative;isolation:isolate;display:flex;align-items:stretch;box-shadow:0 20px 60px #32285217;border:1px solid #ffffff9e}.store-card.wilma{background:linear-gradient(128deg,#fce9cb 0%,#ffedda 45%,#f8d5bb 100%)}.store-card.elvira{background:linear-gradient(120deg,#e8dffe 0%,#f3dff4 52%,#e1d0f8 100%)}.store-card .spark{position:absolute;z-index:-1;filter:blur(0);border:1px solid #fff8;border-radius:50%;width:300px;height:300px;top:-110px;right:-80px;background:#ffffff47}.store-photo{position:absolute;right:-8%;bottom:0;height:99%;width:60%;object-fit:cover;object-position:50% 24%;mask-image:linear-gradient(to right,transparent 0%,#000 22%),linear-gradient(to top,#000 74%,#000 100%);mask-composite:intersect;z-index:-1}.store-card.elvira .store-photo{right:-3%;width:57%;object-position:center 18%}.store-card:after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,#f3dcd35e);z-index:-1;pointer-events:none}.store-card.elvira:after{background:linear-gradient(transparent,#d9b7e94d)}.store-body{width:62%;min-width:250px;padding:38px 0 36px 39px;display:flex;align-items:flex-start;flex-direction:column;z-index:1}.store-body .pill{background:#fff9;color:#70522d}.elvira .store-body .pill{color:#70528a}.store-body h2{font-size:clamp(36px,3.5vw,53px);line-height:1.02;margin:20px 0 12px;font-weight:920}.store-body h2 small{display:block;font-size:.55em;letter-spacing:-.03em;margin-top:4px}.store-body p{font-size:14px;line-height:1.52;max-width:260px;color:#62576b;font-weight:550}.mini-tags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 24px}.mini-tags span{background:#ffffffbb;border:1px solid #fff;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:800;box-shadow:0 4px 10px #56404c0b}.store-body .btn{margin-top:auto}.home-bottom{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;padding:10px 0 24px;color:#756e86;font-size:12px;font-weight:750}.home-bottom span{display:flex;align-items:center;gap:7px}
.shop{--accent:#d67c37;--accent-light:#ffefdc;--accent-deep:#8d4f20;min-height:100vh;background:#f8f8fc}.shop[data-store="elvira"]{--accent:#9670e7;--accent-light:#f0e8ff;--accent-deep:#6541a8}.shop .topbar{height:80px;border-bottom:1px solid #ebe9f1;background:#fffe;backdrop-filter:blur(16px);position:sticky;top:0;z-index:12;padding:0 28px}.back{background:#f5f3fa;color:#534d64;font-weight:750;border-radius:12px;padding:12px 14px}.shop-brand{display:flex;gap:12px;align-items:center}.shop-brand h2{font-size:19px;font-weight:920;letter-spacing:-.045em}.shop-brand p{font-size:11px;color:#888194;font-weight:700;margin-top:3px}.store-icon{border-radius:14px;background:var(--accent-light);font-size:23px;width:46px;height:46px;display:grid;place-items:center}.top-actions{display:flex;align-items:center;gap:10px}.top-actions .btn{padding:12px 17px}.shop-content{max-width:1620px;margin:auto;padding:22px 24px 22px;display:grid;grid-template-columns:minmax(0,1fr) 395px;gap:20px}.shop-left{min-width:0;display:flex;flex-direction:column;gap:17px}.customer{background:#fff;border:1px solid #f1edf2;border-radius:24px;padding:17px;display:flex;align-items:flex-start;gap:17px;min-height:156px;box-shadow:0 8px 26px #322f4708;position:relative;overflow:hidden}.customer:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:var(--accent-light);right:-80px;top:-110px}.avatar{width:84px;height:88px;flex:none;display:grid;place-items:center;border-radius:22px;background:linear-gradient(145deg,#fff4e5,#eddbfa);font-size:52px;animation:hello 3s ease-in-out infinite;box-shadow:inset 0 0 0 1px #fff9}@keyframes hello{0%,85%,100%{transform:rotate(0)}91%{transform:rotate(-5deg)}96%{transform:rotate(4deg)}}.customer-info{flex:1;min-width:0;position:relative}.customer-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.customer-name{font-size:19px;font-weight:900;letter-spacing:-.035em}.customer-speech{color:#706a7f;font-size:13px;margin:7px 0 11px;line-height:1.4}.wishlist{display:flex;gap:7px;flex-wrap:wrap;max-height:89px;overflow-y:auto}.wish{font-size:11px;font-weight:800;padding:7px 9px;border-radius:9px;background:#f7f5fb;color:#5c566e;border:1px solid #ebe8f4}.wish.found{background:#e5f9ec;color:#217649;border-color:#b9e9cb;text-decoration:line-through}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 5px}.section-title h2{font-size:25px;font-weight:920;letter-spacing:-.045em}.section-title p{font-size:12px;color:#898598;margin-top:4px}.searchline{display:flex;align-items:center;gap:10px}.searchbox{display:flex;align-items:center;gap:10px;border-radius:13px;border:1px solid var(--line);background:#fff;padding:0 13px;height:43px;color:#9b96a9}.searchbox input{border:0;outline:none;width:190px;background:transparent;min-width:0;font-size:13px;color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;overflow-y:auto;align-content:start;max-height:calc(100vh - 360px);min-height:400px;padding:2px 4px 8px}.product{background:#fff;border:1px solid #eceaf2;border-radius:20px;padding:14px 9px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;min-height:138px;box-shadow:0 4px 14px #38304c08;transition:transform .17s,border-color .17s,box-shadow .17s;position:relative;text-align:center}.product:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 12px 25px #41345118}.product:active{transform:scale(.97)}.product-emoji{background:var(--accent-light);width:67px;height:65px;border-radius:18px;display:grid;place-items:center;font-size:38px}.product-name{font-size:12px;line-height:1.22;font-weight:830;max-width:100%;white-space:normal}.product-price{color:var(--accent-deep);font-weight:900;font-size:12px}.product .tiny-plus{position:absolute;right:8px;top:8px;background:#f5f2f9;width:21px;height:21px;border-radius:7px;display:grid;place-items:center;font-weight:900;color:#675b7a}.empty{padding:48px;text-align:center;color:#857e92;border:2px dashed #e1ddec;border-radius:20px;grid-column:1/-1}.cart{background:#fff;border:1px solid #eeebf2;border-radius:25px;box-shadow:0 12px 45px #29223d0d;position:sticky;top:102px;height:calc(100vh - 123px);min-height:590px;display:flex;flex-direction:column;overflow:hidden}.cart-head{padding:23px 21px 19px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.cart-head h2{font-size:22px;letter-spacing:-.05em}.cart-head small{font-size:11px;color:#8f889b}.cart-count{background:var(--accent-light);color:var(--accent-deep);border-radius:10px;padding:7px 10px;font-size:12px;font-weight:900}.cart-items{flex:1;min-height:0;overflow-y:auto;padding:12px 19px}.cart-empty{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px;color:#958fa2;text-align:center;font-size:14px}.cart-empty strong{color:#3d3853}.cart-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #f2eff5}.cart-row .item-emoji{background:#f8f6fb;border-radius:11px;width:43px;height:43px;display:grid;place-items:center;font-size:24px}.item-info{flex:1;min-width:0}.item-info strong{font-size:12px;display:block}.item-info small{font-size:11px;color:#9790a3}.qty{display:flex;align-items:center;gap:7px}.qty button{width:25px;height:25px;border-radius:8px;background:#f3f0f8;font-weight:900;color:#514c66}.qty span{font-size:12px;font-weight:850;min-width:12px;text-align:center}.cart-foot{border-top:1px solid var(--line);padding:19px 21px 21px}.total-line{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.total-line span{font-size:13px;color:#827b92;font-weight:750}.total-line strong{font-size:32px;letter-spacing:-.055em}.pay-btn{background:#2d253e;color:#fff;border-radius:17px;min-height:57px;width:100%;font-size:17px;font-weight:880;display:flex;align-items:center;justify-content:space-between;padding:0 20px}.pay-btn:hover:not(:disabled){background:#443255}.cart-controls{display:flex;justify-content:space-between;margin-top:12px;gap:8px}.cart-controls button{color:#827a8e;background:transparent;font-size:12px;font-weight:700;padding:8px}.mobile-tabs{display:none}
.modal-backdrop{position:fixed;inset:0;background:#21192dc2;backdrop-filter:blur(6px);z-index:30;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:#fff;box-shadow:0 32px 100px #170c2c44;border-radius:28px;padding:27px;width:min(100%,570px);max-height:calc(100dvh - 32px);overflow:auto}.modal.wide{width:min(100%,770px)}.modal-header{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:21px}.modal h2{font-size:29px;font-weight:920;letter-spacing:-.055em}.modal .muted{font-size:13px;line-height:1.5;margin-top:6px}.pay-methods{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.method{border:2px solid #ede9f5;background:#fbfaff;border-radius:17px;padding:18px;display:flex;gap:10px;align-items:center;font-weight:800}.method.selected{border-color:#8061ed;background:#f3efff}.pay-big{font-size:36px;font-weight:930;letter-spacing:-.05em}.pay-due{background:#f8f6fd;border-radius:17px;padding:17px;margin-bottom:13px}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.keypad button{background:#f5f2fa;height:56px;border-radius:13px;font-size:20px;font-weight:780}.keypad button:hover{background:#eae4f8}.success{text-align:center;padding:15px 10px 6px}.success-icon{width:95px;height:95px;border-radius:50%;background:#e6faed;color:#169455;font-size:57px;display:grid;place-items:center;margin:4px auto 20px}.success h2{font-size:35px}.success .big{font-size:28px;font-weight:950;margin:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:850;color:#676079}.field input,.field select{border:1px solid #dfdaea;border-radius:12px;padding:13px 14px;min-height:46px;background:#fff;color:#342d44;width:100%}.field.span2{grid-column:span 2}.manager-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0;max-height:340px;overflow:auto}.manager-item{display:flex;align-items:center;gap:9px;background:#f8f7fb;border-radius:12px;padding:10px;min-width:0}.manager-item .mi-emoji{font-size:24px}.manager-item .mi-title{flex:1;min-width:0}.mi-title strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mi-title small{font-size:10px;color:#8d879a}.manager-item button{background:#ebe5f9;border-radius:8px;padding:7px 9px;font-size:11px;font-weight:800}.actions-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}.notice{background:#fff4e3;padding:12px;border-radius:11px;color:#8d6428;font-size:12px;font-weight:700;line-height:1.5;margin-top:12px}.scan-start{padding:20px;display:flex;align-items:center;flex-direction:column;text-align:center;gap:13px}.scan-start .scan-icon{font-size:70px}.scan-url{background:#f6f2fc;padding:12px;border-radius:11px;word-break:break-all;font-size:13px;font-weight:750}.scan-panel{background:#fff;border-radius:27px;padding:18px;box-shadow:var(--shadow);max-width:510px;margin:24px auto}.scan-page{min-height:100dvh;background:linear-gradient(150deg,#eee6ff,#fcf5f7 60%,#fff);padding:18px}.scan-head{display:flex;justify-content:space-between;align-items:center}.scan-title{text-align:center;margin:26px 0 14px}.scan-title h1{font-size:34px}.scan-title p{margin:8px auto;color:#797189;font-size:13px;line-height:1.5}.scanner-frame{background:#211d2c;border-radius:16px;min-height:235px;overflow:hidden}.scanner-frame video{border-radius:12px}.scan-result{padding:13px;border-radius:12px;background:#e7faec;color:#245c38;font-weight:850;margin:12px 0;display:none;text-align:center}.scan-result.show{display:block}.scan-result.error{background:#fff0ee;color:#a44537}.scan-row{display:flex;gap:8px}.scan-row input{width:100%;min-width:0;border:1px solid #dfd9e9;border-radius:12px;padding:12px;font-size:17px;letter-spacing:.05em}.scan-row .btn{flex:none}.qr{background:#fff;border-radius:15px;padding:8px;display:flex;justify-content:center;align-items:center;border:1px solid var(--line);min-height:170px}.qr img{width:164px;height:164px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,130px);opacity:0;z-index:100;background:#2c243c;color:#fff;padding:14px 20px;border-radius:14px;box-shadow:var(--shadow);font-size:13px;font-weight:750;transition:opacity .2s,transform .2s;pointer-events:none}.toast.show{transform:translate(-50%,0);opacity:1}.confetti{position:fixed;inset:0;z-index:70;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-20px;width:11px;height:16px;animation:confetti-fall linear forwards}@keyframes confetti-fall{to{transform:translateY(105vh) rotate(900deg)}}#print-receipt{display:none}
@media(max-width:1180px){.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.shop-content{grid-template-columns:minmax(0,1fr) 340px}.store-body{padding-left:28px;width:64%}.store-card{min-height:435px}.store-photo{width:63%}.shop .topbar{padding:0 17px}}
@media(max-width:870px){.shell{padding:0 20px}.store-cards{gap:16px}.store-card{min-height:420px}.store-body{padding:28px 0 28px 23px}.store-body h2{font-size:37px}.store-body p{font-size:12px}.mini-tags{margin:14px 0 20px}.mini-tags span{font-size:10px}.shop-content{grid-template-columns:1fr}.cart{position:relative;top:0;height:auto;min-height:460px}.product-grid{max-height:560px;min-height:380px;grid-template-columns:repeat(4,1fr)}.top-actions .btn{font-size:12px}.customer{min-height:150px}}
@media(max-width:640px){.home nav{height:70px}.home-heading{padding:14px 0 25px}.nav-note{display:none}.home-heading h1{font-size:43px}.home-heading p{font-size:13px}.store-cards{grid-template-columns:1fr;gap:15px}.store-card{min-height:310px;border-radius:25px}.store-body{padding:25px 0 23px 25px;width:67%;min-width:0}.store-photo{height:103%;width:52%;right:-4%;object-position:50% 21%;mask-image:linear-gradient(to right,transparent 0%,#000 42%)}.store-card.elvira .store-photo{width:53%;right:0;mask-image:linear-gradient(to right,transparent 0%,#000 50%)}.store-body h2{font-size:36px;margin:14px 0 9px}.store-body h2 small{font-size:16px;line-height:1.15;max-width:175px}.store-body p{max-width:170px;font-size:11px;line-height:1.35}.mini-tags{margin:12px 0}.mini-tags span{padding:6px 8px}.store-body .btn{padding:12px 13px;font-size:12px}.home-bottom{gap:12px;font-size:10px}.shop .topbar{height:68px;padding:0 12px}.back{padding:10px 11px}.shop-brand h2{font-size:15px}.shop-brand p{display:none}.store-icon{width:37px;height:37px;font-size:20px}.top-actions .btn{padding:9px 10px;font-size:11px}.top-actions .extra{display:none}.shop-content{padding:12px 12px 90px;gap:10px}.customer{padding:13px;gap:12px;border-radius:18px}.avatar{width:58px;height:65px;border-radius:16px;font-size:39px}.customer-name{font-size:16px}.customer-speech{font-size:12px}.wishlist{max-height:105px}.wish{font-size:10px;padding:5px 7px}.section-title h2{font-size:21px}.section-title p{font-size:11px}.searchbox input{width:105px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;min-height:auto;overflow:visible;gap:8px}.product{min-height:121px;padding:10px 7px;border-radius:16px}.product-emoji{width:59px;height:56px;font-size:32px}.product-name,.product-price{font-size:11px}.mobile-tabs{display:flex;position:fixed;bottom:calc(8px + env(safe-area-inset-bottom));left:12px;right:12px;z-index:15;background:#fff;padding:5px;border:1px solid #eee8f5;gap:5px;border-radius:13px;box-shadow:0 8px 35px #3020443b}.mobile-tabs button{flex:1;padding:10px;border-radius:10px;font-weight:800;background:transparent;color:#746a85;font-size:12px}.mobile-tabs button.active{background:var(--accent-light);color:var(--accent-deep)}.shop-content[data-tab="products"] .cart{display:none}.shop-content[data-tab="cart"] .shop-left{display:none}.cart{min-height:calc(100dvh - 180px)}.modal{padding:20px;border-radius:20px}.manager-list{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.span2{grid-column:auto}}
@media(max-height:740px) and (min-width:1000px){.home-heading{padding:7px 0 20px}.home-heading h1{font-size:54px}.store-card{min-height:390px}.home-bottom{padding:0 0 12px}.shop-content{padding-top:12px}.customer{min-height:135px}.product-grid{max-height:calc(100vh - 320px);min-height:310px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{@page{size:A4;margin:17mm}html,body{background:#fff!important;color:#000!important}#app,#toast,.confetti{display:none!important}#print-receipt{display:block!important;font:15px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;margin:0 auto;max-width:185mm}#print-receipt h1{text-align:center;font-size:30px;margin:20px 0}#print-receipt .receipt-head{text-align:center;margin-bottom:28px}#print-receipt .receipt-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px dashed #999}#print-receipt .receipt-total{display:flex;justify-content:space-between;font-size:25px;font-weight:bold;border-top:2px solid #000;margin-top:20px;padding-top:15px}#print-receipt .receipt-footer{text-align:center;margin-top:45px;font-size:13px}}
