:root{--bg:#f4f6f9;--card:#fff;--border:#e2e6ec;--text:#1f2733;--muted:#6b7685;--primary:#1d4ed8;--primary-d:#1740a6;--danger:#c0392b;--success-bg:#e6f6ec;--success-fg:#1d6f3f;--error-bg:#fdecea;--error-fg:#b03228;--radius:10px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.centered{min-height:100vh;color:var(--muted);place-items:center;display:grid}.app-shell{min-height:100vh}.topbar{background:var(--card);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:1.5rem;height:60px;padding:0 1.5rem;display:flex;position:sticky;top:0}.brand{color:var(--primary);font-weight:700}.nav{flex:1;gap:1rem;display:flex}.nav a{color:var(--muted);padding:.35rem 0;font-weight:500}.nav a.active{color:var(--text);border-bottom:2px solid var(--primary)}.user-box{align-items:center;gap:.75rem;display:flex}.who{color:var(--muted);align-items:center;gap:.4rem;font-size:.9rem;display:flex}.badge{background:var(--primary);color:#fff;text-transform:uppercase;border-radius:999px;padding:1px 6px;font-size:.65rem}.content{max-width:1100px;margin:0 auto;padding:1.5rem}.page h1{margin:0 0 1rem;font-size:1.5rem}.page-head{justify-content:space-between;align-items:center;display:flex}.muted{color:var(--muted)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.member-card{flex-direction:column;gap:.75rem;display:flex}.member-head h3{margin:0;font-size:1.05rem}.member-contact{flex-direction:column;gap:2px;font-size:.85rem;display:flex}.member-contact .seat{color:var(--muted)}.stats{border-top:1px solid var(--border);gap:.5rem;padding-top:.75rem;display:flex}.stat{text-align:center;flex:1}.stat strong{color:var(--primary);font-size:1.2rem;display:block}.stat span{color:var(--muted);text-transform:uppercase;font-size:.7rem}.form-card{margin-bottom:1.5rem}.form-card h3{margin-top:0}label{margin-bottom:.75rem;font-size:.85rem;font-weight:500;display:block}input,select,textarea{border:1px solid var(--border);width:100%;font:inherit;background:#fff;border-radius:6px;margin-top:4px;padding:.5rem .6rem;display:block}input:disabled{color:var(--muted);background:#f0f2f5}textarea{resize:vertical;min-height:70px}.form-row{flex-wrap:wrap;gap:1rem;display:flex}.form-row>label{flex:1;min-width:160px}label.check{align-items:center;gap:.5rem;font-weight:400;display:flex}label.check input{width:auto;margin:0}.form-actions{align-items:center;gap:.75rem;display:flex}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.btn{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;text-align:center;background:#fff;border-radius:6px;padding:.55rem 1.1rem;font-weight:500;display:inline-block}.btn:hover{background:#f5f7fa;text-decoration:none}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-d)}.btn:disabled{opacity:.6;cursor:default}.btn-link{color:var(--primary);cursor:pointer;font:inherit;background:0 0;border:none;padding:0 .4rem}.btn-link.danger{color:var(--danger)}.table{border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem .75rem;font-size:.9rem}.table th{color:var(--muted);background:#f7f9fb;font-weight:600}.table tr.archived{color:var(--muted);background:#fafafa}.row-actions{white-space:nowrap}.alert{border-radius:6px;margin-bottom:1rem;padding:.6rem .85rem;font-size:.9rem}.alert.success{background:var(--success-bg);color:var(--success-fg)}.alert.error{background:var(--error-bg);color:var(--error-fg)}.auth-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-card{width:100%;max-width:380px}.auth-card h1{margin:0 0 .25rem;font-size:1.35rem}.auth-card .btn{width:100%;margin-top:.5rem}.auth-links{justify-content:space-between;margin-top:1rem;font-size:.85rem;display:flex}
