@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/hind-400.woff2') format('woff2')}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/hind-500.woff2') format('woff2')}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/hind-600.woff2') format('woff2')}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/hind-700.woff2') format('woff2')}
@font-face{font-family:'Baloo Da 2';font-style:normal;font-weight:400 800;font-display:swap;src:url('../fonts/baloo.woff2') format('woff2')}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:'Hind Siliguri',sans-serif;font-size:16px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh}
img,svg,video{max-width:100%;display:block}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5{font-family:'Baloo Da 2','Hind Siliguri',sans-serif;font-weight:700;line-height:1.25;margin:0 0 .5em}
h1{font-size:clamp(1.7rem,3.2vw,2.6rem)}
h2{font-size:clamp(1.4rem,2.4vw,2rem)}
h3{font-size:1.2rem}
p{margin:0 0 1em}
hr{border:0;border-top:1px solid var(--border);margin:1.5rem 0}
::selection{background:var(--primary);color:var(--on-primary)}
:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:4px}
[hidden]{display:none!important}

:root{
--bg:#F7F8F3;--surface:#FFFFFF;--surface2:#F1F3EA;--text:#1C2A20;--muted:#5F6E62;--border:#E3E7DA;
--primary:#1E6B3C;--primary-strong:#175A32;--primary-soft:#E6F2E9;--on-primary:#FFFFFF;
--accent:#F5B301;--accent-soft:#FFF4D6;--on-accent:#3D2E00;
--danger:#C62F2F;--danger-soft:#FBE9E9;--on-danger:#fff;
--success:#1E7B3C;--success-soft:#E6F2E9;--warning:#B45309;--warning-soft:#FDF0E0;
--header:#FFFFFF;--header-text:#1C2A20;--topbar-bg:#14532D;--topbar-text:#ECF5EE;--nav-bg:#1E6B3C;--nav-text:#FFFFFF;
--footer-bg:#122B1A;--footer-text:#C9D8CC;--footer-heading:#FFFFFF;
--radius:16px;--radius-sm:10px;--btn-radius:12px;
--card-shadow:0 1px 2px rgba(28,42,32,.05);--card-hover-shadow:0 14px 30px -12px rgba(28,42,32,.18);
--btn-shadow:0 6px 16px -6px rgba(30,107,60,.45);--btn-bg:var(--primary);--btn-fg:var(--on-primary);--btn-border:transparent;--btn-grad:none;
--focus-ring:rgba(30,107,60,.35);--input-bg:#FFFFFF;--input-border:#D8DECE;
--font-body:'Hind Siliguri',sans-serif;--font-display:'Baloo Da 2','Hind Siliguri',sans-serif;
}
[data-theme="midnight"]{
--bg:#0B0F14;--surface:#121821;--surface2:#1A2230;--text:#E7EDF3;--muted:#8B98A8;--border:#232D3D;
--primary:#2FBF71;--primary-strong:#27A863;--primary-soft:rgba(47,191,113,.13);--on-primary:#06281A;
--accent:#F5C518;--accent-soft:rgba(245,197,24,.13);--on-accent:#3A2F00;
--danger:#F16A6A;--danger-soft:rgba(241,106,106,.13);--on-danger:#2B0808;
--success:#2FBF71;--success-soft:rgba(47,191,113,.13);--warning:#E8A33D;--warning-soft:rgba(232,163,61,.13);
--header:rgba(14,20,28,.92);--header-text:#E7EDF3;--topbar-bg:#080C11;--topbar-text:#9BA8B7;--nav-bg:#121821;--nav-text:#C4CFDC;
--footer-bg:#080C11;--footer-text:#8B98A8;--footer-heading:#E7EDF3;
--radius:14px;--radius-sm:10px;--btn-radius:12px;
--card-shadow:0 0 0 1px var(--border);--card-hover-shadow:0 18px 40px -18px rgba(0,0,0,.7);
--btn-shadow:0 8px 20px -8px rgba(47,191,113,.5);--btn-bg:linear-gradient(135deg,#2FBF71,#1D9A5A);--btn-fg:#06281A;
--focus-ring:rgba(47,191,113,.4);--input-bg:#0F151D;--input-border:#2A3547;
}
[data-theme="ocean"]{
--bg:#FFFFFF;--surface:#FFFFFF;--surface2:#F2F7FB;--text:#0F2A43;--muted:#5A7184;--border:#DCE6EE;
--primary:#0E6BA8;--primary-strong:#0B5890;--primary-soft:#E3F0F9;--on-primary:#FFFFFF;
--accent:#F59E0B;--accent-soft:#FEF3DF;--on-accent:#3A2A00;
--danger:#D93636;--danger-soft:#FBEAEA;--on-danger:#fff;
--success:#0E8A5F;--success-soft:#E1F4EC;--warning:#B45309;--warning-soft:#FDF0E0;
--header:#FFFFFF;--header-text:#0F2A43;--topbar-bg:#0F2A43;--topbar-text:#CFE0EE;--nav-bg:#FFFFFF;--nav-text:#0F2A43;
--footer-bg:#0F2A43;--footer-text:#B9CCDC;--footer-heading:#FFFFFF;
--radius:10px;--radius-sm:6px;--btn-radius:8px;
--card-shadow:none;--card-hover-shadow:0 10px 24px -12px rgba(15,42,67,.22);
--btn-shadow:none;--btn-bg:var(--primary);--btn-fg:var(--on-primary);
--focus-ring:rgba(14,107,168,.3);--input-bg:#FFFFFF;--input-border:#C9D8E4;
}
[data-theme="red"]{
--bg:#FDF6F4;--surface:#FFFFFF;--surface2:#FBEAE7;--text:#3B1D1A;--muted:#8A6560;--border:#F0DCD8;
--primary:#C0392B;--primary-strong:#96261F;--primary-soft:#FBE4E0;--on-primary:#FFFFFF;
--accent:#F5A623;--accent-soft:#FDF1DC;--on-accent:#3A2A00;
--danger:#991B1B;--danger-soft:#FBE9E7;--on-danger:#fff;
--success:#15803D;--success-soft:#E4F4E9;--warning:#B45309;--warning-soft:#FDF0E0;
--header:#FFFFFF;--header-text:#3B1D1A;--topbar-bg:#7C1D17;--topbar-text:#FBE4E0;--nav-bg:#C0392B;--nav-text:#FFF3F0;
--footer-bg:#401512;--footer-text:#E5C9C3;--footer-heading:#FDF6F4;
--radius:20px;--radius-sm:12px;--btn-radius:14px;
--card-shadow:0 2px 10px rgba(59,29,26,.06);--card-hover-shadow:0 22px 44px -16px rgba(59,29,26,.28);
--btn-shadow:0 10px 24px -10px rgba(192,57,43,.45);--btn-bg:var(--primary);--btn-fg:var(--on-primary);
--focus-ring:rgba(192,57,43,.3);--input-bg:#FFFFFF;--input-border:#E8CFC9;
}

[data-btnstyle="solid"] .btn-primary{--btn-bg:var(--primary);--btn-fg:var(--on-primary);--btn-border:transparent;--btn-grad:none;box-shadow:var(--btn-shadow)}
[data-btnstyle="gradient"] .btn-primary{--btn-bg:linear-gradient(135deg,var(--primary),var(--primary-strong));--btn-fg:var(--on-primary);--btn-border:transparent;box-shadow:var(--btn-shadow)}
[data-btnstyle="outline"] .btn-primary{--btn-bg:transparent;--btn-fg:var(--primary);--btn-border:var(--primary);box-shadow:none}
[data-btnstyle="soft"] .btn-primary{--btn-bg:var(--primary-soft);--btn-fg:var(--primary-strong);--btn-border:transparent;box-shadow:none}

.container{width:min(1200px,100% - 2.5rem);margin-inline:auto}
.muted{color:var(--muted)}
.small{font-size:.85rem}
.center{text-align:center}
.flex{display:flex;gap:1rem;align-items:center}
.flex .input{min-width:0}
.flex>.btn{flex:none}
.between{justify-content:space-between}
.wrap{flex-wrap:wrap}
.grid{display:grid;gap:1.25rem}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.mt1{margin-top:.5rem}.mt2{margin-top:1rem}.mt3{margin-top:1.75rem}.mt4{margin-top:2.5rem}
.mb1{margin-bottom:.5rem}.mb2{margin-bottom:1rem}.mb3{margin-bottom:1.75rem}
.section{padding-block:clamp(1.75rem,4vw,3.25rem)}
.sec-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}
.sec-head h2{margin:0}
.sec-head .sub{color:var(--muted);margin:.2rem 0 0;font-size:.95rem}
.sec-link{color:var(--primary);font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:.3rem}
.sec-link:hover{color:var(--primary-strong)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;padding:.72rem 1.35rem;border-radius:var(--btn-radius);border:2px solid var(--btn-border,var(--btn-border,transparent));background:var(--btn-bg,var(--surface2));color:var(--btn-fg,var(--text));transition:transform .15s,box-shadow .2s,filter .2s,background .2s;user-select:none;-webkit-tap-highlight-color:transparent;line-height:1.2}
.btn:hover{filter:brightness(1.05)}
.btn:active{transform:scale(.97)}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.btn-primary{background:var(--btn-bg,var(--primary));color:var(--btn-fg,var(--on-primary));border-color:var(--btn-border,transparent)}
.btn-accent{background:var(--accent);color:var(--on-accent);border-color:transparent;box-shadow:0 6px 16px -6px rgba(245,179,1,.5)}
.btn-outline{background:transparent;color:var(--primary);border-color:var(--primary)}
.btn-ghost{background:transparent;color:var(--text)}
.btn-soft{background:var(--primary-soft);color:var(--primary-strong)}
.btn-danger{background:var(--danger);color:var(--on-danger)}
.btn-sm{padding:.45rem .9rem;font-size:.88rem}
.btn-lg{padding:.95rem 1.9rem;font-size:1.05rem}
.btn-block{width:100%}
.btn .ic{width:1.15em;height:1.15em;flex:none}

