:root{color:#16201d;background:radial-gradient(circle at 12% 0%,rgba(255,184,77,.2),transparent 25rem),radial-gradient(circle at 88% 8%,rgba(255,96,126,.13),transparent 26rem),radial-gradient(circle at 52% 32%,rgba(20,177,130,.12),transparent 30rem),linear-gradient(180deg,#fffaf2,#eef8ef 58%,#f7f3ff);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}input,select,textarea{transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease,transform .15s ease}button{cursor:pointer}.app-shell{width:min(1480px,100%);margin:0 auto;padding:18px 28px 28px}.hero-band{min-height:150px;color:#f9fcfa;background:linear-gradient(90deg,#084134f0,#0841348f),url(https://images.unsplash.com/photo-1559027615-cd4628902d4a?auto=format&fit=crop&w=1800&q=80);background-position:center;background-size:cover;border-radius:10px;display:flex;justify-content:space-between;gap:18px;padding:22px 26px;box-shadow:0 18px 46px #15383129}.hero-actions{align-self:flex-start;display:flex;gap:10px;align-items:center}.brand-mark,.rate-pill,.back-button,.tab-button,.primary-button,.icon-button{display:inline-flex;align-items:center}.brand-mark{gap:10px;font-weight:900;font-size:1.2rem}.brand-mark>svg{width:30px;height:30px}.via-brand{display:inline-flex;align-items:center;gap:10px;padding-left:8px;color:#ffffffd1;font-size:.9rem;font-weight:850}.via-brand img{width:104px;height:38px;object-fit:contain;border-radius:4px;background:#ffffffeb;padding:5px 7px}.hero-band h1{max-width:760px;margin:24px 0 0;font-size:clamp(2rem,3.8vw,3.35rem);line-height:1;letter-spacing:0}.rate-pill{align-self:flex-start;gap:10px;height:42px;color:#0a332d;border:1px solid rgba(255,255,255,.65);background:#fff4c7;padding:0 13px;font-weight:950;border-radius:6px}.rate-pill span{font-size:1.05rem}.year-select{height:42px;color:#0a332d;background:#ffffffe0;border:1px solid rgba(255,255,255,.7);border-radius:6px;display:inline-flex;align-items:center;gap:8px;padding:0 10px;font-weight:900}.year-select span{color:#31524b;font-size:.78rem;text-transform:uppercase}.year-select select{min-width:86px;color:#0a332d;border:0;background:transparent;font-weight:950;outline:none}.kpi-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(420px,1.28fr) minmax(0,1fr);grid-template-areas:"net pot remaining remaining" "carryover carryover remaining remaining";gap:14px;align-items:stretch;margin:18px 0 20px}.kpi,.panel{background:#fffffff5;border:1px solid #dce6de;border-radius:10px;box-shadow:0 18px 42px #1e3b3414}.kpi{min-height:86px;display:grid;grid-template-columns:auto 1fr;gap:5px 13px;align-items:center;padding:16px;position:relative;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease}.kpi:nth-child(1){grid-area:net}.kpi:nth-child(2){grid-area:pot}.kpi:nth-child(3){grid-area:carryover}.kpi:nth-child(4){grid-area:remaining}.kpi:after{content:"";position:absolute;inset:auto -28px -42px auto;width:132px;height:132px;border-radius:50%;background:#ffcf552e;pointer-events:none}.kpi:hover{transform:translateY(-1px);box-shadow:0 22px 50px #1e3b341f}.kpi-icon{grid-row:span 2;width:38px;height:38px;display:grid;place-items:center;color:#0e6b57;background:#e6f4ed;border-radius:6px}.kpi span,.metric-row span,.row-main span,.group-heading span,.activity-row span,.association-card span{color:#65746f;font-size:.86rem;font-weight:800}.kpi strong{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1}.kpi.accent{border-color:#9edfc2;background:linear-gradient(145deg,#effff5,#fff)}.kpi.warning{border-color:#ff8a6b;background:linear-gradient(145deg,#fff1ea,#fff)}.kpi.spotlight{min-height:210px;padding:30px 34px;grid-template-columns:auto 1fr;align-content:center;border:1px solid #7dd3fc;color:#fff;background:radial-gradient(circle at 88% 12%,rgba(255,255,255,.38),transparent 8rem),radial-gradient(circle at 12% 92%,rgba(125,211,252,.42),transparent 9rem),linear-gradient(135deg,#0ea5e9,#2563eb 48%,#7c3aed);box-shadow:0 26px 70px #2563eb3d,0 0 0 6px #0ea5e921}.kpi.spotlight:after{width:220px;height:220px;inset:auto -56px -88px auto;background:radial-gradient(circle,rgba(255,255,255,.55),rgba(255,255,255,.1) 62%,transparent 64%)}.kpi.spotlight .kpi-icon{width:58px;height:58px;color:#2563eb;background:#ffffffe0;box-shadow:0 12px 28px #0f172a2e}.kpi.spotlight span{color:#ffffffdb;text-transform:uppercase;letter-spacing:.04em}.kpi.spotlight strong{font-size:clamp(3.35rem,7vw,5.7rem);text-shadow:0 8px 24px rgba(15,23,42,.24)}.kpi.spotlight em{grid-column:2;margin-top:4px;color:#ffffffd6;font-size:1rem;font-style:normal;font-weight:850}.kpi.spotlight.warning{color:#fff;border-color:#ff3d5a;background:linear-gradient(135deg,#ff3d5a,#c9184a 55%,#8a1538);box-shadow:0 22px 60px #c9184a47,0 0 0 6px #ff3d5a21}.kpi.spotlight.warning span{color:#ffffffd1}.kpi.spotlight.warning .kpi-icon{color:#c9184a;background:#ffffffdb}.tab-bar{display:flex;gap:8px;overflow-x:auto;margin-bottom:18px;padding:6px;border:1px solid #dbe6de;background:#ffffffa8;border-radius:10px}.tab-button{gap:8px;min-height:42px;border:0;color:#50615c;background:transparent;padding:0 14px;font-weight:900;border-radius:8px;white-space:nowrap}.tab-button.active{color:#073f35;background:linear-gradient(135deg,#fff,#fff7d6);box-shadow:0 10px 24px #ffb00024}.overview-grid,.workspace-grid,.donation-grid,.settings-grid{display:grid;gap:18px;align-items:start}.overview-grid{grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr)}.workspace-grid{grid-template-columns:360px minmax(0,1fr)}.donation-grid{grid-template-columns:minmax(360px,.75fr) minmax(0,1.25fr)}.settings-grid{grid-template-columns:260px minmax(0,1fr);margin-top:18px}.automation-tab{display:grid}.panel{padding:22px}.wide-panel{grid-column:1 / -1}.focus-panel{background:linear-gradient(145deg,#fff7d6d6,#f0fbf5f5 54%,#fff 82%),#fff}.association-priority{background:radial-gradient(circle at 92% 12%,rgba(125,211,252,.2),transparent 12rem),linear-gradient(135deg,#fff,#f5fbff 48%,#f8f5ff)}.association-priority-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.association-priority-heading h2{margin-bottom:0}.dashboard-association-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dashboard-association-card{appearance:none;width:100%;min-height:142px;display:grid;grid-template-columns:auto 1fr;gap:8px 11px;align-content:start;text-align:left;color:inherit;border:1px solid #dce6de;background:#fffc;border-radius:14px;padding:14px;box-shadow:0 12px 28px #25483e0f}.dashboard-association-card:hover{transform:translateY(-2px);border-color:#93c5fd;box-shadow:0 16px 34px #2563eb1f}.dashboard-association-card .logo{grid-row:span 3}.dashboard-association-card span{color:#64748b;font-size:.78rem;font-weight:900}.dashboard-association-card strong{line-height:1.15}.dashboard-association-card em{color:#2563eb;font-style:normal;font-weight:950}.association-suggestions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}.association-suggestions span{color:#65746f;font-size:.82rem;font-weight:900}.association-suggestions button{border:1px solid #dbeafe;color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:7px 10px;font-size:.84rem;font-weight:850}.eyebrow{margin:0 0 5px;color:#687871;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}h2,h3,p{margin-top:0}h2{margin-bottom:18px;font-size:1.22rem}.metric-rows,.activity-list,.clean-list,.donation-groups,.catalog-list,.legend{display:grid;gap:10px}.metric-row,.activity-row,.clean-row,.donation-line,.donation-group,.association-card{border:1px solid #dce6de;background:#fbfdfb;border-radius:8px}.metric-row{appearance:none;width:100%;color:inherit;cursor:pointer;text-align:left;display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:14px}.metric-row:hover{border-color:#ffcd66;box-shadow:0 12px 26px #ffb00024}.metric-row strong{font-size:1.25rem}.metric-row em{grid-column:1 / -1;color:#72817b;font-style:normal;font-weight:800}.activity-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px}.activity-row strong,.legend-row span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-row em{color:#e55336;font-style:normal;font-weight:950}.clean-form,.automation-form{display:grid;gap:10px}.automation-callout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin-bottom:14px;padding:13px;border:1px solid #ffd36b;background:linear-gradient(135deg,#fff7d6,#f0fbf5);border-radius:8px}.automation-callout>svg{color:#0d735d}.automation-callout div{display:grid;gap:3px}.automation-callout strong{color:#0a4f42}.automation-callout span,.helper-text{color:#60716b;font-size:.9rem;font-weight:750;line-height:1.35}.automation-callout button{grid-column:2;justify-self:start;height:36px;border:1px solid #0d735d;color:#0d735d;background:#fff;border-radius:6px;padding:0 11px;font-weight:950}.helper-text{margin-bottom:14px}.clean-form{grid-template-columns:150px minmax(0,1fr)}.donation-form,.automation-form{grid-template-columns:repeat(2,minmax(0,1fr))}.clean-form input,.clean-form select,.clean-form textarea,.automation-form input,.automation-form select,.automation-form textarea,.clean-row input,.donation-line input,.search-box input,.association-create input,.association-create textarea,.profile-form input,.profile-form textarea{width:100%;min-width:0;border:1px solid #d9eadf;background:linear-gradient(180deg,#fffefa,#f8fff9);color:#17231f;padding:13px 15px;outline:none;border-radius:14px;box-shadow:inset 0 1px #ffffffdb,0 8px 18px #25483e0d}.clean-form input:hover,.clean-form select:hover,.clean-form textarea:hover,.automation-form input:hover,.automation-form select:hover,.automation-form textarea:hover,.clean-row input:hover,.donation-line input:hover,.search-box input:hover,.association-create input:hover,.association-create textarea:hover,.profile-form input:hover,.profile-form textarea:hover{border-color:#ffd36b;background:#fff}.clean-form input:focus,.clean-form select:focus,.clean-form textarea:focus,.automation-form input:focus,.automation-form select:focus,.automation-form textarea:focus,.clean-row input:focus,.donation-line input:focus,.search-box input:focus,.association-create input:focus,.association-create textarea:focus,.profile-form input:focus,.profile-form textarea:focus{border-color:#ffb000;background:#fff;box-shadow:0 0 0 4px #ffb00029,0 12px 24px #ffb0001f;transform:translateY(-1px)}.clean-form select,.automation-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#0d735d 50%),linear-gradient(135deg,#0d735d 50%,transparent 50%),linear-gradient(180deg,#fffefa,#f8fff9);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px),0 0;background-size:6px 6px,6px 6px,100% 100%;background-repeat:no-repeat;padding-right:38px}.primary-button{justify-content:center;gap:8px;min-height:42px;color:#fff;border:1px solid #0d735d;background:linear-gradient(135deg,#0d735d,#17a67f);border-radius:6px;padding:0 14px;font-weight:950}.secondary-button{min-height:34px;color:#0d735d;border:1px solid #b7d8ca;background:#fff;border-radius:6px;padding:0 10px;font-weight:900}.secondary-button:hover{border-color:#0d735d;background:#f0fbf5}.primary-button:hover{background:linear-gradient(135deg,#095e4c,#0d8f6f)}.clean-row{display:grid;grid-template-columns:118px minmax(0,1fr) 140px 38px;gap:10px;align-items:center;padding:12px;border-left:4px solid #17a67f}.clean-row.deduction{border-left-color:#ff8a3d}.clean-row.donation{border-left-color:#ff5c7a}.row-date{color:#4d5d58;font-size:.88rem;font-weight:900}.row-main{display:grid;gap:5px}.row-main input{padding:8px 10px;border-color:transparent;background:#ffffff94;border-radius:10px;box-shadow:none;font-weight:900}.money-field{font-weight:950;text-align:right;background:linear-gradient(180deg,#fff7dc,#fff)!important}.icon-button{width:38px;height:38px;justify-content:center;color:#1a302d;border:1px solid #d5ded6;background:#fff;border-radius:6px}.icon-button:hover{border-color:#9ac9b0;background:#f0fbf5}.icon-button.danger:hover{color:#b54025;border-color:#efb2a1;background:#fff5f2}.icon-button.add{color:#0c6b56}.search-box{display:flex;align-items:center;gap:10px;border:1px solid #d9eadf;background:linear-gradient(180deg,#fffefa,#f8fff9);border-radius:16px;padding:4px 12px;margin-bottom:12px;box-shadow:0 10px 24px #25483e0d}.search-box input{border:0;box-shadow:none;background:transparent;padding:10px 4px}.inline-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.inline-create button{min-height:42px;color:#0d735d;border:1px solid #0d735d;background:#fff;border-radius:6px;padding:0 11px;font-weight:950}.association-create{margin-bottom:12px;border:1px solid #d9eadf;background:#fff;border-radius:8px;padding:11px 13px}.association-create summary{color:#0d735d;font-weight:950}.association-create-form,.profile-form{display:grid;gap:10px;margin-top:12px}.association-create textarea,.profile-form textarea{min-height:76px;resize:vertical}.association-actions{display:flex;gap:8px;align-items:center}.share-check{display:flex;gap:9px;align-items:center;color:#44554f;font-size:.9rem;font-weight:850}.share-check input{width:auto}.catalog-list{max-height:650px;overflow:auto;padding-right:4px}.catalog-list.tall{max-height:780px}.association-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.association-card:hover{border-color:#ffd36b;box-shadow:0 12px 26px #ffb0001f;transform:translateY(-1px)}.association-card h3{margin:0 0 5px;font-size:.98rem}.association-card p{margin-bottom:8px;color:#596963;font-size:.9rem;line-height:1.35}.logo{width:44px;height:44px;display:grid;place-items:center;color:#fff;border-radius:7px;font-size:.78rem;font-weight:950}.donation-group{padding:14px}.group-heading{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-bottom:12px}.group-heading>div{display:grid;gap:3px}.donation-line{display:grid;grid-template-columns:140px minmax(0,1fr) 120px 38px;gap:8px;align-items:center;padding:11px;margin-top:8px;border-radius:16px;background:linear-gradient(180deg,#fff,#fbfff9)}.chart-layout{display:grid;grid-template-columns:minmax(170px,230px) minmax(0,1fr);gap:22px;align-items:center}.donut{aspect-ratio:1;width:100%;border-radius:50%;display:grid;place-items:center}.donut>div{width:58%;aspect-ratio:1;display:grid;place-items:center;align-content:center;border-radius:50%;background:#fff;text-align:center;box-shadow:0 0 0 1px #14272214}.donut span{color:#677872;font-size:.85rem;font-weight:800}.donut strong{font-size:1.1rem}.legend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;color:#334440;font-size:.9rem}.legend-dot{width:11px;height:11px;border-radius:50%}.chart-empty{min-height:220px;display:grid;place-items:center;color:#66746f;border:1px dashed #b8c8bd;border-radius:8px}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:#0d221d75}.modal-panel{width:min(760px,100%);max-height:min(760px,calc(100vh - 36px));overflow:auto;background:#fff;border:1px solid #dce6de;border-radius:10px;box-shadow:0 28px 90px #09261f52;padding:20px}.modal-heading{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px}.modal-heading h2{margin-bottom:4px}.modal-heading span,.profile-form label{color:#60716b;font-size:.9rem;font-weight:850}.profile-form{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-form label{display:grid;gap:6px}.profile-form label:has(textarea),.profile-form .share-check{grid-column:1 / -1}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.back-button{gap:8px;height:40px;margin-top:18px;border:1px solid #d3dfd7;background:#fff;border-radius:6px;padding:0 13px;font-weight:900}.compact-setting{display:grid;align-content:start}.compact-setting strong{color:#0c6b56;font-size:3rem;line-height:1}.automation-form{margin-bottom:14px}@media(max-width:1080px){.kpi-grid,.overview-grid,.workspace-grid,.donation-grid,.settings-grid,.chart-layout{grid-template-columns:1fr}.kpi-grid{grid-template-areas:"remaining" "net" "pot" "carryover"}.dashboard-association-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.app-shell{padding:14px}.hero-band{min-height:170px;flex-direction:column}.hero-actions{width:100%;justify-content:space-between}.hero-band h1{margin-top:20px;font-size:2rem}.clean-form,.donation-form,.automation-form,.automation-callout,.clean-row,.donation-line,.activity-row,.dashboard-association-grid,.association-card{grid-template-columns:1fr}.association-priority-heading{flex-direction:column}}
