:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #10b981;--primary-dark: #059669;--secondary: #3b82f6;--dark: #0f172a;--dark-light: #1e293b;--text: #f8fafc;--text-secondary: #cbd5e1;--error: #ef4444;--border: #334155}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(135deg,var(--dark) 0%,#1a1f2e 100%);color:var(--text);min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column}.header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#0f172acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.logo{display:flex;align-items:center;gap:.75rem}.logo-icon{font-size:2rem}.logo h1{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent}nav{display:flex;gap:2rem;align-items:center}nav a{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .2s}nav a:hover{color:var(--primary)}.nav-btn{background:none;border:none;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:color .2s;font-size:1rem;padding:.5rem 1rem;border-radius:.5rem;font-family:inherit}.nav-btn:hover{color:var(--primary)}.nav-btn.active{color:var(--primary);background:#10b9811a}.user-info{color:var(--text-secondary);font-size:.875rem;padding:.5rem 0}.btn-login{padding:.5rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;font-family:inherit;font-size:inherit;transition:background .2s}.btn-login:hover{background:var(--primary-dark);color:#fff}.hero{flex:1;display:flex;align-items:center;justify-content:center;padding:3rem 2rem}.hero-content{max-width:800px;width:100%}.hero-title{font-size:3rem;font-weight:800;margin-bottom:1rem;background:linear-gradient(135deg,var(--text),var(--primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.2}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:3rem;line-height:1.6}.upload-card{background:var(--dark-light);border:1px solid var(--border);border-radius:1rem;padding:2.5rem;margin-bottom:2rem}.upload-card h3{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text)}.error-banner{background:#ef44441a;border:1px solid var(--error);color:var(--error);padding:1rem;border-radius:.5rem;margin-bottom:1.5rem}.upload-area{margin-bottom:1.5rem}.file-input{display:none}.file-label{display:block;padding:3rem;border:2px dashed var(--border);border-radius:.75rem;text-align:center;cursor:pointer;transition:all .3s;background:#10b9810d}.file-label:hover{border-color:var(--primary);background:#10b9811a}.file-placeholder{display:flex;flex-direction:column;gap:.75rem;align-items:center}.upload-icon{font-size:3rem}.file-hint{font-size:.875rem;color:var(--text-secondary)}.file-selected{display:flex;align-items:center;gap:1rem;justify-content:center}.file-icon{font-size:2rem}.file-name{font-weight:500;color:var(--primary)}.btn-upload{width:100%;padding:1rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-upload:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 20px #10b9814d}.btn-upload:disabled{opacity:.5;cursor:not-allowed}.results-card{background:var(--dark-light);border:1px solid var(--border);border-radius:1rem;padding:2.5rem;animation:fadeIn .5s}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.results-card h3{font-size:1.5rem;margin-bottom:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#10b9811a;border:1px solid var(--primary);border-radius:.75rem;padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.stat-label{font-size:.875rem;color:var(--text-secondary)}.stat-value{font-size:2rem;font-weight:700;color:var(--primary)}.positions-timeline h4,.recommendations h4{font-size:1.125rem;margin-bottom:1rem;color:var(--text)}.timeline-item{display:grid;grid-template-columns:80px 1fr 80px;gap:1rem;padding:1rem;background:#ffffff0d;border-radius:.5rem;margin-bottom:.5rem;align-items:center}.timeline-time{color:var(--text-secondary);font-weight:500}.timeline-position{color:var(--text);font-weight:600;text-transform:capitalize}.timeline-confidence{color:var(--primary);font-weight:600;text-align:right}.recommendations{margin-top:2rem}.recommendations ul{list-style:none}.recommendations li{padding:1rem;background:#3b82f61a;border-left:3px solid var(--secondary);border-radius:.5rem;margin-bottom:.75rem;color:var(--text-secondary)}.info-banner{background:#3b82f61a;border:1px solid var(--secondary);border-radius:.5rem;padding:1rem;margin-bottom:1.5rem;color:var(--text-secondary)}.error-message{background:#ef44441a;border:1px solid var(--error);border-radius:.5rem;padding:.75rem;color:var(--error);margin-top:1rem}.positions-timeline{margin-top:2rem;margin-bottom:2rem}.positions-timeline ul{list-style:none}.positions-timeline li{padding:.75rem 1rem;background:#10b9811a;border-left:3px solid var(--primary);border-radius:.5rem;margin-bottom:.5rem;color:var(--text-secondary)}.positions-timeline li.more-positions{font-style:italic;color:var(--text-secondary);background:transparent;border-left:none;padding-left:0}.analysis-text{background:#10b9810d;border:1px solid rgba(16,185,129,.2);border-radius:.75rem;padding:1.5rem;margin-top:2rem}.analysis-text h4{margin-bottom:1rem;color:var(--text)}.analysis-text p{color:var(--text-secondary);line-height:1.6;white-space:pre-wrap}.auth-required{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:3rem 2rem;text-align:center}.auth-required h2{margin:0;color:var(--text);font-size:2rem}.btn-login-modal{padding:.875rem 2rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:background .2s;font-family:inherit;font-size:1rem}.btn-login-modal:hover{background:var(--primary-dark)}.auth-required{text-align:center;padding:3rem 2rem;max-width:500px}.auth-required h2{font-size:1.5rem;color:var(--text);margin-bottom:.75rem}.auth-required-desc{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.5}.auth-required-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn-signup-modal{padding:.75rem 2rem;background:transparent;color:var(--primary);border:1px solid var(--primary);border-radius:.5rem;cursor:pointer;transition:all .2s;font-family:inherit;font-size:1rem}.btn-signup-modal:hover{background:var(--primary);color:#fff}.footer{text-align:center;padding:2rem;color:var(--text-secondary);border-top:1px solid var(--border)}@media(max-width:768px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.upload-card,.results-card{padding:1.5rem}nav{gap:1rem}}.user-profile{max-width:800px;margin:0 auto;background:var(--dark-light);border:1px solid var(--border);border-radius:1rem;overflow:hidden}.profile-header{display:flex;gap:2rem;padding:2rem;background:linear-gradient(135deg,#10b9811a,#3b82f61a);border-bottom:1px solid var(--border)}.profile-avatar-section{position:relative}.profile-avatar{width:150px;height:150px;border-radius:50%;border:3px solid var(--primary);object-fit:cover}.avatar-upload{position:absolute;bottom:0;right:0;background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:50%;font-size:.75rem;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;width:50px;height:50px}.avatar-upload:hover{background:var(--primary-dark)}.avatar-upload input{display:none}.profile-info h2{margin:0 0 .5rem;color:var(--text);font-size:2rem}.belt-rank{font-weight:700;color:var(--primary);font-size:1.125rem;margin:.5rem 0 .25rem}.academy{color:var(--text-secondary);margin:0}.profile-content{padding:2rem}.profile-view .profile-field{margin-bottom:1.5rem}.profile-field label{display:block;font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;margin-bottom:.5rem}.profile-field p{color:var(--text);margin:0;font-size:1.05rem}.profile-field a{color:var(--primary);text-decoration:none;transition:color .2s}.profile-field a:hover{color:var(--primary-dark)}.btn-edit{width:100%;padding:1rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:2rem}.btn-edit:hover{background:var(--primary-dark)}.profile-edit .form-section{margin-bottom:1.5rem}.profile-edit label{display:block;font-weight:600;color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem;text-transform:uppercase}.profile-edit input,.profile-edit select,.profile-edit textarea{width:100%;padding:.75rem;background:#0f172a80;border:1px solid var(--border);border-radius:.5rem;color:var(--text);font-family:inherit;font-size:1rem;transition:border-color .2s}.profile-edit input:focus,.profile-edit select:focus,.profile-edit textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #10b9811a}.profile-edit input:disabled{opacity:.6;cursor:not-allowed}.btn-save,.btn-cancel{flex:1;padding:1rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit;font-size:1rem}.btn-save{background:var(--primary);color:#fff}.btn-save:hover:not(:disabled){background:var(--primary-dark)}.btn-save:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#ef44441a;border:1px solid var(--error);color:var(--error);padding:1rem;border-radius:.5rem;margin-bottom:1rem}.success-message{background:#10b9811a;border:1px solid var(--primary);color:var(--primary);padding:1rem;border-radius:.5rem;margin-bottom:1rem}.profile-loading{padding:2rem;text-align:center;color:var(--text-secondary)}.tournaments-container{width:100%;max-width:1000px;margin:0 auto}.tournaments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:2rem;flex-wrap:wrap}.tournaments-header h2{margin:0;color:var(--text);font-size:2rem}.filter-tabs{display:flex;gap:.5rem}.filter-btn{padding:.75rem 1.5rem;background:#10b9811a;border:1px solid var(--border);color:var(--text-secondary);border-radius:.5rem;cursor:pointer;transition:all .2s;font-family:inherit;font-weight:500}.filter-btn:hover{border-color:var(--primary);color:var(--primary)}.filter-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.tournament-list{display:flex;flex-direction:column;gap:1rem}.tournament-card{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.5rem;background:var(--dark-light);border:1px solid var(--border);border-radius:.75rem;transition:all .2s}.tournament-card:hover{border-color:var(--primary);background:#10b9810d}.tournament-info{flex:1}.tournament-info h3{margin:0 0 .5rem;color:var(--text);font-size:1.25rem}.organizer{margin:0 0 1rem;color:var(--text-secondary);font-size:.875rem}.tournament-meta{display:flex;flex-wrap:wrap;gap:1rem;margin:0}.meta-item{font-size:.875rem;color:var(--text-secondary);display:flex;align-items:center}.btn-register{padding:.75rem 2rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;cursor:pointer;font-weight:600;transition:background .2s;white-space:nowrap}.btn-register:hover{background:var(--primary-dark)}.registration-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.registration-modal{background:var(--dark-light);border:1px solid var(--border);border-radius:1rem;padding:2rem;max-width:500px;width:90%;position:relative}.registration-modal h3{margin-top:0;color:var(--text);font-size:1.5rem}.close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer}.registration-form{margin-top:1.5rem}.form-group label{display:block;font-weight:600;color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem;text-transform:uppercase}.form-group input,.form-group select{width:100%;padding:.75rem;background:#0f172a80;border:1px solid var(--border);border-radius:.5rem;color:var(--text);font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary)}.button-group{display:flex;gap:1rem;margin-top:2rem}.btn-submit,.btn-cancel{flex:1;padding:.875rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.btn-submit{background:var(--primary);color:#fff}.btn-submit:hover:not(:disabled){background:var(--primary-dark)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.btn-cancel{background:#10b9811a;color:var(--primary);border:1px solid var(--primary)}.btn-cancel:hover{background:#10b98133}.error-message{background:#ef44441a;border:1px solid var(--error);color:var(--error);padding:1rem;border-radius:.5rem;margin-bottom:1.5rem}.no-tournaments,.tournaments-loading{text-align:center;color:var(--text-secondary);padding:2rem}.ai-coach-container{width:100%;max-width:900px;margin:0 auto;background:var(--dark-light);border:1px solid var(--border);border-radius:1rem;padding:2rem}.coach-header{margin-bottom:2rem;text-align:center}.coach-header h2{margin:0 0 .5rem;color:var(--text);font-size:2rem}.coach-header p{margin:0;color:var(--text-secondary);font-size:1.05rem}.coach-input-section{margin-bottom:2rem}.input-group{margin-bottom:1.5rem}.input-group label{display:block;font-weight:600;color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem;text-transform:uppercase}.input-group textarea,.input-group select{width:100%;padding:1rem;background:#0f172a80;border:1px solid var(--border);border-radius:.5rem;color:var(--text);font-family:inherit;font-size:1rem;resize:vertical;transition:border-color .2s}.input-group textarea:focus,.input-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #10b9811a}.input-group textarea::placeholder{color:var(--text-secondary)}.options-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.btn-ask{width:100%;padding:1rem 2rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.btn-ask:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px)}.btn-ask:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#ef44441a;border:1px solid var(--error);color:var(--error);padding:1rem;border-radius:.5rem;margin:1rem 0}.coach-response{animation:slideIn .3s ease-out;background:#10b9810d;border:1px solid rgba(16,185,129,.2);border-radius:.75rem;padding:1.5rem;margin-top:2rem}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.coach-response h3{margin-top:0;color:var(--text);font-size:1.5rem}.response-answer{background:#0f172a4d;padding:1.5rem;border-left:4px solid var(--primary);border-radius:.5rem;margin:1.5rem 0}.response-answer p{margin:0;color:var(--text);line-height:1.8;font-size:1.05rem}.coach-response h4{margin:1.5rem 0 1rem;color:var(--text);font-size:1.125rem}.response-tips{margin-bottom:1.5rem}.response-tips ul{list-style:none;padding:0;margin:0}.response-tips li{padding:.75rem 1rem;background:#3b82f61a;border-left:3px solid var(--secondary);border-radius:.5rem;margin-bottom:.75rem;color:var(--text-secondary);line-height:1.6}.response-positions{margin-bottom:1.5rem}.position-tags{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.position-tag{display:inline-block;padding:.5rem 1rem;background:#10b98133;border:1px solid var(--primary);border-radius:999px;color:var(--primary);font-size:.875rem;font-weight:500}.btn-ask-again{width:100%;padding:.875rem 1.5rem;background:#10b9811a;color:var(--primary);border:1px solid var(--primary);border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:1.5rem;font-family:inherit;font-size:1rem}.btn-ask-again:hover{background:#10b98133}@media(max-width:768px){.ai-coach-container{padding:1.5rem}.options-row{grid-template-columns:1fr}.coach-header h2{font-size:1.5rem}}.homepage{max-width:1200px;margin:0 auto;padding:2rem 1rem}.home-hero{text-align:center;margin-bottom:3rem}.home-title{font-size:2.5rem;background:linear-gradient(135deg,#4fd1c5,#38b2ac);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.home-subtitle{color:#a0aec0;font-size:1.1rem;max-width:600px;margin:0 auto}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:3rem}.action-card{background:linear-gradient(135deg,#1e3a4c,#1a2e3b);border:1px solid #2d4a5a;border-radius:12px;padding:1.5rem;text-align:left;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.5rem}.action-card:hover{transform:translateY(-4px);border-color:#4fd1c5;box-shadow:0 8px 24px #4fd1c526}.action-icon{font-size:2rem}.action-title{font-size:1.1rem;font-weight:600;color:#f7fafc}.action-desc{font-size:.85rem;color:#718096}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.home-section{background:#1a2e3b;border:1px solid #2d4a5a;border-radius:12px;padding:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{font-size:1.1rem;color:#f7fafc;margin:0}.see-all{background:none;border:none;color:#4fd1c5;font-size:.9rem;cursor:pointer;padding:0}.see-all:hover{text-decoration:underline}.event-item{display:grid;grid-template-columns:60px 1fr auto;gap:.75rem;align-items:center;padding:.75rem;background:#ffffff08;border-radius:8px}.event-date{font-size:.85rem;color:#4fd1c5;font-weight:500}.event-title{color:#f7fafc;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-location,.event-instructor{font-size:.8rem;color:#718096}.event-type{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;text-transform:capitalize}.profile-card{display:flex;flex-direction:column;gap:1rem}.profile-header{display:flex;gap:1rem;align-items:center}.avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;background:#2d4a5a;display:flex;align-items:center;justify-content:center}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:1.5rem;color:#4fd1c5;font-weight:600}.profile-info{display:flex;flex-direction:column;gap:.25rem}.profile-info h3{margin:0;color:#f7fafc;font-size:1.1rem}.belt{font-size:.85rem;text-transform:capitalize}.belt-white{color:#f7fafc}.belt-blue{color:#3182ce}.belt-purple{color:#805ad5}.belt-brown{color:#c05621}.belt-black{color:#1a202c;background:#f7fafc;padding:.1rem .5rem;border-radius:4px}.academy{font-size:.85rem;color:#718096}.profile-btn{background:transparent;border:1px solid #4fd1c5;color:#4fd1c5;padding:.75rem;border-radius:8px;cursor:pointer;transition:all .2s}.profile-btn:hover{background:#4fd1c5;color:#1a2e3b}.cta-card{background:linear-gradient(135deg,#234e52,#1a3a3e);border-color:#4fd1c5;text-align:center}.cta-card h3{color:#4fd1c5;margin:0 0 .5rem}.cta-card p{color:#a0aec0;font-size:.95rem;margin-bottom:1rem}.cta-btn{background:#4fd1c5;color:#1a2e3b;border:none;padding:.75rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.cta-btn:hover{background:#38b2ac;transform:scale(1.02)}.user-events{grid-column:1 / -1}.empty-state,.loading{color:#718096;font-size:.95rem;text-align:center;padding:1rem}@media(max-width:768px){.home-title{font-size:1.8rem}.quick-actions{grid-template-columns:repeat(2,1fr)}.home-grid{grid-template-columns:1fr}.event-item{grid-template-columns:50px 1fr}.event-item>*:last-child:not(.event-title){grid-column:2}}.seminars-container{max-width:1200px;margin:0 auto;padding:2rem 1rem}.seminars-header{text-align:center;margin-bottom:2rem}.seminars-header h2{font-size:2rem;color:#f7fafc;margin-bottom:.5rem}.seminars-subtitle{color:#718096;font-size:1.1rem}.seminars-loading{text-align:center;padding:4rem;color:#718096}.seminars-grid{display:flex;flex-direction:column;gap:1rem}.seminar-card{display:grid;grid-template-columns:80px 1fr auto;gap:1.5rem;background:#1a2e3b;border:1px solid #2d4a5a;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s ease}.seminar-card:hover{border-color:#805ad5;box-shadow:0 4px 20px #805ad526}.seminar-card.selected{border-color:#805ad5}.seminar-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#805ad5,#6b46c1);border-radius:8px;padding:.75rem;min-width:70px}.date-day{font-size:1.8rem;font-weight:700;color:#fff;line-height:1}.date-month{font-size:.85rem;color:#fffc;text-transform:uppercase}.seminar-content{display:flex;flex-direction:column;gap:.5rem}.seminar-title{font-size:1.25rem;color:#f7fafc;margin:0}.seminar-instructor{color:#a0aec0;font-size:.95rem;margin:0;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.instructor-badge{background:#1a202c;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;color:#805ad5}.instructor-academy{color:#718096}.seminar-location{color:#718096;font-size:.9rem;margin:0}.seminar-meta{display:flex;gap:1rem;margin-top:.5rem}.meta-item{font-size:.85rem;color:#a0aec0}.meta-item.price{color:#4fd1c5;font-weight:600}.meta-item.spots{color:#48bb78}.meta-item.spots.low{color:#f6ad55}.seminar-tags{display:flex;gap:.5rem;margin-top:.5rem}.seminar-actions{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.btn-register,.btn-calendar{padding:.5rem 1rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s;text-decoration:none}.btn-register{background:#805ad5;color:#fff;border:none}.btn-register:hover{background:#6b46c1}.btn-calendar{background:transparent;border:1px solid #4fd1c5;color:#4fd1c5}.btn-calendar:hover{background:#4fd1c5;color:#1a2e3b}.seminar-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.seminar-modal{background:#1a2e3b;border:1px solid #2d4a5a;border-radius:16px;padding:2rem;max-width:500px;width:100%;position:relative}.modal-close:hover{color:#f7fafc}.seminar-modal h2{color:#f7fafc;margin:0 0 1rem}.modal-instructor,.modal-date,.modal-location{color:#a0aec0;margin:.5rem 0}.modal-description{color:#718096;margin:1rem 0;line-height:1.6}.btn-register-large,.btn-calendar-large{flex:1;padding:.75rem 1rem;border-radius:8px;font-size:.95rem;cursor:pointer;text-align:center;text-decoration:none;transition:all .2s}.btn-register-large{background:#805ad5;color:#fff;border:none}.btn-register-large:hover{background:#6b46c1}.btn-calendar-large{background:transparent;border:1px solid #4fd1c5;color:#4fd1c5}.btn-calendar-large:hover{background:#4fd1c5;color:#1a2e3b}@media(max-width:768px){.seminar-card{grid-template-columns:1fr;gap:1rem}.seminar-date{flex-direction:row;gap:.5rem;justify-content:flex-start;padding:.5rem 1rem}.seminar-actions{flex-direction:row;align-items:center}.modal-actions{flex-direction:column}}.calendar-container{max-width:900px;margin:0 auto;padding:2rem 1rem}.calendar-auth-required{text-align:center;padding:4rem 2rem;color:#a0aec0}.calendar-auth-required h2{color:#f7fafc;margin-bottom:1rem}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.calendar-header h2{font-size:1.5rem;color:#f7fafc;margin:0}.btn-add-event{background:#4fd1c5;color:#1a2e3b;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-event:hover{background:#38b2ac}.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-nav button{background:transparent;border:1px solid #2d4a5a;color:#a0aec0;padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s}.calendar-nav button:hover{background:#2d4a5a;color:#f7fafc}.calendar-nav h3{color:#f7fafc;font-size:1.25rem;margin:0}.calendar-grid{background:#1a2e3b;border:1px solid #2d4a5a;border-radius:12px;overflow:hidden}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#0d1b24}.weekday{padding:1rem;text-align:center;font-weight:600;color:#4fd1c5;font-size:.85rem}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:80px;padding:.5rem;border:1px solid #2d4a5a;cursor:pointer;transition:all .2s;position:relative}.calendar-day:hover{background:#4fd1c51a}.calendar-day.empty{background:#0003;cursor:default}.calendar-day.today{background:#4fd1c526}.calendar-day.today .day-number{background:#4fd1c5;color:#1a2e3b;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.calendar-day.selected{border-color:#4fd1c5;background:#4fd1c533}.day-number{font-size:.9rem;font-weight:500;color:#f7fafc}.day-events{display:flex;gap:4px;margin-top:.5rem;flex-wrap:wrap}.day-event-dot{width:8px;height:8px;border-radius:50%}.selected-date-events{margin-top:2rem;background:#1a2e3b;border:1px solid #2d4a5a;border-radius:12px;padding:1.5rem}.selected-date-events h4{color:#f7fafc;margin:0 0 1rem}.no-events{color:#718096;text-align:center;padding:1rem}.event-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.event-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#ffffff08;border-radius:8px}.event-color{width:4px;height:40px;border-radius:2px;flex-shrink:0}.event-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.event-details .event-title{color:#f7fafc;font-weight:500}.event-time{font-size:.85rem;color:#718096}.event-type{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;text-transform:capitalize;width:fit-content}.type-training{background:#38a169;color:#fff}.type-tournament{background:#e53e3e;color:#fff}.type-seminar{background:#805ad5;color:#fff}.type-competition{background:#dd6b20;color:#fff}.type-other{background:#4a5568;color:#fff}.btn-delete-event{background:none;border:none;font-size:1rem;cursor:pointer;opacity:.6;transition:opacity .2s}.btn-delete-event:hover{opacity:1}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:#1a2e3b;border:1px solid #2d4a5a;border-radius:16px;padding:2rem;max-width:450px;width:100%;position:relative}.modal h3{color:#f7fafc;margin:0 0 1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;color:#a0aec0;font-size:.9rem;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;background:#0d1b24;border:1px solid #2d4a5a;border-radius:8px;color:#f7fafc;font-size:.95rem}.form-group input[type=color]{height:44px;padding:.25rem}.form-group textarea{min-height:80px;resize:vertical}.btn-submit{width:100%;background:#4fd1c5;color:#1a2e3b;border:none;padding:.75rem;border-radius:8px;font-weight:600;cursor:pointer;margin-top:1rem;transition:all .2s}.btn-submit:hover{background:#38b2ac}@media(max-width:768px){.calendar-day{min-height:60px;padding:.25rem}.weekday{padding:.5rem;font-size:.75rem}.day-number{font-size:.8rem}}.gyms-container{max-width:1400px;margin:0 auto;padding:2rem 1rem}.gyms-header{text-align:center;margin-bottom:2rem}.gyms-header h2{font-size:2rem;color:#f7fafc;margin-bottom:.5rem}.gyms-subtitle{color:#718096;font-size:1.1rem}.search-section{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.search-form{display:flex;gap:.5rem;flex:1;min-width:300px}.search-input{flex:1;padding:.75rem 1rem;background:#1a2e3b;border:1px solid #2d4a5a;border-radius:8px;color:#f7fafc;font-size:1rem}.search-input::placeholder{color:#718096}.btn-search{background:#4fd1c5;color:#1a2e3b;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-search:hover{background:#38b2ac}.radius-selector{display:flex;align-items:center;gap:.5rem}.radius-selector label{color:#a0aec0}.radius-selector select{padding:.75rem;background:#1a2e3b;border:1px solid #2d4a5a;border-radius:8px;color:#f7fafc}.gyms-layout{display:grid;grid-template-columns:1fr 400px;gap:1.5rem}.map-container{background:#1a2e3b;border:1px solid #2d4a5a;border-radius:12px;min-height:500px;overflow:hidden}.map-placeholder{height:100%;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3a4c,#0d1b24);position:relative}.map-icon{font-size:4rem;margin-bottom:1rem}.map-placeholder p{color:#718096;margin:.25rem 0}.map-hint{font-size:.9rem;color:#4fd1c5!important}.map-markers{position:absolute;inset:0;pointer-events:none}.map-marker{position:absolute;font-size:1.5rem;cursor:pointer;pointer-events:auto;transition:transform .2s;animation:bounce 2s infinite}.map-marker:hover{transform:scale(1.3)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.gyms-list{display:flex;flex-direction:column;gap:1rem;max-height:600px;overflow-y:auto;padding-right:.5rem}.gym-card{background:#1a2e3b;border:1px solid #2d4a5a;border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease}.gym-card:hover{border-color:#4fd1c5;transform:translate(-4px)}.gym-card.selected{border-color:#4fd1c5;background:#4fd1c51a}.gym-main{margin-bottom:1rem}.gym-name{font-size:1.1rem;color:#f7fafc;margin:0 0 .25rem}.gym-affiliation{font-size:.85rem;color:#805ad5;font-weight:500}.gym-location{color:#718096;font-size:.9rem;margin:.5rem 0 .25rem}.gym-address{color:#4a5568;font-size:.85rem;margin:0}.gym-tags{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.tag{font-size:.75rem;padding:.25rem .5rem;border-radius:4px}.tag.gi{background:#2d3748;color:#f7fafc}.tag.nogi{background:#1a202c;color:#e53e3e}.tag.mma{background:#2c5282;color:#90cdf4}.tag.trial{background:#276749;color:#9ae6b4}.gym-rating{margin-top:.5rem;font-size:.9rem;color:#f6ad55}.gym-actions{display:flex;gap:.5rem}.btn-directions,.btn-website{padding:.5rem .75rem;border-radius:6px;font-size:.85rem;cursor:pointer;text-decoration:none;transition:all .2s}.btn-directions{background:transparent;border:1px solid #4fd1c5;color:#4fd1c5}.btn-directions:hover{background:#4fd1c5;color:#1a2e3b}.btn-website{background:transparent;border:1px solid #718096;color:#718096}.btn-website:hover{background:#718096;color:#1a2e3b}.gym-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.gym-modal{background:#1a2e3b;border:1px solid #2d4a5a;border-radius:16px;padding:2rem;max-width:550px;width:100%;max-height:80vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#718096;font-size:1.5rem;cursor:pointer}.gym-modal h2{color:#f7fafc;margin:0 0 .25rem}.modal-affiliation{color:#805ad5;font-weight:500;margin:0 0 1.5rem}.modal-section{margin-bottom:1.5rem}.modal-section h4{color:#4fd1c5;font-size:.9rem;margin:0 0 .5rem}.modal-section p{color:#a0aec0;margin:.25rem 0}.coaches-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.coach-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#ffffff08;border-radius:6px}.coach-belt{width:12px;height:12px;border-radius:50%;flex-shrink:0}.coach-name{color:#f7fafc}.coach-spec{font-size:.85rem;color:#718096;margin-left:auto}.training-options{display:flex;flex-wrap:wrap;gap:.5rem}.option{font-size:.9rem;color:#a0aec0;padding:.25rem .5rem;background:#ffffff08;border-radius:4px}.option.highlight{color:#48bb78;background:#48bb781a}.modal-section.contact{display:flex;flex-wrap:wrap;gap:.5rem}.contact-btn{padding:.5rem 1rem;background:#ffffff0d;border-radius:6px;color:#a0aec0;text-decoration:none;font-size:.9rem;transition:all .2s}.contact-btn:hover{background:#ffffff1a;color:#f7fafc}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.btn-directions-large,.btn-website-large{flex:1;padding:.75rem;border-radius:8px;font-size:.95rem;cursor:pointer;text-align:center;text-decoration:none;transition:all .2s}.btn-directions-large{background:#4fd1c5;color:#1a2e3b;border:none}.btn-directions-large:hover{background:#38b2ac}.btn-website-large{background:transparent;border:1px solid #805ad5;color:#805ad5}.btn-website-large:hover{background:#805ad5;color:#fff}.loading,.empty-state{text-align:center;padding:2rem;color:#718096}@media(max-width:900px){.gyms-layout{grid-template-columns:1fr}.map-container{min-height:300px}.gyms-list{max-height:none}}@media(max-width:600px){.search-section{flex-direction:column}.search-form{min-width:unset}.modal-actions{flex-direction:column}}.reset-password{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2)}.reset-form{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;width:100%}.reset-form h2{margin-bottom:1.5rem;text-align:center;color:#333;font-size:1.8rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#555;font-weight:500}.form-group input{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#667eea}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn-reset{width:100%;padding:.75rem;background-color:#667eea;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .3s}.btn-reset:hover:not(:disabled){background-color:#5568d3}.btn-reset:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#d32f2f;background-color:#ffebee;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem;text-align:center}.success-message{text-align:center;padding:2rem}.success-message h2{color:#4caf50;margin-bottom:1rem}.success-message p{color:#555;margin-bottom:1rem;line-height:1.6}.success-message a{color:#667eea;text-decoration:none;font-weight:600;transition:color .3s}.success-message a:hover{color:#5568d3}.auth-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-modal{background:var(--dark-light);border:1px solid var(--border);border-radius:1rem;padding:2.5rem;max-width:400px;width:90%;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;transition:color .2s}.auth-modal-close:hover{color:var(--text)}.auth-form h2{margin-bottom:1.5rem;color:var(--text);font-size:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-group input,.form-group select{width:100%;padding:.75rem;background:#0f172a80;border:1px solid var(--border);border-radius:.5rem;color:var(--text);font-size:1rem;transition:border-color .2s;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #10b9811a}.form-group input:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#ef44441a;border:1px solid var(--error);color:var(--error);padding:.75rem;border-radius:.5rem;margin-bottom:1rem;font-size:.875rem}.btn-auth{width:100%;padding:.875rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-weight:600;font-size:1rem;cursor:pointer;transition:background .2s,transform .1s;font-family:inherit}.btn-auth:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.btn-auth:active:not(:disabled){transform:translateY(0)}.btn-auth:disabled{opacity:.6;cursor:not-allowed}.auth-switch{text-align:center;margin-top:1.5rem;color:var(--text-secondary);font-size:.875rem}.auth-switch button{background:none;border:none;color:var(--primary);cursor:pointer;font-weight:600;transition:color .2s;font-family:inherit;font-size:inherit}.auth-switch button:hover{color:var(--primary-dark);text-decoration:underline}.form-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}.btn-forgot{background:none;border:none;color:var(--primary);font-size:.875rem;cursor:pointer;font-family:inherit;transition:color .2s}.btn-forgot:hover{color:var(--primary-dark);text-decoration:underline}.forgot-desc{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem;line-height:1.5}.forgot-success{text-align:center}.forgot-success p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.5}.forgot-success strong{color:var(--text)}.forgot-note{font-size:.85rem;color:var(--text-secondary);opacity:.8}
