/* style.css */
:root{--ink:#273b2f;--muted:#626b60;--accent:#4c623d;--canvas:#ecebe4;--paper:#faf9f4;--line:#dedfd4;--soft:#edf0e5;--amber:#81531d;--amberbg:#f6eddc;--red:#964739;--shadow:0 1px 2px #26302012,0 5px 13px #26302006;--r:12px;--pad:28px;--nav:76px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.5}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #698d54;outline-offset:3px}button{border:0}svg{display:block}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:42px;line-height:1.08;letter-spacing:-1.8px;font-weight:650}h2{font-size:23px;letter-spacing:-.65px;font-weight:650}h3{font-size:16px;line-height:1.4;font-weight:650}.muted{color:var(--muted)}.small{font-size:13px;line-height:1.6}.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:650;text-transform:uppercase}.reviewbar{min-height:48px;background:#293b30;color:#f7f7ef;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 24px;font-size:11px;letter-spacing:.6px}.reviewbar>span{display:flex;gap:7px;align-items:center}.reviewbar i{width:6px;height:6px;background:#c6d1a7;border-radius:50%}.review-note{opacity:.7;letter-spacing:0}.role-switch{display:flex;background:#192b20;padding:3px;border-radius:8px;gap:3px}.role-switch button{background:transparent;color:#d8dfd5;padding:8px 14px;border-radius:5px;font-size:12px;min-height:34px}.role-switch button[aria-pressed=true]{background:#eef0e5;color:#2b3e30}.reset{color:#e2e7dd;background:transparent;text-decoration:underline;text-underline-offset:3px;min-height:34px;font-size:12px}.site{max-width:1280px;margin:auto;background:var(--paper);min-height:calc(100dvh - 48px);box-shadow:0 0 70px #273b2f04}.site-header{min-height:88px;margin:0 var(--pad);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center;background:transparent;text-align:left;padding:8px 0}.brand-mark{width:38px;height:38px;background:var(--ink);color:#fcfbf2;border-radius:50% 50% 50% 8px;display:grid;place-items:center;transform:rotate(-12deg)}.brand-mark svg{transform:rotate(12deg)}.brand-name{font-size:18px;font-weight:650;letter-spacing:-.5px}.brand small{font-size:11px;display:block;color:var(--muted);margin-top:2px}.desktop-nav{display:flex;gap:10px;align-items:center}.desktop-nav button{background:transparent;display:flex;align-items:center;gap:8px;padding:12px 15px;font-size:14px;border-radius:8px;min-height:44px}.desktop-nav button.active{background:var(--soft)}.count{font-size:11px;border-radius:50%;min-width:20px;height:20px;background:var(--ink);color:white;display:inline-grid;place-items:center;padding:0 4px}.body{padding:34px var(--pad) 50px}.catalog-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:30px}.catalog-heading h1{margin:10px 0 12px}.catalog-heading p{max-width:430px;line-height:1.65;font-size:14px}.delivery-note{border-left:1px solid var(--line);padding:4px 0 4px 26px;font-size:13px;line-height:1.7;max-width:280px}.delivery-note strong{display:block;font-size:14px;margin-bottom:3px}.tools{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px;align-items:center}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{border:1px solid var(--line);border-radius:24px;background:transparent;padding:10px 17px;min-height:42px;font-size:13px}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.search{display:flex;align-items:center;gap:9px;background:#eeefe7;border:1px solid transparent;border-radius:9px;padding:0 13px;min-height:46px;min-width:240px}.search input{border:0;outline:none;background:transparent;width:100%;min-width:0;color:var(--ink);font-size:14px;padding:12px 0}.search:focus-within{border-color:var(--accent)}.section-line{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin:6px 0 16px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.paper{background:#fffefb;border:1px solid #e4e3d9;border-radius:var(--r);box-shadow:var(--shadow);position:relative}.paper:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23999' filter='url(%23n)' opacity='.12' d='M0 0h160v160H0z'/%3E%3C/svg%3E");opacity:.18}.product-card{padding:12px;display:flex;flex-direction:column;min-width:0}.product-open{display:block;width:100%;padding:0;background:transparent;text-align:left}.product-art{height:214px;background:#eff0e8;border-radius:7px;display:grid;place-items:center;position:relative;overflow:hidden}.product-art:after{content:"";position:absolute;width:110px;height:10px;background:#14271616;filter:blur(7px);border-radius:50%;bottom:23px}.product-art svg{width:145px;height:180px;filter:drop-shadow(3px 7px 3px #24352612);z-index:1}.product-art .mini-note{position:absolute;top:12px;right:12px;color:#6d7667;font-size:10px;letter-spacing:1.6px;writing-mode:vertical-rl}.product-card .category{margin:17px 5px 5px;font-size:10px;letter-spacing:1.4px;color:var(--muted);text-transform:uppercase}.product-card h3{margin:0 5px 5px;min-height:44px}.product-card .volume{margin:0 5px;font-size:12px;color:var(--muted)}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:17px 5px 10px}.price{font-size:20px;letter-spacing:-.5px;font-weight:650}.stock{font-size:11px;display:flex;gap:5px;align-items:center;line-height:1.4}.stock:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.stock.low{color:var(--amber)}.stock.low:before{background:var(--amber)}.stock.zero{color:var(--muted)}.stock.zero:before{background:#929a8c}.btn{min-height:46px;border:1px solid #d0d4c4;border-radius:8px;padding:11px 16px;font-size:14px;font-weight:550;background:#f4f5ee;box-shadow:inset 0 1px #ffffff,0 1px 1px #2535210b;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.4}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:inset 0 1px #ffffff22,0 2px 2px #25352115}.btn.danger{color:var(--red);background:#fcf5f0;border-color:#e6cfc2}.btn.link{border:0;box-shadow:none;background:transparent;text-decoration:underline;text-underline-offset:3px}.btn.full{width:100%}.btn.small{font-size:12px;min-height:40px;padding:8px 11px}.product-card>.btn{margin-top:auto}.empty{padding:55px 24px;text-align:center;grid-column:1/-1}.empty .icon{margin:0 auto 16px;width:32px;height:32px}.empty p{margin:12px auto 22px;max-width:400px;line-height:1.6;color:var(--muted)}.page-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:26px}.page-title h1{margin-top:8px;font-size:34px}.back{background:transparent;min-height:44px;padding:0;display:flex;gap:7px;align-items:center;font-size:13px}.two-col{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;align-items:start}.panel{padding:24px}.panel h2{margin-bottom:18px}.line-item{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.line-item:first-child{padding-top:0}.line-item:last-child{border-bottom:0}.mini-art{height:74px;background:#eff0e6;border-radius:6px;display:grid;place-items:center}.mini-art svg{height:64px;width:48px}.line-item h3{font-size:14px}.line-item .muted{font-size:12px;line-height:1.6;margin-top:4px}.item-end{text-align:right}.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:7px;background:#f7f7f1;margin-top:9px}.qty button{width:36px;height:38px;background:transparent;font-size:18px}.qty span{min-width:25px;text-align:center;font-size:13px}.total{display:flex;justify-content:space-between;align-items:center;margin:20px 0;font-size:15px}.total strong{font-size:26px;letter-spacing:-.8px}.divider{height:1px;background:var(--line);margin:20px 0}.field{display:block;margin-bottom:18px;font-size:13px;font-weight:550}.field input,.field select{display:block;width:100%;min-height:46px;border:1px solid #cfd3c6;border-radius:7px;background:#fffefb;margin-top:7px;padding:10px 12px;color:var(--ink)}.notice{padding:14px 16px;border-radius:8px;background:var(--soft);font-size:13px;line-height:1.65}.notice.amber{background:var(--amberbg);color:#6c4c23}.notice p+p{margin-top:6px}.notice .eyebrow{font-size:10px;margin-bottom:6px}.section-gap{margin-top:20px}.meta-row{display:flex;justify-content:space-between;gap:14px;font-size:13px;padding:9px 0}.meta-row span:first-child{color:var(--muted)}.status{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:6px;background:var(--soft);font-size:12px;line-height:1.4}.status.amber{color:#79521f;background:var(--amberbg)}.status:before{content:"";height:5px;width:5px;border-radius:50%;background:currentColor}.order-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.order-header h1{font-size:32px}.order-meta{font-size:12px;color:var(--muted);margin-top:7px}.order-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}.order-section+.order-section{margin-top:20px}.chat-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:17px}.avatar{width:35px;height:35px;border-radius:50%;background:#e4e8d8;display:grid;place-items:center;font-size:12px;font-weight:600}.person{display:flex;align-items:center;gap:10px}.chat-heading h3{font-size:14px}.chat-heading small{font-size:11px;color:var(--muted)}.messages{padding:18px 0;display:flex;flex-direction:column;gap:12px;min-height:200px;max-height:370px;overflow:auto}.message{max-width:92%;background:#f0f0e8;border-radius:9px 9px 9px 2px;padding:12px 14px;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.message.mine{align-self:flex-end;background:#e4ebd9;border-radius:9px 9px 2px 9px}.message small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.chat-compose{display:flex;gap:7px;align-items:flex-end}.chat-compose textarea{resize:vertical;min-height:46px;max-height:130px;width:100%;border:1px solid #cfd3c6;border-radius:7px;padding:11px 12px;background:#fffefa;font-size:13px;color:var(--ink)}.chat-compose button{width:46px;height:46px;flex-shrink:0;padding:0}.replacement{background:#f5f3e8;border:1px solid #e3dcc5;border-radius:10px;padding:19px;margin-top:20px}.replacement h3{margin:8px 0}.replacement .line-item{padding:13px 0;border:0}.replacement-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.bottom-nav{display:none}.demo-state{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:16px;font-size:11px;color:var(--muted)}.demo-state button{padding:7px 10px;border:1px dashed #c2c8b5;background:transparent;border-radius:5px;font-size:11px;min-height:32px}.demo-state button.active{background:#e7ebdc;border-style:solid;color:var(--ink)}.progress{display:flex;margin:18px 0 23px;gap:5px}.progress span{height:3px;background:#dfe3d5;flex:1}.progress .done{background:var(--accent)}.desk-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100dvh - 48px);max-width:1600px;margin:auto}.sidebar{background:#f5f5ed;padding:30px 20px;display:flex;flex-direction:column;border-right:1px solid var(--line)}.sidebar .brand{margin-bottom:35px}.side-nav{display:flex;flex-direction:column;gap:7px}.side-nav button{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 13px;text-align:left;background:transparent;border-radius:8px;font-size:14px}.side-nav button.active{background:#e4e9d7}.side-nav .badge{margin-left:auto;color:var(--amber);font-size:12px}.sidebar-foot{margin-top:auto;padding-top:30px;color:var(--muted);font-size:12px;line-height:1.8}.staff-main{background:var(--paper);padding:32px}.staff-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:29px;gap:20px}.staff-header h1{margin-top:9px}.staff-profile{display:flex;align-items:center;gap:10px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 26px}.stat{padding:18px 20px;border:1px solid var(--line);border-radius:9px;background:#f7f7ef}.stat span{font-size:12px;color:var(--muted)}.stat strong{display:block;font-size:32px;font-weight:550;margin-top:10px;letter-spacing:-1px}.stat.active{background:#e8eddc;border-color:#d2ddbc}.staff-content{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:22px}.work-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.work-head h2{font-size:22px}.work-label{margin:20px 0 11px;font-size:11px;letter-spacing:1.4px;color:var(--muted);text-transform:uppercase;display:flex;align-items:center;gap:10px}.work-label:after{content:"";height:1px;flex:1;background:var(--line)}.task{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;text-align:left;align-items:center;padding:19px;margin-bottom:11px;min-height:104px}.task .task-icon{width:40px;height:40px;border-radius:9px;background:#edf0e4;display:grid;place-items:center}.task .small{margin:5px 0}.task .task-side{text-align:right;font-size:12px;color:var(--muted)}.task .task-side strong{display:block;font-size:16px;color:var(--ink);margin-bottom:7px}.task .tag{font-size:11px;padding:5px 8px;background:#edf0e5;border-radius:4px;display:inline-block}.task .tag.amber{background:var(--amberbg);color:var(--amber)}.side-paper{padding:20px;margin-bottom:16px}.side-paper h3{margin-bottom:13px;font-size:15px}.timeline{list-style:none;margin:0;padding:0}.timeline li{padding:0 0 20px 18px;border-left:1px solid #d4d9c7;font-size:12px;line-height:1.5;position:relative}.timeline li:before{content:"";position:absolute;left:-4px;top:3px;width:7px;height:7px;border-radius:50%;background:#819565}.timeline li:last-child{padding-bottom:0}.timeline strong{display:block;margin-bottom:3px}.timeline time{display:block;color:var(--muted);font-size:10px;margin-top:5px}.day-plan{display:grid;gap:8px}.day-plan div{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:11px 0;border-bottom:1px solid var(--line)}.day-plan div:last-child{border:0}.staff-main .order-layout{grid-template-columns:minmax(0,1fr) 340px}.batch{margin-top:15px;padding:10px 12px;background:#eff1e7;font-size:12px;border-radius:6px;line-height:1.6}.batch strong{font-weight:550}.footer{margin-top:35px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;font-size:11px;line-height:1.7;color:var(--muted)}dialog{border:1px solid #d4d7c9;border-radius:16px;padding:0;background:var(--paper);color:var(--ink);max-width:690px;width:calc(100% - 32px);max-height:90dvh;box-shadow:0 22px 90px #13231635}dialog::backdrop{background:#14271a66}.dialog-content{padding:25px}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.close{width:42px;height:42px;background:#edf0e5;border-radius:50%;font-size:23px;flex-shrink:0}.product-detail{display:grid;grid-template-columns:1fr 1.2fr;gap:25px}.product-detail .product-art{height:260px}.product-detail h2{margin:12px 0}.product-detail p{font-size:13px;color:var(--muted);line-height:1.7;margin:15px 0}.product-detail .price{margin:20px 0}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}#toast{position:fixed;left:50%;transform:translate(-50%,15px);bottom:calc(26px + env(safe-area-inset-bottom));background:#263e2e;color:white;box-shadow:0 8px 30px #16291e30;border-radius:10px;padding:14px 22px;z-index:100;max-width:calc(100% - 32px);font-size:13px;line-height:1.5;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s}#toast.show{opacity:1;transform:translate(-50%,0)}.noshrink{flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1500px){.site{margin-top:20px;margin-bottom:20px;border-radius:16px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1150px){.staff-content{grid-template-columns:1fr}.staff-aside{display:grid;grid-template-columns:1fr 1fr;gap:16px}.staff-aside .side-paper{margin:0}.desk-shell{grid-template-columns:190px minmax(0,1fr)}.staff-main{padding:25px}.staff-main .order-layout{grid-template-columns:1fr}.review-note{display:none}.two-col{grid-template-columns:minmax(0,1fr) 300px}.order-layout{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:760px){:root{--pad:20px}.reviewbar{padding:7px 12px;gap:8px;flex-wrap:wrap}.reviewbar>span{font-size:9px;letter-spacing:.4px}.role-switch button{font-size:11px;padding:7px 10px;min-height:34px}.reset{font-size:10px}.site{min-height:100dvh}.site-header{min-height:72px;gap:10px}.brand-name{font-size:16px}.brand-mark{width:32px;height:32px}.brand small{font-size:10px}.desktop-nav{display:none}.body{padding-top:25px;padding-bottom:110px}.catalog-heading{display:block;margin-bottom:23px}.catalog-heading h1{font-size:34px;letter-spacing:-1.4px;margin-top:10px}.catalog-heading p{font-size:13px;max-width:330px}.delivery-note{border-left:0;border-top:1px solid var(--line);padding:13px 0 0;margin-top:20px;max-width:none;font-size:12px}.delivery-note strong{font-size:12px;display:inline}.delivery-note br{display:none}.tools{flex-direction:column-reverse;align-items:stretch;gap:14px}.search{min-width:0;min-height:46px}.chips{gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.chip{white-space:nowrap;min-height:40px;padding:9px 14px;font-size:12px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.product-card{padding:8px;border-radius:10px}.product-art{height:158px}.product-art svg{width:103px;height:139px}.product-art:after{width:75px;bottom:13px}.product-art .mini-note{right:7px;top:9px;font-size:8px}.product-card .category{font-size:9px;margin:13px 3px 5px;letter-spacing:1px}.product-card h3{font-size:13px;min-height:55px;margin:0 3px 5px;line-height:1.45}.product-card .volume{font-size:11px;margin:0 3px}.product-bottom{display:block;margin:13px 3px 10px}.product-bottom .price{font-size:18px}.product-bottom .stock{font-size:10px;margin-top:6px;min-height:14px}.product-card>.btn{font-size:12px;min-height:42px;padding:9px 5px}.product-card>.btn .icon{width:16px;height:16px}.section-line{font-size:11px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;justify-content:space-around;gap:4px;background:#fafbf5f5;border-top:1px solid #dce1d0;backdrop-filter:blur(12px);padding:8px 10px calc(8px + env(safe-area-inset-bottom));min-height:70px}.bottom-nav button{position:relative;display:flex;flex:1;max-width:150px;align-items:center;justify-content:center;flex-direction:column;gap:4px;background:transparent;border-radius:8px;min-height:52px;font-size:10px;color:#626f5a;padding:6px 4px}.bottom-nav button.active{background:#e8eedc;color:#384f2c}.bottom-nav .count{position:absolute;top:1px;left:calc(50% + 4px);height:17px;min-width:17px;font-size:9px}.footer{font-size:10px}.footer span:last-child{display:none}.two-col,.order-layout{grid-template-columns:1fr;gap:17px}.panel{padding:18px}.panel h2{font-size:20px}.page-title h1{font-size:30px}.page-title{align-items:center}.order-header h1{font-size:27px}.order-header{align-items:flex-start}.order-meta{font-size:11px}.status{font-size:10px;padding:6px 8px;max-width:155px}.line-item{grid-template-columns:49px minmax(0,1fr) auto;gap:10px}.mini-art{height:64px}.mini-art svg{height:55px;width:42px}.line-item h3{font-size:12px}.line-item .muted{font-size:11px}.line-item .price{font-size:16px}.qty button{width:30px;height:34px}.qty span{min-width:19px}.replacement{padding:15px}.replacement-actions .btn{font-size:12px;padding:10px 12px}.messages{min-height:170px}.desk-shell{display:block}.sidebar{display:none}.staff-main{padding:25px 18px 110px;min-height:100dvh}.staff-header{margin-bottom:22px}.staff-header h1{font-size:32px}.staff-profile>span{display:none}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:25px}.stat{padding:14px 16px}.stat strong{font-size:27px;margin-top:6px}.stat span{font-size:11px}.staff-aside{display:block}.staff-aside .side-paper{margin-top:16px}.task{padding:15px 13px;gap:10px;grid-template-columns:35px minmax(0,1fr) auto;min-height:112px}.task .task-icon{width:33px;height:36px}.task h3{font-size:13px}.task .small{font-size:11px}.task .task-side{font-size:10px}.task .task-side strong{font-size:14px}.task .tag{font-size:9px}.work-head h2{font-size:20px}.work-head .small{font-size:11px}.staff-main .order-layout{grid-template-columns:1fr}.staff-main .page-title h1{font-size:28px}.product-detail{grid-template-columns:1fr}.product-detail .product-art{height:190px}.product-detail .product-art svg{height:165px;width:125px}.dialog-content{padding:20px}.dialog-top{margin-bottom:16px}.dialog-top h2{font-size:20px}#toast{bottom:calc(87px + env(safe-area-inset-bottom));font-size:12px;width:max-content}.demo-state{font-size:10px}.demo-state button{font-size:10px}}
@media(max-width:350px){:root{--pad:14px}.reviewbar{padding:6px 8px}.reviewbar>span{font-size:8px}.role-switch button{padding:6px 7px;font-size:10px}.catalog-grid{gap:8px}.product-art{height:140px}.product-art svg{height:120px}.product-card h3{font-size:12px}.product-card>.btn{font-size:11px}.task{grid-template-columns:minmax(0,1fr) auto}.task-icon{display:none!important}.staff-main{padding-inline:14px}.line-item{grid-template-columns:42px minmax(0,1fr) auto;gap:7px}.order-header{gap:5px}.order-header h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Final first-pass refinements: compact catalogue and mobile hit areas. */
@media(max-width:760px){.product-card>.btn{min-height:44px}.chip{min-height:44px}.catalog-heading h1{font-size:32px}.catalog-heading p{line-height:1.5}.delivery-note{margin-top:14px;padding-top:10px}}

/* paper-v2.css */
/* Revision 2. Material adapted from the owner's ORIHIRO paper v15 reference.
   The local grain asset is copied unchanged; source projects are not modified. */
:root{--canvas:#dfe2d8;--paper:#f3f4ed;--ink:#293d2b;--muted:#596654;--accent:#425c35;--line:#d4d8c8;--r:5px;--sc:36,48,25;--ec:91,110,68;--grain:url('assets/paper-grain.webp');--edge:inset 0 1px 0 #fffffff2,inset 0 0 0 .5px #5b6e4429,inset 0 -1px 0 #5b6e4414;--shadow:0 .5px 1px #2430192e,0 6px 10px -5px #2430194d}
body{background:radial-gradient(100% 60% at 15% 0%,#f3f4ed99,transparent 80%),#dfe2d8}
.site{isolation:isolate;position:relative;background:radial-gradient(120% 90% at 22% 12%,#ffffff8c,transparent 60%),radial-gradient(140% 120% at 80% 100%,#5b6e4414,transparent 55%),var(--paper);margin:24px auto 30px;width:calc(100% - 48px);border-radius:7px;box-shadow:inset 0 1px 0 #ffffffcc,0 .5px 1px #2430192e,0 2px 4px #24301914,0 26px 40px -26px #24301980;min-height:calc(100dvh - 100px)}
.site:before,.staff-main:before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;background:var(--grain) 0 0/400px auto;mix-blend-mode:multiply;opacity:.09}
.site-header{margin:0 32px;min-height:88px}.body{padding:34px 32px 45px}.brand-mark{border-radius:6px;box-shadow:inset 0 1px #ffffff44,0 2px 3px #24301933}.brand-name{font-weight:650}
.paper{isolation:isolate;background:radial-gradient(110% 80% at 0% 0%,#fff,#fcfcf8 65%,#f8f9f2);border:0;border-radius:5px;box-shadow:var(--edge),var(--shadow)}
.paper:before{z-index:-1;background:var(--grain) var(--gx,0) var(--gy,0)/400px auto;mix-blend-mode:multiply;opacity:.065}
.catalog-grid{gap:24px}.product-card{padding:15px;--gx:-74px;--gy:-38px;box-shadow:var(--edge),0 .5px 1px #24301933,0 9px 13px -7px #24301961;overflow:visible}
.product-card:nth-child(2n){--gx:-190px;--gy:-102px}.product-card:nth-child(3n){--gx:-38px;--gy:-280px}
.product-art{background:radial-gradient(ellipse at 35% 20%,#fafbf6,#ebeee2)!important;border-radius:1px;border:7px solid #fff;box-shadow:0 .5px 1px #24301933,0 4px 5px -2px #24301933;height:224px;margin:3px 4px 9px;transform:rotate(-.65deg)}
.product-card:nth-child(2n) .product-art{transform:rotate(.65deg)}.product-art .mini-note{display:none}.product-art:after{bottom:22px;filter:blur(6px)}
.product-card .category{margin-top:20px}.product-card h3{font-size:16px}.product-card>.btn{margin-top:4px}.product-bottom{margin-bottom:16px}.product-card .price{font-weight:650}
.btn{position:relative;border:0;border-radius:5px;background:#fff;color:var(--ink);box-shadow:var(--edge),0 .5px 1px #2430192e,0 3px 8px -4px #24301947}
.btn.primary{border:0;color:#344e27;background:linear-gradient(115deg,#fff,#f9faf4);box-shadow:var(--edge),0 4px 0 -1px #80986c,0 7px 8px -4px #24301970}
.btn.primary:active{transform:translateY(2px);box-shadow:var(--edge),0 2px 0 -1px #80986c,0 3px 5px -3px #24301955}
.btn.link{box-shadow:none;background:transparent}.btn.danger{background:#fcf1eb;color:var(--red)}
.chip{border:0;background:#edf0e5;border-radius:5px;box-shadow:0 0 0 .75px #5b6e443d,inset 0 1px #fffffff2,inset 0 -.5px #5b6e4414,0 1px 0 .25px #ffffffbf;color:#58694c}
.chip.active{color:#344e27;background:#fff;box-shadow:var(--edge),0 3px 0 -1px #80986c,0 6px 8px -5px #24301966;transform:translateY(-1px)}
.search{border-radius:5px;background:#e7ebdf;box-shadow:inset 0 3px 8px -4px #24301947,inset 0 .5px 1px #2430192e,0 1px 0 .25px #ffffffcc;border:0}
.eyebrow{color:#526648}.catalog-heading h1,.page-title h1,.staff-header h1{color:#344d2a;text-shadow:0 -.4px 0 #24301920,0 1px 0 #fff}
.stock{font-weight:550}.desktop-nav button{border-radius:5px}.desktop-nav button.active{background:#fff;box-shadow:var(--edge),var(--shadow)}
.favorite-toggle{position:absolute;z-index:3;right:21px;top:20px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#eef0e7;color:#64725b;box-shadow:inset 0 2px 4px #24301924,0 1px 0 #fff;border:1px solid #d5dbca}
.favorite-toggle.selected{background:#dee7cf;color:#425d30;box-shadow:inset 0 2px 5px #24301930,0 1px 0 #fff}
.favorite-toggle.selected .icon,.favorite-full.selected .icon{fill:#425d30;stroke:#425d30}.favorite-full .icon{width:20px;height:20px}.favorite-full.selected{background:#e9eedf}
.notice{border-radius:5px;box-shadow:inset 0 .5px 1px #2430191c,0 1px #ffffffcc}.status,.replacement,.batch,.qty,.field input,.field select,.chat-compose textarea{border-radius:5px}
.replacement{background:linear-gradient(120deg,#f9f5e9,#f2eddc);box-shadow:inset 0 .5px 1px #4c3e1d26,0 1px #fff}.message{border-radius:5px;box-shadow:0 1px 2px #24301917}.message.mine{border-radius:5px}
.product-breadcrumb{display:flex;align-items:center;gap:18px;font-size:12px;color:var(--muted);margin-bottom:25px}.product-breadcrumb>span{border-left:1px solid #bfc8b4;padding-left:18px}.product-page{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:start}.product-gallery{padding:32px 28px 24px;min-width:0}.gallery-print{background:#fff;padding:13px 13px 24px;box-shadow:0 .5px 1px #24301930,0 9px 13px -7px #24301960;transform:rotate(-1deg);margin:3px 3px 26px}
.gallery-print .product-art{height:390px;margin:0;transform:none;border:0;box-shadow:none;background:radial-gradient(ellipse at 35% 20%,#fafbf6,#e8ecdf)!important}.gallery-print .product-art svg{width:245px;height:315px}.gallery-print .product-art:after{width:170px;height:15px;bottom:43px}.photo-caption{display:block;text-align:center;font-size:11px;margin-top:18px;color:var(--muted)}.gallery-thumbs{display:flex;gap:18px;align-items:center}.thumb{display:grid;place-items:center;background:white;width:60px;height:76px;box-shadow:var(--edge),var(--shadow);border-bottom:3px solid #799265}.thumb svg{width:50px;height:66px}
.product-right{display:grid;gap:22px;min-width:0}.product-info{padding:28px}.product-info h1{font-size:34px;margin:16px 0 10px;line-height:1.15;letter-spacing:-1px}.product-volume{font-size:14px;color:var(--muted);margin-bottom:19px}.product-purchase{display:flex;align-items:baseline;gap:12px;margin:28px 0 22px}.product-price{font-size:34px;letter-spacing:-1px;font-weight:650}.product-buy-actions{display:flex;gap:12px;flex-wrap:wrap}.product-buy-actions>.btn{flex:1;min-height:48px;white-space:nowrap}.product-delivery{padding:25px 28px}.product-delivery h2{font-size:20px;margin-bottom:21px}.delivery-item{display:flex;align-items:flex-start;gap:13px;margin:18px 0}.delivery-item:last-child{margin-bottom:0}.delivery-item>.icon{width:20px;height:20px;color:#6c805d;margin-top:2px}.delivery-item strong{font-size:13px;font-weight:600}.delivery-item p{font-size:12px;color:var(--muted);line-height:1.65;margin-top:5px}.product-description{padding:30px;margin-top:30px}.product-description h2{margin:12px 0 17px}.product-description p{font-size:14px;line-height:1.8;color:var(--muted);max-width:800px}.description-fields{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:30px}.description-fields h3{font-size:15px;margin-bottom:8px}
.desk-shell{margin:20px auto;width:calc(100% - 40px);box-shadow:0 20px 32px -24px #24301980;border-radius:7px;overflow:hidden}.staff-main{position:relative;isolation:isolate;background:radial-gradient(100% 90% at 20% 0%,#ffffff66,transparent),var(--paper)}.sidebar{background:#e8ecdf}.stat{background:#edf0e5;border-radius:5px;box-shadow:inset 0 .5px 1px #2430191a,0 1px #fff}.stat.active{background:#fff;box-shadow:var(--edge),var(--shadow)}.task{border-radius:5px}.task .task-icon{border-radius:5px;background:#e8eddf;box-shadow:inset 0 1px 2px #24301917,0 1px #fff}.side-nav button{border-radius:5px}.side-nav button.active{background:#fff;box-shadow:var(--edge),var(--shadow)}
@media(max-width:1150px){.site-header{margin-inline:25px}.desktop-nav{gap:0}.desktop-nav button{padding-inline:10px;font-size:13px}.desktop-nav .icon{width:19px;height:19px}.product-page{gap:23px}.gallery-print .product-art{height:310px}.product-gallery{padding:24px 20px}.product-info{padding:23px}.product-info h1{font-size:30px}}
@media(max-width:760px){:root{--pad:18px}.site{width:calc(100% - 20px);margin:13px 10px 0;border-radius:7px;min-height:100dvh}.site-header{margin:0 18px;min-height:75px}.body{padding:26px 18px 110px}.catalog-grid{gap:16px 12px}.product-card{padding:10px;border-radius:5px}.product-art{height:161px;margin:2px 1px 9px;border-width:5px}.product-art svg{width:102px;height:135px}.product-card h3{font-size:13px;min-height:57px}.product-card .category{margin-top:16px}.product-bottom{margin-bottom:13px}.favorite-toggle{right:14px;top:13px;width:36px;height:36px}.favorite-toggle .icon{width:18px;height:18px}.product-card>.btn{font-size:12px}.chips{gap:8px;padding-top:4px;padding-bottom:7px}.chip.active{transform:translateY(-1px)}.bottom-nav{left:7px;right:7px;bottom:5px;border-radius:7px;border:0;background:#f8f9f1;box-shadow:var(--edge),0 -1px 2px #2430190d,0 3px 12px #24301938;padding:5px 5px calc(5px + env(safe-area-inset-bottom));min-height:69px}.bottom-nav button{font-size:9px;min-width:0;border-radius:5px;padding:6px 2px}.bottom-nav .icon{width:20px;height:20px}.bottom-nav button.active{background:#fff;box-shadow:var(--edge),var(--shadow);color:#3c572d}.bottom-nav button.active:after{content:"";position:absolute;bottom:4px;width:15px;height:2px;border-radius:1px;background:#799265}.product-breadcrumb{margin-bottom:20px}.product-page{grid-template-columns:1fr;gap:21px}.product-gallery{padding:22px 20px 20px}.gallery-print{padding:10px 10px 18px;margin:0 0 20px}.gallery-print .product-art{height:290px;border:0}.gallery-print .product-art svg{height:250px;width:195px}.gallery-print .product-art:after{bottom:32px;width:130px}.photo-caption{font-size:10px;margin-top:14px}.gallery-thumbs .small{font-size:11px}.product-info{padding:23px 20px}.product-info h1{font-size:29px}.product-volume{font-size:13px}.product-buy-actions{gap:10px}.product-buy-actions>.btn{font-size:13px;padding-inline:11px}.product-delivery{padding:23px 20px}.product-description{padding:23px 20px;margin-top:23px}.description-fields{grid-template-columns:1fr;gap:22px}.product-description p{font-size:13px}.desk-shell{width:calc(100% - 20px);margin:13px 10px 0}.staff-main{padding:24px 17px 110px}.staff-header h1{font-size:30px}.panel{padding:20px 17px}.replacement-actions{gap:10px}.favorite-full{white-space:nowrap}.product-open{isolation:isolate}}
@media(max-width:350px){.body{padding-inline:13px}.site-header{margin-inline:13px}.brand-name{font-size:14px}.brand small{font-size:9px}.mobile-city{font-size:11px}.product-art{height:138px}.product-art svg{height:115px;width:86px}.product-card{padding:8px}.product-card h3{font-size:12px}.product-card>.btn{font-size:11px}.product-card>.btn .icon{display:none}.product-buy-actions>.btn{flex-basis:100%}.catalog-heading h1{font-size:29px}.favorite-toggle{right:11px;top:11px}.stock{font-size:10px}.gallery-print .product-art{height:235px}.gallery-print .product-art svg{height:205px;width:165px}.product-gallery{padding:20px 15px}.photo-caption{font-size:9px}}

/* color-v3.css */
/* Revision 3: one paper canvas, colored paper cards, no nested photo frames. */
:root,[data-palette="indigo"]{--canvas:#f7f3ea;--paper:#f7f3ea;--surface:#fffdf8;--ink:#202c49;--muted:#5d6272;--accent:#344b88;--accent2:#ac4b36;--soft:#e7eaf2;--line:#d9d7d0;--card-a:#f3d7bd;--card-b:#d9e7de;--card-c:#dfe7f3;--card-d:#f1e6bc;--edge:inset 0 1px 0 #ffffffaa;--shadow:0 1px 1px #2e335a1f,0 4px 8px -5px #2e335a38}
[data-palette="matcha"]{--canvas:#f5f3e8;--paper:#f5f3e8;--surface:#fffdf5;--ink:#273e32;--muted:#5d685b;--accent:#315c47;--accent2:#af4c24;--soft:#e6ebdb;--line:#d9dbcf;--card-a:#e1e7bb;--card-b:#f2d0b6;--card-c:#cfe3d7;--card-d:#f0e2b6}
[data-palette="plum"]{--canvas:#f7f1eb;--paper:#f7f1eb;--surface:#fffaf5;--ink:#432c43;--muted:#756274;--accent:#71446b;--accent2:#9d501e;--soft:#ece1e9;--line:#dfd3d7;--card-a:#e9d9e7;--card-b:#f2d9b0;--card-c:#e0e5d2;--card-d:#f0d7ce}
body{background:var(--canvas)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:var(--grain) 0 0/400px auto;mix-blend-mode:multiply;opacity:.055;z-index:-1}
.reviewbar{background:#2f333d;color:#fff;box-shadow:none}.role-switch{background:#20242d}.role-switch button[aria-pressed=true]{background:#f2f0e9;color:#30343c}.palettebar{display:flex;justify-content:center;align-items:center;gap:14px;padding:10px 18px;background:#edeae3;border-bottom:1px solid #d6d3cc;font-size:11px;color:#4c5057}.palettebar>span{letter-spacing:.5px}.palette-options{display:flex;gap:7px}.palette-option{display:flex;align-items:center;gap:8px;min-height:34px;padding:7px 11px;background:transparent;border:1px solid #d6d2c8;border-radius:5px;font-size:11px;color:#4c5057}.palette-option[aria-pressed=true]{background:#fffdf8;border-color:#7c7d80}.palette-swatch{display:flex}.palette-swatch i{width:10px;height:13px;display:block}.palette-swatch i:first-child{border-radius:2px 0 0 2px}.palette-swatch i:last-child{border-radius:0 2px 2px 0}
.site{background:transparent;box-shadow:none;margin:0 auto;width:100%;border-radius:0;min-height:calc(100dvh - 105px)}.site:before{display:none}.site-header{min-height:86px;border-bottom-color:var(--line)}.brand-mark{color:var(--surface);background:var(--accent);box-shadow:none;border-radius:5px}.brand-name{color:var(--ink)}.brand small{color:var(--muted)}.body{padding-top:32px}.catalog-heading h1,.page-title h1,.staff-header h1{color:var(--ink);text-shadow:none}.eyebrow{color:var(--accent2)}.catalog-heading h1{font-size:43px;letter-spacing:-1.7px}.catalog-heading p,.delivery-note{color:var(--muted)}.delivery-note strong{color:var(--ink)}.catalog-heading{margin-bottom:27px}
.paper{background:var(--surface);box-shadow:var(--shadow);border-radius:4px;border:0}.paper:before{opacity:.045}.catalog-grid{gap:21px}.product-card{background:var(--card-a);padding:18px 18px 17px;box-shadow:inset 0 1px 0 #ffffff88,0 1px 1px #303e3b26,0 4px 7px -5px #303e3b40}
.product-card:nth-child(4n+2){background:var(--card-b)}.product-card:nth-child(4n+3){background:var(--card-c)}.product-card:nth-child(4n+4){background:var(--card-d)}.product-card:before{opacity:.09}.product-art,.product-card:nth-child(2n) .product-art{background:transparent!important;box-shadow:none;border:0;border-radius:0;transform:none;margin:0;height:218px}.product-art svg{height:188px;width:150px;filter:drop-shadow(1px 5px 2px #28323816)}.product-art:after{bottom:17px;opacity:.4;filter:blur(5px)}.product-card .category{margin:17px 0 6px;color:var(--accent);font-weight:650}.product-card h3{margin-inline:0;min-height:44px;font-size:16px;color:var(--ink)}.product-card .volume{margin-inline:0;color:var(--muted)}.product-bottom{margin:20px 0 15px}.price{color:var(--ink)}.stock{color:#3b614d}.stock:before{background:currentColor}.stock.low{color:#78521b}.stock.zero{color:var(--muted)}
.btn{background:transparent;border:1px solid color-mix(in srgb,var(--ink) 23%,transparent);box-shadow:none;color:var(--ink);border-radius:5px;font-weight:550}.btn.primary{background:var(--accent);color:white;box-shadow:inset 0 1px 0 #ffffff22,0 1px 1px #00000012;border:1px solid var(--accent)}.btn.primary:active{transform:none;box-shadow:inset 0 1px 3px #0002}.product-card>.btn{background:color-mix(in srgb,var(--surface) 58%,transparent);border:1px solid color-mix(in srgb,var(--ink) 15%,transparent);box-shadow:none;margin-top:auto;color:var(--accent)}.product-card>.btn.primary{background:var(--accent);color:white;border-color:var(--accent)}.btn.danger{background:#f9ece6;color:#903b32;border-color:#dfbfb4}.btn.link{border:0;background:transparent;box-shadow:none}
.favorite-toggle{right:13px;top:13px;width:40px;height:40px;box-shadow:none;border:0;background:transparent;color:var(--accent)}.favorite-toggle:hover{background:#ffffff44}.favorite-toggle.selected{background:transparent;color:var(--accent2);box-shadow:none}.favorite-toggle.selected .icon,.favorite-full.selected .icon{fill:var(--accent2);stroke:var(--accent2)}.favorite-full.selected{color:var(--accent2);background:transparent}.favorite-full{background:transparent}
.chip{box-shadow:none;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);min-height:42px}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:none;transform:none}.search{box-shadow:none;background:var(--surface);border:1px solid var(--line);border-radius:5px}.search:focus-within{border-color:var(--accent)}.search input{color:var(--ink)}.desktop-nav button.active{background:transparent;box-shadow:none;color:var(--accent);position:relative}.desktop-nav button.active:after{content:"";position:absolute;bottom:4px;left:16px;right:16px;height:2px;background:var(--accent2)}.count{background:var(--accent)}
.product-gallery,.product-info,.product-delivery,.product-description{background:transparent;border:0;box-shadow:none;padding:0}.product-gallery:before,.product-info:before,.product-delivery:before,.product-description:before{display:none}.gallery-print{margin:0 0 20px;background:transparent;padding:0;box-shadow:none;transform:none}.gallery-print .product-art{background:transparent!important;height:390px;margin:0;border:0;box-shadow:none}.gallery-print .product-art svg{width:260px;height:325px}.gallery-thumbs{border-top:1px solid var(--line);padding-top:17px}.thumb{background:transparent;box-shadow:none;border:1px solid var(--line);border-bottom:2px solid var(--accent)}.photo-caption{color:var(--muted);font-size:11px;margin-top:10px}.product-page{gap:48px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.product-info{padding-top:20px}.product-info h1{font-size:36px;color:var(--ink)}.product-buy-actions>.btn{min-height:49px}.product-delivery{padding-top:23px;border-top:1px solid var(--line)}.product-description{margin-top:36px;padding-top:27px;border-top:1px solid var(--line)}.product-right{gap:26px}.delivery-item>.icon{color:var(--accent2)}.product-price{color:var(--accent)}.description-fields{border-top-color:var(--line)}.product-volume,.product-description p,.delivery-item p,.photo-caption{color:var(--muted)}
.notice{box-shadow:none;background:var(--soft)}.replacement{background:#f4e6c8;border:1px solid #ddca9b;box-shadow:none}.message{background:var(--soft);box-shadow:none}.message.mine{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.status{background:var(--soft);color:var(--accent)}.status.amber{background:#f1e1bf;color:#74501f}.progress .done{background:var(--accent)}.avatar{background:var(--soft);color:var(--accent)}.batch{background:var(--soft)}.field input,.field select,.chat-compose textarea{background:var(--surface);border-color:var(--line)}
.desk-shell{width:100%;margin:0 auto;box-shadow:none;border-radius:0;overflow:visible;min-height:calc(100dvh - 104px)}.staff-main{background:transparent}.staff-main:before{display:none}.sidebar{background:color-mix(in srgb,var(--accent) 6%,var(--canvas));border-color:var(--line)}.side-nav button.active{background:var(--soft);color:var(--accent);box-shadow:none}.side-nav button{border-radius:5px}.stat{background:transparent;border:1px solid var(--line);box-shadow:none}.stat.active{color:var(--surface);background:var(--accent);border-color:var(--accent);box-shadow:none}.stat.active span{color:var(--surface)}.task .task-icon{background:var(--soft);color:var(--accent);box-shadow:none}.task .tag{background:var(--soft);color:var(--accent)}.task .tag.amber{background:#f2e2c3;color:#78521b}.task .task-side strong{color:var(--ink)}.side-paper{background:transparent;box-shadow:none;border-left:1px solid var(--line);border-radius:0}.side-paper:before{display:none}.timeline li{border-color:var(--line)}.timeline li:before{background:var(--accent2)}.footer{border-color:var(--line)}.bottom-nav{background:var(--surface);border-top:1px solid var(--line);box-shadow:none;left:0;right:0;bottom:0;border-radius:0}.bottom-nav button.active{background:transparent;box-shadow:none;color:var(--accent)}.bottom-nav button.active:after{background:var(--accent2)}
@media(min-width:1500px){.site{margin:0 auto;border-radius:0}}
@media(max-width:1150px){.product-page{gap:30px}.product-info h1{font-size:30px}}
@media(max-width:760px){.palettebar{padding:8px 10px;gap:7px;flex-wrap:wrap;justify-content:flex-start}.palettebar>span{font-size:9px}.palette-options{gap:4px;flex:1;justify-content:space-between}.palette-option{font-size:9px;padding:6px 7px;gap:5px;min-height:32px}.palette-swatch i{width:7px;height:12px}.site{width:100%;margin:0;min-height:100dvh}.site-header{margin-inline:20px;min-height:72px}.body{padding:25px 20px 110px}.catalog-heading h1{font-size:33px}.catalog-heading p{font-size:13px}.catalog-grid{gap:15px 12px}.product-card{padding:12px 11px 13px}.product-art,.product-card:nth-child(2n) .product-art{height:155px;margin:0;border:0;transform:none}.product-art svg{height:142px;width:113px}.product-art:after{bottom:7px}.product-card h3{font-size:13px;min-height:57px}.product-card .category{font-size:9px;letter-spacing:1px;margin-top:15px}.product-card .volume{font-size:11px}.product-bottom{margin:15px 0 12px}.product-card>.btn{font-size:12px;min-height:44px}.favorite-toggle{right:5px;top:6px;width:35px;height:35px}.favorite-toggle .icon{width:19px;height:19px}.chips{gap:7px;padding:0 0 3px}.chip{min-height:42px}.product-page{grid-template-columns:1fr;gap:24px}.product-gallery{padding:0}.gallery-print .product-art{height:268px}.gallery-print .product-art svg{height:250px;width:195px}.photo-caption{font-size:10px}.gallery-thumbs{display:none}.product-info{padding:0}.product-info h1{font-size:30px}.product-description{padding:24px 0 0}.product-delivery{padding:23px 0 0}.product-buy-actions>.btn{flex-basis:auto;font-size:13px}.desk-shell{width:100%;margin:0}.staff-main{padding:24px 18px 110px}.staff-aside .side-paper{border-left:0;border-top:1px solid var(--line);padding:21px 0}.bottom-nav{padding:6px 5px calc(6px + env(safe-area-inset-bottom));min-height:70px}.bottom-nav button{font-size:9px}.bottom-nav button.active:after{bottom:2px}.product-breadcrumb{margin-bottom:14px}}
@media(max-width:350px){.palettebar>span{display:none}.palette-option{font-size:9px;padding-inline:8px}.body{padding-inline:15px}.site-header{margin-inline:15px}.catalog-heading h1{font-size:30px}.product-card{padding:10px 9px 12px}.product-art,.product-card:nth-child(2n) .product-art{height:137px}.product-art svg{height:123px;width:98px}.product-card h3{font-size:12px}.product-card>.btn{font-size:11px}.product-buy-actions>.btn{flex-basis:100%}}

/* japan-store-v4.css */
/* Palette source: japan-store/repo/prototype/final-mockup/{account,friendly-theme}.css.
   Presentation only; the source store is unchanged. */
:root,:root[data-palette]{--canvas:#fafaf7;--paper:#fafaf7;--surface:#fffdf8;--ink:#232c28;--muted:#5f6b5b;--accent:#b7221d;--accent2:#e92e28;--soft:#e9efdf;--line:#e1e5dc;--card-a:#f6f1e7;--card-b:#e9efdf;--card-c:#f5f6f1;--card-d:#fff0ec;--brand:#404639}
body{background:#fafaf7}.palettebar{display:none}.site-header{min-height:94px}.brand{gap:9px}.brand-mark{display:none}.brand-logo{width:66px;height:66px;object-fit:contain;display:block;flex-shrink:0}.brand-name{color:#232c28;font-size:19px}.brand small{color:#62705a}.catalog-heading h1,.page-title h1,.staff-header h1{color:#232c28}.eyebrow{color:#7b4a38}.brand .eyebrow{color:#404639}.desktop-nav button.active{color:#232c28}.desktop-nav button.active:after{background:#e92e28}.catalog-heading p,.delivery-note{color:#5f6b5b}.catalog-grid{gap:20px}.product-card{box-shadow:0 1px 1px #35402e16,0 4px 7px -5px #35402e2b}.product-card .category{color:#5f6b55}.product-card>.btn{color:#404639;background:#fffdf888;border-color:#c4cbbe}.product-card>.btn.primary{background:#b7221d;color:#fff;border-color:#b7221d}.btn.primary{background:#b7221d;border-color:#b7221d;color:#fff}.btn:not(.primary):not(.danger){color:#404639}.chip.active{background:#404639;color:#fff;border-color:#404639}.chip:not(.active){background:#fafaf7;color:#5f6b55}.favorite-toggle{color:#65765a}.favorite-toggle.selected,.favorite-full.selected{color:#b7221d}.favorite-toggle.selected .icon,.favorite-full.selected .icon{fill:#e92e28;stroke:#b7221d}.product-price{color:#232c28}.delivery-item>.icon{color:#65765a}.status,.task .tag{background:#e9efdf;color:#56664e}.status.amber,.task .tag.amber{background:#f5ecda;color:#775e30}.count{background:#e92e28;color:white}.notice{background:#edf2e5}.notice.amber{background:#f5ecda;color:#775e30}.replacement{background:#f6f1e7;border-color:#ded4be}.message{background:#f0f3ea}.message.mine{background:#e9efdf}.avatar{background:#e9efdf;color:#56664e}.timeline li:before{background:#e92e28}.sidebar{background:#f3f5ec}.stat.active{background:#e9efdf;border-color:#cbd5be;color:#232c28}.stat.active span{color:#56664e}.side-nav button.active{color:#232c28;background:#e9efdf}.bottom-nav button.active{color:#404639}.bottom-nav button.active:after{background:#e92e28}.progress .done{background:#65765a}.staff-main .brand{gap:4px}.sidebar .brand-logo{width:50px;height:60px}.sidebar .brand-name{font-size:16px}.sidebar .brand small{font-size:10px}.gallery-print .product-art svg{filter:drop-shadow(1px 5px 2px #28323816)}
@media(max-width:760px){.site-header{min-height:82px}.brand-logo{width:53px;height:59px}.brand{gap:6px}.brand-name{font-size:17px}.brand small{font-size:9px}.site-header .mobile-city{font-size:11px}.body{padding-top:24px}.product-card .category{font-size:9px}.bottom-nav button.active{color:#404639}}
@media(max-width:350px){.brand-logo{width:45px;height:52px}.brand-name{font-size:15px}.brand small{font-size:8px}.site-header{min-height:75px}.site-header .mobile-city{font-size:10px}}

/* market-palettes.css */
/* Isolated palette candidates. No candidate applies to the regular prototype without ?market=. */
:root[data-market="a"]{--canvas:#ffffff;--paper:#ffffff;--surface:#ffffff;--ink:#262626;--muted:#626262;--accent:#bf0000;--accent2:#bf0000;--soft:#fff1f0;--line:#dedede;--card-a:#fff;--card-b:#fff;--card-c:#fff;--card-d:#fff;--candidate-brand:#bf0000;--candidate-action:#bf0000;--candidate-action-text:#ffffff;--candidate-header:#ffffff;--candidate-header-text:#262626;--candidate-price:#bf0000;--candidate-link:#a90000}
:root[data-market="b"]{--canvas:#f4f5f5;--paper:#f4f5f5;--surface:#ffffff;--ink:#18212b;--muted:#56616c;--accent:#232f3e;--accent2:#c7511f;--soft:#edf1f4;--line:#d6dce0;--card-a:#fff;--card-b:#fff;--card-c:#fff;--card-d:#fff;--candidate-brand:#232f3e;--candidate-action:#ffd45a;--candidate-action-text:#18212b;--candidate-header:#232f3e;--candidate-header-text:#ffffff;--candidate-price:#18212b;--candidate-link:#1c607e}
:root[data-market="c"]{--canvas:#f9f7f2;--paper:#f9f7f2;--surface:#fffefa;--ink:#232c28;--muted:#5c645e;--accent:#b32224;--accent2:#e92e28;--soft:#f3e9df;--line:#dedbd2;--card-a:#fffefa;--card-b:#fffefa;--card-c:#fffefa;--card-d:#fffefa;--candidate-brand:#b32224;--candidate-action:#f3ba48;--candidate-action-text:#292b25;--candidate-header:#f9f7f2;--candidate-header-text:#232c28;--candidate-price:#b32224;--candidate-link:#a62726}
:root[data-market] body{background:var(--canvas)}:root[data-market] .site{background:var(--canvas)}:root[data-market] .site-header{background:var(--candidate-header);color:var(--candidate-header-text);padding:0 22px;margin-inline:10px;border-bottom:2px solid var(--candidate-brand)}:root[data-market] .brand-name,:root[data-market] .brand small,:root[data-market] .mobile-city,:root[data-market] .desktop-nav button,:root[data-market] .desktop-nav button.active{color:var(--candidate-header-text)}:root[data-market] .brand small{opacity:.75}:root[data-market] .desktop-nav button.active:after{background:var(--candidate-action)}:root[data-market] .product-card{background:var(--surface)!important;border:1px solid var(--line);box-shadow:0 1px 2px #232c280b}:root[data-market] .product-card h3,:root[data-market] .catalog-heading h1,:root[data-market] .page-title h1{color:var(--ink)}:root[data-market] .product-card .category{color:var(--muted)}:root[data-market] .price,:root[data-market] .product-price{color:var(--candidate-price)}:root[data-market] .btn.primary,:root[data-market] .product-card>.btn.primary,:root[data-market] .product-card>[data-add]{background:var(--candidate-action);color:var(--candidate-action-text);border:1px solid color-mix(in srgb,var(--candidate-action) 85%,#000);box-shadow:none}:root[data-market] .btn:not(.primary):not(.danger){color:var(--ink)}:root[data-market] .chip.active{background:var(--candidate-brand);color:#fff;border-color:var(--candidate-brand)}:root[data-market] .chip:not(.active){background:transparent;color:var(--muted);border-color:var(--line)}:root[data-market] .favorite-toggle{color:var(--candidate-link)}:root[data-market] .favorite-toggle.selected .icon,:root[data-market] .favorite-full.selected .icon{fill:#e92e28;stroke:#b32224}:root[data-market] .search{background:var(--surface);border-color:var(--line)}:root[data-market] .eyebrow,:root[data-market] .delivery-item>.icon{color:var(--candidate-brand)}:root[data-market] .notice{background:var(--soft)}:root[data-market] .bottom-nav{background:var(--surface);border-color:var(--line)}:root[data-market] .bottom-nav button.active{color:var(--candidate-link)}:root[data-market] .bottom-nav button.active:after{background:var(--candidate-brand)}:root[data-market] .brand-logo{background:#fffef8;border-radius:3px}:root[data-market="a"] .product-card:before{opacity:.03}:root[data-market="b"] .product-card:before{opacity:.02}:root[data-market="c"] .product-card:before{opacity:.06}
/* Compact, identical view for the side-by-side comparison only. */
:root[data-market] .product-card>.btn[data-add]{color:var(--candidate-action-text)}
:root[data-compare="true"] .reviewbar,:root[data-compare="true"] .palettebar{display:none}:root[data-compare="true"] .site-header{min-height:71px;margin:0;padding:0 16px}:root[data-compare="true"] .brand-logo{width:48px;height:53px}:root[data-compare="true"] .brand-name{font-size:15px}:root[data-compare="true"] .brand small{font-size:9px}:root[data-compare="true"] .mobile-city{font-size:10px}:root[data-compare="true"] .body{padding:20px 15px 95px}:root[data-compare="true"] .catalog-heading{margin-bottom:18px}:root[data-compare="true"] .catalog-heading h1{font-size:28px;margin:9px 0}:root[data-compare="true"] .catalog-heading p{font-size:12px}:root[data-compare="true"] .delivery-note{display:none}:root[data-compare="true"] .tools{gap:11px;margin-bottom:13px}:root[data-compare="true"] .search{min-height:42px}:root[data-compare="true"] .search input{padding:9px 0;font-size:13px}:root[data-compare="true"] .product-art,:root[data-compare="true"] .product-card:nth-child(2n) .product-art{height:123px}:root[data-compare="true"] .product-art svg{height:115px;width:90px}:root[data-compare="true"] .product-card h3{min-height:42px}:root[data-compare="true"] .product-bottom{margin-top:12px}:root[data-compare="true"] .product-card{padding:11px 10px}:root[data-compare="true"] .product-card>.btn{font-size:11px}:root[data-compare="true"] .product-card .volume{font-size:10px}
@media(max-width:760px){:root[data-market] .site-header{margin:0;padding:0 20px}:root[data-compare="true"] .site-header{padding-inline:15px}}

/* selected-a.css */
/* Owner-selected palette A, including the employee workspace. Status colors remain semantic. */
:root[data-market="a"] .sidebar{background:#fafafa;border-color:#dedede}
:root[data-market="a"] .staff-main{background:#fff}
:root[data-market="a"] .sidebar .brand-name{color:#262626}
:root[data-market="a"] .sidebar .brand small,:root[data-market="a"] .sidebar-foot{color:#626262}
:root[data-market="a"] .side-nav button{color:#444}
:root[data-market="a"] .side-nav button.active{background:#fff1f0;color:#a90000}
:root[data-market="a"] .stat{background:#fff;border-color:#dedede;color:#262626}
:root[data-market="a"] .stat.active{background:#fff1f0;border-color:#ebc4c0}
:root[data-market="a"] .stat.active strong{color:#bf0000}
:root[data-market="a"] .stat.active span{color:#626262}
:root[data-market="a"] .task .task-icon{background:#f5f5f5;color:#444}
:root[data-market="a"] .task .task-side strong{color:#262626}
:root[data-market="a"] .staff-header h1{color:#262626}
:root[data-market="a"] .staff-profile .avatar{background:#f1f1f1;color:#444}
:root[data-market="a"] .side-paper{background:transparent;border-color:#dedede}
:root[data-market="a"] .timeline li:before{background:#bf0000}
:root[data-market="a"] .progress .done{background:#bf0000}
:root[data-market="a"] .message{background:#f4f4f4}
:root[data-market="a"] .message.mine{background:#fff1f0}
:root[data-market="a"] .avatar{background:#f1f1f1;color:#444}
:root[data-market="a"] .batch{background:#f5f5f5}
:root[data-market="a"] .btn.primary{background:#bf0000;color:#fff;border-color:#bf0000}
:root[data-market="a"] .btn:not(.primary):not(.danger){color:#262626}

/* geometry-v6.css */
/* Shared dimensions for the prototype. These are project decisions, not Apple HIG values. */
:root{--g-unit:8px;--g-content:1280px;--g-pad:32px;--g-gap:24px;--g-panel:24px;--g-card:16px;--g-control:48px;--g-search:52px;--g-icon:20px;--g-radius:6px;--g-paper-radius:4px;--g-title:32px;--g-title-line:40px;--g-header:96px;--g-nav:72px}
#app .site{max-width:var(--g-content);width:100%;margin:0 auto;padding:0 var(--g-pad);background:var(--canvas);box-shadow:none;border-radius:0;min-height:calc(100dvh - 48px)}
#app .site-header{display:flex;min-height:var(--g-header);height:auto;align-items:center;justify-content:space-between;gap:32px;margin:0;padding:16px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink)}
#app .brand{gap:12px;min-width:0;min-height:56px;padding:0;text-decoration:none;flex-shrink:0}
#app .brand-logo{width:64px;height:64px;object-fit:contain;background:transparent;border-radius:0}
#app .wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
#app .brand-name{font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,system-ui,sans-serif;font-weight:700;font-size:24px;line-height:32px;letter-spacing:.025em;white-space:nowrap;color:var(--ink)}
#app .brand small{font-family:"Yu Gothic",Meiryo,system-ui,sans-serif;font-size:10px;line-height:16px;letter-spacing:.14em;margin:0;color:var(--candidate-brand,#bf0000)}
#app .desktop-nav{gap:8px;min-width:0;flex-shrink:1}
#app .desktop-nav button{padding:12px;gap:8px;min-height:48px;font-size:14px;line-height:20px;white-space:nowrap;color:var(--ink)}
#app .desktop-nav .icon{width:20px;height:20px}
#app .desktop-nav button.active:after{left:12px;right:12px;bottom:4px;height:2px;background:var(--candidate-brand,#bf0000)}
#app .header-search{margin:24px 0 0;width:100%}
#app .header-search .search{height:var(--g-search);min-height:var(--g-search);width:100%;padding:0 16px;gap:12px;border:1px solid var(--line);border-radius:var(--g-radius);background:var(--surface);box-shadow:none;display:flex}
#app .header-search .search>.icon{height:20px;width:20px;flex:0 0 20px}
#app .header-search input{height:100%;padding:0;line-height:24px;font-size:15px;color:var(--ink);min-width:0;flex:1}
#app .body{padding:16px 0 64px}
#app .catalog-controls{margin:0 0 24px;padding:0 0 16px;border-bottom:1px solid var(--line)}
#app .chips{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:8px;margin:0;padding:0;overflow:visible}
#app .chip{min-width:0;min-height:48px;height:48px;display:flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:var(--g-radius);font-size:14px;line-height:20px;white-space:normal;text-align:center;box-shadow:none;transform:none}
#app .catalog-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 24px}
#app h1{font-size:var(--g-title);line-height:var(--g-title-line);letter-spacing:-.9px;font-weight:650}
#app .catalog-heading h1{margin:8px 0;font-size:var(--g-title);line-height:var(--g-title-line);letter-spacing:-.9px}
#app .catalog-heading p{font-size:14px;line-height:24px;max-width:none}
#app .catalog-heading .eyebrow{font-size:11px;line-height:16px;letter-spacing:1.4px}
#app .catalog-summary{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12px;line-height:20px;color:var(--muted);flex-shrink:0;padding-bottom:0}
#app .catalog-summary strong{font-size:14px;font-weight:550;color:var(--ink)}
#app .catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--g-gap);align-items:stretch}
#app .paper{border-radius:var(--g-paper-radius)}
#app .product-card{padding:var(--g-card);display:flex;flex-direction:column;gap:0;min-width:0;border:1px solid var(--line);border-radius:var(--g-paper-radius);box-shadow:inset 0 1px #ffffffc9,0 .5px 1px #232c2820,0 4px 7px -5px #232c2838}
#app .product-card:before{opacity:.065;background-size:400px auto}
#app .product-open{width:100%;min-width:0;flex:1;display:flex;flex-direction:column;text-align:left;background:transparent;padding:0}
#app .product-card .product-art{width:100%;height:auto;min-height:0;aspect-ratio:1 / 1;display:grid;place-items:center;border:0;margin:0 0 16px;padding:8px 16px;background:transparent!important;transform:none;box-shadow:none}
#app .product-card .product-art>svg{width:76%;height:88%;max-width:170px;max-height:210px;object-fit:contain}
#app .product-card .product-art:after{bottom:8px;width:45%;height:8px}
#app .product-card .category{font-size:10px;line-height:16px;letter-spacing:1px;margin:0 0 4px}
#app .product-card h3{font-size:14px;line-height:21px;min-height:42px;letter-spacing:0;margin:0 0 8px;font-weight:600;width:100%;overflow-wrap:anywhere}
#app .product-card .volume{font-size:12px;line-height:18px;min-height:18px;margin:0;width:100%;overflow-wrap:anywhere}
#app .product-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:16px 0}
#app .product-card .price{font-size:22px;line-height:28px;font-weight:600;letter-spacing:-.5px;white-space:nowrap}
#app .product-card .stock{font-size:11px;line-height:18px;min-height:18px;margin:0}
#app .product-card>.btn{margin:0;width:100%;min-height:48px;height:48px;padding:10px 12px;font-size:13px;line-height:20px;border-radius:var(--g-radius);white-space:nowrap}
#app .favorite-toggle{position:absolute;right:8px;top:8px;min-height:44px;min-width:44px;width:44px;height:44px;padding:12px;border-radius:50%}
#app .favorite-toggle>.icon{width:20px;height:20px}
#app .catalog-delivery{margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;font-size:13px;line-height:24px;color:var(--muted)}
#app .catalog-delivery summary{cursor:pointer;color:var(--ink);min-height:32px;font-weight:550}
#app .catalog-delivery p{margin:12px 0 0;max-width:800px}
#app .footer{margin:32px 0 0;padding:20px 0 0;font-size:11px;line-height:20px;gap:24px}
#app .btn{min-height:var(--g-control);padding:12px 16px;font-size:14px;line-height:22px;border-radius:var(--g-radius);gap:8px}
#app .btn.small{min-height:44px;padding:10px 12px;font-size:12px;line-height:20px}
#app .btn .icon{width:20px;height:20px}
#app .panel{padding:var(--g-panel)}
#app h2{font-size:22px;line-height:28px;letter-spacing:-.5px;font-weight:600}
#app h3{font-size:15px;line-height:22px;font-weight:600}
#app .panel h2{margin-bottom:20px}
#app .page-title{gap:24px;margin:0 0 24px;align-items:center}
#app .page-title h1{margin-top:8px}
#app .section-gap{margin-top:24px}
#app .two-col{grid-template-columns:minmax(0,1fr) 336px;gap:24px;align-items:start}
#app .order-layout{grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
#app .order-section+.order-section{margin-top:24px}
#app .order-header{gap:24px;margin:24px 0;align-items:center}
#app .order-meta{font-size:12px;line-height:20px;margin-top:8px}
#app .status{font-size:12px;line-height:20px;padding:8px 12px;border-radius:var(--g-radius)}
#app .progress{margin:0 0 24px;gap:8px}
#app .back{min-height:44px;padding:8px 0;font-size:13px;line-height:20px;gap:8px}
#app .line-item{grid-template-columns:64px minmax(0,1fr) auto;gap:16px;padding:16px 0;align-items:start}
#app .line-item:first-child{padding-top:0}
#app .mini-art{width:64px;height:80px;display:grid;place-items:center;border-radius:4px}
#app .mini-art>svg{width:48px;height:68px}
#app .line-item h3{font-size:14px;line-height:20px}
#app .line-item .muted{font-size:12px;line-height:20px;margin-top:4px}
#app .line-item .price{font-size:18px;line-height:24px;white-space:nowrap}
#app .qty{margin-top:12px;border-radius:var(--g-radius)}
#app .qty button{width:40px;height:42px;line-height:24px;padding:8px}
#app .qty span{min-width:24px;line-height:24px}
#app .total{gap:16px;margin:24px 0;font-size:14px;line-height:24px}
#app .total strong{font-size:28px;line-height:36px;white-space:nowrap}
#app .field{font-size:14px;line-height:20px;margin:0 0 20px}
#app .field input,#app .field select{min-height:48px;line-height:24px;font-size:15px;padding:11px 12px;margin-top:8px;border-radius:var(--g-radius)}
#app .notice{padding:16px;font-size:13px;line-height:22px;border-radius:var(--g-radius)}
#app .meta-row{font-size:13px;line-height:22px;gap:16px;padding:8px 0;align-items:flex-start}
#app .meta-row>*{min-width:0;overflow-wrap:anywhere}
#app .meta-row strong{text-align:right;font-weight:550}
#app .chat-heading{padding-bottom:16px;gap:16px}
#app .avatar{width:40px;height:40px;flex-shrink:0}
#app .person{gap:12px;min-width:0}
#app .chat-heading h3{font-size:14px;line-height:20px}
#app .chat-heading small{font-size:12px;line-height:20px}
#app .messages{padding:20px 0;gap:12px;min-height:200px;max-height:400px}
#app .message{font-size:14px;line-height:24px;padding:12px 16px}
#app .message small{font-size:11px;line-height:16px;margin-top:8px}
#app .chat-compose{gap:8px}
#app .chat-compose textarea{min-height:48px;font-size:14px;line-height:22px;padding:12px;border-radius:var(--g-radius)}
#app .chat-compose button{min-width:48px;width:48px;height:48px;min-height:48px;padding:12px}
#app .replacement{margin-top:24px;padding:20px;border-radius:var(--g-radius)}
#app .replacement-actions{gap:12px;margin-top:20px}
#app .product-breadcrumb{gap:16px;margin:0 0 24px;min-height:44px}
#app .product-page{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
#app .product-gallery{padding:0;min-width:0}
#app .gallery-print{margin:0 0 16px;padding:0;transform:none;box-shadow:none}
#app .gallery-print .product-art{width:100%;height:auto;aspect-ratio:1 / 1;min-height:0;margin:0;border:0;padding:32px;display:grid;place-items:center}
#app .gallery-print .product-art>svg{height:88%;width:70%;max-height:420px;max-width:330px}
#app .photo-caption{font-size:11px;line-height:20px;margin:8px 0 0;text-align:center}
#app .gallery-thumbs{gap:16px;padding-top:16px;margin:0;align-items:center}
#app .thumb{width:64px;height:80px;flex-shrink:0}
#app .product-right{gap:24px}
#app .product-info{padding:16px 0 0}
#app .product-info h1{font-size:32px;line-height:40px;margin:12px 0;letter-spacing:-.8px}
#app .product-volume{font-size:14px;line-height:24px;margin-bottom:16px}
#app .product-info .stock{font-size:12px;line-height:20px}
#app .product-purchase{gap:12px;margin:24px 0;align-items:baseline}
#app .product-price{font-size:32px;line-height:40px}
#app .product-buy-actions{gap:12px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
#app .product-buy-actions>.btn{height:48px;min-height:48px;min-width:0;padding:12px;font-size:14px;white-space:normal}
#app .product-delivery{padding:24px 0 0}
#app .product-delivery h2{font-size:20px;line-height:28px;margin:0 0 20px}
#app .delivery-item{gap:12px;margin:16px 0}
#app .delivery-item>.icon{height:20px;width:20px;margin-top:2px}
#app .delivery-item strong{font-size:14px;line-height:20px}
#app .delivery-item p{font-size:13px;line-height:22px;margin-top:4px}
#app .product-description{margin-top:32px;padding:24px 0 0}
#app .product-description h2{margin:12px 0 16px}
#app .product-description p{font-size:14px;line-height:24px}
#app .description-fields{gap:32px;margin-top:24px;padding-top:24px}
#app .desk-shell{max-width:1440px;margin:0 auto;grid-template-columns:240px minmax(0,1fr);width:100%;border-radius:0}
#app .sidebar{padding:24px 20px}
#app .sidebar .brand{gap:8px;margin-bottom:32px}
#app .sidebar .brand-logo{width:48px;height:56px}
#app .sidebar .brand-name{font-size:20px;line-height:28px}
#app .sidebar .brand small{font-size:9px;line-height:16px}
#app .side-nav{gap:8px}
#app .side-nav button{min-height:48px;padding:12px;gap:12px;border-radius:var(--g-radius);font-size:14px;line-height:24px}
#app .staff-main{padding:32px;min-width:0}
#app .staff-header{margin:0 0 32px;gap:24px;min-height:72px}
#app .staff-header h1{font-size:32px;line-height:40px;margin-top:8px}
#app .staff-profile{gap:12px;font-size:12px;line-height:20px}
#app .stats{gap:16px;margin:0 0 32px;grid-template-columns:repeat(4,minmax(0,1fr))}
#app .stat{padding:20px;min-height:112px;border-radius:var(--g-radius)}
#app .stat span{font-size:12px;line-height:20px;display:block;min-height:20px}
#app .stat strong{font-size:32px;line-height:40px;margin-top:12px}
#app .staff-content{grid-template-columns:minmax(0,1fr) 272px;gap:24px}
#app .work-head{gap:16px;margin-bottom:24px;min-height:32px}
#app .work-head h2{font-size:22px;line-height:28px}
#app .work-label{margin:24px 0 12px;font-size:11px;line-height:20px;gap:12px}
#app .task{grid-template-columns:40px minmax(0,1fr) auto;gap:16px;padding:20px;min-height:120px;margin-bottom:12px;align-items:center}
#app .task .task-icon{width:40px;height:40px;border-radius:var(--g-radius)}
#app .task h3{font-size:14px;line-height:22px}
#app .task .small{font-size:12px;line-height:20px;margin:4px 0}
#app .task .tag{font-size:11px;line-height:18px;padding:4px 8px}
#app .task .task-side{font-size:11px;line-height:20px;max-width:160px}
#app .task .task-side strong{font-size:18px;line-height:24px;margin-bottom:8px}
#app .side-paper{padding:20px 0 20px 24px;margin-bottom:24px}
#app .side-paper h3{font-size:15px;line-height:22px;margin-bottom:16px}
#app .staff-main .order-layout{grid-template-columns:minmax(0,1fr) 336px;gap:24px}
#app .day-plan div{gap:12px;padding:12px 0;font-size:12px;line-height:20px}
#app .timeline li{padding:0 0 24px 16px;font-size:12px;line-height:20px}
#app .bottom-nav{display:none}
dialog{border-radius:8px}dialog .dialog-content{padding:24px}dialog .dialog-top{gap:16px;margin-bottom:24px}dialog .dialog-top h2{font-size:22px;line-height:28px}dialog .dialog-actions{gap:12px;margin-top:24px}dialog .btn{min-height:48px;font-size:14px;line-height:22px;padding:12px 16px;border-radius:6px}dialog .close{width:44px;height:44px}
@media(max-width:1199px){#app .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#app .desktop-nav{gap:0}#app .desktop-nav button{padding:12px 8px;font-size:13px}#app .staff-content{grid-template-columns:1fr}#app .staff-aside{display:grid;grid-template-columns:1fr 1fr;gap:24px}#app .staff-aside .side-paper{margin:0;padding:20px 0 0;border-left:0;border-top:1px solid var(--line)}#app .staff-main .order-layout{grid-template-columns:1fr}}
@media(max-width:1023px){:root{--g-pad:24px}#app .desktop-nav button{padding-inline:7px;gap:6px;font-size:12px}#app .brand-name{font-size:22px}#app .brand-logo{width:56px;height:56px}#app .order-layout,#app .two-col{grid-template-columns:1fr}#app .desk-shell{grid-template-columns:208px minmax(0,1fr)}#app .sidebar{padding-inline:16px}#app .staff-main{padding:24px}#app .stats{grid-template-columns:repeat(2,minmax(0,1fr))}#app .staff-aside{grid-template-columns:1fr}}
@media(max-width:760px){:root{--g-pad:16px;--g-gap:12px;--g-panel:16px;--g-card:12px;--g-search:48px;--g-title:28px;--g-title-line:36px;--g-header:80px}#app .site{padding:0 16px;min-height:100dvh}#app .site-header{min-height:80px;padding:12px 0;gap:16px}#app .brand{min-height:56px;gap:10px}#app .brand-logo{width:56px;height:56px}#app .brand-name{font-size:23px;line-height:30px}#app .brand small{font-size:9px;line-height:14px;letter-spacing:.12em}#app .desktop-nav{display:none}#app .header-search{margin-top:16px}#app .header-search .search{padding:0 12px;gap:12px}#app .header-search input{font-size:14px;line-height:22px}#app .body{padding:12px 0 calc(96px + env(safe-area-inset-bottom))}#app .catalog-controls{margin-bottom:20px;padding-bottom:12px}#app .chips{gap:4px}#app .chip{height:48px;min-height:48px;font-size:12px;line-height:17px;padding:6px;letter-spacing:0}#app .catalog-heading{align-items:flex-start;gap:12px;margin-bottom:20px}#app .catalog-heading .eyebrow{font-size:10px;line-height:16px;letter-spacing:1px}#app .catalog-heading h1{font-size:28px;line-height:36px;margin:4px 0 8px}#app .catalog-heading p{font-size:12px;line-height:20px;max-width:260px}#app .catalog-summary{padding-top:24px;font-size:10px;line-height:16px;gap:0}#app .catalog-summary strong{font-size:12px;line-height:20px}#app .catalog-summary span:last-child{display:none}#app .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}#app .product-card{padding:12px}#app .product-card .product-art{margin-bottom:12px;padding:8px 10px;aspect-ratio:1 / 1}#app .product-card .product-art>svg{height:88%;width:85%;max-width:130px;max-height:170px}#app .product-card h3{font-size:13px;line-height:20px;min-height:40px;margin-bottom:8px}#app .product-card .category{font-size:9px;line-height:16px;margin-bottom:4px}#app .product-card .volume{font-size:11px;line-height:17px;min-height:34px}#app .product-bottom{display:flex;align-items:flex-start;flex-direction:column;gap:4px;margin:12px 0}#app .product-card .price{font-size:20px;line-height:26px}#app .product-card .stock{font-size:10px;line-height:16px;min-height:16px}#app .product-card>.btn{height:48px;min-height:48px;font-size:12px;padding:10px 6px;line-height:20px}#app .product-card>.btn .icon{width:16px;height:16px;display:block}#app .favorite-toggle{top:4px;right:4px;width:44px;height:44px;padding:12px}#app .catalog-delivery{margin-top:24px;padding:16px 0;font-size:12px;line-height:22px}#app .footer{margin-top:24px;padding-top:16px;gap:16px;font-size:10px;line-height:18px}#app .bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;min-height:72px;gap:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-radius:0}#app .bottom-nav button{min-width:0;min-height:56px;height:auto;margin:0;padding:6px 2px;gap:4px;font-size:10px;line-height:16px;border-radius:4px}#app .bottom-nav .icon{height:20px;width:20px}#app .bottom-nav button.active:after{bottom:2px}#app .page-title{gap:16px;margin-bottom:24px;align-items:center}#app .page-title h1{font-size:28px;line-height:36px}#app .page-title .btn{font-size:12px;padding:10px 12px}#app .two-col,#app .order-layout{gap:16px}#app .order-header{gap:16px;margin:20px 0;align-items:flex-start;flex-wrap:wrap}#app .order-header h1{font-size:28px;line-height:36px}#app .order-meta{font-size:11px;line-height:18px;margin-top:4px}#app .order-section+.order-section{margin-top:16px}#app .status{font-size:11px;line-height:18px;padding:8px;max-width:none}#app .line-item{grid-template-columns:48px minmax(0,1fr);gap:8px 12px;padding:16px 0}#app .mini-art{width:48px;height:64px;grid-column:1;grid-row:1 / span 2}#app .mini-art>svg{height:56px;width:42px}#app .line-item .item-end{grid-column:2;text-align:left}#app .line-item h3{font-size:13px;line-height:20px}#app .line-item .muted{font-size:11px;line-height:18px}#app .line-item .price{font-size:17px;line-height:24px}#app .qty button{height:42px;width:40px}#app .replacement{padding:16px;margin-top:20px}#app .replacement-actions{gap:12px}#app .replacement-actions>.btn{flex:1;font-size:12px;padding:10px 12px}#app .panel h2{font-size:20px;line-height:28px;margin-bottom:16px}#app .total{margin:20px 0;gap:12px}#app .total strong{font-size:26px;line-height:34px}#app .meta-row{font-size:12px;line-height:20px;gap:12px}#app .notice{padding:12px;font-size:12px;line-height:22px}#app .chat-compose textarea{font-size:14px;line-height:22px}#app .message{font-size:13px;line-height:22px;padding:12px}#app .messages{min-height:160px;padding:16px 0}#app .product-breadcrumb{margin-bottom:16px}#app .product-page{grid-template-columns:1fr;gap:24px}#app .gallery-print .product-art{aspect-ratio:4 / 3;padding:16px}#app .gallery-print .product-art>svg{width:55%;height:95%;max-height:260px}#app .photo-caption{font-size:10px;line-height:18px}#app .gallery-thumbs{display:none}#app .product-info{padding:0}#app .product-info h1{font-size:28px;line-height:36px;margin:8px 0 12px}#app .product-info .eyebrow{font-size:10px;line-height:16px}#app .product-volume{font-size:13px;line-height:22px;margin-bottom:16px}#app .product-buy-actions{gap:12px;grid-template-columns:1fr 1fr}#app .product-buy-actions>.btn{font-size:13px;padding:10px 8px;min-height:48px;height:48px;flex-basis:auto}#app .product-purchase{margin:20px 0}#app .product-price{font-size:30px;line-height:38px}#app .product-delivery{padding-top:24px}#app .product-description{margin-top:24px;padding-top:24px}#app .description-fields{grid-template-columns:1fr;gap:24px}#app .product-description p,#app .delivery-item p{font-size:13px;line-height:22px}#app .desk-shell{display:block}#app .sidebar{display:none}#app .staff-main{padding:24px 16px calc(96px + env(safe-area-inset-bottom))}#app .staff-header{gap:16px;margin-bottom:24px;min-height:64px}#app .staff-header h1{font-size:28px;line-height:36px}#app .staff-header .eyebrow{font-size:10px;line-height:16px}#app .stats{gap:12px;margin-bottom:24px;grid-template-columns:repeat(2,minmax(0,1fr))}#app .stat{padding:16px;min-height:104px}#app .stat strong{font-size:28px;line-height:36px;margin-top:12px}#app .stat span{font-size:11px;line-height:18px;min-height:18px}#app .staff-content{grid-template-columns:1fr;gap:24px}#app .work-head{gap:12px;margin-bottom:20px}#app .work-head h2{font-size:20px;line-height:28px}#app .work-head .small{font-size:11px;line-height:18px}#app .task{grid-template-columns:32px minmax(0,1fr) auto;gap:12px;padding:16px;min-height:120px}#app .task .task-icon{display:grid!important;width:32px;height:40px}#app .task .task-icon>.icon{width:20px;height:20px}#app .task h3{font-size:13px;line-height:20px}#app .task .small{font-size:11px;line-height:18px}#app .task .tag{font-size:10px;line-height:16px;padding:4px 6px}#app .task .task-side{font-size:10px;line-height:18px;max-width:96px}#app .task .task-side strong{font-size:15px;line-height:22px}#app .staff-aside{grid-template-columns:1fr;gap:24px}#app .staff-main .order-layout{grid-template-columns:1fr}#app .side-paper{padding:20px 0 0}#app .day-plan div{padding:12px 0}}
@media(max-width:350px){#app .catalog-heading{flex-wrap:wrap;gap:4px}#app .catalog-summary{padding-top:0;display:block}#app .catalog-summary strong{font-size:12px}#app .product-card{padding:10px}#app .product-card h3{font-size:12px;line-height:19px;min-height:38px}#app .product-card>.btn{font-size:11px;gap:4px}#app .product-card>.btn .icon{width:14px;height:14px}#app .chip{font-size:11px;padding-inline:4px}#app .brand-name{font-size:22px}#app .task{grid-template-columns:minmax(0,1fr) auto;gap:12px}#app .task .task-icon{display:none!important}#app .product-buy-actions{grid-template-columns:1fr}#app .total{flex-wrap:wrap}}
/* Comparison pages keep the same geometry, merely suppress the review toolbar. */
@media(min-width:761px) and (max-width:1023px){#app .product-bottom{flex-direction:column;align-items:flex-start;gap:4px;min-height:50px}}
#app .product-card>.btn[data-add]{color:#fff}
:root[data-compare="true"] #app .header-search{margin-top:16px}:root[data-compare="true"] #app .catalog-heading p{display:none}

/* fonts-v7.css */
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/inter-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/inter-cyrillic-400-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/inter-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/inter-cyrillic-500-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/inter-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/inter-cyrillic-600-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/manrope-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/manrope-cyrillic-600-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/manrope-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/manrope-cyrillic-700-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/ChakraPetch-SemiBold.ttf') format('truetype')}

/* material-v7.css */
/* ORIHIRO paper v15 principles: fine grain, top light, contact + diffuse shadow,
   raised slips / recessed fields. Adapted to selected red/white A, geometry v6.
   One continuous paper base; no additional framed page container. */
:root[data-market="a"]{
  --canvas:#f5f5f2;--paper:#f5f5f2;--surface:#fff;--line:#dcdcd6;
  --paper-sc:38,38,32;--paper-ec:88,88,78;
  --paper-edge:inset 0 1px 0 rgba(255,255,255,.95),inset 0 0 0 .5px rgba(var(--paper-ec),.16),inset 0 -1px 0 rgba(var(--paper-ec),.08);
  --paper-lift:0 .5px 1px rgba(var(--paper-sc),.18),0 3px 8px -4px rgba(var(--paper-sc),.28);
  --paper-hover:0 .5px 1px rgba(var(--paper-sc),.18),0 10px 16px -8px rgba(var(--paper-sc),.34);
  --paper-cut:0 0 0 .75px rgba(var(--paper-ec),.24),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -.5px 0 rgba(var(--paper-ec),.08),0 1px 0 .25px rgba(255,255,255,.75);
  --paper-recess:inset 0 3px 8px -4px rgba(var(--paper-sc),.28),inset 0 .5px 1px rgba(var(--paper-sc),.18),0 1px 0 .25px rgba(255,255,255,.8);
  --paper-print:0 -.3px 0 rgba(var(--paper-sc),.15),0 .65px 0 rgba(255,255,255,.8);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
:root[data-market="a"] body{position:relative;isolation:isolate;background:var(--canvas);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
:root[data-market="a"] body:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--grain) 0 0/400px auto;mix-blend-mode:multiply;opacity:.09}
#app .site,#app .staff-main{background:transparent}
#app .site:before,#app .staff-main:before{display:none}
#app .brand-name{font-family:"Chakra Petch",Manrope,sans-serif;font-size:29px;line-height:36px;font-weight:600;letter-spacing:-.035em;color:var(--ink);text-shadow:var(--paper-print)}
#app .wordmark{display:block}
#app .brand small{display:none}
#app h1,#app h2,#app h3{font-family:Manrope,Inter,sans-serif;font-weight:600}
#app h1{letter-spacing:-.045em}
#app .catalog-heading h1{letter-spacing:-.045em}
#app .product-card h3{font-family:Inter,system-ui,sans-serif;font-weight:500;letter-spacing:-.015em}
#app .eyebrow{font-weight:500}
#app .price,#app .product-price,#app .total strong,#app .stat strong{font-family:Manrope,Inter,sans-serif;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
#app .paper{position:relative;isolation:isolate;background:radial-gradient(120% 90% at 22% 12%,rgba(255,255,255,.55),transparent 60%),radial-gradient(140% 120% at 80% 100%,rgba(var(--paper-ec),.035),transparent 55%),#fff;box-shadow:var(--paper-edge),var(--paper-lift)}
#app .paper:before{content:"";position:absolute;inset:0;display:block;z-index:-1;border-radius:inherit;pointer-events:none;background:var(--grain) var(--gx,0) var(--gy,0)/400px auto;mix-blend-mode:multiply;opacity:.07}
/* Keep the 1px geometry border but let the contact edge describe the material. */
:root[data-market="a"] #app .product-card{background:radial-gradient(120% 90% at 22% 12%,#ffffff8c,transparent 60%),radial-gradient(140% 120% at 80% 100%,rgba(var(--paper-ec),.035),transparent 55%),#fff!important;border-color:transparent;box-shadow:var(--paper-edge),var(--paper-lift);transition:box-shadow .2s}
#app .product-card:nth-child(3n+1){--gx:-90px;--gy:-180px}
#app .product-card:nth-child(3n+2){--gx:-380px;--gy:-20px}
#app .product-card:nth-child(3n){--gx:-210px;--gy:-110px}
#app .product-open,#app .product-card .product-art{background:transparent!important}
#app .product-card .category,#app .catalog-heading h1,#app .panel h2{text-shadow:var(--paper-print)}
/* Inset search and form fields share the same direction of light. */
#app .header-search .search{background:rgba(255,255,255,.25);border-color:transparent;box-shadow:var(--paper-cut),var(--paper-recess)}
#app .search input{background:transparent}
#app .field input,#app .field select,#app .field textarea,#app .chat-compose textarea{background:#f3f3ef;border-color:transparent;box-shadow:var(--paper-cut),var(--paper-recess)}
#app .chip{background:var(--paper)!important;border-color:transparent;box-shadow:var(--paper-cut);font-weight:500;transition:box-shadow .2s}
#app .chip.active{background:#bf0000!important;color:#fff;box-shadow:inset 0 1px #ffffff50,inset 0 -.5px #78000080,0 .5px 1px #26000035,0 3px 6px -4px #26000066}
#app .btn{position:relative;isolation:isolate;box-shadow:var(--paper-edge),var(--paper-lift);transition:box-shadow .18s,transform .18s}
#app .btn:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:var(--grain) -180px -70px/400px auto;mix-blend-mode:multiply;opacity:.07}
#app .btn.primary,#app .product-card>.btn[data-add]{background:#bf0000;color:white;border-color:#bf0000;box-shadow:inset 0 1px #ffffff55,inset 0 -.5px #78000080,0 .5px 1px #26000035,0 3px 8px -4px #26000070}
#app .btn.link{box-shadow:none;background:transparent}
#app .btn.link:before{display:none}
#app .btn:disabled{box-shadow:var(--paper-cut);transform:none}
#app .favorite-toggle{background:transparent;box-shadow:none}
#app .favorite-toggle.selected{background:#fff1f0;box-shadow:var(--paper-recess)}
#app .notice,#app .replacement,#app .message,#app .batch{box-shadow:var(--paper-cut)}
#app .gallery-print{background:transparent;box-shadow:none}
#app .product-info.paper,#app .product-delivery.paper,#app .product-description.paper{background:transparent;box-shadow:none}
#app .product-info.paper:before,#app .product-delivery.paper:before,#app .product-description.paper:before{display:none}
#app .sidebar{background:#f2f2ef;box-shadow:inset -1px 0 0 #fff}
#app .sidebar .brand-name{font-size:22px;line-height:30px;letter-spacing:-.04em}
#app .stat{background:#f5f5f2;box-shadow:var(--paper-cut)}
#app .stat.active,#app .side-nav button.active{background:#fff1f0;box-shadow:var(--paper-edge),var(--paper-lift)}
#app .task{box-shadow:var(--paper-edge),var(--paper-lift)}
#app .task .task-icon{box-shadow:var(--paper-recess)}
#app .bottom-nav{background:var(--canvas);backdrop-filter:none;box-shadow:inset 0 1px #fff,0 -1px 4px #26262012}
#app .bottom-nav button.active{background:transparent;box-shadow:none}
#app .desktop-nav button.active{background:transparent;box-shadow:none}
@media(hover:hover) and (pointer:fine){
  #app .product-card:hover{box-shadow:var(--paper-edge),var(--paper-hover)}
  #app .chip:not(.active):hover{box-shadow:var(--paper-edge),var(--paper-lift)}
  #app .btn:not(:disabled):not(.link):hover{transform:translateY(-1px)}
}
#app .btn:not(:disabled):not(.link):active{transform:translateY(1px);box-shadow:var(--paper-recess)}
@media(max-width:1023px){#app .brand-name{font-size:26px;line-height:34px}}
@media(max-width:760px){#app .brand-name{font-size:28px;line-height:36px}#app .bottom-nav button{font-weight:400}#app .chip{font-weight:500}}
@media(max-width:350px){#app .brand-name{font-size:26px;line-height:34px}}
@media(prefers-reduced-motion:reduce){#app .btn,#app .chip,#app .product-card{transition:none}#app .btn:not(:disabled):hover,#app .btn:not(:disabled):active{transform:none}}

/* mobile-v8.css */
/* Compact mobile cards: reduce image/duplicate metadata, retain actionable areas.
   Project dimensions; not a claim of Apple HIG certification. */
@media(max-width:760px){
  #app .catalog-grid{gap:16px 12px}
  #app .product-card{padding:10px}
  #app .product-card .product-art{aspect-ratio:auto;height:clamp(104px,28vw,124px);flex:0 0 auto;margin-bottom:8px;padding:4px 12px}
  #app .product-card .product-art>svg{height:100%;width:100%;max-width:112px;max-height:116px}
  #app .product-card .category{display:none}
  #app .product-card h3{font-size:14px;line-height:20px;min-height:40px;margin:0 0 4px}
  #app .product-card .volume{font-size:12px;line-height:16px;min-height:32px}
  #app .product-bottom{gap:2px;margin:8px 0}
  #app .product-card .price{font-size:20px;line-height:24px}
  #app .product-card .stock{font-size:11px;line-height:16px;min-height:16px}
  #app .product-card>.btn{height:48px;min-height:48px;font-size:13px;padding:10px 6px}
  #app .favorite-toggle{width:44px;height:44px;min-width:44px;min-height:44px;top:2px;right:2px}
  #app .chips{gap:8px}
  #app .chip{font-size:12px;padding-inline:3px}
  #app .qty button{width:44px;height:44px;min-width:44px;min-height:44px}
  #app .back{display:inline-flex;align-items:center;min-height:44px;padding:8px 0}
  #app .demo-state{gap:8px;flex-wrap:wrap}
  #app .demo-state button{min-height:44px;padding:8px}
  #app .field input,#app .field select,#app .field textarea,#app .chat-compose textarea{font-size:16px;line-height:24px}
  #app .message{font-size:16px;line-height:24px}
  #app .message small{font-size:12px;line-height:18px}
  #app .chat-heading small{font-size:12px;line-height:18px}
  #app .bottom-nav button{scroll-margin-bottom:88px}
  #app :is(button,input,select,textarea){scroll-margin-top:16px;scroll-margin-bottom:calc(96px + env(safe-area-inset-bottom))}
}
@media(max-width:350px){
  #app .product-card h3{font-size:14px;line-height:20px;min-height:40px}
  #app .product-card>.btn{font-size:12px;gap:4px}
  #app .chip{font-size:11px}
}

/* Revision 9: categories lead straight into products. */
#app .catalog-controls{padding-bottom:0;margin-bottom:16px;border-bottom:0}

/* runtime.css */
.runtime-notice{margin:12px 0;padding:14px 18px;border:1px solid var(--line);background:var(--paper);border-radius:var(--r);line-height:1.6}.runtime-notice.error{border-color:var(--red);color:var(--red)}.runtime-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.runtime-form{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.runtime-form h3{margin-bottom:12px}.runtime-check{display:flex;gap:10px;align-items:center;margin:10px 0}.runtime-check input{width:20px;height:20px}.runtime-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.runtime-columns .field{min-width:0}.runtime-section{margin-top:20px}.runtime-price{font-variant-numeric:tabular-nums}.product-art img,.mini-art img{width:100%;height:100%;object-fit:contain}.runtime-unit{padding:10px 0;border-bottom:1px solid var(--line)}.runtime-form input,.runtime-form select{max-width:100%}.palettebar{display:none}.runtime-list{display:grid;gap:12px}.runtime-error-code{font-size:12px}.runtime-notice button{margin-left:10px}form[aria-busy=true]{opacity:.7} @media(max-width:700px){.reviewbar{flex-wrap:wrap}.role-switch button{font-size:11px;padding:7px}.runtime-columns{grid-template-columns:1fr}.runtime-notice{margin:8px 0}}
.runtime-section,.runtime-form{overflow-wrap:anywhere}

.report-table{border-collapse:collapse;width:100%;margin:16px 0}.report-table th,.report-table td{padding:8px;text-align:left;border-bottom:1px solid #ddd;white-space:nowrap}

/* Product photography v1: one canvas across catalog, detail, basket and orders.
   Original image bytes, proportions and labels are preserved. */
#app .product-card .product-art,
#app .gallery-print .product-art{
  position:relative;display:block;width:100%;height:auto;min-height:0;
  aspect-ratio:1 / 1;padding:0;margin:0 0 14px;overflow:hidden;
  background:#fff!important;border:1px solid #ecece8;border-radius:10px;
  box-shadow:none;transform:none;
}
#app .product-art::after{display:none}
#app .product-art>img{
  position:absolute;inset:8%;display:block;width:84%;height:84%;
  max-width:none;max-height:none;object-fit:contain;object-position:center;
  filter:none;transform:none;
}
#app .mini-art,#app .thumb{
  position:relative;width:64px;height:64px;aspect-ratio:1 / 1;
  background:#fff;border:1px solid #ecece8;border-radius:8px;
  overflow:hidden;flex-shrink:0;
}
#app .mini-art>img,#app .thumb>img{
  position:absolute;inset:8%;display:block;width:84%;height:84%;
  object-fit:contain;object-position:center;filter:none;transform:none;
}
#app .product-card h3{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;
  overflow:hidden;line-height:1.5;min-height:4.5em;
}
#app .gallery-print{margin-bottom:16px}
#app .photo-caption{color:var(--muted)}
@media(max-width:760px){
  #app .mini-art{width:48px;height:48px}
  #app .product-card .product-art{margin-bottom:12px}
}

/* product-card.css */
/* Scoped product page. The catalogue keeps its existing layout. */
#app .pd-page{gap:clamp(24px,5vw,72px);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);padding-bottom:40px}
#app .pd-gallery{min-width:0;position:sticky;top:24px}
#app .pd-photo{width:100%;aspect-ratio:1/1;border:1px solid #e8e6df;border-radius:16px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:32px;cursor:zoom-in}
#app .pd-photo>img{width:100%;height:100%;object-fit:contain;min-height:0;max-height:430px}
#app .pd-photo>span{position:absolute;bottom:14px;right:18px;display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}
#app .pd-photo .icon{width:14px;height:14px}#app .pd-no-photo{cursor:default;color:var(--muted)}
#app .pd-thumbs{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}#app .pd-thumbs button{width:64px;height:64px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:8px}#app .pd-thumbs button[aria-pressed=true]{border:2px solid var(--red)}#app .pd-thumbs img{width:100%;height:100%;object-fit:contain}
#app .pd-info{min-width:0}#app .pd-info h1{font-size:clamp(25px,3vw,38px);line-height:1.2;letter-spacing:-1px;margin:10px 0 14px;overflow-wrap:anywhere}
#app .pd-format{font-size:13px;color:var(--muted);margin-top:14px;line-height:1.6}
#app .pd-sku{font-size:12px;color:var(--muted);margin-bottom:16px}#app .pd-info .stock{font-size:12px}#app .pd-intro{font-size:14px;line-height:1.8;margin:20px 0;color:var(--ink)}
#app .pd-purchase{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}#app .pd-price{font-size:34px;font-weight:700;line-height:1.2;color:var(--red);font-variant-numeric:tabular-nums}#app .pd-price>span{font-size:12px;font-weight:400;color:var(--muted);margin-left:12px;white-space:nowrap}
#app .pd-quantity-row{display:flex;justify-content:space-between;align-items:center;margin:24px 0 0;gap:12px;font-size:13px}#app .pd-quantity{display:grid;grid-template-columns:44px 60px 44px;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}#app .pd-quantity button{height:44px;border:0;background:transparent;font-size:22px;cursor:pointer}#app .pd-quantity input{width:60px;min-width:0;text-align:center;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);background:transparent;font-size:15px;appearance:textfield;-moz-appearance:textfield}#app .pd-quantity input::-webkit-inner-spin-button,#app .pd-quantity input::-webkit-outer-spin-button{appearance:none;margin:0}
#app .pd-quantity-error{font-size:12px;color:var(--red);margin:6px 0;line-height:1.5;min-height:0}#app .pd-quantity-error:empty{display:none}#app .pd-subtotal{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;margin:18px 0}#app .pd-subtotal strong{font-size:18px;font-variant-numeric:tabular-nums}
#app .pd-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}#app .pd-actions>.btn{min-height:50px;flex:1;padding:12px 15px;white-space:nowrap}#app .pd-actions>.favorite-full{flex:0 1 auto;font-size:12px}#app .pd-purchase-note{font-size:12px;line-height:1.7;color:var(--muted);margin:16px 0 0}#app .pd-cart-link{background:none;border:0;display:flex;align-items:center;gap:6px;font-size:12px;margin-top:14px;padding:6px 0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
#app .pd-delivery{border-top:1px solid var(--line);margin-top:24px;padding:20px 0;font-size:13px}#app .pd-delivery h2{font-size:14px;font-weight:600;margin:0 0 12px}#app .pd-delivery .delivery-item{margin:16px 0 0}
#app .pd-content{border-top:1px solid var(--line);padding-top:8px}#app .pd-content-section{border-bottom:1px solid var(--line);padding:24px 0}#app .pd-content-section h2{font-size:18px;font-weight:600;line-height:1.4;margin:0}#app .pd-content p{font-size:14px;line-height:1.85;white-space:normal;overflow-wrap:anywhere;max-width:850px;margin:12px 0 4px}
#product-photo-dialog{border:0;border-radius:12px;padding:40px 24px 24px;max-width:min(92vw,850px);max-height:90dvh;background:white}#product-photo-dialog::backdrop{background:#1b211ecc}#product-photo-dialog img{display:block;max-width:100%;max-height:76dvh;object-fit:contain;margin:auto}.pd-photo-close{position:absolute;top:4px;right:8px;width:40px;height:40px;border:0;background:white;border-radius:50%;font-size:28px;cursor:pointer}
#app .pd-page button:focus-visible,#app .pd-page input:focus-visible{outline:2px solid var(--red);outline-offset:3px}#app .pd-page button:disabled{cursor:default;opacity:.45}
@media(max-width:760px){#app .pd-page{grid-template-columns:1fr;gap:24px;padding-bottom:24px}#app .pd-gallery{position:static}#app .pd-photo{padding:28px;max-width:440px;margin:auto}#app .pd-photo>img{max-height:330px}#app .pd-info h1{font-size:27px;line-height:1.25}#app .pd-price{font-size:30px}#app .pd-intro{font-size:13px;line-height:1.75}#app .pd-actions>.btn{flex-basis:100%}#app .pd-actions>.favorite-full{flex-basis:auto;min-height:44px;padding-inline:0;border:0;box-shadow:none;background:transparent}#app .pd-content p{font-size:13px}#app .pd-purchase{margin-top:20px;padding-top:20px}}
@media(prefers-reduced-motion:reduce){#app .pd-page *{scroll-behavior:auto}}

/* C01 public catalogue and product details. Existing brand tokens are authoritative. */
#app #main .cg-gallery{min-width:0;position:relative;margin-bottom:12px}
#app #main .cg-track{display:flex;position:relative;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:1;touch-action:pan-x pan-y pinch-zoom;border-radius:12px;background:#fff;overscroll-behavior-x:contain}
#app #main .cg-track::-webkit-scrollbar{display:none}
#app #main .cg-slide{display:block;position:relative;flex:0 0 100%;min-width:100%;width:100%;aspect-ratio:1;padding:12px;background:#fff;scroll-snap-align:start;scroll-snap-stop:always;touch-action:pan-x pan-y pinch-zoom;overflow:hidden}
#app #main .cg-slide>img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;pointer-events:none}
#app #main .cg-controls{display:flex;position:relative;justify-content:space-between;align-items:center;gap:0;min-height:44px;margin-top:2px}
#app #main .cg-controls button{width:44px;min-width:44px;height:44px;border-radius:50%;font-size:26px;line-height:1;background:transparent;color:var(--ink);border:0}
#app #main .cg-controls button[aria-disabled=true]{opacity:.3;cursor:default}
#app #main .cg-count{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;pointer-events:none;text-align:center;font-size:10px;line-height:1.5;font-variant-numeric:tabular-nums;color:var(--muted)}
#app #main .cg-empty{display:grid;place-items:center;width:100%;aspect-ratio:1;padding:20px;color:var(--muted);background:#fff;font-size:12px;line-height:1.5;text-align:center}
#app #main .cg-slide:focus-visible{outline:3px solid var(--brand,var(--red));outline-offset:-4px}
#app #main .cg-controls button:focus-visible,#app #main .pd-section-links a:focus-visible,#product-photo-dialog button:focus-visible{outline:3px solid var(--brand,var(--red));outline-offset:2px}
#app #main .catalog-grid .product-card .product-open{flex:1 0 auto;min-height:44px;overflow-wrap:anywhere}
#app #main .catalog-grid .product-card .product-open h3{min-height:3em;margin:0;line-height:1.5}
#app #main .catalog-grid .product-card .product-bottom{min-height:60px;justify-content:flex-end}
#app #main .product-card .favorite-toggle{z-index:2;min-width:44px;min-height:44px}
#app #main .pd-overview{margin:18px 0}
#app #main .pd-overview .pd-intro{margin:0;font-size:15px;line-height:1.85;max-width:68ch;white-space:pre-wrap;overflow-wrap:anywhere}
#app #main .pd-section-links{display:flex;flex-wrap:wrap;gap:0 16px;margin:14px 0 0;padding:10px 0;border-top:1px solid var(--line)}
#app #main .pd-section-links a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px;font-size:12px;line-height:1.5;color:var(--ink)}
#app #main .pd-content-section,#app #main .pd-delivery{scroll-margin-top:24px}
#app #main .pd-content-section{padding:28px 0;max-width:900px}
#app #main .pd-content-section h2{font-size:20px;line-height:1.4;margin-bottom:14px}
#app #main .pd-content p{font-size:15px;line-height:1.95;max-width:76ch;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;line-break:strict;margin:0}
#app #main .pd-format{white-space:pre-wrap;overflow-wrap:anywhere}
#app #main .pd-sku{overflow-wrap:anywhere}
#app #main .pd-thumbs{flex-wrap:nowrap;overflow-x:auto;padding:4px 3px 8px;margin-top:10px}
#app #main .pd-thumbs button{flex:0 0 60px;width:60px;height:60px}
#app #main .pd-photo>span{min-height:24px;background:#fff;padding:3px 6px;border-radius:4px}
#app #main .pd-delivery{margin-top:28px;max-width:900px}
#product-photo-dialog{padding:52px 20px 20px;max-width:min(94vw,1000px)}
#product-photo-dialog>img{max-height:calc(85dvh - 130px)}
#product-photo-dialog .pd-photo-close{width:44px;height:44px;top:4px;right:6px;color:var(--ink)}
.pd-photo-navigation{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:12px;color:var(--ink);font-size:13px}
.pd-photo-navigation button{width:44px;height:44px;background:#fff;border:1px solid var(--line);border-radius:50%;font-size:26px;color:var(--ink)}
@media(max-width:760px){
 #app #main .cg-gallery{margin-bottom:8px}
 #app #main .cg-slide{padding:8px}
 #app #main .cg-controls{gap:0}
 #app #main .pd-photo{height:clamp(220px,67vw,330px);aspect-ratio:auto;padding:22px}
 #app #main .pd-info h1{font-size:24px;line-height:1.35;margin:8px 0 12px;letter-spacing:-.035em}
 #app #main .pd-overview .pd-intro{font-size:14px;line-height:1.85}
 #app #main .pd-section-links{gap:0 14px}
 #app #main .pd-content-section{padding:24px 0}
 #app #main .pd-content-section h2{font-size:19px}
 #app #main .pd-content p{font-size:14px;line-height:1.95}
 #app #main .pd-thumbs button{height:52px;width:52px;flex-basis:52px}
}
@media(prefers-reduced-motion:reduce){#app #main .cg-track,#app #main .pd-page *,#product-photo-dialog *{scroll-behavior:auto!important;transition:none!important}}

/* Composition presentation: source text and quantities remain unchanged. */
#app #main .pd-composition{max-width:76ch;min-width:0;font-size:15px;line-height:1.75}
#app #main .pd-composition .pd-portion{display:block;max-width:none;padding:14px 18px;margin:0 0 16px;border:1px solid #dae3ea;border-left:4px solid #7c95a7;border-radius:12px;background:#f2f5f8;color:#334b5c;font-size:15px;font-weight:600;line-height:1.6;white-space:pre-wrap;text-wrap:balance}
#app #main .pd-portion-measure{display:inline-block;white-space:nowrap;font-weight:700}
#app #main .pd-components{list-style:none;margin:0;padding:0;border:1px solid #e2e7ed;border-radius:14px;overflow:hidden;background:#fff}
#app #main .pd-component{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.6fr);column-gap:24px;align-items:baseline;padding:14px 18px;line-height:1.65;overflow-wrap:anywhere;white-space:pre-wrap}
#app #main .pd-component+.pd-component{border-top:1px solid #e8edf2}
#app #main .pd-component:nth-child(even){background:#f7f9fc}
#app #main .pd-component-name{min-width:0;color:var(--ink)}
#app #main .pd-component-value{min-width:0;color:var(--ink);font-size:14px;line-height:1.75}
#app #main .pd-component-amount{display:inline-block;max-width:100%;padding:2px 9px;border-radius:7px;background:#e9eff4;color:#263f50;font-size:15px;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.6;white-space:nowrap}
#app #main .pd-component-separator{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:pre}
#app #main .pd-component-plain{display:block}
#app #main .pd-composition .pd-composition-heading{margin:0 0 12px;font-size:16px;font-weight:650;line-height:1.5;color:var(--ink)}
#app #main .pd-composition .pd-composition-text{margin:0;max-width:none;font-size:15px;line-height:1.85;white-space:pre-wrap}
#app #main .pd-composition-gap{height:24px}
@media(max-width:760px){
 #app #main .pd-composition{font-size:14px}
 #app #main .pd-composition .pd-portion{padding:12px 14px;font-size:14px}
 #app #main .pd-component{grid-template-columns:minmax(0,1fr);row-gap:8px;padding:13px 14px}
 #app #main .pd-component-value{padding-left:12px}
 #app #main .pd-component-amount{font-size:15px}
 #app #main .pd-composition .pd-composition-text{font-size:14px}
}

/* Shared, literal product details across supplements, food and equipment. */
#app #main .pd-detail{min-width:0;max-width:76ch;font-size:15px;line-height:1.85}
#app #main .pd-detail-facts,#app #main .pd-detail-bullets,#app #main .pd-detail-prose{margin:0 0 16px;padding:0;border:1px solid #e2e7ed;border-radius:14px;background:#fff;overflow:hidden}
#app #main .pd-detail-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.6fr);gap:8px 24px;align-items:baseline;padding:14px 18px;line-height:1.7;overflow-wrap:anywhere}
#app #main .pd-detail-row+.pd-detail-row,#app #main .pd-detail-bullets li+li{border-top:1px solid #e8edf2}
#app #main .pd-detail-row:nth-child(even),#app #main .pd-detail-bullets li:nth-child(even){background:#f7f9fc}
#app #main .pd-detail-row dt{min-width:0;margin:0;font-weight:400;color:var(--ink)}
#app #main .pd-detail-row dd{min-width:0;margin:0;font-size:14px;line-height:1.75;color:var(--ink)}
#app #main .pd-detail-delimiter{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:pre}
#app #main .pd-detail-bullets{list-style:none}
#app #main .pd-detail-bullets li{padding:12px 16px;overflow-wrap:anywhere}
#app #main .pd-detail-prose{padding:16px 18px}
#app #main .pd-detail .pd-detail-paragraph{max-width:none;font-size:15px;line-height:1.85;white-space:normal;overflow-wrap:anywhere;margin:0}
#app #main .pd-detail .pd-detail-paragraph+.pd-detail-paragraph{margin-top:12px}
#app #main .pd-detail-heading{font-size:16px;font-weight:650;line-height:1.5;margin:20px 0 12px;color:var(--ink);overflow-wrap:anywhere}
#app #main .pd-detail-heading:first-child{margin-top:0}
#app #main .pd-detail .pd-portion{display:block;max-width:none;margin:0 0 16px;padding:14px 18px;border:1px solid #dae3ea;border-left:4px solid #7c95a7;border-radius:12px;background:#f2f5f8;color:#334b5c;font-size:15px;font-weight:600;line-height:1.6;white-space:normal;text-wrap:balance;overflow-wrap:anywhere}
#app #main .pd-detail>:last-child{margin-bottom:0}
@media(max-width:760px){
 #app #main .pd-detail{font-size:14px}
 #app #main .pd-detail-row{grid-template-columns:minmax(0,1fr);padding:13px 14px}
 #app #main .pd-detail-row dd{padding-left:12px}
 #app #main .pd-detail-prose{padding:14px}
 #app #main .pd-detail .pd-detail-paragraph{font-size:14px}
 #app #main .pd-detail .pd-portion{font-size:14px;padding:12px 14px}
}

/* account-auth.css */
.auth-panel{max-width:640px;margin:28px auto}.auth-panel h1{font-size:30px;line-height:1.25;margin:0 0 16px}.auth-description{line-height:1.75;color:var(--muted);margin-bottom:24px}.auth-providers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.auth-provider{display:flex;justify-content:space-between;gap:12px;min-height:48px}.auth-provider span{font-size:12px;color:var(--muted)}.auth-provider:disabled{cursor:default;opacity:.55}.auth-email-button{width:100%}.auth-panel form{display:grid;gap:16px;margin:20px 0}.auth-text-button{border:0;background:none;padding:12px 0;color:var(--red);text-decoration:underline;cursor:pointer}.auth-security{margin-top:24px;max-width:850px}.auth-security p{line-height:1.75}.auth-panel .runtime-actions{margin-top:24px}#google-auth-button{min-height:44px;margin:20px 0}@media(max-width:600px){.auth-panel{margin:12px 0}.auth-panel h1{font-size:25px}.auth-providers{grid-template-columns:1fr}.auth-panel .runtime-actions .btn{width:100%}}

/* release.css */
/* Current storefront corrections. Earlier approved visual sources retain order. */
html{scroll-padding-bottom:100px}body{overflow-wrap:break-word}
[hidden]{display:none!important}
#app .site,#app .desk-shell{min-height:100dvh}
#app .store-line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px var(--pad,32px);border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}
#app .store-link{background:none;border:0;color:var(--accent);padding:7px 0;text-align:left;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
#app .store-preview{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 20px}
#app .store-footer{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;margin-top:40px;padding:24px 0 8px;overflow-wrap:anywhere;font-size:12px}
#app .store-footer p{margin:6px 0;line-height:1.7}#app address{font-style:normal;line-height:1.8;overflow-wrap:anywhere}
#app .store-about{max-width:820px;margin:0 auto}#app .store-about h1{font-size:32px;line-height:1.25;margin:0 0 24px}#app .store-about h2{font-size:20px;margin:28px 0 12px}#app .store-about p{line-height:1.85;margin:12px 0}
#app .catalog-delivery{border-top:1px solid var(--line);margin-top:32px;padding-top:24px;font-size:13px;line-height:1.8}#app .catalog-delivery h2{font-size:18px;margin:0 0 12px}
#app .site-header,#app .header-search,#app .body,#app .staff-main{min-width:0}
#app .line-item>div,#app .task>span{min-width:0;overflow-wrap:anywhere}#app .item-end{min-width:0}
#app .runtime-actions .btn{max-width:100%;white-space:normal}#app input,#app select,#app textarea{min-width:0;max-width:100%}
#app .runtime-table-wrap{max-width:100%;overflow-x:auto}#app .report-table{display:block;overflow-x:auto;max-width:100%}
#app .auth-testing{border-top:1px solid var(--line);padding-top:16px;margin-top:24px}#app .auth-testing p{font-size:12px;line-height:1.7;color:var(--muted)}
#app button:focus-visible,#app input:focus-visible,#app a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:760px){
  #app .store-line{padding:8px 20px;font-size:11px}
  #app .body,#app .staff-main{padding-bottom:calc(102px + env(safe-area-inset-bottom))}
  #app .store-footer{grid-template-columns:1fr;gap:20px;font-size:11px}
  #app .store-about h1{font-size:27px}#app .store-about h2{font-size:18px}
  #app .bottom-nav{overflow-x:auto;justify-content:flex-start;overscroll-behavior-x:contain;min-height:72px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}
  #app .bottom-nav button{flex:1 0 52px;min-width:52px;min-height:48px}
  #app .line-item{grid-template-columns:48px minmax(0,1fr)}#app .line-item .item-end{grid-column:2;justify-self:start}
  #app .panel h1{overflow-wrap:anywhere}#app .auth-providers{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:360px){#app .store-line{padding-inline:14px}#app .body{padding-inline:14px}#app .auth-providers{grid-template-columns:1fr}}

#app .preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}

/* workflow.css */
#app .store-links{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
#app .inquiry-form{max-width:850px;margin-bottom:32px}#app textarea{display:block;width:100%;font:inherit;line-height:1.65;padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);resize:vertical}
#app .inquiry-preview{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:8px;max-width:420px}#app .inquiry-preview img,#app .inquiry-photo img{display:block;max-width:100%;max-height:260px;object-fit:contain}
#app .inquiry-filters{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}#app .inquiry-filters [aria-pressed=true]{border-color:var(--accent);color:var(--accent)}
#app .inquiry-card{margin:18px 0;overflow-wrap:anywhere}#app .inquiry-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}#app .inquiry-heading time{font-size:12px;color:var(--muted)}#app .inquiry-card p{line-height:1.8;margin:12px 0}
#app .content-picker{margin-bottom:24px}#app .content-product-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:320px;overflow:auto;padding:4px}#app .content-product-list button{display:flex;flex-direction:column;gap:5px;text-align:left;white-space:normal;min-width:0}#app .content-product-list span{font-size:11px;color:var(--muted)}#app .content-product-list [aria-pressed=true]{border-color:var(--accent)}
#app .content-status{margin-bottom:24px}#app .content-status p{line-height:1.8}#app .content-identity,#app .content-refs{border:1px solid var(--line);padding:14px;margin:16px 0}#app .content-identity label,#app .content-refs label{display:flex;gap:10px;align-items:flex-start;margin:10px 0;line-height:1.6;overflow-wrap:anywhere}#app .content-refs{max-height:200px;overflow:auto;font-size:12px}
#app .content-identity input,#app .content-refs input{width:18px;height:18px;flex-shrink:0;margin-top:3px}#app .content-source{border:1px solid var(--line);padding:16px;margin:20px 0;border-radius:8px}#app .content-source .btn{margin-top:12px}#app .content-source a{display:block;overflow-wrap:anywhere}
#app .content-field{border-top:1px solid var(--line);padding-top:22px;margin-top:24px}#app .content-field .field>span{font-weight:600;font-size:17px}#app .content-preview,#app .content-history{margin:24px 0}#app .content-preview section{margin-top:22px}#app .content-preview p{line-height:1.8}#app .content-history{display:flex;flex-direction:column;gap:10px;align-items:flex-start}#app .content-dirty{color:var(--accent);font-weight:600}
#app .content-preview,#app .content-status,#app .content-source{overflow-wrap:anywhere}
@media(max-width:760px){#app .store-line{flex-wrap:wrap;gap:4px 12px}#app .store-links{gap:12px}#app .content-product-list{grid-template-columns:1fr}#app .content-source{padding:12px}#app .content-identity,#app .content-refs{padding:10px}#app .inquiry-form h2{font-size:23px}#app .content-history .btn{width:100%;text-align:left;white-space:normal}}

/* ui-system.css */
/* Final shared layout layer: common rhythm, then dedicated mobile chrome. */
#app{--ui-gap:24px;--ui-control:48px}
#app .body,#app .staff-main{min-width:0}
#app .page-title{align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 24px}
#app .page-title h1{margin:0;font-size:clamp(27px,3vw,36px);line-height:1.2;letter-spacing:-.6px}
#app .page-title>div{min-width:0}
#app .panel{padding:24px;border-radius:12px}
#app .panel>h1:first-child,#app .panel>h2:first-child{margin-top:0}
#app .panel>p{line-height:1.75}
#app .inquiry-form,#app .store-about,#app .auth-panel,#app .auth-security{max-width:none;margin:0 0 24px}
#app .store-about h1,#app .auth-panel h1{font-size:clamp(27px,3vw,36px);line-height:1.2;letter-spacing:-.6px}
#app .field{display:block;margin:0 0 20px;line-height:1.5}
#app .field>input:not([type=checkbox]):not([type=radio]),#app .field>select,#app .field>textarea{margin-top:8px;min-height:48px;border-radius:8px}
#app .field>textarea{padding:12px;line-height:1.65}
#app .field>input[type=file]{padding:10px;white-space:normal;max-width:100%}
#app input[type=file]::file-selector-button{font:inherit;margin-right:12px;border:1px solid var(--line);border-radius:5px;padding:7px 10px;background:white;color:var(--ink)}
#app .btn{min-height:48px;line-height:1.4}
#app .runtime-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:20px}
#app .runtime-actions>.btn{margin:0}
#app .runtime-columns>*{min-width:0}
#app .runtime-check{min-height:48px;align-items:center}
#app .inquiry-heading{align-items:center}
#app .store-link{min-height:48px;display:inline-flex;align-items:center}
#app :is(button,a,input,select,textarea):focus-visible,.app-menu :is(button,a):focus-visible{outline:2px solid var(--red);outline-offset:3px}
#app h1:focus{outline:none}
#app .app-header{display:none}
.app-menu{border:1px solid var(--line);border-radius:16px;background:var(--paper,#fff);color:var(--ink,#222);padding:24px;width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 32px);overscroll-behavior:contain}
.app-menu::backdrop{background:#19251f80}
.app-menu-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}
.app-menu-heading h2{margin:0;font-size:24px}
.app-menu-close{width:48px;height:48px;flex-shrink:0;border:1px solid var(--line);border-radius:12px;background:white;color:inherit;font-size:30px;cursor:pointer}
.app-menu nav{display:grid;gap:4px}
.app-menu nav button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;width:100%;padding:12px 16px;text-align:left;font:inherit;background:transparent;border:0;border-bottom:1px solid var(--line);color:inherit;cursor:pointer}
.app-menu nav [aria-current=page]{color:var(--red);font-weight:600;background:#f8f5f0;border-radius:8px}
.app-menu .icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6;flex-shrink:0}
.app-menu-note{font-size:13px;line-height:1.6;color:var(--muted);margin:24px 16px 0}
body.app-menu-open{overflow:hidden}
@media(min-width:761px){#app .bottom-nav{display:none}}
@media(max-width:760px){
  #app{--pad:20px;--ui-gap:20px;--app-nav:72px}
  #app .site{padding-top:calc(72px + env(safe-area-inset-top,0px))}
  #app .desk-shell{padding-top:calc(72px + env(safe-area-inset-top,0px))}
  #app .site-header{display:none}
  #app .app-header{position:fixed;display:flex;align-items:center;justify-content:space-between;gap:12px;top:0;left:0;right:0;z-index:40;height:calc(72px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 20px 0;border-bottom:1px solid var(--line);background:var(--paper,#fff)}
  #app .app-header .brand{gap:8px;min-width:0;min-height:48px}
  #app .app-header .brand-logo{width:44px;height:44px}
  #app .app-header .brand-name{font-size:21px;white-space:nowrap}
  #app .app-context{font-size:11px;color:var(--muted);max-width:105px;text-align:right;line-height:1.5}
  #app .store-line{display:none}
  #app .header-search{padding:16px 20px 0;margin:0}
  #app .header-search .search{min-height:48px}
  #app .body,#app .staff-main{padding:24px 20px calc(var(--app-nav) + env(safe-area-inset-bottom,0px) + 28px);margin:0;width:100%;min-width:0}
  #app .store-footer{display:none}
  #app .page-title{margin-bottom:20px;gap:12px;align-items:center}
  #app .page-title h1{font-size:28px;overflow-wrap:anywhere}
  #app .page-title>.btn{min-height:44px;padding:10px 14px}
  #app .panel{padding:20px;border-radius:12px}
  #app .auth-panel{margin:0 0 20px}
  #app .auth-panel h1,#app .store-about h1{font-size:27px}
  #app .field{margin-bottom:20px}
  #app :is(input,select,textarea){scroll-margin-top:96px;scroll-margin-bottom:110px}
  #app .field :is(input,select,textarea){font-size:16px}
  #app .runtime-actions>.btn{flex:1 1 160px}
  #app .bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;position:fixed;left:0;right:0;bottom:0;height:calc(var(--app-nav) + env(safe-area-inset-bottom,0px));padding:4px 8px calc(4px + env(safe-area-inset-bottom,0px));gap:0;background:var(--paper,#fff);border-top:1px solid var(--line);box-shadow:0 -4px 20px #19251f06;z-index:45;overflow:visible}
  #app .desk-shell .bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
  #app .bottom-nav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:56px;width:auto;padding:5px 0;font-size:10px;line-height:1.2;border:0;border-radius:10px;background:transparent;color:var(--muted);white-space:normal}
  #app .bottom-nav button.active{color:var(--red);background:#f8f5f0}
  #app .bottom-nav .icon{width:22px;height:22px}
  #app .bottom-nav .count{position:absolute;top:1px;right:15%;font-size:10px;min-width:16px;line-height:16px}
  #app .pd-quantity{grid-template-columns:48px 60px 48px}
  #app .pd-quantity button{height:48px}
  #app .pd-cart-link{min-height:48px}
  .app-menu{position:fixed;inset:0;margin:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:calc(20px + env(safe-area-inset-top,0px)) 20px calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto}
  .app-menu-heading{margin-bottom:20px}
}
@media(max-width:360px){#app{--pad:16px}#app .body,#app .staff-main{padding-inline:16px}#app .panel{padding:16px}#app .app-header{padding-inline:16px}#app .app-context{max-width:82px}#app .app-header .brand-name{font-size:19px}}
@media(prefers-reduced-motion:reduce){#app *,.app-menu *{scroll-behavior:auto;animation:none!important;transition:none!important}}

/* Quiet surfaces and consistent touch controls replace the older bevel layers. */
#app .paper{background:#fff;box-shadow:0 2px 12px #19251f06;border-color:#e4e6e1}
#app .paper::before,#app .paper::after{display:none}
#app .btn,#app .chip{background-image:none;text-shadow:none;box-shadow:none}
#app .btn.primary,#app .chip.active{background:var(--red);color:#fff}
#app .field :is(input,select,textarea),#app .search{background:#fff;box-shadow:none;background-image:none}
#app .product-card{border-radius:12px}
@media(max-width:760px){
 #app .chips{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:0 0 8px;scrollbar-width:none}
 #app .chips::-webkit-scrollbar{display:none}
 #app .chips .chip{flex:0 0 auto;min-height:48px;max-width:none;white-space:nowrap;padding:10px 14px;border-radius:10px}
 #app .product-card .btn{min-height:48px;padding-inline:8px}
}

#app .field>input:not([type=checkbox]):not([type=radio]),#app .field>select,#app .field>textarea{border:1px solid #d7dcd6;font-weight:400;color:var(--ink)}
#app .field>input:focus,#app .field>select:focus,#app .field>textarea:focus{border-color:var(--red)}
#app .inquiry-form>p{max-width:76ch;margin-bottom:24px}
#app .inquiry-form form{max-width:760px}
#app .inquiry-form form>.small{margin:-8px 0 24px}
#app .runtime-table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain}
@media(max-width:760px){html{scroll-padding-top:88px;scroll-padding-bottom:96px}#app :is(button,a,h1,h2){scroll-margin-top:88px;scroll-margin-bottom:96px}}

/* visual-zones.css */
/* HIG hierarchy + selected UX-09/RUI-42 adaptations. Preserve full package photos. */
#app{--zone-gap:24px;--zone-line:#e4e7e1}
#app .page-title{padding-top:4px;margin-bottom:24px}
#app .page-title .eyebrow{margin-bottom:8px;line-height:1.5}
#app .panel :is(h2,h3){line-height:1.35}
#app .panel>h2{margin-bottom:20px}
#app .runtime-form{padding-top:24px;margin-top:24px;border-color:var(--zone-line)}
#app .runtime-form:first-child{padding-top:0;margin-top:0;border-top:0}
#app .runtime-form h3{margin:0 0 16px;font-size:18px}
#app .runtime-form>p{line-height:1.7;margin-bottom:16px;max-width:72ch}
#app .runtime-form>.btn{margin-top:4px}
#app .panel+.panel,#app .runtime-section+.page-title{margin-top:24px}
#app .runtime-columns{gap:20px}
#app .runtime-columns .field{margin-bottom:0}
#app .runtime-check{align-items:flex-start;line-height:1.6;padding:10px 0;gap:12px}
#app .runtime-check input{flex:0 0 20px;margin:2px 0 0}
#app .store-about p{max-width:76ch}
#app .shop-terms-list{display:grid;gap:20px;margin:0}
#app .shop-terms-list>div{min-width:0}
#app .shop-terms-list dt{font-weight:600;margin-bottom:6px}
#app .shop-terms-list dd{margin:0;font-size:14px;line-height:1.75;overflow-wrap:anywhere}
#app .account-updates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}
#app .account-updates>.panel{margin:0}
#app .order-list{gap:12px}
#app .order-list .task{display:grid;grid-template-columns:48px minmax(0,1fr) minmax(140px,auto);align-items:center;gap:20px;min-height:112px;width:100%;padding:24px;text-align:left;border:1px solid var(--zone-line);border-radius:12px}
#app .order-list .task-icon{display:grid!important;place-items:center;width:48px;height:48px;border-radius:12px;background:#f5f6f2;box-shadow:none;border:0}
#app .order-list .order-entry{min-width:0;display:grid;gap:8px}
#app .order-list .order-entry strong{font-size:16px;line-height:1.45;overflow-wrap:anywhere}
#app .order-list .order-entry-status{font-size:13px;font-weight:400;line-height:1.5;color:var(--muted)}
#app .order-list .task-side{font-size:12px;line-height:1.6;white-space:normal;text-align:right;max-width:none;font-variant-numeric:tabular-nums}
#app .order-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:24px}
#app .order-main{display:grid;gap:24px;min-width:0}
#app .order-main>.panel,#app .order-main>.runtime-section{margin:0}
#app .order-main>.runtime-section{padding:24px;border:1px solid var(--zone-line);border-radius:12px;background:white;box-shadow:0 2px 12px #19251f06}
#app .order-main>.runtime-section>h2,#app .order-main>.runtime-section>h3{font-size:22px;margin-bottom:20px}
#app .order-main :is(.panel,.runtime-section)>p{line-height:1.75}
#app .order-actions .runtime-form+.runtime-form{margin-top:28px}
#app .line-item{display:grid;grid-template-columns:64px minmax(0,1fr) minmax(76px,auto);align-items:start;gap:16px;padding:20px 0}
#app .line-item>div{min-width:0}
#app .line-item h3{line-height:1.5;overflow-wrap:anywhere;margin:0 0 8px}
#app .line-item .item-end{align-self:start;text-align:right;white-space:nowrap;grid-column:auto}
#app .line-item .price{font-size:18px;line-height:1.5;font-variant-numeric:tabular-nums}
#app .line-item .mini-art{grid-column:auto;grid-row:auto;width:64px;height:64px}
#app .qty{margin-top:12px}
#app .total{gap:16px;align-items:baseline}
#app .total strong{white-space:nowrap;font-variant-numeric:tabular-nums}
/* A photo is intrinsic media, not a full-width background. No artificial enlargement. */
#app .product-art>img,#app .mini-art>img,#app .thumb>img{inset:0;margin:auto;width:auto;height:auto;max-width:84%;max-height:84%;object-fit:contain}
#app .pd-page{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(32px,4vw,64px)}
#app .pd-gallery{max-width:420px;width:100%;align-self:start}
#app .pd-photo{width:100%;height:auto;aspect-ratio:1;max-width:420px;padding:28px;overflow:hidden}
#app .pd-photo>img{display:block;flex:0 1 auto;width:auto;height:auto;max-width:100%;max-height:320px;object-fit:contain;object-position:center}
#app .pd-photo>span{font-size:11px}
#app .pd-info h1{font-size:clamp(26px,2.7vw,36px);line-height:1.25}
#app .pd-info .category{margin-top:0}
#app .pd-thumbs button{min-width:64px;min-height:64px}
#app .pd-intro{max-width:70ch}
#app .pd-content{margin-top:24px}
#app .pd-content-section{padding:28px 0;display:grid;grid-template-columns:minmax(180px,.3fr) minmax(0,1fr);gap:32px;align-items:start}
#app .pd-content-section h2{font-size:19px;line-height:1.5}
#app .pd-content-section p{margin:0;max-width:76ch}
#app .inquiry-preview img,#app .inquiry-photo img{width:auto;height:auto;max-width:100%;max-height:260px;object-fit:contain}
#app .chips{display:flex;flex-wrap:wrap;gap:8px}
#app .chips .chip{flex:0 0 auto;width:auto;min-height:48px;padding:10px 16px}
#app .header-search .search{box-shadow:none;background:white;border:1px solid #d7dcd6}
#app .header-search .search input{box-shadow:none;background:transparent;border:0}
@media(max-width:1000px){#app .order-layout{grid-template-columns:1fr}#app .order-fulfillment{margin-top:0}}
@media(max-width:760px){
 #app{--zone-gap:20px}
 #app .panel+.panel{margin-top:20px}
 #app .account-updates{grid-template-columns:1fr;gap:16px;margin-top:24px}
 #app .account-updates>.panel{margin:0}
 #app .order-list .task{grid-template-columns:40px minmax(0,1fr);gap:8px 14px;padding:20px;min-height:112px}
 #app .order-list .task-icon{width:40px;height:40px;grid-row:1 / span 2}
 #app .order-list .task-side{grid-column:2;text-align:left;font-size:11px}
 #app .order-list .order-entry strong{font-size:15px}
 #app .order-layout,#app .order-main{gap:20px}
 #app .order-main>.panel{margin:0}
 #app .order-main>.runtime-section{padding:20px}
 #app .line-item{grid-template-columns:52px minmax(0,1fr);gap:8px 12px;padding:20px 0}
 #app .line-item .mini-art{width:52px;height:52px;grid-row:1 / span 2}
 #app .line-item .item-end{grid-column:2;text-align:left}
 #app .line-item h3{font-size:14px}
 #app .runtime-columns{gap:20px;grid-template-columns:1fr}
 #app .pd-page{grid-template-columns:1fr;gap:24px}
 #app .pd-gallery{max-width:320px;justify-self:center}
 #app .pd-photo{max-width:320px;padding:24px}
 #app .pd-photo>img{max-height:260px}
 #app .pd-info h1{font-size:27px}
 #app .pd-content-section{grid-template-columns:1fr;gap:12px;padding:24px 0}
 #app .pd-content-section p{font-size:14px}
 #app .chips{flex-wrap:nowrap}
}

/* design-code.css */
/* Shark Shop design code. Neutral surfaces, one brand hue, semantic status colors.
   Variants are preview-only DOM attributes; the live default is Japanese red. */
:root,:root[data-market]{
 --canvas:#f8fafc;--paper:#ffffff;--surface:#ffffff;--ink:#20242d;--muted:#5e6673;
 --brand:#c6293a;--brand-hover:#a91f2e;--brand-soft:#fff0f2;--accent:#c6293a;--accent2:#a91f2e;--red:#c6293a;
 --line:#dce2ea;--control-line:#8893a3;--soft:#f0f3f7;--success:#176b51;--amber:#86520d;--amberbg:#fff6e7;
 --grain:none;--edge:none;--paper-edge:none;--paper-lift:none;--paper-cut:none;--paper-recess:none;--paper-print:none;
 --candidate-brand:var(--brand);--candidate-action:var(--brand);--candidate-action-text:#fff;--candidate-price:var(--ink);--candidate-link:var(--brand);
 --candidate-header:var(--surface);--candidate-header-text:var(--ink);--zone-line:var(--line);
 --font-ui:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 --shadow:0 2px 8px rgb(32 36 45 / 4%);--r:14px;
 font-family:var(--font-ui);font-weight:400;color:var(--ink);background:var(--canvas)
}
:root[data-design="indigo"]{--canvas:#f5f7fc;--brand:#354d91;--brand-hover:#273c78;--brand-soft:#edf1ff;--accent:#354d91;--accent2:#273c78;--red:#354d91;--ink:#1e273b;--muted:#5b667d;--line:#dce2ef;--soft:#edf1f8}
:root[data-design="porcelain"]{--canvas:#fffaf5;--brand:#aa3645;--brand-hover:#8e2634;--brand-soft:#fff0ed;--accent:#aa3645;--accent2:#8e2634;--red:#aa3645;--ink:#30272a;--muted:#6d6265;--line:#e9deda;--soft:#f8efeb}
html,body,:root[data-market] body{background:var(--canvas);background-image:none;font-family:var(--font-ui);font-weight:400;color:var(--ink);-webkit-font-smoothing:antialiased}
body::before,body::after,#app .site::before,#app .staff-main::before,#app .paper::before,#app .paper::after,#app .btn::before{display:none!important}
#app{--ui-gap:24px;--zone-line:var(--line);font-family:var(--font-ui);color:var(--ink)}
#app .site,#app .staff-main{background:var(--canvas);background-image:none;box-shadow:none}
#app :is(button,input,select,textarea),.app-menu{font-family:var(--font-ui);text-shadow:none}
#app :is(h1,h2,h3,h4,.brand-name,.price,.product-price,.pd-price,.total strong,.stat strong){font-family:var(--font-ui);font-weight:600;text-shadow:none;color:var(--ink)}
#app h1{letter-spacing:-.035em;line-height:1.25}
#app :is(h2,h3,h4){letter-spacing:-.02em}
#app .page-title h1,#app .auth-panel h1,#app .store-about h1,#app .staff-header h1{font-size:32px;line-height:1.25}
#app .brand-name{font-size:25px;line-height:1.3;letter-spacing:-.045em}
#app .sidebar .brand-name{font-size:22px}
#app .brand-logo{background:transparent}
#app .site-header,#app .store-line,#app .store-footer{background:transparent;border-color:var(--line)}
#app .muted,#app .small.muted,#app .category,#app .volume,#app .pd-sku,#app .app-context{color:var(--muted)}
#app .eyebrow{font-size:11px;line-height:1.5;letter-spacing:.1em;font-weight:500;color:var(--muted)}
#app .paper,#app .panel,#app .order-main>.runtime-section,#app .task,#app .stat{background:var(--surface)!important;background-image:none!important;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
#app .panel{padding:24px}
#app .product-card{padding:16px;box-shadow:var(--shadow)}
#app .product-card h3{font-family:var(--font-ui);font-size:15px;font-weight:500;line-height:1.5;letter-spacing:-.015em}
#app .product-card .volume{font-size:12px;line-height:1.5;font-weight:400}
#app .product-card .price{font-size:22px;letter-spacing:-.035em;color:var(--ink)}
#app .product-card .product-art,#app .pd-photo{background:#fff!important;border-color:var(--line);box-shadow:none}
#app .product-open{background:transparent!important}
#app .btn,#app .auth-provider{background:var(--surface);color:var(--ink);border:1px solid var(--control-line);border-radius:10px;font-weight:500;box-shadow:none;background-image:none;min-height:48px;text-shadow:none;transition:background-color .15s,border-color .15s,color .15s}
#app .btn.primary,#app .product-card>.btn[data-add],#app .product-card>.btn.primary,#app .chip.active{background:var(--brand)!important;background-image:none!important;border-color:var(--brand);color:#fff;box-shadow:none;transform:none}
#app .btn:not(:disabled):not(.link):active{transform:none;box-shadow:none}
#app .btn.danger{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}
#app .btn.link{border-color:transparent;background:transparent;color:var(--brand)}
#app .btn:disabled,#app .auth-provider:disabled{opacity:1;background:var(--soft)!important;border-color:var(--line);color:var(--muted)!important;box-shadow:none}
#app .auth-provider span{color:var(--muted)}
#app .store-link,#app .auth-text-button,#app .pd-cart-link{color:var(--brand)}
#app .chips .chip{font-family:var(--font-ui);font-weight:500;border-radius:999px;background:var(--surface)!important;border:1px solid var(--line);color:var(--muted);box-shadow:none;transform:none}
#app .chips .chip.active{background:var(--brand)!important;border-color:var(--brand);color:white;box-shadow:none}
#app .favorite-toggle{background:var(--surface);color:var(--brand);box-shadow:none;border:1px solid transparent;border-radius:50%}
#app .favorite-toggle.selected,#app .favorite-full.selected{background:var(--brand-soft);color:var(--brand)}
#app .favorite-toggle.selected .icon,#app .favorite-full.selected .icon{fill:var(--brand);stroke:var(--brand)}
#app .field{font-size:14px;font-weight:500;color:var(--ink)}
#app .field>input:not([type=checkbox]):not([type=radio]),#app .field>select,#app .field>textarea,#app .header-search .search,#app .chat-compose textarea{background:var(--surface);border:1px solid var(--control-line);border-radius:10px;box-shadow:none;color:var(--ink);font-weight:400}
#app input::placeholder,#app textarea::placeholder{color:var(--muted);opacity:1}
#app .header-search .search input{border:0;background:transparent;box-shadow:none}
#app :is(input[type=checkbox],input[type=radio]){accent-color:var(--brand)}
#app .header-search .search:focus-within{border-color:var(--brand);outline:2px solid var(--brand);outline-offset:2px}
#app :is(button,a,input,select,textarea):focus-visible,.app-menu :is(button,a):focus-visible{outline:2px solid var(--brand);outline-offset:3px}
#app .stock{color:var(--success);font-weight:500}
#app .stock.low{color:var(--amber)}
#app .stock.zero{color:var(--muted)}
#app .stock::before{background:currentColor}
#app .runtime-notice,#app .notice{background:var(--soft);border:1px solid var(--line);color:var(--ink);box-shadow:none}
#app .runtime-notice.error{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}
#app .delivery-item>.icon{color:var(--muted)}
#app .sidebar{background:var(--surface);border-color:var(--line);box-shadow:none}
#app .side-nav button,#app .desktop-nav button{font-family:var(--font-ui);font-weight:500;color:var(--muted);box-shadow:none}
#app .side-nav button.active,#app .stat.active{background:var(--brand-soft)!important;color:var(--brand);border-color:var(--line);box-shadow:none}
#app .side-nav button.active .icon,#app .stat.active strong{color:var(--brand)}
#app .desktop-nav button.active{color:var(--ink);box-shadow:none}
#app .desktop-nav button.active::after{background:var(--brand)}
#app .order-list .task-icon,#app .task .task-icon,#app .avatar,#app .batch{background:var(--soft);color:var(--muted);box-shadow:none}
#app .count{background:var(--brand);color:#fff}
#app .app-header,#app .bottom-nav{background:var(--surface);border-color:var(--line);box-shadow:none}
#app .bottom-nav button{color:var(--muted);font-family:var(--font-ui);font-weight:500;box-shadow:none}
#app .bottom-nav button.active{color:var(--brand);background:var(--brand-soft);box-shadow:none}
#app .bottom-nav button.active::after{display:none}
.app-menu{background:var(--surface);color:var(--ink);border-color:var(--line);font-family:var(--font-ui)}
.app-menu-heading h2{font-family:var(--font-ui);font-weight:600;font-size:24px;letter-spacing:-.035em}
.app-menu nav button{border-color:var(--line);font-family:var(--font-ui);font-weight:400}
.app-menu nav [aria-current=page]{background:var(--brand-soft);color:var(--brand);font-weight:500}
.app-menu-close{background:var(--surface);color:var(--ink);border-color:var(--control-line);border-radius:12px}
.app-menu-note{color:var(--muted)}
#app .auth-panel .runtime-actions{align-items:stretch}
#app .auth-panel .test-login-row{border-color:var(--line)}
@media(hover:hover) and (pointer:fine){
 #app .btn:not(:disabled):not(.primary):not(.danger):not([data-add]):hover{background:var(--soft);transform:none;box-shadow:none}
 #app .btn.primary:not(:disabled):hover,#app .product-card>.btn[data-add]:not(:disabled):hover{background:var(--brand-hover)!important;border-color:var(--brand-hover);transform:none;box-shadow:none}
 #app .product-card:hover{border-color:var(--control-line);box-shadow:0 4px 16px rgb(32 36 45 / 6%)}
 #app .chips .chip:not(.active):hover,.app-menu nav button:hover{background:var(--soft)!important;box-shadow:none}
}
@media(max-width:760px){
 #app .panel{padding:20px}
 #app .product-card{padding:12px}
 #app .product-card h3{font-size:14px;line-height:1.5}
 #app .product-card .price{font-size:21px}
 #app .page-title h1,#app .auth-panel h1,#app .store-about h1,#app .staff-header h1{font-size:27px;line-height:1.3}
 #app .app-header .brand-name{font-size:22px;line-height:1.3;letter-spacing:-.045em}
 #app .field :is(input,select,textarea){font-size:16px}
}
@media(max-width:360px){#app .panel{padding:16px}#app .product-card{padding:10px}#app .app-header .brand-name{font-size:20px}}
@media(prefers-reduced-motion:reduce){#app .btn{transition:none}}

:root[data-market] #app .product-card{background:var(--surface)!important;background-image:none!important;border:1px solid var(--line);box-shadow:var(--shadow)}
#app .stock:is(.zero,.low)::before{background:currentColor}

#app .stat strong,#app .total strong,#app .product-price,#app .pd-price{font-family:var(--font-ui);font-weight:600}
#app strong,#app b{font-weight:600}
#app .auth-panel>.runtime-actions{display:grid;justify-items:start;gap:24px}
#app .auth-panel .auth-testing{width:100%;padding-top:24px;border-top:1px solid var(--line);margin:0}
#app .auth-testing .runtime-actions{margin-top:16px}
#toast{font-family:var(--font-ui);background:var(--ink);color:var(--surface);border-radius:10px}
#product-photo-dialog,#confirm-dialog,#product-dialog{font-family:var(--font-ui);background:var(--surface);color:var(--ink);border-color:var(--line)}

/* modern-ui.css */
/* Lightweight contemporary layer. Palette and image/data constraints stay intact. */
#app .site-header{min-height:88px;gap:24px;padding-block:16px;align-items:center}
#app .brand{gap:10px;padding:0;min-height:48px}
#app .brand-logo{width:48px;height:48px;flex-shrink:0}
#app .wordmark{display:flex;flex-direction:column;gap:3px}
#app .brand-name{font-size:24px;line-height:1.15;letter-spacing:-.055em}
#app .brand-caption{font-size:10px;line-height:1.5;font-weight:400;letter-spacing:.025em;color:var(--muted);white-space:nowrap}
#app .desktop-nav{gap:4px;justify-content:center;flex:1}
#app .desktop-nav button{padding:10px 12px;font-size:13px;line-height:20px;border-radius:10px;min-height:44px;transition:background-color .15s,color .15s}
#app .desktop-nav .icon{display:none}
#app .desktop-nav button.active{background:var(--soft);color:var(--ink)}
#app .desktop-nav button.active::after{display:none}
#app .header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
#app .header-about,#app .header-order,#app .app-quick-order{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 14px;border:0;border-radius:12px;font:500 13px/1.4 var(--font-ui);background:transparent;color:var(--muted);white-space:nowrap;transition:background-color .15s,color .15s}
#app .header-order,#app .app-quick-order{background:var(--brand-soft);color:var(--brand)}
#app .header-order .icon,#app .app-quick-order .icon{width:18px;height:18px}
#app .body{padding-top:28px}
#app .catalog-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-bottom:16px;min-width:0}
#app .catalog-tools .header-search{flex:1 1 280px;max-width:360px;padding:0;margin:0}
#app .header-search .search{background:var(--surface);border-color:var(--line);border-radius:14px;min-height:50px;padding-inline:16px;transition:border-color .15s}
#app .header-search .search .icon{width:19px;height:19px;color:var(--muted)}
#app .header-search .search input{font-size:14px;padding-block:14px;line-height:20px}
#app .catalog-tools .chips{flex:1 1 620px;min-width:0;justify-content:flex-start;gap:4px;padding:0}
#app .catalog-tools .chips .chip{font-size:12px;line-height:20px;min-height:46px;padding:10px 13px;background:transparent!important;border-color:transparent;border-radius:12px;font-weight:500;white-space:nowrap}
#app .catalog-tools .chips .chip.active{background:var(--brand-soft)!important;color:var(--brand);border-color:transparent}
#app .store-preview{font-size:11px;line-height:1.65;max-width:80ch;margin:0 0 24px;color:var(--muted)}
#app .catalog-grid{gap:24px}
:root[data-market] #app .product-card{border-radius:18px;box-shadow:none;transition:transform .18s cubic-bezier(.2,.8,.2,1);padding:16px;display:flex;flex-direction:column}
#app .product-card .product-open{flex:1 1 auto;min-width:0;text-align:left}
#app .product-card .product-art{border:0;border-radius:12px;background:#fff!important;margin:0 0 16px;box-shadow:none}
#app .product-card .category{font-size:11px;line-height:1.5;font-weight:400;text-transform:none;letter-spacing:0;margin:0 0 6px;color:var(--muted)}
#app .product-card h3{font-size:16px;font-weight:500;line-height:1.5;letter-spacing:-.02em;min-height:4.5em}
#app .product-card .volume{margin-top:8px;font-size:12px;color:var(--muted)}
#app .product-bottom{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;margin:18px 0 14px}
#app .product-card .price{font-size:24px;line-height:1.2;font-weight:600;letter-spacing:-.045em}
#app .product-card .stock{font-size:11px;line-height:1.5;min-height:17px}
#app .product-card>.btn{font-size:13px;line-height:1.4;min-height:46px;padding:11px 12px;border-radius:12px;margin:0}
#app .product-card>.btn[data-subscribe]:not(:disabled){background:var(--surface)!important;border:1px solid var(--brand);color:var(--brand);box-shadow:none}
#app .favorite-toggle{width:44px;height:44px;right:10px;top:10px;border-radius:50%;transition:transform .12s}
#app .favorite-toggle .icon{width:20px;height:20px}
#app .favorite-toggle:active{transform:scale(.94)}
#app .page-title h1,#app .auth-panel h1,#app .store-about h1,#app .staff-header h1{font-size:36px;line-height:1.2;letter-spacing:-.045em}
#app .panel{border-radius:18px;box-shadow:none}
#app .panel h2{font-size:22px;line-height:1.35}
#app .pd-info h1{font-size:clamp(28px,2.7vw,38px);line-height:1.22;letter-spacing:-.04em}
#app .pd-purchase{background:var(--soft);border:0;border-radius:18px;padding:24px;margin-top:24px}
#app .pd-price{font-size:34px;line-height:1.2;letter-spacing:-.04em}
#app .pd-quantity-row{margin-top:20px}
#app .pd-actions{margin-top:16px}
#app .pd-actions>.btn{border-radius:12px}
#app .pd-intro{font-size:15px;line-height:1.8;margin-top:28px;max-width:70ch}
#app .pd-cart-link{text-decoration:none;font-size:13px}
#app .product-breadcrumb{font-size:12px;margin-bottom:24px}
#app .product-breadcrumb .back{min-height:44px}
#app .store-footer{margin-top:48px;padding-top:28px;line-height:1.8}
#app .store-footer .store-link{text-decoration:none;font-weight:500;font-size:12px}
#app .store-about h2{margin-top:32px}
#app .store-about p{font-size:16px;line-height:1.8}
#app .auth-description{font-size:16px;line-height:1.75;max-width:72ch}
#app .auth-provider{min-height:56px;padding:14px 18px;border-radius:12px}
#app .auth-testing{font-size:12px;line-height:1.7}
#app .side-nav{display:grid;gap:4px}
#app .side-nav button{border-radius:12px;min-height:46px}
#app .sidebar .brand{gap:8px}
#app .sidebar .brand-logo{width:40px;height:40px}
#app .sidebar .brand-name{font-size:20px}
#app .task,#app .order-list .task{border-radius:16px}
.app-menu-heading{margin-bottom:24px}
.app-menu-heading h2{font-size:27px;letter-spacing:-.045em}
.app-menu nav{gap:5px}
.app-menu nav button{border:0;border-radius:12px;min-height:56px;padding:14px 16px;font-size:15px;line-height:1.5}
.app-menu .menu-link-label{display:flex;flex-direction:column;gap:5px;min-width:0}
.app-menu .menu-link-label small{font-size:12px;line-height:1.5;font-weight:400;color:var(--muted)}
.app-menu nav .menu-feature{padding:18px;background:var(--brand-soft);color:var(--brand);margin-bottom:12px;border-radius:16px;font-weight:500;min-height:88px}
.app-menu nav [aria-current=page]{background:var(--soft);color:var(--ink)}
.app-menu nav .menu-feature[aria-current=page]{background:var(--brand-soft);color:var(--brand)}
.app-menu[open] nav{animation:modern-menu-in .18s cubic-bezier(.2,.8,.2,1)}
@keyframes modern-menu-in{from{opacity:.65;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){
 #app .desktop-nav button:hover,#app .header-about:hover{background:var(--soft);color:var(--ink)}
 #app .header-order:hover,#app .app-quick-order:hover{background:var(--brand-soft);color:var(--brand-hover)}
 :root[data-market] #app .product-card:hover{transform:translateY(-2px);border-color:var(--line);box-shadow:0 8px 24px rgb(32 36 45 / 7%)}
 #app .product-card>.btn[data-subscribe]:not(:disabled):hover{background:var(--brand-soft)!important;color:var(--brand)}
 .app-menu nav button:hover{background:var(--soft)}
}
@media(max-width:1100px){#app .header-about{display:none}#app .site-header{gap:16px}#app .desktop-nav button{padding-inline:9px}#app .header-order{padding-inline:12px}#app .catalog-tools .header-search{max-width:none}#app .catalog-tools .chips{flex-basis:100%}}
@media(max-width:760px){
 #app .app-header{height:calc(72px + env(safe-area-inset-top,0px));padding-inline:20px;gap:12px}
 #app .app-header .brand{gap:8px}
 #app .app-header .brand-logo{width:40px;height:40px}
 #app .app-header .brand-name{font-size:21px;line-height:1.15}
 #app .app-header .brand-caption{font-size:9px;line-height:1.5}
 #app .app-quick-order{padding:10px 12px;font-size:12px;gap:8px;border-radius:12px;min-height:44px}
 #app .app-quick-order .icon{width:16px;height:16px}
 #app .site,#app .desk-shell{width:100%;max-width:none;margin:0;border-radius:0;padding-inline:0}
 #app .site>.body{width:100%;max-width:none;margin:0;padding:20px 20px calc(100px + env(safe-area-inset-bottom,0px))}
 #app .desk-shell>.staff-main{width:100%;max-width:none;margin:0;padding-inline:20px}
 #app .catalog-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-bottom:16px}
 #app .catalog-tools .header-search{width:100%;max-width:none}
 #app .catalog-tools .chips{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}
 #app .catalog-tools .chips .chip{font-size:12px;min-height:44px;padding:10px 13px}
 #app .store-preview{font-size:11px;line-height:1.6;margin-bottom:20px;max-width:none}
 #app .catalog-grid{gap:14px 12px}
 :root[data-market] #app .product-card{border-radius:16px;padding:12px}
 #app .product-card .product-art{margin-bottom:12px}
 #app .product-card h3{font-size:14px;line-height:1.5;letter-spacing:-.02em;min-height:4.5em}
 #app .product-bottom{gap:5px;margin:16px 0 12px}
 #app .product-card .price{font-size:22px}
 #app .product-card>.btn{font-size:12px;padding:11px 7px;min-height:46px;border-radius:11px}
 #app .product-card>.btn .icon{width:17px;height:17px}
 #app .favorite-toggle{right:4px;top:4px}
 #app .page-title h1,#app .auth-panel h1,#app .store-about h1,#app .staff-header h1{font-size:28px;line-height:1.25}
 #app .pd-info h1{font-size:28px;line-height:1.25}
 #app .pd-purchase{padding:20px;border-radius:16px}
 #app .pd-intro{font-size:14px;line-height:1.8}
 #app .bottom-nav{padding-top:4px}
 #app .bottom-nav button{gap:1px;padding:2px 0;background:transparent;min-height:56px}
 #app .bottom-nav button.active{background:transparent;color:var(--brand)}
 #app .bottom-nav .icon{width:34px;height:34px;padding:6px;border-radius:12px}
 #app .bottom-nav button.active .icon{background:var(--brand-soft);stroke-width:1.9}
 #app .bottom-nav button>span:not(.count){font-size:10px;line-height:1.3}
 #app .bottom-nav .count{top:0;right:16%}
 .app-menu{padding-inline:20px}
}
@media(max-width:360px){
 #app .app-header{padding-inline:16px;gap:8px}
 #app .app-header .brand-name{font-size:19px}
 #app .app-quick-order{padding-inline:10px;gap:5px;font-size:11px}
 #app .app-quick-order .icon{width:14px;height:14px}
 #app .site>.body,#app .desk-shell>.staff-main{padding-inline:16px}
 :root[data-market] #app .product-card{padding:10px}
 #app .product-card h3{font-size:13px}
}
@media(prefers-reduced-motion:reduce){
 #app .product-card,#app .favorite-toggle,#app .desktop-nav button,#app .header-about,#app .header-order,#app .app-quick-order,#app .header-search .search{transition:none!important}
 :root[data-market] #app .product-card:hover,#app .favorite-toggle:active{transform:none}
 .app-menu[open] nav{animation:none}
}

/* buyer-flow.css */
/* Customer flow: natural card height and mode-specific, readable forms. */
#app .catalog-grid{align-items:start}
#app .catalog-grid .product-card{height:auto;min-height:0;align-self:start}
#app .catalog-grid .product-card .product-open{flex:0 0 auto;min-height:0}
#app .catalog-grid .product-card h3{min-height:0;margin-bottom:0}
#app .catalog-grid .product-card .product-bottom{margin:12px 0 10px;flex:0 0 auto}
.delivery-modes{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));border:0;padding:0;margin:0 0 20px;min-width:0}
.delivery-modes legend{font-weight:600;margin-bottom:12px}
.delivery-choice{display:flex;gap:8px;align-items:center;padding:12px;border:1px solid var(--border,#dbe0e6);border-radius:12px;cursor:pointer;min-width:0;font-size:14px}
.delivery-choice:has(input:checked){border-color:#c52237;background:#fff3f5}
.delivery-choice input{accent-color:#c52237;width:18px;height:18px;flex:none}
.receiving-fields{display:grid;gap:14px}
.receiving-fields .field{margin:0}
.receiving-note,.checkout-conditions{padding:16px;background:#f6f8fa;border-radius:12px;margin:16px 0;line-height:1.6}
.checkout-conditions h3{margin:0 0 8px;font-size:16px}
.checkout-conditions p{margin:6px 0}
.city-results{list-style:none;padding:0;margin:6px 0;border:1px solid #dbe0e6;border-radius:12px;overflow:hidden}
.city-results:empty{display:none}
.city-results button{display:block;width:100%;text-align:left;border:0;background:white;padding:12px 14px;min-height:44px;cursor:pointer;color:inherit;font:inherit}
.city-results button:hover,.city-results button:focus-visible{background:#fff3f5}
.city-status{margin:4px 0;font-size:13px;color:#596575}
.buyer-order{max-width:960px;margin:auto;display:grid;gap:20px}
.buyer-order .panel{margin:0;min-width:0}
.buyer-order h2{font-size:20px;margin:0 0 16px}
.buyer-progress{list-style:none;padding:0;margin:0}
.buyer-progress li{position:relative;padding:0 0 20px 28px;border-left:2px solid #e0e5eb;margin-left:7px}
.buyer-progress li:last-child{padding-bottom:0;border-color:transparent}
.buyer-progress li:before{content:'';position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#c52237;border:2px solid white;box-sizing:content-box}
.buyer-progress strong,.buyer-progress time{display:block}
.buyer-progress time{color:#596575;font-size:13px;margin-top:4px}
.receiving-summary{display:grid;grid-template-columns:140px minmax(0,1fr);gap:10px 16px;margin:0}
.receiving-summary dt{color:#596575}.receiving-summary dd{margin:0;overflow-wrap:anywhere}
.pickup-number{display:inline-block;font-size:24px;font-weight:700;letter-spacing:.04em;padding:12px 18px;background:#fff3f5;border-radius:12px;color:#a91c30}
.buyer-order .order-actions>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#596575}
.buyer-order .order-actions .runtime-form{margin-top:16px}
.buyer-order .order-actions .btn{background:white;color:#a91c30;border:1px solid #e2c8ce}
@media(max-width:760px){.delivery-modes{grid-template-columns:1fr}.delivery-choice{min-height:48px}.buyer-order{gap:14px}.receiving-summary{grid-template-columns:1fr;gap:4px}.receiving-summary dd{margin-bottom:10px}}

/* profile-staff.css */
/* Equal row boundaries, with natural title-to-price spacing. */
#app .catalog-grid{align-items:stretch}
#app .catalog-grid .product-card{align-self:stretch;height:auto;display:flex;flex-direction:column}
#app .catalog-grid .product-card .product-open{flex:0 0 auto}
#app .catalog-grid .product-card .product-bottom{margin:12px 0 10px;flex:0 0 auto}
#app .catalog-grid .product-card>.btn:last-child{margin-top:auto;min-height:48px;white-space:normal;line-height:1.25}
.work-page{display:grid;gap:18px;width:100%;min-width:0;max-width:1120px;margin:auto}
.work-page>*{min-width:0}
#app .desk-shell .staff-main{min-width:0}
.work-page .panel,.work-page .runtime-section{min-width:0}
.work-page>.panel{margin:0}
.work-page h2{font-size:20px;margin:0 0 16px}
.work-badges{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.work-badge{padding:6px 10px;border-radius:8px;background:#f0f3f7;color:#445267;font-size:13px;font-weight:600}
.work-badge.paid{background:#e8f5ee;color:#226047}.work-badge.unpaid{background:#fff3e2;color:#825310}
.work-status{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.work-status .amount{font-size:28px;font-weight:700;letter-spacing:-.03em}
.work-next .btn{min-height:48px}.work-next{border-color:#e3aeb7}
.work-action-form{padding-top:16px}.work-action-form .runtime-form{margin:0}
.work-action-form h3{font-size:18px}
.work-steps{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 14px}
.work-steps li{font-size:13px;padding:6px 10px;border-radius:8px;background:#f0f3f7;color:#667085}
.work-steps li.current{color:#a91d32;background:#fff0f3;font-weight:600}
.work-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.work-summary .line-item{grid-column:1/-1}
.work-orders{display:grid;gap:12px}
.work-order-card{display:block;text-align:left;width:100%;padding:20px;border:1px solid #dbe0e6;border-radius:16px;background:#fff;color:inherit;font:inherit;cursor:pointer}
.work-order-card:hover{border-color:#c52237}.work-order-card:focus-visible{outline:3px solid #c52237;outline-offset:3px}
.work-order-top,.work-order-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.work-order-card .work-items{display:block;margin:12px 0;color:#445267;line-height:1.5;font-size:14px}
.work-order-bottom{font-size:14px;color:#596575}
.work-filters{display:flex;gap:8px;width:100%;min-width:0;max-width:100%;overflow-x:auto;padding:4px 2px 8px;scrollbar-width:thin}
.work-filters button{white-space:nowrap;min-height:44px;flex:none}
.work-filters button[aria-pressed=true]{background:#fff0f3;color:#ad2135;border-color:#e1b8c0}
.work-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.work-stat{text-align:left;border:1px solid #dbe0e6;background:white;border-radius:14px;padding:16px;font:inherit;cursor:pointer;min-height:88px}
.work-stat strong{display:block;font-size:28px;margin-top:8px}.work-stat span{color:#596575;font-size:14px}
.work-attention{display:grid;gap:10px}.work-attention a{color:inherit}
.work-stock-list{display:grid;gap:10px}.work-stock-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px;border:1px solid #dbe0e6;border-radius:12px;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer}
.work-stock-item strong{font-size:16px}.work-stock-item small{display:block;color:#596575;margin-top:6px;font-size:13px}
.stock-amount{text-align:right;font-size:22px;font-weight:700;white-space:nowrap}.stock-amount small{font-weight:400;font-size:12px}
.receiving-profile .runtime-actions{margin-top:16px}.receiving-profile .receiving-fields{margin-top:16px}
.work-details{padding:18px;border:1px solid #dbe0e6;border-radius:14px;background:white}
.work-details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}
.work-details[open]>summary{margin-bottom:16px}
.work-page .work-details .paper{box-shadow:none;border:0;padding:0;margin:0}
.work-page .work-details h2{font-size:18px}
.work-receiving dl{margin-bottom:14px}
.work-inline-note{padding:12px 14px;border-radius:10px;background:#f6f8fa;line-height:1.5}
.work-page .runtime-form>.btn{max-width:100%}
.cash-balance{font-size:36px;letter-spacing:-.03em;margin:12px 0}
.trading-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}
.trading-metrics>div{padding:16px;border:1px solid #e0e5eb;border-radius:12px}.trading-metrics span{display:block;font-size:14px;color:#596575}.trading-metrics strong{display:block;font-size:24px;margin-top:10px;overflow-wrap:anywhere}
.trading-period{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.trading-period .field{flex:1 1 180px;min-width:0}
@media(max-width:480px){.trading-metrics{grid-template-columns:1fr}.trading-metrics strong{font-size:26px}}
@media(max-width:760px){#app .desk-shell .bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:760px){.work-page{gap:14px}.work-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.work-stat{padding:14px;min-height:88px}.work-next>.btn{width:100%}.work-action-form>.runtime-form>.btn{width:100%}.work-order-card{padding:16px}.work-summary{grid-template-columns:1fr}.work-status .amount{font-size:26px}.work-stock-item{padding:14px}.work-filters{max-width:calc(100vw - 32px)}.work-page .work-details{padding:14px}}

/* staff-touch.css */
.touch-workspace{width:100%;max-width:1280px;min-width:0;margin:0 auto;display:grid;gap:18px}
.touch-workspace>*{min-width:0}.touch-order-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;min-width:0}
.touch-order-grid>*{min-width:0}.touch-order-grid .touch-wide{grid-column:1/-1}.touch-workspace .panel{margin:0}
.touch-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 20px}.touch-heading h1{margin:8px 0}.touch-heading p{margin:8px 0}
.touch-statuses{list-style:none;display:grid;grid-template-columns:repeat(var(--step-count,4),minmax(0,1fr));padding:0;margin:0;gap:8px}
.touch-statuses li{text-align:center;min-width:0;padding:12px 4px;background:#f6f8fa;border-radius:12px;color:#697586}
.touch-statuses .step-mark{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d7dfe8;border-radius:50%;margin:0 auto 8px;font-size:14px;font-weight:700;background:white}
.touch-statuses strong{display:block;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.touch-statuses time{display:block;font-size:11px;margin-top:4px;min-height:16px}
.touch-statuses .done{color:#226047;background:#edf7f1}.touch-statuses .done .step-mark{background:#267052;border-color:#267052;color:white}
.touch-statuses .current{color:#a91c30;background:#fff0f3}.touch-statuses .current .step-mark{border-color:#c52237;color:#c52237}
.touch-lines{display:grid;gap:0}.touch-line{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid #e1e6ed;min-width:0}.touch-line:last-child{border-bottom:0}
.touch-line img{width:76px;height:76px;object-fit:contain;background:white;border-radius:10px}.touch-line h3{font-size:16px;line-height:1.45;margin:0 0 8px;font-weight:600;overflow-wrap:anywhere}.touch-line p{font-size:13px;color:#596575;margin:4px 0}.touch-qty{font-size:24px;font-weight:700;white-space:nowrap}.touch-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:18px;padding-top:16px;border-top:1px solid #e1e6ed}.touch-total strong{font-size:26px}
.touch-actions{display:flex;gap:12px;flex-wrap:wrap}.touch-action{flex:1 1 170px;min-height:64px;display:flex;gap:10px;align-items:center;justify-content:center;padding:14px 18px;font:inherit;font-size:16px;font-weight:600;border:1px solid #d6dde6;border-radius:14px;color:#24344b;background:white;cursor:pointer;line-height:1.35}
.touch-action.primary{background:#c52237;border-color:#c52237;color:white}.touch-action:disabled{color:#7a8594;background:#f5f7fa;border-color:#e1e6ed;cursor:default}.touch-action .icon{width:22px;height:22px;flex:none}.touch-action:focus-visible{outline:3px solid #c52237;outline-offset:3px}
.touch-action-form{margin-top:20px}.touch-action-form:empty{margin:0}.touch-action-form .runtime-form{margin:0}.touch-action-form h3{font-size:19px}.touch-action-form .btn{min-height:48px}
.touch-photo-pick{padding:16px;border:1px dashed #c2cbd8;border-radius:12px;margin:16px 0}.touch-photo-pick .runtime-actions{margin-top:12px}.touch-photo-pick img{display:block;max-width:100%;width:auto;max-height:260px;object-fit:contain;border-radius:10px;margin:12px auto}
.touch-gallery{display:flex;flex-wrap:wrap;gap:12px}.touch-gallery a{display:flex;flex-direction:column;gap:8px;max-width:150px;color:#596575;font-size:13px;text-decoration:none}.touch-gallery img{width:128px;height:110px;object-fit:contain;border:1px solid #e1e6ed;border-radius:10px;background:#fff}
.alarm{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;border-radius:9px;font-size:13px;font-weight:600;line-height:1.3;background:#f0f3f7;color:#596575}.alarm.today{background:#fff3df;color:#825310}.alarm.overdue{background:#ffedf0;color:#a41f35}.alarm.scheduled{background:#edf3ff;color:#355d9b}
.queue-card{padding:20px;border:1px solid #dbe0e6;border-radius:16px;background:white;color:inherit;text-align:left;width:100%;font:inherit;cursor:pointer}.queue-card:hover{border-color:#c52237}.queue-card .queue-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.queue-card .queue-composition{margin:14px 0;line-height:1.55;display:block;color:#35465e}.queue-card .queue-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:#667085;margin-top:12px}.queue-card .alarm{margin-top:12px}
.touch-queue{display:grid;gap:12px}.touch-empty{padding:24px;background:#fff6e8;border:1px solid #ecd4ad;border-radius:14px;line-height:1.6}
.touch-plan form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.touch-plan form>h3,.touch-plan form>button{grid-column:1/-1}.touch-plan .field{margin:0;min-width:0}
.touch-chat .runtime-section{margin-top:0}.touch-chat h2{font-size:20px}.touch-mobile-help{font-size:13px;color:#667085;margin:12px 0}
@media(max-width:1100px){.touch-order-grid{grid-template-columns:minmax(0,1fr)}.touch-statuses strong{font-size:12px}}
@media(max-width:900px){
 #app .desk-shell{display:block;width:100%;padding-top:calc(72px + env(safe-area-inset-top,0px));padding-inline:0}
 #app .desk-shell>.sidebar{display:none}#app .desk-shell>.staff-main{width:100%;margin:0;padding:20px 16px calc(110px + env(safe-area-inset-bottom,0px));min-width:0}
 #app .desk-shell>.app-header{display:flex;position:fixed;top:0;left:0;right:0;z-index:40;height:calc(72px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 16px 0;align-items:center;justify-content:space-between;border-bottom:1px solid #dbe0e6;background:#fff}
 #app .desk-shell>.app-header .brand-logo{width:40px;height:40px}#app .desk-shell>.app-header .brand-name{font-size:21px}#app .desk-shell>.app-header .brand-caption{font-size:10px}
 #app .desk-shell>.bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;position:fixed;left:0;right:0;bottom:0;height:calc(76px + env(safe-area-inset-bottom,0px));padding:4px 8px calc(4px + env(safe-area-inset-bottom,0px));gap:0;background:#fff;border-top:1px solid #dbe0e6;z-index:45}
 #app .desk-shell>.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:56px;font-size:10px;border:0;background:transparent;padding:4px;color:#667085}
 #app .desk-shell>.bottom-nav button.active{color:#c52237}#app .desk-shell>.bottom-nav .icon{width:24px;height:24px}
 .touch-workspace,.touch-order-grid{gap:14px}.touch-statuses{gap:4px}.touch-statuses li{padding:10px 2px}.touch-statuses strong{font-size:10px}.touch-statuses time{font-size:10px}.touch-statuses .step-mark{width:26px;height:26px}
 .touch-actions{display:grid;grid-template-columns:1fr;gap:10px}.touch-action{min-height:58px;font-size:16px}.touch-line{grid-template-columns:60px minmax(0,1fr) auto;gap:10px}.touch-line img{width:60px;height:68px}.touch-line h3{font-size:15px}.touch-qty{font-size:22px}.touch-plan form{grid-template-columns:1fr}.touch-action-form .runtime-form>button{width:100%}
}

/* Order view: receiving details belong to its header, actions to its mobile dock. */
.touch-order-workspace .touch-order-grid{grid-template-columns:minmax(0,1fr)}
.touch-order-header{padding:4px 0 8px}.touch-order-header .touch-heading{margin-bottom:12px}.touch-order-header h1{font-size:clamp(26px,4vw,38px);letter-spacing:-.035em}
.touch-order-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.touch-order-meta strong{padding:7px 12px;border-radius:9px;background:#fff0f3;color:#a91c30}.touch-order-meta span{font-size:14px;color:#596575}
.touch-header-receiving{border-top:1px solid #dbe0e6;padding-top:10px}.touch-header-receiving p{margin:6px 0}.touch-header-receiving .receiving-summary{max-width:850px;margin:0}
.order-action-dock,.touch-dock-hint{display:none}.touch-secondary .btn{min-height:48px}.touch-order-workspace .touch-chat{margin-bottom:16px}
@media(max-width:900px){
 #app .desk-shell:has(.order-action-dock)>.bottom-nav{display:none}
 #app .desk-shell:has(.order-action-dock)>.staff-main{padding-bottom:calc(126px + env(safe-area-inset-bottom,0px))}
 .touch-order-workspace .touch-desktop-actions{display:none}.touch-dock-hint{display:block}
 .order-action-dock{display:flex;position:fixed;inset:auto 0 0;z-index:46;gap:5px;align-items:stretch;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #dbe0e6;box-shadow:0 -4px 18px #1721320a}
 .order-action-dock .touch-action{flex:1 1 0;min-width:0;min-height:72px;padding:7px 3px;gap:4px;font-size:11px;line-height:1.3;flex-direction:column;border-radius:11px;overflow-wrap:anywhere}
 .order-action-dock .touch-dock-back{flex:.75 1 0;font-size:10px}.order-action-dock .icon{width:22px;height:22px}
 .touch-action-form{scroll-margin-top:90px}.touch-order-workspace .touch-secondary .runtime-actions{display:grid;grid-template-columns:1fr}.touch-secondary button{text-align:left;justify-content:flex-start}
}

.staff-order-filters{display:flex;gap:10px;flex-wrap:wrap}.staff-order-filters .btn{min-height:52px;padding:12px 18px}
.queue-card .queue-number{font:inherit;font-size:26px;font-weight:750;letter-spacing:-.035em;border:0;padding:0;background:transparent;color:inherit;min-height:44px;cursor:pointer;text-align:left}.queue-top time{font-size:13px;color:#596575}.queue-mode{font-weight:600;margin:8px 0 14px}.queue-card .work-badges{margin-bottom:6px}.queue-controls{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-top:16px}.queue-controls>.btn,.queue-contents summary{min-height:48px}.queue-contents{flex:1 1 180px;min-width:0}.queue-contents summary{display:flex;align-items:center;cursor:pointer;color:#a91c30;font-weight:600}.queue-contents ul{padding:12px 0 0;margin:0;list-style:none}.queue-contents li{display:flex;gap:14px;justify-content:space-between;line-height:1.5;padding:10px 0;border-top:1px solid #e1e6ed}.queue-contents li strong{white-space:nowrap}
.stock-table-scroll{max-width:100%;min-width:0;overflow:auto;border:1px solid #dbe0e6;border-radius:16px}.stock-table-scroll:focus-visible{outline:3px solid #c52237;outline-offset:2px}.staff-stock-table{width:100%;min-width:730px;border-collapse:collapse;font-size:14px;text-align:left}.staff-stock-table th,.staff-stock-table td{padding:14px 16px;border-bottom:1px solid #e1e6ed;vertical-align:middle}.staff-stock-table thead th{background:#f5f7fa;color:#596575;font-size:12px;white-space:nowrap}.staff-stock-table tbody th{min-width:220px;max-width:340px;font-weight:500}.staff-stock-table img{width:52px;height:64px;object-fit:contain}.staff-stock-table button{font:inherit;line-height:1.5;text-align:left;background:none;border:0;color:inherit;padding:0;cursor:pointer;min-height:44px}.stock-jan{font-variant-numeric:tabular-nums;white-space:nowrap}.staff-stock-table .stock-count{text-align:right;font-variant-numeric:tabular-nums}.stock-deficit{display:block;color:#a91c30;margin-top:5px}.staff-stock-table tr:last-child>*{border-bottom:0}.touch-total strong{white-space:nowrap}
.staff-cash-history{margin-top:28px}.staff-cash-history ol{padding:0;margin:0;list-style:none}.staff-cash-history li{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-top:1px solid #e1e6ed}.staff-cash-history li>div{display:grid;gap:6px;min-width:0}.staff-cash-history time{display:block;font-size:13px;color:#596575}.cash-delta{white-space:nowrap;font-size:18px;font-variant-numeric:tabular-nums}.cash-delta.incoming{color:#226047}.cash-delta.outgoing{color:#a91c30}
@media(max-width:900px){.staff-order-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.staff-order-filters .btn{padding:12px 9px;font-size:13px;line-height:1.35;white-space:normal}.queue-card{padding:16px}.queue-card .queue-number{font-size:25px}.queue-controls{display:grid;grid-template-columns:1fr}.staff-cash-history li{flex-wrap:wrap}.cash-delta{margin-left:auto}.staff-stock-table{min-width:700px}}

/* Desktop order actions precede statuses and composition; touch dock stays unchanged. */
@media(min-width:901px){.touch-order-workspace .touch-order-grid>.touch-order-actions{grid-row:1}}

/* Whole-card link leaves composition and explicit controls independently operable. */
.queue-card{position:relative}.queue-card-hit{position:absolute;inset:0;z-index:1;border-radius:inherit}.queue-card-hit:focus-visible{outline:3px solid #c52237;outline-offset:3px}.queue-card .queue-controls>.btn,.queue-card .queue-contents{position:relative;z-index:2}.queue-card .queue-number{display:inline-block}
.staff-sidebar-toggle{display:flex;gap:8px;align-items:center;min-height:44px;margin-bottom:18px;background:transparent;border:1px solid #dbe0e6;border-radius:10px;padding:8px 10px;font:inherit;font-size:12px;color:inherit;cursor:pointer}.staff-sidebar-toggle .icon{width:20px;height:20px;flex:none}
@media(min-width:901px){#app .desk-shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}#app .sidebar-collapsed>.sidebar{padding:20px 10px}#app .sidebar-collapsed .sidebar .brand-name,#app .sidebar-collapsed .sidebar .brand-caption,#app .sidebar-collapsed .sidebar-foot,#app .sidebar-collapsed .side-nav button>span,#app .sidebar-collapsed .staff-sidebar-toggle>span{display:none}#app .sidebar-collapsed .sidebar .brand{justify-content:center;margin-inline:0}#app .sidebar-collapsed .sidebar .brand-logo{width:38px;height:44px}#app .sidebar-collapsed .side-nav button{justify-content:center;padding:10px;min-width:44px}#app .sidebar-collapsed .staff-sidebar-toggle{justify-content:center;width:44px;padding:8px;margin-inline:auto}}
body.staff-action-open{overflow:hidden}.staff-action-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #dbe0e6;border-radius:20px;background:#fff;color:#182334;box-shadow:0 24px 80px #10182833;overflow:hidden}.staff-action-dialog[open]{display:flex;flex-direction:column}.staff-action-dialog::backdrop{background:#10182880}.staff-dialog-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:20px 24px;border-bottom:1px solid #e1e6ed;flex:none}.staff-dialog-head h2{font-size:22px;line-height:1.3;margin:5px 0 0}.staff-dialog-head p{margin:0}.staff-dialog-close{min-width:44px;min-height:44px;border:1px solid #dbe0e6;border-radius:12px;background:#fff;color:inherit;font-size:28px;cursor:pointer}.staff-dialog-content{overflow:auto;overscroll-behavior:contain;padding:20px 24px 24px;min-height:0}.staff-dialog-content .touch-action-form{margin:0}.staff-dialog-content .runtime-notice{margin:0 0 16px}.staff-dialog-content form>.btn{min-height:48px}.staff-action-result{text-align:center;padding:12px 0}.staff-result-mark{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 16px;background:#edf7f1;border-radius:50%;font-size:28px;color:#226047}.staff-action-result .btn{width:100%;margin-top:20px}.staff-dialog-content .field input,.staff-dialog-content .field select,.staff-dialog-content .field textarea{max-width:100%;min-width:0}.staff-dialog-head h2{overflow-wrap:anywhere}
@media(max-width:900px){.touch-order-actions{display:none}.staff-action-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));border-radius:18px}.staff-dialog-head{padding:16px}.staff-dialog-head h2{font-size:20px}.staff-dialog-content{padding:16px}.staff-dialog-content form>.btn{width:100%}}

/* Dialog owns its spacing and divider; the embedded form adds neither. */
.staff-dialog-content .runtime-form{border-top:0;margin:0;padding-top:0}
.payment-method{border:0;padding:0;margin:18px 0}.payment-method legend{font-weight:600;margin-bottom:10px}.payment-method-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.payment-method-options label{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px;border:1px solid #dbe0e6;border-radius:12px;cursor:pointer}.payment-method-options label:has(input:checked){border-color:var(--red);background:#fff3f4}.payment-method-options label:focus-within{outline:2px solid var(--red);outline-offset:2px}.payment-method-options input{width:20px;height:20px;flex:none;accent-color:var(--red)}

/* Comfortable fact confirmation; mobile metadata must leave room for composition. */
.staff-dialog-content .runtime-check{min-height:44px;display:flex;align-items:center;gap:10px;cursor:pointer}
@media(max-width:900px){
 .touch-order-header{padding:0 0 4px}
 .touch-order-header .touch-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:8px}
 .touch-order-header .touch-heading>div{min-width:0}
 .touch-order-header h1{font-size:26px;line-height:1.2;margin:4px 0}
 .touch-order-header .touch-heading p{margin:5px 0;font-size:12px;line-height:1.4}
 .touch-order-header .touch-heading>.btn{min-width:44px;min-height:44px;padding:8px;font-size:12px}
 .touch-order-header .auth-text-button{min-height:44px;display:inline-flex;align-items:center;font-size:13px}
 .touch-order-meta{gap:6px}.touch-order-meta strong{padding:4px 8px}.touch-order-meta span{font-size:12px}
 .touch-header-receiving{padding-top:6px;font-size:13px;line-height:1.4}
 .touch-header-receiving p{margin:4px 0}
 .touch-header-receiving .receiving-summary{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:4px 10px;font-size:13px;line-height:1.4}
 .touch-header-receiving .receiving-summary dt,.touch-header-receiving .receiving-summary dd{margin:0;min-width:0;overflow-wrap:anywhere}
}

.daily-queue {gap:16px; overflow-wrap:anywhere}
.daily-queue .touch-heading {align-items:center; margin:0}
.daily-queue .touch-heading h1 {margin:0}
.daily-queue .touch-heading p {margin:4px 0 0}
.daily-queue .btn, .daily-queue summary {min-width:44px; min-height:44px}
.daily-count {margin:0; font-size:14px; color:#596575; font-variant-numeric:tabular-nums}
.daily-group {min-width:0}
.daily-group h2 {font-size:20px; margin:8px 0 12px}
.daily-task {display:flex; align-items:flex-start; gap:12px; margin-bottom:14px}
.daily-task h3 {font-size:20px; line-height:1.25; margin:0}
.daily-task time {display:block; margin-top:4px; font-size:13px; color:#596575}
.daily-rank {flex:none; min-width:32px; padding:5px 7px; border-radius:8px; background:#f9e9ec; color:#9c1d30; text-align:center; font-size:16px; line-height:1.4; font-weight:700; font-variant-numeric:tabular-nums}
.daily-queue .queue-number {min-height:0; font-size:16px}
.daily-queue .queue-mode {margin:4px 0 0; color:#596575; font-size:14px; font-weight:500}
.daily-queue summary:focus-visible, .daily-queue button:focus-visible, .daily-queue .queue-card-hit:focus-visible {outline:3px solid #a91c30; outline-offset:2px}
.daily-queue .queue-contents li span {min-width:0; overflow-wrap:anywhere}
@media (min-width:901px) {
 .daily-queue .queue-card {display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,.65fr); gap:4px 20px}
 .daily-queue .daily-task {grid-row:1 / 3; margin:0}
 .daily-queue .queue-top {justify-content:flex-start}
 .daily-queue .queue-mode {margin:0}
 .daily-queue .queue-controls {grid-column:1 / -1; margin-top:8px}
}
@media (max-width:900px) {
 .daily-queue .touch-heading h1 {font-size:28px}
 .daily-queue .queue-controls {grid-template-columns:repeat(auto-fit,minmax(min(135px,100%),1fr)); align-items:center; gap:4px 8px; margin-top:10px}
 .daily-queue .queue-controls>.btn {padding-inline:8px; white-space:normal}
 .daily-queue .queue-contents[open] {grid-column:1/-1}
}

/* Warehouse table and lot controls */
.stock-list,.stock-detail{min-width:0}
.stock-search{display:flex;align-items:flex-end;gap:12px}
.stock-search .field{flex:1;min-width:0;margin:0}
.stock-search input,.stock-search button,.stock-back,.stock-detail summary{min-height:44px}
.stock-detail summary{align-content:center}
.stock-back:focus-visible,.stock-list :is(input,button):focus-visible,.stock-detail :is(summary,button):focus-visible{outline:3px solid #b81d35;outline-offset:2px}
.stock-list .stock-table-scroll{width:100%;overscroll-behavior-x:contain}
.stock-list .staff-stock-table button{min-width:44px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.stock-title,.stock-detail :is(h3,p,summary,label){overflow-wrap:anywhere}
.stock-scroll-hint{margin:0;color:#4a5360}
.stock-scroll-hint[hidden]{display:none}
@media(max-width:760px){
  .stock-list .staff-stock-table{min-width:640px}
  .stock-list .staff-stock-table th,.stock-list .staff-stock-table td{padding:9px 12px}
  .stock-list .staff-stock-table tbody th{min-width:145px;max-width:205px}
  .stock-list .staff-stock-table img{width:40px;height:48px}
}

.stock-search label.field{padding-bottom:0}
.stock-search input{margin-bottom:0}
.stock-detail [tabindex="-1"]:focus-visible{outline:3px solid #b81d35;outline-offset:2px}

.cash-workspace { min-width: 0; }
.cash-workspace :is(.panel,.runtime-section,.runtime-form,.field,.staff-cash-history li > *) { min-width: 0; overflow-wrap: anywhere; }
.cash-workspace :is(select,input) { max-width: 100%; }
.cash-workspace :is(summary,button,select,.runtime-check) { min-height: 44px; }
.cash-workspace summary { align-content: center; }
.cash-links { display: flex; flex-wrap: wrap; gap: .5rem; }
.cash-pending { padding: 0; list-style: none; }
.cash-workspace [tabindex="-1"]:focus { outline: 2px solid currentColor; outline-offset: 2px; }
.cash-workspace .cash-balance { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .cash-workspace .staff-cash-history li { display: grid; grid-template-columns: minmax(0,1fr); }
  .cash-workspace .cash-delta { white-space: normal; }
}

.cash-workspace .cash-balance {
  white-space: nowrap;
  overflow-x: auto;
  max-width: 100%;
}
.cash-workspace .cash-long-amount {
  font-size: clamp(1rem, 5vw, 2.25rem);
  font-variant-numeric: tabular-nums;
}
.cash-workspace .cash-delta {
  max-width: 100%;
  white-space: nowrap;
  overflow-x: auto;
}

.report-kinds{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.report-kinds .btn,.owner-period .btn,.owner-period input{min-height:44px}
.report-kinds [aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.owner-period{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.owner-period .field{min-width:0;max-width:100%;margin:0}
.owner-section{min-width:0;max-width:100%;container-type:inline-size}
.owner-section h2{margin-bottom:.4rem}
.owner-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,215px),1fr));gap:10px;margin:18px 0}
.owner-metric{background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:12px 14px;min-width:0}
.owner-metric:last-child{background:var(--ink);color:var(--paper)}
.owner-metric dt{font-size:.88rem;line-height:1.35}
.owner-metric dd{margin:5px 0 0;font-size:clamp(1.1rem,2.6vw,1.55rem);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.owner-metric:has(.long-money){grid-column:1/-1}
.owner-metric .long-money{font-size:clamp(.88rem,4cqw,1.45rem)}
.owner-table{width:100%;border-collapse:collapse;font-size:.88rem;font-variant-numeric:tabular-nums}
.owner-table th,.owner-table td{text-align:right;vertical-align:top;padding:10px 7px;border-bottom:1px solid var(--line)}
.owner-table th:nth-child(-n+2),.owner-table td:nth-child(-n+2){text-align:left}
.owner-table td:nth-child(n+3){white-space:nowrap}
.owner-table small{display:block;color:var(--muted);margin-top:4px}
.owner-mobile-label{display:none}
.owner-table-wrap{max-width:100%;overflow-x:auto}
.owner-more{min-height:44px}
@container(max-width:830px){
  .owner-table,.owner-table tbody,.owner-table tr,.owner-table td{display:block;width:100%}
  .owner-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .owner-table tr{border-top:1px solid var(--line);padding:9px 0 14px}
  .owner-table td,.owner-table td:nth-child(-n+2){display:grid;grid-template-columns:minmax(70px,.65fr) minmax(0,1.35fr);align-items:baseline;text-align:right;gap:6px;border:0;padding:4px 0;white-space:normal;overflow-wrap:anywhere}
  .owner-mobile-label{display:block;text-align:left;color:var(--muted)}
  .owner-table td:nth-child(n+3)>span:last-child{white-space:nowrap;font-size:clamp(.79rem,2.9cqw,.88rem)}
  .owner-table td.large-cell{grid-template-columns:1fr;text-align:left}
}
@media(max-width:540px){
  .owner-controls .owner-period{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-period input{width:100%;min-width:0;font-size:.9rem}
  .owner-period .btn{grid-column:1/-1}
  .owner-controls,.owner-section{padding:14px}
}


.owner-metric:last-child{grid-column:1/-1}
.owner-metric dd{max-width:100%;overflow-x:auto}
@container(min-width:831px){
  .owner-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
  .owner-metric:last-child{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
  .owner-metric:last-child dd{margin:0}
}

#app .desk-shell .owner-controls .report-kinds .btn[aria-pressed="true"] {
  color:var(--brand); background:var(--brand-soft); border-color:var(--brand);
}
#app .desk-shell .owner-controls .owner-period .field {
  padding:0; margin:0;
}
#app .desk-shell .owner-controls .owner-period .btn {
  align-self:end; margin:0;
}
@media (max-width:540px) {
  #app .desk-shell .owner-controls .report-kinds {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  }
  #app .desk-shell .owner-controls .report-kinds .btn {
    width:100%; min-width:0; height:auto; min-height:44px;
    padding:8px; white-space:normal; line-height:1.25;
  }
  #app .desk-shell .owner-controls .report-kinds .btn:last-child:nth-child(odd) {grid-column:1/-1}
}

@container(max-width:280px){.owner-metric .long-money{font-size:.78rem}}

/* Owner description workspace */
#app .ce { --ce-rule:#e4deda; --ce-muted:#665e5a; color:var(--text, #282321); width:100%; max-width:1180px; margin:0 auto; padding-bottom:28px; overflow-wrap:anywhere; }
#app .ce * { box-sizing:border-box; min-width:0; }
#app .ce h1,#app .ce h2,#app .ce h3,#app .ce p { margin:0; color:inherit; }
#app .ce h1 { font:700 clamp(25px,3.2vw,42px)/1.15 Manrope,Inter,sans-serif; letter-spacing:-.045em; }
#app .ce h2 { font:700 clamp(19px,2.2vw,25px)/1.25 Manrope,Inter,sans-serif; letter-spacing:-.035em; }
#app .ce h3 { font:650 15px/1.45 Inter,sans-serif; }
#app .ce p,#app .ce small { line-height:1.55; }
#app .ce button { font:600 14px/1.3 Inter,sans-serif; color:inherit; background:transparent; border:0; border-radius:8px; padding:9px 12px; min-height:44px; max-width:100%; text-align:center; white-space:normal; cursor:pointer; box-shadow:none; }
#app .ce button:hover:enabled { background:var(--brand-soft,#fff0ee); }
#app .ce button:disabled { opacity:.56; cursor:default; }
#app .ce :focus-visible { outline:3px solid var(--brand,#a53030); outline-offset:2px; }
#app .ce button,#app .ce input,#app .ce textarea,#app .ce [tabindex] { scroll-margin-block:92px 104px; }
#app .ce button.ce-primary { background:var(--brand,#ab3535); color:white; border:1px solid transparent; padding-inline:19px; }
#app .ce button.ce-primary:hover:enabled { background:var(--brand,#ab3535); filter:brightness(.92); }
#app .ce button.ce-line { background:white; border:1px solid var(--ce-rule); }
#app .ce button.ce-link,#app .ce button.ce-back { color:var(--brand,#a53030); text-align:left; }
#app .ce .ce-back { padding-inline:0 12px; margin-bottom:8px; }
#app .ce .ce-page { margin:10px 0 22px; }
#app .ce .ce-page p,#app .ce .ce-card>p { margin-top:9px; color:var(--ce-muted); }
#app .ce .ce-search { display:flex; align-items:flex-end; gap:10px; margin:0 0 18px; }
#app .ce .ce-search label { flex:1; max-width:650px; }
#app .ce .ce-search label span,#app .ce .ce-field>span,#app .ce .ce-field>label>span { display:block; font-weight:650; margin:0 0 8px; }
#app .ce input[type=search],#app .ce textarea { background:white; border:1px solid #bdb3ad; border-radius:8px; width:100%; color:#282321; font:400 15px/1.55 Inter,sans-serif; padding:10px 12px; }
#app .ce input[type=search] { height:46px; }
#app .ce .ce-picker { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:12px 0 16px; }
#app .ce .ce-item { display:grid; grid-template-columns:58px minmax(0,1fr) 16px; align-items:center; gap:13px; background:white; border:1px solid var(--ce-rule); padding:11px; text-align:left; }
#app .ce .ce-item strong,#app .ce .ce-item small,#app .ce .ce-event small { display:block; }
#app .ce .ce-item strong { font-size:15px; }
#app .ce small { color:var(--ce-muted); font-size:12px; font-weight:500; }
#app .ce .ce-photo { display:grid; place-items:center; width:58px; height:64px; background:#f7f5f2; border-radius:8px; overflow:hidden; }
#app .ce .ce-photo img { width:100%; height:100%; object-fit:contain; }
#app .ce .ce-photo svg { width:24px; color:var(--ce-muted); }
#app .ce .ce-identity { display:grid; grid-template-columns:84px minmax(0,1fr); align-items:center; gap:18px; padding:0; margin-bottom:20px; }
#app .ce .ce-identity .ce-photo { width:84px; height:92px; }
#app .ce .ce-identity p { color:var(--ce-muted); font-size:12px; font-variant-numeric:tabular-nums; margin-bottom:5px; }
#app .ce .ce-identity h1 { font-size:clamp(23px,2.35vw,33px); }
#app .ce .ce-status { display:flex; flex-wrap:wrap; gap:2px 12px; font-size:13px; color:var(--ce-muted); margin-top:7px; }
#app .ce .ce-tabs { display:flex; flex-wrap:wrap; gap:6px; border-bottom:1px solid var(--ce-rule); padding-bottom:9px; margin:0 0 16px; }
#app .ce .ce-tabs button[aria-pressed=true],#app .ce .ce-segments button[aria-pressed=true] { color:var(--brand,#a53030); background:var(--brand-soft,#fff0ee); box-shadow:inset 0 0 0 1px var(--brand,#a53030); }
#app .ce .ce-columns { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); align-items:start; gap:16px; }
#app .ce .ce-card { border:1px solid var(--ce-rule); border-radius:12px; background:white; padding:clamp(16px,2vw,26px); margin:0 0 14px; }
#app .ce .ce-card .ce-field { display:block; margin:18px 0; padding:0; }
#app .ce .ce-segments { display:flex; flex-wrap:wrap; gap:3px; margin:13px 0 16px; }
#app .ce .ce-segments button { font-size:13px; padding-inline:10px; }
#app .ce .ce-reading { background:var(--surface,#fafbfc); }
#app .ce .ce-reading section,#app .ce .ce-event { border-top:1px solid var(--ce-rule); padding-top:13px; margin-top:15px; }
#app .ce .ce-reading p,#app .ce .ce-event p,#app .ce .ce-lines,#app .ce .ce-review small { white-space:pre-wrap; margin-top:5px; }
#app .ce .ce-refs,#app .ce .ce-choices { border:0; margin:8px 0; padding:0; }
#app .ce .ce-refs { display:flex; flex-wrap:wrap; gap:0 8px; }
#app .ce .ce-refs legend,#app .ce .ce-choices legend { font-size:13px; color:var(--ce-muted); }
#app .ce .ce-refs label,#app .ce .ce-choices label { display:flex; align-items:center; gap:9px; min-height:44px; line-height:1.5; cursor:pointer; }
#app .ce .ce-refs label { padding:4px; min-width:48px; }
#app .ce input[type=checkbox],#app .ce input[type=radio] { width:18px; height:18px; flex:0 0 18px; accent-color:var(--brand,#ab3535); }
#app .ce .ce-actions,#app .ce .ce-heading,#app .ce .ce-source-nav { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
#app .ce .ce-actions,#app .ce .ce-withdraw { margin-top:16px; border-top:1px solid var(--ce-rule); padding-top:15px; }
#app .ce .ce-actions span { width:100%; color:var(--ce-muted); font-size:13px; }
#app .ce .ce-heading,#app .ce .ce-source-nav { justify-content:space-between; }
#app .ce .ce-source-nav { background:#f6f3ef; border-radius:8px; margin-top:16px; font-size:13px; }
#app .ce .ce-preview-tabs { margin-top:0; }
#app .ce .ce-note { background:var(--surface,#fafbfc); }
#app .ce .ce-review small { display:block; }
#app .ce .ce-revision { display:block; text-align:left; width:100%; padding:12px 8px; border-bottom:1px solid var(--ce-rule); border-radius:0; }
#app .ce .ce-revision[aria-pressed=true] { background:var(--brand-soft,#fff0ee); }
#app .ce .ce-revision span { display:block; color:var(--ce-muted); font-size:12px; margin-top:5px; }
@media(max-width:900px) {
  #app .ce .ce-columns { grid-template-columns:minmax(0,1fr); }
  #app .ce .ce-side { display:none; }
  #app .ce .ce-note { grid-row:1; }
}
@media(max-width:620px) {
  #app .ce .ce-picker { grid-template-columns:minmax(0,1fr); }
  #app .ce .ce-identity { grid-template-columns:58px minmax(0,1fr); gap:10px; margin-bottom:13px; }
  #app .ce .ce-identity .ce-photo { width:58px; height:68px; }
  #app .ce .ce-identity h1 { font-size:21px; }
  #app .ce .ce-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:2px; }
  #app .ce .ce-tabs button { padding-inline:2px; font-size:12px; }
  #app .ce .ce-card { padding:14px; }
  #app .ce .ce-source-nav { gap:2px; }
  #app .ce .ce-source-nav button { padding-inline:8px; }
}

