*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#1e40af;--primary-light:#3b82f6;--primary-dark:#1e3a8a;--secondary:#059669;--accent:#f59e0b;--bg:#f8fafc;--bg-card:#fff;--text:#1e293b;--text-muted:#64748b;--border:#e2e8f0;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--radius:8px;--shadow:0 1px 3px #00000014, 0 1px 2px #0000000f;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000f}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.6}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}.btn{border-radius:var(--radius);border:none;align-items:center;gap:.5rem;padding:.65rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{color:var(--text);border:1px solid var(--border);background:#fff}.btn-secondary:hover{background:var(--bg)}.btn-success{background:var(--secondary);color:#fff}.btn-lg{padding:.85rem 2rem;font-size:1.1rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-open{color:#166534;background:#dcfce7}.badge-upcoming{color:#92400e;background:#fef3c7}.badge-closed{color:#991b1b;background:#fee2e2}.badge-govt{color:#1e40af;background:#dbeafe}.badge-private{color:#9d174d;background:#fce7f3}input,select,textarea{font-family:inherit;font-size:.95rem}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{box-sizing:border-box;flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}
