/* Tuk storefront theme: app-style ordering. Loaded after psar.css; Tuk-only parts use tk-.
   --ps-accent is the shop colour (green by default) used for the header band; --tk-pop is the Add button yellow. */
body.th-tuk{
  --ps-page:#F3F5F1; --ps-paper:#FFFFFF; --ps-cream:#FFFFFF; --ps-line:#E1E6DE; --ps-line-2:#D3DACF;
  --ps-ink:#13241C; --ps-ink-2:#56645C; --ps-ink-3:#5E6B63; --tk-soft:#EEF1EC; --tk-pop:#F2B33D; --tk-pop-ink:#13241C;
  --ps-head:'Kantumruy Pro','Noto Sans JP',system-ui,sans-serif;
  --ps-body:'Kantumruy Pro','Noto Sans JP',system-ui,sans-serif;
  font-size:15px;
}
.th-tuk .ps-wrap{max-width:1352px}

/* header band */
.th-tuk .tk-hdr{background:var(--ps-accent);color:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
.th-tuk .tk-hdr .ps-wrap{gap:28px;padding-top:16px;padding-bottom:16px}
.th-tuk .tk-hdr .ps-logo{color:#fff}
.th-tuk .tk-hdr .ps-logo .mk{width:42px;height:42px;border-radius:50%;background:var(--tk-pop);color:var(--tk-pop-ink)}
.th-tuk .tk-hdr .ps-search{height:48px;border-radius:24px;border:0;background:#fff;max-width:none}
.th-tuk .tk-hdr .ps-search .ic{color:var(--ps-ink-2);padding-left:18px}
.th-tuk .tk-hdr .ps-lang>button{height:44px;border-radius:22px;border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff}
.tk-orders{height:44px;padding:0 16px;border-radius:22px;border:0;background:rgba(255,255,255,.14);color:#fff;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;white-space:nowrap;font-family:inherit}
.tk-orders:hover{background:rgba(255,255,255,.24);color:#fff}
@media (max-width:767px){
  .th-tuk .tk-hdr .ps-wrap{gap:10px;padding-top:12px;padding-bottom:14px}
  .tk-orders{display:none}
  .th-tuk .tk-hdr .ps-search{height:44px}
}

/* category chips band */
.tk-chips{background:#fff;border-bottom:1px solid var(--ps-line);position:sticky;top:80px;z-index:30}
.tk-chips .ps-wrap{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding-top:14px;padding-bottom:14px}
.tk-chips .ps-wrap::-webkit-scrollbar{display:none}
.tk-chips a{flex:none;height:44px;padding:0 20px;border-radius:22px;border:1px solid var(--ps-line-2);background:#fff;color:var(--ps-ink);display:flex;align-items:center;font-weight:500;white-space:nowrap}
.tk-chips a:hover{border-color:var(--ps-accent)}
.tk-chips a.on{background:var(--ps-accent);border-color:var(--ps-accent);color:#fff}
@media (max-width:767px){.tk-chips{top:126px}.tk-chips .ps-wrap{padding-top:10px;padding-bottom:10px;gap:8px}.tk-chips a{padding:0 16px;font-size:14px}}

/* list + order panel */
.tk-main{padding-bottom:56px;min-height:60vh}
.tk-shop{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start;padding-top:28px}
.tk-list{display:flex;flex-direction:column;gap:22px;min-width:0}
.th-tuk .ps-slider{border-radius:20px;background:var(--tk-soft)}
.th-tuk .ps-gh{padding-top:0}
.th-tuk .ps-gh h1,.th-tuk .ps-gh h2{font-size:24px}
.th-tuk .ps-sort select{height:40px;border-radius:20px;background:#fff;padding-left:14px}
.th-tuk .ps-crumbs{padding-top:0}
.th-tuk .tk-list .ps-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:1099px){.tk-shop{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.th-tuk .tk-list .ps-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:899px){.tk-shop{grid-template-columns:minmax(0,1fr)}.tk-panel{display:none!important}.th-tuk .tk-list .ps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.tk-shop{padding-top:14px}.tk-main{padding-bottom:84px}.th-tuk .tk-list .ps-grid{grid-template-columns:minmax(0,1fr);gap:10px}.th-tuk .ps-gh h1,.th-tuk .ps-gh h2{font-size:19px}.th-tuk .ps-slider{border-radius:16px}}

/* product row */
.tk-row{background:#fff;border-radius:16px;padding:12px;display:flex;gap:14px;align-items:center;min-width:0}
.tk-row .ph{width:92px;height:92px;border-radius:12px;background:var(--tk-soft);flex:none;border:0;padding:0;overflow:hidden;display:grid;place-items:center;color:#95A39A}
.tk-row .ph img{width:100%;height:100%;object-fit:cover}
.tk-row .ph .ps-i{width:30px;height:30px}
.tk-row .tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;align-items:flex-start}
.tk-row .nm{border:0;background:none;padding:0;font:inherit;font-size:16px;font-weight:600;text-align:left;color:var(--ps-ink);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tk-row .nm:hover{color:var(--ps-accent)}
.tk-row .sub{font-size:13px;color:var(--ps-ink-2)}
.tk-row .ps-price{font-family:var(--ps-body);font-size:17px;font-weight:700;margin-top:3px}
.tk-add{height:44px;padding:0 18px;border-radius:22px;border:0;background:var(--tk-pop);color:var(--tk-pop-ink);font-weight:700;font-size:15px;display:flex;align-items:center;gap:7px;flex:none;font-family:inherit}
.tk-add .ps-i{width:17px;height:17px;stroke-width:2.1}
.tk-add:hover{filter:brightness(.96)}
.tk-add:disabled{opacity:.6}
.tk-step{display:flex;align-items:center;gap:2px;background:var(--ps-accent);border-radius:22px;padding:2px;color:#fff;flex:none}
.tk-step button{width:40px;height:40px;border-radius:50%;border:0;background:transparent;color:#fff;display:grid;place-items:center}
.tk-step button:hover{background:rgba(255,255,255,.14)}
.tk-step button:disabled{opacity:.4}
.tk-step span{min-width:20px;text-align:center;font-weight:700}
.tk-out{font-size:13px;font-weight:600;color:#B42318;flex:none}
@media (max-width:767px){.tk-row{padding:10px;gap:12px;border-radius:14px}.tk-row .ph{width:72px;height:72px}.tk-row .nm{font-size:15px}.tk-add{padding:0 14px}}

/* order panel */
.tk-panel{background:#fff;border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:14px;position:sticky;top:176px}
.tk-panel h2{margin:0;font-size:19px;font-weight:700}
.tk-panel .empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:16px 4px 0}
.tk-panel .empty .ic{width:72px;height:72px;border-radius:50%;background:var(--tk-soft);display:grid;place-items:center;color:var(--ps-accent)}
.tk-panel .empty .ic .ps-i{width:32px;height:32px}
.tk-panel .empty b{font-size:16px}
.tk-panel .empty>span{font-size:14px;color:var(--ps-ink-2);line-height:1.5}
.tk-panel .empty .ps-btn{width:100%;margin-top:10px;background:var(--ps-line);color:var(--ps-ink-2);opacity:1}
.tk-panel .full{display:flex;flex-direction:column;gap:14px}
.tk-panel ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;max-height:46vh;overflow:auto}
.tk-panel li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;font-size:14px}
.tk-panel li .nm{grid-column:1/-1;font-weight:500}
.tk-panel li .q{display:flex;align-items:center;border:1px solid var(--ps-line-2);border-radius:18px;height:34px;justify-self:start}
.tk-panel li .q button{width:32px;height:32px;border:0;background:none;display:grid;place-items:center;color:var(--ps-ink)}
.tk-panel li .q .ps-i{width:14px;height:14px}
.tk-panel li .q span{min-width:20px;text-align:center;font-weight:700}
.tk-panel li b{font-weight:600}
.tk-panel .sum{border-top:1px dashed #CBD3C7;padding-top:12px;display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--ps-ink-2)}
.tk-panel .sum div,.tk-panel .tot{display:flex;justify-content:space-between;gap:10px}
.tk-panel .tot{font-size:20px;font-weight:700}
.tk-panel .ps-btn{border-radius:27px;height:54px;font-size:16px}

/* phone: "View cart" bar */
.tk-cartbar{display:none}
@media (max-width:767px){
  .tk-cartbar{position:fixed;left:12px;right:12px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:44;height:54px;border-radius:27px;background:var(--ps-accent);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-weight:700;font-size:15px;box-shadow:0 10px 24px rgba(0,0,0,.2)}
  .tk-cartbar>span{display:flex;align-items:center;gap:8px}
  .tk-cartbar[style*="display: none"]+.ps-tabs{}
  body.th-tuk .ps-toast{bottom:144px}
}

/* buttons */
.th-tuk .ps-btn{border-radius:27px;height:52px;font-weight:700;font-size:15px}
.th-tuk .ps-btn.acc{background:var(--ps-accent);box-shadow:none}

/* popup: compact card with the photo on top */
.th-tuk .ps-scrim{background:rgba(10,25,18,.55)}
.th-tuk .ps-pop{width:min(560px,100%);grid-template-columns:minmax(0,1fr);padding:0;gap:0;border-radius:24px;background:#fff}
.th-tuk .ps-pop .ps-big{order:-2;border-radius:0;aspect-ratio:2/1;background:var(--tk-soft)}
.th-tuk .ps-pop .ps-big img{object-fit:cover}
.th-tuk .ps-pop .ps-thumbs{order:-1;flex-direction:row;padding:10px 24px 0;gap:8px}
.th-tuk .ps-pop .ps-thumbs:empty{display:none}
.th-tuk .ps-pop .ps-thumbs button{width:52px;height:52px;border-radius:10px}
.th-tuk .ps-pop .ps-thumbs button.on{border:2px solid var(--ps-accent)}
.th-tuk .ps-pop .ps-pinfo{padding:18px 24px 24px;gap:12px}
.th-tuk .ps-pop .x{width:44px;height:44px;background:#fff}
.th-tuk .ps-pinfo h1,.th-tuk .ps-pinfo h2{font-size:23px;font-weight:700}
.th-tuk .ps-pinfo .ps-price{font-family:var(--ps-body);font-size:24px;color:var(--ps-ink)}
.th-tuk .ps-units{flex-direction:column}
.th-tuk .ps-unit{display:flex;justify-content:space-between;align-items:center;border-radius:12px;min-height:50px;padding:0 14px;font-size:15px}
.th-tuk .ps-unit small{margin:0;font-family:var(--ps-body);font-size:15px;color:var(--ps-ink)}
.th-tuk .ps-unit.on{border:2px solid var(--ps-accent);box-shadow:none}
.th-tuk .ps-acts .ps-btn.line{border-color:var(--ps-line-2)}
.th-tuk .ps-acts .ps-btn.acc{background:var(--tk-pop);color:var(--tk-pop-ink)}
.th-tuk .ps-pd{background:#fff;border-radius:20px;grid-template-columns:64px minmax(0,1fr) minmax(0,1fr)}
.th-tuk .ps-pd .ps-big{border-radius:14px;background:var(--tk-soft)}
@media (max-width:767px){
  .th-tuk .ps-pop{border-radius:24px 24px 0 0;max-height:92%}
  .th-tuk .ps-pop .ps-pinfo{padding:16px 18px calc(22px + env(safe-area-inset-bottom,0px))}
  .th-tuk .ps-pd{grid-template-columns:minmax(0,1fr)}
}

/* checkout */
.th-tuk .ps-bh h1{font-size:26px}
.th-tuk .ps-bbody>div:first-child{background:#fff;border-radius:20px;padding:20px 20px 2px}
.th-tuk .ps-row img,.th-tuk .ps-row .noimg{border-radius:12px;background:var(--tk-soft);object-fit:cover}
.th-tuk .ps-qty{border-radius:18px;height:36px}
.th-tuk .ps-ckbox{border-radius:20px;box-shadow:none;background:#fff}
.th-tuk .ps-ckbox .lbl{color:var(--ps-ink);font-size:17px;letter-spacing:0;text-transform:none}
.th-tuk .ps-fld{font-size:14px;font-weight:500}
.th-tuk .ps-fld input,.th-tuk .ps-fld textarea{height:50px;border-radius:14px;font-size:15px}
.th-tuk .ps-fld textarea{height:84px}
.th-tuk .ps-radio{border-radius:16px;min-height:56px}
.th-tuk .ps-radio:has(input:checked){border:2px solid var(--ps-accent);background:#EAF2EC}
.th-tuk .ps-sum .tot span:last-child{font-family:var(--ps-body);font-size:22px;font-weight:700}
.th-tuk .ps-ckbox .ps-btn.acc{background:var(--tk-pop);color:var(--tk-pop-ink)}
.th-tuk .ps-receipt{border-radius:20px;box-shadow:none}

/* footer */
.th-tuk .ps-ftr{background:#fff}
/* Order panel switched off in Customize: the rows take the full width */
.tk-shop.nopanel{grid-template-columns:minmax(0,1fr)}
@media (min-width:1100px){.tk-shop.nopanel .tk-list .ps-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
