:root{--bg:#f6f7fb;--paper:#fff;--ink:#18233f;--muted:#67728a;--line:#e2e6ee;--blue:#234ae8;--light:#eef2ff;--green:#147254;--orange:#996000;--radius:16px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:16px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #ffbb45;outline-offset:3px}a{color:var(--blue);text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:36px;line-height:1.3;letter-spacing:-1px}h2{font-size:23px;line-height:1.4;margin-bottom:16px}h3{font-size:17px}.top{max-width:1440px;margin:auto;padding:22px 48px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:15px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;color:var(--ink);line-height:1.3}.brand small{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:5px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--blue);color:white;border-radius:12px;font-size:29px;font-weight:900}.top nav{display:flex;gap:20px}.nav-button{border:0;background:none;padding:8px 0;color:var(--muted);font-size:14px;border-bottom:2px solid transparent}.nav-button.active{color:var(--blue);border-color:var(--blue)}main{max-width:1344px;margin:0 auto;padding:0 0 48px}.intro{display:flex;justify-content:space-between;align-items:center;padding:38px 0 22px}.intro h1{margin-bottom:12px}.intro p:not(.eyebrow){color:var(--muted);margin-bottom:0}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--blue);margin-bottom:12px}.edition{display:flex;align-items:center;gap:16px;color:var(--blue);border:1px dashed #a0b0f2;border-radius:12px;padding:10px 24px}.edition strong{font-size:48px;line-height:1.2}.edition span{font-size:14px}.deals{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 30px}.deal{padding:7px 13px;border-radius:6px;background:var(--light);color:#344cad;font-size:14px}.deal.neutral{background:#eaeef4;color:var(--muted)}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start}.section-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-top h2{margin-bottom:0}.muted,.help{color:var(--muted)}.section-top>span{font-size:14px}.categories{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px}.category{border:1px solid var(--line);background:white;color:var(--muted);padding:8px 16px;border-radius:24px;font-size:14px}.category.active{background:var(--ink);border-color:var(--ink);color:white}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px}.product{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .15s,box-shadow .15s;min-width:0}.product.selected{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue)}.image-button{display:block;background:#edf0f6;border:0;padding:12px;width:100%;cursor:zoom-in;aspect-ratio:1.26}.image-button img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 5px #17203716)}.product-body{padding:14px}.product-tag{font-size:12px;color:var(--muted);margin-bottom:5px}.product h3{font-size:15px;line-height:1.5;margin:0 0 12px;min-height:45px}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:6px}.price{font-size:18px;font-weight:750}.stepper{display:flex;align-items:center;background:var(--bg);border-radius:8px;height:34px}.stepper button{width:30px;height:34px;border:0;background:none;color:var(--ink);font-size:20px;padding:0}.stepper input{width:28px;padding:0;text-align:center;border:0;background:none;font-size:14px;color:var(--ink);appearance:textfield}.stepper input::-webkit-inner-spin-button{appearance:none}.thumbs{display:flex;gap:5px;margin:8px 0;overflow:auto}.thumbs button{padding:0;border:0;background:none;flex:0 0 40px;height:48px;cursor:zoom-in}.thumbs img{width:100%;height:100%;object-fit:contain}.bundle-detail{font-size:13px;color:var(--muted);margin-bottom:12px}.checkout{position:sticky;top:20px;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px}.checkout h2{margin-bottom:20px}.cart-lines{max-height:220px;overflow:auto;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:15px;font-size:14px}.cart-row{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.cart-row span{min-width:0}.cart-row b{white-space:nowrap;font-weight:500}.total-lines{margin-bottom:24px}.total-row{display:flex;justify-content:space-between;font-size:14px;margin:5px 0}.total-row.final{font-size:17px;font-weight:700;margin-top:12px}.total-row.final strong{font-size:26px;color:var(--blue)}.discount{color:var(--green)}label{display:block;font-size:14px;color:var(--muted);margin-bottom:14px}input,select,textarea{display:block;border:1px solid var(--line);background:#fbfcff;border-radius:8px;padding:10px 12px;width:100%;color:var(--ink);min-width:0;margin-top:6px}input:focus,select:focus,textarea:focus{outline:2px solid #9cacff;border-color:var(--blue)}.help{font-size:13px;line-height:1.7}.primary,.secondary,.danger{border:0;border-radius:9px;padding:12px 18px;font-weight:650;font-size:14px}.primary{color:white;background:var(--blue)}.secondary{background:var(--light);color:var(--blue)}.danger{background:#fff0ea;color:#b64321}.wide{width:100%}footer{max-width:1344px;margin:0 auto;padding:24px 0 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:13px}footer a{color:var(--muted)}.mobile-cart{display:none}[hidden]{display:none!important}dialog{border:1px solid var(--line);border-radius:20px;padding:28px;max-width:560px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#111b39bb;backdrop-filter:blur(4px)}dialog .close{position:absolute;right:10px;top:10px;width:36px;height:36px;border:0;border-radius:50%;background:white;color:var(--ink);font-size:25px;z-index:1}#zoom{max-width:1000px;text-align:center;background:#fafbfe}#zoom img{width:100%;max-height:73dvh;object-fit:contain}#zoom p{margin:10px 0 0}#message{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);max-width:calc(100% - 32px);background:var(--ink);color:white;border-radius:10px;padding:12px 20px;z-index:30;box-shadow:0 8px 40px #111b3933}.order-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-top:20px}.order-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.order-id{font:600 15px/1.5 ui-monospace,monospace;overflow-wrap:anywhere}.badge{display:inline-block;background:var(--light);color:var(--blue);font-size:14px;padding:4px 10px;border-radius:6px}.badge.pending{background:#fff4d7;color:var(--orange)}.badge.paid{background:#e4f5ed;color:var(--green)}.order-info{font-size:14px;color:var(--muted)}.order-products{margin:15px 0}.payment{background:var(--bg);border:1px dashed #c8d1e4;padding:20px;border-radius:12px;margin-top:20px}.payment-placeholder{border:2px dashed #a7b2cd;background:white;max-width:260px;padding:32px 16px;text-align:center;margin-bottom:16px}.payment img{max-width:240px;width:100%}.actions{display:flex;gap:10px;flex-wrap:wrap}.empty{padding:60px 20px;background:white;border:1px dashed var(--line);border-radius:16px;text-align:center}.empty h2{margin-bottom:10px}#my-orders{padding-top:32px}.login{max-width:420px;margin:64px auto}.admin-main{padding-top:30px}.admin-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.admin-toolbar label{flex:1;min-width:130px;margin:0}.admin-nav{display:flex;gap:8px;margin-bottom:24px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:20px}.stat strong{display:block;font-size:30px}.stat span{color:var(--muted);font-size:14px}.table-scroll{overflow:auto;background:white;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;font-size:14px}td,th{padding:12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{background:#f0f3fa;white-space:nowrap}td .secondary{padding:6px 10px}.config-card{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:20px}.config-products input{min-width:90px}.config-products .name-input{min-width:180px}.config-products .items-input{min-width:200px}.config-products input[type=checkbox],input[type=checkbox]{display:inline;width:18px;height:18px;vertical-align:middle}.notice{padding:14px 18px;border-radius:10px;background:#fff5dc;color:#795712;font-size:14px;margin-bottom:20px}.error-text{color:#b22d35}.config-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.tiny{font-size:12px}#admin-orders .order-card{margin:0 0 14px}.admin-title{display:flex;gap:12px;justify-content:space-between;align-items:center}.admin-title h1{margin:0}.check-label{color:var(--ink);display:flex;gap:10px;align-items:flex-start}.check-label input{flex-shrink:0;margin-top:5px}
@media(max-width:1450px){main,footer{margin-left:48px;margin-right:48px}}@media(max-width:1150px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-layout{gap:24px;grid-template-columns:minmax(0,1fr) 300px}.top{padding:20px 32px}main,footer{margin-left:32px;margin-right:32px}}@media(max-width:760px){.top{padding:16px 20px}.top nav{gap:14px}.brand{font-size:14px}.brand-mark{width:35px;height:35px}.brand small{font-size:12px}.nav-button{font-size:13px}main,footer{margin-left:20px;margin-right:20px}.intro{padding:28px 0 20px}.intro h1{font-size:29px}.intro p:not(.eyebrow){font-size:14px}.edition{display:none}.eyebrow{font-size:11px}.deals{gap:6px;margin-bottom:26px}.deal{font-size:12px;padding:6px 10px}.shop-layout{display:block}.section-top>span{font-size:12px}.section-top h2{font-size:21px}.products{gap:14px 10px}.product-body{padding:11px}.product h3{font-size:14px}.product-bottom{flex-wrap:wrap}.price{font-size:17px}.image-button{padding:8px;aspect-ratio:1.1}.category{padding:7px 13px}.categories{gap:7px;margin:15px 0 18px}.checkout{position:static;margin-top:32px;padding:22px}.mobile-cart{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:space-between;align-items:center;background:#fffffff5;backdrop-filter:blur(15px);border-top:1px solid var(--line);padding:12px 20px calc(12px + env(safe-area-inset-bottom));z-index:5}.mobile-cart small{display:block;color:var(--muted);font-size:12px}.mobile-cart strong{font-size:24px}.mobile-cart button{padding:12px 24px}footer{padding-bottom:120px;font-size:12px}#message{bottom:100px;width:max-content;max-width:90vw}.order-card{padding:18px}.order-head{gap:10px}.config-grid{grid-template-columns:1fr}.stats{gap:8px}.stat{padding:13px}.stat strong{font-size:24px}.admin-title h1{font-size:27px}.config-card{padding:16px}.login{margin:35px auto}body.admin footer{padding-bottom:25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}} 

.payment-code{display:block;width:100%;max-width:320px;margin-bottom:16px}.payment-code img{display:block;width:100%;max-width:320px;height:auto}.payment-code span{display:block;margin-top:8px;font-size:14px}

.mailing-guide{font-size:13px;background:#eef2f8;border-radius:10px;padding:12px 16px;margin-bottom:18px}.mailing-guide p{margin:10px 0}.mailing-note{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 14px;padding:8px 10px;border-radius:7px;background:#f1f3f7;text-align:left}.mailing-note.warning{color:#87520c;background:#fff3dc}.mailing-note summary,.mailing-guide summary{cursor:pointer}.mailing-note p{margin:8px 0 0;overflow-wrap:anywhere}#zoom-mailing{margin-top:12px}.print-size{display:flex;gap:5px}.print-size input{width:90px}

.arrival-notice{padding:12px 16px;background:#e8f3ef;color:#1d644d;border:1px solid #cbe3d9;border-radius:10px;font-size:14px;margin-bottom:16px}.arrival-order{font-size:13px;color:#1d644d;margin:12px 0;}

.bundle-items{list-style:none;padding:0;margin:10px 0}.bundle-items li{padding:9px 0;border-bottom:1px solid var(--line)}.bundle-items li:last-child{border-bottom:0}.bundle-items .mailing-note{margin:5px 0 0;padding:5px 8px;font-size:12px}.bundle-items li>span{font-size:13px}

.cancel-detail{margin:18px 0;padding:14px 18px;background:#fff5e5;border:1px solid #efdab6;border-radius:12px;overflow-wrap:anywhere}.cancel-detail p{margin:6px 0}.badge.cancelled{background:#e7e9ef;color:#4c556c}.cancel-actions{margin-top:18px}.cancel-hint{max-width:56em}.cancel-error{color:#b12638;white-space:pre-wrap}#cancel-dialog,#resolve-dialog{max-width:520px;width:calc(100% - 32px)}
