:root{color-scheme:dark;--bg:#191b1a;--surface:#252827;--raised:#2e3230;--line:#3a403d;--text:#f1f4f2;--muted:#a8b4ad;--accent:#83d7c3;--ink:#123b30;--error:#f08b8d;font-family:"Segoe UI",sans-serif}html[data-theme=light]{color-scheme:light;--bg:#f0f3f0;--surface:#fff;--raised:#e8eeea;--line:#d7ded9;--text:#18332a;--muted:#61776c;--accent:#246f5e;--ink:#fff;--error:#ad393e}html[data-color=mono]{--accent:#d9d9d9;--ink:#171717;--bg:#191919;--surface:#262626;--raised:#303030;--line:#414141;--text:#f2f2f2;--muted:#b5b5b5}html[data-color=mono][data-theme=light]{--accent:#292929;--ink:#fff;--bg:#f2f2f2;--surface:#fff;--raised:#e9e9e9;--line:#d7d7d7;--text:#232323;--muted:#686868}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}[hidden]{display:none!important}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.top{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px;padding:0 5vw}.brand{width:46px;height:46px;border:1px solid var(--line);border-radius:12px;display:block;text-decoration:none}.brand svg{width:100%;height:100%}.brand .chart{fill:none;stroke:var(--accent);stroke-width:2;opacity:.35}.brand text{font-size:28px;font-weight:600;fill:var(--text)}.top-label{font-size:14px;color:var(--muted)}.themes{margin-left:auto;border:1px solid var(--line);border-radius:24px;padding:4px;display:flex}.themes button{background:transparent;border:0;color:var(--muted);width:36px;height:36px;display:grid;place-items:center;border-radius:50%}.themes button:hover{background:var(--raised);color:var(--text)}.themes svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.5}main{max-width:1320px;margin:auto;padding:64px 5vw}.welcome{min-height:calc(100vh - 225px);display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:9%}.eyebrow,.small-label{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}.welcome h1{font-size:clamp(36px,4.4vw,64px);line-height:1.1;font-weight:450;letter-spacing:-.035em;margin:0 0 24px}.lead{font-size:16px;line-height:1.7;color:var(--muted);margin:0}.intro-line{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted);margin-top:52px;flex-wrap:wrap}.intro-line span:nth-of-type(odd){color:var(--accent)}.intro-line i{height:1px;width:24px;background:var(--line)}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:34px}.login-card h2{font-size:29px;font-weight:500;margin:12px 0}.login-card>p{font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:28px}label{display:flex;flex-direction:column;gap:9px;font-size:13px;color:var(--muted)}input{display:block;width:100%;min-width:0;margin:0;padding:13px 14px;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:9px;outline:none;font-size:15px}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}input::placeholder{color:var(--muted);opacity:.7}.primary{width:100%;border:0;border-radius:9px;padding:14px 16px;margin-top:22px;background:var(--accent);color:var(--ink);display:flex;justify-content:space-between;font-weight:600}.quiet{font-size:11px;line-height:1.7;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.error,.feedback.error{color:var(--error)!important}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.page-heading h1{font-size:40px;letter-spacing:-.025em;font-weight:500;margin:0 0 12px}.heading-side{display:flex;align-items:center;gap:18px;white-space:nowrap}.progress{color:var(--accent);font-size:12px}.text-button{background:transparent;border:0;color:var(--muted);padding:8px}.notice{display:flex;gap:15px;align-items:start;background:var(--raised);border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin-bottom:36px}.notice strong{font-size:14px;font-weight:550}.notice p{font-size:13px;line-height:1.6;color:var(--muted);margin:7px 0 0}.status-dot{width:7px;height:7px;flex:0 0 7px;background:var(--accent);border-radius:50%;margin-top:6px}.settings-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:34px}.section-nav{align-self:start;position:sticky;top:28px}.section-nav a{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:13px;padding:16px 0;border-bottom:1px solid var(--line)}.section-nav a span{font-size:11px;color:var(--muted)}.section-nav a:hover{color:var(--accent)}.section-nav i{margin-left:auto;width:5px;height:5px;border-radius:50%;background:var(--line)}.section-nav i.saved{background:var(--accent)}.nav-note{font-size:11px;line-height:1.8;color:var(--muted);margin-top:30px}.sections{display:grid;gap:22px}.config-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px;scroll-margin-top:22px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.card-heading .eyebrow{margin:0 0 8px;font-size:10px}.card-heading h2{margin:0;font-size:23px;font-weight:550;letter-spacing:-.02em}.badge{font-size:10px;border:1px solid var(--line);border-radius:6px;padding:6px 9px;color:var(--muted);white-space:nowrap}.badge.saved{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.description{font-size:13px;color:var(--muted);line-height:1.7;max-width:590px;margin:18px 0 24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fields .wide{grid-column:1/-1}.field-note{font-size:11px;color:var(--muted);line-height:1.7;margin:16px 0 0;overflow-wrap:anywhere}code{font:inherit;color:var(--text)}.card-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--line);margin-top:23px;padding-top:18px}.feedback{font-size:12px;color:var(--accent);line-height:1.5}.save{background:transparent;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px 18px;flex-shrink:0}.save:hover{border-color:var(--accent);color:var(--accent)}footer{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);margin:48px 0 0}section{animation:appear .35s ease both}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:900px){.welcome{gap:35px;grid-template-columns:1fr 1fr}.welcome h1{font-size:40px}.settings-grid{grid-template-columns:160px minmax(0,1fr);gap:24px}.heading-side{flex-direction:column;align-items:end}.fields{gap:14px}}@media(max-width:650px){.top{height:72px;padding:0 20px;gap:15px}.top-label{font-size:12px}main{padding:32px 20px}.welcome{display:block;min-height:0}.welcome h1{font-size:36px}.welcome .lead{font-size:14px}.intro-line{margin-top:24px;font-size:10px;gap:9px}.intro-line i{width:14px}.login-card{margin-top:32px;padding:24px}.page-heading{align-items:start;gap:16px}.page-heading h1{font-size:30px}.page-heading .lead{font-size:13px}.eyebrow{font-size:10px}.heading-side{gap:6px}.notice{padding:17px}.settings-grid{display:block}.section-nav{display:none}.config-card{padding:20px}.card-heading{align-items:start}.card-heading h2{font-size:21px}.badge{font-size:9px;white-space:normal;max-width:115px}.fields{grid-template-columns:1fr}.fields .wide{grid-column:auto}.description{font-size:12px}.card-footer{gap:10px}footer{font-size:10px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){section{animation:none}}

textarea{font:inherit;width:100%;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:12px;resize:vertical;margin-top:8px}textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.toggle-field{display:flex;align-items:center;gap:10px;min-height:40px}.toggle-field input{width:18px;height:18px;margin:0;accent-color:var(--accent)}.connection-actions{display:flex;gap:8px;flex-shrink:0}.check{font:inherit;border:1px solid var(--line);background:transparent;color:var(--text);border-radius:9px;padding:10px 16px}.check:hover{border-color:var(--accent)}.feedback{white-space:pre-line}.badge.failed{color:var(--error)}.badge.verified{color:var(--accent)}.field-note{display:block}@media(max-width:600px){.card-footer{flex-wrap:wrap}.connection-actions{margin-left:auto}.connection-actions button{padding:10px 12px}}
.toggle-field{flex-direction:row;justify-content:flex-start;align-items:center}

input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--error);outline-color:var(--error)}

