@import"https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap";:root{--sp-orange: #F48120;--sp-orange-bright: #FF640E;--sp-orange-warm: #F58720;--sp-navy: #001C3D;--sp-black: #1C1C1C;--sp-ink: #231F20;--sp-charcoal: #232323;--sp-white: #FFFFFF;--sp-bg-light: #F3F3F3;--sp-text: #121212;--sp-text-muted: #333333;--sp-text-on-dark: #FFFFFF;--sp-border: #C7C7C7;--sp-success: #2E7D32;--sp-warn: #F79E1B;--sp-danger: #EB001B;--sp-font-head: "Oswald", system-ui, sans-serif;--sp-font-body: "Roboto", system-ui, sans-serif;--sp-radius: 0;--sp-shadow: 0 4px 14px rgba(0,0,0,.12)}body{font-family:var(--sp-font-body);color:var(--sp-text);background:var(--sp-bg-light)}h1,h2,h3,h4,.sp-eyebrow,.sp-btn{font-family:var(--sp-font-head);text-transform:uppercase;letter-spacing:.02em}.sp-topbar{background:var(--sp-black);color:var(--sp-text-on-dark)}.sp-btn{background:var(--sp-orange);color:#fff;border:0;border-radius:var(--sp-radius);padding:.7rem 1.2rem;font-weight:600;cursor:pointer;transition:transform .08s,background .15s}.sp-btn:hover{background:var(--sp-orange-bright);transform:translateY(-1px)}.sp-btn--ghost{background:transparent;color:var(--sp-navy);border:1px solid var(--sp-navy)}.sp-card{background:var(--sp-white);border-radius:var(--sp-radius);box-shadow:var(--sp-shadow);padding:1.25rem}.sp-card--dark{background:var(--sp-ink);color:var(--sp-text-on-dark);box-shadow:none;border:1px solid #333}.sp-link{color:var(--sp-orange)}.sp-stat{font-family:var(--sp-font-head);font-size:2rem;color:var(--sp-navy)}*{box-sizing:border-box;margin:0;padding:0}a{color:var(--sp-orange);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.app-layout{min-height:100vh;display:flex;flex-direction:column}.topbar{background:var(--sp-black);color:var(--sp-text-on-dark);padding:0 1.5rem;height:56px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}.topbar__logo{font-family:var(--sp-font-head);font-weight:700;font-size:1.4rem;color:var(--sp-orange);letter-spacing:.05em;text-decoration:none}.topbar__logo:hover{text-decoration:none;color:var(--sp-orange-bright)}.topbar__nav{display:flex;gap:1.5rem;align-items:center}.topbar__nav a{color:var(--sp-text-on-dark);font-family:var(--sp-font-head);text-transform:uppercase;font-size:.85rem;letter-spacing:.03em}.topbar__nav a:hover{color:var(--sp-orange);text-decoration:none}.topbar__user{display:flex;gap:.75rem;align-items:center}.page{flex:1;padding:2rem 1rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:2rem}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th{font-family:var(--sp-font-head);text-transform:uppercase;text-align:left;padding:.6rem .75rem;background:var(--sp-black);color:var(--sp-text-on-dark);font-weight:500;letter-spacing:.03em}.data-table td{padding:.5rem .75rem;border-bottom:1px solid var(--sp-border)}.data-table tr:hover td{background:#f481200d}.form-group{margin-bottom:1rem}.form-group label{display:block;font-family:var(--sp-font-head);text-transform:uppercase;font-size:.85rem;margin-bottom:.3rem;color:var(--sp-text-muted)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .75rem;border:1px solid var(--sp-border);border-radius:var(--sp-radius);font-family:var(--sp-font-body);font-size:.95rem}.form-group input:focus{outline:none;border-color:var(--sp-orange);box-shadow:0 0 0 2px #f4812033}.badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-family:var(--sp-font-head);text-transform:uppercase;letter-spacing:.03em}.badge--success{background:#e8f5e9;color:var(--sp-success)}.badge--warn{background:#fff3e0;color:var(--sp-warn)}.badge--danger{background:#fce4ec;color:var(--sp-danger)}.badge--info{background:#e3f2fd;color:var(--sp-navy)}@media(max-width:768px){.topbar{padding:0 1rem}.topbar__nav{gap:1rem}.page{padding:1rem .5rem}.dashboard-grid{grid-template-columns:1fr}}.section-title{font-family:var(--sp-font-head);text-transform:uppercase;font-size:1.3rem;color:var(--sp-navy);margin-bottom:1rem;letter-spacing:.03em}.points-display{font-family:var(--sp-font-head);font-size:2.5rem;color:var(--sp-navy)}.points-label{font-family:var(--sp-font-head);text-transform:uppercase;font-size:.8rem;color:var(--sp-text-muted)}.charity-impact{background:var(--sp-orange);color:#fff;padding:1rem;border-radius:var(--sp-radius);font-family:var(--sp-font-head)}
