*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0b0d12;color:#e6e8eb}a{color:inherit}.container{max-width:960px;margin:0 auto;padding:32px 24px}.nav{display:flex;gap:20px;padding:16px 24px;border-bottom:1px solid #1f232b}.nav a{text-decoration:none;color:#a8b0bd;font-weight:500}.nav a:hover{color:#e6e8eb}.card{background:#12151c;border:1px solid #1f232b;border-radius:10px;padding:20px;margin-bottom:16px}.project-card-link{display:block;text-decoration:none;color:inherit;transition:border-color .15s}.project-card-link:hover{border-color:var(--cdc-blue-light)}.card h3{margin:0 0 8px;font-size:14px;color:#a8b0bd;font-weight:500}.card .value{font-size:28px;font-weight:600}.status-ok{color:#4ade80}.status-error{color:#f87171}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:10px 8px;border-bottom:1px solid #1f232b}th{color:#a8b0bd;font-weight:500;font-size:13px}:root{--cdc-blue:#1d4e89;--cdc-blue-light:#3a72b8;--cdc-gold:#c9a227;--cdc-red:#a8342a}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:380px;background:#12151c;border:1px solid #1f232b;border-top:3px solid var(--cdc-blue);border-radius:10px;padding:28px}.auth-card h1{margin:0 0 6px;font-size:22px}.auth-sub{color:#a8b0bd;font-size:14px;margin:0 0 20px}.auth-card form,.card form{display:flex;flex-direction:column;gap:6px}.auth-card label,.card label{font-size:13px;color:#a8b0bd;margin-top:10px}.auth-card input,.card input,.card select{background:#0b0d12;border:1px solid #1f232b;border-radius:6px;padding:10px 12px;color:#e6e8eb;font-size:14px;width:100%}.auth-card input:focus,.card input:focus{outline:2px solid var(--cdc-blue-light);outline-offset:1px}.auth-card form button,.card form button{margin-top:18px;background:var(--cdc-blue);color:#fff;border:none;border-radius:6px;padding:11px 16px;font-size:14px;font-weight:600;cursor:pointer;align-self:flex-start}.auth-card form button:disabled,.card form button:disabled{opacity:.6;cursor:default}.auth-card form button:hover:not(:disabled),.card form button:hover:not(:disabled){background:var(--cdc-blue-light)}.auth-hint{font-size:13px;color:#a8b0bd;margin:4px 0}.auth-error{color:#f87171}.auth-error,.auth-success{font-size:13px;margin:4px 0 0}.auth-success{color:#4ade80}.auth-footer{margin-top:18px;font-size:13px;color:#a8b0bd}.portal-nav{justify-content:space-between;padding:14px 24px;border-bottom:1px solid #1f232b;flex-wrap:wrap;gap:12px}.portal-brand,.portal-nav{display:flex;align-items:center}.portal-brand{gap:10px;font-weight:600;font-size:14px}.portal-brand-logo{width:30px;height:30px;border-radius:6px;object-fit:cover}.portal-nav-links{display:flex;align-items:center;gap:18px}.portal-nav-links a{text-decoration:none;color:#a8b0bd;font-weight:500;font-size:14px;padding-bottom:4px;border-bottom:2px solid transparent}.portal-nav-links a.active,.portal-nav-links a:hover{color:#e6e8eb;border-bottom-color:var(--cdc-blue-light)}.portal-link-button{background:none;border:1px solid #1f232b;color:#a8b0bd;border-radius:6px;padding:6px 12px;font-size:13px;cursor:pointer}.portal-link-button:hover{color:#e6e8eb;border-color:var(--cdc-blue-light)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px}.card-link{color:var(--cdc-blue-light);font-size:13px;font-weight:600;text-decoration:none}.mono{font-family:ui-monospace,monospace}.status-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:13px;font-weight:600}.status-active{background:rgba(74,222,128,.15);color:#4ade80}.status-pending{background:rgba(201,162,39,.18);color:var(--cdc-gold)}.status-completed{background:rgba(74,222,128,.15);color:#4ade80}.status-on-hold,.status-planning{background:rgba(168,176,189,.15);color:#a8b0bd}.status-cancelled,.status-expired,.status-inactive,.status-suspended{background:rgba(168,52,42,.18);color:#f87171}.profile-readonly{display:flex;gap:32px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #1f232b}.id-card{max-width:420px;background:linear-gradient(155deg,var(--cdc-blue),#0f3460);border-radius:14px;padding:22px;color:#fff}.id-card-header{display:flex;align-items:center;gap:12px;margin-bottom:18px}.id-card-logo{width:40px;height:40px;border-radius:8px;object-fit:cover}.id-card-org{font-weight:700;font-size:15px}.id-card-sub{font-size:12px;opacity:.8}.id-card-body{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.id-card-name{font-size:18px;font-weight:700;margin-bottom:4px}.id-card-body .auth-hint{color:hsla(0,0%,100%,.75)}.id-card-body .status-badge{margin:6px 0}.id-card-qr{width:110px;height:110px;background:#fff;border-radius:8px;padding:6px}.id-card-actions{display:flex;gap:14px;margin-top:20px;padding-top:16px;border-top:1px solid hsla(0,0%,100%,.15)}.id-card-actions a,.id-card-actions button{color:#fff;background:hsla(0,0%,100%,.12);border:1px solid hsla(0,0%,100%,.25);border-radius:6px;padding:8px 14px;font-size:13px;text-decoration:none;cursor:pointer}.id-card-actions button:disabled{opacity:.6;cursor:default}.dues-tier-list{display:flex;flex-direction:column;gap:8px;margin:12px 0 16px}.dues-tier{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #1f232b;border-radius:8px;cursor:pointer}.dues-tier.selected{border-color:var(--cdc-blue-light);background:rgba(58,114,184,.08)}.dues-tier-name{flex:1 1;font-weight:500}.dues-tier-price{color:#a8b0bd;font-size:13px;font-family:ui-monospace,monospace}.donate-amounts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.donate-amount{background:#0b0d12;border:1px solid #1f232b;color:#e6e8eb;border-radius:6px;padding:8px 14px;font-size:14px;cursor:pointer}.donate-amount.selected{border-color:var(--cdc-blue-light);background:rgba(58,114,184,.15)}.donate-custom-amount{width:110px;background:#0b0d12;border:1px solid #1f232b;border-radius:6px;padding:8px 12px;color:#e6e8eb;font-size:14px}.tbl-wrap-scroll{overflow-x:auto}.link-button{background:none;border:none;color:#e6e8eb;font-size:14px;font-weight:500;cursor:pointer;padding:0;text-align:left}.link-button:hover{color:var(--cdc-blue-light)}.selected-row{background:rgba(58,114,184,.08)}.card select{margin-bottom:8px}table select{background:#0b0d12;border:1px solid #1f232b;border-radius:6px;padding:5px 8px;color:#e6e8eb;font-size:13px}