:root{
  --desk:#F3F4F6;
  --sheet:#FFFFFF;
  --sheet-2:#F8F9FB;
  --sunk:#EBEDF1;
  --rule:#E0E3E9;
  --rule-2:#CBD0DA;
  --edge:#8C93A3;

  --ink:#141822;
  --ink-2:#3D4455;
  --ink-3:#5A6273;

  --uniform:#1F2F66;
  --uniform-press:#162453;
  --uniform-ink:#16224C;
  --uniform-wash:#E6EAF5;
  --uniform-wash-2:#F0F2F9;
  --on-uniform:#F6F7FC;

  --marigold:#F2A51C;
  --marigold-ink:#6F4500;
  --marigold-wash:#FDF1D8;

  --paid:#17784A;
  --paid-ink:#0F5434;
  --paid-wash:#DFF2E7;
  --on-paid:#FFFFFF;

  --due:#8F5800;
  --due-ink:#6A4100;
  --due-wash:#FBEED3;
  --due-dot:#D48A0E;

  --over:#B3261E;
  --over-ink:#8A1C16;
  --over-wash:#FBE4E1;

  --credit:#5B3DB0;
  --credit-wash:#EEE9FA;

  --off:#566072;
  --off-wash:#ECEEF2;

  --r-xs:6px; --r-s:10px; --r-m:14px; --r-l:20px; --r-xl:28px; --r-pill:999px;

  --sh-s:0 1px 2px rgba(20,24,34,.07);
  --sh-m:0 1px 2px rgba(20,24,34,.06), 0 14px 30px -22px rgba(20,24,34,.5);
  --sh-l:0 2px 4px rgba(20,24,34,.05), 0 28px 56px -30px rgba(20,24,34,.6);
  --sh-bar:0 -1px 0 var(--rule), 0 -14px 30px -26px rgba(20,24,34,.45);

  --display:'Anek Bangla','Hind Siliguri',system-ui,sans-serif;
  --body:'Hind Siliguri','Anek Bangla',system-ui,sans-serif;

  --t-hero:2.25rem;
  --t-h1:1.5rem;
  --t-h2:1.1875rem;
  --t-body:0.96875rem;
  --t-small:0.84375rem;
  --t-micro:0.75rem;

  --ease:cubic-bezier(.2,.7,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);

  color-scheme:light;
}