.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}
.field label{font-weight:600;font-size:.92rem}
.field .req{color:var(--danger)}
.input,select.input,textarea.input{width:100%;padding:.7rem .9rem;border:1.5px solid var(--input-border);border-radius:var(--radius-sm);background:var(--input-bg);transition:border-color .15s,box-shadow .15s}
.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}
textarea.input{resize:vertical;min-height:100px}
.input.err{border-color:var(--danger)}
.field .msg{font-size:.82rem;color:var(--danger);min-height:1em}
.check{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem;cursor:pointer}
.check input{margin-top:.3rem;accent-color:var(--primary);width:1.05rem;height:1.05rem;flex:none}

.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.22rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;line-height:1.3}
.badge-primary{background:var(--primary);color:var(--on-primary)}
.badge-accent{background:var(--accent);color:var(--on-accent)}
.badge-soft{background:var(--primary-soft);color:var(--primary-strong)}
.badge-danger{background:var(--danger);color:var(--on-danger)}
.badge-success{background:var(--success);color:#fff}
.badge-warning{background:var(--warning);color:#fff}
.badge-muted{background:var(--surface2);color:var(--muted)}
.chip{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border-radius:999px;border:1.5px solid var(--border);background:var(--surface);font-weight:600;font-size:.88rem;cursor:pointer;transition:all .15s;white-space:nowrap}
.chip:hover{border-color:var(--primary)}
.chip.on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}

.price{font-family:var(--font-display);font-weight:700;color:var(--primary);font-size:1.2rem}
.price s{color:var(--muted);font-weight:500;font-size:.85em;margin-inline-start:.35rem}
.stars{display:inline-flex;gap:1px;color:var(--accent)}
.stars .ic{width:1em;height:1em}

.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow)}
.card-pad{padding:1.4rem}
.notice{display:flex;gap:.7rem;padding:.9rem 1.1rem;border-radius:var(--radius-sm);font-size:.93rem;align-items:flex-start}
.notice .ic{width:1.2em;height:1.2em;flex:none;margin-top:.2em}
.notice-info{background:var(--primary-soft);color:var(--primary-strong)}
.notice-warn{background:var(--warning-soft);color:var(--warning)}
.notice-danger{background:var(--danger-soft);color:var(--danger)}
.notice-success{background:var(--success-soft);color:var(--success)}

