:root{--bg:#f3f6f5;--surface:#fff;--ink:#10211d;--muted:#6f7f7a;--line:#dfe8e4;--green:#0d9c72;--green-dark:#087d5c;--dark:#0d211c;--orange:#e8953e;--red:#d95c5c;--shadow:0 12px 34px #163a2e0b}
*{box-sizing:border-box}
html{color-scheme:light;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:clamp(15px,.3vw + 12px,17px)/1.55 "Segoe UI",Arial,sans-serif}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a,select,input,textarea{transition:border-color .15s,box-shadow .15s,background-color .15s}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #0d9c7240;outline-offset:2px}
.shell{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:100vh}
aside{position:fixed;inset:0 auto 0 0;width:272px;height:100vh;overflow-y:auto;background:var(--dark);color:#d7e3df;padding:28px 20px;display:flex;flex-direction:column;z-index:20}
.brand{display:flex;align-items:center;gap:12px;padding:0 10px 28px}
.brand>span,.login-brand>span{width:44px;height:44px;border-radius:12px;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:800}
.brand b{font-size:15px}.brand small,.user small,.login-brand small{display:block;color:#86a098;font-size:12px;margin-top:2px}
nav{display:grid;gap:5px}
nav a{min-height:44px;padding:11px 13px;border-radius:10px;color:#9bb0aa;font-weight:650;font-size:14px;display:flex;align-items:center}
nav a:hover,nav a.active{background:#193a32;color:#fff}
.secure{margin:auto 3px 18px;padding:14px;background:#15352d;border:1px solid #254b42;border-radius:11px;color:#6de0b6;display:flex;gap:10px}
.secure span{color:#fff}.secure b,.secure small{display:block}.secure b{font-size:13px}.secure small{color:#86a098;font-size:11px}
.user{display:flex;align-items:center;gap:10px;border-top:1px solid #254039;padding-top:18px}
.user>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#d88b43;color:#fff;font-weight:800}
.user div{flex:1}.user b{font-size:14px}.user a{min-width:40px;min-height:40px;display:grid;place-items:center;color:#9bb0aa}
main{grid-column:2;width:100%;max-width:1800px;margin:0 auto;padding:42px clamp(28px,3vw,58px) 24px}
header,.simple-header{display:flex;align-items:center;justify-content:space-between}
header h1,.simple-header h1{font-size:clamp(25px,1.35vw,32px);line-height:1.2;margin:0;letter-spacing:-.5px}
.eyebrow{font-size:12px;letter-spacing:1.4px;font-weight:800;color:#7c8d87;margin:0 0 7px}
.header-actions{display:flex;gap:11px;flex-wrap:wrap}
.primary,.install{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;padding:11px 17px;font-size:13px;font-weight:750;border:0;cursor:pointer}
.primary{background:var(--green);color:#fff}.primary:hover{background:var(--green-dark)}
.install{background:#fff;border:1px solid var(--line)}.menu{display:none}
.announcement{margin:25px 0 0;padding:14px 17px;background:#fff7e9;border:1px solid #efd4a4;border-radius:11px;font-size:13px;color:#765d3d}
.announcement b{color:#bd702e;margin-right:10px}
.filters{display:flex;justify-content:flex-end;margin:22px 0 15px}
.filters select{min-height:42px;background:#fff;border:1px solid var(--line);padding:9px 12px;border-radius:9px;color:#5f706a;font-size:14px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:27px 29px;box-shadow:var(--shadow)}
.hero{display:grid;grid-template-columns:1.45fr 1fr;gap:20px}
.hero h2{font-size:clamp(34px,2.1vw,46px);line-height:1.1;letter-spacing:-1px;margin:16px 0 5px}.sub{font-size:13px;color:var(--muted)}
.triple{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:27px;padding-top:19px}
.triple div+div{border-left:1px solid var(--line);padding-left:22px}.triple small,.triple b{display:block}.triple small{font-size:12px;color:var(--muted)}.triple b{font-size:16px;margin-top:5px}
.tax{background:linear-gradient(145deg,#fff,#eef9f5)}
.threshold{margin-top:26px;background:#f1f6f4;padding:15px;border-radius:10px}.threshold div{display:flex;justify-content:space-between;font-size:12px}.threshold progress{width:100%;height:8px;accent-color:var(--orange);margin:11px 0 5px}.threshold>small{font-size:11px;color:var(--muted)}
.grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;margin-top:20px}
.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card-title h3{font-size:19px;margin:0}.card-title>a{color:var(--green);font-size:13px;font-weight:750}
.source{display:grid;grid-template-columns:42px minmax(0,1fr) 150px;align-items:center;gap:13px;padding:12px 0;border-top:1px solid #edf1ef}
.source-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#497d6e;color:#fff;font-weight:800;font-size:13px}.source-icon.youtube{background:#e95858}.source-icon.tiktok{background:#172b27}.source-icon.paypal{background:#3c77bd}
.source b,.source small{display:block}.source b{font-size:14px}.source small,.source strong{font-size:13px}.source i{display:block;height:7px;background:#ecf1ef;border-radius:5px;margin-top:8px}.source em{display:block;height:100%;background:var(--green);border-radius:5px}.source strong{text-align:right}.source strong small{color:var(--muted);font-weight:400}
.notice{border-top:1px solid #edf1ef;padding:13px 5px}.notice:first-of-type{border-top:0}.notice b{font-size:14px}.notice p{font-size:13px;line-height:1.5;color:var(--muted);margin:5px 0}.notice small{font-size:11px;color:#8f9c97}.notice.urgent{border-left:3px solid var(--red);padding-left:10px}.notice.important{border-left:3px solid var(--orange);padding-left:10px}
.table-card{margin-top:20px}.table-wrap{overflow:auto;-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;min-width:900px}th{text-align:left;color:#778984;font-size:11px;letter-spacing:.7px;padding:12px 13px;border-bottom:1px solid var(--line)}td{padding:15px 13px;border-bottom:1px solid #edf1ef;font-size:13px;color:#5d6e68}td b,td small{display:block}td b{font-size:14px;color:var(--ink)}td small{font-size:11px;margin-top:4px}
.pill,.status{display:inline-block;padding:5px 9px;border-radius:14px;font-size:11px}.pill.in,.status.approved,.status.eligible{background:#e4f5ef;color:#17815f}.pill.out,.status.rejected,.status.not_eligible{background:#feeaea;color:#ad4848}.status.draft,.status.review,.status.missing_docs{background:#fff0dc;color:#aa6426}.status.submitted{background:#e7eef9;color:#55719b}
footer{display:flex;justify-content:space-between;padding:20px 4px 0;color:#7f908a;font-size:11px}
.toast{position:fixed;right:22px;bottom:22px;padding:13px 17px;background:var(--dark);color:#fff;border-radius:10px;opacity:0;transform:translateY(50px);transition:.2s;z-index:50}.toast.show{opacity:1;transform:none}
.alert{padding:13px 15px;border-radius:10px;margin:15px 0;font-size:14px}.alert.success{background:#e2f5ee;color:#167153}.alert.error{background:#feeaea;color:#a64242}.empty,.muted{color:var(--muted)}
.page{max-width:1680px;margin:auto;padding:38px clamp(22px,3vw,48px)}.simple-header{justify-content:initial;gap:28px;margin-bottom:27px}.simple-header>div{flex:1}.simple-header>a:first-child{font-size:14px;color:var(--muted)}
.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:7px}.tabs a{padding:11px 15px;font-size:13px;font-weight:750;color:var(--muted)}.tabs a.active{color:var(--green);border-bottom:2px solid var(--green)}
.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 15% 10%,#dff3eb,transparent 30%),var(--bg);padding:20px}.login-card{width:min(480px,100%);background:#fff;border:1px solid var(--line);border-radius:19px;padding:38px;box-shadow:0 25px 70px #10211d14}.login-brand{display:flex;gap:11px;align-items:center;margin-bottom:30px}.login-card h1{font-size:32px;margin:0}.login-card form{display:grid;gap:17px;margin-top:25px}
.login-card label,.transaction-form label,.form-card label{font-size:13px;font-weight:700;color:#596a64}.login-card input,.transaction-form input,.transaction-form select,.transaction-form textarea,.form-card input,.form-card select,.form-card textarea{display:block;width:100%;min-height:44px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:11px 12px;margin-top:6px;font-size:15px}
.full{width:100%}.login-foot{border-top:1px solid var(--line);margin-top:23px;padding-top:17px;text-align:center;font-size:11px;color:var(--muted)}
.form-page{max-width:980px;margin:auto;padding:38px 24px}.form-page>a{font-size:13px;color:var(--muted)}.form-card{margin-top:21px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:34px;box-shadow:var(--shadow)}.form-card h1{margin:0;font-size:30px}
.segmented{display:grid;grid-template-columns:1fr 1fr;background:#edf2f0;padding:5px;border-radius:11px;margin:25px 0}.segmented input{display:none}.segmented span{display:block;min-height:42px;text-align:center;padding:10px;border-radius:8px;font-size:13px;font-weight:750;color:var(--muted)}.segmented input:checked+span{background:#fff;color:var(--green);box-shadow:0 2px 8px #10211d14}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.conversion{background:#edf7f3;border-radius:10px;padding:14px}.conversion small,.conversion b{display:block}.conversion small{font-size:11px;color:var(--muted)}.conversion b{margin-top:5px}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px;border-top:1px solid var(--line);margin-top:24px;padding-top:19px}.form-actions>a{font-size:13px;color:var(--muted)}
@media(min-width:1900px){main{max-width:1900px;padding-left:64px;padding-right:64px}.hero{grid-template-columns:1.55fr 1fr}.grid{grid-template-columns:1.45fr 1fr}.card{padding:30px 32px}}
@media(max-width:1200px){.shell{grid-template-columns:240px minmax(0,1fr)}aside{width:240px;padding:24px 16px}main{padding:30px 24px}.hero{grid-template-columns:1.25fr 1fr}.card{padding:23px}.source{grid-template-columns:38px minmax(0,1fr) 125px}}
@media(max-width:900px){.shell{display:block}aside{width:min(300px,86vw);transform:translateX(-100%);transition:.22s}aside.open{transform:none;box-shadow:15px 0 50px #0005}main{padding:22px 16px}.hero,.grid{grid-template-columns:1fr}.menu{display:block;min-width:44px;min-height:44px;border:1px solid var(--line);background:#fff;border-radius:9px}.install{display:none}.page,.form-page{padding:22px 15px}.simple-header{gap:14px}.simple-header h1{font-size:23px}.card{padding:22px}.source{grid-template-columns:38px minmax(0,1fr) 115px}.fields{grid-template-columns:1fr}}
@media(max-width:600px){header,.simple-header{align-items:flex-start;flex-wrap:wrap}.header-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.header-actions .primary{grid-column:1/-1}.filters{justify-content:stretch}.filters form{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.filters select{width:100%}.card{padding:19px 17px;border-radius:14px}.hero h2{font-size:34px}.triple{gap:9px}.triple div+div{padding-left:9px}.triple b{font-size:14px}.source{grid-template-columns:36px minmax(0,1fr) auto;gap:10px}.source strong{min-width:72px}.card-title h3{font-size:17px}.form-card{padding:22px 18px}.login-card{padding:27px 22px}.table-wrap{margin-left:-17px;margin-right:-17px;padding:0 17px}footer{gap:12px;flex-direction:column}.primary,.install{font-size:13px}}
.ai-upload{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:12px;margin:22px 0;padding:17px;background:#f0f8f5;border:1px dashed #95c9b7;border-radius:13px}.ai-upload b,.ai-upload small{display:block}.ai-upload small{color:var(--muted);font-weight:400;margin-top:3px}.ai-upload>a{color:var(--green-dark);font-size:13px;font-weight:700}.ai-upload #aiStatus{grid-column:1/-1;margin:0}.ai-file{margin:0!important;display:inline-flex!important;align-items:center;min-height:42px;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer}.ai-file input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.conversion{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center}.conversion small{margin:0}.conversion b{text-align:right}.conversion b+small{margin-top:7px}.conversion b+small+ b{margin-top:7px}
@media(max-width:760px){.ai-upload{grid-template-columns:1fr 1fr}.ai-upload>div,.ai-upload #aiStatus{grid-column:1/-1}.ai-upload>a{text-align:center}}
.inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline-actions button,.inline-actions a{min-height:36px;padding:8px 11px;border-radius:8px;font-size:12px}.alert .primary{margin-left:10px;min-height:36px;padding:8px 12px}.fields .wide{grid-column:1/-1}
@media(max-width:600px){.alert .primary{display:flex;margin:10px 0 0}.inline-actions{min-width:220px}}
/* Readability profile: larger by default on high-density and wide displays. */
body{font-size:clamp(16px,.34vw + 13px,19px)}
nav a{font-size:15px;min-height:46px}.brand b{font-size:16px}.brand small,.user small{font-size:13px}
.eyebrow{font-size:13px}.card-title h3{font-size:21px}.source b{font-size:15px}.source small,.source strong{font-size:14px}
th{font-size:12px}td{font-size:15px}td b{font-size:16px}.fields label,.transaction-form label{font-size:14px}.fields input,.fields select,.fields textarea{font-size:16px;min-height:46px}
.detail-actions{display:flex;justify-content:flex-end;margin:16px 0}.detail-actions .primary{font-size:14px}
body.font-large{font-size:20px}body.font-large nav a{font-size:17px;min-height:50px}body.font-large .eyebrow{font-size:14px}body.font-large .card-title h3,body.font-large h3{font-size:22px}body.font-large td{font-size:16px}body.font-large th{font-size:13px}body.font-large .source b,body.font-large .source strong,body.font-large .fields label{font-size:16px}body.font-large input,body.font-large select,body.font-large textarea,body.font-large button{font-size:17px}
.font-toggle{display:inline-flex!important}
@media(min-width:1900px){nav a{font-size:16px}.card{padding:31px 33px}.source{padding:14px 0}td{padding-top:17px;padding-bottom:17px}}
@media(max-width:900px){body{font-size:16px}nav a{font-size:15px}.fields input,.fields select,.fields textarea{font-size:16px}}
