:root{--nav-bg: #ffffff;--nav-text: #1c1c1c;--nav-text-muted: #55585c;--nav-accent: #b5541a;--nav-border: #e6e3dd;--nav-height: 72px;--nav-font: system-ui, -apple-system, "Segoe UI", sans-serif}.nav{position:sticky;top:0;z-index:100;background:var(--nav-bg);border-bottom:1px solid var(--nav-border);font-family:var(--nav-font)}.nav-inner{max-width:1200px;margin:0 auto;height:var(--nav-height);padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none;color:var(--nav-text);font-weight:600;font-size:1.1rem}.nav-logo img{height:36px;width:auto;display:block}.nav-mobile-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;background:none;border:none;cursor:pointer;padding:0}.nav-mobile-toggle span{display:block;height:2px;width:100%;background:var(--nav-text);border-radius:1px}.nav-links{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.nav-links ul{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}.nav-item{position:relative}.nav-item>a,.nav-item-trigger{display:flex;align-items:center;gap:6px;padding:10px 14px;color:var(--nav-text);text-decoration:none;font-size:.95rem;font-weight:500;background:none;border:none;cursor:pointer;border-radius:6px;transition:color .15s ease,background-color .15s ease}.nav-item>a:hover,.nav-item-trigger:hover{color:var(--nav-accent);background:color-mix(in srgb,var(--nav-accent) 8%,transparent)}.nav-caret{transition:transform .15s ease}.nav-item-trigger[aria-expanded=true] .nav-caret{transform:rotate(180deg)}.nav-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:200px;background:var(--nav-bg);border:1px solid var(--nav-border);border-radius:8px;box-shadow:0 8px 24px #00000014;list-style:none;margin:0;padding:6px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.nav-dropdown.is-open{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown li a{display:block;padding:9px 12px;color:var(--nav-text-muted);text-decoration:none;font-size:.9rem;border-radius:5px;white-space:nowrap}.nav-dropdown li a:hover{color:var(--nav-text);background:color-mix(in srgb,var(--nav-accent) 8%,transparent)}.nav-cta{margin-left:8px;padding:9px 18px;background:var(--nav-accent);color:#fff;text-decoration:none;font-weight:600;font-size:.9rem;border-radius:6px;white-space:nowrap;transition:filter .15s ease}.nav-cta:hover{filter:brightness(.92)}.nav-item>a:focus-visible,.nav-item-trigger:focus-visible,.nav-dropdown li a:focus-visible,.nav-cta:focus-visible,.nav-mobile-toggle:focus-visible{outline:2px solid var(--nav-accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){.nav-dropdown,.nav-caret,.nav-cta{transition:none}}@media (max-width: 860px){.nav-mobile-toggle{display:flex}.nav-links{position:fixed;top:var(--nav-height);left:0;right:0;bottom:0;background:var(--nav-bg);flex-direction:column;align-items:stretch;justify-content:flex-start;padding:16px;overflow-y:auto;transform:translate(100%);transition:transform .2s ease}.nav-links.is-open{transform:translate(0)}.nav-links ul{flex-direction:column;align-items:stretch;gap:0}.nav-item>a,.nav-item-trigger{width:100%;padding:14px 12px;justify-content:space-between}.nav-dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;display:none;padding-left:12px}.nav-dropdown.is-open{display:block}.nav-cta{margin:12px 0 0;text-align:center}}:root{--indigo: #4338ca;--indigo-dark: #1e1b4b;--marigold: #f59e0b;--bg: #fafafa}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--indigo-dark)}.portal-shell{min-height:100vh;display:flex;flex-direction:column}.portal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#fff;border-bottom:3px solid var(--marigold)}.portal-logo{font-weight:700;color:var(--indigo);text-decoration:none;font-size:1.1rem}.portal-main{flex:1;padding:2rem;max-width:960px;margin:0 auto;width:100%}.auth-page{display:flex;justify-content:center;padding-top:3rem}.auth-card{max-width:420px;width:100%}.auth-subtitle{color:#52525b;margin-bottom:1.5rem}.donations-table{width:100%;border-collapse:collapse}.donations-table th,.donations-table td{text-align:left;padding:.75rem;border-bottom:1px solid #e4e4e7}.donations-table th{color:var(--indigo);font-weight:600}.error{color:#dc2626}