.skel{position:relative;overflow:hidden;background:var(--surface2);border-radius:var(--radius-sm)}
.skel::after{content:'';position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);animation:sh 1.4s infinite}
[data-theme="midnight"] .skel::after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent)}
@keyframes sh{100%{transform:translateX(100%)}}
.skel-line{height:14px;margin-bottom:.6rem}
.skel-card{height:320px}

.toast-wrap{position:fixed;bottom:1.2rem;left:50%;transform:translateX(-50%);z-index:999;display:flex;flex-direction:column;gap:.5rem;width:min(420px,calc(100vw - 2rem))}
.toast{display:flex;align-items:center;gap:.6rem;padding:.85rem 1.1rem;border-radius:var(--radius-sm);background:var(--text);color:var(--bg);font-weight:600;font-size:.92rem;box-shadow:0 10px 30px rgba(0,0,0,.25);animation:tin .25s}
.toast .ic{width:1.2em;height:1.2em;flex:none}
.toast-ok .ic{color:var(--success)}
.toast-err .ic{color:var(--danger)}
@keyframes tin{from{opacity:0;transform:translateY(10px)}}

.modal-back{position:fixed;inset:0;background:rgba(8,14,10,.55);backdrop-filter:blur(3px);z-index:900;display:flex;align-items:center;justify-content:center;padding:1.25rem;animation:fin .2s}
[data-theme="midnight"] .modal-back{background:rgba(0,0,0,.65)}
@keyframes fin{from{opacity:0}}
.modal{background:var(--surface);border-radius:var(--radius);max-width:560px;width:100%;max-height:88vh;overflow:auto;padding:1.6rem;animation:min .25s;position:relative}
.modal-lg{max-width:820px}
@keyframes min{from{opacity:0;transform:translateY(14px) scale(.98)}}
.modal-close{position:absolute;top:.8rem;right:.8rem;width:2.2rem;height:2.2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface2)}
.modal-close:hover{background:var(--danger-soft);color:var(--danger)}
.modal-close .ic{width:1.1rem;height:1.1rem}

