@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(/assets/nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(/assets/nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(/assets/nunito-latin-ext-400-normal-CjMJVfGn.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(/assets/nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(/assets/nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(/assets/nunito-latin-ext-600-normal-BKUpuB78.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pacifico;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pacifico-cyrillic-ext-400-normal-BuyJL26e.woff2)format("woff2"),url(/assets/pacifico-cyrillic-ext-400-normal-BH1b5rOk.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Pacifico;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pacifico-cyrillic-400-normal-DS5_g9Hw.woff2)format("woff2"),url(/assets/pacifico-cyrillic-400-normal-BtlfDWif.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pacifico;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pacifico-vietnamese-400-normal-CNs27uJ4.woff2)format("woff2"),url(/assets/pacifico-vietnamese-400-normal-CLnUcRoK.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Pacifico;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pacifico-latin-ext-400-normal-Ba3kv-va.woff2)format("woff2"),url(/assets/pacifico-latin-ext-400-normal-nyRvH6_c.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pacifico;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pacifico-latin-400-normal-7HIToT7q.woff2)format("woff2"),url(/assets/pacifico-latin-400-normal-DArfF-vd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#ffeff6;--card:#fffbfd;--ink:#4a1d3a;--muted:#8a5d77;--pink:#f58ec4;--pink-deep:#c72c84;--on-deep:#fff;--pink-soft:#ffd9eb;--lilac:#f3e3f7;--cheek:#d9442f;--on-cheek:#fff;--need-bg:#ffe7df;--line:#f9c3dd;--lash:#2b2128;--blush:#e0468f;--zip:#c72c84;--font-display:"Pacifico", "Brush Script MT", cursive;--font-body:"Nunito", ui-rounded, "SF Pro Rounded", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);padding:max(28px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(56px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));margin:0;font-size:16px;line-height:1.45}[hidden]{display:none!important}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.side{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;gap:20px;min-width:0;display:flex}@media (width>=1024px){body{padding-inline:max(24px, env(safe-area-inset-left)) max(24px, env(safe-area-inset-right));padding-top:24px}.layout{grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:28px}.side{max-height:calc(100dvh - 48px);margin:-4px -14px 0;padding:4px 14px 28px;position:sticky;top:24px;overflow-y:auto}}.pouch{width:100%;box-shadow:0 10px 30px color-mix(in srgb, var(--pink) 35%, transparent);border-radius:30px 30px 32px 32px}.pouch-top{background:var(--pink);border-radius:30px 30px 0 0;justify-content:center;padding:28px 16px 10px;display:flex;position:relative}.pouch-top:before{content:"";pointer-events:none;border:2px dashed #ffffff80;border-bottom:0;border-radius:22px 22px 0 0;position:absolute;inset:9px 9px 0}.face{width:min(250px,70%);height:auto;display:block;position:relative}.zip{background:repeating-linear-gradient(90deg, var(--zip) 0 6px, transparent 6px 12px) 0 3px / 100% 5px no-repeat, repeating-linear-gradient(90deg, transparent 0 6px, var(--zip) 6px 12px) 0 8px / 100% 5px no-repeat, linear-gradient(var(--pink) 50%, var(--card) 50%);height:16px;position:relative}.zip-pull{z-index:1;background:var(--zip);border-radius:5px;width:24px;height:14px;position:absolute;top:1px;right:8%}.zip-pull:after{content:"";background:radial-gradient(circle at 50% 72%, var(--card) 0 3px, transparent 3.5px), var(--zip);border-radius:7px;width:14px;height:28px;position:absolute;top:10px;left:50%;translate:-50%}.pouch-body{background:var(--card);text-align:center;border-radius:0 0 32px 32px;flex-direction:column;align-items:center;gap:12px;padding:10px 20px 24px;display:flex}h1{font-family:var(--font-display);color:var(--pink-deep);text-wrap:balance;margin:0;font-size:clamp(34px,9vw,46px);font-weight:400;line-height:1.1}.stats{color:var(--muted);min-height:1.45em;margin:0;font-weight:600}.stats b{color:var(--ink);font-weight:800}.status{color:var(--muted);min-height:1.3em;margin:0;font-size:13px}.status.err{color:var(--cheek);font-weight:700}input[type=text],input[type=email],input[type=number]{font:inherit;color:var(--ink);background:var(--bg);border:2px solid var(--line);border-radius:999px;min-width:0;padding:10px 16px}input::placeholder{color:var(--muted);opacity:.8}input[type=text]{flex:180px}input[type=number]{text-align:center;width:78px;padding-inline:8px}input:focus-visible,button:focus-visible{outline:3px solid var(--pink-deep);outline-offset:2px}button{font:inherit;cursor:pointer}.btn{background:var(--pink-deep);color:var(--on-deep);border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-weight:800;transition:transform .12s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:disabled{opacity:.5;cursor:default}.btn.soft{background:var(--pink-soft);color:var(--ink)}.btn.buy{background:var(--cheek);color:var(--on-cheek)}.btn svg{flex:none;width:16px;height:16px}.catbox{background:var(--lilac);border-radius:28px;flex-direction:column;gap:10px;padding:10px;display:flex}.catform{flex-wrap:wrap;gap:8px;display:flex}.catform input[type=text]{background:var(--card)}.suggest{flex-wrap:wrap;gap:6px;margin:0;padding:0 4px 4px;list-style:none;display:flex}.chip-btn{border:2px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 8px;font-size:14px;font-weight:700;display:inline-flex}.chip-btn svg{width:16px;height:16px;color:var(--pink-deep)}.chip-btn:hover{border-color:var(--pink-deep);background:var(--pink-soft)}.shop-slot{text-align:left;width:100%}.shop{background:var(--lilac);border-radius:28px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.shop h2{font-family:var(--font-display);color:var(--pink-deep);margin:0;font-size:22px;font-weight:400}.shop p{color:var(--muted);margin:0;font-weight:600}.chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chip{background:var(--card);border:2px solid var(--cheek);border-radius:999px;padding:4px 12px;font-size:14px;font-weight:700}.chip small{color:var(--muted);font-weight:600}.cats{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));align-items:start;gap:18px;min-width:0;display:grid}.cats>.toolbar,.cats>.welcome{grid-column:1/-1}.cat{background:var(--card);border:2px solid var(--line);border-radius:28px;flex-direction:column;gap:14px;min-width:0;padding:16px;display:flex;container-type:inline-size}.cat.is-closed{padding-block:10px}.cat.dragging{z-index:10;box-shadow:0 16px 36px color-mix(in srgb, var(--pink) 50%, transparent);position:relative}.cat-head{align-items:center;gap:10px;display:flex}.cat-title{flex-direction:column;flex:auto;align-items:flex-start;gap:0;min-width:0;display:flex}.cat-name{max-width:100%;font-family:var(--font-body);color:var(--pink-deep);margin:0;font-size:19px;font-weight:800;line-height:1.3}.cat-name .pn-btn{max-width:100%;display:inline}.cat-name .pn-btn svg{vertical-align:middle;margin-left:6px;display:inline-block}@container (width<=400px){.cat-head{gap:8px}.cat-name{font-size:17px}.grip{width:24px}.cat-icon{width:34px;height:34px}.cat-icon svg{width:18px;height:18px}}.cat-name-text{overflow-wrap:anywhere;min-width:0}.cat-title .rename{margin-bottom:4px}.cat-title .rename input[type=text]{color:var(--pink-deep);padding:4px 12px;font-weight:800}.cat-meta{flex:none;align-items:center;gap:6px;display:flex}.icon-btn.expand svg{width:18px;height:18px;color:var(--pink-deep);transition:transform .18s}.icon-btn.expand[aria-expanded=false] svg{transform:rotate(-90deg)}.rename{width:100%;min-width:0;display:flex}.rename input[type=text]{width:100%;padding-block:6px}.cat-sub{color:var(--muted);margin:0;font-size:13px;font-weight:700;line-height:1.2}.cat-sub span{white-space:nowrap}.cat-sub .need{color:var(--cheek);font-weight:800}.icon-btn{border:2px solid var(--line);color:var(--muted);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:38px;height:38px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.icon-btn svg{width:16px;height:16px}.icon-btn:hover{color:var(--pink-deep);border-color:var(--pink-deep)}.icon-btn.danger:hover{color:var(--cheek);border-color:var(--cheek)}.icon-btn.sure{background:var(--cheek);border-color:var(--cheek);color:var(--on-cheek)}.grip{color:var(--muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:0;border-radius:12px;flex:none;justify-content:center;align-items:center;width:34px;height:38px;padding:0;display:inline-flex}.grip:hover{color:var(--pink-deep);background:var(--pink-soft)}.grip svg{width:18px;height:18px}.cat.dragging .grip{cursor:grabbing}.cat-body{flex-direction:column;gap:14px;min-width:0;display:flex}.cat-icon{background:var(--pink-soft);color:var(--pink-deep);border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex}.cat-icon svg{width:22px;height:22px}.cat-icon:hover,.cat-icon[aria-expanded=true]{background:var(--pink);color:var(--lash)}.picker{background:var(--bg);border-radius:20px;flex-direction:column;gap:8px;padding:10px 12px 12px;display:flex}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:8px;display:grid}.picker-grid button{background:var(--card);color:var(--pink-deep);border:2px solid #0000;border-radius:16px;justify-content:center;align-items:center;height:46px;padding:0;display:inline-flex}.picker-grid button svg{width:22px;height:22px}.picker-grid button:hover{background:var(--pink-soft)}.picker-grid button[aria-pressed=true]{border-color:var(--pink-deep);background:var(--pink-soft)}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding-inline:4px;display:flex}.hint{color:var(--muted);font-size:13px;font-weight:600}.link{color:var(--pink-deep);text-underline-offset:3px;background:0 0;border:0;border-radius:999px;padding:6px 10px;font-size:14px;font-weight:800;text-decoration:underline}.prods{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.prod{background:var(--bg);border:2px solid #0000;border-radius:22px;flex-wrap:wrap;align-items:center;gap:10px 12px;min-width:0;padding:10px 12px 10px 16px;display:flex}.prod.need{background:var(--need-bg);border:2px dashed var(--cheek)}.pname{flex-direction:column;flex:150px;align-items:flex-start;gap:4px;min-width:0;display:flex}.pn{overflow-wrap:anywhere;font-weight:800}.pn-btn{font:inherit;color:inherit;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;min-width:0;padding:2px 6px 2px 0;display:inline-flex}.pn-btn svg{width:14px;height:14px;color:var(--muted);opacity:.6;flex:none}.pn-btn:hover svg,.pn-btn:focus-visible svg{color:var(--pink-deep);opacity:1}.pname .rename input[type=text]{padding:4px 12px;font-weight:800}.badge{background:var(--cheek);color:var(--on-cheek);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:1px 10px;font-size:12px;font-weight:800}.pctl{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.qty{background:var(--card);border:2px solid var(--line);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;min-width:46px;height:38px;padding:0 12px;font-weight:800;animation:.28s ease-out qty-pop;display:inline-flex}@keyframes qty-pop{0%{transform:scale(.8)}60%{transform:scale(1.12)}to{transform:scale(1)}}.btn.round{flex:none;width:42px;height:42px;padding:0}.btn.round.soft{--sign:var(--pink-soft);color:var(--pink-deep)}.btn.round.buy{--sign:var(--cheek)}.btn.round svg{width:28px;height:28px}.qty:before{content:"×";color:var(--muted);margin-right:4px;font-weight:700}.prod.need .qty{border-color:var(--cheek)}.empty-cat{color:var(--muted);margin:0;padding:4px 4px 0;font-weight:600}.addprod{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.addprod .qlabel{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.nudge{background:var(--lilac);border-radius:18px;flex-direction:column;flex-basis:100%;gap:6px;padding:10px 12px;display:flex}.nudge p{margin:0}.nudge-title{font-size:14px;font-weight:800}.nudge-hint{color:var(--muted);font-size:13px;font-weight:600}.nudge-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.nudge-list li{background:var(--card);border-radius:14px;align-items:center;gap:8px;padding:4px 4px 4px 12px;display:flex}.nudge-name{overflow-wrap:anywhere;flex:auto;min-width:0;font-weight:700}.nudge-name small{color:var(--muted);font-weight:600}.nudge-qty{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:800}.btn.nudge-add{--sign:var(--pink-soft);color:var(--pink-deep);padding:4px 12px 4px 8px;font-size:14px}.btn.nudge-add svg{width:20px;height:20px}.welcome{background:var(--card);border:2px dashed var(--line);text-align:center;border-radius:28px;flex-direction:column;align-items:center;gap:12px;padding:24px 18px;display:flex}.welcome h2{font-family:var(--font-display);color:var(--pink-deep);margin:0;font-size:24px;font-weight:400}.welcome p{color:var(--muted);max-width:38ch;margin:0;font-weight:600}.starters{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}@container (width<=520px){.addprod input[type=text]{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.btn,.icon-btn.expand svg{transition:none}.qty{animation:none}.btn:hover:not(:disabled){transform:none}}.app-foot{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 20px;margin-top:32px;font-size:14px;font-weight:700;display:flex}.app-foot select{font:inherit;color:var(--ink);background:var(--card);border:2px solid var(--line);cursor:pointer;border-radius:999px;padding:6px 14px}.app-foot select:focus-visible{outline:3px solid var(--pink-deep);outline-offset:2px}.app-foot-item{align-items:center;gap:8px;display:inline-flex}.modal-backdrop{z-index:100;background:color-mix(in srgb, var(--ink) 35%, transparent);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--card);box-shadow:0 20px 50px color-mix(in srgb, var(--ink) 30%, transparent);border-radius:28px;flex-direction:column;gap:18px;width:min(100%,480px);max-height:calc(100dvh - 32px);padding:20px;display:flex;overflow-y:auto}.modal-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.modal-head h2{font-family:var(--font-display);color:var(--pink-deep);margin:0;font-size:26px;font-weight:400}.modal-section{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.modal-section h3{margin:0;font-size:17px;font-weight:800}.modal-section p{color:var(--muted);margin:0;font-weight:600}.import-card{background:var(--lilac);border-radius:20px;flex-direction:column;align-self:stretch;align-items:flex-start;gap:10px;padding:14px;display:flex}.import-card .import-summary{color:var(--ink);font-weight:800}.import-choice{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.modal .status{margin:0}.install-card{background:var(--card);border:2px dashed var(--pink);border-radius:24px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.install-card h2{color:var(--pink-deep);margin:0;font-size:16px;font-weight:800}.install-card p{color:var(--muted);margin:0;font-size:14px;font-weight:600}.install-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.update-banner{z-index:90;left:50%;bottom:max(16px, env(safe-area-inset-bottom));background:var(--card);border:2px solid var(--pink);width:max-content;max-width:calc(100vw - 32px);box-shadow:0 10px 30px color-mix(in srgb, var(--pink) 45%, transparent);border-radius:999px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 6px 6px 18px;font-weight:700;display:flex;position:fixed;translate:-50%}button.qty{color:var(--ink)}button.qty:hover{border-color:var(--pink-deep)}.amount-edit{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.amount-edit input[type=number]{width:64px;padding-block:8px;font-weight:800}.btn.round.small{width:36px;height:36px}.btn.round.small svg{width:18px;height:18px}.account-link{overflow-wrap:anywhere}.field-label{font-size:14px;font-weight:800}.modal-section input[type=email],.modal-section input[type=text]{background:var(--card);align-self:stretch}.modal-section input[inputmode=numeric]{letter-spacing:.3em;font-size:20px;font-weight:800}.account-links{flex-wrap:wrap;gap:4px 12px;display:flex}.sync-status{font-weight:700}.sync-status.synced{color:var(--pink-deep)}.sync-status.error,.sync-status.offline,.danger-link{color:var(--cheek)}
