:root{--bg:#090d10;--panel:#0f1519;--panel2:#141b20;--line:#30383d;--gold:#d7a72b;--gold2:#f1c75e;--text:#eef1f2;--muted:#9ea6ab}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit}.admin-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{background:#0b1013;border-right:1px solid #263037;position:sticky;top:0;height:100vh;overflow:auto;z-index:40}.admin-brand{min-height:116px;display:flex;align-items:center;gap:12px;padding:14px;background:#060708;border-bottom:1px solid #3d3215}.admin-brand img{width:86px;height:86px;object-fit:contain;flex:0 0 auto}.admin-brand b{display:block;font-size:13px}.admin-brand small{display:block;color:#999;margin-top:4px}.sidebar nav{padding:8px}.sidebar .group{color:#b28a27;text-transform:uppercase;font-size:10px;font-weight:900;padding:16px 10px 6px}.sidebar a{display:block;color:#dce0e2;text-decoration:none;padding:10px 11px;border-radius:6px;font-size:13px;line-height:1.25}.sidebar a:hover{background:#8d6c18;color:#fff}.content{min-width:0;padding:0 20px 35px}.top-admin{min-height:76px;border-bottom:1px solid #252c31;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.top-admin h1{margin:0;font-size:21px}.top-admin span{color:#8e969b;font-size:12px}.admin-menu-toggle{display:none;background:#171e22;color:#fff;border:1px solid #3d3215;border-radius:6px;width:42px;height:40px;font-size:20px;cursor:pointer}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{min-width:0;background:linear-gradient(145deg,#141b20,#0e1316);border:1px solid #30383d;padding:18px;border-radius:8px;color:#a8afb3;text-transform:uppercase;font-size:11px}.metric strong{display:block;font-size:28px;color:#fff;margin-top:6px}.metric em{font-style:normal;color:#d9ab35;font-size:24px;float:left;margin-right:12px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:14px;margin-top:14px}.panel{min-width:0;background:#0f1519;border:1px solid #30383d;border-radius:8px;padding:15px;margin-top:14px;box-shadow:0 12px 28px rgba(0,0,0,.18)}.dashboard-grid .panel{margin-top:0}.panel h2{font-size:14px;text-transform:uppercase;margin:0 0 14px}.table-wrap{width:100%;max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;border-radius:5px}table{width:100%;border-collapse:collapse;min-width:680px}th,td{border-bottom:1px solid #273036;padding:10px;text-align:left;font-size:12px;vertical-align:middle}th{color:#d0a63b;text-transform:uppercase;font-size:10px;background:#11181c;position:sticky;top:0;z-index:1}.status{display:inline-block;background:#214f2b;color:#d8ffdd;border-radius:4px;padding:4px 7px}.danger{background:#552225}.admin-btn{display:inline-block;background:linear-gradient(#c69a2b,#8b6818);color:#fff;text-decoration:none;border:1px solid #d6aa39;border-radius:5px;padding:10px 13px;font-weight:800;font-size:12px;cursor:pointer}.admin-btn.secondary{background:#242c31;border-color:#3b454b}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-actions a{background:#20282d;color:#fff;text-decoration:none;padding:10px;border-radius:5px;font-size:12px;border:1px solid #303a40}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field label,.form-grid>label span{display:block;color:#aaa;font-size:11px;text-transform:uppercase;margin-bottom:5px}.field input,.field select,.field textarea,.form-grid>label input,.form-grid>label select,.form-grid>label textarea{width:100%;min-width:0;background:#11181c;color:#fff;border:1px solid #354047;border-radius:5px;padding:11px;outline:none}.field input:focus,.field select:focus,.field textarea:focus,.form-grid>label input:focus,.form-grid>label select:focus,.form-grid>label textarea:focus{border-color:#b78d29;box-shadow:0 0 0 2px rgba(215,167,43,.12)}.field.full,.form-grid>label.full,.form-grid>.full{grid-column:1/-1}.form-grid textarea{min-height:110px;resize:vertical}.form-grid button{background:#a57d20;color:#fff;border:0;border-radius:4px;padding:10px 14px;font-weight:800}.crud-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.flash,.alert{padding:10px 12px;border-radius:4px;background:#173d20;color:#d8ffe0;margin-bottom:12px}.alert.danger{background:#4b1f24;color:#ffdce0}.link-danger{background:none!important;color:#ff8a8a!important;padding:0!important;border:0!important;cursor:pointer}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,#342b15,#07090a 45%);padding:20px}.login-card{width:min(430px,94%);background:#0c1114;border:1px solid #5b4818;padding:30px;border-radius:12px;box-shadow:0 25px 70px rgba(0,0,0,.42)}.login-card img{display:block;width:155px;max-height:155px;object-fit:contain;margin:0 auto 18px}.login-card input{width:100%;padding:12px;margin:6px 0;background:#12191d;color:#fff;border:1px solid #374248;border-radius:5px}.login-card button{width:100%;padding:12px;background:#d2a431;border:0;font-weight:900;border-radius:5px;cursor:pointer}
@media(max-width:1100px){.admin-shell{grid-template-columns:220px minmax(0,1fr)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.admin-brand img{width:68px;height:74px}.admin-brand b{font-size:11px}}
@media(max-width:780px){.admin-shell{display:block}.sidebar{position:fixed;left:-280px;top:0;width:270px;height:100vh;transition:left .25s ease;box-shadow:12px 0 30px rgba(0,0,0,.45)}body.admin-menu-open .sidebar{left:0}.content{padding:0 12px 28px}.admin-menu-toggle{display:inline-grid;place-items:center;flex:0 0 auto}.top-admin{min-height:66px;position:sticky;top:0;background:rgba(9,13,16,.97);z-index:30;margin-bottom:14px}.top-admin>div{min-width:0}.top-admin h1{font-size:18px}.top-admin span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:75vw}.form-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions{grid-template-columns:1fr}.sidebar nav{display:block}.sidebar .group{display:block}.panel{padding:12px}.table-wrap{margin-inline:0}.admin-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:35}body.admin-menu-open .admin-overlay{display:block}}
@media(max-width:480px){.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.metric{padding:13px}.metric strong{font-size:23px}.metric em{font-size:20px}.top-admin span{font-size:10px}.panel h2{font-size:13px}.content{padding-inline:9px}.login-card{padding:22px}}
.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.permission-item{display:flex!important;gap:9px;align-items:center;background:#151b1f;border:1px solid #2a3338;border-radius:10px;padding:12px}.permission-item input{width:auto!important}.club-portal{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.club-sidebar{background:#090d10;border-right:1px solid #262d31;padding:20px}.club-sidebar nav{display:grid;gap:5px;margin-top:18px}.club-sidebar nav a{padding:12px;color:#dce1e4;text-decoration:none;border-radius:8px}.club-sidebar nav a:hover,.club-sidebar nav a.active{background:#d7a72b;color:#07090b;font-weight:700}.club-content{padding:28px;min-width:0}.competition-club-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.portal-competition{display:flex;align-items:center;gap:14px;padding:14px;background:#13191d;border:1px solid #2b3439;border-radius:12px}.portal-competition img{width:70px;height:70px;object-fit:contain}.portal-competition small{display:block;margin-top:5px;color:#9ea8ad}@media(max-width:800px){.club-portal{display:block}.club-sidebar{border-right:0;border-bottom:1px solid #262d31}.club-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.club-content{padding:16px}}
/* V13 - aprovação de atletas */
.approval-stats{margin-bottom:20px}.approval-filter{align-items:end}.approval-list{display:grid;gap:16px}.approval-card{border:1px solid #2a3136;background:#0d1114;border-radius:14px;padding:18px}.approval-athlete{display:flex;gap:14px;align-items:center}.approval-athlete h3{margin:0 0 5px;font-size:20px}.approval-athlete p{margin:3px 0;color:#aeb5ba}.approval-photo{width:72px;height:72px;border-radius:50%;overflow:hidden;background:#20272b;border:2px solid #d8aa36;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;flex:0 0 auto}.approval-photo img{width:100%;height:100%;object-fit:cover}.approval-context{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.approval-context>div{background:#12181c;border:1px solid #273036;border-radius:10px;padding:11px;display:flex;flex-direction:column;gap:3px}.approval-context small{color:#89939a;font-size:10px;letter-spacing:.08em}.approval-context span{color:#9aa3a9;font-size:12px}.approval-docs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.approval-actions{border-top:1px solid #273036;margin-top:14px;padding-top:14px}.approval-actions label{display:block}.approval-actions input{width:100%;margin-top:6px}.approval-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.approval-buttons button:disabled{opacity:.4;cursor:not-allowed}.btn.danger,button.danger{background:#7d2228!important;border-color:#a2343c!important;color:white!important}.approval-review{color:#89939a;font-size:12px;margin-top:10px}.empty-state{padding:30px;text-align:center;color:#90999f;border:1px dashed #333;border-radius:12px}@media(max-width:900px){.approval-context{grid-template-columns:1fr 1fr}}@media(max-width:560px){.approval-context{grid-template-columns:1fr}.approval-athlete{align-items:flex-start}.approval-buttons button,.approval-buttons .btn{width:100%}}
