:root{--ink:#153b42;--teal:#0b6158;--teal-dark:#073d50;--lime:#d9efb6;--paper:#f5f7f4;--line:#e1e8e1;--muted:#60736f;--red:#a43830;--amber:#86570d;--radius:20px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:15px;line-height:1.5}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--teal)}:focus-visible{outline:3px solid #138d80;outline-offset:4px}h1,h2,h3,h4,p{margin:0}h1,h2,h3{letter-spacing:-.035em}h1{font-size:clamp(32px,3.4vw,49px);line-height:1.1;font-weight:650}h2{font-size:24px;line-height:1.25}h3{font-size:17px;line-height:1.3}small{font-size:12px}strong{font-weight:650}.muted,.fine-print{color:var(--muted)}.fine-print{font-size:12px;line-height:1.6}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:750;color:var(--teal);margin-bottom:10px;text-transform:uppercase}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:16px;background:white;padding:12px;z-index:200}.skip-link:focus{top:10px}.app-header{height:86px;position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;gap:38px}.wordmark{font-size:34px;letter-spacing:-2px;display:flex;align-items:baseline;color:var(--teal-dark);text-decoration:none;font-weight:780;min-width:184px}.wordmark span{font-size:15px;font-weight:500;letter-spacing:-.7px;margin-left:4px}.wordmark i{width:6px;height:6px;background:#a8ce7f;border-radius:50%;margin-left:3px}.header-place{display:flex;align-items:center;gap:11px;font-size:12px;font-weight:650;flex:1}.header-place small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:1px}.location-dot{width:10px;height:10px;background:var(--lime);border:2px solid var(--teal);border-radius:50%}.header-actions{display:flex;align-items:center;gap:12px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#edf0e8;color:var(--teal);font-weight:650;font-size:11px}.demo-tag{font-size:9px;font-weight:700;letter-spacing:.1em;border:1px solid #c9d8ce;border-radius:5px;padding:4px 7px;color:var(--muted)}.icon-button{border:0;background:transparent;min-width:42px;min-height:42px;border-radius:10px;font-size:14px;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{background:#edf3ed}.icon{width:21px;height:21px;flex:none;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.app-layout{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:calc(100vh - 86px)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:32px 18px;display:flex;flex-direction:column;position:sticky;top:86px;height:calc(100vh - 86px);overflow:auto}.nav-caption{font-size:9px;letter-spacing:.14em;color:#6b7e75;padding:0 16px;margin-bottom:14px;font-weight:700}.feature-nav-button{width:100%;border:0;background:transparent;text-align:left;display:flex;align-items:center;gap:12px;min-height:48px;border-radius:11px;padding:11px 15px;font-size:12px;color:#60756d;margin-bottom:5px;font-weight:530}.feature-nav-button .num{margin-left:auto;font-size:9px;opacity:.7}.feature-nav-button.active{background:#eaf2e7;color:var(--teal);font-weight:700}.feature-nav-button:hover{background:#f1f5ef}.sidebar-bottom{margin-top:auto;padding:32px 15px 0;display:flex;flex-direction:column;gap:13px}.subtle-link{font-size:11px;text-align:left;border:0;background:transparent;padding:0;color:#57756c;text-decoration:none}.sidebar-bottom p{font-size:9px;line-height:1.8;color:#849089;letter-spacing:.05em;margin-top:8px}main{padding:36px clamp(20px,3.3vw,52px) 40px;min-width:0;max-width:1550px;width:100%;margin:0 auto}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading p.muted{font-size:13px;margin-top:9px;max-width:640px}.page-heading h1{font-size:34px}.heading-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:44px;padding:11px 17px;border-radius:11px;border:1px solid transparent;font-size:12px;font-weight:650;text-decoration:none;line-height:1.35}.btn.primary{background:var(--teal);color:#fff}.btn.primary:hover{background:#074c45}.btn.light{border-color:#d9e3d7;background:#fff}.btn.light:hover{background:#f0f5ec}.btn.lime{background:var(--lime);color:var(--ink)}.btn.danger{background:#fff3f0;color:var(--red);border-color:#ebd1cb}.btn.compact{min-height:35px;padding:8px 11px;font-size:10px}.btn.wide{width:100%}.btn .icon{width:17px;height:17px}.button-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.text-button{border:0;background:transparent;color:var(--teal);padding:6px 0;font-size:12px;text-decoration:underline;text-underline-offset:4px}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;margin-bottom:27px}.welcome-card{background:#e9efe3;border:1px solid #e1e8db;border-radius:var(--radius);position:relative;overflow:hidden;padding:28px 30px;min-height:235px;display:flex;align-items:center}.welcome-copy{max-width:70%;position:relative;z-index:1}.welcome-copy h1{font-size:clamp(30px,2.8vw,41px)}.welcome-copy>p:not(.eyebrow){font-size:12px;color:#536e61;max-width:370px;margin-top:13px}.welcome-copy .button-row{margin-top:20px}.hero-picture{width:170px;height:170px;position:absolute;right:15px;bottom:-8px;border-radius:50%;background:#d7e6ca}.hero-bag{position:absolute;left:39px;top:32px;width:102px;height:125px;border-radius:5px 5px 16px 16px;background:#174f42;transform:rotate(-9deg);box-shadow:8px 9px 0 #a6bf93}.hero-bag:before{content:'';position:absolute;left:27px;top:-23px;width:45px;height:35px;border:6px solid #174f42;border-bottom:0;border-radius:30px 30px 0 0}.hero-bag:after{content:'s';font:700 68px Georgia,serif;color:#d4e9b8;position:absolute;left:34px;top:14px}.floating-receipt{position:absolute;background:#fffef7;border-radius:7px;width:69px;height:93px;right:0;top:13px;transform:rotate(13deg);padding:12px;box-shadow:0 5px 15px #183d4217}.floating-receipt i{display:block;height:3px;background:#bccdb8;margin:7px 0}.floating-receipt strong{font-size:16px;display:block;color:var(--teal)}.budget-card{background:var(--teal-dark);color:white;border-radius:var(--radius);padding:25px;display:flex;flex-direction:column;justify-content:space-between}.budget-card .eyebrow{color:#c2d8c3}.big-amount{font-size:35px;letter-spacing:-1px}.budget-card p{font-size:11px;color:#c7d7d7}.budget-card .progress-track{background:#ffffff24}.budget-card .progress-track span{background:var(--lime)}.budget-bottom{display:flex;justify-content:space-between;font-size:10px;padding-top:12px;border-top:1px solid #ffffff20;margin-top:14px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;gap:12px}.section-title h2{font-size:20px}.section-title p{font-size:11px;color:var(--muted);margin-top:3px}.chip{font-size:10px;padding:5px 9px;display:inline-flex;align-items:center;gap:5px;border-radius:7px;background:#edf3e9;color:#32664c;font-weight:600}.chip.red{background:#fbeae6;color:var(--red)}.chip.amber{background:#fff2d6;color:var(--amber)}.chip.blue{background:#edf2fd;color:#365b9b}.chip.neutral{background:#f0f2ee;color:#627469}.store-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.store-tab{border:1px solid var(--line);background:white;border-radius:11px;padding:10px 14px;display:flex;align-items:center;gap:8px;font-size:11px;min-height:43px}.store-tab.active{border-color:#0b6158;background:#eaf2e7;color:var(--teal);font-weight:650}.store-tab .icon{width:16px;height:16px}.shopping-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}.input-row{display:flex;gap:8px;margin:13px 0}.input-row input{flex:1;min-width:0}input,select{border:1px solid #cbd8ce;border-radius:9px;background:#fff;padding:11px 12px;color:var(--ink);min-height:44px;max-width:100%}label{font-size:12px;font-weight:600}input[type=checkbox]{accent-color:var(--teal);min-height:auto;width:17px;height:17px}input[type=range]{accent-color:var(--teal);padding:0}.search-box{position:relative;margin-bottom:19px}.search-box input{width:100%;padding-left:40px;font-size:12px}.search-box .icon{position:absolute;left:12px;top:12px;width:18px;color:#6f8377}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.product-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;min-width:0;display:flex;flex-direction:column}.product-art{height:112px;border-radius:9px;background:#f1f3ec;position:relative;display:grid;place-items:center;color:#416d4d;overflow:hidden}.product-art .icon{width:54px;height:54px;stroke-width:1.1}.product-art.food-photo{background-image:url('assets/food-sheet.jpg');background-size:200% 200%}.product-art.food-0{background-position:0 0}.product-art.food-1{background-position:100% 0}.product-art.food-2{background-position:0 100%}.product-art.food-3{background-position:100% 100%}.product-art.fashion{background:#f1eaf6;color:#8867a3}.product-art.tech{background:#e9f0f8;color:#587aa9}.mini-category{position:absolute;top:7px;left:7px;background:#ffffffdd;font-size:8px;padding:3px 5px;border-radius:4px}.product-card h3{font-size:12px;letter-spacing:-.02em;margin:12px 0 3px;min-height:31px}.product-card .size{font-size:10px;color:var(--muted)}.price-line{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:12px}.product-card .price{font-size:16px;font-weight:700}.add-round{width:32px;height:32px;min-width:32px;border-radius:9px;background:#eef4e8;border:0;color:var(--teal);font-size:20px;display:grid;place-items:center}.cart-panel{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;position:sticky;top:108px}.cart-head{padding:20px 18px 14px;border-bottom:1px solid var(--line)}.cart-head h2{font-size:17px}.cart-head p{font-size:10px;margin-top:4px;color:var(--muted)}.cart-line{padding:14px 16px;border-bottom:1px solid #edf0eb}.cart-line-top{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}.cart-line h3{font-size:11px;letter-spacing:0;max-width:160px}.cart-line .amount{font-size:12px;font-weight:700;white-space:nowrap}.cart-line p{font-size:10px;margin-top:3px;color:var(--muted)}.cart-line .chip{font-size:8px;margin-top:6px;padding:3px 5px}.quantity-control{display:flex;align-items:center;gap:8px;margin-top:9px;font-size:10px}.quantity-control button{min-width:30px;min-height:30px;border:1px solid var(--line);background:#fff;border-radius:6px}.cart-summary{padding:18px}.total-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:15px;font-size:12px}.total-row strong{font-size:25px;letter-spacing:-.05em}.cart-store-subtotal{display:flex;justify-content:space-between;font-size:10px;margin-bottom:7px}.cart-store-actions{padding-top:10px;margin-top:12px;border-top:1px solid var(--line)}.cart-store-actions .btn{width:100%;font-size:10px}.message{background:#edf4e9;border:1px solid #dce8d5;border-radius:11px;padding:12px 14px;font-size:12px;margin:13px 0;line-height:1.55}.message.warning{background:#fff7e5;border-color:#ead9af;color:#79530e}.message.error{background:#fcf0ec;border-color:#edcfc5;color:#953b2e}.message.info{background:#eef3fa;border-color:#dce5f0;color:#3f628a}.features-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px}.feature-tile{text-align:left;background:#fff;border:1px solid var(--line);padding:16px;border-radius:13px;display:flex;align-items:center;gap:11px;min-height:78px}.tile-icon{color:var(--teal);background:#edf4e8;padding:10px;border-radius:10px}.feature-tile strong{display:block;font-size:10px}.feature-tile small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.page-footer{border-top:1px solid var(--line);margin-top:30px;padding-top:18px;font-size:10px;color:#76887c;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0}.two-columns{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:start}.three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px}.stat-box{border:1px solid var(--line);background:#fff;border-radius:14px;padding:20px}.stat-box small{display:block;color:var(--muted);font-size:10px}.stat-box strong{font-size:29px;letter-spacing:-.05em;display:block;margin:7px 0}.stat-box.positive{background:#eaf2e5}.breakdown-row{display:grid;grid-template-columns:150px minmax(30px,1fr) 80px;gap:15px;align-items:center;font-size:11px;margin:19px 0}.breakdown-bar{height:8px;border-radius:10px;background:#f0f3ed;overflow:hidden}.breakdown-bar span{height:100%;display:block;background:#7da98b;border-radius:10px}.breakdown-row.negative .breakdown-bar span{background:#82a9c6}.breakdown-row.unexplained .breakdown-bar span{background:#d0b17c}.breakdown-row strong{text-align:right}.progress-track{height:6px;border-radius:10px;background:#edf2e8;overflow:hidden;margin:13px 0}.progress-track span{display:block;height:100%;background:var(--teal);border-radius:10px}.receipt-row{border-bottom:1px solid var(--line);padding:14px 0;font-size:11px;display:flex;gap:10px;justify-content:space-between}.receipt-row:last-child{border:0}.receipt-row small{display:block;font-size:10px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.form-grid label{display:flex;flex-direction:column;gap:7px}.check-row{display:flex;gap:10px;align-items:flex-start;margin:15px 0;font-size:12px;font-weight:400}.check-row input{flex:none;margin-top:2px}.compare-card{border:1px solid var(--line);border-radius:15px;padding:20px;background:white;display:flex;flex-direction:column}.compare-card.best{border-color:#88ad7e;box-shadow:0 0 0 1px #88ad7e}.comparison-price{font-size:30px;font-weight:700;letter-spacing:-1px;margin:16px 0 0}.compare-card h3{margin:13px 0 4px}.compare-card small{display:block;color:var(--muted);font-size:11px}.result-detail{border-top:1px solid var(--line);padding-top:12px;margin-top:14px;flex:1}.compare-card .btn{margin-top:17px}.order-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:22px;margin-bottom:16px}.order-top{display:flex;justify-content:space-between;gap:10px}.order-top h3{margin:7px 0}.order-amount{font-size:26px;letter-spacing:-1px}.order-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:21px 0}.order-step{font-size:9px;color:#75847b;padding-top:12px;border-top:3px solid #e7ede3}.order-step.done{border-color:#7fa578;color:var(--teal)}.order-lines{font-size:11px;color:var(--muted);line-height:1.8}.device-card{border-radius:17px;border:1px solid var(--line);padding:23px;background:#fff}.device-card.selected{border-color:#7ca574;box-shadow:0 0 0 1px #7ca574}.device-top{display:flex;justify-content:space-between;align-items:center}.device-amount{font-size:36px;letter-spacing:-1px;margin:18px 0 2px}.device-card dl{display:grid;grid-template-columns:1fr auto;font-size:11px;gap:8px;margin:18px 0}.device-card dt{color:var(--muted)}.device-card dd{margin:0}.budget-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.map-panel{padding:0;overflow:hidden}.map-head{padding:24px 24px 0}.mall-map{width:100%;height:auto;display:block;background:#f1f4ed}.map-node{fill:#fff;stroke:#bbcebd;stroke-width:2}.map-label{font-size:11px;font-family:inherit;fill:#3e6150}.map-label-small{font-size:9px;font-family:inherit;fill:#768879}.map-edge{stroke:#d9e3d2;stroke-width:9;fill:none;stroke-linecap:round}.map-route{stroke:#0b7462;stroke-width:5;fill:none;stroke-linejoin:round;stroke-linecap:round}.route-stop{display:flex;gap:13px;padding:17px 0;border-bottom:1px solid var(--line);font-size:12px}.stop-number{width:29px;height:29px;background:#eaf3e4;color:var(--teal);border-radius:9px;display:grid;place-items:center;font-weight:700;flex:none}.route-stop p{font-size:11px;color:var(--muted);margin-top:5px}.privacy-icon{width:58px;height:58px;border-radius:16px;background:#e8f1e1;display:grid;place-items:center;color:var(--teal);margin-bottom:18px}.privacy-icon .icon{width:29px;height:29px}.privacy-list{list-style:none;padding:0;font-size:12px}.privacy-list li{padding:10px 0;border-bottom:1px solid var(--line);display:flex;gap:9px}.privacy-list li span{color:var(--teal)}pre{white-space:pre-wrap;word-break:break-word;background:#f3f5f0;border:1px solid var(--line);border-radius:10px;padding:16px;font-size:10px;max-height:360px;overflow:auto;color:#315a43}.access-card{background:#eaf1e4;border:1px solid #d7e4ce;border-radius:18px;padding:25px}.access-card h2{font-size:26px;margin:10px 0 12px}.access-card p{font-size:13px;color:#526e5c}.toggle{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid var(--line);background:#fff;padding:17px;border-radius:13px;width:100%;text-align:left;margin:14px 0}.toggle-label strong{display:block;font-size:12px}.toggle-label small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.switch{width:39px;height:23px;background:#d5ded1;border-radius:15px;padding:3px;flex:none}.switch:after{content:'';display:block;width:17px;height:17px;background:white;border-radius:50%;box-shadow:0 1px 3px #0002}.toggle[aria-pressed=true] .switch{background:var(--teal)}.toggle[aria-pressed=true] .switch:after{transform:translateX(16px)}.audit-list{font-size:10px;list-style:none;padding:0;margin:14px 0}.audit-list li{padding:8px 0;border-bottom:1px solid var(--line);display:flex;gap:15px;justify-content:space-between}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;font-weight:650;color:var(--muted);font-size:10px}td,th{padding:13px 8px;border-bottom:1px solid var(--line);vertical-align:top}td .btn{font-size:9px;padding:7px;min-height:33px}.merchant-price-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-top:20px}.merchant-price-form label{display:flex;flex-direction:column;gap:7px}.merchant-price-form select{min-width:180px}.merchant-price-form input{width:110px}.scenario-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0}.scenario-grid .btn{justify-content:flex-start;text-align:left;font-size:11px}.qr-box{display:flex;align-items:center;gap:20px}.qr-box svg{width:120px;height:120px;flex:none}.qr-box a{word-break:break-all;font-size:10px}.empty-state{padding:28px 12px;text-align:center;color:var(--muted);font-size:12px}.empty-state .icon{width:33px;height:33px;margin-bottom:12px}.empty-state p{margin:10px 0}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);max-width:min(90vw,600px);background:#143d36;color:white;padding:15px 22px;border-radius:13px;box-shadow:0 12px 40px #143b4233;font-size:12px;z-index:120}.toast.error{background:#8e3e31}.loading{display:flex;gap:14px;align-items:center;justify-content:center;min-height:60vh;color:var(--muted)}.loader{width:23px;height:23px;border-radius:50%;border:2px solid #dce8d5;border-top-color:var(--teal);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}dialog{border:1px solid #d8e3d7;box-shadow:0 24px 100px #102c3650;border-radius:23px;max-width:min(620px,calc(100vw - 28px));width:620px;padding:26px;color:var(--ink);max-height:90dvh;overflow:auto}dialog::backdrop{background:#173f3ac0;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:flex-start;gap:16px;justify-content:space-between;margin-bottom:20px}.dialog-top h2{font-size:24px}.product-modal-top{display:grid;grid-template-columns:130px 1fr;gap:23px;align-items:center;margin-bottom:20px}.product-modal-top .product-art{height:140px}.product-modal-top h2{font-size:27px;margin:10px 0}.product-price{font-size:29px;letter-spacing:-1px;font-weight:700}.detail-list{display:grid;grid-template-columns:120px 1fr;gap:10px;font-size:12px;margin:19px 0}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0}.barcode-preview{border:1px solid var(--line);border-radius:11px;background:#fff;padding:10px;text-align:center;margin-top:15px}.barcode-preview svg{width:min(100%,340px);height:auto;max-height:110px}.camera-frame{position:relative;background:#152e2c;aspect-ratio:4/3;border-radius:14px;overflow:hidden}.camera-frame video{width:100%;height:100%;object-fit:cover}.camera-guide{position:absolute;top:25%;left:10%;width:80%;height:50%;border:2px solid #d9efb6;border-radius:10px;box-shadow:0 0 0 100px #0003}.file-label{position:relative;overflow:hidden;cursor:pointer}.file-label input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.payment-total{font-size:47px;letter-spacing:-2px;margin:13px 0}.mobile-only,.bottom-nav{display:none}.extra-space{margin-top:20px}.guide-steps{padding-left:20px;font-size:13px}.guide-steps li{padding:7px 0}.profile-note{padding:12px 0;font-size:10px;color:var(--muted)}.text-good{color:var(--teal)}.text-bad{color:var(--red)}.large-text{font-size:18px}.high-contrast{--ink:#102c28;--muted:#3d554c;--line:#adc3b2}.high-contrast .feature-nav-button{color:#294d3e}
@media(min-width:1600px){.app-layout{grid-template-columns:260px minmax(0,1fr)}.sidebar{padding-left:25px;padding-right:25px}}
@media(max-width:1250px){.app-layout{grid-template-columns:205px minmax(0,1fr)}main{padding:27px 25px}.sidebar{padding:25px 10px}.wordmark{min-width:150px}.app-header{gap:23px;padding:0 25px}.hero-grid{grid-template-columns:minmax(0,1fr) 230px}.welcome-card{padding:24px}.welcome-copy{max-width:78%}.hero-picture{opacity:.55;right:-26px}.shopping-layout{grid-template-columns:minmax(0,1fr) 275px;gap:16px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.features-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.three-columns{gap:12px}.compare-card{padding:16px}.breakdown-row{grid-template-columns:120px minmax(20px,1fr) 68px;gap:9px}}
@media(max-width:980px){.app-layout{grid-template-columns:190px minmax(0,1fr)}.hero-grid{grid-template-columns:1fr}.budget-card{display:none}.shopping-layout{grid-template-columns:1fr}.cart-panel{position:static}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.welcome-copy{max-width:75%}.hero-picture{right:7px;opacity:.9}.header-place{display:none}.header-actions{margin-left:auto}.two-columns,.budget-layout{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.three-columns{grid-template-columns:1fr}.result-detail{flex:none}.page-heading h1{font-size:29px}.page-heading{flex-wrap:wrap}}
@media(max-width:720px){body{font-size:14px}.app-header{height:69px;padding:0 17px;gap:12px}.wordmark{font-size:29px;min-width:0}.wordmark span{font-size:13px}.demo-tag{display:none}.header-actions{gap:4px}.avatar{width:31px;height:31px;font-size:10px;margin-left:4px}.app-layout{display:block;min-height:calc(100dvh - 69px)}.sidebar{position:fixed;z-index:55;left:0;top:69px;height:calc(100dvh - 69px);width:min(300px,90vw);transform:translateX(-102%);transition:transform .2s;box-shadow:10px 5px 35px #1b3e4320;padding:24px 16px 90px}.sidebar.open{transform:translateX(0)}.mobile-only{display:inline-flex}.feature-nav-button{font-size:13px}.sidebar-bottom{margin-top:25px}main{padding:25px 17px 100px}.page-heading{margin-bottom:22px;gap:14px}.page-heading h1{font-size:29px}.page-heading p.muted{font-size:12px}.eyebrow{font-size:9px}.hero-grid{margin-bottom:23px}.welcome-card{min-height:226px;padding:23px 21px}.welcome-copy{max-width:83%}.welcome-copy h1{font-size:31px}.welcome-copy>p:not(.eyebrow){font-size:11px;max-width:225px}.welcome-copy .btn{font-size:11px;padding:10px 12px}.hero-picture{width:130px;height:130px;right:-19px;bottom:-13px;opacity:.5;transform:scale(.9)}.hero-bag{left:18px;top:25px}.floating-receipt{right:-10px}.store-tab{padding:8px 10px;font-size:10px;gap:6px}.store-tabs{gap:6px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-art{height:120px}.product-card{padding:11px}.shopping-layout{gap:20px}.section-title h2{font-size:20px}.cart-head{padding:18px}.cart-line{padding:14px 18px}.cart-line h3{font-size:12px;max-width:220px}.cart-line p{font-size:11px}.cart-line .amount{font-size:13px}.cart-line .chip{font-size:9px}.quantity-control{font-size:11px}.cart-store-actions .btn{font-size:12px}.cart-summary{padding:20px}.features-strip{gap:9px}.feature-tile{padding:12px;gap:9px;min-height:90px}.tile-icon{padding:7px}.tile-icon .icon{width:18px;height:18px}.page-footer{font-size:9px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;min-height:66px;padding:7px 5px max(7px,env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(10px);border-top:1px solid var(--line);z-index:50}.bottom-nav button{display:flex;align-items:center;flex-direction:column;gap:5px;background:transparent;border:0;color:#718278;font-size:9px;min-height:47px}.bottom-nav button .icon{width:20px;height:20px}.bottom-nav button.active{color:var(--teal);font-weight:700}.toast{bottom:84px;width:calc(100vw - 34px);max-width:600px;font-size:12px}.panel{padding:20px}.stats-grid{gap:10px}.stat-box{padding:15px}.stat-box strong{font-size:26px}.breakdown-row{grid-template-columns:105px minmax(20px,1fr) 70px;font-size:10px;gap:9px}.form-grid{grid-template-columns:1fr}.scenario-grid{grid-template-columns:1fr}.order-card{padding:19px}.order-steps{gap:4px}.order-step{font-size:8px}.order-amount{font-size:24px}.qr-box{flex-wrap:wrap}.budget-layout{gap:14px}dialog{padding:21px;max-width:calc(100vw - 20px);border-radius:18px;max-height:92dvh}.product-modal-top{grid-template-columns:95px minmax(0,1fr);gap:17px}.product-modal-top .product-art{height:115px}.product-modal-top h2{font-size:23px}.detail-list{grid-template-columns:95px 1fr;font-size:11px}.btn{min-height:45px}.input-row .btn{padding:10px 12px}.camera-frame{aspect-ratio:1/1}.table-scroll{margin:0 -10px}.merchant-price-form label{width:100%}.merchant-price-form select,.merchant-price-form input{width:100%}.merchant-price-form .btn{width:100%}.access-card{padding:21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{body>*{display:none!important}#receiptPrint{display:block!important;font:14px/1.6 system-ui;color:#000;padding:24px}#receiptPrint table{font-size:12px}#receiptPrint h1{font-size:24px}}

@media(max-width:720px){.role-label{display:none}#roleButton{min-width:40px;min-height:42px;padding:9px}.product-card h3{font-size:13px}.sidebar-bottom .subtle-link{font-size:12px}}

/* Shared test session and merchant operations, release 3.1. */
.session-panel{padding:16px 20px;margin:0 0 24px;border:1px solid var(--line,#d7e1d8);border-radius:18px;background:#f4f8ef;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.session-panel>div:first-child{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.session-panel strong{letter-spacing:.08em}.session-panel .button-row{margin:0}.session-links{width:100%;border-top:1px solid #d6e1d9;padding-top:16px}.session-links label{display:block;margin:12px 0}.session-links input{width:100%;margin-top:6px;font-size:13px}.session-panel:has(.session-links)>div:last-child{width:100%}
.merchant-price-form{grid-template-columns:repeat(2,minmax(0,1fr))!important}.merchant-price-form label{min-width:0}.merchant-price-form input,.merchant-price-form select{width:100%}.merchant-price-form .check-row{align-self:center}.merchant-price-form>button{align-self:end}
.test-function-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.test-function-grid .feature-tile{min-width:0}.return-row{padding:16px 0;border-bottom:1px solid #d6e1d9}#merchantRefundForm{padding-top:22px;margin-top:20px;border-top:1px solid #d6e1d9}#merchantStockForm>button,#merchantRefundForm>button{margin-top:14px}#merchantRefundForm select{margin:8px 0 14px;width:100%}.session-links .input-row{align-items:end}
@media(max-width:900px){.test-function-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.session-panel{padding:15px}.session-panel .button-row{width:100%}}
@media(max-width:520px){.merchant-price-form{grid-template-columns:minmax(0,1fr)!important}.test-function-grid{grid-template-columns:minmax(0,1fr)}.session-panel>div:first-child{gap:8px}.session-panel strong{font-size:15px}}