.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
table.tbl{width:100%;border-collapse:collapse;font-size:.92rem;min-width:640px}
.tbl th{text-align:left;padding:.75rem .9rem;background:var(--surface2);font-weight:700;white-space:nowrap;border-bottom:1px solid var(--border)}
.tbl td{padding:.75rem .9rem;border-bottom:1px solid var(--border);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl tr:hover td{background:var(--surface2)}

.crumb{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;font-size:.88rem;color:var(--muted);padding:1rem 0}
.crumb a:hover{color:var(--primary)}
.crumb .ic{width:.85rem;height:.85rem;opacity:.6}

.empty{display:flex;flex-direction:column;align-items:center;gap:.8rem;padding:3.5rem 1.5rem;text-align:center;color:var(--muted)}
.empty .ic{width:3.4rem;height:3.4rem;opacity:.4}
.empty h3{color:var(--text);margin:0}

.pager{display:flex;justify-content:center;gap:.4rem;margin-top:2rem}
.pager button{min-width:2.5rem;height:2.5rem;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);font-weight:600}
.pager button.on{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}

.status-dot{width:.6rem;height:.6rem;border-radius:50%;display:inline-block;flex:none}
.spin{animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.st-pending{background:var(--warning)}.st-confirmed{background:var(--primary)}.st-processing{background:#7C3AED}.st-shipped{background:#0EA5E9}.st-delivered{background:var(--success)}.st-cancelled{background:var(--danger)}.st-returned{background:var(--muted)}

@view-transition{navigation:auto}

@media print{
.topbar,.header,.navbar,.tabbar,.appbar,.footer,.no-print,.chat-fab,.install-tip{display:none!important}
body{background:#fff;color:#000}
.card{box-shadow:none;border:1px solid #ddd}
.main{padding:0!important}
}