@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --desk:#0D1017; --sheet:#151922; --sheet-2:#1A1F2A; --sunk:#202633;
    --rule:#272E3C; --rule-2:#364052; --edge:#68748E;
    --ink:#E8EBF2; --ink-2:#AEB5C4; --ink-3:#8E96A8;
    --uniform:#8EA2EE; --uniform-press:#7A90E4; --uniform-ink:#C3CEF8;
    --uniform-wash:#1D2647; --uniform-wash-2:#171E38; --on-uniform:#0B1129;
    --marigold:#F6B53F; --marigold-ink:#FAD58F; --marigold-wash:#352710;
    --paid:#4FC28B; --paid-ink:#93E0BA; --paid-wash:#123020; --on-paid:#05170D;
    --due:#F0B04A; --due-ink:#F7CF8D; --due-wash:#33260F; --due-dot:#F0B04A;
    --over:#F27A70; --over-ink:#F9AEA7; --over-wash:#3A1916;
    --credit:#B49CF0; --credit-wash:#2A2142;
    --off:#99A2B4; --off-wash:#202633;
    --sh-s:0 1px 2px rgba(0,0,0,.4);
    --sh-m:0 1px 2px rgba(0,0,0,.4), 0 14px 30px -22px rgba(0,0,0,.9);
    --sh-l:0 2px 4px rgba(0,0,0,.4), 0 28px 56px -30px rgba(0,0,0,.95);
    --sh-bar:0 -1px 0 var(--rule), 0 -14px 30px -26px rgba(0,0,0,.8);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --desk:#0D1017; --sheet:#151922; --sheet-2:#1A1F2A; --sunk:#202633;
  --rule:#272E3C; --rule-2:#364052; --edge:#68748E;
  --ink:#E8EBF2; --ink-2:#AEB5C4; --ink-3:#8E96A8;
  --uniform:#8EA2EE; --uniform-press:#7A90E4; --uniform-ink:#C3CEF8;
  --uniform-wash:#1D2647; --uniform-wash-2:#171E38; --on-uniform:#0B1129;
  --marigold:#F6B53F; --marigold-ink:#FAD58F; --marigold-wash:#352710;
  --paid:#4FC28B; --paid-ink:#93E0BA; --paid-wash:#123020; --on-paid:#05170D;
  --due:#F0B04A; --due-ink:#F7CF8D; --due-wash:#33260F; --due-dot:#F0B04A;
  --over:#F27A70; --over-ink:#F9AEA7; --over-wash:#3A1916;
  --credit:#B49CF0; --credit-wash:#2A2142;
  --off:#99A2B4; --off-wash:#202633;
  --sh-s:0 1px 2px rgba(0,0,0,.4);
  --sh-m:0 1px 2px rgba(0,0,0,.4), 0 14px 30px -22px rgba(0,0,0,.9);
  --sh-l:0 2px 4px rgba(0,0,0,.4), 0 28px 56px -30px rgba(0,0,0,.95);
  --sh-bar:0 -1px 0 var(--rule), 0 -14px 30px -26px rgba(0,0,0,.8);
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box;}
html,body{height:100%;}
body{
  margin:0;
  background:var(--desk);
  color:var(--ink);
  font-family:var(--body);
  font-size:var(--t-body);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  -webkit-tap-highlight-color:transparent;
}
button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer;}
a{color:inherit;text-decoration:none;}
input,textarea,select{font:inherit;color:inherit;}
:focus-visible{outline:2.5px solid var(--uniform);outline-offset:2px;border-radius:6px;}
.num{font-variant-numeric:tabular-nums;}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.ico{width:22px;height:22px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.ico.s{width:18px;height:18px;}
.ico.l{width:28px;height:28px;}

.display{font-family:var(--display);font-weight:600;font-size:var(--t-hero);line-height:1.04;letter-spacing:-.021em;margin:0;text-wrap:balance;}
.h1{font-family:var(--display);font-weight:600;font-size:var(--t-h1);line-height:1.15;letter-spacing:-.014em;margin:0;text-wrap:balance;}
.h2{font-family:var(--display);font-weight:600;font-size:var(--t-h2);line-height:1.25;letter-spacing:-.007em;margin:0;}
.meta{font-size:var(--t-small);color:var(--ink-3);margin:0;}
.micro{font-size:var(--t-micro);color:var(--ink-3);letter-spacing:.01em;}
.eyebrow{font-size:var(--t-micro);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:0 20px;border-radius:var(--r-m);
  font-weight:600;font-size:1rem;white-space:nowrap;
  transition:transform .12s var(--ease),background-color .15s,box-shadow .15s;
}
.btn:active{transform:scale(.98);}
.btn.primary{background:var(--uniform);color:var(--on-uniform);box-shadow:0 1px 0 rgba(255,255,255,.16) inset,0 10px 20px -14px var(--uniform);}
.btn.primary:hover{background:var(--uniform-press);}
.btn.quiet{background:var(--uniform-wash);color:var(--uniform-ink);}
.btn.line{border:1.5px solid var(--rule-2);background:var(--sheet);}
.btn.danger{background:var(--over-wash);color:var(--over-ink);}
.btn.pay{background:var(--paid);color:var(--on-paid);}
.btn.block{width:100%;}
.btn.sm{min-height:40px;padding:0 14px;font-size:.90625rem;border-radius:var(--r-s);}
.btn[disabled]{background:var(--sunk);color:var(--ink-3);box-shadow:none;cursor:not-allowed;}

.tag{
  display:inline-flex;align-items:center;gap:6px;
  height:24px;padding:0 9px 0 8px;border-radius:var(--r-pill);
  font-size:var(--t-micro);font-weight:600;white-space:nowrap;line-height:1;
}
.tag::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none;}
.tag.paid{background:var(--paid-wash);color:var(--paid-ink);}
.tag.due{background:var(--due-wash);color:var(--due-ink);}
.tag.due::before{background:var(--due-dot);}
.tag.over{background:var(--over-wash);color:var(--over-ink);}
.tag.over::before{border-radius:1px;transform:rotate(45deg);}
.tag.credit{background:var(--credit-wash);color:var(--credit);}
.tag.off{background:var(--off-wash);color:var(--off);}
.tag.uniform{background:var(--uniform-wash);color:var(--uniform-ink);}
.tag.match{background:var(--marigold-wash);color:var(--marigold-ink);}
.tag.match::before{background:var(--marigold);}
.tag.plain::before{display:none;}
.err{font-size:var(--t-small);color:var(--over-ink);margin-top:5px;display:flex;gap:6px;align-items:flex-start;}
.err .ico{width:17px;height:17px;margin-top:1px;}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}
}
