.hero{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;min-height:280px;padding:36px 40px;color:#fff;border-radius:var(--radius-xl);overflow:hidden;background:radial-gradient(ellipse at 80% 10%,var(--bordo-glow),transparent 45%),radial-gradient(ellipse at 10% 90%,rgba(184,149,63,.06),transparent 45%),linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.04);position:relative}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.01) 0px,transparent 1px,transparent 60px),repeating-linear-gradient(0deg,rgba(255,255,255,.01) 0px,transparent 1px,transparent 60px);pointer-events:none}.hero .eyebrow{color:var(--gold-light);letter-spacing:.12em}.hero h1{margin:6px 0 10px;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.1;letter-spacing:-.02em;font-weight:800;position:relative;z-index:1}.hero p{color:#ffffff80;font-size:.92rem;line-height:1.6;max-width:500px;position:relative;z-index:1}.hero-content{position:relative;z-index:1}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;position:relative;z-index:1}.hero-actions .btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-light));color:var(--navy);box-shadow:var(--shadow-gold);font-size:.88rem;padding:10px 20px}.hero-actions .btn-primary:hover{box-shadow:0 8px 36px #b8953f40}.hero-actions .btn-ghost{color:var(--gold-light);background:#b8953f14;border-color:#b8953f1f;font-size:.88rem;padding:10px 20px}.hero-visual{display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;z-index:1}.hero-logo{width:120px;height:120px;object-fit:contain;padding:12px;background:#ffffffe6;border-radius:24px;box-shadow:0 12px 40px #00000040}.hero-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.hero-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;background:#b8953f0f;border:1px solid rgba(184,149,63,.1);border-radius:8px;font-weight:750;font-size:.78rem;color:var(--gold-light)}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr) 1.5fr;gap:12px;margin-bottom:20px}.quick-stat{display:flex;flex-direction:column;gap:5px;padding:16px;border-radius:var(--radius-lg);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));transition:all .3s var(--ease)}.quick-stat:hover{box-shadow:var(--shadow);transform:translateY(-2px);border-color:var(--gold-border)}.quick-stat span{font-size:.68rem;font-weight:800;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}.quick-stat strong{font-size:1.6rem;font-weight:900;color:var(--bordo);line-height:1}.quick-stat p{font-size:.82rem;color:var(--muted)}.quick-stat.wide{grid-column:auto}.featured-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:4px}.featured-strip button{display:flex;flex-direction:column;gap:3px;padding:10px;text-align:left;border-radius:var(--radius-sm);background:var(--surface-solid);border:1px solid var(--line);transition:all var(--transition)}.featured-strip button:hover{border-color:var(--gold-border);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.featured-strip button strong{font-size:.78rem;line-height:1.2;color:var(--ink)}.featured-strip small{color:var(--bordo);font-weight:800;font-size:.72rem}.discover-layout{display:grid;grid-template-columns:1fr 380px;gap:16px;align-items:start}.discover-main{padding:20px}.discover-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.discover-filter-label{font-size:.82rem;font-weight:700;color:var(--muted);white-space:nowrap}.discover-unit-select{flex:1;min-height:38px;padding:0 12px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:.85rem;color:var(--ink);outline:none;transition:all var(--transition);max-width:280px}.discover-unit-select:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.toolbar{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.searchbox{display:flex;align-items:center;gap:10px;padding:0 14px;min-height:44px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);transition:all var(--transition)}.searchbox:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.searchbox svg{color:var(--muted);flex-shrink:0}.searchbox input{flex:1;border:0;outline:none;background:transparent;font-size:.88rem;color:var(--ink)}.searchbox input::placeholder{color:var(--muted)}.filter-strip{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.filter-strip::-webkit-scrollbar{display:none}.filter-strip button{flex-shrink:0;padding:5px 12px;border-radius:18px;font-size:.76rem;font-weight:700;color:var(--ink-secondary);background:var(--surface-solid);border:1px solid var(--line);transition:all var(--transition);white-space:nowrap}.filter-strip button:hover{border-color:var(--gold-border);color:var(--ink)}.filter-strip button.active{color:#fff;background:linear-gradient(135deg,var(--bordo),var(--bordo-deep));border-color:transparent;box-shadow:0 2px 10px #8b1a2b1f}.club-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.club-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));transition:all .3s var(--ease);position:relative}.club-card:hover{border-color:var(--gold-border);box-shadow:var(--shadow-card-hover);transform:translateY(-6px)}.club-card.selected{border-color:var(--gold);box-shadow:var(--shadow),0 0 0 2px #b8953f1f}.club-cover{display:flex;align-items:flex-start;justify-content:space-between;min-height:100px;padding:12px;background:var(--cover);position:relative}.club-cover img{width:42px;height:42px;object-fit:contain;padding:4px;background:#ffffffe0;border-radius:10px;box-shadow:0 4px 12px #0000001f}.club-rank{color:var(--gold-light);font-weight:850;font-size:.76rem}.club-body{display:flex;flex-direction:column;gap:8px;padding:14px}.club-body h3{font-size:.9rem;line-height:1.25;font-weight:750;min-height:36px;color:var(--ink)}.club-body p{font-size:.82rem;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.club-meta{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--ink-secondary)}.club-meta span{display:flex;align-items:center;gap:5px}.club-meta svg{color:var(--gold);opacity:.6;width:13px;height:13px}.detail-panel{position:sticky;top:20px;padding:0;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 40px);overflow-y:auto}.detail-panel::-webkit-scrollbar{width:3px}.detail-panel::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}.detail-cover{display:flex;gap:12px;align-items:center;min-height:120px;padding:18px;color:#fff;background:var(--cover);border-radius:var(--radius-lg)}.detail-cover img{width:54px;height:54px;object-fit:contain;padding:6px;background:#ffffffe6;border-radius:12px;box-shadow:0 6px 20px #0000002e}.detail-cover span{color:#ffffff80;font-size:.76rem;font-weight:600}.detail-cover h2{margin-top:3px;font-family:var(--font-display);font-size:1.05rem;line-height:1.15}.detail-body{display:flex;flex-direction:column;gap:12px}.detail-description{color:var(--muted);line-height:1.6;font-size:.88rem}.detail-metrics,.detail-people{display:grid;grid-template-columns:1fr 1fr;gap:8px}.detail-metrics>div,.detail-people>div{display:flex;flex-direction:column;gap:3px;padding:10px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);transition:all var(--transition)}.detail-metrics>div:hover,.detail-people>div:hover{border-color:var(--gold-border)}.detail-metrics span,.detail-people span{font-size:.68rem;font-weight:750;text-transform:uppercase;color:var(--muted)}.detail-metrics strong{color:var(--bordo);font-size:1rem}.detail-people strong{font-size:.82rem;color:var(--ink);overflow-wrap:anywhere}.join-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.join-flow>div{display:flex;align-items:center;justify-content:center;gap:4px;padding:7px;background:var(--gold-soft);border-radius:var(--radius-sm);font-size:.74rem;font-weight:750;color:var(--gold);border:1px solid var(--gold-border)}.detail-events{display:flex;flex-direction:column;gap:6px}.detail-events h3,.detail-board h3{font-size:.88rem;font-weight:800;margin-bottom:3px;color:var(--ink)}.detail-empty-note{margin:0;padding:10px;color:var(--muted);font-size:.82rem;background:var(--surface-solid);border:1px dashed var(--line);border-radius:var(--radius-sm)}.btn-events-link{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 18px;margin-top:4px;border-radius:var(--radius-sm);font-weight:750;font-size:.88rem;color:#fff;background:linear-gradient(135deg,var(--bordo),var(--bordo-deep));box-shadow:0 4px 16px #8b1a2b1f;transition:all .3s var(--ease)}.btn-events-link:hover{transform:translateY(-2px);box-shadow:0 8px 24px #8b1a2b33}.btn-events-link svg:last-child{margin-left:auto;opacity:.6}.detail-board{display:flex;flex-direction:column;gap:5px}.board-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);transition:all var(--transition)}.board-row:hover{border-color:var(--gold-border)}.board-row svg{color:var(--gold);flex-shrink:0}.board-row div{display:flex;flex-direction:column;gap:1px;min-width:0}.board-row span{font-size:.72rem;color:var(--muted);font-weight:650}.board-row strong{font-size:.82rem;color:var(--ink);overflow-wrap:anywhere}@media(max-width:1120px){.hero{grid-template-columns:1fr;min-height:auto;padding:28px}.hero-visual{flex-direction:row;justify-content:flex-start;gap:10px}.hero-logo{width:80px;height:80px;padding:8px}.quick-stats{grid-template-columns:repeat(2,1fr)}.quick-stat.wide{grid-column:1 / -1}.discover-layout{grid-template-columns:1fr}.detail-panel{position:static;max-height:none}}@media(max-width:900px){.hero{padding:20px 16px;gap:12px;border-radius:16px}.hero h1{font-size:1.3rem}.hero p{font-size:.84rem}.hero-logo{width:60px;height:60px;padding:6px;border-radius:14px}.hero-actions .btn-primary,.hero-actions .btn-ghost{width:100%;justify-content:center}.quick-stats{grid-template-columns:1fr 1fr;gap:8px}.quick-stat{padding:12px}.quick-stat strong{font-size:1.3rem}.featured-strip{grid-template-columns:1fr}.club-grid{grid-template-columns:1fr;gap:10px}.discover-main,.detail-panel{padding:14px}.detail-metrics,.detail-people,.join-flow{grid-template-columns:1fr}.discover-filter-row{flex-direction:column;align-items:stretch}.discover-unit-select{max-width:none}}.events-page{display:flex;flex-direction:column;gap:20px}.events-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 32px;border-radius:var(--radius-xl);color:#fff;overflow:hidden;position:relative;background:radial-gradient(ellipse at 85% 20%,var(--bordo-glow),transparent 50%),radial-gradient(ellipse at 10% 80%,rgba(184,149,63,.06),transparent 45%),linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);border:1px solid rgba(255,255,255,.04);box-shadow:var(--shadow-lg)}.events-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.01) 0,transparent 1px,transparent 50px),repeating-linear-gradient(0deg,rgba(255,255,255,.01) 0,transparent 1px,transparent 50px);pointer-events:none}.events-hero-content{position:relative;z-index:1}.events-hero-content .eyebrow{color:var(--gold-light)}.events-hero-content h1{font-family:var(--font-display);font-size:clamp(1.3rem,2.5vw,2rem);font-weight:800;margin:6px 0 8px;line-height:1.1}.events-hero-content p{color:#ffffff73;font-size:.88rem}.events-hero-stats{display:flex;gap:12px;position:relative;z-index:1;flex-shrink:0}.events-stat{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);background:#ffffff0f;border:1px solid rgba(255,255,255,.06)}.events-stat svg{color:var(--gold-light);flex-shrink:0}.events-stat strong{font-size:1.1rem;font-weight:900;color:#fff}.events-stat span{font-size:.7rem;color:#fff6;display:block}.events-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.events-search{flex:1;min-width:200px}.events-club-filter-tag{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:700;background:var(--gold-soft);color:var(--gold);border:1px solid var(--gold-border);border-radius:20px}.events-club-filter-tag:hover{background:var(--gold-border)}.events-club-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.events-club-strip::-webkit-scrollbar{display:none}.events-club-chip{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:8px 14px;border-radius:20px;background:var(--glass-bg);border:1px solid var(--glass-border);font-size:.82rem;font-weight:700;color:var(--ink);transition:all .25s var(--ease);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.events-club-chip:hover{border-color:var(--gold-border);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.events-club-chip img{width:24px;height:24px;border-radius:6px;object-fit:contain;background:var(--surface-solid);padding:2px}.events-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;background:var(--bordo);color:#fff;border-radius:10px;font-size:.68rem;font-weight:850}.events-section{display:flex;flex-direction:column;gap:12px}.events-section-title{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:1.05rem;font-weight:800;color:var(--ink)}.events-section-title svg{color:var(--bordo)}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:12px}.event-card{display:flex;align-items:stretch;gap:0;padding:0;cursor:pointer;border-radius:var(--radius-lg);overflow:hidden;transition:all .3s var(--ease)}.event-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover);border-color:var(--gold-border)}.event-card.past{opacity:.75}.event-card.past:hover{opacity:1}.event-card-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;padding:12px 8px;background:linear-gradient(135deg,var(--bordo),var(--bordo-deep));color:#fff}.event-card-date.past{background:linear-gradient(135deg,var(--navy),var(--navy-light))}.event-card-day{font-size:1.5rem;font-weight:900;line-height:1}.event-card-month{font-size:.72rem;font-weight:700;text-transform:uppercase;opacity:.7}.event-card-body{flex:1;display:flex;flex-direction:column;gap:6px;padding:14px 16px;min-width:0}.event-card-club{display:flex;align-items:center;gap:6px;margin-bottom:2px}.event-card-club img{width:20px;height:20px;border-radius:5px;object-fit:contain;background:var(--surface-solid);padding:1px}.event-card-club span{font-size:.72rem;font-weight:700;color:var(--bordo)}.event-card-body h3{font-size:.9rem;font-weight:750;line-height:1.3;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-card-body p{font-size:.8rem;color:var(--muted);line-height:1.4}.event-card-meta{display:flex;gap:12px;margin-top:auto;font-size:.74rem;font-weight:650;color:var(--muted)}.event-card-meta span{display:flex;align-items:center;gap:4px}.event-card-meta svg{color:var(--gold);opacity:.6}.event-card-arrow{color:var(--muted);flex-shrink:0;align-self:center;margin-right:12px}.event-detail-page{display:flex;flex-direction:column;gap:20px}.event-detail-back{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:.84rem;font-weight:700;color:var(--ink-secondary);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);transition:all var(--transition);width:fit-content}.event-detail-back:hover{border-color:var(--gold-border);color:var(--ink)}.event-detail-hero{position:relative;min-height:200px;border-radius:var(--radius-xl);overflow:hidden;display:flex;align-items:flex-end}.event-detail-hero-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 80% 20%,var(--bordo-glow),transparent 50%),linear-gradient(135deg,var(--navy) 0%,var(--bordo-deep) 100%)}.event-detail-hero-content{position:relative;z-index:1;padding:28px 32px;color:#fff;display:flex;flex-direction:column;gap:10px}.event-detail-date-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;width:fit-content;background:#b8953f1a;border:1px solid rgba(184,149,63,.15);border-radius:8px;font-size:.8rem;font-weight:750;color:var(--gold-light)}.event-detail-hero-content h1{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem);font-weight:800;line-height:1.1}.event-detail-club-info{display:flex;align-items:center;gap:10px}.event-detail-club-info img{width:36px;height:36px;border-radius:10px;padding:4px;background:#ffffffe6;object-fit:contain}.event-detail-club-info strong{font-size:.88rem}.event-detail-club-info span{font-size:.76rem;color:#ffffff73;display:block}.event-detail-grid{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}.event-detail-main{padding:24px;display:flex;flex-direction:column;gap:16px}.event-detail-main h2{font-family:var(--font-display);font-size:1.1rem;font-weight:800;color:var(--ink)}.event-detail-description{color:var(--muted);font-size:.9rem;line-height:1.75;white-space:pre-wrap}.event-detail-sidebar{display:flex;flex-direction:column;gap:12px}.event-info-card{padding:20px;display:flex;flex-direction:column;gap:14px}.event-info-card h3{font-size:.88rem;font-weight:800;color:var(--ink);margin-bottom:2px}.event-info-row{display:flex;align-items:flex-start;gap:10px}.event-info-row svg{color:var(--bordo);flex-shrink:0;margin-top:2px}.event-info-row span{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase}.event-info-row strong{font-size:.86rem;color:var(--ink);display:block}.event-status-card{padding:16px}.event-status-indicator{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);font-size:.84rem;font-weight:750}.event-status-indicator.upcoming{background:#16805b0f;color:var(--green);border:1px solid rgba(22,128,91,.12)}.event-status-indicator.past{background:var(--surface-solid);color:var(--muted);border:1px solid var(--line)}.events-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:60px 20px;text-align:center}.events-empty svg{color:var(--muted);opacity:.3}.events-empty h3{font-size:1.05rem;font-weight:800;color:var(--ink)}.events-empty p{color:var(--muted);font-size:.88rem}@media(max-width:1120px){.events-hero{flex-direction:column;align-items:flex-start;gap:16px}.events-hero-stats{flex-wrap:wrap}.event-detail-grid{grid-template-columns:1fr}}@media(max-width:900px){.events-hero{padding:20px;border-radius:16px}.events-hero-content h1{font-size:1.2rem}.events-hero-stats{gap:6px}.events-stat{padding:8px 10px}.events-stat strong{font-size:.92rem}.events-grid{grid-template-columns:1fr}.event-card-date{min-width:52px}.events-club-strip{gap:6px}.events-club-chip{padding:6px 10px;font-size:.78rem}.event-detail-hero-content{padding:20px}.event-detail-hero-content h1{font-size:1.2rem}.event-detail-main{padding:16px}}.club-panel-page{display:flex;flex-direction:column;gap:16px}.login-page{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch;min-height:calc(100vh - 120px)}.login-visual{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:48px;color:#fff;border-radius:var(--radius-xl);background:radial-gradient(circle at 75% 15%,var(--bordo-glow),transparent 40%),radial-gradient(circle at 20% 85%,rgba(184,149,63,.06),transparent 40%),linear-gradient(135deg,var(--navy) 0%,var(--bordo-deep) 100%);box-shadow:var(--shadow-lg);border:1px solid rgba(184,149,63,.06);position:relative;overflow:hidden}.login-visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 50%,rgba(184,149,63,.03) 100%);pointer-events:none}.login-visual img{width:100px;height:100px;object-fit:contain;padding:10px;background:#ffffffeb;border-radius:20px;box-shadow:0 16px 48px #0000004d;position:relative;z-index:1}.login-visual .eyebrow{color:var(--gold);position:relative;z-index:1}.login-visual h1{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.06;font-weight:800;position:relative;z-index:1}.login-visual p{color:#ffffff80;font-size:.95rem;line-height:1.6;max-width:480px;position:relative;z-index:1}.login-features{display:flex;flex-wrap:wrap;gap:8px;position:relative;z-index:1}.login-features span{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;background:#b8953f0f;border:1px solid rgba(184,149,63,.1);border-radius:var(--radius-sm);font-weight:750;font-size:.8rem;color:var(--gold-light)}.login-form{display:flex;flex-direction:column;justify-content:center;gap:16px;padding:40px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.login-form h2{font-family:var(--font-display);font-size:1.8rem;font-weight:900;color:var(--ink)}.login-form>div>p{color:var(--muted);line-height:1.5}.login-form label{display:flex;flex-direction:column;gap:6px}.login-form label span{font-size:.85rem;font-weight:750;color:var(--ink-secondary)}.login-form input{width:100%;min-height:48px;padding:0 14px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;font-size:.92rem;color:var(--ink);transition:all var(--transition)}.login-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b8953f14}.login-form input::placeholder{color:var(--muted)}.password-field{position:relative}.password-field input{padding-right:44px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);padding:6px;color:var(--muted);border-radius:4px}.password-toggle:hover{color:var(--gold)}.login-error{display:flex;align-items:center;gap:8px;padding:10px 14px;color:#fca5a5;background:#b423181f;border:1px solid rgba(180,35,24,.2);border-radius:var(--radius-sm);font-weight:700;font-size:.88rem}.spinner{width:18px;height:18px;border:2px solid rgba(12,18,34,.3);border-top-color:var(--navy);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.create-club-page{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;align-items:start}.creation-gate{padding:28px;display:flex;flex-direction:column;gap:18px}.gate-header svg{color:var(--orange)}.gate-header h2{margin:8px 0 4px;font-size:1.4rem}.gate-header p{color:var(--muted);line-height:1.6}.gate-status{display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--radius-sm);background:#b8953f0a;border:1px solid rgba(184,149,63,.1);color:var(--gold)}.gate-status.open{background:#16805b0f;border-color:#16805b26;color:#34d399}.gate-status-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:var(--line)}.gate-status.open .gate-status-icon{background:#16805b1f}.gate-status strong{font-size:1.05rem;display:block;color:var(--ink)}.gate-status span{font-size:.85rem}.creation-form{padding:24px;display:flex;flex-direction:column;gap:14px}.creation-form h2{font-size:1.4rem}.creation-form label{display:flex;flex-direction:column;gap:6px}.creation-form label span{font-size:.85rem;font-weight:700;color:var(--ink-secondary)}.creation-form input,.creation-form textarea{width:100%;padding:10px 14px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;font-size:.92rem;transition:border-color var(--transition)}.creation-form input:focus,.creation-form textarea:focus{border-color:var(--gold)}.creation-form textarea{min-height:140px;resize:vertical}.creation-form input:disabled,.creation-form textarea:disabled{opacity:.5;cursor:not-allowed}.form-hint{font-size:.85rem;color:var(--muted);font-style:italic}.status-page{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.status-card{padding:24px;display:flex;flex-direction:column;gap:12px}.status-icon{width:48px;height:48px;border-radius:var(--radius-sm);display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-light))}.status-card h3{font-size:1.1rem}.status-card p{color:var(--muted);line-height:1.55;font-size:.9rem}.status-progress{display:flex;align-items:center;gap:0;margin-top:8px}.progress-step{display:flex;flex-direction:column;align-items:center;gap:6px;flex:0 0 auto}.step-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);background:var(--surface-solid);transition:all var(--transition)}.progress-step.completed .step-dot{background:var(--green);border-color:var(--green)}.progress-step span{font-size:.72rem;font-weight:700;color:var(--muted)}.progress-line{flex:1;height:2px;background:var(--line);min-width:20px}.badges-section{grid-column:1 / -1}.badges-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:8px}.badge-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 12px;text-align:center;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-solid);transition:all var(--transition)}.badge-item.locked{opacity:.4;filter:grayscale(.8)}.badge-item.unlocked{border-color:#f7941d4d}.badge-item.unlocked:hover{box-shadow:0 4px 16px #f7941d26;transform:translateY(-2px)}.badge-icon{color:var(--orange)}.badge-item strong{font-size:.82rem}.badge-item span{font-size:.75rem;color:var(--muted)}.club-panel-page{display:flex;flex-direction:column;gap:20px}.my-club-hero{display:flex;align-items:center;gap:24px;padding:32px;color:#fff;border-radius:var(--radius-xl);overflow:hidden;background:radial-gradient(circle at 82% 16%,var(--bordo-glow),transparent 40%),radial-gradient(circle at 10% 90%,rgba(184,149,63,.06),transparent 40%),var(--cover, linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%));box-shadow:var(--shadow-lg);border:1px solid rgba(184,149,63,.06)}.my-club-hero img{width:68px;height:68px;object-fit:contain;padding:8px;background:#ffffffeb;border-radius:18px;box-shadow:0 8px 28px #00000040;flex-shrink:0}.my-club-hero .eyebrow{display:inline-block;padding:4px 12px;color:var(--gold);background:#b8953f14;border:1px solid rgba(184,149,63,.12);border-radius:8px;margin-bottom:4px}.my-club-hero h2{margin:6px 0 2px;font-family:var(--font-display);font-size:clamp(1.3rem,3vw,1.8rem);line-height:1.1}.my-club-hero p{color:#ffffff73;font-size:.88rem}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat-card{display:flex;flex-direction:column;gap:8px;padding:20px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .3s var(--ease);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.stat-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.stat-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--bordo),var(--bordo-deep));box-shadow:0 4px 12px #8b1a2b26}.stat-label{font-size:.76rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.7rem;font-weight:900;line-height:1;color:var(--bordo)}.panel-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel-two-col .glass-panel{padding:20px}.panel-heading{display:flex;align-items:center;gap:8px;margin-bottom:14px}.panel-heading svg{color:var(--gold)}.panel-heading h2{font-size:1.1rem;flex:1}.panel-heading .btn-approve{margin-left:4px}.badge-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 8px;background:#b8953f1a;color:var(--gold);border-radius:12px;font-size:.78rem;font-weight:800}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.board-member-card{display:flex;align-items:center;gap:10px;padding:12px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);transition:all var(--transition)}.board-member-card:hover{border-color:#b8953f33;box-shadow:var(--shadow-sm)}.board-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--blue),var(--teal))}.board-member-card>div:last-child{display:flex;flex-direction:column;gap:1px;min-width:0}.board-member-card strong{font-size:.85rem;overflow-wrap:anywhere}.board-member-card span{font-size:.76rem;color:var(--muted);font-weight:650}.board-member-card small{font-size:.72rem;color:var(--teal);overflow-wrap:anywhere}.event-list{display:flex;flex-direction:column;gap:8px}.managed-club-switcher{padding:16px 20px}.managed-club-switcher>span{display:block;margin-bottom:8px;font-size:.82rem;font-weight:750;color:var(--ink-secondary)}.managed-club-tabs{display:flex;flex-wrap:wrap;gap:8px}.managed-club-tabs button{min-height:38px;padding:0 12px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-secondary);font-size:.86rem;font-weight:750;transition:all var(--transition)}.managed-club-tabs button:hover,.managed-club-tabs button.active{color:var(--gold);border-color:#b8953f47;background:var(--line)}.managed-club-select{width:100%;min-height:44px;padding:0 14px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:.92rem;font-weight:750;outline:none}.managed-club-select:focus{border-color:#b8953f59;box-shadow:0 0 0 3px #b8953f14}.advisor-management-panel{padding:0;margin-bottom:1.5rem;overflow:hidden}.advisor-management-panel .panel-heading{padding:18px 22px;border-bottom:1px solid var(--line)}.advisor-management-body{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(280px,1.25fr);gap:12px;padding:16px 18px 18px}.advisor-current-card,.advisor-lookup-card{padding:14px;background:var(--glass-bg);border:1px solid rgba(184,149,63,.92);border-radius:8px}.advisor-current-card{display:flex;flex-direction:column;justify-content:center;gap:6px}.advisor-current-card span,.advisor-lookup-card label>span{color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase}.advisor-current-card strong{color:var(--ink);font-size:.96rem;font-weight:850;overflow-wrap:anywhere}.advisor-lookup-card{display:flex;flex-direction:column;gap:10px}.advisor-lookup-card label{display:flex;flex-direction:column;gap:8px}.advisor-lookup-row{display:flex;gap:8px}.advisor-lookup-row input{flex:1;min-width:0;min-height:40px;padding:0 12px;background:var(--surface-solid);border:1px solid rgba(184,149,63,.95);border-radius:8px;outline:none;color:var(--text);font-size:.9rem}.advisor-lookup-row input:focus{border-color:#b8953f59;box-shadow:0 0 0 3px #b8953f14}.advisor-lookup-row .btn-lookup{width:40px;height:40px;border-radius:8px}.advisor-status{color:var(--muted);font-size:.82rem;font-weight:750}.advisor-status.error{color:var(--red)}.advisor-candidate-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;background:#10b9810f;border:1px solid rgba(16,185,129,.16);border-radius:8px}.advisor-candidate-preview>div{display:flex;flex-direction:column;gap:2px;min-width:0}.advisor-candidate-preview strong{color:var(--ink);font-size:.92rem;font-weight:850;overflow-wrap:anywhere}.advisor-candidate-preview span{color:var(--muted);font-size:.8rem;font-weight:750}.president-nomination-panel{padding:20px}.president-nomination-form{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1fr) auto;gap:12px;align-items:end}.president-nomination-form.compact{grid-template-columns:minmax(260px,1fr) auto}.president-nomination-form label{display:flex;flex-direction:column;gap:6px}.president-nomination-form label span{font-size:.82rem;font-weight:750;color:var(--ink-secondary)}.president-nomination-form input,.president-nomination-form select{width:100%;min-height:44px;padding:0 12px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none}.president-nomination-form input:focus,.president-nomination-form select:focus{border-color:var(--gold)}.inline-lookup{display:flex;gap:8px}.inline-lookup input{min-width:0}.inline-lookup .btn-ghost{padding:0 14px;min-height:44px;white-space:nowrap}.candidate-preview,.pending-nomination-note{grid-column:1 / -1;padding:12px 14px;border-radius:var(--radius-sm);background:var(--surface-solid);border:1px solid var(--line)}.candidate-preview{display:flex;align-items:center;justify-content:space-between;gap:12px}.candidate-preview span,.pending-nomination-note{color:var(--muted);font-size:.88rem;font-weight:700}.president-info-card{padding:20px}.president-assigned-info{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#10b9810f,#05966908);border:1px solid rgba(16,185,129,.2)}.president-avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#7c3aed,#4f46e5)}.president-assigned-info>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.president-assigned-info>div strong{font-size:.95rem;font-weight:800;color:var(--ink)}.president-assigned-info>div span{font-size:.82rem;color:var(--muted);font-weight:650}.president-check-icon{color:var(--green);flex-shrink:0}.board-role-label{display:block;font-size:.72rem;font-weight:750;color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin-bottom:4px}.board-member-card.president-slot{border-color:#7c3aed26;background:linear-gradient(135deg,#7c3aed08,#4f46e505)}.board-assigned{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.board-assigned strong{font-size:.85rem}.board-assigned small{font-size:.72rem;color:var(--teal);flex-basis:100%}.btn-remove-board{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;margin-left:auto;color:var(--muted);background:transparent;border:1px solid transparent;cursor:pointer;transition:all var(--transition)}.btn-remove-board:hover{color:var(--red);background:#ef444414;border-color:#ef444433}.board-pending-nomination{display:flex;flex-direction:column;gap:3px}.pending-badge{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:800;text-transform:uppercase;color:var(--orange);letter-spacing:.03em}.board-pending-nomination strong{font-size:.85rem}.board-lookup-form{display:flex;flex-direction:column;gap:6px}.board-lookup-input{display:flex;gap:4px;align-items:center}.board-lookup-input input{flex:1;min-width:0;height:30px;padding:0 8px;background:var(--surface-solid);border:1px solid var(--line);border-radius:4px;outline:none;font-size:.8rem;transition:border-color var(--transition)}.board-lookup-input input:focus{border-color:var(--gold)}.board-lookup-status{display:block;font-size:.72rem;color:var(--muted);font-weight:700}.board-lookup-status.error{color:var(--red)}.btn-lookup{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:4px;flex-shrink:0;color:var(--gold);background:#b8953f0f;border:1px solid rgba(184,149,63,.15);cursor:pointer;transition:all var(--transition)}.btn-lookup:hover:not(:disabled){background:#b8953f1f;border-color:#b8953f40}.btn-lookup:disabled{opacity:.4;cursor:not-allowed}.board-candidate-preview{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:4px;background:#10b9810f;border:1px solid rgba(16,185,129,.15)}.board-candidate-preview>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.board-candidate-preview strong{font-size:.82rem;color:var(--ink);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-candidate-preview small{font-size:.7rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-assign-board{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:4px;font-size:.72rem;font-weight:800;color:#fff;background:var(--green);border:none;cursor:pointer;white-space:nowrap;transition:all var(--transition)}.president-slot .btn-assign-board{background:linear-gradient(135deg,#7c3aed,#4f46e5)}.btn-assign-board:hover:not(:disabled){filter:brightness(1.1)}.btn-assign-board:disabled{opacity:.5;cursor:not-allowed}.board-empty-label{font-size:.82rem;color:var(--muted);font-style:italic}.event-add-form{display:flex;flex-direction:column;gap:8px;padding:12px 16px;margin:0 16px 12px;background:var(--surface-solid);border-radius:var(--radius-sm);border:1px dashed var(--line)}.event-form-row{display:flex;gap:8px}.event-form-row input{flex:1;min-width:0;height:34px;padding:0 10px;background:var(--surface);border:1px solid var(--line);border-radius:4px;outline:none;font-size:.82rem;color:var(--text);transition:border-color var(--transition)}.event-form-row input:focus{border-color:var(--gold)}.event-form-row input::placeholder{color:var(--muted)}.event-row{display:flex;align-items:center;gap:8px;min-width:0}.event-row>div{flex:1;min-width:0}.event-row .btn-remove-board{flex-shrink:0;margin-left:auto}.member-panel{padding:0;overflow:hidden}.member-panel .panel-heading{padding:18px 22px;border-bottom:1px solid var(--line)}.member-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#141e30ad}.member-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.member-search{display:flex;align-items:center;gap:9px;flex:1;min-width:180px;max-width:420px;min-height:40px;padding:0 12px;background:var(--surface-solid);border:1px solid rgba(184,149,63,.95);border-radius:8px;transition:border-color var(--transition),box-shadow var(--transition)}.member-search:focus-within{border-color:#b8953f59;box-shadow:0 0 0 3px #b8953f14}.member-search svg{color:var(--muted);flex-shrink:0}.member-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:.88rem;color:var(--text)}.member-page-size{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 10px;background:var(--surface-solid);border:1px solid rgba(184,149,63,.95);border-radius:8px;color:var(--muted);font-size:.8rem;font-weight:800}.member-page-size select{border:0;outline:none;background:transparent;color:var(--text);font:inherit;cursor:pointer}.member-range{display:inline-flex;align-items:center;min-height:40px;padding:0 10px;color:var(--muted);background:#b8953f0f;border:1px solid rgba(184,149,63,.08);border-radius:8px;font-size:.82rem;font-weight:800;white-space:nowrap}.member-list{display:grid;gap:8px;padding:14px;background:#0c122280}.member-row{display:grid;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:14px;min-height:76px;padding:13px 16px;background:var(--glass-bg);border:1px solid rgba(184,149,63,.92);border-radius:8px;box-shadow:0 1px 2px #0000000a;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition),background var(--transition)}.member-row:hover{background:var(--surface-solid);border-color:#00a0b052;box-shadow:0 10px 24px #00000014;transform:translateY(-1px)}.member-avatar{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--blue),var(--teal));font-size:.9rem;font-weight:850;letter-spacing:0;box-shadow:0 8px 20px #b8953f2e;flex-shrink:0}.member-info{display:flex;flex-direction:column;gap:4px;min-width:0}.member-row strong{color:var(--text);font-size:.98rem;font-weight:850;line-height:1.25;white-space:normal;overflow-wrap:anywhere}.member-row span{color:var(--muted);font-size:.84rem;font-weight:750;line-height:1.2}.member-empty-note{margin:14px;padding:14px;color:var(--muted);font-size:.88rem;background:var(--surface-solid);border:1px dashed var(--line);border-radius:var(--radius-sm)}.member-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px 16px;border-top:1px solid var(--line);background:var(--glass-bg)}.member-pagination button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-solid);color:var(--ink-secondary);font-size:.82rem;font-weight:800;cursor:pointer;transition:border-color var(--transition),color var(--transition),box-shadow var(--transition)}.member-pagination button:hover:not(:disabled){border-color:#b8953f47;color:var(--gold);box-shadow:var(--shadow-sm)}.member-pagination button:disabled{opacity:.45;cursor:not-allowed}.member-pagination span{min-width:110px;color:var(--muted);font-size:.84rem;font-weight:850;text-align:center}@media(min-width:960px){.member-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.discover-filter-row{display:flex;align-items:center;gap:12px;padding-bottom:.5rem;border-bottom:1px solid var(--line);flex-wrap:wrap}.discover-filter-label{font-size:.85rem;font-weight:600;color:var(--ink-secondary);white-space:nowrap}.discover-unit-select{padding:8px 32px 8px 16px;border-radius:20px;border:1px solid var(--line);background:var(--surface-solid);color:var(--ink);font-size:.88rem;outline:none;cursor:pointer;flex:1;min-width:0;max-width:350px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;transition:border-color var(--transition)}.discover-unit-select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b8953f14}.chart-section{padding:20px}.chart-tooltip{padding:12px 16px;background:#fffffff2;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:.85rem}.sks-club-search-container{display:flex;flex-direction:column;background:var(--glass-bg);border:1px solid rgba(184,149,63,.92);border-radius:8px;overflow:hidden}.sks-club-list{max-height:240px;overflow-y:auto;border-top:1px solid rgba(184,149,63,.6);border-bottom:1px solid rgba(184,149,63,.6);background:var(--surface-solid)}.sks-club-list-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;padding:10px 14px;background:transparent;border:none;border-bottom:1px solid rgba(184,149,63,.4);cursor:pointer;text-align:left;transition:background var(--transition)}.sks-club-list-item:last-child{border-bottom:none}.sks-club-list-item:hover{background:#b8953f0a}.sks-club-list-item.active{background:#b8953f14;border-left:3px solid var(--blue);padding-left:11px}.sks-club-list-item .club-name{font-size:.88rem;font-weight:800;color:var(--ink)}.sks-club-list-item .club-advisor{font-size:.75rem;color:var(--muted);font-weight:600;margin-top:2px}.sks-club-list-empty{padding:16px;text-align:center;font-size:.85rem;color:var(--muted);font-style:italic}.sks-selected-club-info{padding:12px 14px;background:linear-gradient(135deg,#b8953f08,#00a0b005);display:flex;flex-direction:column;gap:4px}.sks-selected-club-info span{font-size:.75rem;font-weight:800;color:var(--muted);text-transform:uppercase}.sks-selected-club-info strong{font-size:.95rem;font-weight:850;color:var(--ink)}.chart-tooltip strong{display:block;margin-bottom:4px}.approvals-page{display:flex;flex-direction:column;gap:20px}.approvals-list{padding:16px;display:flex;flex-direction:column;gap:10px}.approval-card{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));transition:all .3s var(--ease)}.approval-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px);border-color:var(--gold-border)}.approval-card-header{display:flex;align-items:center;gap:10px}.approval-icon{color:var(--bordo);flex-shrink:0}.approval-info{flex:1;min-width:0}.approval-step{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.approval-card h3{font-size:.95rem;margin-bottom:2px;color:var(--ink);font-weight:750}.approval-club{font-size:.85rem;color:var(--bordo);font-weight:700}.approval-motivation{font-size:.84rem;color:var(--muted);font-style:italic;margin-top:2px}.approval-summary{font-size:.85rem;color:var(--muted);line-height:1.5}.approval-time{font-size:.76rem;color:var(--muted)}.approval-actions{display:flex;gap:8px;flex-shrink:0}.sks-page{display:flex;flex-direction:column;gap:20px}.sks-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:16px;align-items:start}.sks-unlock{padding:24px;display:flex;flex-direction:column;gap:14px}.sks-unlock h2{font-size:1.3rem}.sks-unlock p{color:var(--muted);line-height:1.5}.unlock-form{display:flex;flex-direction:column;gap:12px}.unlock-form label{display:flex;flex-direction:column;gap:5px}.unlock-form label span{font-size:.82rem;font-weight:700;color:var(--ink-secondary)}.unlock-form input{width:100%;min-height:44px;padding:0 12px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition)}.unlock-form input:focus{border-color:var(--gold)}.sks-requests{padding:20px;display:flex;flex-direction:column;gap:12px}.creation-request-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;margin-top:8px}.request-info{flex:1;min-width:0}.request-unit{font-size:.75rem;font-weight:750;color:var(--muted);text-transform:uppercase}.request-info h3{font-size:1.05rem;margin:4px 0 2px}.request-info p{font-size:.88rem;color:var(--muted)}.request-purpose{font-style:italic;margin-top:4px}.empty-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;text-align:center}.empty-icon{color:var(--muted);opacity:.4}.empty-state h3{font-size:1.1rem;color:var(--ink-secondary)}.empty-state p{font-size:.9rem;color:var(--muted);max-width:320px}.countdown-badge{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#b8953f0f,#f7941d0f);border:1px solid rgba(184,149,63,.12)}.countdown-badge>svg{color:var(--gold);flex-shrink:0}.countdown-label{font-size:.82rem;font-weight:700;color:var(--ink-secondary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.countdown-units{display:flex;gap:8px}.countdown-unit{display:flex;flex-direction:column;align-items:center;gap:1px}.countdown-unit strong{font-size:1rem;font-weight:900;color:var(--gold)}.countdown-unit span{font-size:.65rem;font-weight:700;color:var(--muted);text-transform:uppercase}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:400px;width:100%}.toast{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--glass-bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.toast--success{border-left:3px solid var(--green)}.toast--error{border-left:3px solid var(--red)}.toast--warning{border-left:3px solid var(--orange)}.toast--info{border-left:3px solid var(--blue)}.toast-icon{flex-shrink:0}.toast--success .toast-icon{color:var(--green)}.toast--error .toast-icon{color:var(--red)}.toast--warning .toast-icon{color:var(--orange)}.toast--info .toast-icon{color:var(--gold)}.toast-message{flex:1;font-size:.88rem;font-weight:600;color:var(--ink)}.toast-close{padding:4px;color:var(--muted);border-radius:4px;flex-shrink:0}.toast-close:hover{color:var(--ink)}.skeleton-card{border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-solid);border:1px solid var(--line)}.skeleton-cover{height:110px}.skeleton-body{padding:16px;display:flex;flex-direction:column;gap:10px}.skeleton-line{height:14px;border-radius:8px;background:var(--line)}.skeleton-circle{width:40px;height:40px;border-radius:50%;background:var(--line)}.skeleton-stat{display:flex;flex-direction:column;gap:10px;padding:18px;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-lg)}.skeleton-row{margin-bottom:8px}.w-full{width:100%}.w-80{width:80%}.w-60{width:60%}.w-40{width:40%}.shimmer{background:linear-gradient(90deg,var(--line) 25%,var(--line-strong) 50%,var(--line) 75%);background-size:200% 100%;animation:shimmer 1.8s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.confetti-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:10000;pointer-events:none}@media(max-width:1120px){.login-page{grid-template-columns:1fr}.login-visual{min-height:auto;padding:28px}.create-club-page,.status-page{grid-template-columns:1fr}.badges-grid{grid-template-columns:repeat(2,1fr)}.badges-section{grid-column:auto}.panel-two-col,.president-nomination-form{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.sks-layout{grid-template-columns:1fr}.my-club-hero{flex-direction:column;text-align:center}.board-grid{grid-template-columns:1fr}}@media(max-width:900px){.club-panel-page{gap:12px}.glass-panel{border-radius:14px}.hero{padding:20px 16px;gap:16px;border-radius:12px;margin-bottom:14px}.hero h1{font-size:1.4rem}.hero p{font-size:.88rem}.hero-logo{width:70px;height:70px;padding:10px}.hero-actions{flex-direction:column;gap:8px}.hero-actions .btn-primary,.hero-actions .btn-ghost{width:100%;justify-content:center;padding:12px 16px}.hero-badges{gap:6px}.hero-badge{padding:6px 10px;font-size:.78rem}.hero-visual{gap:10px}.quick-stats{grid-template-columns:1fr 1fr;gap:8px}.quick-stat{padding:14px}.quick-stat strong{font-size:1.4rem}.featured-strip{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:14px}.stat-value{font-size:1.4rem}.stat-label{font-size:.72rem}.stat-icon{width:34px;height:34px}.discover-main{padding:14px}.toolbar{gap:10px}.discover-filter-row{flex-direction:column;align-items:stretch;gap:8px}.discover-unit-select{max-width:none}.searchbox{max-width:none!important;min-height:44px}.club-grid{grid-template-columns:1fr;gap:10px}.club-card .club-body h3{min-height:auto}.club-body{padding:12px}.club-cover{min-height:90px;padding:10px}.club-cover img{width:40px;height:40px}.detail-panel{padding:14px}.detail-cover{padding:14px;min-height:100px;flex-direction:column;gap:10px}.detail-cover img{width:50px;height:50px}.detail-cover h2{font-size:1.05rem}.detail-metrics,.detail-people,.join-flow{grid-template-columns:1fr}.my-club-hero{align-items:center;padding:18px 14px;gap:14px;border-radius:12px}.my-club-hero img{width:56px;height:56px}.my-club-hero h2{font-size:1.15rem}.my-club-hero p{font-size:.82rem}.my-club-hero .eyebrow{font-size:.68rem;padding:3px 10px}.panel-heading{gap:6px;flex-wrap:wrap}.panel-heading h2{font-size:.95rem}.panel-two-col .glass-panel{padding:14px}.board-grid{grid-template-columns:1fr}.board-member-card{padding:10px;gap:8px}.board-avatar{width:34px;height:34px}.board-lookup-input input,.board-lookup-input .btn-lookup{height:36px}.board-candidate-preview{align-items:stretch;flex-direction:column;gap:8px}.btn-assign-board{justify-content:center;min-height:34px;width:100%}.event-form-row{flex-direction:column}.event-add-form{margin:0 10px 10px;padding:10px}.event-row{grid-template-columns:42px 1fr;padding:8px;gap:8px}.event-row time{min-height:34px;font-size:.68rem}.member-panel .panel-heading{padding:14px 16px}.member-toolbar{flex-direction:column;align-items:stretch;padding:10px 12px;gap:8px}.member-search{max-width:none;min-height:42px}.member-tools{justify-content:space-between;gap:8px}.member-page-size,.member-range{flex:1;justify-content:center;min-height:36px}.member-list{padding:10px;grid-template-columns:1fr!important}.member-row{grid-template-columns:44px minmax(0,1fr);padding:12px;min-height:64px}.member-avatar{width:44px;height:44px;font-size:.82rem}.member-row strong{font-size:.9rem}.member-pagination{justify-content:space-between;padding:10px 12px}.member-pagination button{flex:1;padding:0 8px;min-height:36px}.member-pagination span{min-width:auto;font-size:.8rem}.approval-card{flex-direction:column;align-items:stretch;gap:10px;padding:14px}.approval-actions{width:100%}.approval-actions button{flex:1}.approval-card h3{font-size:.92rem}.sks-layout{gap:12px}.sks-unlock{padding:16px}.sks-requests{padding:14px}.creation-request-card{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.login-form{padding:20px 16px}.login-form h2{font-size:1.4rem}.login-visual{padding:24px 16px}.login-visual img{width:80px;height:80px}.login-visual h1{font-size:1.5rem}.login-features{gap:6px}.login-features span{font-size:.76rem;padding:5px 8px}.creation-gate{padding:20px}.creation-form{padding:16px}.gate-header h2{font-size:1.2rem}.managed-club-switcher{padding:12px 14px}.managed-club-tabs{gap:6px}.managed-club-tabs button{font-size:.8rem;padding:0 10px;min-height:34px}.managed-club-select{min-height:40px;font-size:.84rem}.advisor-management-panel .panel-heading{padding:14px 16px}.advisor-management-body{grid-template-columns:1fr;padding:12px}.advisor-candidate-preview{align-items:stretch;flex-direction:column}.advisor-candidate-preview .btn-approve{justify-content:center;width:100%}.badges-grid{grid-template-columns:1fr 1fr}.badge-item{padding:14px 8px}.inline-lookup{flex-direction:column}.page-header{padding:14px 16px;flex-wrap:wrap;gap:10px;flex-direction:column;align-items:flex-start}.page-header h1{font-size:1.15rem}.page-header .badge-count{margin-left:0}.student-president-notice{margin:10px 12px 0;font-size:.85rem}.countdown-badge{flex-wrap:wrap}.countdown-units{gap:6px}.toast-container{bottom:12px;right:12px;left:12px;max-width:none}.toast{padding:12px 14px}.president-nomination-form,.president-nomination-form.compact{grid-template-columns:1fr}.status-page{grid-template-columns:1fr;gap:12px}.status-card{padding:18px}.empty-state{padding:32px 16px}}@media(max-width:420px){.main-content{padding:8px 6px 32px}.hero{padding:16px 12px;border-radius:10px}.hero h1{font-size:1.2rem}.hero p{font-size:.84rem}.hero-logo{width:56px;height:56px;padding:8px}.hero-badges{flex-direction:column;align-items:stretch}.hero-badge{justify-content:center}.stat-grid{grid-template-columns:1fr 1fr;gap:6px}.stat-card{padding:12px}.stat-value{font-size:1.3rem}.stat-icon{width:30px;height:30px}.quick-stats{gap:6px}.quick-stat{padding:12px}.quick-stat strong{font-size:1.2rem}.club-grid{gap:8px}.club-body{padding:10px;gap:8px}.club-body h3{font-size:.92rem}.club-meta{font-size:.78rem}.my-club-hero{padding:14px 12px;gap:10px}.my-club-hero img{width:48px;height:48px}.my-club-hero h2{font-size:1.05rem}.my-club-hero p{font-size:.78rem}.member-row{padding:10px;gap:10px}.member-avatar{width:38px;height:38px;font-size:.78rem}.member-row strong{font-size:.86rem}.member-row span{font-size:.78rem}.member-pagination{flex-direction:column;gap:8px;padding:10px}.member-pagination button{width:100%;justify-content:center}.member-toolbar{padding:8px 10px}.member-search{min-height:38px;padding:0 10px}.member-search input{font-size:.82rem}.board-member-card{padding:8px;gap:6px}.board-avatar{width:30px;height:30px}.board-role-label{font-size:.68rem}.board-member-card strong{font-size:.8rem}.managed-club-tabs{gap:4px}.managed-club-tabs button{font-size:.75rem;padding:0 8px;min-height:32px}.login-form{padding:16px 12px}.login-form h2{font-size:1.2rem}.login-form input{min-height:44px}.login-visual{padding:20px 12px}.login-visual img{width:64px;height:64px}.login-visual h1{font-size:1.3rem}.auth-btn.login{padding:8px 12px;font-size:.82rem}.panel-heading h2{font-size:.88rem}.panel-heading svg{width:16px;height:16px}.badge-count{min-width:24px;height:22px;font-size:.72rem}.approval-card{padding:12px}.approval-card h3{font-size:.88rem}.approval-step{font-size:.7rem}.approval-actions{flex-direction:column;gap:6px}.approval-actions button{width:100%;justify-content:center}.toast-container{bottom:8px;right:8px;left:8px}.toast{padding:10px 12px}.toast-message{font-size:.82rem}.badges-grid{grid-template-columns:1fr}.page-header{padding:12px}.page-header h1{font-size:1.05rem}}@media(min-width:769px){.mobile-toggle{display:none}.mobile-nav{display:none!important}}.mgmt-section{background:var(--glass-bg);border:1px solid rgba(184,149,63,.06);border-radius:var(--radius);box-shadow:0 2px 12px #00000026;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;margin-bottom:1.25rem;transition:box-shadow var(--transition),border-color var(--transition)}.mgmt-section:hover{box-shadow:0 6px 28px #0003;border-color:#b8953f1f}.mgmt-header{display:flex;align-items:center;gap:10px;padding:18px 22px;border-bottom:1px solid rgba(184,149,63,.06);background:linear-gradient(180deg,rgba(184,149,63,.03) 0%,transparent 100%)}.mgmt-header-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:#fff;flex-shrink:0;box-shadow:0 4px 12px #0000001f}.mgmt-header-icon.blue{background:linear-gradient(135deg,var(--blue),var(--blue-light))}.mgmt-header-icon.teal{background:linear-gradient(135deg,var(--teal),#2dd4bf)}.mgmt-header-icon.orange{background:linear-gradient(135deg,var(--orange),var(--orange-dark))}.mgmt-header-icon.purple{background:linear-gradient(135deg,var(--purple),#8b5cf6)}.mgmt-header-icon.green{background:linear-gradient(135deg,var(--green),#34d399)}.mgmt-header h2{flex:1;font-size:1.05rem;font-weight:800;color:var(--ink);letter-spacing:-.01em}.mgmt-header .badge-count{font-size:.75rem;background:#b8953f14;color:var(--gold);padding:3px 10px;border-radius:20px;font-weight:800}.mgmt-body{padding:16px 20px}.mgmt-body-flush{padding:0}.decision-item{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border-bottom:1px solid rgba(184,149,63,.04);transition:background var(--transition)}.decision-item:last-child{border-bottom:none}.decision-item:hover{background:#b8953f05}.decision-number{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:.82rem;font-weight:900;color:var(--gold);background:#b8953f0f;flex-shrink:0;letter-spacing:-.02em}.decision-content{flex:1;min-width:0}.decision-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}.decision-type{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--teal)}.decision-date{font-size:.72rem;font-weight:700;color:var(--muted)}.decision-text{font-size:.88rem;line-height:1.55;color:var(--ink);margin-bottom:4px}.decision-author{font-size:.75rem;color:var(--muted);font-weight:650}.status-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.status-pill.pending{background:#f59e0b14;color:#d97706;border:1px solid rgba(245,158,11,.15)}.status-pill.approved{background:#10b98114;color:#059669;border:1px solid rgba(16,185,129,.15)}.status-pill.rejected{background:#ef444414;color:#dc2626;border:1px solid rgba(239,68,68,.15)}.inventory-item{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid rgba(184,149,63,.04);transition:background var(--transition)}.inventory-item:last-child{border-bottom:none}.inventory-item:hover{background:#00a0b005}.inventory-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;color:var(--teal);background:#00a0b00f;flex-shrink:0}.inventory-info{flex:1;min-width:0}.inventory-info strong{display:block;font-size:.9rem;font-weight:750;color:var(--ink);line-height:1.3}.inventory-info span{display:block;font-size:.75rem;color:var(--muted);font-weight:650;margin-top:2px}.inventory-qty{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 14px;background:#b8953f0a;border-radius:8px;flex-shrink:0}.inventory-qty strong{font-size:1.15rem;font-weight:900;color:var(--ink);line-height:1}.inventory-qty span{font-size:.65rem;font-weight:750;color:var(--muted);text-transform:uppercase}.election-card{padding:20px;border-radius:10px;border:1px solid rgba(184,149,63,.08);background:linear-gradient(135deg,#ffffffe6,#f1f5f999);transition:box-shadow var(--transition)}.election-card:hover{box-shadow:0 4px 20px #0f172a0f}.election-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}.election-title strong{font-size:.95rem;font-weight:800;color:var(--ink)}.election-reason{font-size:.84rem;color:var(--muted);line-height:1.5;margin-bottom:10px;padding-left:12px;border-left:3px solid rgba(184,149,63,.12)}.election-stats{display:flex;gap:16px;margin-bottom:12px;font-size:.78rem;color:var(--muted);font-weight:700;flex-wrap:wrap}.election-stats span{display:flex;align-items:center;gap:4px}.candidate-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.candidate-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:var(--surface-solid);transition:all var(--transition)}.candidate-row:hover{border-color:#b8953f26;box-shadow:0 2px 8px #0f172a0a}.candidate-row.voted{border-color:#6366f14d;background:#6366f108}.candidate-row.winner{border-color:#10b9814d;background:#10b9810a}.candidate-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:900;color:#fff;background:linear-gradient(135deg,var(--purple),var(--blue-light));flex-shrink:0}.candidate-info{flex:1;min-width:0}.candidate-info strong{display:block;font-size:.88rem;font-weight:750;color:var(--ink)}.candidate-info small{display:block;font-size:.72rem;color:var(--muted);font-weight:650}.candidate-info em{display:block;font-size:.78rem;color:var(--muted);font-style:italic;margin-top:2px}.candidate-votes{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 12px;border-radius:8px;background:#6366f10f;flex-shrink:0}.candidate-votes strong{font-size:1.1rem;font-weight:900;color:var(--blue-light);line-height:1}.candidate-votes span{font-size:.6rem;font-weight:800;color:var(--muted);text-transform:uppercase}.election-winner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;background:linear-gradient(135deg,#10b9810f,#05966908);border:1px solid rgba(16,185,129,.2);margin-top:10px}.election-winner svg{color:#059669;flex-shrink:0}.election-winner strong{font-size:.9rem;font-weight:800;color:var(--ink)}.election-winner span{font-size:.78rem;color:var(--muted);margin-left:6px}.election-form{padding:20px;border-bottom:1px solid rgba(184,149,63,.06);display:flex;flex-direction:column;gap:14px;background:linear-gradient(180deg,rgba(99,102,241,.02),transparent)}.election-form select,.election-form input,.election-form textarea{width:100%;padding:10px 14px;border-radius:8px;border:1px solid var(--line);background:var(--surface-solid);color:var(--ink);font-size:.88rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition);font-family:inherit}.election-form select:focus,.election-form input:focus,.election-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b8953f0f}.election-form textarea{min-height:80px;resize:vertical}.election-form label{font-size:.78rem;font-weight:750;color:var(--muted);margin-bottom:2px}.election-form-row{display:flex;gap:14px;flex-wrap:wrap}.election-form-row>div{flex:1 1 140px}.election-actions{display:flex;gap:8px;flex-wrap:wrap}.my-clubs-page .mgmt-section{margin-bottom:1rem}.club-detail-header{display:flex;align-items:center;gap:16px;padding:22px;flex-wrap:wrap}.club-detail-logo{width:64px;height:64px;border-radius:14px;object-fit:contain;border:1px solid var(--line);background:var(--surface-solid);padding:4px;box-shadow:0 4px 12px #0000000f}.club-detail-info{flex:1;min-width:0}.club-detail-info h2{margin:0;font-size:1.1rem;font-weight:800;color:var(--ink)}.club-detail-info p{margin:4px 0 0;font-size:.82rem;color:var(--muted)}.club-detail-meta{display:flex;gap:18px;margin-top:8px;font-size:.78rem;color:var(--muted);flex-wrap:wrap}.club-detail-meta span{display:flex;align-items:center;gap:5px}.club-detail-meta strong{font-weight:750;color:var(--ink-secondary)}.candidacy-form{padding:16px 18px;border-radius:10px;background:#3b82f608;border:1px dashed rgba(59,130,246,.2);margin-bottom:14px}.candidacy-form h4{margin:0 0 10px;font-size:.88rem;font-weight:750;color:var(--ink);display:flex;align-items:center;gap:6px}.candidacy-form textarea{width:100%;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--surface-solid);color:var(--ink);font-size:.85rem;resize:vertical;font-family:inherit;outline:none;transition:border-color var(--transition)}.candidacy-form textarea:focus{border-color:var(--gold)}.candidacy-confirmed{padding:10px 14px;border-radius:8px;background:#10b9810d;border:1px solid rgba(16,185,129,.18);font-size:.82rem;color:#059669;font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:6px}.countdown-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:750;animation:pulse-soft 2s ease-in-out infinite}.countdown-badge.candidacy{background:#3b82f614;color:#3b82f6}.countdown-badge.voting{background:#f59e0b14;color:#d97706}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.75}}.leave-section{padding:18px 22px}.leave-section h3{margin:0 0 12px;font-size:.88rem;font-weight:750;color:var(--ink);display:flex;align-items:center;gap:8px}.leave-section .btn-ghost{color:#dc2626;border-color:#ef444426;padding:8px 16px;font-size:.82rem}.leave-section .btn-ghost:hover{background:#ef44440a;border-color:#ef44444d}.leave-form{display:flex;flex-direction:column;gap:10px}.leave-form textarea{width:100%;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--surface-solid);color:var(--ink);font-size:.85rem;resize:vertical;font-family:inherit;outline:none}.leave-actions{display:flex;gap:8px}:root{--bordo: #8b1a2b;--bordo-deep: #6b1420;--bordo-glow: rgba(139,26,43,.18);--navy: #1a2332;--navy-light: #243044;--gold: #b8953f;--gold-light: #d4af5a;--gold-soft: rgba(184,149,63,.08);--gold-border: rgba(184,149,63,.18);--accent: var(--bordo);--green: #16805b;--red: #b42318;--blue: #2e3192;--teal: #0d9488;--purple: #7c3aed;--orange: #c2781e;--ink: #1a1a2e;--ink-secondary: #4a4a5a;--muted: #8a8a9a;--text: var(--ink);--bg: #f4f2ee;--bg-secondary: #eae7e0;--surface: rgba(255,255,255,.72);--surface-solid: #ffffff;--surface-hover: #f9f8f6;--line: rgba(0,0,0,.06);--line-strong: rgba(0,0,0,.1);--glass-bg: rgba(255,255,255,.65);--glass-border: rgba(255,255,255,.4);--glass-blur: 20px;--radius: 14px;--radius-sm: 10px;--radius-lg: 20px;--radius-xl: 24px;--shadow-xs: 0 1px 2px rgba(0,0,0,.04);--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow: 0 4px 24px rgba(0,0,0,.06);--shadow-lg: 0 16px 48px rgba(0,0,0,.08);--shadow-glow: 0 0 40px rgba(139,26,43,.06);--shadow-gold: 0 4px 24px rgba(184,149,63,.08);--shadow-card-hover: 0 12px 40px rgba(0,0,0,.1), 0 0 0 1px var(--gold-border);--ease: cubic-bezier(.25,.46,.45,.94);--transition: .22s var(--ease);--transition-slow: .45s var(--ease);--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--sidebar-width: 240px;--sidebar-collapsed: 72px;--sidebar-bg: var(--navy);--sidebar-text: rgba(255,255,255,.55);--sidebar-text-active: #fff;--sidebar-accent: var(--gold);--sidebar-hover: rgba(255,255,255,.06);--sidebar-active-bg: rgba(184,149,63,.12)}[data-theme=dark]{--ink: #e8e5df;--ink-secondary: #b0aaa0;--muted: #7a756c;--text: var(--ink);--bg: #0e1117;--bg-secondary: #151921;--surface: rgba(22,28,38,.72);--surface-solid: #1a2030;--surface-hover: #222a3a;--line: rgba(255,255,255,.07);--line-strong: rgba(255,255,255,.12);--glass-bg: rgba(22,28,38,.7);--glass-border: rgba(255,255,255,.08);--shadow-xs: 0 1px 2px rgba(0,0,0,.2);--shadow-sm: 0 1px 3px rgba(0,0,0,.25);--shadow: 0 4px 24px rgba(0,0,0,.3);--shadow-lg: 0 16px 48px rgba(0,0,0,.35);--shadow-glow: 0 0 40px rgba(139,26,43,.12);--shadow-gold: 0 4px 24px rgba(184,149,63,.1);--shadow-card-hover: 0 12px 40px rgba(0,0,0,.3), 0 0 0 1px var(--gold-border);--bordo-glow: rgba(139,26,43,.25);--gold-soft: rgba(184,149,63,.08);--gold-border: rgba(184,149,63,.15);--bordo: #c2384f;--green: #22c583;--red: #ef5350;--blue: #5c6bc0}body,.glass-panel,.stat-card,.club-card,.approval-card,.event-card,.searchbox,.discover-unit-select,.page-header,.quick-stat,.events-club-chip,input,select,textarea{transition:background-color var(--transition-slow),border-color var(--transition-slow),color var(--transition-slow),box-shadow var(--transition-slow)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--surface-solid);color:var(--ink);border-color:var(--line)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--muted)}[data-theme=dark] select option{background:var(--surface-solid);color:var(--ink)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body,#root{min-height:100vh}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}a{text-decoration:none;color:inherit}::selection{background:var(--bordo-glow);color:var(--gold)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:5px}.app-root{display:flex;min-height:100vh}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--sidebar-bg);background-image:radial-gradient(ellipse at 20% 0%,rgba(139,26,43,.12),transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(184,149,63,.06),transparent 50%);display:flex;flex-direction:column;z-index:100;transition:width var(--transition);border-right:1px solid rgba(255,255,255,.04);overflow:hidden}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:20px 18px;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;flex-shrink:0}.sidebar-brand img{width:40px;height:40px;object-fit:contain;padding:4px;background:#ffffffe6;border-radius:10px;box-shadow:0 2px 8px #0003;flex-shrink:0}.sidebar-brand-text{min-width:0;overflow:hidden}.sidebar-brand strong{display:block;font-size:.88rem;font-weight:800;color:var(--gold);white-space:nowrap}.sidebar-brand span{display:block;font-size:.72rem;color:var(--sidebar-text);white-space:nowrap}.sidebar-nav{flex:1;overflow-y:auto;padding:12px 10px;display:flex;flex-direction:column;gap:2px;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-link{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-sm);color:var(--sidebar-text);font-size:.88rem;font-weight:600;transition:all var(--transition);white-space:nowrap;position:relative}.sidebar-link:hover{background:var(--sidebar-hover);color:#ffffffd9}.sidebar-link.active{background:var(--sidebar-active-bg);color:var(--sidebar-text-active)}.sidebar-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:24px;background:var(--gold);border-radius:0 3px 3px 0}.sidebar-link svg{width:19px;height:19px;flex-shrink:0;opacity:.7}.sidebar-link.active svg{opacity:1;color:var(--gold)}.sidebar-link .nav-badge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--bordo);color:#fff;border-radius:10px;font-size:.68rem;font-weight:850}.sidebar-decoration{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 14px;margin:auto 10px 0;border-top:1px solid rgba(255,255,255,.04);text-align:center}.sidebar-deco-badge{width:48px;height:48px;padding:6px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.06);display:grid;place-items:center}.sidebar-deco-badge img{width:100%;height:100%;object-fit:contain;opacity:.5;filter:grayscale(.3)}.sidebar-decoration span{font-size:.68rem;font-weight:700;color:#fff3;letter-spacing:.05em}.sidebar-decoration small{font-size:.62rem;color:#ffffff1f}.sidebar-user{padding:16px 14px;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;gap:10px;flex-shrink:0}.sidebar-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--bordo),var(--gold));display:grid;place-items:center;color:#fff;font-size:.75rem;font-weight:800;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0;overflow:hidden}.sidebar-user-name{display:block;font-size:.82rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{display:block;font-size:.68rem;font-weight:600;color:var(--sidebar-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-logout{padding:6px;border-radius:6px;color:var(--sidebar-text);flex-shrink:0;transition:all var(--transition)}.sidebar-logout:hover{color:#fff;background:#b423184d}.sidebar-login{display:flex;align-items:center;gap:10px;padding:10px 14px;margin:0 10px 10px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--gold),var(--gold-light));color:var(--navy);font-weight:750;font-size:.85rem;transition:all var(--transition)}.sidebar-login:hover{transform:translateY(-1px);box-shadow:var(--shadow-gold)}.theme-toggle-wrap{padding:8px 14px 12px;display:flex;align-items:center;gap:8px}.theme-toggle-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-sm);width:100%;color:var(--sidebar-text);font-size:.8rem;font-weight:600;transition:all var(--transition)}.theme-toggle-btn:hover{background:var(--sidebar-hover);color:#ffffffd9}.theme-toggle-btn svg{width:16px;height:16px}.main-area{flex:1;margin-left:var(--sidebar-width);min-height:100vh;display:flex;flex-direction:column;transition:margin-left var(--transition)}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:24px 28px 60px}.student-president-notice{margin:16px 32px 0;padding:12px 16px;border:1px solid var(--gold-border);border-radius:var(--radius-sm);color:var(--gold);background:var(--gold-soft);font-weight:700;font-size:.85rem}.eyebrow{display:inline-flex;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:var(--radius-sm);font-weight:750;color:#fff;background:linear-gradient(135deg,var(--bordo),var(--bordo-deep));box-shadow:0 4px 16px #8b1a2b2e;transition:all var(--transition)}.btn-primary:hover{box-shadow:0 8px 28px #8b1a2b40;transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:var(--radius-sm);font-weight:700;color:var(--ink-secondary);background:transparent;border:1px solid var(--line-strong);transition:all var(--transition)}.btn-ghost:hover{background:var(--surface-hover);border-color:var(--gold-border);color:var(--ink)}.btn-apply{width:100%;padding:14px 22px;border-radius:var(--radius-sm);font-weight:750;color:#fff;background:linear-gradient(135deg,var(--bordo),#a31e2f);box-shadow:0 6px 24px #8b1a2b26;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all var(--transition)}.btn-apply:hover{box-shadow:0 10px 36px #8b1a2b38;transform:translateY(-1px)}.btn-apply-login{background:linear-gradient(135deg,var(--surface-solid),var(--bg-secondary));color:var(--bordo);border:1px solid var(--line-strong)}.btn-approve,.btn-reject{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-weight:700;font-size:.85rem;transition:all var(--transition)}.btn-approve{color:#fff;background:linear-gradient(135deg,var(--green),#12a369)}.btn-approve:hover{transform:translateY(-1px);box-shadow:0 4px 16px #16805b33}.btn-reject{color:#fff;background:linear-gradient(135deg,var(--bordo),#a31e2f)}.btn-reject:hover{transform:translateY(-1px);box-shadow:0 4px 16px #8b1a2b33}.page-header{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--line)}.page-header svg{color:var(--gold)}.page-header h1{font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--ink);letter-spacing:-.02em}.page-header p{color:var(--muted);font-size:.88rem}.glass-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}@media(max-width:900px){.sidebar{transform:translate(-100%);width:280px;box-shadow:var(--shadow-lg)}.sidebar.mobile-open{transform:translate(0)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.main-area{margin-left:0}.mobile-header{display:flex!important;position:sticky;top:0;z-index:50;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-solid);border-bottom:1px solid var(--line)}.mobile-header img{width:32px;height:32px;border-radius:8px}.mobile-header strong{font-size:.9rem;color:var(--ink)}.mobile-burger{margin-left:auto;padding:8px;color:var(--ink)}.main-content{padding:16px 14px 40px}.student-president-notice{margin:10px 14px 0}}@media(min-width:901px){.mobile-header,.sidebar-overlay{display:none!important}}