.back-reports{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;text-decoration:none;color:var(--muted)}.back-reports[hidden]{display:none}.back-reports:hover{color:var(--text)}.back-reports svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}#logout-error{font-size:12px;max-width:260px;margin:0}#logout-error:empty{display:none}.heading-side{flex-wrap:wrap}

.source-admin-tabs{display:flex;gap:10px;margin:0 0 22px}.source-admin-tabs a{padding:9px 15px;border:1px solid var(--line);border-radius:10px;text-decoration:none;font-size:13px}.source-admin-tabs a[aria-current=page]{color:var(--accent);border-color:var(--accent)}.source-schedule{margin-bottom:20px}.source-schedule form,.source-table-toolbar,.source-table-toolbar form,.source-view-tabs{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.source-schedule input[type=number],#source-view-year{max-width:120px}.source-table-toolbar{justify-content:space-between}.source-table-card{padding:22px}.source-view-tabs button{padding:10px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text)}.source-view-tabs button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.source-table-scroll{max-height:65vh;overflow:auto;border:1px solid var(--line);border-radius:12px;scrollbar-width:thin}.source-table-scroll table{border-collapse:collapse;width:100%;font-size:12px}.source-table-scroll th{position:sticky;top:0;background:var(--raised);text-align:left;font-weight:500;z-index:1;white-space:nowrap;color:var(--muted)}.source-table-scroll td,.source-table-scroll th{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.source-table-scroll td{min-width:145px}.source-table-scroll .project-cell{min-width:250px}.source-table-scroll .amount-cell{white-space:nowrap;text-align:right;color:var(--accent);font-variant-numeric:tabular-nums}.source-table-scroll tr:hover td{background:var(--raised)}.source-table-paging{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:16px;font-size:12px;color:var(--muted)}.source-schedule button,.source-table-toolbar form button,.source-table-paging button{border:1px solid var(--line);background:var(--raised);color:var(--text);padding:10px 15px;border-radius:9px}#source-state{min-height:20px}#source-view-search{width:230px}@media(max-width:767px){.source-table-card{padding:14px}.source-schedule form{gap:10px}.source-table-toolbar{align-items:stretch}.source-table-scroll{max-width:100%;max-height:55vh}#source-view-search{width:180px}}
