.recruiting-page{animation:fadeIn .5s ease;padding-bottom:60px}.recruiting-header{text-align:center;margin-bottom:50px}.recruiting-header h1{font-size:3rem;font-weight:800;color:var(--asu-maroon);margin-bottom:10px;text-transform:uppercase;letter-spacing:-.05em}.recruiting-header .subtitle{font-size:1.2rem;color:var(--text-secondary);font-weight:500;letter-spacing:.1em;text-transform:uppercase}.season-selector{display:flex;justify-content:center;flex-wrap:wrap;gap:15px;margin-bottom:50px}.season-btn{background:#fff;border:1px solid var(--border-color);padding:12px 30px;border-radius:30px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;color:var(--text-secondary);box-shadow:var(--shadow-sm)}.season-btn:hover{transform:translateY(-2px);color:var(--asu-gold);border-color:var(--asu-gold)}.season-btn.active{background:var(--asu-maroon);color:#fff;border-color:var(--asu-maroon);box-shadow:var(--shadow-md)}.recruits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:40px}.recruit-card-wrapper{perspective:1000px;display:flex;flex-direction:column;gap:15px}.recruit-card{display:block;text-decoration:none;color:inherit;position:relative;width:100%;aspect-ratio:3/4;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.23,1,.32,1);border-radius:20px;box-shadow:var(--shadow-lg);cursor:pointer}.recruit-card-wrapper:hover .recruit-card{transform:rotateY(5deg) rotateX(5deg) scale(1.02);box-shadow:0 20px 40px #0003}.card-front{position:absolute;width:100%;height:100%;background:linear-gradient(135deg,var(--dark-bg) 0%,var(--asu-maroon-dark) 100%);border-radius:20px;border:4px solid var(--asu-gold);overflow:hidden;display:flex;flex-direction:column}.card-bg-gfx{position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 10% 10%,rgba(255,198,39,.2) 0%,transparent 20%),linear-gradient(45deg,transparent 48%,rgba(255,255,255,.05) 50%,transparent 52%);background-size:100% 100%,20px 20px;z-index:1}.recruit-photo-container{position:absolute;top:15px;left:50%;transform:translate(-50%);width:240px;height:240px;border-radius:20px;overflow:hidden;border:4px solid var(--asu-gold);box-shadow:0 8px 20px #0006;z-index:2;background:var(--dark-bg)}.recruit-photo{width:100%;height:100%;object-fit:cover;object-position:center top}.recruit-info{position:relative;z-index:2;margin-top:auto;background:linear-gradient(to top,rgba(140,29,64,.95),transparent);padding:60px 20px 20px;color:#fff}.recruit-info h3{font-size:1.8rem;margin:0 0 10px;line-height:1;text-shadow:0 2px 4px rgba(0,0,0,.5)}.stats-row{display:flex;align-items:center;gap:10px;margin-bottom:15px}.stat-badge{background:var(--asu-gold);color:var(--asu-maroon);font-weight:800;padding:4px 8px;border-radius:4px}.stat-text{font-weight:600;opacity:.9}.origin-row,.team-row{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:5px;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:3px}.origin-row:last-child{border-bottom:none}.label{color:#fff9;text-transform:uppercase;font-size:.7rem}.value{font-weight:600;text-align:right}.card-shine{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(125deg,transparent 40%,rgba(255,255,255,.3) 45%,transparent 50%);z-index:3;pointer-events:none;opacity:.5}.recruit-card-wrapper:hover .card-shine{animation:shine 1s}@keyframes shine{0%{transform:translate(-100%) translateY(-100%)}to{transform:translate(100%) translateY(100%)}}.profile-link{text-align:center;background:var(--asu-maroon);color:#fff;text-decoration:none;padding:12px;border-radius:10px;font-weight:600;transition:background .2s}.profile-link:hover{background:var(--asu-maroon-dark)}.recruits-groups{display:flex;flex-direction:column;gap:48px}.recruit-group-title{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--asu-gold);margin-bottom:24px;padding-bottom:8px;border-bottom:1px solid rgba(232,168,51,.3)}.no-recruits{text-align:center;grid-column:1 / -1;padding:60px;font-size:1.2rem;color:var(--text-secondary);background:var(--light-bg);border-radius:var(--border-radius-lg)}@media (max-width: 600px){.recruits-grid{grid-template-columns:1fr}.recruit-card{aspect-ratio:auto;min-height:300px}}.transfers-section{margin-bottom:60px;padding-bottom:40px;border-bottom:1px solid var(--border-color)}.section-title{font-size:1.8rem;font-weight:700;color:var(--asu-maroon);text-align:center;margin-bottom:10px}.section-subtitle{text-align:center;color:var(--text-secondary);font-size:1rem;margin-bottom:30px}.transfers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;max-width:1000px;margin:0 auto}.transfer-card{background:#fff;border-radius:var(--border-radius-lg);padding:20px 25px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);transition:all .3s ease;position:relative;overflow:hidden}.transfer-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}.transfer-card.incoming:before{background:linear-gradient(180deg,#22c55e,#16a34a)}.transfer-card.outgoing:before{background:linear-gradient(180deg,#ef4444,#dc2626)}.transfer-card:hover{transform:translateY(-3px);box-shadow:0 12px 35px #00000026}.transfer-player-info{display:flex;align-items:center;gap:12px;margin-bottom:15px}.transfer-badge{font-size:.65rem;font-weight:800;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.05em}.transfer-card.incoming .transfer-badge{background:#22c55e26;color:#16a34a}.transfer-card.outgoing .transfer-badge{background:#ef444426;color:#dc2626}.transfer-player-name{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin:0;flex:1}.transfer-player-name a{color:inherit;text-decoration:none;transition:color .2s ease}.transfer-player-name a:hover{color:var(--asu-maroon)}.transfer-position{font-size:.9rem;font-weight:700;color:var(--asu-gold);background:#ffc62726;padding:4px 12px;border-radius:15px}.transfer-team-info{display:flex;align-items:center;gap:12px;padding:15px;background:var(--light-bg);border-radius:var(--border-radius-md);margin-bottom:10px}.team-from,.team-to{flex:1;font-size:.95rem;font-weight:600;color:var(--text-primary)}.team-to{text-align:right}.transfer-card.incoming .team-to,.transfer-card.outgoing .team-from{color:var(--asu-maroon);font-weight:700}.transfer-arrow{font-size:1.5rem;color:var(--text-secondary);font-weight:300}.transfer-date{text-align:right;font-size:.85rem;color:var(--text-secondary);font-style:italic}@media (max-width: 600px){.transfers-section{margin-bottom:30px;padding-bottom:25px}.section-title{font-size:1.4rem;margin-bottom:5px}.section-subtitle{font-size:.85rem;margin-bottom:15px}.transfers-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:5px 15px 15px;margin:0 -15px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.transfers-grid::-webkit-scrollbar{display:none}.transfer-card{flex:0 0 auto;width:200px;min-width:200px;padding:12px 15px;scroll-snap-align:start}.transfer-card:hover{transform:none}.transfer-player-info{flex-wrap:wrap;gap:6px;margin-bottom:10px}.transfer-badge{font-size:.55rem;padding:3px 8px;order:-1;width:100%;text-align:center;margin-bottom:4px}.transfer-player-name{font-size:1rem;width:100%;text-align:center}.transfer-position{font-size:.75rem;padding:2px 8px;position:absolute;top:12px;right:12px}.transfer-team-info{flex-direction:row;padding:8px 10px;gap:6px;font-size:.8rem}.team-from,.team-to{font-size:.75rem;text-align:center;flex:1;line-height:1.2}.transfer-arrow{font-size:1rem;flex-shrink:0}.transfer-date{font-size:.7rem;text-align:center;margin-top:5px}}@media (max-width: 600px){.transfers-section:after{content:"← swipe →";display:block;text-align:center;font-size:.7rem;color:var(--text-secondary);opacity:.6;margin-top:8px;font-style:italic}}
