:root{--chalk:#f6f5f0;--paper:#ffffff;--tar:#141414;--tar-2:#3a3a36;--muted:#74736c;--line:#e2e0d6;--danfo:#f5c518;--danfo-ink:#6b5200;--wa:#1fa855;--wa-ink:#0e6b33;--red:#c2412d;--amber:#a86b12;--display:"Bricolage Grotesque","Arial Narrow",system-ui,sans-serif;--sans:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--serif:"Cormorant Garamond",Georgia,serif;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--chalk);color:var(--tar);font-family:var(--sans);font-size:15px;line-height:1.5}img{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}:focus-visible{outline:2.5px solid var(--danfo);outline-offset:2px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 18px;font-weight:700;font-size:15px;text-decoration:none;background:var(--tar);color:#fff;transition:transform .08s}.btn:active{transform:translateY(1px)}.btn.yellow{background:var(--danfo);color:var(--tar)}.btn.ghost{background:transparent;color:var(--tar);box-shadow:inset 0 0 0 1.5px var(--tar)}.btn.wa{background:var(--wa);color:#fff}.btn.small{padding:8px 12px;font-size:13.5px;border-radius:10px}.btn.block{width:100%}.btn[aria-disabled=true],.btn[disabled]{opacity:.5;pointer-events:none}.btn svg{width:18px;height:18px}.field{display:grid;grid-gap:6px;gap:6px}.field>.lbl,.field>label{font-size:13px;font-weight:700;color:var(--tar-2)}.field .hint{font-size:12.5px;color:var(--muted)}.field input,.field select,.field textarea,.input{width:100%;background:var(--paper);border:1.5px solid var(--line);border-radius:12px;padding:12px 13px;outline:none;font-size:15px}.field input:focus,.field select:focus,.field textarea:focus,.input:focus{border-color:var(--tar)}.prefix{display:flex;align-items:stretch;border:1.5px solid var(--line);border-radius:12px;background:var(--paper);overflow:hidden}.prefix:focus-within{border-color:var(--tar)}.prefix span{padding:12px 0 12px 13px;color:var(--muted);white-space:nowrap}.prefix input{border:0!important;padding-left:2px;border-radius:0;min-width:0}.err{color:var(--red)}.err,.ok{font-size:13.5px;font-weight:600}.ok{color:var(--wa-ink)}.mark{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.02em}.mark i{font-style:normal;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--danfo);color:var(--tar);font-size:17px;box-shadow:inset 0 -3px 0 rgba(0,0,0,.18)}.l-top{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:20;background:rgba(246,245,240,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0);background:var(--chalk);z-index:21}.l-top .wrap{justify-content:space-between;height:62px;gap:12px}.l-top .wrap,.l-top nav{display:flex;align-items:center}.l-top nav{gap:8px}.l-top nav a.link{text-decoration:none;font-weight:700;font-size:14px;padding:8px 6px}.hero-l{padding-block:36px 28px}.hero-l .grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:28px;gap:28px;align-items:center}.hero-l .grid>*{min-width:0}.hero-l h1{font-family:var(--display);font-weight:800;letter-spacing:-.035em;line-height:.95;font-size:clamp(42px,11vw,84px);line-height:1.04;margin:0 0 18px;text-wrap:balance}.hero-l h1 mark{background:var(--danfo);color:var(--tar);padding:0 .12em;border-radius:.12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.hero-l p.lede{font-size:17px;color:var(--tar-2);max-width:44ch;margin:0 0 22px}.hero-l .ctas{display:flex;gap:10px;flex-wrap:wrap}.urlbar{display:flex;align-items:center;gap:0;margin-top:22px;max-width:420px;background:var(--paper);border:1.5px solid var(--tar);border-radius:14px;padding:6px;font-weight:700}.urlbar span{padding-left:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}.urlbar .btn{flex:none}.urlbar input{flex:1 1;min-width:0;border:0;outline:none;padding:9px 2px;font-weight:700;background:transparent}.phone{justify-self:center;width:min(320px,100%);aspect-ratio:9/17.5;border-radius:38px;padding:10px;background:var(--tar);box-shadow:0 30px 60px -25px rgba(0,0,0,.45)}.phone .scr{width:100%;height:100%;border-radius:30px;overflow:hidden;background:#f6efe2;position:relative}.phone .scr .bar{height:46px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:600;font-size:20px;border-bottom:1px solid #e3d6bd}.phone .scr .cover{height:34%;background-size:cover;background-position:50% 45%}.phone .scr .pg{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;padding:10px}.phone .scr .pg .tile{display:grid;grid-gap:2px;gap:2px;background:#fffaf1;border:1px solid #e3d6bd;border-radius:10px;padding:0 0 7px;overflow:hidden;font-size:11px}.phone .scr .pg .tile .img{display:block;aspect-ratio:4/5;background:#e3d6bd 50%/cover no-repeat}.phone .scr .pg .tile b{font-family:var(--serif);font-size:13px;line-height:1.1;padding:4px 7px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phone .scr .pg .tile span:last-child{font-weight:800;padding:0 7px}.phone .scr .waf{position:absolute;left:10px;right:10px;bottom:10px;background:var(--wa);color:#fff;text-align:center;font-weight:700;border-radius:12px;padding:10px;font-size:13px}.band{background:var(--tar);color:#f1efe7}.band .wrap{padding-block:40px}.band h2,.sec-l h2{font-family:var(--display);font-weight:800;letter-spacing:-.03em;font-size:clamp(28px,6vw,44px);line-height:1;margin:0 0 22px;text-wrap:balance}.steps-l{list-style:none;padding:0;margin:0;grid-gap:14px}.steps-l,.steps-l li{display:grid;gap:14px}.steps-l li{grid-template-columns:44px 1fr;grid-gap:14px;align-items:start}.steps-l b{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--danfo);color:var(--tar);font-family:var(--display);font-size:22px}.steps-l strong{display:block;font-size:17px;color:#fff}.steps-l span{color:#b9b7ad;font-size:14.5px}.sec-l{padding-block:44px}.street{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));grid-gap:14px;gap:14px}.stall{background:var(--paper);border:1.5px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:border-color .15s,transform .15s}.stall:hover{border-color:var(--tar);transform:translateY(-2px)}.stall .awning{height:12px;background:repeating-linear-gradient(90deg,var(--ac) 0 22px,#fff 22px 44px)}.stall .cv{aspect-ratio:16/10;background:#eee 50%/cover no-repeat}.stall .bd{padding:12px 14px 14px;display:grid;grid-gap:2px;gap:2px}.stall .nm{font-weight:800;font-size:17px}.stall .tg{color:var(--muted);font-size:13.5px}.stall .u{font-size:12.5px;font-weight:700;color:var(--tar-2);margin-top:6px}.empty-street{border:2px dashed var(--line);border-radius:18px;padding:28px;text-align:center;color:var(--muted)}.feat{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}.feat>div{background:var(--paper);border:1.5px solid var(--line);border-radius:16px;padding:16px}.feat h3{margin:0 0 4px;font-size:16px}.feat p{margin:0;color:var(--tar-2);font-size:14px}.l-foot{border-top:1px solid var(--line);padding-block:26px calc(26px + env(safe-area-inset-bottom, 0px));color:var(--muted);font-size:13.5px}.l-foot .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}@media (min-width:900px){.hero-l{padding-block:64px 48px}.hero-l .grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px}.steps-l{grid-template-columns:repeat(3,1fr)}.steps-l li{grid-template-columns:1fr}}.auth{min-height:100dvh;display:grid;place-items:center;padding-block:24px}.auth .card{width:min(420px,100%);background:var(--paper);border:1.5px solid var(--line);border-radius:22px;padding:24px 20px;display:grid;grid-gap:14px;gap:14px}.auth h1{font-family:var(--display);font-weight:800;letter-spacing:-.03em;font-size:32px;margin:4px 0 0;line-height:1}.auth p{margin:0;color:var(--tar-2)}.auth .alt{text-align:center;font-size:14px;color:var(--muted)}.auth .alt a{font-weight:700;color:var(--tar)}.dash{min-height:100dvh;padding-bottom:calc(84px + env(safe-area-inset-bottom, 0px))}.d-top{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:20;background:var(--tar);color:#fff}.d-top .wrap{display:flex;align-items:center;justify-content:space-between;height:58px;gap:10px}.d-top .mark{color:#fff;font-size:18px}.d-top .mark i{width:26px;height:26px;font-size:15px}.d-top .shopname{font-weight:700;font-size:14px;color:#d9d7cd;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.d-top form{display:contents}.d-top .out{background:none;border:0;color:#b9b7ad;font-size:13px;font-weight:700;padding:6px}.d-tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--paper);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:6px max(8px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom, 0px)) max(8px,env(safe-area-inset-left,0px))}.d-tabs a{display:grid;justify-items:center;grid-gap:2px;gap:2px;text-decoration:none;font-size:11.5px;font-weight:700;color:var(--muted);padding:6px 0;border-radius:10px;position:relative}.d-tabs a svg{width:22px;height:22px}.d-tabs a[aria-current=page],.d-tabs a[aria-current=page] svg{color:var(--tar)}.d-tabs a[aria-current=page]:before{content:"";position:absolute;top:-6px;left:30%;right:30%;height:3px;border-radius:3px;background:var(--danfo)}.d-tabs .dot{position:absolute;top:2px;right:calc(50% - 20px);min-width:17px;height:17px;border-radius:9px;background:var(--red);color:#fff;font-size:10.5px;display:grid;place-items:center;padding:0 4px}@media (min-width:900px){.d-tabs{position:-webkit-sticky;position:sticky;top:calc(58px + env(safe-area-inset-top, 0px));bottom:auto;border-top:0;border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:6px}.d-tabs a{grid-auto-flow:column;align-items:center;gap:6px;font-size:14px;padding:10px 16px}.d-tabs a svg{width:18px;height:18px}.d-tabs a[aria-current=page]:before{top:auto;bottom:-6px;left:16px;right:16px}.dash{padding-bottom:40px}}.d-main{padding-block:18px 30px;display:grid;grid-gap:18px;gap:18px;max-width:760px}.d-h{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.d-h h1{font-family:var(--display);font-weight:800;letter-spacing:-.03em;font-size:30px;line-height:1;margin:0}.d-h p{margin:4px 0 0;color:var(--muted);font-size:14px}.panel{background:var(--paper);border:1.5px solid var(--line);border-radius:18px;padding:16px;display:grid;grid-gap:14px;gap:14px}.panel h2{margin:0;font-size:17px}.two{display:grid;grid-gap:14px;gap:14px;grid-template-columns:1fr 1fr}.two>.full{grid-column:1/-1}@media (max-width:420px){.two{grid-template-columns:1fr}}.share{display:flex;gap:8px;align-items:center;background:#fff8dc;border:1.5px solid #f1dc8a;border-radius:14px;padding:10px 10px 10px 14px}.share code{flex:1 1;min-width:0;font-family:inherit;font-weight:700;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.stats div{background:var(--paper);border:1.5px solid var(--line);border-radius:14px;padding:12px}.stats b{display:block;font-family:var(--display);font-size:24px;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stats span{font-size:12px;color:var(--muted);font-weight:600}.plist{display:grid;grid-gap:10px;gap:10px}.prow{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:12px;gap:12px;background:var(--paper);border:1.5px solid var(--line);border-radius:16px;padding:10px}.prow .noimg,.prow img{width:64px;height:76px;object-fit:cover;border-radius:10px;background:#eee}.prow .t{font-weight:800;line-height:1.25}.prow .s{font-size:12.5px;color:var(--muted)}.prow .ctl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:6px;gap:6px;margin-top:8px}.prow .links{display:flex;gap:16px;margin-top:8px}.prow .links button{background:none;border:0;padding:2px 0;font-size:13px;font-weight:800;color:var(--tar);text-decoration:underline;text-underline-offset:3px}.prow .links button.danger{color:var(--red)}.prow .ctl input,.prow .ctl select{width:100%;border:1.5px solid var(--line);border-radius:9px;padding:7px 8px;font-size:13.5px;background:#fff}.prow .ctl .money{position:relative}.prow .ctl .money:before{content:"₦";position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:13px}.prow .ctl .money input{padding-left:20px}.prow .order{display:flex;gap:4px;flex:none}.prow .order button{width:30px;height:30px;border:1.5px solid var(--line);background:#fff;border-radius:8px;font-weight:800;font-size:15px;line-height:1}.prow .order button:disabled{opacity:.35;cursor:default}.prow .links{flex-wrap:wrap;row-gap:4px}.iconbtn{border:1.5px solid var(--line);background:#fff;border-radius:9px;padding:0 10px;font-size:12.5px;font-weight:700}.iconbtn.danger{color:var(--red)}.photo-pick{display:grid;grid-template-columns:96px 1fr;grid-gap:12px;gap:12px;align-items:center}.photo-pick .pv{width:96px;height:116px;border-radius:12px;background:#eee 50%/cover no-repeat;border:1.5px dashed var(--line);display:grid;place-items:center;color:var(--muted);font-size:12px;text-align:center}.olist{display:grid;grid-gap:10px;gap:10px}.ocard{background:var(--paper);border:1.5px solid var(--line);border-radius:16px;padding:14px;display:grid;grid-gap:8px;gap:8px}.ocard .hd{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.ocard .code{font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em}.ocard .when{color:var(--muted);font-size:12.5px}.ocard ul{margin:0;padding:0;list-style:none;display:grid;grid-gap:2px;gap:2px;font-size:14px}.ocard .tot{display:flex;justify-content:space-between;font-weight:800;border-top:1px dashed var(--line);padding-top:8px}.ocard .who{font-size:13.5px;color:var(--tar-2)}.ocard .act{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.pill{display:inline-block;font-size:11.5px;font-weight:800;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.pill.new{background:#fff1c2;color:var(--danfo-ink)}.pill.confirmed{background:#e3ecff;color:#2547a8}.pill.paid{background:#dff3e6;color:var(--wa-ink)}.pill.delivered{background:#ececea;color:var(--tar-2)}.pill.cancelled{background:#fbe4df;color:var(--red)}.zone{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;grid-gap:6px;gap:6px}.zone input{border:1.5px solid var(--line);border-radius:9px;padding:9px 10px;font-size:14px;background:#fff;min-width:0}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatches label{width:34px;height:34px;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 0 2px rgba(0,0,0,.08);position:relative}.swatches input{position:absolute;opacity:0;inset:0;cursor:pointer}.swatches label:has(input:checked){box-shadow:0 0 0 3px var(--paper),0 0 0 5px var(--tar)}.toast-d{position:fixed;left:50%;bottom:calc(92px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);background:var(--tar);color:#fff;padding:10px 16px;border-radius:999px;font-size:13.5px;font-weight:700;z-index:60;white-space:nowrap}.sf{--ac:#b0823a;--bg:#f6efe2;--card:#fffaf1;--sand:#eadfca;--ln:#ddcfb5;--ink:#16120d;--ink2:#4a4036;--mt:#857865;background:var(--bg);color:var(--ink);min-height:100dvh}.sf .top{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:30;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--ln)}.sf .top .wrap{justify-content:space-between;height:62px}.sf .logo,.sf .top .wrap{display:flex;align-items:center;gap:10px}.sf .logo{text-decoration:none;min-width:0}.sf .logo img{width:38px;height:38px;border-radius:50%;object-fit:cover}.sf .logo span{font-family:var(--serif);font-weight:600;font-size:26px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf .bagbtn{display:flex;align-items:center;gap:8px;background:var(--ink);color:#fff;border:0;border-radius:999px;padding:9px 14px 9px 12px;font-weight:700;font-size:14px;flex:none}.sf .bagbtn svg{width:18px;height:18px}.sf .bagbtn .n{min-width:20px;height:20px;border-radius:10px;background:var(--ac);color:#fff;font-size:12px;display:grid;place-items:center;padding:0 6px}.sf .hero{padding-block:22px 6px}.sf .hero .grid{display:grid;grid-gap:18px;gap:18px;align-items:center}.sf .hero .pic{border-radius:22px;overflow:hidden;aspect-ratio:4/3.4;background:var(--sand);box-shadow:0 10px 30px -12px rgba(40,25,5,.25)}.sf .hero .pic img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}.sf .eyebrow{font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ac);font-weight:800;margin:0 0 6px;filter:brightness(.8)}.sf .hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(36px,9vw,60px);line-height:1.02;margin:0 0 10px;letter-spacing:-.01em;text-wrap:balance}.sf .hero p{color:var(--ink2);margin:0 0 18px;max-width:48ch}.sf .ctas{display:flex;gap:10px;flex-wrap:wrap}.sf .cta{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:#fff;text-decoration:none;border-radius:999px;padding:13px 22px;font-weight:700;border:0}.sf .cta.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}.sf .shop{padding-block:26px 40px}.sf .shop .head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}.sf .shop h2{font-family:var(--serif);font-size:32px;font-weight:600;margin:0}.sf .count{color:var(--mt);font-size:13px}.sf .controls{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:10px;gap:10px;margin-bottom:16px}.sf .search{position:relative}.sf .search input{width:100%;background:var(--card);border:1px solid var(--ln);border-radius:12px;padding:12px 14px 12px 40px;outline:none}.sf .search input:focus{border-color:var(--ac)}.sf .search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--mt)}.sf .row{display:flex;gap:8px;align-items:center;justify-content:space-between}.sf .chips{min-width:0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.sf .chips::-webkit-scrollbar{display:none}.sf .chip{flex:none;border:1px solid var(--ln);background:var(--card);border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:700;color:var(--ink2)}.sf .chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.sf select.sort{flex:none;background:var(--card);border:1px solid var(--ln);border-radius:10px;padding:7px 8px;font-size:13px;font-weight:700;color:var(--ink2)}.sf .grid-p{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.sf .card{background:var(--card);border:1px solid var(--ln);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.sf .card .ph{position:relative;aspect-ratio:4/5;background:var(--sand);border:0;padding:0;width:100%;display:block}.sf .card .ph img{width:100%;height:100%;object-fit:cover}.sf .badge{position:absolute;left:8px;top:8px;font-size:11px;font-weight:800;padding:4px 8px;border-radius:999px}.sf .badge.few{background:#fbe9c9;color:var(--amber)}.sf .badge.out{background:var(--ink);color:#fff}.sf .card.soldout .ph img{filter:grayscale(.7) opacity(.65)}.sf .card .bd{padding:10px 11px 12px;display:flex;flex-direction:column;gap:2px;flex:1 1}.sf .brand{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ac);font-weight:800;filter:brightness(.8)}.sf .name{font-family:var(--serif);font-size:19px;line-height:1.1;font-weight:600}.sf .meta{font-size:12px;color:var(--mt)}.sf .price{font-weight:800;font-size:16px;margin-top:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sf .add{margin-top:auto;border:0;border-radius:10px;background:var(--ink);color:#fff;padding:10px 8px;font-weight:700;font-size:13.5px}.sf .card .bd .price+.add{margin-top:10px}.sf .add[disabled]{background:var(--sand);color:var(--mt);cursor:not-allowed}.sf .add.added{background:var(--ac)}.sf .empty{grid-column:1/-1;text-align:center;color:var(--mt);padding:40px 10px}.sf footer{border-top:1px solid var(--ln);padding-block:26px calc(30px + env(safe-area-inset-bottom, 0px));color:var(--ink2);font-size:13.5px}.sf footer .wrap{display:grid;grid-gap:10px;gap:10px}.sf footer .links{display:flex;gap:16px;flex-wrap:wrap}.sf footer .links a{text-decoration:none;font-weight:700}.sf footer .by{font-size:12.5px;color:var(--mt)}.sf footer .by a{font-weight:800;color:var(--ink)}.sf .fab{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom, 0px));z-index:25;width:54px;height:54px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 10px 24px -8px rgba(15,90,45,.6)}.sf .fab svg{width:28px;height:28px;color:#fff}.sf .scrim{position:fixed;inset:0;background:rgba(22,18,13,.5);z-index:40}.sf .sheet{position:fixed;z-index:50;background:var(--card);left:0;right:0;bottom:0;max-height:92dvh;border-radius:22px 22px 0 0;display:flex;flex-direction:column;box-shadow:0 -10px 40px -10px rgba(0,0,0,.3);animation:up .25s cubic-bezier(.2,.8,.2,1)}@keyframes up{0%{transform:translateY(40px);opacity:.4}}@media (prefers-reduced-motion:reduce){.sf .sheet{animation:none}}@media (min-width:760px){.sf .sheet{left:auto;top:0;width:440px;max-height:none;border-radius:0}}.sf .sheet .sh{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid var(--ln)}.sf .sheet .sh h3{margin:0;font-family:var(--serif);font-size:26px;font-weight:600}.sf .x{background:var(--sand);border:0;width:34px;height:34px;border-radius:50%;font-size:18px;line-height:1;display:grid;place-items:center}.sf .sheet .sb{overflow:auto;padding:14px 16px;flex:1 1}.sf .sheet .sfoot{padding:12px 16px calc(14px + env(safe-area-inset-bottom, 0px));border-top:1px solid var(--ln)}.sf .li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--ln)}.sf .li .noimg,.sf .li img{width:64px;height:76px;object-fit:cover;border-radius:10px;background:var(--sand)}.sf .li .nm{font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.1}.sf .li .pr{font-size:13px;color:var(--mt)}.sf .qty{display:flex;align-items:center;border:1px solid var(--ln);border-radius:999px;overflow:hidden}.sf .qty button{background:none;border:0;width:30px;height:30px;font-size:16px;font-weight:800}.sf .qty span{min-width:20px;text-align:center;font-weight:800;font-size:14px}.sf .f{display:grid;grid-gap:5px;gap:5px;margin-top:14px}.sf .f label{font-size:12.5px;font-weight:800;color:var(--ink2)}.sf .f input,.sf .f select,.sf .f textarea{background:#fff;border:1px solid var(--ln);border-radius:10px;padding:11px 12px;outline:none;width:100%}.sf .f input:focus,.sf .f select:focus,.sf .f textarea:focus{border-color:var(--ac)}.sf .tot{display:grid;grid-gap:4px;gap:4px;font-size:14px;margin-bottom:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sf .tot div{display:flex;justify-content:space-between}.sf .tot .g{font-weight:800;font-size:17px;padding-top:6px;border-top:1px solid var(--ln);margin-top:4px}.sf .wa{width:100%;border:0;border-radius:12px;background:var(--wa);color:#fff;font-weight:800;padding:14px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;text-decoration:none}.sf .wa svg{width:20px;height:20px}.sf .note{font-size:12px;margin:8px 0 0}.sf .bag-empty,.sf .note{color:var(--mt);text-align:center}.sf .bag-empty{padding:40px 10px}.sf .dt img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:16px;background:var(--sand)}.sf .dt .name{font-size:28px;margin-top:12px}.sf .dt .desc{color:var(--ink2);margin:8px 0 0}.sf .dt .price{font-size:20px}.sf .btns{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.sf .btns .add{margin:0}.sf .btns .add,.sf .btns .wa{padding:14px 8px;font-size:14.5px}.sf .toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;font-size:13.5px;font-weight:700;z-index:60;white-space:nowrap;pointer-events:none}@media (min-width:640px){.sf .grid-p{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sf .controls{grid-template-columns:minmax(0,1fr) auto;align-items:center}}@media (min-width:900px){.sf .hero{padding-block:40px 10px}.sf .hero .grid{grid-template-columns:1.05fr 1fr;gap:44px}.sf .hero .pic{order:2;aspect-ratio:4/3.6}.sf .grid-p{grid-template-columns:repeat(4,minmax(0,1fr))}}.checklist{border-color:var(--danfo);background:#fffdf3}.checklist .count{font-size:13px;color:var(--muted);font-weight:700}.checklist .meter{height:8px;border-radius:8px;background:#f1e6b8;overflow:hidden}.checklist .meter span{display:block;height:100%;background:var(--danfo);border-radius:8px}.checklist ol{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.checklist li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;min-height:36px}.checklist .tick{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800;background:#fff;box-shadow:inset 0 0 0 1.5px var(--line)}.checklist li.done .tick{background:var(--tar);color:var(--danfo);box-shadow:none}.checklist li.done .lbl{color:var(--muted);text-decoration:line-through}.checklist .lbl{font-weight:600;font-size:14.5px}.toggle{display:grid;grid-template-columns:22px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;padding:12px;border:1.5px solid var(--line);border-radius:12px;background:#fff;cursor:pointer}.toggle.full{grid-column:1/-1}.toggle input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--tar)}.toggle b{font-size:14.5px}.toggle small{color:var(--muted);font-size:12.5px;line-height:1.4}