/* Shop theme: red storefront + navy admin (matches the reference design). Used by Laravel layouts and the demo. */
:root{--red:#168B55;--red-d:#0C6D40;--navy:#1b2559;--navy-d:#0b1233;--navy-l:#2b3a86;--bg:#f4f6fb;--ink:#1f2437;--mute:#6b7388;--line:#e6e9f2;--ok:#16a34a;--warn:#d97706;--font:'Noto Sans Bengali','Noto Sans Bengali','Nirmala UI','Kalpurush',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--ink);margin:0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}a{color:inherit}
.btn-red{background:var(--red);color:#fff;border-radius:8px;padding:.5rem 1.1rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:0;cursor:pointer;text-decoration:none;font-family:inherit;font-size:14px}.btn-red:hover{background:var(--red-d)}
.btn-line{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:.45rem 1rem;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;text-decoration:none;font-family:inherit;font-size:14px}
.ic{display:inline-block;vertical-align:middle;flex:none}
.noimg{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#b8bdcc;background:linear-gradient(135deg,#f3f4f8,#e5e8f0)}
/* ===== storefront ===== */
.sf{background:#fff;min-height:100vh;font-size:15px}.sf .bg-emerald-800{background:var(--red)!important;color:#fff}.sf .text-emerald-800{color:var(--red)!important}.sf .hover\:border-emerald-700:hover{border-color:var(--red)}
.sf-top{background:#fff;border-bottom:1px solid var(--line)}.sf-top .in{max-width:1180px;margin:auto;padding:12px 16px;display:flex;align-items:center;gap:18px}
.sf-logo{font-weight:800;font-size:23px;color:var(--red);display:flex;align-items:center;gap:8px;text-decoration:none;white-space:nowrap}.sf-logo img{height:40px;width:auto}
.sf-search{flex:1;display:flex;max-width:620px;border:1.5px solid var(--red);border-radius:6px;overflow:hidden}.sf-search input{flex:1;border:0;padding:9px 14px;outline:0;font:inherit;min-width:0}.sf-search button{background:var(--red);color:#fff;border:0;padding:0 20px;font-weight:600;cursor:pointer;font-family:inherit}
.sf-acts{display:flex;align-items:center;gap:16px;margin-left:auto}.sf-ic{position:relative;color:var(--ink);display:inline-flex;text-decoration:none;cursor:pointer;background:none;border:0}.sf-ic b{position:absolute;top:-8px;right:-9px;background:var(--red);color:#fff;font-size:11px;min-width:17px;height:17px;border-radius:99px;display:flex;align-items:center;justify-content:center}
.sf-nav{background:var(--red)}.sf-nav .in{max-width:1180px;margin:auto;padding:0 16px;display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}.sf-nav a{color:#fff;padding:10px 14px;font-size:14px;font-weight:600;white-space:nowrap;text-decoration:none}.sf-nav a:hover,.sf-nav a.on{background:rgba(0,0,0,.18)}
.sf-wrap{max-width:1180px;margin:0 auto;padding:16px}
.sf-hero{position:relative;border-radius:14px;overflow:hidden;background:linear-gradient(120deg,#0C6D40,#168B55 55%,#2fb577);aspect-ratio:16/6;color:#fff}.sf-hero .sl{position:absolute;inset:0;opacity:0;transition:opacity .6s;display:block;pointer-events:none}.sf-hero .sl.on{opacity:1;pointer-events:auto}.sf-hero img{width:100%;height:100%;object-fit:cover;display:block}
.sf-hero .ar{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;color:#222}.sf-hero .ar.l{left:10px}.sf-hero .ar.r{right:10px}
.sf-hero .dots{position:absolute;bottom:10px;left:0;right:0;display:flex;gap:6px;justify-content:center;z-index:3}.sf-hero .dots i{width:8px;height:8px;border-radius:99px;background:rgba(255,255,255,.6);cursor:pointer;transition:all .2s}.sf-hero .dots i.on{background:#fff;width:22px}
.sf-hero .ph{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:0 7%}.sf-hero .ph h1{font-size:clamp(22px,4vw,44px);margin:0 0 8px;font-weight:800}.sf-hero .ph p{margin:0 0 16px;font-size:clamp(14px,1.6vw,18px);opacity:.92}.sf-hero .ph a{align-self:flex-start;background:#fff;color:var(--red);padding:9px 20px;border-radius:8px;font-weight:700;text-decoration:none}
.sf-cats{display:flex;gap:18px;overflow-x:auto;padding:14px 4px;scrollbar-width:none}.sf-cat{flex:none;width:80px;text-align:center;font-size:12.5px;color:var(--ink);text-decoration:none}.sf-cat .c{width:64px;height:64px;border-radius:50%;margin:0 auto 6px;background:#fbeaea;overflow:hidden;display:flex;align-items:center;justify-content:center;border:2px solid #f3d3d3;font-weight:700;color:var(--red);font-size:22px}.sf-cat img{width:100%;height:100%;object-fit:cover}.sf-cat:hover .c{border-color:var(--red)}
.sf-sec{margin:24px 0}.sf-sec .hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.sf-sec h2{font-size:20px;font-weight:700;margin:0}.sf-sec .va{background:var(--red);color:#fff;font-size:12px;padding:5px 13px;border-radius:5px;font-weight:600;text-decoration:none}
.cd{color:var(--red);font-weight:700;font-size:14px;margin-left:8px}
.sf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.pc{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;position:relative;display:flex;flex-direction:column;transition:box-shadow .2s}.pc:hover{box-shadow:0 8px 22px rgba(20,20,40,.1)}
.pc .im{display:block;aspect-ratio:1/1;background:#f1f2f6;position:relative;overflow:hidden}.pc .im img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.pc:hover .im img{transform:scale(1.04)}
.pc .bd{position:absolute;top:8px;left:0;background:var(--red);color:#fff;font-size:11px;font-weight:700;padding:3px 10px 3px 8px;border-radius:0 12px 12px 0;z-index:2}
.pc .wl{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#fff;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#8b90a0;z-index:2;box-shadow:0 1px 4px rgba(0,0,0,.18)}.pc .wl.on{color:var(--red)}.pc .wl.on svg{fill:var(--red)}
.pc .tx{padding:9px 10px 4px;display:flex;flex-direction:column;flex:1}.pc .nm{font-size:13.5px;line-height:1.35;height:36px;overflow:hidden;color:var(--ink);text-decoration:none;display:block}.pc .st{font-size:12px;color:#d97706}.pc .st span{color:var(--mute)}
.pc .pr{margin:auto 0 3px;padding-top:4px;color:var(--red);font-weight:700;font-size:15.5px}.pc .pr s{color:#9aa0b2;font-weight:400;font-size:12px;margin-left:6px}
.pc .bt{padding:0 10px 10px;display:grid;gap:6px;margin-top:auto}.pc .bt button,.pc .bt a{padding:7px 4px;font-size:13px;border-radius:5px;text-align:center;cursor:pointer;font-weight:600;font-family:inherit;text-decoration:none;display:block;width:100%}
.pc .b1{background:#fff;border:1px solid #d6d9e4;color:var(--ink)}.pc .b1:hover{border-color:var(--red);color:var(--red)}.pc .b2{background:var(--red);border:1px solid var(--red);color:#fff}.pc .b2:hover{background:var(--red-d)}.pc .so{color:var(--red);font-weight:700;text-align:center;padding:6px 0;font-size:13px}
.sf-fab{position:fixed;right:0;top:42%;background:var(--red);color:#fff;border-radius:12px 0 0 12px;padding:9px 11px;text-align:center;font-size:12px;z-index:50;text-decoration:none;line-height:1.3;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.sf-chat{position:fixed;right:16px;bottom:16px;width:50px;height:50px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.3);z-index:50;text-decoration:none}
.sf-brands{display:flex;gap:14px;overflow-x:auto;padding-bottom:6px}.sf-brands .b{flex:none;width:150px;height:72px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;color:#444;background:#fff;overflow:hidden}.sf-brands img{max-width:100%;max-height:100%;object-fit:contain;padding:8px}
.sf-rv{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.sf-rv .r{border:1px solid var(--line);border-radius:10px;padding:14px;background:#fff}
.sf-foot{background:#f7f7fa;border-top:1px solid var(--line);margin-top:34px}.sf-foot .in{max-width:1180px;margin:auto;padding:26px 16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;font-size:14px}.sf-foot b{display:flex;gap:8px;align-items:center;margin-bottom:4px;color:var(--ink)}
.sf-trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0}.sf-trust div{border:1px solid var(--line);border-radius:10px;padding:12px;text-align:center;font-size:14px;background:#fff}
.sf-pp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}@media(max-width:760px){.sf-pp{grid-template-columns:1fr}.sf-top .in{flex-wrap:wrap}.sf-search{order:3;max-width:none;flex-basis:100%}.sf-hero{aspect-ratio:16/8}}
.sf-gal .main{border:1px solid var(--line);border-radius:12px;overflow:hidden;aspect-ratio:1/1;position:relative;background:#f4f5f9}.sf-gal .main img{width:100%;height:100%;object-fit:cover}.sf-gal .th{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.sf-gal .th img{width:68px;height:68px;object-fit:cover;border-radius:8px;border:2px solid var(--line);cursor:pointer}.sf-gal .th img.on{border-color:var(--red)}
.sf-price{font-size:28px;font-weight:800;color:var(--red)}.sf-price s{font-size:16px;color:#9aa0b2;font-weight:400;margin-left:8px}
/* ===== admin ===== */
.ad-body{background:var(--bg);min-height:100vh;display:flex;font-size:14.5px}
.ad-side{width:238px;background:linear-gradient(180deg,#0b1233 0%,#16205c 60%,#1b2a6b 100%);color:#c9d0f0;position:fixed;inset:0 auto 0 0;overflow-y:auto;z-index:40;transition:transform .2s;padding-bottom:30px}
.ad-brand{padding:18px 18px 14px;font-size:23px;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:space-between;letter-spacing:-.3px}.ad-brand i{color:#ff4b57;font-style:italic}
.ad-side a,.ad-side summary{display:flex;align-items:center;gap:11px;padding:10px 14px;margin:2px 10px;border-radius:9px;color:#c9d0f0;font-size:14px;text-decoration:none;cursor:pointer;list-style:none;position:relative}.ad-side summary::-webkit-details-marker{display:none}
.ad-side a:hover,.ad-side summary:hover{background:rgba(255,255,255,.08);color:#fff}.ad-side a.on{background:rgba(255,255,255,.17);color:#fff}
.ad-side details[open]>summary .chev{transform:rotate(180deg)}.ad-side .chev{margin-left:auto;transition:transform .2s;opacity:.7}.ad-side .sub a{padding:7px 14px 7px 44px;font-size:13px;margin:0 10px}
.ad-side .cnt{margin-left:auto;background:#ff4b57;color:#fff;border-radius:99px;font-size:11px;padding:0 7px;min-width:19px;text-align:center}
.ad-main{margin-left:238px;flex:1;min-width:0}
.ad-top{display:flex;align-items:center;gap:10px;padding:14px 26px;flex-wrap:wrap}.ad-top .sp{flex:1}
.ad-chip{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:7px 13px;font-size:13px;color:var(--ink);text-decoration:none;cursor:pointer;font-family:inherit;position:relative}.ad-chip b{background:var(--red);color:#fff;border-radius:99px;font-size:11px;padding:0 6px}
.ad-content{padding:2px 26px 46px;max-width:1500px}
.ad-menu{display:none;background:#fff;border:1px solid var(--line);border-radius:9px;padding:7px;cursor:pointer}
@media(max-width:900px){.ad-side{transform:translateX(-100%)}.ad-side.open{transform:none}.ad-main{margin-left:0}.ad-menu{display:inline-flex}.ad-content,.ad-top{padding-left:14px;padding-right:14px}}
.ad-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;gap:14px;align-items:center;box-shadow:0 1px 3px rgba(16,24,64,.05)}.ad-kpi .i{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#fdeaea;color:var(--red);flex:none}.ad-kpi .v{font-size:23px;font-weight:700;line-height:1.1}.ad-kpi .l{font-size:12.5px;color:var(--mute)}
.ad-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:0 1px 3px rgba(16,24,64,.05)}
.ad-thumb{width:42px;height:42px;border-radius:8px;object-fit:cover;background:#eef0f6;border:1px solid var(--line);flex:none}
.ad-ic{width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #f1c9cc;color:var(--red);background:#fff7f7;cursor:pointer}.ad-ic.g{border-color:#cfe9d8;color:#16a34a;background:#f4fbf6}.ad-ic.b{border-color:#cfd7f3;color:var(--navy-l);background:#f5f7ff}
.ad-st{font-size:12px;padding:2px 10px;border-radius:99px;font-weight:600;white-space:nowrap;display:inline-block}
.ad-drop{border:2px dashed #d3d8ea;border-radius:12px;padding:22px;text-align:center;background:#fafbff;cursor:pointer;color:var(--mute);transition:border-color .2s,background .2s}.ad-drop.over,.ad-drop:hover{border-color:var(--red);background:#fff6f6}.ad-drop b{color:var(--red)}
.ad-prev{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px;margin-top:12px}.ad-prev .p{position:relative;border:2px solid var(--line);border-radius:10px;overflow:hidden;background:#f1f2f6;aspect-ratio:1/1}.ad-prev .p.main{border-color:var(--red)}.ad-prev img{width:100%;height:100%;object-fit:cover}.ad-prev .x{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;border:0;cursor:pointer;font-size:14px;line-height:1}.ad-prev .m{position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);color:#fff;font-size:11px;text-align:center;padding:2px;cursor:pointer}.ad-prev .m.on{background:var(--red)}
.ad-tg{position:relative;display:inline-block;width:42px;height:24px;flex:none}.ad-tg input{opacity:0;width:0;height:0}.ad-tg span{position:absolute;inset:0;background:#cdd2e0;border-radius:99px;transition:.2s;cursor:pointer}.ad-tg span:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.ad-tg input:checked+span{background:var(--red)}.ad-tg input:checked+span:before{transform:translateX(18px)}
/* re-theme the older Tailwind-class admin pages */
.ad-main .bg-stone-900{background:var(--red)!important;color:#fff!important}.ad-main .bg-stone-900:hover{background:var(--red-d)!important}.ad-main .text-emerald-700{color:var(--ok)}
.ad-main table{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;border-collapse:separate;border-spacing:0}
.ad-main table tr:first-child th{background:var(--navy);color:#fff;font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.ad-main table td,.ad-main table th{border-bottom:1px solid var(--line)}.ad-main table tr:last-child td{border-bottom:0}
.ad-main input:not([type=checkbox]):not([type=radio]):not([type=file]),.ad-main select,.ad-main textarea{border-color:var(--line)!important;border-radius:9px!important;background:#fff}
.ad-main input:focus,.ad-main select:focus,.ad-main textarea:focus{outline:2px solid rgba(189,15,27,.22);border-color:var(--red)!important}
.ad-main input[type=checkbox],.ad-main input[type=radio]{accent-color:var(--red)}
.ad-main .bg-white.border{border-color:var(--line)}.ad-main .bg-white.border.rounded,.ad-main .bg-white.border.rounded-xl{border-radius:14px;box-shadow:0 1px 3px rgba(16,24,64,.05)}
.ad-main h1{font-size:22px;font-weight:700;color:var(--ink)}.ad-main a.underline{color:var(--navy-l)}
.ad-main .border.bg-white.rounded{border-radius:9px}
.ad-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0b1233,#1b2a6b);padding:16px}.ad-login .box{background:#fff;border-radius:16px;padding:28px;width:100%;max-width:380px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
@media print{.ad-side,.ad-top,.sf-top,.sf-nav,.sf-fab,.sf-chat{display:none!important}.ad-main{margin:0}}

/* ===== Product order card (animated) ===== */
.oc{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 10px 30px rgba(27,37,89,.08);position:relative;overflow:hidden;animation:ocIn .6s cubic-bezier(.2,.8,.2,1) both}
.oc:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--red),var(--navy-l),var(--red));background-size:200% 100%;animation:ocBar 4s linear infinite}
@keyframes ocIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes ocBar{to{background-position:-200% 0}}
.oc-head{display:flex;gap:12px;align-items:center;margin-bottom:14px}.oc-head h3{margin:0;font-size:19px;font-weight:800}.oc-head p{margin:2px 0 0;color:var(--mute);font-size:12.5px}
.oc-badge{width:42px;height:42px;border-radius:12px;background:#fdeaea;color:var(--red);display:flex;align-items:center;justify-content:center;flex:none;animation:ocFloat 3s ease-in-out infinite}
@keyframes ocFloat{50%{transform:translateX(3px)}}
.oc-err{background:#fdecec;color:#991b1b;border-radius:10px;padding:10px 12px;font-size:13.5px;margin-bottom:12px}
.oc-lbl{font-size:13px;font-weight:600;margin:4px 0 8px}
.oc-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.oc-pill input{position:absolute;opacity:0;pointer-events:none}.oc-pill span{display:inline-block;padding:8px 16px;border:1.5px solid var(--line);border-radius:999px;font-size:14px;font-weight:600;cursor:pointer;background:#fff;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s}
.oc-pill:hover span{transform:translateY(-2px);border-color:var(--red)}.oc-pill input:checked+span{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 6px 14px rgba(189,15,27,.3);animation:ocPop .25s}
.oc-pill input:focus-visible+span{outline:3px solid rgba(189,15,27,.3);outline-offset:2px}.oc-pill.off span{opacity:.45;text-decoration:line-through;cursor:not-allowed}.oc-pill.off:hover span{transform:none;border-color:var(--line)}
@keyframes ocPop{50%{transform:scale(1.08)}}
.oc-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.oc-qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.oc-qty button{width:38px;height:42px;border:0;background:#f4f6fb;font-size:20px;cursor:pointer;transition:background .15s,transform .1s}.oc-qty button:hover{background:#fdeaea;color:var(--red)}.oc-qty button:active{transform:scale(.88)}
.oc-qty input{width:46px;text-align:center;border:0;font:700 16px var(--font);outline:0;-moz-appearance:textfield}.oc-qty input::-webkit-outer-spin-button,.oc-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.oc-seg{position:relative;display:flex;flex:1;min-width:230px;background:#f4f6fb;border-radius:12px;padding:4px}.oc-seg label{flex:1;position:relative;z-index:1;cursor:pointer}.oc-seg input{position:absolute;opacity:0}.oc-seg span{display:block;text-align:center;padding:9px 6px;font-size:13px;font-weight:600;color:var(--mute);transition:color .2s;line-height:1.25}.oc-seg b{display:block;font-size:12px}.oc-seg input:checked+span{color:var(--red)}
.oc-seg i{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:#fff;border-radius:9px;box-shadow:0 2px 8px rgba(27,37,89,.15);transition:transform .3s cubic-bezier(.3,1.3,.5,1)}.oc-seg[data-on=outside] i{transform:translateX(100%)}
.oc-f{display:block;position:relative;margin-bottom:12px}.oc-f svg{position:absolute;left:13px;top:15px;color:#9aa0b2;transition:color .2s;pointer-events:none}
.oc-f input,.oc-f textarea{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:20px 14px 7px 40px;font:inherit;font-size:15px;background:#fff;outline:0;transition:border-color .2s,box-shadow .2s;resize:vertical}
.oc-f em{position:absolute;left:40px;top:14px;font-style:normal;color:var(--mute);font-size:14.5px;pointer-events:none;transition:all .18s;transform-origin:left}
.oc-f input:focus,.oc-f textarea:focus{border-color:var(--red);box-shadow:0 0 0 4px rgba(189,15,27,.12)}.oc-f:focus-within svg{color:var(--red)}
.oc-f input:focus+em,.oc-f input:not(:placeholder-shown)+em,.oc-f textarea:focus+em,.oc-f textarea:not(:placeholder-shown)+em{top:5px;font-size:11px;color:var(--red);font-weight:600}
.shake{animation:ocShake .4s}@keyframes ocShake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}.oc-f.shake input,.oc-f.shake textarea,.oc-pills.shake{border-color:var(--red)}
.oc-sum{background:#f8f9fd;border:1px dashed #cfd5ea;border-radius:12px;padding:10px 14px;margin:6px 0 14px;font-size:14px}.oc-sum>div{display:flex;justify-content:space-between;padding:3px 0}.oc-sum .t{border-top:1px dashed #cfd5ea;margin-top:5px;padding-top:8px;font-size:17px;font-weight:800}.oc-sum .t b{color:var(--red)}
.oc-sum b.pop{animation:ocNum .35s}@keyframes ocNum{40%{transform:translateY(-4px);color:var(--red)}}
.oc-cta{position:relative;width:100%;border:0;border-radius:14px;padding:15px;background:linear-gradient(135deg,var(--red),#e0202e);color:#fff;font:700 17px var(--font);cursor:pointer;overflow:hidden;box-shadow:0 10px 22px rgba(189,15,27,.35);transition:transform .15s,box-shadow .2s;animation:ocPulse 2.6s infinite}
.oc-cta .t{display:inline-flex;align-items:center;gap:8px}.oc-cta:before{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:ocShine 3.2s infinite}
.oc-cta:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(189,15,27,.42)}.oc-cta:active{transform:scale(.98)}
@keyframes ocShine{0%,60%{left:-70%}100%{left:130%}}@keyframes ocPulse{50%{box-shadow:0 10px 30px rgba(189,15,27,.55)}}
.oc-cta .sp{display:none;width:22px;height:22px;border:3px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:ocSpin .7s linear infinite;margin:auto}.oc-cta.busy .t{display:none}.oc-cta.busy .sp{display:block}.oc-cta.busy{animation:none;opacity:.9}@keyframes ocSpin{to{transform:rotate(360deg)}}
.oc-note{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--ok);font-size:12.5px;margin:10px 0 0}
.oc-sticky{display:none}
@media(max-width:767px){.oc-sticky{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;background:var(--red);color:#fff;border-radius:14px;padding:14px;justify-content:center;font-weight:700;text-decoration:none;box-shadow:0 10px 26px rgba(0,0,0,.3);transition:transform .3s,opacity .3s}.oc-sticky.hide{transform:translateY(120%);opacity:0;pointer-events:none}}
@media(prefers-reduced-motion:reduce){.oc,.oc:before,.oc-badge,.oc-cta,.oc-cta:before,.oc-pill input:checked+span{animation:none!important}.oc-seg i,.oc-f em,.oc-pill span{transition:none}}

/* ===== Thank-you page ===== */
.ty{position:relative;padding:18px 0 40px}#tyConfetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:40}
.ty-card{max-width:560px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 22px;text-align:center;box-shadow:0 18px 50px rgba(27,37,89,.12);animation:tyUp .7s cubic-bezier(.2,.8,.2,1) both}
@keyframes tyUp{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
.ty-ok{width:92px;height:92px;margin:-4px auto 10px}.ty-ok svg{width:100%;height:100%}.ty-ok circle{fill:#eaf8ef;stroke:var(--ok);stroke-width:2.5;stroke-dasharray:152;stroke-dashoffset:152;animation:tyDraw .7s .15s ease forwards}.ty-ok path{fill:none;stroke:var(--ok);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:tyDraw .45s .75s ease forwards}
@keyframes tyDraw{to{stroke-dashoffset:0}}
.ty h1{font-size:23px;font-weight:800;margin:6px 0 6px}.ty-sub{color:var(--mute);margin:0 auto 18px;max-width:420px;font-size:14.5px}
.ty-no{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;background:#fdf2f3;border:1.5px dashed #efb4b8;border-radius:14px;padding:12px 14px;margin-bottom:16px}.ty-no span{font-size:13px;color:var(--mute)}.ty-no b{font-size:21px;letter-spacing:.06em;color:var(--red)}
.ty-no button{border:0;background:var(--red);color:#fff;border-radius:8px;padding:5px 12px;font:600 12.5px var(--font);cursor:pointer;transition:transform .12s}.ty-no button:active{transform:scale(.92)}
.ty-items{text-align:left;border:1px solid var(--line);border-radius:14px;padding:6px 14px;margin-bottom:20px}
.ty-it{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);animation:tyUp .5s both}.ty-it .im{width:48px;height:48px;border-radius:10px;overflow:hidden;background:#f1f2f6;display:flex;align-items:center;justify-content:center;color:#9aa0b2;flex:none}.ty-it img{width:100%;height:100%;object-fit:cover}.ty-it .nm{flex:1;font-weight:600;font-size:14.5px;line-height:1.3}.ty-it small{display:block;color:var(--mute);font-weight:400;font-size:12.5px}
.ty-sm{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;color:var(--mute)}.ty-sm.t{color:var(--ink);font-weight:800;font-size:17px;border-top:1px dashed #cfd5ea;margin-top:2px}.ty-sm.t b{color:var(--red)}
.ty-steps{list-style:none;display:flex;justify-content:space-between;margin:0 0 22px;padding:0;position:relative}.ty-steps:before{content:"";position:absolute;left:12%;right:12%;top:15px;height:3px;background:var(--line)}
.ty-steps li{position:relative;flex:1;font-size:11.5px;color:var(--mute);display:flex;flex-direction:column;align-items:center;gap:6px}.ty-steps i{width:32px;height:32px;border-radius:50%;background:#fff;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;color:#9aa0b2;position:relative;z-index:1}
.ty-steps li.on{color:var(--ok);font-weight:700}.ty-steps li.on i{background:var(--ok);border-color:var(--ok);color:#fff}.ty-steps li:nth-child(2) i{animation:tyBlink 1.8s 1.2s infinite}@keyframes tyBlink{50%{border-color:var(--red);color:var(--red);box-shadow:0 0 0 6px rgba(189,15,27,.12)}}
.ty-act{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.ty-keep{color:var(--mute);font-size:12px;margin:14px 0 0}
@media(prefers-reduced-motion:reduce){.ty-card,.ty-it,.ty-ok circle,.ty-ok path,.ty-steps li:nth-child(2) i{animation:none!important;stroke-dashoffset:0}}
