@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_acf54a{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_acf54a{--font-display:"Fraunces","Fraunces Fallback"}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a6c19694cd327cd4-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/851c4691abdf3def-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a8a8dd7277bab4cf-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Hanken Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/313510e2713fb214-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/a6c19694cd327cd4-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/851c4691abdf3def-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/a8a8dd7277bab4cf-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Hanken Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/313510e2713fb214-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/a6c19694cd327cd4-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/851c4691abdf3def-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/a8a8dd7277bab4cf-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Hanken Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/313510e2713fb214-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a6c19694cd327cd4-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/851c4691abdf3def-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a8a8dd7277bab4cf-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Hanken Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/313510e2713fb214-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Hanken Grotesk Fallback;src:local("Arial");ascent-override:99.07%;descent-override:30.02%;line-gap-override:0.00%;size-adjust:100.94%}.__className_c8454b{font-family:Hanken Grotesk,Hanken Grotesk Fallback;font-style:normal}.__variable_c8454b{--font-sans:"Hanken Grotesk","Hanken Grotesk Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_595324{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_595324{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--paper:#f4efe3;--paper-2:#fbf8f0;--paper-3:#fffdf8;--ink:#1c1b16;--ink-soft:#585347;--ink-faint:#938d7c;--line:#e6dfcd;--line-strong:#d3cab2;--brand:#0c6b4f;--brand-deep:#084c38;--brand-tint:#e6efe9;--ok:#0c6b4f;--ok-bg:#e7f0ea;--ok-line:#bcd9c9;--warn:#a8590a;--warn-bg:#f8ecd8;--warn-line:#ecd0a3;--info:#1f5d99;--info-bg:#e6eef7;--info-line:#bcd3ec;--risk:#b02a1c;--risk-bg:#f8e6e2;--risk-line:#eec4bb;--radius:12px;--shadow-sm:0 1px 2px rgba(28,27,22,0.05);--shadow-md:0 10px 30px -12px rgba(28,27,22,0.22);--shadow-lg:0 24px 60px -24px rgba(28,27,22,0.3)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{color:var(--ink);font-family:var(--font-sans),system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;background-color:var(--paper);background-image:radial-gradient(900px 500px at 12% -8%,rgba(12,107,79,.07),transparent 60%),radial-gradient(820px 480px at 100% 0,rgba(168,89,10,.06),transparent 55%);background-attachment:fixed;min-height:100vh}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E")}.mono{font-family:var(--font-mono),ui-monospace,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell{position:relative;z-index:1;max-width:1240px;margin:0 auto;padding:28px 28px 40px;min-height:100vh;display:flex;flex-direction:column}.masthead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:22px;border-bottom:2px solid var(--ink);flex-wrap:wrap}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:46px;height:46px;border-radius:11px;background:var(--brand);color:#fdfbf4;display:grid;place-items:center;font-size:22px;box-shadow:var(--shadow-md);flex:none}.brand h1,.brand-mark{font-family:var(--font-display);font-weight:600}.brand h1{font-size:27px;letter-spacing:-.01em;margin:0;line-height:1.05}.brand .eyebrow{font-size:11.5px;text-transform:uppercase;letter-spacing:.18em;color:var(--brand-deep);font-weight:600;margin-bottom:3px}.masthead .tag{color:var(--ink-soft);font-size:13.5px;max-width:360px;text-align:right}.masthead .tag b{color:var(--ink);font-weight:600}.panel{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.section-title{font-family:var(--font-display);font-weight:500;font-size:18px;margin:0;letter-spacing:-.01em}.section-sub{color:var(--ink-faint);font-size:12.5px;margin-top:2px}.upload-wrap{margin-top:26px;grid-gap:18px;animation:fadeUp .5s ease both}.drops,.upload-wrap{display:grid;gap:18px}.drops{grid-template-columns:1fr 1fr;grid-gap:18px}@media (max-width:760px){.drops{grid-template-columns:1fr}}.drop{position:relative;padding:22px;border:1.5px dashed var(--line-strong);border-radius:var(--radius);background:var(--paper-3);transition:border-color .18s,background .18s,transform .18s;cursor:pointer;min-height:168px;display:flex;flex-direction:column;gap:10px}.drop:hover{transform:translateY(-1px)}.drop.over,.drop:hover{border-color:var(--brand)}.drop.over{background:var(--brand-tint)}.drop.filled{border-style:solid;border-color:var(--ok-line);background:var(--ok-bg)}.drop .kicker{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-deep)}.drop .drop-num{width:20px;height:20px;border-radius:6px;background:var(--brand);color:#fff;font-size:12px;display:grid;place-items:center;font-weight:700}.drop h3{font-family:var(--font-display);font-weight:500;font-size:19px;margin:2px 0 0}.drop p{color:var(--ink-faint);font-size:13px;margin:0}.drop .filemeta{margin-top:auto;display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink);background:#fff;border:1px solid var(--ok-line);border-radius:9px;padding:9px 11px}.drop .filemeta .fname{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drop .filemeta .clear{margin-left:auto;color:var(--ink-faint);font-size:18px;line-height:1;border:none;background:none;cursor:pointer;padding:0 4px}.drop .filemeta .clear:hover{color:var(--risk)}.drop .placeholder{margin-top:auto;font-size:12.5px;color:var(--ink-faint)}.drop input[type=file]{display:none}.controls{gap:16px;flex-wrap:wrap}.controls,.tol{display:flex;align-items:center}.tol{gap:9px;font-size:13px;color:var(--ink-soft)}.tol input{width:78px;font-family:var(--font-mono);font-size:13px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;background:var(--paper-3);color:var(--ink)}.tol input:focus{outline:2px solid var(--brand);outline-offset:1px}.spacer{flex:1 1}.linkbtn{background:none;border:none;color:var(--brand-deep);font-weight:600;font-size:13.5px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:6px 2px}.linkbtn:hover{color:var(--brand)}.linkbtn:disabled{color:var(--ink-faint);cursor:default;text-decoration:none}.btn{font-family:var(--font-sans);font-weight:600;font-size:15px;color:#fdfbf4;background:var(--ink);border:none;border-radius:10px;padding:13px 26px;cursor:pointer;box-shadow:var(--shadow-md);transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex;align-items:center;gap:10px}.btn:hover:not(:disabled){background:var(--brand);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn .spin{width:15px;height:15px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.alert{margin-top:16px;padding:13px 16px;border-radius:10px;background:var(--risk-bg);border:1px solid var(--risk-line);color:var(--risk);font-size:13.5px;font-weight:500;animation:fadeUp .3s ease both}.results{margin-top:34px}.results-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.filenote{font-size:12.5px;color:var(--ink-faint)}.filenote b{color:var(--ink-soft);font-weight:600}.cards{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}@media (max-width:920px){.cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.cards{grid-template-columns:1fr}}.card{position:relative;padding:16px 16px 16px 19px;border-radius:var(--radius);background:var(--paper-3);border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden;animation:fadeUp .5s ease both}.card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent,var(--ink-faint))}.card .clabel{font-size:11.5px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--ink-faint)}.card .cnum{font-family:var(--font-display);font-weight:600;font-size:30px;line-height:1.1;margin-top:6px;letter-spacing:-.02em}.card .cmeta{font-family:var(--font-mono);font-size:12px;color:var(--ink-soft);margin-top:5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card.ok{--accent:var(--ok)}.card.warn{--accent:var(--warn)}.card.info{--accent:var(--info)}.card.risk{--accent:var(--risk);background:var(--risk-bg);border-color:var(--risk-line)}.card.risk .clabel,.card.risk .cnum{color:var(--risk)}.ledger-strip{margin-top:14px;display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-3);overflow:hidden}.ledger-strip .li{flex:1 1 200px;padding:13px 18px;border-right:1px solid var(--line)}.ledger-strip .li:last-child{border-right:none}.ledger-strip .ll{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);font-weight:700}.ledger-strip .lv{font-family:var(--font-mono);font-size:16px;margin-top:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500}.lv.pos{color:var(--ok)}.lv.neg{color:var(--risk)}.toolbar{margin-top:26px;align-items:center;gap:12px}.tabs,.toolbar{display:flex;flex-wrap:wrap}.tabs{gap:7px}.tab{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--line-strong);background:var(--paper-3);color:var(--ink-soft);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.tab:hover{border-color:var(--ink-soft)}.tab .dot{width:8px;height:8px;border-radius:50%;background:var(--tabc,var(--ink-faint))}.tab .cnt{font-family:var(--font-mono);font-size:12px;background:rgba(0,0,0,.05);padding:1px 7px;border-radius:999px}.tab[data-active=true]{background:var(--ink);color:var(--paper-3);border-color:var(--ink)}.tab[data-active=true] .cnt{background:rgba(255,255,255,.18);color:var(--paper-3)}.tab.t-mismatched{--tabc:var(--warn)}.tab.t-only_in_purchase{--tabc:var(--risk)}.tab.t-only_in_portal{--tabc:var(--info)}.tab.t-matched{--tabc:var(--ok)}.search{margin-left:auto;display:flex;align-items:center}.search input{width:230px;max-width:48vw;font-size:13.5px;padding:9px 13px;border:1px solid var(--line-strong);border-radius:9px;background:var(--paper-3);color:var(--ink)}.search input:focus{outline:2px solid var(--brand);outline-offset:1px}.tablewrap{margin-top:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-3);overflow:hidden;box-shadow:var(--shadow-sm)}table.ledger{width:100%;border-collapse:collapse;font-size:13.5px}table.ledger thead th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-faint);font-weight:700;padding:11px 14px;background:var(--paper);border-bottom:1.5px solid var(--line-strong);white-space:nowrap}table.ledger td.num,table.ledger th.num{text-align:right;font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.ledger tbody td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}table.ledger tbody tr.row:hover{background:var(--paper)}table.ledger tbody tr.row.clickable{cursor:pointer}.supplier{font-weight:600;color:var(--ink)}.gstin{font-size:11.5px;color:var(--ink-faint);margin-top:2px;letter-spacing:.02em}.gstin,.invno{font-family:var(--font-mono)}.invno{font-size:12.5px}.muted{color:var(--ink-faint)}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 7px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:.01em;white-space:nowrap}.pill .pdot{width:7px;height:7px;border-radius:50%;background:currentColor}.pill.ok{color:var(--ok);background:var(--ok-bg)}.pill.warn{color:var(--warn);background:var(--warn-bg)}.pill.info{color:var(--info);background:var(--info-bg)}.pill.risk{color:var(--risk);background:var(--risk-bg)}.tag-probable{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--warn);background:var(--warn-bg);border:1px solid var(--warn-line);padding:1px 6px;border-radius:5px;margin-left:6px}.diffcell{display:inline-flex;flex-direction:column;align-items:flex-end;gap:1px}.diffcell .was{color:var(--ink-faint);text-decoration:line-through;font-size:11.5px}.diffcell .now{color:var(--risk);font-weight:600}.delta{font-size:11px;color:var(--warn)}.expander{font-size:11px;color:var(--ink-faint);margin-top:3px;display:inline-flex;align-items:center;gap:4px}.remarks{color:var(--ink-soft);font-size:12.5px;max-width:320px}tr.detail td{background:var(--paper);padding:0 14px 16px!important;border-bottom:1px solid var(--line)}.detail-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;grid-gap:0;gap:0;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--paper-3);font-size:12.5px;margin-top:4px}.detail-grid .dh{background:var(--paper);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--ink-faint);padding:8px 12px;border-bottom:1px solid var(--line)}.detail-grid .dc.num,.detail-grid .dh.num{text-align:right;font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.detail-grid .dc{padding:8px 12px;border-bottom:1px solid var(--line)}.detail-grid .drow-label{font-weight:600;color:var(--ink-soft)}.detail-grid .changed{background:var(--warn-bg);color:var(--warn);font-weight:600}.detail-grid .same,.empty{color:var(--ink-faint)}.empty{padding:54px 20px;text-align:center}.empty .big{font-family:var(--font-display);font-size:20px;color:var(--ink-soft);margin-bottom:4px}.intro{margin-top:18px;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}@media (max-width:820px){.intro{grid-template-columns:repeat(2,1fr)}}.intro .step{padding:15px;border-radius:10px;border:1px solid var(--line);background:var(--paper-3)}.intro .step .n{font-family:var(--font-display);color:var(--brand);font-size:15px;font-weight:600}.intro .step h4{margin:6px 0 3px;font-size:14px}.intro .step p{margin:0;font-size:12.5px;color:var(--ink-faint)}footer.foot{margin-top:auto;padding-top:22px;border-top:2px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.foot-brand{font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--ink)}.foot-sub{color:var(--ink-faint);font-size:12px;margin-top:3px;max-width:520px}.foot-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.foot-help-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);font-weight:700}.foot-contact{display:inline-flex;align-items:center;gap:8px;background:var(--brand-tint);color:var(--brand-deep);border:1px solid var(--ok-line);padding:8px 15px;border-radius:999px;font-weight:600;font-size:13.5px;text-decoration:none;transition:background .16s,color .16s,border-color .16s,transform .16s}.foot-contact:hover{background:var(--brand);color:var(--paper-3);border-color:var(--brand);transform:translateY(-1px)}@media (max-width:560px){footer.foot{flex-direction:column}.foot-right,footer.foot{align-items:flex-start}}.foot-link{color:var(--ink-soft);font-weight:600;text-decoration:none;border-bottom:1px solid var(--line-strong)}.foot-link:hover{color:var(--brand-deep);border-bottom-color:var(--brand)}.page-head{padding-bottom:22px;margin-bottom:26px;border-bottom:2px solid var(--ink)}.back-link{display:inline-block;color:var(--brand-deep);font-weight:600;font-size:13.5px;text-decoration:none;margin-bottom:14px}.back-link:hover{color:var(--brand)}.page-title{font-family:var(--font-display);font-weight:600;font-size:34px;letter-spacing:-.02em;margin:0}.page-meta{margin:6px 0 0;color:var(--ink-faint);font-size:13px}.legal{padding:30px 34px;max-width:760px}.legal .lede{font-size:16px;color:var(--ink);line-height:1.6;margin:0 0 6px}.legal h2{font-family:var(--font-display);font-weight:500;font-size:19px;letter-spacing:-.01em;margin:26px 0 8px;padding-top:18px;border-top:1px solid var(--line)}.legal .lede+h2{border-top:none;padding-top:0}.legal p{color:var(--ink-soft);font-size:14.5px;line-height:1.65;margin:0 0 10px}.legal a{color:var(--brand-deep);font-weight:600;text-decoration:none;border-bottom:1px solid var(--brand-tint)}.legal a:hover{border-bottom-color:var(--brand)}.legal strong{color:var(--ink);font-weight:600}.legal .legal-note{margin-top:24px;padding:12px 16px;background:var(--paper);border:1px solid var(--line);border-radius:9px;font-size:13px;color:var(--ink-faint)}@media (max-width:560px){.legal{padding:22px 20px}.page-title{font-size:27px}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}