@charset "UTF-8";*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;max-width:100%;overflow-x:hidden;scroll-behavior:smooth;user-select:none;-webkit-user-select:none;-ms-user-select:none}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";color:#f7f7f7;background-color:#1e1235;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;width:100%;max-width:100%;display:flex;flex-direction:column;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:12px}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:12px}a{color:#ff9800;text-decoration:none;transition:color .2s ease}a:hover{color:#bf360c}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:8px}.gap-md{gap:12px}.gap-lg{gap:24px}.text-center{text-align:center}.mt-auto{margin-top:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#271848}::-webkit-scrollbar-thumb{background:#8a7ba8;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#c4c4c4}@media(max-width:768px){.container{padding:0 24px}}@media(max-width:640px){.container{padding:0 12px}}.language-selector{position:relative}.language-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 12px;background-color:transparent;color:#f7f7f7;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s ease}.language-btn:hover{background-color:#131129}.language-dropdown{position:absolute;top:calc(100% + 4px);right:0;background-color:#271848;border:1px solid #3d2960;border-radius:8px;min-width:120px;box-shadow:0 10px 15px #0000001a;z-index:1000;overflow:hidden}.language-option{display:block;width:100%;padding:8px 12px;background-color:transparent;color:#f7f7f7;border:none;text-align:left;cursor:pointer;transition:all .2s ease;font-size:14px}.language-option:hover{background-color:#131129}.language-option.active{background-color:#ff9800;color:#1e1235}.btn{display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:14px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;text-decoration:none;white-space:nowrap;min-height:44px;min-width:44px;position:relative}.btn:focus-visible{outline:2px solid #bf360c;outline-offset:2px}.btn:active{transform:translateY(-1px)}.btn:disabled,.btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn.loading{pointer-events:none;opacity:.8}.btn-primary,.btn-form-submit{background-color:#ff9800;color:#fff;border:1px solid #ff9800}.btn-primary:hover:not(:disabled),.btn-form-submit:hover:not(:disabled){background-color:#f57c00;border-color:#f57c00}.btn-primary:active:not(:disabled),.btn-form-submit:active:not(:disabled){background-color:#e65100;border-color:#e65100}.btn-secondary,.btn-outline{background-color:#f3f3f3;color:#3f3f3f;border:1px solid #e8e8e8}.btn-secondary:hover:not(:disabled),.btn-outline:hover:not(:disabled){background-color:#e8e8e8;border-color:#d4d4d4}.btn-secondary:active:not(:disabled),.btn-outline:active:not(:disabled){background-color:#d4d4d4;border-color:#a8a8a8}.btn-tertiary{background-color:transparent;color:#ff9800;border:1px solid transparent}.btn-tertiary:hover:not(:disabled){background-color:#fff3e0;color:#f57c00}.btn-tertiary:active:not(:disabled){background-color:#ffe0b2;color:#e65100}.btn-ghost{background-color:transparent;color:#3f3f3f;border:1px solid transparent}.btn-ghost:hover:not(:disabled){background-color:#f9f9f9;color:#262626}.btn-ghost:active:not(:disabled){background-color:#f3f3f3}.btn-destructive,.btn-danger{background-color:#f44336;color:#fff;border:1px solid #f44336}.btn-destructive:hover:not(:disabled),.btn-danger:hover:not(:disabled){background-color:#e53935;border-color:#e53935}.btn-destructive:active:not(:disabled),.btn-danger:active:not(:disabled){background-color:#c62828;border-color:#c62828}.submit-btn,.login-submit-btn{width:100%;padding:14px 12px;background:#ff9800;color:#fff;border:none;border-radius:9999px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 30px #ff98004d;margin-top:8px}.submit-btn:hover:not(:disabled),.login-submit-btn:hover:not(:disabled){background:#f57c00;transform:translateY(-2px);box-shadow:0 12px 40px #ff980080}.submit-btn:disabled,.login-submit-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-success{background-color:#4caf50;color:#fff;border:1px solid #4caf50}.btn-success:hover:not(:disabled){background-color:#45a049;border-color:#45a049}.btn-sm{height:32px;padding:4px 16px;font-size:12px}.btn-md,.btn-form-cancel,.btn-form-submit{height:40px;padding:8px 16px;font-size:14px}.btn-lg{height:48px;padding:8px 24px;font-size:16px}.btn-full{width:100%;justify-content:center}.btn-form-submit{width:100%;padding:12px 32px;font-weight:700;box-shadow:0 8px 24px #ff98004d}.btn-form-submit:hover:not(:disabled){background:#f57c00;transform:translateY(-2px);box-shadow:0 12px 32px #ff980066}.btn-form-submit:active:not(:disabled){transform:translateY(0)}.btn-form-submit:disabled{opacity:.6;cursor:not-allowed}.btn-form-cancel{background:#fff;color:#262626;border:1px solid #d4d4d4;font-weight:500;box-shadow:0 2px 8px #00000014}.btn-form-cancel:hover:not(:disabled){background:#f9f9f9;border-color:#a8a8a8;box-shadow:0 4px 12px #0000001f}.btn-form-cancel:active:not(:disabled){transform:translateY(-1px)}.btn-form-cancel:disabled{opacity:.6;cursor:not-allowed}@media(prefers-contrast:more){.btn{border-width:2px}.btn:focus-visible{outline-width:3px}}@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:active{transform:none}}.header{position:sticky;top:0;z-index:1020;background:#0d0b1ab8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.07);transition:background-color .3s ease,box-shadow .3s ease}.header-container{display:flex;align-items:center;padding:0 24px;justify-content:space-between;height:68px;gap:8px}.logo{display:flex;align-items:center;justify-content:center;text-decoration:none;flex-shrink:0}.logo-icon img{width:2.6rem;transition:transform .3s ease}.logo-icon img:hover{transform:scale(1.08) rotate(-4deg)}.nav{display:flex;align-items:center;justify-content:center;gap:8px}.nav-link{color:#c4c4c4;font-weight:500;font-size:14px;padding:8px 12px;border-radius:8px;transition:all .2s ease;position:relative;text-decoration:none;letter-spacing:.01em}.nav-link:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%) scaleX(0);width:18px;height:2px;background:#ff9800;border-radius:9999px;transition:transform .2s ease}.nav-link:hover{color:#f7f7f7}.nav-link:hover:after{transform:translate(-50%) scaleX(1)}.nav-link.active{color:#ff9800;font-weight:600}.nav-link.active:after{transform:translate(-50%) scaleX(1)}.header-actions{display:flex;gap:12px;align-items:center}.login-btn{background-color:transparent;border:1.5px solid #ff9800;color:#ff9800;border-radius:9999px;padding:8px 24px;font-weight:600;font-size:14px;transition:all .2s ease;letter-spacing:.02em}.login-btn:hover{background-color:#ff9800;color:#131129;box-shadow:0 4px 20px #ff980059;transform:translateY(-1px)}.mobile-menu-btn{display:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background-color:transparent;color:#f7f7f7;cursor:pointer;border-radius:8px;transition:background-color .2s ease}.mobile-menu-btn:hover{background:#ffffff0f}.mobile-nav{display:none;flex-direction:column;padding:8px 0 12px;border-top:1px solid rgba(255,255,255,.07);background:#0d0b1af7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.mobile-nav-link{display:block;padding:12px 32px;color:#c4c4c4;font-weight:500;font-size:16px;transition:all .2s ease;text-decoration:none}.mobile-nav-link:hover,.mobile-nav-link.active{color:#ff9800;background-color:#ff98000f}@media(max-width:768px){.desktop-nav{display:none}.mobile-menu-btn,.mobile-nav{display:flex}.header-actions{min-width:auto}.header-actions .icon-btn:not(:last-child){display:none}.header-container{padding:0 12px}}.footer{background:linear-gradient(180deg,#1e1235,#131129);color:#f7f7f7;padding:48px 0 32px;margin-top:auto;position:relative}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,152,0,.4) 30%,rgba(255,152,0,.6) 50%,rgba(255,152,0,.4) 70%,transparent 100%)}.footer-content{display:flex;flex-direction:column;align-items:center;gap:24px;margin-bottom:24px}.footer-nav{display:flex;gap:48px;flex-wrap:wrap;justify-content:center}.footer-link{color:#c4c4c4;font-size:14px;font-weight:500;transition:color .2s ease;text-decoration:none;letter-spacing:.02em}.footer-link:hover{color:#ff9800}.social-links{display:flex;gap:12px;justify-content:center}.social-link{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:9999px;background-color:#ffffff0a;color:#c4c4c4;border:1px solid rgba(255,255,255,.08);transition:all .2s ease;font-size:14px}.social-link:hover{background-color:#ff9800;border-color:#ff9800;color:#131129;transform:translateY(-3px);box-shadow:0 6px 20px #ff98004d}.footer-bottom{padding-top:24px;border-top:1px solid rgba(255,255,255,.06);text-align:center;font-size:12px}.footer-bottom a{color:#8a7ba8;text-decoration:none;transition:color .2s ease;letter-spacing:.02em}.footer-bottom a:hover{color:#ff9800}@media(max-width:768px){.footer{padding:32px 0 24px}.footer-content{gap:12px}.footer-nav{flex-direction:column;align-items:center;gap:12px}.social-links{gap:8px}.social-link{width:34px;height:34px}.footer-bottom{padding-top:12px}}@media(max-width:640px){.footer{padding:24px 0 12px}.footer-nav{gap:8px}.social-link{width:32px;height:32px}}.app{min-height:100vh;width:100%;max-width:100%;display:flex;flex-direction:column;overflow-x:hidden;user-select:none;-webkit-user-select:none;-ms-user-select:none}.main-content{flex:1;width:100%;max-width:100%;user-select:none;-webkit-user-select:none;-ms-user-select:none}.landing-page{background-color:#1e1235;min-height:100vh;width:100%;max-width:100%;color:#f7f7f7;overflow-x:hidden}.landing-hero{position:relative;padding:64px 0 96px;overflow:hidden}.hero-bg-orb{position:absolute;border-radius:9999px;pointer-events:none;will-change:transform;animation:orb-float 8s ease-in-out infinite}.hero-bg-orb--1{top:-180px;right:-120px;width:560px;height:560px;background:radial-gradient(circle,rgba(255,152,0,.2) 0%,transparent 65%);animation-delay:0s}.hero-bg-orb--2{bottom:-100px;left:-80px;width:420px;height:420px;background:radial-gradient(circle,rgba(99,102,241,.15) 0%,transparent 65%);animation-delay:-3s}.hero-bg-orb--3{top:40%;left:40%;width:300px;height:300px;background:radial-gradient(circle,rgba(168,85,247,.07) 0%,transparent 65%);animation-delay:-6s}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:center;position:relative;z-index:1}.hero-left{max-width:540px}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:#ff98001a;border:1px solid rgba(255,152,0,.28);color:#ffb84d;padding:4px 8px;border-radius:9999px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:32px}.hero-badge-dot{display:inline-block;width:6px;height:6px;background:#ff9800;border-radius:9999px;box-shadow:0 0 6px #ff9800;animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{opacity:1;box-shadow:0 0 6px #ff9800}50%{opacity:.6;box-shadow:0 0 12px #ff9800}}.hero-title{font-size:56px;font-weight:700;line-height:1.2;margin:0 0 24px;letter-spacing:-.02em;color:#f7f7f7}.hero-subtitle{font-size:18px;line-height:1.6;color:#c4c4c4;margin:0 0 48px;max-width:460px}.hero-cta-group{display:flex;align-items:center;gap:32px;margin-bottom:48px}.hero-cta-btn{padding:16px 48px;font-size:16px;font-weight:600;border-radius:9999px;transition:all .3s ease;box-shadow:0 8px 30px #ff980059}.hero-cta-btn:hover{transform:translateY(-2px);box-shadow:0 12px 40px #ff980080}.hero-cta-secondary{display:inline-flex;align-items:center;gap:8px;color:#c4c4c4;font-size:16px;font-weight:500;text-decoration:none;transition:all .2s ease;padding:16px 0}.hero-cta-secondary .cta-arrow{display:inline-block;transition:transform .2s ease}.hero-cta-secondary:hover{color:#ff9800}.hero-cta-secondary:hover .cta-arrow{transform:translate(5px)}.hero-stats{display:flex;align-items:center;gap:32px;padding-top:32px;border-top:1px solid rgba(255,255,255,.07)}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-number{font-size:24px;font-weight:700;color:#ff9800;line-height:1.1}.stat-label{font-size:12px;color:#c4c4c4;font-weight:500;letter-spacing:.02em}.stat-divider{width:1px;height:36px;background:#ffffff1a;flex-shrink:0}.hero-right{display:flex;align-items:center;justify-content:center;position:relative}.hero-illustration-wrapper{position:relative;width:100%;max-width:520px}.hero-illustration-glow{position:absolute;inset:-40px;background:radial-gradient(circle at center,rgba(255,152,0,.08) 0%,transparent 65%);border-radius:9999px;pointer-events:none}.hero-illustration{position:relative;z-index:1}.hero-illustration img{width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 20px 60px rgba(255,152,0,.15));animation:hero-float 6s ease-in-out infinite}@keyframes hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@media(max-width:1024px){.hero-grid{grid-template-columns:1fr;gap:64px}.hero-left,.hero-subtitle{max-width:100%}.hero-title{font-size:40px}.hero-illustration-wrapper{max-width:420px;margin:0 auto}}@media(max-width:768px){.landing-hero{padding:96px 0}.hero-title{font-size:36px}.hero-subtitle{font-size:16px}.hero-cta-group{flex-wrap:wrap;gap:12px}.hero-stats{gap:24px}.stat-number{font-size:20px}}@media(max-width:640px){.landing-hero{padding:64px 0 96px}.hero-title{font-size:28px;margin-bottom:12px}.hero-subtitle{font-size:14px;margin-bottom:24px}.hero-cta-btn{width:100%;justify-content:center}.hero-stats{gap:12px;flex-wrap:wrap}.stat-divider{display:none}.hero-illustration-wrapper{max-width:300px}}.back-button{display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:all .2s ease;font-weight:600}.back-button:focus-visible{outline:2px solid #bf360c;outline-offset:2px;border-radius:8px}.back-button-pill{padding:8px 16px;border-radius:9999px;background:#ff980014;border:1px solid rgba(255,152,0,.2);color:#ffb84d;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.back-button-pill:hover{transform:translate(-4px);background:#ff98001f;box-shadow:0 0 20px #ff980026}.back-button-text{color:#f7f7f7;font-size:14px}.back-button-text:hover{color:#ff9800}@media(prefers-reduced-motion:reduce){.back-button{transition:none}.back-button:hover{transform:none}}.card{background-color:#1e1235;border:1px solid #3d2960;border-radius:12px;transition:all .2s ease}.card-hover:hover{box-shadow:0 10px 15px #0000001a;transform:translateY(-2px);cursor:pointer}.card-padding-sm{padding:12px}.card-padding-md{padding:24px}.card-padding-lg{padding:32px}.card-padding-none{padding:0}.input-wrapper{display:flex;flex-direction:column;gap:8px}.input-wrapper-full{width:100%}.input-container{position:relative;display:flex;align-items:center}.input-label{font-size:12px;font-weight:600;color:#f7f7f7;display:block}.input-label .input-required{color:#f44336;margin-left:2px}.input,.input-disabled{width:100%;font-family:inherit;color:#3f3f3f;background-color:#fff;border:1px solid #e8e8e8;border-radius:8px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;font-size:14px;line-height:1.5;min-height:44px}.input::placeholder,.input-disabled::placeholder{color:#a8a8a8}.input:focus-visible,.input-disabled:focus-visible{outline:none;border-color:#ff9800;box-shadow:0 0 0 2px #ff98001a}.input:disabled,.input-disabled:disabled,.input[aria-disabled=true],[aria-disabled=true].input-disabled{background-color:#f9f9f9;border-color:#e8e8e8;color:#a8a8a8;cursor:not-allowed;opacity:1}.input:disabled::placeholder,.input-disabled:disabled::placeholder,.input[aria-disabled=true]::placeholder,[aria-disabled=true].input-disabled::placeholder{color:#d4d4d4}.input-sm{height:32px;padding:8px 12px;font-size:12px}.input-md{height:40px;padding:10px 12px;font-size:14px}.input-lg{height:48px;padding:12px 16px;font-size:16px}.input-error{border-color:#f44336}.input-error:focus-visible{border-color:#f44336;box-shadow:0 0 0 3px #f443361a}.input-success{border-color:#4caf50}.input-success:focus-visible{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.input-success:after{content:"✓"}.input-disabled:disabled{opacity:1}.input-with-icon.input-icon-left{padding-left:64px}.input-with-icon.input-icon-right{padding-right:64px}.input-icon{position:absolute;display:flex;align-items:center;justify-content:center;color:gray;pointer-events:none;width:40px;height:40px;font-size:18px}.input-icon.input-icon-left{left:0}.input-icon.input-icon-right{right:0}.input-error-text{font-size:11px;color:#f44336;margin-top:4px}.input-success-text{font-size:11px;color:#4caf50;margin-top:4px}.input-help-text{font-size:11px;color:#c4c4c4;margin-top:4px}.input-full{width:100%}.input-wrapper-admin{display:flex;flex-direction:column;gap:8px}.input-wrapper-admin .input-label{font-size:14px;font-weight:500;color:#3f3f3f}.input-wrapper-admin .input-container{position:relative;display:flex;align-items:center}.input-wrapper-admin .input-help-text{color:#5c5c5c;font-size:12px}.input-wrapper-admin .input-error-text{color:#f44336;font-size:12px}.input-admin{width:100%;height:44px;padding:0 12px 0 40px;background:#5c5c5c1a;border:1px solid rgba(168,168,168,.3);border-radius:8px;color:#262626;font-size:16px;transition:all .2s ease;font-family:inherit}.input-admin::placeholder{color:gray}.input-admin:focus-visible{outline:none;border-color:#ff9800;background:#5c5c5c26;box-shadow:0 0 0 3px #ff980026}.input-admin:disabled{background:#a8a8a80d;border-color:#a8a8a826;color:gray;cursor:not-allowed}.input-admin:disabled::placeholder{color:#a8a8a8}.input-admin.input-error{border-color:#f44336;background:#f443360f}.input-admin.input-error:focus-visible{border-color:#f44336;box-shadow:0 0 0 3px #f443361f}.input-wrapper-admin .input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:gray;font-size:14px;pointer-events:none;z-index:1}.input-wrapper-full,.input-full{width:100%}@media(prefers-contrast:more){.input,.input-disabled{border-width:2px}.input:focus-visible,.input-disabled:focus-visible{outline:3px solid #ff9800;outline-offset:2px}}@media(prefers-reduced-motion:reduce){.input,.input-disabled{transition:none}}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:24px;padding:12px;background-color:#271848;border-radius:12px;border:1px solid #3d2960}.filter-bar .search-wrapper{position:relative;display:flex;align-items:center;flex:1;min-width:min(250px,100%)}.filter-bar .search-wrapper .search-icon{position:absolute;left:12px;color:#8a7ba8;pointer-events:none}.filter-bar .search-wrapper .filter-search-input{width:100%;padding:8px 12px 8px 2.5rem;font-size:16px;font-family:inherit;color:#f7f7f7;background-color:#1e1235;border:1px solid #3d2960;border-radius:8px;transition:all .2s ease;outline:none}.filter-bar .search-wrapper .filter-search-input:focus{border-color:#ff9800;box-shadow:0 0 0 3px #6366f11a}.filter-bar .search-wrapper .filter-search-input::placeholder{color:#8a7ba8}.filter-bar .search-wrapper .clear-search-btn{position:absolute;right:12px;background:none;border:none;color:#8a7ba8;cursor:pointer;padding:4px;transition:color .2s ease;display:flex;align-items:center;justify-content:center}.filter-bar .search-wrapper .clear-search-btn:hover{color:#f7f7f7}.filter-bar .filters-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filter-bar .filters-group .filter-select-wrapper{position:relative}.filter-bar .filters-group .filter-select-wrapper .filter-select{padding:8px 24px 8px 12px;font-size:16px;font-family:inherit;color:#f7f7f7;background-color:#1e1235;border:1px solid #3d2960;border-radius:8px;transition:all .2s ease;outline:none;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' 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 8px center;background-size:1rem}.filter-bar .filters-group .filter-select-wrapper .filter-select:focus{border-color:#ff9800;box-shadow:0 0 0 3px #6366f11a}.filter-bar .filters-group .clear-filters-btn{padding:8px 12px;font-size:14px;font-weight:500;color:#c4c4c4;background-color:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease}.filter-bar .filters-group .clear-filters-btn:hover{color:#f44336;background-color:#ef44440d}[data-theme=light] .filter-bar{background-color:#fff;border-color:#00000014}[data-theme=light] .filter-bar .search-wrapper .search-icon{color:#828282}[data-theme=light] .filter-bar .search-wrapper .filter-search-input{background-color:#f4f7fe;color:#1a1a1a;border-color:#00000014}[data-theme=light] .filter-bar .search-wrapper .filter-search-input:focus{background-color:#fff;border-color:#ff9800}[data-theme=light] .filter-bar .search-wrapper .filter-search-input::placeholder{color:#828282}[data-theme=light] .filter-bar .search-wrapper .clear-search-btn{color:#828282}[data-theme=light] .filter-bar .search-wrapper .clear-search-btn:hover{color:#1a1a1a}[data-theme=light] .filter-bar .filters-group .filter-select-wrapper .filter-select{background-color:#f4f7fe;color:#1a1a1a;border-color:#00000014}[data-theme=light] .filter-bar .filters-group .filter-select-wrapper .filter-select:focus{background-color:#fff;border-color:#ff9800}[data-theme=light] .filter-bar .filters-group .clear-filters-btn{color:#4f4f4f}[data-theme=light] .filter-bar .filters-group .clear-filters-btn:hover{color:#ef4444;background-color:#ef44440d}.carousel{width:100%;direction:ltr}.carousel__viewport{overflow:hidden}.carousel__container{display:flex;touch-action:pan-y}.carousel__slide{min-width:0}.carousel__slide--1{flex:0 0 100%}.carousel__slide--2{flex:0 0 calc(50% - 12px)}.carousel__slide--3{flex:0 0 calc(33.333% - 16px)}.carousel__slide--4{flex:0 0 calc(25% - 18px)}.carousel__dots{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1.5rem}.carousel__dot{width:10px;height:10px;border-radius:50%;border:none;background:#d6d6d6;cursor:pointer;transition:all .2s ease}.carousel__dot--active{background:#ff9800;transform:scale(1.2)}@media(max-width:992px){.carousel__slide--4,.carousel__slide--3{flex:0 0 calc(50% - 12px)}}@media(max-width:768px){.carousel__slide--1,.carousel__slide--2,.carousel__slide--3,.carousel__slide--4{flex:0 0 100%}}.what-we-offer{padding:64px 0 96px;background:#1e1235;position:relative;overflow:hidden}.what-we-offer:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:900px;height:600px;background:radial-gradient(ellipse at center,rgba(255,152,0,.04) 0%,transparent 65%);pointer-events:none}.offerings-list{display:flex;flex-direction:column;gap:24px;position:relative;z-index:1}.feature-row{display:flex;flex-direction:row;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.07);min-height:300px;transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease}.feature-row--reverse{flex-direction:row-reverse}.feature-row:hover{border-color:#ffffff24;box-shadow:0 20px 60px #00000073;transform:translateY(-3px)}.feature-row:hover .feature-visual img{transform:scale(1.05)}.feature-visual{flex:0 0 44%;background:var(--card-gradient);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.feature-visual img{width:72%;height:auto;max-height:82%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 12px 32px rgba(0,0,0,.3));transition:transform .3s ease;display:block}.feature-dots{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1px);background-size:20px 20px;pointer-events:none}.feature-circle{position:absolute;border-radius:9999px;background:#ffffff12;pointer-events:none}.feature-circle--lg{width:260px;height:260px;bottom:-90px;right:-70px}.feature-circle--sm{width:130px;height:130px;top:-40px;left:-40px}.feature-content{flex:1;background:var(--row-accent, rgba(255, 255, 255, .015));padding:64px 96px;display:flex;flex-direction:column;justify-content:center;gap:24px;position:relative}.feature-content:before{content:"";position:absolute;top:15%;bottom:15%;left:0;width:2px;background:linear-gradient(to bottom,transparent,var(--row-solid),transparent);border-radius:2px;opacity:.6}.feature-row--reverse .feature-content:before{left:auto;right:0}.feature-number{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--row-solid);background:var(--row-accent);border:1px solid var(--row-border);padding:4px 12px;border-radius:9999px;width:fit-content}.offering-title{font-size:28px;font-weight:700;color:#f7f7f7;margin:0;line-height:1.25;letter-spacing:-.01em}.offering-description{font-size:16px;line-height:1.6;color:#c4c4c4;margin:0;max-width:420px}.feature-cta{display:inline-flex;align-items:center;gap:8px;color:#ff9800;font-size:14px;font-weight:600;text-decoration:none;width:fit-content;transition:gap .2s ease,opacity .2s ease}.feature-cta .feature-cta-arrow{display:inline-block;transition:transform .2s ease}.feature-cta:hover{opacity:.85}.feature-cta:hover .feature-cta-arrow{transform:translate(5px)}.feature-card-mobile{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.07)}.feature-card-mobile .feature-visual{flex:none;height:220px}.feature-card-mobile .feature-visual img{width:60%;max-height:85%}.feature-card-mobile .feature-content{padding:32px;gap:8px}@media(max-width:1024px){.section-title{font-size:36px}.feature-content{padding:48px 64px}.offering-title{font-size:24px}}@media(max-width:768px){.what-we-offer{padding:48px 0 64px}.section-header{margin-bottom:32px}.section-title{font-size:28px}.feature-row{min-height:240px}.feature-visual{flex:0 0 40%}.feature-visual img{width:80%}.feature-content{padding:32px 48px;gap:12px}.offering-title{font-size:20px}.offering-description{font-size:14px;max-width:100%}.feature-cta{font-size:12px}}@media(max-width:640px){.what-we-offer{padding:32px 0 48px}.section-title{font-size:24px}.feature-card-mobile .feature-content{padding:24px}.offering-title{font-size:18px}.offering-description{font-size:14px}}.why-kami-section{padding:96px 0;background-color:#1e1235;position:relative;overflow:hidden}.why-kami-section:before{content:"";position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,152,0,.15),transparent)}.section-badge{display:inline-flex;align-items:center;background:#ff980014;border:1px solid rgba(255,152,0,.22);color:#ff9800;padding:5px 14px;border-radius:9999px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}.why-kami-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;position:relative;z-index:1}.why-kami-card{padding:48px 32px;background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:16px;transition:all .3s ease;position:relative;overflow:hidden}.why-kami-card:before{content:"";position:absolute;bottom:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,152,0,.5),transparent);opacity:0;transition:opacity .3s ease}.why-kami-card:hover{border-color:#ff980033;background:#ffffff0a;transform:translateY(-4px);box-shadow:0 16px 48px #0000004d,0 0 30px #ff98000d}.why-kami-card:hover:before{opacity:1}.why-kami-card:hover .why-kami-icon{background:#ff98002e;box-shadow:0 8px 24px #ff980040}.why-kami-icon{width:52px;height:52px;border-radius:12px;background:#ff98001a;border:1px solid rgba(255,152,0,.2);display:flex;align-items:center;justify-content:center;margin-bottom:24px;transition:all .3s ease}.why-kami-icon svg{width:24px;height:24px;color:#ff9800}.why-kami-feature-title{font-size:18px;font-weight:600;color:#f7f7f7;margin:0 0 8px;line-height:1.3}.why-kami-feature-description{font-size:14px;line-height:1.6;color:#c4c4c4;margin:0}@media(max-width:1024px){.why-kami-grid{grid-template-columns:repeat(2,1fr);gap:24px}.section-title{font-size:36px}}@media(max-width:768px){.why-kami-section{padding:64px 0}.section-header{margin-bottom:32px}.section-title{font-size:28px}.why-kami-card{padding:32px 24px}}@media(max-width:640px){.why-kami-section{padding:48px 0}.section-title{font-size:24px}.why-kami-grid{grid-template-columns:1fr;gap:12px}.why-kami-feature-title{font-size:16px}}.testimonials-section{padding:96px 0;background-color:#1e1235;position:relative;overflow:hidden}.testimonials-section:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,152,0,.2),transparent)}.section-header{text-align:center;margin-bottom:48px}.section-badge{display:inline-flex;align-items:center;background:#ff980014;border:1px solid rgba(255,152,0,.22);color:#ff9800;padding:4px 8px;border-radius:9999px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}.section-title{font-size:40px;font-weight:700;color:#f7f7f7;margin:0;line-height:1.2;letter-spacing:-.02em}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:1200px;margin:0 auto;position:relative;z-index:1}.testimonial-card{background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:48px;transition:all .3s ease;position:relative;overflow:hidden}.testimonial-card:after{content:"";position:absolute;bottom:-40px;right:-40px;width:150px;height:150px;background:radial-gradient(circle,rgba(255,152,0,.06) 0%,transparent 65%);opacity:0;transition:opacity .3s ease;pointer-events:none}.testimonial-card:hover{transform:translateY(-5px);border-color:#ff98002e;background:#ffffff0a;box-shadow:0 20px 60px #00000059,0 0 40px #ff98000f}.testimonial-card:hover:after{opacity:1}.testimonial-quote-mark{position:absolute;top:12px;inset-inline-start:20px;font-size:5rem;line-height:1;color:#ff98001f;font-family:Georgia,Times New Roman,serif;font-weight:700;-webkit-user-select:none;user-select:none;pointer-events:none}.testimonial-stars{display:flex;gap:4px;margin-bottom:12px;position:relative;z-index:1}.star{color:#ff9800;font-size:16px;line-height:1}.testimonial-quote{font-size:16px;line-height:1.6;color:#c4c4c4;margin:0 0 32px;font-style:italic;position:relative;z-index:1}.testimonial-author{display:flex;align-items:center;gap:12px;position:relative;z-index:1}.author-avatar{width:44px;height:44px;border-radius:9999px;background:linear-gradient(135deg,#ff9800,#bf360c);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;box-shadow:0 4px 12px #ff980040}.author-info h4{font-size:16px;font-weight:600;margin:0 0 4px;color:#f7f7f7}.author-info p{font-size:14px;margin:0;color:#ff9800;font-weight:500}@media(max-width:1024px){.testimonials-section{padding:96px 0}.testimonials-grid{grid-template-columns:repeat(2,1fr);gap:24px}.section-title{font-size:36px}}@media(max-width:768px){.testimonials-section{padding:96px 0}.section-header{margin-bottom:48px}.section-title{font-size:28px}.testimonials-grid{grid-template-columns:1fr;gap:24px}.testimonial-card{padding:32px}.testimonial-quote{font-size:14px}.author-avatar{width:40px;height:40px;font-size:18px}.author-info h4{font-size:14px}.author-info p{font-size:12px}}@media(max-width:640px){.testimonials-section{padding:64px 0}.section-title{font-size:24px}.testimonials-grid{gap:12px}.testimonial-card{padding:24px}.testimonial-quote{font-size:14px;margin-bottom:24px}.author-avatar{width:36px;height:36px;font-size:16px}.author-info h4{font-size:12px}.author-info p{font-size:11px}}.form-group.turnstile-container{display:flex;justify-content:center;margin:1rem 0;padding:.5rem;border-radius:4px;background:#f9f9f9}.form-group.turnstile-container #turnstile-container{display:flex;justify-content:center}.form-group.turnstile-container iframe{border-radius:4px}@media(max-width:768px){.form-group.turnstile-container{padding:.25rem;margin:.75rem 0}.form-group.turnstile-container #turnstile-container{transform:scale(.9);transform-origin:center}}.back-link{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;color:#c4c4c4;text-decoration:none;font-size:14px;font-weight:500;transition:all .2s ease;border-radius:8px;cursor:pointer}[dir=rtl] .back-link{flex-direction:row-reverse}.back-link:hover{color:#ff9800;background:#ff980014}.back-link:hover .back-link__icon{animation:slideInRight .3s ease-out}[dir=rtl] .back-link:hover .back-link__icon{animation:slideInLeft .3s ease-out}.back-link:active{transform:scale(.98)}.back-link__icon{display:flex;align-items:center;justify-content:center;font-size:16px;transition:transform .2s ease}.back-link__label{white-space:nowrap;transition:all .2s ease}@keyframes slideInRight{0%{transform:translate(-6px);opacity:.7}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(6px);opacity:.7}to{transform:translate(0);opacity:1}}.login-page{min-height:100vh;position:relative;display:flex;align-items:center;justify-content:center;padding:64px 24px;background:#1e1235;overflow:hidden}.login-page:before,.login-page:after{content:"";position:absolute;border-radius:9999px;pointer-events:none;filter:blur(80px);animation:orb-float 10s ease-in-out infinite}.login-page:before{width:38rem;height:38rem;top:-12rem;right:-12rem;background:radial-gradient(circle,rgba(255,152,0,.18) 0%,transparent 70%)}.login-page:after{width:30rem;height:30rem;bottom:-10rem;left:-10rem;background:radial-gradient(circle,rgba(99,102,241,.16) 0%,transparent 70%);animation-delay:-4s}@keyframes orb-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.05)}}.login-container{display:grid;grid-template-columns:1fr 1fr;max-width:1200px;width:100%;position:relative;z-index:2;border-radius:16px;overflow:hidden;background:linear-gradient(145deg,#271848f5,#131129fa);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 30px 80px #00000073,0 0 50px #ff980014}.login-box{padding:96px;display:flex;flex-direction:column;justify-content:center}.login-header{margin-bottom:48px}.login-header .back-link{display:inline-flex;margin-bottom:24px}.login-header h1{margin:0 0 8px;font-size:32px;font-weight:700;line-height:1.2;color:#f7f7f7}.login-header p{margin:0;color:#c4c4c4;font-size:16px;line-height:1.6;max-width:420px}.error-box{margin-bottom:24px}.error-message{display:flex;align-items:center;gap:8px;padding:16px;background:#f4433614;border:1px solid rgba(244,67,54,.25);border-radius:8px;color:#f7f7f7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.error-message .error-icon{font-size:18px}.login-form{display:flex;flex-direction:column;gap:24px}.form-footer{display:flex;align-items:center;justify-content:space-between;margin:16px 0}.remember-me{display:flex;align-items:center;gap:8px;color:#c4c4c4;font-size:14px}.remember-me input[type=checkbox]{accent-color:#ff9800;cursor:pointer}.forgot-link{color:#ffb84d;text-decoration:none;font-size:14px;font-weight:600;transition:all .2s ease}.forgot-link:hover{color:#ff9800}.login-illustration{position:relative;display:flex;align-items:center;justify-content:center;padding:96px;background:linear-gradient(135deg,#271848,#1e1235);overflow:hidden}.login-illustration:before{content:"";position:absolute;width:26rem;height:26rem;top:-8rem;right:-8rem;border-radius:9999px;background:radial-gradient(circle,rgba(255,152,0,.1),transparent 70%);animation:orb-float 8s ease-in-out infinite}.illustration-content{position:relative;z-index:2;text-align:center}.illustration-content h2{margin-bottom:12px;font-size:32px;font-weight:700;color:#f7f7f7}.illustration-content p{color:#c4c4c4;font-size:16px;line-height:1.6;margin-bottom:48px}.illustration-icons{display:flex;justify-content:center;gap:32px}.illustration-icons span{font-size:3.5rem;animation:icon-float 4s ease-in-out infinite}.illustration-icons span:nth-child(2){animation-delay:.5s}.illustration-icons span:nth-child(3){animation-delay:1s}@keyframes icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media(max-width:1024px){.login-container{grid-template-columns:1fr}.login-illustration{display:none}.login-box{padding:64px}}@media(max-width:768px){.login-page{padding:32px 12px;height:100vh}.login-box{padding:48px}}@media(max-width:640px){.login-page{padding:0}.login-container{min-height:100vh;border-radius:0}.login-box{padding:48px 24px}}.forgot-password-page{min-height:100vh;background-color:#1e1235;display:flex;align-items:center;justify-content:center;padding:48px 24px;position:relative;overflow:hidden}.fp-bg-orb{position:absolute;border-radius:9999px;pointer-events:none;will-change:transform;animation:orb-float 8s ease-in-out infinite}.fp-bg-orb--1{top:-160px;right:-100px;width:500px;height:500px;background:radial-gradient(circle,rgba(255,152,0,.18) 0%,transparent 65%);animation-delay:0s}.fp-bg-orb--2{bottom:-120px;left:-80px;width:400px;height:400px;background:radial-gradient(circle,rgba(99,102,241,.13) 0%,transparent 65%);animation-delay:-3s}.fp-bg-orb--3{top:50%;left:35%;width:280px;height:280px;background:radial-gradient(circle,rgba(168,85,247,.07) 0%,transparent 65%);animation-delay:-6s}@keyframes orb-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.04)}}.forgot-password-container{display:grid;grid-template-columns:1fr 1fr;max-width:1200px;width:100%;border-radius:16px;overflow:hidden;box-shadow:0 24px 80px #00000080;position:relative;z-index:1;border:1px solid #3d2960}.forgot-password-box{padding:96px 50px;background:#271848f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.forgot-password-header{margin-bottom:48px}.forgot-password-header .back-link{display:inline-flex;margin-bottom:32px}.forgot-password-header h1{font-size:36px;font-weight:700;margin:0 0 12px;line-height:1.2;letter-spacing:-.02em;color:#f7f7f7}.forgot-password-header p{font-size:16px;color:#c4c4c4;margin:0;line-height:1.6}.error-box{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.error-box .error-message{display:flex;align-items:center;gap:8px;padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:14px}.error-box .error-message .error-icon{font-size:18px;flex-shrink:0}.success-state{text-align:center;padding:48px 0}.success-state .success-icon{font-size:3.5rem;color:#4caf50;margin-bottom:24px;animation:scaleIn .5s ease-out}.success-state h2{font-size:24px;font-weight:700;margin:0 0 12px;color:#f7f7f7}.success-state .success-message{font-size:16px;color:#c4c4c4;line-height:1.6;margin-bottom:48px}.success-state .back-to-login-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 48px;background:#ff9800;color:#fff;text-decoration:none;border-radius:9999px;font-weight:600;font-size:16px;transition:all .3s ease;box-shadow:0 8px 30px #ff980059}.success-state .back-to-login-btn:hover{background:#bf360c;transform:translateY(-2px);box-shadow:0 12px 40px #ff980080}.forgot-password-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#c4c4c4;letter-spacing:.01em}.forgot-password-illustration{background:linear-gradient(145deg,#131129 0% 60%,#27184866);padding:96px 50px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.illustration-inner-orb{position:absolute;border-radius:9999px;pointer-events:none}.illustration-inner-orb--1{top:-60px;right:-60px;width:260px;height:260px;background:radial-gradient(circle,rgba(255,152,0,.12) 0%,transparent 70%)}.illustration-inner-orb--2{bottom:-40px;left:-40px;width:200px;height:200px;background:radial-gradient(circle,rgba(99,102,241,.1) 0%,transparent 70%)}.illustration-content{text-align:center;color:#f7f7f7;position:relative;z-index:1;max-width:340px}.illustration-content .illustration-badge{display:inline-flex;align-items:center;gap:8px;background:#ff98001a;border:1px solid rgba(255,152,0,.25);color:#ffb84d;padding:6px 16px 6px 12px;border-radius:9999px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-bottom:32px}.illustration-content .illustration-badge .badge-dot{display:inline-block;width:6px;height:6px;background:#ff9800;border-radius:9999px;box-shadow:0 0 6px #ff9800;animation:badge-pulse 2s ease-in-out infinite}.illustration-content h2{font-size:36px;font-weight:700;margin:0 0 12px;line-height:1.2;letter-spacing:-.02em;color:#f7f7f7}.illustration-content p{font-size:16px;line-height:1.6;color:#c4c4c4;margin:0 0 48px}@keyframes badge-pulse{0%,to{opacity:1;box-shadow:0 0 6px #ff9800}50%{opacity:.6;box-shadow:0 0 14px #ff9800}}.illustration-steps{display:flex;flex-direction:column;gap:0;text-align:left;width:100%}.illustration-step{display:flex;align-items:flex-start;gap:12px;animation:slideInStep .5s ease-out both}.illustration-step:nth-child(1){animation-delay:.1s}.illustration-step:nth-child(2){animation-delay:.2s}.illustration-step:nth-child(3){animation-delay:.3s}.illustration-step .step-left{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:38px}.illustration-step .step-number{width:38px;height:38px;border-radius:9999px;background:#ff98001f;border:1px solid rgba(255,152,0,.4);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#ff9800;flex-shrink:0;position:relative;z-index:1}.illustration-step .step-connector{width:1px;flex:1;min-height:28px;background:linear-gradient(to bottom,#ff980059,#ff980014);margin:4px 0}.illustration-step .step-body{padding-top:8px;padding-bottom:24px;display:flex;flex-direction:column;gap:3px}.illustration-step .step-body strong{font-size:14px;font-weight:600;color:#f7f7f7}.illustration-step .step-body span{font-size:12px;color:#8a7ba8;line-height:1.6}.illustration-step:last-child .step-connector{display:none}@keyframes slideInStep{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media(max-width:1024px){.forgot-password-container{grid-template-columns:1fr}.forgot-password-illustration{display:none}.forgot-password-box{padding:48px 30px}}@media(max-width:640px){.forgot-password-page{padding:0;align-items:flex-start}.forgot-password-container{border-radius:0;box-shadow:none;border:none;min-height:100vh}.forgot-password-box{padding:48px 24px;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.forgot-password-header h1{font-size:28px}}.my-courses-page{min-height:100vh;background-color:#1e1235;padding:48px 0 96px;color:#f7f7f7}.page-header{margin-bottom:48px}.page-header h1{font-size:40px;font-weight:700;margin:0 0 8px;color:#f7f7f7}.page-header p{font-size:18px;color:#c4c4c4;margin:0}.stats-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:64px}.stat-card{background:linear-gradient(135deg,#3a2555,#2b1b4d);border-radius:12px;padding:24px;display:flex;align-items:center;justify-content:center;justify-content:flex-start;gap:12px;transition:transform .3s ease}.stat-card:hover{transform:translateY(-4px)}.stat-icon{font-size:40px;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#ff950033;border-radius:12px}.stat-content h3{font-size:32px;font-weight:700;margin:0 0 4px;color:#ff9800}.stat-content p{font-size:14px;color:#c4c4c4;margin:0}.courses-grid-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:32px}.section-title{font-size:28px;font-weight:700;margin:0 0 24px;color:#f7f7f7}.courses-list{display:flex;flex-direction:column;gap:24px}.course-item{background:linear-gradient(135deg,#3a2555,#2b1b4d);border-radius:16px;padding:32px;display:flex;align-items:flex-start;gap:24px;transition:transform .3s ease}.course-item:hover{transform:translateY(-2px)}.course-icon-large{font-size:72px;width:120px;height:120px;background:#ff950033;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.course-details{flex:1;min-width:0}.course-details h3{font-size:24px;font-weight:600;margin:0 0 8px;color:#f7f7f7}.course-teacher{font-size:14px;color:#c4c4c4;margin:0 0 24px}.course-progress-wrapper{margin-bottom:12px}.progress-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.progress-text{font-size:14px;color:#c4c4c4}.progress-percentage{font-size:16px;font-weight:700;color:#ff9800}.progress-bar{height:8px;background-color:#ffffff1a;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#ff9800,#ffb84d);border-radius:4px;transition:width .5s ease}.next-lesson{font-size:14px;color:#c4c4c4;margin:12px 0 0}.next-lesson strong{color:#f7f7f7}.continue-btn{background-color:#ff9800;color:#f7f7f7;font-size:16px;font-weight:600;padding:12px 24px;border:none;border-radius:8px;text-decoration:none;white-space:nowrap;transition:all .2s ease;align-self:center}.continue-btn:hover{background-color:#bf360c;transform:translate(4px)}.sidebar{display:flex;flex-direction:column;gap:24px}.homework-section{background:linear-gradient(135deg,#3a2555,#2b1b4d);border-radius:16px;padding:24px}.homework-list{display:flex;flex-direction:column;gap:12px}.homework-item{background-color:#ffffff0d;border-radius:12px;padding:12px;border-left:4px solid transparent;transition:all .2s ease}.homework-item.pending{border-left-color:#ff9800}.homework-item.submitted{border-left-color:#4caf50}.homework-item h4{font-size:16px;font-weight:600;margin:0;color:#f7f7f7;line-height:1.3}.homework-header{display:flex;align-items:center;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.status-badge{font-size:12px;font-weight:600;padding:4px 8px;border-radius:4px;white-space:nowrap}.status-badge.pending{background-color:#ff980033;color:#ff9800}.status-badge.submitted{background-color:#10b98133;color:#4caf50}.homework-course{font-size:14px;color:#c4c4c4;margin:0 0 4px}.homework-due{font-size:13px;color:#8a7ba8;margin:0}.explore-section{background:linear-gradient(135deg,#ff9800,#bf360c);border-radius:16px;padding:32px 24px;text-align:center}.explore-section h3{font-size:20px;font-weight:700;margin:0 0 8px;color:#f7f7f7}.explore-section p{font-size:14px;color:#f7f7f7e6;margin:0 0 24px}.explore-btn{display:inline-block;background-color:#f7f7f7;color:#ff9800;font-size:16px;font-weight:600;padding:12px 24px;border-radius:8px;text-decoration:none;transition:all .2s ease}.explore-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}@media(max-width:1200px){.courses-grid-wrapper{grid-template-columns:1fr}.stats-overview{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.my-courses-page{padding:24px 0 96px}.page-header h1{font-size:32px}.stats-overview{grid-template-columns:1fr;gap:12px}.course-item{flex-direction:column;padding:24px}.course-icon-large{font-size:56px;width:100px;height:100px}.continue-btn{width:100%;text-align:center}.section-title{font-size:24px}}.shared-sidebar{direction:ltr;width:280px;height:calc(100vh - 40px);margin:20px;border-radius:30px;background-color:rgba(var(--admin-bg-primary),.7);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-card);border:1px solid var(--alpha-08);display:flex;flex-direction:column;padding:30px 20px;transition:all .3s ease;position:sticky;top:20px;z-index:100}[data-theme=light] .shared-sidebar{background-color:#fffc;border:1px solid rgba(255,255,255,.3);box-shadow:0 20px 50px #0000000d}.shared-sidebar.collapsed{width:90px;padding:30px 10px}.shared-sidebar.collapsed .sidebar-logo{justify-content:center}.shared-sidebar.collapsed .sidebar-logo .logo-text,.shared-sidebar.collapsed .nav-label,.shared-sidebar.collapsed .nav-chevron,.shared-sidebar.collapsed .nav-badge{display:none}.shared-sidebar.collapsed .nav-item{justify-content:center;padding:15px}.shared-sidebar.collapsed .nav-icon{margin-right:0;font-size:1.2rem}@media(max-width:768px){.shared-sidebar{position:fixed;top:0;left:-100%;width:min(300px,85vw);height:100vh;height:100dvh;margin:0;border-radius:0;padding:max(24px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom));z-index:200;transition:left .3s ease;box-shadow:8px 0 32px #00000059;background-color:var(--admin-bg-primary);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .shared-sidebar{background-color:#fff}.shared-sidebar.mobile-open{left:0}.shared-sidebar .sidebar-close-btn{display:flex;align-items:center;justify-content:center;position:absolute;top:max(16px,env(safe-area-inset-top));right:12px;width:40px;height:40px;border:1px solid var(--alpha-08);border-radius:12px;background:var(--admin-bg-tertiary);color:var(--admin-text-main);cursor:pointer;z-index:1}[data-theme=light] .shared-sidebar .sidebar-close-btn{background:#0000000a;border-color:#00000014}.shared-sidebar .sidebar-logo{margin-bottom:24px;padding-right:48px}.shared-sidebar .logo-text{font-size:1.25rem}.shared-sidebar .nav-item{min-height:48px;padding:14px 16px}}.shared-sidebar .sidebar-close-btn{display:none}.shared-sidebar .sidebar-logo{margin-bottom:40px;padding:0 10px}.shared-sidebar .sidebar-logo a{display:flex;align-items:center;gap:15px;text-decoration:none;color:var(--admin-text-main)}.shared-sidebar .sidebar-logo .logo-square{width:40px;height:40px;background:linear-gradient(135deg,var(--admin-primary) 0%,var(--admin-primary-dark) 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px}.shared-sidebar .sidebar-logo .logo-text{font-size:24px;font-weight:700;color:var(--admin-text-main);font-family:Poetsen One,sans-serif}.shared-sidebar .sidebar-nav{direction:ltr;flex:1;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.shared-sidebar .sidebar-nav::-webkit-scrollbar{width:4px}.shared-sidebar .sidebar-nav::-webkit-scrollbar-track{background:transparent}.shared-sidebar .sidebar-nav::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}.shared-sidebar .nav-divider{height:1px;background:#0000001a;margin:10px 15px}[data-theme=dark] .shared-sidebar .nav-divider{background:#ffffff1a}.shared-sidebar .nav-item-wrapper{display:flex;flex-direction:column}.shared-sidebar .nav-item{display:flex;align-items:center;padding:12px 16px;border-radius:15px;color:var(--admin-text-secondary);cursor:pointer;transition:all .2s ease;text-decoration:none;position:relative;font-weight:500}.shared-sidebar .nav-item .nav-item-content{display:flex;align-items:center;width:100%;position:relative}.shared-sidebar .nav-item:hover{background-color:var(--admin-bg-hover);color:var(--admin-text-main)}.shared-sidebar .nav-item.active{background:var(--admin-primary);color:#fff;box-shadow:0 4px 15px rgba(var(--primary-rgb),.3);font-weight:600}.shared-sidebar .nav-item.active .nav-icon{color:#fff}.shared-sidebar .nav-item.active:hover{background:var(--admin-primary);color:#fff}.shared-sidebar .nav-item.nested{padding-left:45px;font-size:.9em}.shared-sidebar .nav-item.nested:before{content:"";position:absolute;left:28px;top:50%;width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.4}.shared-sidebar .nav-icon{font-size:18px;margin-right:15px;width:20px;text-align:center;transition:color .2s}.shared-sidebar .nav-children{display:flex;flex-direction:column;gap:5px;margin-top:5px;animation:slideDown .2s ease-out}.shared-sidebar .nav-chevron{margin-left:auto;font-size:.8em;opacity:.7}.shared-sidebar .nav-badge{margin-left:auto;padding:2px 8px;border-radius:10px;font-size:.7em;font-weight:700}.shared-sidebar .nav-badge.primary{background:#e9e3ff;color:#4318ff}.shared-sidebar .nav-badge.success{background:#e6fbf5;color:#01b574}.shared-sidebar .nav-badge.warning{background:#fff9e6;color:#ffb547}.shared-sidebar .nav-badge.danger{background:#feeeee;color:#ee5d50}.shared-sidebar .sidebar-footer{margin-top:auto;padding-top:20px;border-top:1px solid rgba(0,0,0,.05)}[data-theme=dark] .shared-sidebar .sidebar-footer{border-top:1px solid rgba(255,255,255,.05)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.theme-toggle-btn{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;outline:none}.theme-toggle-btn .toggle-track{width:52px;height:28px;background-color:#ffffff1a;border-radius:20px;position:relative;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.theme-toggle-btn .toggle-track.light{background-color:#cbd5e1;border-color:#0000001a}.theme-toggle-btn .toggle-track.light .toggle-thumb{transform:translate(24px);background-color:var(--admin-primary);color:#fff}.theme-toggle-btn .toggle-track.dark{background-color:#ffffff1a}.theme-toggle-btn .toggle-thumb{width:24px;height:24px;background-color:var(--admin-primary);border-radius:50%;position:absolute;top:1px;left:1px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 5px #0003}.theme-toggle-btn .toggle-thumb .icon{font-size:.8rem}.theme-toggle-btn:hover .toggle-track{border-color:var(--admin-primary)}[data-theme=light] .theme-toggle-btn .toggle-track{background-color:#cbd5e1;border-color:#0000001a}.profile-modal-overlay{position:fixed;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000;animation:profileOverlayIn .25s ease-out;padding:12px}.profile-modal{position:relative;background:var(--admin-bg-secondary);border:1px solid var(--alpha-10);border-radius:50px;box-shadow:0 24px 60px #00000080;width:100%;max-width:460px;padding:64px;animation:profileModalIn .3s cubic-bezier(.34,1.56,.64,1)}[data-theme=light] .profile-modal{background:var(--admin-bg-card);border-color:var(--alpha-08);box-shadow:0 24px 60px #0000001f}.profile-modal__close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;border-radius:50%;background:var(--alpha-08);color:var(--admin-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.85rem;transition:all .2s ease}.profile-modal__close:hover{background:var(--alpha-20);color:var(--admin-text-main)}[data-theme=light] .profile-modal__close{background:#0000000d}[data-theme=light] .profile-modal__close:hover{background:#0000001a}.profile-modal__loading,.profile-modal__error{display:flex;align-items:center;justify-content:center;gap:8px;padding:96px 0;color:var(--admin-text-secondary);font-size:16px}.profile-modal__error{color:var(--admin-error)}.profile-modal__header{display:flex;align-items:center;gap:24px;margin-bottom:32px}.profile-modal__avatar-wrapper{position:relative;flex-shrink:0}.profile-modal__avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--admin-primary) 0%,var(--admin-primary-dark) 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;box-shadow:0 4px 20px rgba(var(--primary-rgb),.4)}.profile-modal__avatar-upload{position:absolute;bottom:0;right:0;width:28px;height:28px;border-radius:50%;border:2px solid var(--admin-bg-secondary);background:var(--admin-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:not-allowed;font-size:.75rem;transition:all .2s ease;box-shadow:0 2px 8px var(--shadow-primary);opacity:.5}.profile-modal__avatar-upload:disabled{cursor:not-allowed;opacity:.5}.profile-modal__avatar-upload:not(:disabled){cursor:pointer;opacity:1;box-shadow:0 2px 8px var(--shadow-primary)}.profile-modal__avatar-upload:not(:disabled):hover{background:var(--admin-primary-dark);color:#fff;border-color:var(--admin-bg-secondary)}[data-theme=light] .profile-modal__avatar-upload{border-color:#fff;background:var(--admin-primary)}.profile-modal__identity{display:flex;flex-direction:column;gap:8px;min-width:0}.profile-modal__name{font-size:20px;font-weight:700;color:var(--admin-text-main);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-modal__role-badge,.profile-modal__active-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;width:fit-content}.profile-modal__role-badge--indigo{background:rgba(var(--indigo-rgb),.1);color:#6366f1;border:1px solid rgba(var(--indigo-rgb),.2)}.profile-modal__role-badge--warning{background:rgba(var(--warning-rgb),.1);color:var(--admin-warning);border:1px solid rgba(var(--warning-rgb),.2)}.profile-modal__role-badge--info{background:rgba(var(--info-rgb),.1);color:var(--admin-info);border:1px solid rgba(var(--info-rgb),.2)}.profile-modal__role-badge--success{background:rgba(var(--success-rgb),.1);color:var(--admin-success);border:1px solid rgba(var(--success-rgb),.2)}.profile-modal__role-badge--purple{background:rgba(var(--indigo-rgb),.1);color:#a855f7;border:1px solid rgba(var(--indigo-rgb),.2)}.profile-modal__active-badge{background:rgba(var(--success-rgb),.1);color:var(--admin-success);border:1px solid rgba(var(--success-rgb),.2);font-size:.65rem}.profile-modal__divider{height:1px;background:var(--alpha-08);margin:0 0 32px}[data-theme=light] .profile-modal__divider{background:#0000000f}.profile-modal__fields{display:flex;flex-direction:column;gap:8px}.profile-modal__field{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:var(--alpha-03);transition:background .2s ease}.profile-modal__field:hover{background:var(--alpha-05)}[data-theme=light] .profile-modal__field{background:#00000005}[data-theme=light] .profile-modal__field:hover{background:#0000000a}.profile-modal__field-icon{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(var(--primary-rgb),.1);color:var(--admin-primary);font-size:.85rem}.profile-modal__field-content{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-modal__field-label{font-size:12px;font-weight:600;color:var(--admin-text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-modal__field-value{font-size:14px;color:var(--admin-text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes profileOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes profileModalIn{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:768px){.profile-modal{padding:32px}.profile-modal__name{font-size:18px}}.user-menu-wrapper{position:relative;z-index:1000}.user-profile-trigger{display:flex;align-items:center;gap:12px;padding:6px 12px;background:var(--alpha-10, rgba(255, 255, 255, .1));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--alpha-08, rgba(255, 255, 255, .08));border-radius:40px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.user-profile-trigger:hover,.user-profile-trigger.is-active{background:var(--alpha-20, rgba(255, 255, 255, .2));border-color:rgba(var(--primary-rgb),.4);box-shadow:0 4px 15px #0000001a}[data-theme=light] .user-profile-trigger{background:#fff9;border:1px solid rgba(0,0,0,.05)}[data-theme=light] .user-profile-trigger:hover,[data-theme=light] .user-profile-trigger.is-active{background:#fff;border-color:rgba(var(--primary-rgb),.2)}.user-profile-trigger .user-avatar-circle{width:32px;height:32px;background:linear-gradient(135deg,var(--admin-primary) 0%,var(--admin-primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem}.user-profile-trigger .user-meta{display:flex;flex-direction:column}.user-profile-trigger .user-meta .name{font-size:.85rem;font-weight:700;color:var(--admin-text-main)}.user-profile-trigger .user-meta .role{font-size:.6rem;font-weight:600;color:var(--admin-text-secondary);text-transform:uppercase;letter-spacing:.5px}.user-profile-trigger .chevron{font-size:.7rem;color:var(--admin-text-secondary);margin-left:4px;transition:transform .2s ease}.user-profile-trigger .chevron.up{transform:rotate(180deg)}.user-dropdown-popover{position:absolute;top:calc(100% + 12px);right:0;width:260px;background-color:var(--admin-bg-secondary, #1a162e);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--alpha-10, rgba(255, 255, 255, .1));border-radius:24px;box-shadow:0 20px 50px #0006;padding:8px;animation:popoverEntry .2s cubic-bezier(.16,1,.3,1);z-index:1001;overflow:hidden}[data-theme=light] .user-dropdown-popover{background-color:#fffffffa;border:1px solid rgba(0,0,0,.08);box-shadow:0 20px 50px #0000001a}.user-dropdown-popover .popover-header{padding:16px 16px 12px}.user-dropdown-popover .popover-header .header-info strong{display:block;font-size:.95rem;color:var(--admin-text-main);margin-bottom:2px}.user-dropdown-popover .popover-header .header-info p{font-size:.8rem;color:var(--admin-text-secondary);overflow:hidden;text-wrap:wrap;word-wrap:break-word;margin:0}.user-dropdown-popover .popover-divider{height:1px;background:var(--alpha-08);margin:8px 12px}[data-theme=light] .user-dropdown-popover .popover-divider{background:#0000000d}.user-dropdown-popover .popover-nav{display:flex;flex-direction:column;gap:2px}.user-dropdown-popover .nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:transparent;border-radius:16px;color:var(--admin-text-main);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.user-dropdown-popover .nav-item .icon-box{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--alpha-03);border-radius:10px;font-size:.9rem;color:var(--admin-text-secondary)}[data-theme=light] .user-dropdown-popover .nav-item .icon-box{background:#00000008}.user-dropdown-popover .nav-item:hover:not(.disabled){background:var(--alpha-05);color:var(--admin-primary)}.user-dropdown-popover .nav-item:hover:not(.disabled) .icon-box{background:rgba(var(--primary-rgb),.1);color:var(--admin-primary)}[data-theme=light] .user-dropdown-popover .nav-item:hover:not(.disabled){background:#00000008}.user-dropdown-popover .nav-item.logout{color:var(--admin-error)}.user-dropdown-popover .nav-item.logout:hover{background:rgba(var(--error-rgb),.08)}.user-dropdown-popover .nav-item.logout:hover .icon-box{background:rgba(var(--error-rgb),.1);color:var(--admin-error)}.user-dropdown-popover .nav-item.disabled{opacity:.45;cursor:not-allowed}@keyframes popoverEntry{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.user-profile-trigger{gap:0;padding:4px}.user-profile-trigger .user-meta,.user-profile-trigger .chevron{display:none}.user-profile-trigger .user-avatar-circle{width:36px;height:36px}.user-dropdown-popover{width:min(260px,100vw - 24px);right:-4px}}.shared-navbar{direction:ltr;height:70px;background-color:rgba(var(--admin-bg-tertiary),.5);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;margin-bottom:20px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow-card);border:1px solid var(--alpha-08, rgba(255, 255, 255, .08));position:relative;z-index:2000;overflow:visible;flex-shrink:0}[data-theme=light] .shared-navbar{background-color:#fffc;border:1px solid rgba(255,255,255,.3)}.shared-navbar .nav-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.shared-navbar .mobile-menu-btn{display:none;flex-shrink:0;align-items:center;justify-content:center;width:44px;height:44px;background:var(--admin-bg-tertiary, #25213d);border:1px solid var(--alpha-08, rgba(255, 255, 255, .08));border-radius:12px;color:var(--admin-text-main);font-size:1.1rem;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.shared-navbar .mobile-menu-btn:hover{background:var(--admin-bg-hover)}.shared-navbar .mobile-menu-btn:active{transform:scale(.96)}[data-theme=light] .shared-navbar .mobile-menu-btn{background:#0000000a;border-color:#0000000f}.shared-navbar .page-title{font-size:24px;font-weight:700;color:var(--admin-text-main);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.shared-navbar .nav-search{position:relative;width:300px;max-width:100%}.shared-navbar .nav-search .search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--admin-text-muted)}.shared-navbar .nav-search input{width:100%;height:44px;background:var(--admin-bg-tertiary);border:1px solid transparent;border-radius:22px;padding-left:45px;padding-right:20px;color:var(--admin-text-main);font-size:.95rem;transition:all .2s ease}.shared-navbar .nav-search input:focus{outline:none;border-color:var(--admin-primary);background:var(--admin-bg-primary);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.1)}.shared-navbar .nav-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.shared-navbar .nav-actions .icon-btn{width:44px;height:44px;border-radius:50%;background:var(--admin-bg-tertiary, #25213d);border:1px solid var(--alpha-08, rgba(255, 255, 255, .08));color:var(--admin-text-main);display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;transition:all .2s ease;flex-shrink:0}.shared-navbar .nav-actions .icon-btn:hover{background:var(--admin-bg-hover);transform:translateY(-2px)}.shared-navbar .nav-actions .icon-btn:active{transform:scale(.96)}.shared-navbar .nav-actions .icon-btn .badge{position:absolute;top:-4px;right:-4px;width:18px;height:18px;border-radius:50%;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;color:#fff;border:2px solid var(--admin-bg-primary)}.shared-navbar .nav-actions .icon-btn .badge.blue{background-color:var(--admin-info)}.shared-navbar .nav-actions .icon-btn .badge.orange{background-color:var(--admin-primary)}.shared-navbar .nav-actions .theme-toggle-container{display:flex;align-items:center}.shared-navbar .nav-actions .user-profile-wrapper{display:flex;align-items:center;overflow:visible}@media(max-width:768px){.shared-navbar{height:auto;min-height:56px;padding:10px 12px;margin-bottom:12px;border-radius:16px;gap:8px}.shared-navbar .mobile-menu-btn{display:inline-flex}.shared-navbar .page-title{font-size:1.05rem;line-height:1.2}.shared-navbar .nav-search{width:100%}.shared-navbar .nav-actions{gap:6px}.shared-navbar .nav-actions .icon-btn--messages{display:none}.shared-navbar .nav-actions .icon-btn{width:40px;height:40px}.shared-navbar .nav-actions .theme-toggle-container{margin:0}}@media(max-width:640px){.shared-navbar{padding:8px 10px}.shared-navbar .nav-actions{gap:4px}.shared-navbar .nav-actions .icon-btn{width:38px;height:38px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.admin-layout{direction:ltr;position:relative;display:flex;min-height:100vh;background-color:var(--admin-bg-content);overflow:hidden}.admin-layout .layout-bg-blobs{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none}.admin-layout .layout-bg-blobs .blob{position:absolute;width:600px;height:600px;border-radius:50%;filter:blur(100px);opacity:.15}.admin-layout .layout-bg-blobs .blob-1{background:var(--admin-primary);top:-200px;right:-100px}.admin-layout .layout-bg-blobs .blob-2{background:var(--admin-info);bottom:-100px;left:-100px}.admin-layout .admin-main{flex:1;display:flex;flex-direction:column;min-width:0;position:relative;z-index:1;padding:16px 16px 16px 0}.admin-layout .admin-content{flex:1;position:relative;z-index:1;padding:0;background-color:transparent;overflow-y:visible}.admin-layout .admin-content::-webkit-scrollbar{width:6px}.admin-layout .admin-content::-webkit-scrollbar-track{background:transparent}.admin-layout .admin-content::-webkit-scrollbar-thumb{background:#0000000d;border-radius:3px}.admin-layout .mobile-overlay{display:none;position:fixed;inset:0;background-color:#0006;z-index:150;border:0;padding:0;cursor:pointer}@media(max-width:768px){.admin-layout .admin-main{padding:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}.admin-layout .admin-content{padding-bottom:env(safe-area-inset-bottom)}.admin-layout .mobile-overlay{display:block;left:min(300px,85vw)}.admin-layout .layout-bg-blobs .blob{width:320px;height:320px;filter:blur(80px)}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:48px}.stats-grid .stat-card{background:var(--admin-bg-card);border-radius:16px;padding:24px;box-shadow:0 2px 6px #0000001a,0 1px 3px #00000014;display:flex;align-items:center;gap:16px;transition:transform .3s ease,box-shadow .3s ease;border:1px solid var(--alpha-05)}.stats-grid .stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000026,0 4px 10px #0000001a}[data-theme=light] .stats-grid .stat-card{border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px #0000001a,0 1px 4px #00000014}[data-theme=light] .stats-grid .stat-card:hover{box-shadow:0 8px 24px #0000001f,0 4px 12px #00000014}.stats-grid .stat-card .stat-icon{width:56px;height:56px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}[data-theme=light] .stats-grid .stat-card .stat-icon{opacity:1}.stats-grid .stat-card .stat-content{flex:1}.stats-grid .stat-card .stat-content .stat-label{display:block;font-size:14px;color:var(--admin-text-secondary);margin-bottom:4px;font-weight:500}.stats-grid .stat-card .stat-content .stat-value-row{display:flex;align-items:baseline;gap:8px}.stats-grid .stat-card .stat-content .stat-value-row .stat-value{font-size:18px;font-weight:700;color:var(--admin-text-main)}.stats-grid .stat-card .stat-content .stat-value-row .stat-change{font-size:11px;font-weight:600;padding:4px 8px;border-radius:8px}.stats-grid .stat-card .stat-content .stat-value-row .stat-change.positive{background-color:rgba(var(--success-rgb),.1);color:var(--admin-success)}.stats-grid .stat-card .stat-content .stat-value-row .stat-change.negative{background-color:rgba(var(--error-rgb),.1);color:var(--admin-error)}[data-theme=light] .stats-grid .stat-card .stat-content .stat-value-row .stat-change.positive{background-color:rgba(var(--success-rgb),.1);color:var(--admin-success)}[data-theme=light] .stats-grid .stat-card .stat-content .stat-value-row .stat-change.negative{background-color:rgba(var(--error-rgb),.1);color:var(--admin-error)}.recent-activity{background:var(--admin-bg-card);border-radius:16px;box-shadow:0 2px 6px #0000001a,0 1px 3px #00000014;border:1px solid var(--alpha-05);overflow:hidden}[data-theme=light] .recent-activity{border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px #00000014,0 1px 4px #0000000f}.recent-activity .card-header{padding:24px 32px;border-bottom:1px solid var(--alpha-05)}[data-theme=light] .recent-activity .card-header{border-bottom:1px solid rgba(0,0,0,.06)}.recent-activity .card-header h2{font-size:20px;font-weight:600;color:var(--admin-text-main);margin:0}.recent-activity .card-content{padding:32px}.recent-activity .card-content .empty-state{text-align:center;padding:96px 0}.recent-activity .card-content .empty-state p{font-size:16px;font-weight:600;color:var(--admin-text-main);margin-bottom:4px}.recent-activity .card-content .empty-state span{color:var(--admin-text-secondary);font-size:14px}.quick-actions-card{background:var(--admin-bg-card);border-radius:16px;box-shadow:var(--shadow-card);border:1px solid var(--alpha-05);overflow:hidden}[data-theme=light] .quick-actions-card{border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px #00000014,0 1px 4px #0000000f}.quick-actions-card .card-header{padding:24px 32px;border-bottom:1px solid var(--alpha-05)}[data-theme=light] .quick-actions-card .card-header{border-bottom:1px solid rgba(0,0,0,.06)}.quick-actions-card .card-header h2{font-size:20px;font-weight:600;color:var(--admin-text-main);margin:0}.quick-actions-card .card-content{padding:32px}.quick-actions-card .card-content .quick-actions-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:768px){.quick-actions-card .card-content .quick-actions-btns{gap:8px}}@media(max-width:640px){.quick-actions-card .card-content .quick-actions-btns{gap:4px}}.quick-actions-card .card-content .quick-actions-btns .action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:auto;padding:24px;background:var(--admin-bg-card);border:1px solid var(--alpha-08);border-radius:12px;gap:8px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);color:var(--admin-text-main);box-shadow:0 2px 6px #0000001a,0 1px 3px #00000014;position:relative}@media(max-width:768px){.quick-actions-card .card-content .quick-actions-btns .action-btn{padding:16px 8px;gap:4px;border-radius:8px}}@media(max-width:640px){.quick-actions-card .card-content .quick-actions-btns .action-btn{padding:8px 4px;gap:4px}}.quick-actions-card .card-content .quick-actions-btns .action-btn:hover{background:var(--admin-bg-hover);color:var(--admin-text-main);transform:translateY(-4px);box-shadow:0 8px 20px #00000026,0 4px 12px #0000001a;border-color:var(--alpha-20)}.quick-actions-card .card-content .quick-actions-btns .action-btn:hover svg{color:var(--admin-primary);transform:scale(1.1)}.quick-actions-card .card-content .quick-actions-btns .action-btn:active{transform:translateY(-2px);box-shadow:0 4px 10px #0000001f,0 2px 6px #00000014}.quick-actions-card .card-content .quick-actions-btns .action-btn svg{font-size:18px;color:var(--admin-text-secondary);transition:all .3s cubic-bezier(.4,0,.2,1)}@media(max-width:768px){.quick-actions-card .card-content .quick-actions-btns .action-btn svg{font-size:16px}}@media(max-width:640px){.quick-actions-card .card-content .quick-actions-btns .action-btn svg{font-size:14px}}[data-theme=light] .quick-actions-card .card-content .quick-actions-btns .action-btn svg{color:var(--admin-text-main)}.quick-actions-card .card-content .quick-actions-btns .action-btn span{font-size:14px;font-weight:500;transition:color .3s ease;text-align:center;line-height:1.2}@media(max-width:768px){.quick-actions-card .card-content .quick-actions-btns .action-btn span{font-size:12px}}@media(max-width:640px){.quick-actions-card .card-content .quick-actions-btns .action-btn span{font-size:12px}}.admin-dashboard{padding:0;max-width:1400px;margin:0 auto}.admin-dashboard .dashboard-header{margin-bottom:2rem}.admin-dashboard .dashboard-header h1{font-size:2rem;font-weight:700;color:var(--admin-text-main);margin-bottom:.5rem;letter-spacing:-.5px}.admin-dashboard .dashboard-header p{color:var(--admin-text-secondary);font-size:1rem;font-weight:400}.admin-dashboard .dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}@media(max-width:768px){.admin-dashboard .dashboard-grid{grid-template-columns:1fr}}.placeholder-page{max-width:900px;margin:0 auto;color:var(--admin-text-main)}.placeholder-header{margin-bottom:48px}.placeholder-header h1{font-size:36px;font-weight:700;color:var(--admin-text-main);margin:0 0 8px}.placeholder-header p{font-size:18px;color:var(--admin-text-secondary);margin:0}.placeholder-content{display:flex;justify-content:center;align-items:center;min-height:400px}.placeholder-card{background-color:var(--admin-bg-secondary);border-radius:12px;border:1px solid var(--alpha-10);padding:96px;text-align:center;color:var(--admin-text-main);max-width:600px}.placeholder-icon{font-size:80px;margin-bottom:24px}.placeholder-card h2{font-size:28px;font-weight:700;color:var(--admin-text-main);margin:0 0 12px}.placeholder-card>p{font-size:18px;color:var(--admin-text-secondary);margin:0 0 48px}.placeholder-info{background-color:var(--alpha-05);border-radius:8px;padding:32px;text-align:left}.placeholder-info p{font-size:16px;font-weight:600;color:var(--admin-text-main);margin:0 0 12px}.placeholder-info ol{margin:0;padding-left:32px;color:var(--admin-text-secondary);font-size:14px;line-height:1.6}.placeholder-info ol li{margin-bottom:8px}.placeholder-info ol li:last-child{margin-bottom:0}.placeholder-info code{background-color:var(--alpha-10);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:12px;color:var(--admin-primary);word-break:break-all}@media(max-width:768px){.placeholder-page{padding:0 4px}.placeholder-header{margin-bottom:24px}.placeholder-header h1{font-size:20px}.placeholder-header p{font-size:16px}.placeholder-content{min-height:auto;align-items:stretch}.placeholder-card{width:100%;padding:32px 24px;border-radius:8px}.placeholder-icon{font-size:56px;margin-bottom:12px}.placeholder-card h2{font-size:24px}.placeholder-card>p{font-size:16px;margin-bottom:24px}.placeholder-info{padding:24px}.placeholder-info ol{padding-left:24px;font-size:16px;line-height:1.6}.placeholder-info ol li{margin-bottom:12px}.placeholder-info code{display:inline-block;margin-top:4px;font-size:.8rem}}@media(max-width:640px){.placeholder-card{padding:24px}.placeholder-info ol{padding-left:1.25rem}}.users-list-page{padding:48px;animation:pageEntrance .4s ease-out;min-height:calc(100vh - 70px)}[data-theme=light] .users-list-page{background-color:var(--admin-bg-content)}@media(max-width:768px){.users-list-page{padding:24px}}@media(max-width:640px){.users-list-page{padding:8px}}.add-user-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:12px;animation:fadeIn .15s ease-out}.add-user-modal{background:var(--admin-bg-card);border:1px solid var(--alpha-08);border-radius:16px;width:100%;max-width:520px;padding:32px;display:flex;flex-direction:column;gap:24px;animation:slideUp .2s ease-out}.add-user-modal__header{text-align:center}.add-user-modal__header h2{font-size:1.4rem;font-weight:700;color:var(--admin-text-main);margin:0 0 4px}.add-user-modal__header p{color:var(--admin-text-secondary);font-size:.9rem;margin:0}.add-user-modal__header p code{background:var(--alpha-10);padding:2px 6px;border-radius:4px;font-size:.85rem}.add-user-modal__back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--admin-text-secondary);font-size:.85rem;cursor:pointer;padding:0;margin-bottom:8px;transition:color .15s}.add-user-modal__back:hover{color:var(--admin-primary)}.add-user-modal__type-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.add-user-modal__type-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 12px;background:var(--alpha-05);border:1px solid var(--alpha-08);border-radius:12px;cursor:pointer;color:var(--admin-text-main);font-size:.9rem;font-weight:600;transition:background .15s,border-color .15s,transform .1s}.add-user-modal__type-card:hover{transform:translateY(-2px)}.add-user-modal__type-card--warning:hover{background:rgba(var(--warning-rgb),.1);border-color:rgba(var(--warning-rgb),.35)}.add-user-modal__type-card--warning .add-user-modal__type-icon{color:var(--admin-warning)}.add-user-modal__type-card--success:hover{background:rgba(var(--success-rgb),.1);border-color:rgba(var(--success-rgb),.35)}.add-user-modal__type-card--success .add-user-modal__type-icon{color:var(--admin-success)}.add-user-modal__type-card--info:hover{background:rgba(var(--info-rgb),.1);border-color:rgba(var(--info-rgb),.35)}.add-user-modal__type-card--info .add-user-modal__type-icon{color:var(--admin-info)}.add-user-modal__type-card--error:hover{background:rgba(var(--error-rgb),.1);border-color:rgba(var(--error-rgb),.35)}.add-user-modal__type-card--error .add-user-modal__type-icon{color:var(--admin-error)}.add-user-modal__type-icon{font-size:1.6rem}.add-user-modal__options{display:flex;flex-direction:column;gap:12px}.add-user-modal__option{display:flex;align-items:center;gap:12px;padding:12px 24px;background:var(--alpha-05);border:1px solid var(--alpha-08);border-radius:12px;cursor:pointer;text-align:left;transition:background .15s,border-color .15s,transform .1s;color:inherit}.add-user-modal__option:hover{background:rgba(var(--primary-rgb),.08);border-color:rgba(var(--primary-rgb),.3);transform:translateY(-1px)}.add-user-modal__option-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.add-user-modal__option-icon--manual{background:rgba(var(--indigo-rgb),.1);color:#6366f1}.add-user-modal__option-icon--excel{background:rgba(var(--success-rgb),.1);color:var(--admin-success)}.add-user-modal__option-text{display:flex;flex-direction:column;gap:2px}.add-user-modal__option-text strong{font-size:.95rem;color:var(--admin-text-main)}.add-user-modal__option-text span{font-size:.82rem;color:var(--admin-text-secondary)}.add-user-modal__dropzone{border:2px dashed var(--alpha-20);border-radius:12px;padding:32px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;display:flex;flex-direction:column;align-items:center;gap:8px}.add-user-modal__dropzone:hover,.add-user-modal__dropzone--active{border-color:var(--admin-primary);background:rgba(var(--primary-rgb),.05)}.add-user-modal__dropzone p{color:var(--admin-text-main);font-size:.9rem;margin:0}.add-user-modal__dropzone p span{color:var(--admin-primary);text-decoration:underline}.add-user-modal__dropzone small{color:var(--admin-text-secondary);font-size:.78rem}.add-user-modal__dropzone-icon{font-size:2rem;color:var(--admin-primary);opacity:.7}.add-user-modal__preview-table-wrap{max-height:280px;overflow-y:auto;border-radius:8px;border:1px solid var(--alpha-08)}.add-user-modal__preview-table{width:100%;border-collapse:collapse;font-size:.85rem}.add-user-modal__preview-table th{background:var(--alpha-05);color:var(--admin-text-secondary);text-transform:uppercase;font-size:.72rem;letter-spacing:.05em;padding:8px 12px;text-align:left;position:sticky;top:0}.add-user-modal__preview-table td{padding:8px 12px;color:var(--admin-text-main);border-bottom:1px solid var(--alpha-05)}.add-user-modal__preview-table tr:last-child td{border-bottom:none}.add-user-modal__missing{color:var(--admin-error);font-style:italic}.add-user-modal__progress{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 0}.add-user-modal__progress p{color:var(--admin-text-secondary);font-size:.95rem;margin:0}.add-user-modal__progress-icon{font-size:2.5rem;color:var(--admin-primary)}.add-user-modal__progress-bar{width:100%;height:6px;background:var(--alpha-10);border-radius:999px;overflow:hidden}.add-user-modal__progress-fill{height:100%;background:var(--admin-primary);border-radius:999px;transition:width .2s ease-out}.add-user-modal__result-icon{font-size:2.5rem;margin-bottom:8px}.add-user-modal__result-icon--success{color:var(--admin-success)}.add-user-modal__result-icon--warn{color:var(--admin-warning)}.add-user-modal__error-list{background:rgba(var(--error-rgb),.1);border:1px solid rgba(var(--error-rgb),.2);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:4px;max-height:160px;overflow-y:auto}.add-user-modal__error-item{display:flex;align-items:flex-start;gap:8px;font-size:.82rem;color:var(--admin-error)}.add-user-modal__error-item svg{flex-shrink:0;margin-top:2px}.add-user-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:8px;border-top:1px solid var(--alpha-05)}.add-user-modal__btn{padding:8px 24px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:6px;transition:opacity .15s,transform .1s}.add-user-modal__btn:hover:not(:disabled){opacity:.85;transform:translateY(-1px)}.add-user-modal__btn:disabled{opacity:.4;cursor:not-allowed}.add-user-modal__btn--primary{background:var(--admin-primary);color:#fff}.add-user-modal__btn--cancel{background:var(--alpha-08);color:var(--admin-text-secondary)}.add-user-modal__btn--ghost{background:none;border:1px solid var(--alpha-20);color:var(--admin-text-secondary);margin-right:auto}.admin-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:64px}.admin-page-header__content h1{font-size:28px;font-weight:700;margin-bottom:4px;margin-top:0;color:var(--admin-text-main)}.admin-page-header__content p{color:var(--admin-text-secondary);font-size:16px;margin:0}@media(max-width:768px){.admin-page-header{flex-direction:column;align-items:flex-start;gap:24px}.admin-page-header .admin-cta-btn{width:100%;justify-content:center}}.admin-cta-btn{background-color:var(--admin-primary);color:#fff;padding:12px 32px;border-radius:8px;font-weight:700;font-size:16px;display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;transition:all .2s ease;text-decoration:none;white-space:nowrap}.admin-cta-btn:hover{background-color:var(--admin-primary-dark);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-primary)}.admin-cta-btn:active{transform:translateY(0)}.admin-cta-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.admin-cta-btn:disabled:hover{transform:none;box-shadow:none}.data-grid-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:96px 48px;min-height:400px}.data-grid-state--loading{color:var(--admin-text-secondary)}.data-grid-state--loading .data-grid-state__spinner{font-size:2.2rem;color:var(--admin-primary);margin-bottom:24px}.data-grid-state--loading p{font-size:18px;color:var(--admin-text-secondary);margin:0}.data-grid-state--error{background:var(--admin-bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--alpha-08);border-radius:16px;max-width:500px;margin:48px auto;box-shadow:0 8px 24px #0000001f,0 4px 12px #00000014;animation:dataGridFadeIn .4s ease-out}[data-theme=light] .data-grid-state--error{background:#fff;border-color:#00000014;box-shadow:0 12px 32px #0000001a,0 6px 16px #0000000f}.data-grid-state--error .data-grid-state__icon{font-size:4rem;color:var(--admin-primary);margin-bottom:32px;filter:drop-shadow(0 0 15px rgba(var(--warning-rgb),.1))}.data-grid-state--error h3{font-size:28px;font-weight:700;color:var(--admin-text-main);margin:0 0 12px}.data-grid-state--error .data-grid-state__message{color:var(--admin-text-secondary);font-size:18px;line-height:1.6;margin:0 0 32px}[data-theme=light] .data-grid-state--error .data-grid-state__message{color:var(--admin-text-main)}.data-grid-state--error .data-grid-state__code{display:inline-flex;align-items:center;margin-bottom:24px;font-family:monospace;background:rgba(var(--primary-rgb),.1);color:var(--admin-primary);padding:6px 12px;border-radius:8px;border:1px solid rgba(var(--primary-rgb),.2);font-size:14px;font-weight:600}.data-grid-state--error .admin-cta-btn{margin-top:8px;box-shadow:0 4px 12px rgba(var(--primary-rgb),.25)}.data-grid-empty{text-align:center;padding:96px 48px;color:var(--admin-text-secondary);font-size:18px;min-height:200px;display:flex;align-items:center;justify-content:center}.data-grid-empty p{margin:0}.data-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:24px;animation:dataGridFadeIn .4s ease-out}@media(max-width:1024px){.data-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}}@media(max-width:768px){.data-grid{grid-template-columns:1fr;gap:12px}}.data-grid__card{background:var(--admin-bg-secondary);border:1px solid var(--alpha-05);border-radius:16px;padding:24px;transition:all .2s ease;box-shadow:var(--shadow-card);min-width:0;overflow:hidden}[data-theme=light] .data-grid__card{background:var(--admin-bg-card);border-color:#00000014;box-shadow:0 2px 8px #0000000a}.data-grid__card:hover{border-color:var(--alpha-08);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}[data-theme=light] .data-grid__card:hover{border-color:#0000001f;box-shadow:0 8px 16px #00000014}@media(max-width:640px){.data-grid__card{padding:12px;border-radius:12px}}.action-btn{width:34px;height:34px;border-radius:8px}@media(max-width:640px){.action-btn{width:30px;height:30px;font-size:12px}}.action-btn{display:flex;align-items:center;justify-content:center;border:1px solid var(--alpha-05);background:var(--alpha-03);color:var(--alpha-60);cursor:pointer;transition:all .2s ease;text-decoration:none;font-size:14px}.action-btn:hover{color:var(--admin-text-main);border-color:var(--alpha-10);background:var(--alpha-05)}.action-btn.edit:hover{background:rgba(var(--indigo-rgb),.1);color:#6366f1;border-color:rgba(var(--indigo-rgb),.2)}.action-btn.delete:hover{background:rgba(var(--error-rgb),.1);color:var(--admin-error);border-color:rgba(var(--error-rgb),.2)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.data-grid-row{display:flex;flex-direction:column;gap:12px;height:100%}.data-grid-row__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--alpha-05)}.data-grid-row__entity{flex:1;min-width:0}.data-grid-row__actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-shrink:0}.data-grid-row__body{display:flex;flex-direction:column;gap:12px;flex:1}.data-grid-row__field{display:flex;justify-content:space-between;align-items:center;gap:12px}.data-grid-row__field-label{font-size:12px;font-weight:600;color:var(--admin-text-secondary);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.data-grid-row__field-value{font-size:14px;color:var(--admin-text-main);text-align:right;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.data-grid-row__footer{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:8px;border-top:1px solid var(--alpha-05);justify-content:space-between}@media(max-width:640px){.data-grid-row{gap:8px}.data-grid-row__header{gap:8px;padding-bottom:8px}.data-grid-row__body,.data-grid-row__field{gap:8px}}@keyframes dataGridFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.admin-delete-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000;animation:adminOverlayFadeIn .3s ease-out}@keyframes adminOverlayFadeIn{0%{background:#0000;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.admin-delete-modal{background:var(--admin-bg-secondary);padding:64px;border-radius:50px;width:90%;max-width:450px;text-align:center;border:1px solid var(--alpha-10);box-shadow:0 20px 50px #00000080;animation:adminModalScaleUp .3s cubic-bezier(.34,1.56,.64,1)}[data-theme=light] .admin-delete-modal{background:var(--admin-bg-card);border-color:var(--alpha-08);box-shadow:0 20px 50px #0000001f}@keyframes adminModalScaleUp{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.admin-delete-modal__icon{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 32px;font-size:1.8rem;background:rgba(var(--admin-error),.1);color:var(--admin-error);border:1px solid rgba(var(--admin-error),.2);animation:adminPulseError 2s infinite}.admin-delete-modal__icon--success{background:rgba(var(--admin-success),.1);color:var(--admin-success);border-color:rgba(var(--admin-success),.2);animation:adminPulseSuccess 2s infinite}@keyframes adminPulseError{0%{box-shadow:0 0 rgba(var(--admin-error),.4)}70%{box-shadow:0 0 0 15px rgba(var(--admin-error),0)}to{box-shadow:0 0 rgba(var(--admin-error),0)}}@keyframes adminPulseSuccess{0%{box-shadow:0 0 rgba(var(--admin-success),.4)}70%{box-shadow:0 0 0 15px rgba(var(--admin-success),0)}to{box-shadow:0 0 rgba(var(--admin-success),0)}}.admin-delete-modal h2{color:var(--admin-text-main);font-size:24px;margin:0 0 12px}.admin-delete-modal p{color:var(--admin-text-secondary);line-height:1.6;font-size:16px;margin:0 0 48px}.admin-delete-modal p strong{color:var(--admin-text-main)}.admin-delete-modal__error{background:rgba(var(--admin-error),.1);color:var(--admin-error);padding:12px;border-radius:12px;margin-bottom:32px;display:flex;align-items:center;gap:8px;font-size:14px;border:1px solid rgba(var(--admin-error),.2);text-align:left;animation:adminShakeSoft .4s ease-in-out}.admin-delete-modal__error svg{flex-shrink:0}@keyframes adminShakeSoft{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.admin-delete-modal__actions{display:flex;gap:12px}.admin-delete-modal__btn{flex:1;padding:12px;border-radius:12px;font-weight:700;font-size:16px;cursor:pointer;transition:all .2s ease;border:none}.admin-delete-modal__btn--cancel{background:var(--alpha-05);color:var(--admin-text-main);border:1px solid var(--alpha-10)}.admin-delete-modal__btn--cancel:hover:not(:disabled){background:var(--alpha-10)}.admin-delete-modal__btn--delete{background:var(--admin-error);color:#fff}.admin-delete-modal__btn--delete:hover:not(:disabled){background:#eb1515;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--admin-error),.3)}.admin-delete-modal__btn--delete:disabled{opacity:.6;cursor:not-allowed}.admin-delete-modal__btn--delete.counting{background:var(--alpha-10);color:var(--admin-text-secondary);position:relative;overflow:hidden}.admin-delete-modal__btn--delete.counting:after{content:"";position:absolute;bottom:0;left:0;height:3px;background:var(--admin-error);animation:adminCountdownBar 3s linear forwards}@keyframes adminCountdownBar{0%{width:0%}to{width:100%}}.password-reset-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{background:#0000;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.password-reset-modal{background:var(--admin-bg-secondary);padding:64px;border-radius:50px;width:90%;max-width:450px;text-align:center;border:1px solid var(--alpha-10);box-shadow:0 20px 50px #00000080;animation:scaleUp .3s cubic-bezier(.34,1.56,.64,1)}[data-theme=light] .password-reset-modal{background:var(--admin-bg-card);border-color:var(--alpha-08);box-shadow:0 20px 50px #0000001f}@keyframes scaleUp{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.password-reset-modal__icon{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 32px;font-size:1.8rem;background:rgba(var(--admin-warning),.1);color:var(--admin-warning);border:1px solid rgba(var(--admin-warning),.2);animation:pulse 2s infinite}.password-reset-modal__icon.success{background:rgba(var(--admin-success),.1);color:var(--admin-success);border-color:rgba(var(--admin-success),.2);animation:pulseSuccess 2s infinite}.password-reset-modal__icon.error{background:rgba(var(--admin-error),.1);color:var(--admin-error);border-color:rgba(var(--admin-error),.2);animation:pulseError 2s infinite}@keyframes pulse{0%{box-shadow:0 0 rgba(var(--admin-warning),.4)}70%{box-shadow:0 0 0 15px rgba(var(--admin-warning),0)}to{box-shadow:0 0 rgba(var(--admin-warning),0)}}@keyframes pulseSuccess{0%{box-shadow:0 0 rgba(var(--admin-success),.4)}70%{box-shadow:0 0 0 15px rgba(var(--admin-success),0)}to{box-shadow:0 0 rgba(var(--admin-success),0)}}@keyframes pulseError{0%{box-shadow:0 0 rgba(var(--admin-error),.4)}70%{box-shadow:0 0 0 15px rgba(var(--admin-error),0)}to{box-shadow:0 0 rgba(var(--admin-error),0)}}.password-reset-modal h2{color:var(--admin-text-main);font-size:24px;margin:0 0 12px}.password-reset-modal p{color:var(--admin-text-secondary);line-height:1.6;font-size:16px;margin:0 0 48px}.password-reset-modal p strong{color:var(--admin-text-main)}.password-reset-modal__turnstile{margin-bottom:48px;display:flex;justify-content:center}.password-reset-modal__actions{display:flex;gap:12px}.password-reset-modal__btn{flex:1;padding:12px;border-radius:12px;font-weight:700;font-size:16px;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;justify-content:center;gap:8px}.password-reset-modal__btn--cancel{background:var(--alpha-05);color:var(--admin-text-main);border:1px solid var(--alpha-10)}.password-reset-modal__btn--cancel:hover:not(:disabled){background:var(--alpha-10)}.password-reset-modal__btn--cancel:disabled{opacity:.6;cursor:not-allowed}.password-reset-modal__btn--confirm{background:var(--admin-warning);color:#fff}.password-reset-modal__btn--confirm:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--admin-warning),.3)}.password-reset-modal__btn--confirm:disabled{opacity:.6;cursor:not-allowed}.password-reset-modal__btn--primary{width:100%;background:var(--admin-success);color:#fff}.password-reset-modal__btn--primary:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--admin-success),.3)}.password-reset-modal__btn--secondary{background:var(--admin-info);color:#fff}.password-reset-modal__btn--secondary:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--admin-info),.3)}.password-reset-modal__btn--secondary:disabled{opacity:.6;cursor:not-allowed}.admin-entity-cell{display:flex;align-items:center;gap:12px}.admin-entity-cell__avatar{width:40px;height:40px;background:linear-gradient(135deg,#6366f1,#a855f7);border-radius:9999px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;flex-shrink:0;overflow:hidden;border:2px solid var(--alpha-05)}.admin-entity-cell__photo{width:100%;height:100%;object-fit:cover;display:block}.admin-entity-cell__details{display:flex;flex-direction:column;min-width:0}.admin-entity-cell__title{display:block;font-weight:600;color:var(--admin-text-main);font-size:16px}.admin-entity-cell__subtitle{font-size:12px;color:var(--admin-text-secondary);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px;min-width:0;width:100%}.admin-badge,.admin-status-badge{padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:700;text-transform:capitalize;display:inline-block;letter-spacing:.02em}.admin-badge--success{background:rgba(var(--success-rgb),.1);color:var(--admin-success);border:1px solid rgba(var(--success-rgb),.2)}.admin-badge--error{background:rgba(var(--error-rgb),.1);color:var(--admin-error);border:1px solid rgba(var(--error-rgb),.2)}.admin-badge--warning{background:rgba(var(--warning-rgb),.1);color:var(--admin-warning);border:1px solid rgba(var(--warning-rgb),.2)}.admin-badge--info{background:rgba(var(--info-rgb),.1);color:var(--admin-info);border:1px solid rgba(var(--info-rgb),.2)}.admin-badge--default{background:var(--alpha-05);color:var(--admin-text-secondary);border:1px solid var(--alpha-10)}.generic-form .form-help-text{margin-bottom:24px;padding:8px 12px;background:var(--alpha-03);border-left:3px solid #6366f1;border-radius:4px}.generic-form .form-help-text small{color:var(--admin-text-secondary);font-size:12px;font-weight:500}.generic-form .form-help-text .required-indicator{color:var(--admin-error);font-weight:700;margin-right:4px}.generic-form .form-error-text{margin-bottom:24px;padding:8px 12px;background:rgba(var(--error-rgb),.08);border:1px solid rgba(var(--error-rgb),.2);border-left:3px solid var(--admin-error);border-radius:4px;display:flex;align-items:flex-start;gap:8px}.generic-form .form-error-text .error-icon{color:var(--admin-error);font-size:14px;flex-shrink:0;margin-top:2px}.generic-form .form-error-text small{color:var(--admin-text-secondary);font-size:12px}.generic-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.generic-form .form-group{display:flex;flex-direction:column}.generic-form .form-group label{display:flex;align-items:center;gap:4px;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--admin-text-secondary)}.generic-form .form-group label .required-indicator{color:var(--admin-error);font-weight:700;font-size:16px;line-height:1}.generic-form .form-group .input-wrapper{position:relative;display:flex;align-items:center}.generic-form .form-group .input-wrapper .input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--admin-text-muted);font-size:14px;width:14px;height:1em;z-index:1;pointer-events:none}.generic-form .form-group .input-wrapper input,.generic-form .form-group .input-wrapper select,.generic-form .form-group .input-wrapper textarea{width:100%;background:var(--alpha-03);border:1px solid var(--alpha-10);border-radius:8px;color:var(--admin-text-main);font-size:16px;transition:all .2s ease}.generic-form .form-group .input-wrapper input:focus,.generic-form .form-group .input-wrapper select:focus,.generic-form .form-group .input-wrapper textarea:focus{outline:none;border-color:#6366f1;background:var(--alpha-05);box-shadow:0 0 0 3px rgba(var(--indigo-rgb),.2)}.generic-form .form-group .input-wrapper input::placeholder,.generic-form .form-group .input-wrapper select::placeholder,.generic-form .form-group .input-wrapper textarea::placeholder{color:var(--admin-text-muted)}.generic-form .form-group .input-wrapper input.input-error,.generic-form .form-group .input-wrapper select.input-error,.generic-form .form-group .input-wrapper textarea.input-error{border-color:var(--admin-error);background:rgba(var(--error-rgb),.04)}.generic-form .form-group .input-wrapper input.input-error:focus,.generic-form .form-group .input-wrapper select.input-error:focus,.generic-form .form-group .input-wrapper textarea.input-error:focus{border-color:var(--admin-error);box-shadow:0 0 0 3px rgba(var(--error-rgb),.1)}.generic-form .form-group .input-wrapper input,.generic-form .form-group .input-wrapper select{height:44px;padding:0 12px 0 40px}.generic-form .form-group .input-wrapper textarea{padding:12px 12px 12px 40px;min-height:120px;resize:vertical;line-height:1.6}.generic-form .form-group .input-wrapper select{appearance:none;cursor:pointer}.generic-form .form-group .input-wrapper select option{background:var(--admin-bg-card);color:var(--admin-text-main)}.generic-form .form-group .field-error-message{display:flex;align-items:center;gap:4px;margin-top:4px;color:var(--admin-error);font-size:12px}.generic-form .form-group .field-error-message .error-icon-small{font-size:12px;flex-shrink:0}.generic-form .form-group.invalid label{color:var(--admin-error)}.generic-form .form-group.full-width{grid-column:1/-1;width:100%}.generic-form .form-actions{margin-top:32px;padding-top:24px;border-top:1px solid var(--alpha-08);display:flex;justify-content:flex-end;align-items:center;gap:12px}.generic-form .form-actions .cancel-btn{background:transparent;color:var(--admin-text-secondary);border:1px solid var(--alpha-08);padding:12px 32px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.generic-form .form-actions .cancel-btn:hover{background:var(--alpha-03);color:var(--admin-text-main)}.generic-form .form-actions .submit-btn{background:var(--admin-primary);color:#fff;padding:12px 32px;border:none;border-radius:8px;font-weight:700;font-size:14px;cursor:pointer;transition:all .2s ease}.generic-form .form-actions .submit-btn:hover:not(:disabled){background:var(--admin-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-primary)}.generic-form .form-actions .submit-btn:active:not(:disabled){transform:translateY(0)}.generic-form .form-actions .submit-btn:disabled{opacity:.6;cursor:not-allowed}.student-layout{position:relative;display:flex;min-height:100vh;min-height:100dvh;background-color:var(--admin-bg-content);overflow:hidden}.student-layout .layout-bg-blobs{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none}.student-layout .layout-bg-blobs .blob{position:absolute;width:600px;height:600px;border-radius:50%;filter:blur(100px);opacity:.15}.student-layout .layout-bg-blobs .blob-1{background:var(--admin-primary);top:-200px;right:-100px}.student-layout .layout-bg-blobs .blob-2{background:var(--admin-info);bottom:-100px;left:-100px}.student-layout .layout-container{position:relative;z-index:1;display:flex;height:100vh;height:100dvh}.student-layout .layout-main{flex:1;display:flex;flex-direction:column;min-width:0;padding:20px 20px 20px 0;z-index:1;overflow:visible}.student-layout .layout-content{flex:1;overflow-y:visible;position:relative;z-index:1;padding:0;-webkit-overflow-scrolling:touch}.student-layout .layout-content::-webkit-scrollbar{width:6px}.student-layout .layout-content::-webkit-scrollbar-track{background:transparent}.student-layout .layout-content::-webkit-scrollbar-thumb{background:#0000000d;border-radius:3px}.student-layout .mobile-overlay{position:fixed;inset:0;background-color:#0006;z-index:150;border:0;padding:0;cursor:pointer}.student-layout.sidebar-open .layout-main{pointer-events:none}@media(max-width:768px){.student-layout .layout-main{padding:8px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}.student-layout .layout-container{flex-direction:column}.student-layout .layout-content{padding-bottom:env(safe-area-inset-bottom)}.student-layout .layout-bg-blobs .blob{width:320px;height:320px;filter:blur(80px)}.student-layout .mobile-overlay{left:min(300px,85vw)}}.student-dashboard{display:flex;flex-direction:column;gap:20px}.student-dashboard .dashboard-main-card{background-color:rgba(var(--admin-bg-primary),.6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;padding:48px;box-shadow:var(--shadow-card);border:1px solid var(--alpha-08)}[data-theme=light] .student-dashboard .dashboard-main-card{background-color:#ffffffb3;border:1px solid rgba(255,255,255,.3)}.student-dashboard .dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.student-dashboard .dashboard-header h1{font-size:2rem;font-weight:800;color:var(--admin-text-main);margin:0}.student-dashboard .dashboard-header .header-actions{display:flex;gap:12px}.student-dashboard .dashboard-header .header-actions .btn-create{background:var(--admin-primary);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:700;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px rgba(var(--primary-rgb),.3)}.student-dashboard .dashboard-header .header-actions .btn-create:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--primary-rgb),.4)}.student-dashboard .dashboard-body{display:grid;grid-template-columns:1fr;gap:20px}@media(max-width:768px){.student-dashboard{gap:12px}.student-dashboard .dashboard-main-card{padding:24px;border-radius:16px;background-color:var(--admin-bg-primary);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .student-dashboard .dashboard-main-card{background-color:#fff}.student-dashboard .dashboard-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px}.student-dashboard .dashboard-header h1{font-size:1.35rem}.student-dashboard .dashboard-header .header-actions{width:100%}.student-dashboard .dashboard-header .header-actions .btn-create{width:100%;justify-content:center;padding:12px 16px}}@media(max-width:640px){.student-dashboard .dashboard-header .header-actions .btn-create span{font-size:.9rem}}.schedule-card .schedule-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:48px}.schedule-card .tab-pills{display:flex;background:var(--alpha-10, rgba(255, 255, 255, .1));padding:6px;border-radius:30px;gap:4px}.schedule-card .tab-pills button{border:none;background:transparent;padding:10px 24px;border-radius:24px;color:var(--admin-text-secondary);font-weight:600;cursor:pointer;transition:all .2s ease}.schedule-card .tab-pills button.active{background:var(--admin-primary);color:#fff;box-shadow:0 4px 10px rgba(var(--primary-rgb),.2)}.schedule-card .tab-pills button:hover:not(.active){background:var(--admin-bg-hover)}.schedule-card .utility-btns{display:flex;gap:12px}.schedule-card .pill-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:20px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.schedule-card .pill-btn.secondary{background:#fff;border:1px solid #e2e8f0;color:#1a1a1a}[data-theme=dark] .schedule-card .pill-btn.secondary{background:var(--admin-bg-tertiary);border-color:var(--alpha-08);color:var(--admin-text-main)}.schedule-card .pill-btn.secondary:hover{background:#f8fafc;border-color:#cbd5e1}.schedule-card .date-header{font-size:1rem;color:var(--admin-text-secondary);margin:32px 0}.schedule-card .date-header .bold{color:var(--admin-text-main);font-weight:800;margin-right:8px}.schedule-card .items-stack{display:flex;flex-direction:column;gap:16px}.schedule-card .schedule-item{background:#fff;border:1px solid transparent;border-radius:24px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000005}[data-theme=dark] .schedule-card .schedule-item{background:var(--admin-bg-tertiary)}.schedule-card .schedule-item:hover{box-shadow:0 10px 30px #0000000d;transform:translateY(-2px)}.schedule-card .schedule-item.item-expanded{border:1.5px solid var(--admin-info);box-shadow:0 15px 40px rgba(var(--info-rgb),.1)}.schedule-card .schedule-item .item-main{padding:24px 32px;display:flex;align-items:flex-start;gap:40px}.schedule-card .schedule-item .time-block{display:flex;gap:32px;min-width:180px}.schedule-card .schedule-item .time-block .time-sub{display:flex;flex-direction:column;gap:4px}.schedule-card .schedule-item .time-block .time-sub span{font-size:.75rem;color:var(--admin-text-muted);text-transform:uppercase}.schedule-card .schedule-item .time-block .time-sub strong{font-size:.95rem;color:var(--admin-text-main);font-weight:700}.schedule-card .schedule-item .course-block{flex:1}.schedule-card .schedule-item .course-block .label{font-size:.75rem;color:var(--admin-text-muted);text-transform:uppercase}.schedule-card .schedule-item .course-block .title{font-size:1.125rem;font-weight:800;margin:4px 0;color:var(--admin-text-main)}.schedule-card .schedule-item .course-block .subtitle{color:var(--admin-text-secondary);font-size:.95rem;margin:0}.schedule-card .schedule-item .course-block .mt-12{display:block;margin-top:12px}.schedule-card .schedule-item .teacher-pill{display:flex;align-items:center;gap:12px;min-width:180px}.schedule-card .schedule-item .teacher-pill img{width:36px;height:36px;border-radius:50%}.schedule-card .schedule-item .teacher-pill .teacher-text{display:flex;flex-direction:column}.schedule-card .schedule-item .teacher-pill .teacher-text .label{font-size:.75rem;color:var(--admin-text-muted)}.schedule-card .schedule-item .teacher-pill .teacher-text strong{font-size:.9rem;color:var(--admin-text-main);font-weight:700}.schedule-card .schedule-item .item-toggle .text-link{color:var(--admin-info);background:none;border:none;font-weight:700;font-size:.9rem;cursor:pointer}.schedule-card .schedule-item .item-toggle .text-link:hover{text-decoration:underline}.schedule-card .schedule-item .item-expanded-content{padding:0 32px 32px;display:flex;flex-direction:column;gap:20px}.schedule-card .schedule-item .item-expanded-content .label{font-size:.75rem;color:var(--admin-text-muted);text-transform:uppercase;display:block;margin-bottom:8px}.schedule-card .schedule-item .item-expanded-content .avatar-stack{display:flex;align-items:center}.schedule-card .schedule-item .item-expanded-content .avatar-stack img{width:32px;height:32px;border-radius:50%;border:2px solid white;margin-left:-8px}.schedule-card .schedule-item .item-expanded-content .avatar-stack img:first-child{margin-left:0}.schedule-card .schedule-item .item-expanded-content .avatar-stack .more-count{width:32px;height:32px;border-radius:50%;background:var(--admin-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;margin-left:-8px;border:2px solid white}.schedule-card .schedule-item .item-expanded-content .meeting-url{color:var(--admin-text-main);text-decoration:underline;font-size:.9rem}.schedule-card .schedule-item .item-expanded-content .actions-row{display:flex;justify-content:flex-end;gap:12px;margin-top:10px}.schedule-card .schedule-item .item-expanded-content .actions-row .btn-outline{padding:10px 24px;border-radius:10px;font-weight:700;font-size:.9rem;cursor:pointer;background:transparent}.schedule-card .schedule-item .item-expanded-content .actions-row .btn-outline.red{border:1.5px solid var(--admin-error);color:var(--admin-error)}.schedule-card .schedule-item .item-expanded-content .actions-row .btn-outline.red:hover{background:rgba(var(--error-rgb),.05)}.schedule-card .schedule-item .item-expanded-content .actions-row .btn-outline.blue{border:1.5px solid var(--admin-info);color:var(--admin-info)}.schedule-card .schedule-item .item-expanded-content .actions-row .btn-outline.blue:hover{background:rgba(var(--info-rgb),.05)}.schedule-card .schedule-item .item-expanded-content .actions-row .btn-solid-blue{padding:10px 24px;border-radius:10px;background:var(--admin-info);color:#fff;border:none;font-weight:700;font-size:.9rem;cursor:pointer}.schedule-card .schedule-item .item-expanded-content .actions-row .btn-solid-blue:hover{box-shadow:0 4px 15px rgba(var(--info-rgb),.3)}@media(max-width:768px){.schedule-card .schedule-controls{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:24px}.schedule-card .tab-pills{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.schedule-card .tab-pills::-webkit-scrollbar{display:none}.schedule-card .tab-pills button{padding:10px 16px;white-space:nowrap;flex-shrink:0}.schedule-card .utility-btns{width:100%}.schedule-card .utility-btns .pill-btn{flex:1;justify-content:center}.schedule-card .schedule-item .item-main{flex-direction:column;gap:16px;padding:16px}.schedule-card .schedule-item .time-block{min-width:0;width:100%;gap:20px}.schedule-card .schedule-item .teacher-pill{min-width:0;width:100%}.schedule-card .schedule-item .item-toggle{width:100%}.schedule-card .schedule-item .item-toggle .text-link{width:100%;text-align:left}.schedule-card .schedule-item .item-expanded-content{padding:0 16px 16px}.schedule-card .schedule-item .item-expanded-content .actions-row{flex-direction:column}.schedule-card .schedule-item .item-expanded-content .actions-row button{width:100%}}.auth-error-page{min-height:100vh;background-color:#131129;display:flex;align-items:center;justify-content:center;padding:24px;color:#fff}.auth-error-page .error-card{background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:96px;max-width:500px;width:100%;text-align:center;box-shadow:0 20px 50px #00000080;animation:fadeIn .5s ease-out}.auth-error-page .error-card .error-icon{font-size:4rem;color:#f59e0b;margin-bottom:32px;filter:drop-shadow(0 0 15px rgba(245,158,11,.3))}.auth-error-page .error-card h1{font-size:28px;font-weight:700;margin-bottom:12px;color:#fff}.auth-error-page .error-card .error-message{background:#ffffff0d;padding:24px;border-radius:8px;color:#ffffffe6;font-size:18px;line-height:1.6;margin-bottom:48px;border:1px solid rgba(255,255,255,.1)}.auth-error-page .error-card .error-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:48px}.auth-error-page .error-card .error-actions button{padding:12px 32px;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.auth-error-page .error-card .error-actions button.btn-logout,.auth-error-page .error-card .error-actions button.btn-login{background-color:#f59e0b;color:#fff}.auth-error-page .error-card .error-actions button.btn-logout:hover,.auth-error-page .error-card .error-actions button.btn-login:hover{background-color:#d97706;transform:translateY(-2px)}.auth-error-page .error-card .error-actions button.btn-back{background-color:#ffffff0d;color:#fff}.auth-error-page .error-card .error-actions button.btn-back:hover{background-color:#ffffff1a;transform:translateY(-2px)}.auth-error-page .error-card .error-footer p{font-size:14px;color:#fff6;margin:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.error-card{padding:48px 24px}}.courses-list-page{padding:48px;animation:pageEntrance .4s ease-out;min-height:calc(100vh - 70px)}[data-theme=light] .courses-list-page{background-color:var(--admin-bg-content)}@media(max-width:768px){.courses-list-page{padding:24px}}.classes-list-page{padding:48px;animation:pageEntrance .4s ease-out;min-height:calc(100vh - 70px)}[data-theme=light] .classes-list-page{background-color:var(--admin-bg-content)}@media(max-width:768px){.classes-list-page{padding:24px}}.setup-progress{background:transparent;border:none;border-radius:12px;padding:12px 4px;margin-bottom:24px}.setup-progress .progress-header{display:none}.setup-progress .phases-list{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.setup-progress .phases-list .phase-step{display:flex;align-items:center;justify-content:center;padding:4px 8px;position:relative}.setup-progress .phases-list .phase-step--completed .phase-icon{color:var(--admin-success)}.setup-progress .phases-list .phase-step--completed h3{color:var(--admin-text-main)}.setup-progress .phases-list .phase-step--completed .phase-count{color:var(--admin-success)}.setup-progress .phases-list .phase-step--active .phase-icon{color:var(--admin-primary);animation:pulse 2s infinite}.setup-progress .phases-list .phase-step--active h3{color:var(--admin-primary);font-weight:700}.setup-progress .phases-list .phase-step--active .phase-count{color:var(--admin-primary)}.setup-progress .phases-list .phase-step--pending .phase-icon{color:var(--admin-text-muted)}.setup-progress .phases-list .phase-step--pending h3{color:var(--admin-text-secondary)}.setup-progress .phases-list .phase-step--pending .phase-count{color:var(--admin-text-muted)}.setup-progress .phases-list .phase-step .phase-step-header{display:flex;align-items:center;gap:4px;width:100%}.setup-progress .phases-list .phase-step .phase-step-header .phase-icon{font-size:16px;flex-shrink:0;transition:color .3s ease}.setup-progress .phases-list .phase-step .phase-step-header .phase-info-col{flex:0}.setup-progress .phases-list .phase-step .phase-step-header .phase-info-col h3{font-size:12px;font-weight:500;margin:0;transition:color .3s ease;white-space:nowrap}.setup-progress .phases-list .phase-step .phase-step-header .phase-info-col .phase-count,.setup-progress .phases-list .phase-step .phase-divider,.setup-progress .phases-stepper-mobile{display:none}@media(max-width:768px){.setup-progress{padding:8px 12px;margin-bottom:8px}.setup-progress .phases-list{display:none}.setup-progress .phases-stepper-mobile{display:flex;align-items:center;width:100%;gap:0}.setup-progress .phases-stepper-mobile .stepper-step{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.setup-progress .phases-stepper-mobile .stepper-step .stepper-dot{width:32px;height:32px;border-radius:9999px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;transition:all .25s ease;border:2px solid var(--alpha-10);background:var(--admin-bg-card);color:var(--admin-text-muted)}.setup-progress .phases-stepper-mobile .stepper-step .stepper-label{font-size:10px;font-weight:500;color:var(--admin-text-muted);white-space:nowrap;text-align:center;transition:color .25s ease;max-width:64px;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.setup-progress .phases-stepper-mobile .stepper-step--completed .stepper-dot{background:var(--admin-success);border-color:var(--admin-success);color:#fff;font-size:16px}.setup-progress .phases-stepper-mobile .stepper-step--completed .stepper-label{color:var(--admin-success)}.setup-progress .phases-stepper-mobile .stepper-step--active .stepper-dot{background:var(--admin-primary);border-color:var(--admin-primary);color:#fff;box-shadow:0 0 0 4px rgba(var(--primary-rgb),.2);animation:pulseDot 2s infinite}.setup-progress .phases-stepper-mobile .stepper-step--active .stepper-label{color:var(--admin-primary);font-weight:700}.setup-progress .phases-stepper-mobile .stepper-step--pending .stepper-dot{background:var(--admin-bg-card);border-color:var(--alpha-10);color:var(--admin-text-muted)}.setup-progress .phases-stepper-mobile .stepper-connector{flex:1;height:2px;background:var(--alpha-10);margin-bottom:22px;transition:background .3s ease}.setup-progress .phases-stepper-mobile .stepper-connector--filled{background:var(--admin-success)}}@media(max-width:640px){.setup-progress .phases-stepper-mobile .stepper-step .stepper-dot{width:28px;height:28px;font-size:12px}.setup-progress .phases-stepper-mobile .stepper-step .stepper-label{font-size:9px;max-width:52px}.setup-progress .phases-stepper-mobile .stepper-connector{margin-bottom:20px}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes pulseDot{0%,to{box-shadow:0 0 0 4px rgba(var(--primary-rgb),.2)}50%{box-shadow:0 0 0 6px rgba(var(--primary-rgb),.1)}}.phase-nav{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;padding:12px 24px;margin-bottom:48px;position:sticky;top:24px;z-index:10}.phase-nav .phase-nav-content{display:flex;align-items:center;gap:24px;justify-content:space-between}.phase-nav .phase-nav-content .phase-nav-btn{display:flex;align-items:center;gap:8px;background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:12px 32px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.phase-nav .phase-nav-content .phase-nav-btn svg{font-size:16px}.phase-nav .phase-nav-content .phase-nav-btn:hover:not(:disabled){background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-primary)}.phase-nav .phase-nav-content .phase-nav-btn:active:not(:disabled){transform:translateY(0)}.phase-nav .phase-nav-content .phase-nav-btn:disabled{opacity:.5;cursor:not-allowed;background:var(--admin-bg-card);color:var(--admin-text-muted);box-shadow:none;border:1px solid var(--alpha-10)}.phase-nav .phase-nav-content .phase-nav-btn:disabled:hover{transform:none;box-shadow:none;background:var(--admin-bg-card)}.phase-nav .phase-nav-content .phase-nav-btn--prev span,.phase-nav .phase-nav-content .phase-nav-btn--next span{display:none}.phase-nav .phase-nav-content .phase-indicators{display:flex;gap:12px;flex:1;justify-content:center;flex-wrap:wrap}.phase-nav .phase-nav-content .phase-indicators .phase-indicator{padding:12px 24px;border-radius:8px;background:var(--alpha-05);color:var(--admin-text-secondary);border:2px solid var(--alpha-10);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative}.phase-nav .phase-nav-content .phase-indicators .phase-indicator .phase-indicator-label{display:inline}.phase-nav .phase-nav-content .phase-indicators .phase-indicator:hover:not(.phase-indicator--invalid){background:var(--alpha-08);border-color:var(--admin-primary)}.phase-nav .phase-nav-content .phase-indicators .phase-indicator--active{background:var(--admin-primary);color:#fff;border-color:var(--admin-primary);box-shadow:0 2px 8px rgba(var(--primary-rgb),.3)}.phase-nav .phase-nav-content .phase-indicators .phase-indicator--completed{background:var(--admin-success);color:#fff;border-color:var(--admin-success);box-shadow:0 2px 8px #4caf504d}.phase-nav .phase-nav-content .phase-indicators .phase-indicator--completed:after{content:"✓";margin-left:4px;font-size:16px;font-weight:700}.phase-nav .phase-nav-content .phase-indicators .phase-indicator--invalid{opacity:.5;cursor:not-allowed;background:var(--admin-bg-card)}.phase-nav .phase-nav-content .phase-indicators .phase-indicator--invalid:hover{background:var(--admin-bg-card);border-color:var(--alpha-10)}.phase-nav .phase-nav-content .phase-nav-mobile-center{display:none}@media(max-width:768px){.phase-nav{padding:8px 12px;margin-bottom:24px;top:0}.phase-nav .phase-nav-content{gap:8px}.phase-nav .phase-nav-content .phase-nav-btn{padding:8px 12px;font-size:14px;min-height:44px;flex-shrink:0}.phase-nav .phase-nav-content .phase-nav-btn--prev span,.phase-nav .phase-nav-content .phase-nav-btn--next span,.phase-nav .phase-nav-content .phase-indicators{display:none}.phase-nav .phase-nav-content .phase-nav-mobile-center{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-width:0;gap:2px}.phase-nav .phase-nav-content .phase-nav-mobile-center .mobile-step-counter{font-size:12px;color:var(--admin-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.06em}.phase-nav .phase-nav-content .phase-nav-mobile-center .mobile-step-name{font-size:14px;font-weight:700;color:var(--admin-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}}.phase-header{display:flex;align-items:flex-start;gap:24px;margin-bottom:48px;padding-bottom:24px;border-bottom:1px solid var(--alpha-10)}.phase-header .phase-header-icon{font-size:28px;color:var(--admin-primary);flex-shrink:0;margin-top:4px}.phase-header .phase-header-content{flex:1}.phase-header .phase-header-content h2{font-size:24px;font-weight:700;color:var(--admin-text-main);margin:0 0 8px}.phase-header .phase-header-content p{color:var(--admin-text-secondary);font-size:16px;margin:0;line-height:1.6}@media(max-width:768px){.phase-header .phase-header-icon{display:none}}.course-card{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:12px;transition:all .2s ease;cursor:default}.course-card:hover{border-color:var(--alpha-08);box-shadow:var(--shadow-card-hover)}.course-card--linked{opacity:.6;pointer-events:none}.course-card--linked .course-name{color:var(--admin-text-secondary)}.course-card .course-card-content{flex:1;display:flex;flex-direction:column;gap:12px}.course-card .course-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.course-card .course-card-header .course-name{font-size:16px;font-weight:700;color:var(--admin-text-main);margin:0;flex:1}.course-card .course-card-header .course-section{background:var(--admin-primary);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700;text-transform:uppercase;white-space:nowrap}.course-card .course-details{display:flex;flex-direction:column;gap:8px}.course-card .course-details .detail-item{display:grid;grid-template-columns:80px 1fr;gap:12px;font-size:12px}.course-card .course-details .detail-item .detail-label{color:var(--admin-text-muted);font-weight:500}.course-card .course-details .detail-item .detail-value{color:var(--admin-text-secondary);text-transform:capitalize}.course-card .link-button{align-self:flex-end;background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s ease;min-height:44px}@media(max-width:640px){.course-card .link-button{align-self:stretch;justify-content:center}}.course-card .link-button svg{font-size:16px}.course-card .link-button:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-primary)}.course-card .link-button:active{transform:translateY(0)}.course-card .link-button:disabled{opacity:.5;cursor:not-allowed}.course-card .link-button:disabled:hover{transform:none;box-shadow:none}.phase-link-courses .courses-section{margin-bottom:64px}.phase-link-courses .linked-courses-section{background:var(--admin-bg-secondary);border:1px solid var(--alpha-10);border-radius:12px;padding:24px;margin-bottom:48px}.phase-link-courses .courses-header,.phase-link-courses .linked-courses-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.phase-link-courses .courses-header h3,.phase-link-courses .linked-courses-header h3{font-size:18px;font-weight:700;color:var(--admin-text-main);margin:0}.phase-link-courses .courses-header .section-description,.phase-link-courses .linked-courses-header .section-description{color:var(--admin-text-secondary);font-size:14px;margin:4px 0 0}@media(max-width:640px){.phase-link-courses .courses-header,.phase-link-courses .linked-courses-header{flex-direction:column;gap:8px}}.phase-link-courses .linked-courses-header{flex-direction:row;align-items:center}.phase-link-courses .linked-courses-header .courses-count{background:var(--admin-primary);color:#fff;border-radius:9999px;padding:4px 12px;font-size:14px;font-weight:700;margin-left:auto}.phase-link-courses .auto-link-btn{background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:8px 24px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-height:44px}.phase-link-courses .auto-link-btn:hover:not(:disabled){background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-primary)}.phase-link-courses .auto-link-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.phase-link-courses .auto-link-btn{width:100%}}.phase-link-courses .search-box{margin-bottom:24px}.phase-link-courses .search-box .search-input{width:100%;background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:8px;padding:12px;font-size:16px;color:var(--admin-text-main);transition:all .2s ease}.phase-link-courses .search-box .search-input:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.phase-link-courses .search-box .search-input::placeholder{color:var(--admin-text-muted)}.phase-link-courses .courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-bottom:24px}@media(max-width:768px){.phase-link-courses .courses-grid{grid-template-columns:1fr}}.phase-link-courses .empty-state{text-align:center;padding:64px 24px;background:var(--alpha-05);border:1px dashed var(--alpha-10);border-radius:12px}.phase-link-courses .empty-state svg{font-size:36px;color:var(--admin-success);margin-bottom:24px}.phase-link-courses .empty-state h4{color:var(--admin-text-main);font-size:18px;margin:0 0 8px}.phase-link-courses .empty-state p{color:var(--admin-text-secondary);margin:0;font-size:14px}.phase-link-courses .linked-courses-list{display:flex;flex-direction:column;gap:12px}.phase-link-courses .linked-courses-list .linked-course-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:8px;transition:all .2s ease}.phase-link-courses .linked-courses-list .linked-course-item:hover{border-color:var(--alpha-08);box-shadow:0 2px 8px #0000001a}.phase-link-courses .linked-courses-list .linked-course-item .linked-course-info{flex:1;min-width:0}.phase-link-courses .linked-courses-list .linked-course-item .linked-course-info h4{color:var(--admin-text-main);font-size:16px;font-weight:700;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phase-link-courses .linked-courses-list .linked-course-item .linked-course-info p{color:var(--admin-text-secondary);font-size:14px;margin:0;text-transform:capitalize}.phase-link-courses .linked-courses-list .linked-course-item .unlink-btn{background:transparent;color:var(--admin-text-secondary);border:1px solid var(--alpha-10);border-radius:8px;padding:4px 12px;font-size:14px;cursor:pointer;transition:all .2s ease;white-space:nowrap;margin-left:12px;min-height:36px;min-width:44px}.phase-link-courses .linked-courses-list .linked-course-item .unlink-btn:hover{color:var(--admin-error);border-color:var(--admin-error);background:rgba(var(--error-rgb),.04)}@media(max-width:640px){.phase-link-courses .linked-courses-list .linked-course-item{flex-direction:column;align-items:flex-start;gap:8px}.phase-link-courses .linked-courses-list .linked-course-item .linked-course-info h4{white-space:normal}.phase-link-courses .linked-courses-list .linked-course-item .unlink-btn{margin-left:0;width:100%;text-align:center}}.phase-link-courses .phase-validation{display:flex;gap:12px}.phase-link-courses .phase-validation .validation-warning,.phase-link-courses .phase-validation .validation-success{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;flex:1}.phase-link-courses .phase-validation .validation-warning span,.phase-link-courses .phase-validation .validation-success span{display:block}.phase-link-courses .phase-validation .validation-warning{background:rgba(var(--warning-rgb),.08);border:1px solid rgba(var(--warning-rgb),.2);color:var(--admin-warning)}.phase-link-courses .phase-validation .validation-success{background:rgba(var(--success-rgb),.08);border:1px solid rgba(var(--success-rgb),.2);color:var(--admin-success)}.phase-link-courses .phase-actions{display:flex;justify-content:flex-end;margin-top:48px}@media(max-width:640px){.phase-link-courses .phase-actions{margin-top:24px}}.phase-link-courses .phase-actions .next-btn{background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:12px 48px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px}.phase-link-courses .phase-actions .next-btn:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-primary)}.phase-link-courses .phase-actions .next-btn:active{transform:translateY(0)}@media(max-width:640px){.phase-link-courses .phase-actions .next-btn{width:100%}}.teacher-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}@media(max-width:640px){.teacher-modal-overlay{align-items:flex-end;padding:0}}.teacher-modal-overlay .teacher-modal{background:var(--admin-bg-primary);border:1px solid var(--alpha-10);border-radius:12px;display:flex;flex-direction:column;max-width:500px;width:100%;max-height:80vh;box-shadow:0 20px 25px -5px #00000080}@media(max-width:640px){.teacher-modal-overlay .teacher-modal{max-width:100%;max-height:90vh;border-radius:12px 12px 0 0;border-bottom:none;animation:slideUpMobile .3s ease}.teacher-modal-overlay .teacher-modal:before{content:"";display:block;width:40px;height:4px;background:var(--alpha-08);border-radius:2px;margin:8px auto 0;flex-shrink:0}}.teacher-modal-overlay .teacher-modal .teacher-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid var(--alpha-10)}.teacher-modal-overlay .teacher-modal .teacher-modal-header div{flex:1}.teacher-modal-overlay .teacher-modal .teacher-modal-header div h3{font-size:18px;font-weight:700;color:var(--admin-text-main);margin:0 0 4px}.teacher-modal-overlay .teacher-modal .teacher-modal-header div p{color:var(--admin-text-secondary);font-size:14px;margin:0;text-transform:capitalize}.teacher-modal-overlay .teacher-modal .teacher-modal-header .modal-close-btn{background:transparent;border:none;color:var(--admin-text-muted);cursor:pointer;font-size:20px;padding:0;line-height:1;transition:color .2s ease}.teacher-modal-overlay .teacher-modal .teacher-modal-header .modal-close-btn:hover{color:var(--admin-text-main)}.teacher-modal-overlay .teacher-modal .teacher-modal-content{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding:24px}.teacher-modal-overlay .teacher-modal .teacher-modal-content .search-section{margin-bottom:24px}.teacher-modal-overlay .teacher-modal .teacher-modal-content .search-section .search-box{position:relative;display:flex;align-items:center}.teacher-modal-overlay .teacher-modal .teacher-modal-content .search-section .search-box .search-icon{position:absolute;left:12px;color:var(--admin-text-muted);font-size:16px;pointer-events:none}.teacher-modal-overlay .teacher-modal .teacher-modal-content .search-section .search-box .search-input{width:100%;background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:8px;padding:12px 12px 12px 40px;font-size:16px;color:var(--admin-text-main);transition:all .2s ease}.teacher-modal-overlay .teacher-modal .teacher-modal-content .search-section .search-box .search-input:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.teacher-modal-overlay .teacher-modal .teacher-modal-content .search-section .search-box .search-input::placeholder{color:var(--admin-text-muted)}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list{display:flex;flex-direction:column;gap:8px}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option{display:flex;align-items:center;gap:12px;padding:12px;background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:8px;cursor:pointer;transition:all .2s ease}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option:hover{border-color:var(--admin-primary);background:var(--alpha-03)}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option--selected{border-color:var(--admin-primary);background:rgba(var(--primary-rgb),.08)}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option--selected .teacher-name{color:var(--admin-primary);font-weight:700}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option .teacher-info{flex:1}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option .teacher-info .teacher-name{color:var(--admin-text-main);font-weight:700;font-size:14px;margin:0 0 4px}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option .teacher-info .teacher-email{color:var(--admin-text-secondary);font-size:12px;margin:0 0 4px}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option .teacher-info .teacher-qualifications{display:flex;gap:4px;flex-wrap:wrap}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option .teacher-info .teacher-qualifications .qualification-badge{background:var(--alpha-05);color:var(--admin-text-muted);padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .teacher-option .teacher-radio{width:20px;height:20px;cursor:pointer;flex-shrink:0}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .no-results{text-align:center;padding:24px;color:var(--admin-text-muted);font-size:14px}.teacher-modal-overlay .teacher-modal .teacher-modal-content .teachers-list .no-results p{margin:0}.teacher-modal-overlay .teacher-modal .teacher-modal-footer{display:flex;gap:12px;padding:24px;border-top:1px solid var(--alpha-10)}.teacher-modal-overlay .teacher-modal .teacher-modal-footer .modal-cancel-btn{flex:1;background:transparent;color:var(--admin-text-secondary);border:1px solid var(--alpha-10);border-radius:8px;padding:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.teacher-modal-overlay .teacher-modal .teacher-modal-footer .modal-cancel-btn:hover{background:var(--alpha-03);border-color:var(--alpha-08)}.teacher-modal-overlay .teacher-modal .teacher-modal-footer .modal-assign-btn{flex:1;background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.teacher-modal-overlay .teacher-modal .teacher-modal-footer .modal-assign-btn:hover:not(:disabled){background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-primary)}.teacher-modal-overlay .teacher-modal .teacher-modal-footer .modal-assign-btn:active:not(:disabled){transform:translateY(0)}.teacher-modal-overlay .teacher-modal .teacher-modal-footer .modal-assign-btn:disabled{opacity:.5;cursor:not-allowed}.teacher-modal-overlay .teacher-modal .teacher-modal-footer .modal-assign-btn:disabled:hover{transform:none;box-shadow:none}@keyframes slideUpMobile{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.phase-assign-teachers .warning-banner,.phase-assign-teachers .success-banner{display:flex;align-items:center;gap:12px;padding:12px 24px;border-radius:12px;margin-bottom:48px;font-size:14px;font-weight:500}.phase-assign-teachers .warning-banner svg,.phase-assign-teachers .success-banner svg{font-size:18px;flex-shrink:0}.phase-assign-teachers .warning-banner span,.phase-assign-teachers .success-banner span{flex:1}.phase-assign-teachers .warning-banner{background:rgba(var(--warning-rgb),.08);border:1px solid rgba(var(--warning-rgb),.2);border-left:3px solid var(--admin-warning);color:var(--admin-warning)}.phase-assign-teachers .success-banner{background:rgba(var(--success-rgb),.08);border:1px solid rgba(var(--success-rgb),.2);border-left:3px solid var(--admin-success);color:var(--admin-success)}.phase-assign-teachers .empty-state{text-align:center;padding:64px 24px;background:var(--alpha-05);border:1px dashed var(--alpha-10);border-radius:12px}.phase-assign-teachers .empty-state p{color:var(--admin-text-secondary);font-size:16px;margin:0}.phase-assign-teachers .courses-assignment-list{display:flex;flex-direction:column;gap:12px;margin-bottom:48px}.phase-assign-teachers .courses-assignment-list .assignment-row{display:flex;align-items:center;gap:24px;padding:24px;background:var(--admin-bg-card);border:2px solid var(--alpha-10);border-radius:12px;transition:all .2s ease}.phase-assign-teachers .courses-assignment-list .assignment-row--pending{border-color:rgba(var(--warning-rgb),.3);background:rgba(var(--warning-rgb),.02)}.phase-assign-teachers .courses-assignment-list .assignment-row--assigned{border-color:rgba(var(--success-rgb),.3);background:rgba(var(--success-rgb),.02)}.phase-assign-teachers .courses-assignment-list .assignment-row:hover{box-shadow:var(--shadow-card-hover)}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-course-info{flex:1}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-course-info h4{color:var(--admin-text-main);font-size:16px;font-weight:700;margin:0 0 4px}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-course-info p{color:var(--admin-text-secondary);font-size:14px;margin:0;text-transform:capitalize}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-teacher-info{flex:1;display:flex;align-items:center}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-teacher-info .teacher-badge{display:flex;align-items:center;gap:8px;background:var(--alpha-05);padding:8px 12px;border-radius:8px;font-size:14px}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-teacher-info .teacher-badge .teacher-name{color:var(--admin-text-main);font-weight:500}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-teacher-info .teacher-badge .remove-teacher-btn{background:transparent;border:none;color:var(--admin-text-muted);cursor:pointer;font-size:16px;padding:0;line-height:1;transition:color .2s ease}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-teacher-info .teacher-badge .remove-teacher-btn:hover{color:var(--admin-error)}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-teacher-info .unassigned-text{color:var(--admin-text-muted);font-size:14px;font-style:italic}.phase-assign-teachers .courses-assignment-list .assignment-row .assign-btn{background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:8px 24px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0;min-height:44px}.phase-assign-teachers .courses-assignment-list .assignment-row .assign-btn:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-primary)}.phase-assign-teachers .courses-assignment-list .assignment-row .assign-btn:active{transform:translateY(0)}.phase-assign-teachers .phase-validation{display:flex;gap:12px}.phase-assign-teachers .phase-validation .validation-warning,.phase-assign-teachers .phase-validation .validation-success{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;flex:1}.phase-assign-teachers .phase-validation .validation-warning span,.phase-assign-teachers .phase-validation .validation-success span{display:block}.phase-assign-teachers .phase-validation .validation-warning{background:rgba(var(--warning-rgb),.08);border:1px solid rgba(var(--warning-rgb),.2);color:var(--admin-warning)}.phase-assign-teachers .phase-validation .validation-success{background:rgba(var(--success-rgb),.08);border:1px solid rgba(var(--success-rgb),.2);color:var(--admin-success)}@media(max-width:768px){.phase-assign-teachers .courses-assignment-list .assignment-row{flex-direction:column;align-items:flex-start;gap:12px}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-course-info{width:100%;padding-bottom:8px;border-bottom:1px solid var(--alpha-10)}.phase-assign-teachers .courses-assignment-list .assignment-row .assignment-teacher-info{width:100%}.phase-assign-teachers .courses-assignment-list .assignment-row .assign-btn{width:100%;display:flex;justify-content:center;align-items:center;min-height:44px}}@media(max-width:640px){.phase-assign-teachers .courses-assignment-list .assignment-row{padding:12px}}.excel-upload .drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:64px 24px;border:2px dashed var(--alpha-10);border-radius:12px;background:var(--alpha-03);cursor:pointer;transition:all .2s ease;text-align:center}.excel-upload .drop-zone svg{font-size:40px;color:var(--admin-primary);opacity:.7}.excel-upload .drop-zone h3{color:var(--admin-text-main);font-size:18px;margin:0}.excel-upload .drop-zone p{color:var(--admin-text-secondary);font-size:14px;margin:0}.excel-upload .drop-zone p code{background:var(--alpha-05);padding:4px 8px;border-radius:4px;font-family:monospace;color:var(--admin-primary)}.excel-upload .drop-zone p.required-columns{font-size:12px;margin-top:8px}.excel-upload .drop-zone--active{border-color:var(--admin-primary);background:rgba(var(--primary-rgb),.05)}.excel-upload .drop-zone--active svg{opacity:1}.excel-upload .drop-zone .browse-btn{background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:8px 24px;font-weight:700;cursor:pointer;transition:all .2s ease}.excel-upload .drop-zone .browse-btn:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-primary)}.excel-upload .error-message{display:flex;align-items:center;gap:12px;padding:12px 24px;background:rgba(var(--error-rgb),.08);border:1px solid rgba(var(--error-rgb),.2);border-radius:12px;margin:24px 0;color:var(--admin-error);font-size:14px}.excel-upload .error-message svg{flex-shrink:0}.excel-upload .excel-template{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;padding:24px;margin-top:24px}.excel-upload .excel-template h4{color:var(--admin-text-main);font-size:14px;margin:0 0 12px}.excel-upload .excel-template table{width:100%;border-collapse:collapse;background:var(--alpha-03);border-radius:8px;overflow:hidden}.excel-upload .excel-template table thead tr{border-bottom:1px solid var(--alpha-10)}.excel-upload .excel-template table thead tr th{padding:12px 24px;text-align:left;font-weight:700;color:var(--admin-text-main);font-size:12px;background:var(--alpha-05)}.excel-upload .excel-template table tbody tr{border-bottom:1px solid var(--alpha-10)}.excel-upload .excel-template table tbody tr:last-child{border-bottom:none}.excel-upload .excel-template table tbody tr td{padding:12px 24px;color:var(--admin-text-secondary);font-size:12px}.excel-upload .excel-preview h3{color:var(--admin-text-main);font-size:18px;margin:0 0 24px}.excel-upload .excel-preview .preview-table{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;overflow-x:auto;margin-bottom:24px}.excel-upload .excel-preview .preview-table table{width:100%;border-collapse:collapse}.excel-upload .excel-preview .preview-table table thead tr{border-bottom:1px solid var(--alpha-10)}.excel-upload .excel-preview .preview-table table thead tr th{padding:12px 24px;text-align:left;font-weight:700;color:var(--admin-text-main);font-size:14px;background:var(--alpha-03)}.excel-upload .excel-preview .preview-table table tbody tr{border-bottom:1px solid var(--alpha-10)}.excel-upload .excel-preview .preview-table table tbody tr:last-child{border-bottom:none}.excel-upload .excel-preview .preview-table table tbody tr td{padding:12px 24px;color:var(--admin-text-secondary);font-size:14px}.excel-upload .excel-preview .preview-actions{display:flex;gap:12px;justify-content:flex-end}.excel-upload .excel-preview .preview-actions button{padding:8px 24px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease}.excel-upload .excel-preview .preview-actions button.cancel-btn{background:transparent;color:var(--admin-text-secondary);border:1px solid var(--alpha-10)}.excel-upload .excel-preview .preview-actions button.cancel-btn:hover{background:var(--alpha-03);border-color:var(--alpha-08)}.excel-upload .excel-preview .preview-actions button.import-btn{background:var(--admin-primary);color:#fff;border:none}.excel-upload .excel-preview .preview-actions button.import-btn:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-primary)}@media(max-width:768px){.excel-upload .excel-preview .preview-actions{flex-direction:column}.excel-upload .excel-preview .preview-actions button{width:100%}}.manual-add{display:grid;grid-template-columns:1fr;gap:48px}.manual-add .student-selector{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;padding:24px}.manual-add .student-selector .search-section{margin-bottom:24px;position:relative;display:flex;align-items:flex-end;gap:12px}.manual-add .student-selector .search-section .search-box{flex:1;position:relative;display:flex;align-items:center}.manual-add .student-selector .search-section .search-box .search-icon{position:absolute;left:12px;color:var(--admin-text-muted);font-size:16px;pointer-events:none}.manual-add .student-selector .search-section .search-box .search-input{width:100%;background:var(--admin-bg-secondary);border:1px solid var(--alpha-10);border-radius:8px;padding:12px 12px 12px 40px;font-size:16px;color:var(--admin-text-main);transition:all .2s ease}.manual-add .student-selector .search-section .search-box .search-input:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.manual-add .student-selector .search-section .search-box .search-input::placeholder{color:var(--admin-text-muted)}.manual-add .student-selector .search-section .search-box .search-input:disabled{opacity:.6;cursor:not-allowed}.manual-add .student-selector .search-section .clear-btn{background:transparent;border:none;color:var(--admin-text-muted);cursor:pointer;font-size:18px;padding:8px;line-height:1;transition:color .2s ease}.manual-add .student-selector .search-section .clear-btn:hover{color:var(--admin-text-main)}.manual-add .student-selector .error-banner{background:rgba(var(--error-rgb),.08);border:1px solid rgba(var(--error-rgb),.2);color:var(--admin-error);padding:12px 24px;border-radius:8px;margin-bottom:24px;font-size:14px}.manual-add .student-selector .loading-state{text-align:center;padding:48px 24px}.manual-add .student-selector .loading-state .spinner{width:30px;height:30px;border:3px solid var(--alpha-10);border-top-color:var(--admin-primary);border-radius:9999px;animation:spin 1s linear infinite;margin:0 auto 12px}.manual-add .student-selector .loading-state p{color:var(--admin-text-secondary);margin:0;font-size:14px}.manual-add .student-selector .students-list{max-height:400px;overflow-y:auto}.manual-add .student-selector .students-list .student-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--alpha-03);border:1px solid var(--alpha-10);border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .2s ease}.manual-add .student-selector .students-list .student-item:last-child{margin-bottom:0}.manual-add .student-selector .students-list .student-item:hover{border-color:var(--admin-primary);background:rgba(var(--primary-rgb),.05)}.manual-add .student-selector .students-list .student-item .student-info{flex:1}.manual-add .student-selector .students-list .student-item .student-info .student-name{color:var(--admin-text-main);font-weight:500;font-size:14px;margin-bottom:4px}.manual-add .student-selector .students-list .student-item .student-info .student-email{color:var(--admin-text-secondary);font-size:12px;margin-bottom:4px}.manual-add .student-selector .students-list .student-item .student-info .student-id{color:var(--admin-text-muted);font-size:12px;font-weight:500}.manual-add .student-selector .students-list .student-item .select-btn{background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:4px 24px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap;margin-left:12px}.manual-add .student-selector .students-list .student-item .select-btn:hover{background:var(--admin-primary-dark);transform:translateY(-1px);box-shadow:0 2px 6px var(--shadow-primary)}.manual-add .student-selector .students-list .student-item .select-btn:active{transform:translateY(0)}.manual-add .student-selector .students-list .no-results{text-align:center;padding:48px 24px;color:var(--admin-text-secondary);font-size:14px}.manual-add .student-selector .students-list .no-results p{margin:0}.manual-add .enrolled-students{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;padding:24px}.manual-add .enrolled-students h3{color:var(--admin-text-main);font-size:16px;font-weight:700;margin:0 0 24px}.manual-add .enrolled-students .students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}@media(max-width:768px){.manual-add .enrolled-students .students-grid{grid-template-columns:1fr}}.manual-add .enrolled-students .students-grid .enrolled-student-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:rgba(var(--success-rgb),.05);border:1px solid rgba(var(--success-rgb),.2);border-radius:8px}.manual-add .enrolled-students .students-grid .enrolled-student-item .enrolled-student-info{flex:1}.manual-add .enrolled-students .students-grid .enrolled-student-item .enrolled-student-info .enrolled-student-name{color:var(--admin-text-main);font-weight:500;font-size:14px;margin-bottom:4px}.manual-add .enrolled-students .students-grid .enrolled-student-item .enrolled-student-info .enrolled-student-email{color:var(--admin-text-secondary);font-size:12px}.manual-add .enrolled-students .students-grid .enrolled-student-item .checkmark{color:var(--admin-success);font-size:18px;margin-left:12px;flex-shrink:0}.student-roster .empty-state{text-align:center;padding:64px 24px;background:var(--alpha-05);border:1px dashed var(--alpha-10);border-radius:12px}.student-roster .empty-state p{color:var(--admin-text-secondary);font-size:16px;margin:0 0 8px}.student-roster .empty-state p:last-child{margin-bottom:0}.student-roster .roster-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}@media(max-width:768px){.student-roster .roster-header{flex-direction:column;align-items:flex-start}}.student-roster .roster-header .search-box{flex:1;position:relative;display:flex;align-items:center}.student-roster .roster-header .search-box .search-icon{position:absolute;left:12px;color:var(--admin-text-muted);font-size:16px;pointer-events:none}.student-roster .roster-header .search-box input{width:100%;background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:8px;padding:12px 12px 12px 40px;font-size:16px;color:var(--admin-text-main);transition:all .2s ease}.student-roster .roster-header .search-box input:focus{outline:none;border-color:var(--admin-primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.student-roster .roster-header .search-box input::placeholder{color:var(--admin-text-muted)}@media(max-width:768px){.student-roster .roster-header .search-box{width:100%}}.student-roster .roster-header .roster-info{color:var(--admin-text-secondary);font-size:14px;white-space:nowrap}@media(max-width:768px){.student-roster .roster-header .roster-info{width:100%}}.student-roster .roster-table-container{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.student-roster .roster-table-container .roster-table{width:100%;border-collapse:collapse}.student-roster .roster-table-container .roster-table thead{background:var(--alpha-03)}.student-roster .roster-table-container .roster-table thead tr{border-bottom:1px solid var(--alpha-10)}.student-roster .roster-table-container .roster-table thead tr th{padding:12px 24px;text-align:left;color:var(--admin-text-main);font-size:14px;font-weight:700;white-space:nowrap}@media(max-width:640px){.student-roster .roster-table-container .roster-table thead tr th{padding:8px 12px;font-size:12px}}.student-roster .roster-table-container .roster-table tbody tr{border-bottom:1px solid var(--alpha-10);transition:background .2s ease}.student-roster .roster-table-container .roster-table tbody tr:last-child{border-bottom:none}.student-roster .roster-table-container .roster-table tbody tr:hover{background:var(--alpha-02)}.student-roster .roster-table-container .roster-table tbody tr td{padding:12px 24px;color:var(--admin-text-secondary);font-size:14px}@media(max-width:640px){.student-roster .roster-table-container .roster-table tbody tr td{padding:8px 12px;font-size:12px}}.student-roster .roster-table-container .roster-table tbody tr td a{color:var(--admin-primary);text-decoration:none;transition:color .2s ease}.student-roster .roster-table-container .roster-table tbody tr td a:hover{color:var(--admin-primary-dark);text-decoration:underline}.student-roster .roster-table-container .roster-table tbody tr td .remove-btn{background:transparent;border:none;color:var(--admin-text-muted);cursor:pointer;font-size:16px;transition:color .2s ease;padding:4px;line-height:1;min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px}.student-roster .roster-table-container .roster-table tbody tr td .remove-btn:hover{color:var(--admin-error);background:rgba(var(--error-rgb),.06)}.phase-manage-students .tabs-navigation{display:flex;gap:12px;margin-bottom:48px;border-bottom:1px solid var(--alpha-10)}@media(max-width:640px){.phase-manage-students .tabs-navigation{gap:0;margin-bottom:24px}}.phase-manage-students .tabs-navigation .tab-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--admin-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:48px}.phase-manage-students .tabs-navigation .tab-btn svg{font-size:16px;flex-shrink:0}.phase-manage-students .tabs-navigation .tab-btn:hover{color:var(--admin-text-main)}.phase-manage-students .tabs-navigation .tab-btn--active{color:var(--admin-primary);border-bottom-color:var(--admin-primary)}.phase-manage-students .tabs-navigation .tab-btn span{display:inline}@media(max-width:640px){.phase-manage-students .tabs-navigation .tab-btn{flex:1;padding:8px 4px;font-size:12px;gap:4px}}.phase-manage-students .tabs-content{margin-bottom:48px}.phase-manage-students .phase-validation{display:flex;gap:12px}.phase-manage-students .phase-validation .validation-warning,.phase-manage-students .phase-validation .validation-success{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;flex:1}.phase-manage-students .phase-validation .validation-warning span,.phase-manage-students .phase-validation .validation-success span{display:block}.phase-manage-students .phase-validation .validation-warning{background:rgba(var(--info-rgb),.08);border:1px solid rgba(var(--info-rgb),.2);color:var(--admin-info)}.phase-manage-students .phase-validation .validation-success{background:rgba(var(--success-rgb),.08);border:1px solid rgba(var(--success-rgb),.2);color:var(--admin-success)}.activation-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:24px}@media(max-width:640px){.activation-modal-overlay{align-items:flex-end;padding:0}}.activation-modal-overlay .activation-modal{background:var(--admin-bg-primary);border:1px solid var(--alpha-10);border-radius:12px;display:flex;flex-direction:column;max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@media(max-width:640px){.activation-modal-overlay .activation-modal{max-width:100%;border-radius:12px 12px 0 0;border-bottom:none}.activation-modal-overlay .activation-modal:before{content:"";display:block;width:40px;height:4px;background:var(--alpha-08);border-radius:2px;margin:8px auto 0;flex-shrink:0}.activation-modal-overlay .activation-modal .modal-header,.activation-modal-overlay .activation-modal .modal-content{padding:24px}.activation-modal-overlay .activation-modal .modal-footer{padding:12px 24px}}.activation-modal-overlay .activation-modal .modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:48px;border-bottom:1px solid var(--alpha-10)}.activation-modal-overlay .activation-modal .modal-header h2{font-size:18px;font-weight:700;color:var(--admin-text-main);margin:0;display:flex;align-items:center;gap:12px}.activation-modal-overlay .activation-modal .modal-header h2 .success-icon{color:var(--admin-success);font-size:24px}.activation-modal-overlay .activation-modal .modal-header .close-btn{background:transparent;border:none;color:var(--admin-text-muted);cursor:pointer;font-size:20px;padding:0;line-height:1;transition:color .2s ease}.activation-modal-overlay .activation-modal .modal-header .close-btn:hover{color:var(--admin-text-main)}.activation-modal-overlay .activation-modal .modal-content{padding:48px}.activation-modal-overlay .activation-modal .modal-content .success-message{color:var(--admin-text-main);font-size:16px;margin:0 0 24px;line-height:1.6}.activation-modal-overlay .activation-modal .modal-content .success-message strong{color:var(--admin-primary);font-weight:700}.activation-modal-overlay .activation-modal .modal-content .class-summary{background:rgba(var(--success-rgb),.05);border:1px solid rgba(var(--success-rgb),.2);border-radius:8px;padding:24px;margin-bottom:24px}.activation-modal-overlay .activation-modal .modal-content .class-summary .summary-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.activation-modal-overlay .activation-modal .modal-content .class-summary .summary-item:last-child{margin-bottom:0}.activation-modal-overlay .activation-modal .modal-content .class-summary .summary-item .label{color:var(--admin-text-secondary);font-size:14px;font-weight:500}.activation-modal-overlay .activation-modal .modal-content .class-summary .summary-item .value{color:var(--admin-text-main);font-weight:700;font-size:14px}.activation-modal-overlay .activation-modal .modal-content .class-summary .summary-item .status-badge{background:var(--admin-success);color:#fff;padding:4px 12px;border-radius:4px;font-weight:700;font-size:12px}.activation-modal-overlay .activation-modal .modal-content .info-text{color:var(--admin-text-secondary);font-size:14px;margin:0;line-height:1.6}.activation-modal-overlay .activation-modal .modal-footer{display:flex;gap:12px;padding:24px 48px;border-top:1px solid var(--alpha-10)}.activation-modal-overlay .activation-modal .modal-footer button{flex:1;padding:12px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s ease;font-size:14px}.activation-modal-overlay .activation-modal .modal-footer .cancel-btn{background:transparent;color:var(--admin-text-secondary);border:1px solid var(--alpha-10)}.activation-modal-overlay .activation-modal .modal-footer .cancel-btn:hover{background:var(--alpha-03);border-color:var(--alpha-08)}.activation-modal-overlay .activation-modal .modal-footer .confirm-btn{background:var(--admin-success);color:#fff;border:none;display:flex;align-items:center;justify-content:center;gap:8px}.activation-modal-overlay .activation-modal .modal-footer .confirm-btn:hover{background:#059669;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--success-rgb),.3)}.activation-modal-overlay .activation-modal .modal-footer .confirm-btn:active{transform:translateY(0)}.phase-summary .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:64px}@media(max-width:640px){.phase-summary .summary-cards{grid-template-columns:1fr;gap:12px;margin-bottom:48px}}.phase-summary .summary-cards .summary-card{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;padding:24px;display:flex;align-items:flex-start;gap:24px;transition:all .2s ease}.phase-summary .summary-cards .summary-card:hover{border-color:var(--alpha-08);box-shadow:var(--shadow-card-hover)}.phase-summary .summary-cards .summary-card .card-icon{font-size:28px;color:var(--admin-primary);flex-shrink:0}.phase-summary .summary-cards .summary-card .card-content{flex:1}.phase-summary .summary-cards .summary-card .card-content h4{color:var(--admin-text-main);font-size:14px;font-weight:700;margin:0 0 8px;text-transform:uppercase;letter-spacing:.05em}.phase-summary .summary-cards .summary-card .card-content .card-value{color:var(--admin-primary);font-size:28px;font-weight:700;margin:0 0 4px}.phase-summary .summary-cards .summary-card .card-content .card-desc{color:var(--admin-text-secondary);font-size:14px;margin:0}.phase-summary .summary-checklist{background:var(--admin-bg-card);border:1px solid var(--alpha-10);border-radius:12px;padding:24px;margin-bottom:64px}.phase-summary .summary-checklist h3{color:var(--admin-text-main);font-size:18px;font-weight:700;margin:0 0 24px}.phase-summary .summary-checklist .checklist-items{display:flex;flex-direction:column;gap:12px}.phase-summary .summary-checklist .checklist-items .checklist-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--alpha-03);border-radius:8px;color:var(--admin-text-secondary);font-size:14px;transition:all .2s ease}.phase-summary .summary-checklist .checklist-items .checklist-item .check-icon{font-size:18px;color:var(--admin-text-muted);flex-shrink:0}.phase-summary .summary-checklist .checklist-items .checklist-item.checked{background:rgba(var(--success-rgb),.08);border-left:3px solid var(--admin-success);color:var(--admin-text-main)}.phase-summary .summary-checklist .checklist-items .checklist-item.checked .check-icon{color:var(--admin-success)}.phase-summary .summary-checklist .checklist-items .checklist-item.optional{opacity:.7}.phase-summary .summary-checklist .checklist-items .checklist-item.optional .check-icon{color:var(--admin-text-muted)}.phase-summary .warning-box{background:rgba(var(--warning-rgb),.08);border:2px solid rgba(var(--warning-rgb),.2);border-left:4px solid var(--admin-warning);border-radius:12px;padding:24px;margin-bottom:48px}.phase-summary .warning-box h4{color:var(--admin-warning);font-size:16px;font-weight:700;margin:0 0 8px}.phase-summary .warning-box p{color:var(--admin-text-secondary);font-size:14px;margin:0}.phase-summary .activation-section{background:linear-gradient(135deg,var(--alpha-03) 0%,var(--alpha-05) 100%);border:2px solid var(--alpha-10);border-radius:12px;padding:48px;text-align:center}@media(max-width:640px){.phase-summary .activation-section{padding:24px}}.phase-summary .activation-section h3{color:var(--admin-text-main);font-size:18px;font-weight:700;margin:0 0 12px}.phase-summary .activation-section p{color:var(--admin-text-secondary);font-size:16px;margin:0 0 24px;line-height:1.6}.phase-summary .activation-section .activate-btn{display:inline-flex;align-items:center;gap:12px;background:var(--admin-primary);color:#fff;border:none;border-radius:8px;padding:12px 48px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease}.phase-summary .activation-section .activate-btn svg{font-size:18px}.phase-summary .activation-section .activate-btn:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 8px 16px var(--shadow-primary)}.phase-summary .activation-section .activate-btn:active{transform:translateY(0)}@media(max-width:768px){.phase-summary .activation-section .activate-btn{width:100%;justify-content:center}}.class-setup-container{min-height:100vh;background:var(--admin-bg-content);padding:24px}@media(max-width:768px){.class-setup-container{padding:12px}}@media(max-width:640px){.class-setup-container{padding:8px}}.class-setup-container .class-setup-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:48px;gap:24px;position:relative}@media(max-width:640px){.class-setup-container .class-setup-header{margin-bottom:24px;gap:8px}}.class-setup-container .class-setup-header .header-content{flex:1;min-width:0}.class-setup-container .class-setup-header .header-content h1{font-size:28px;font-weight:700;color:var(--admin-text-main);margin:0 0 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.class-setup-container .class-setup-header .header-content h1{font-size:24px}}@media(max-width:640px){.class-setup-container .class-setup-header .header-content h1{font-size:20px;margin-bottom:8px;white-space:normal}}.class-setup-container .class-setup-header .header-content .header-meta{display:flex;gap:24px;flex-wrap:wrap}@media(max-width:640px){.class-setup-container .class-setup-header .header-content .header-meta{gap:8px}}.class-setup-container .class-setup-header .header-content .header-meta .meta-item{color:var(--admin-text-secondary);font-size:14px}@media(max-width:640px){.class-setup-container .class-setup-header .header-content .header-meta .meta-item{font-size:12px}}.class-setup-container .class-setup-header .header-content .header-meta .meta-item strong{color:var(--admin-text-main);font-weight:700}.class-setup-container .class-setup-header .close-btn{background:transparent;border:none;color:var(--admin-text-muted);cursor:pointer;font-size:20px;padding:4px;line-height:1;transition:color .2s ease;flex-shrink:0;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:8px}.class-setup-container .class-setup-header .close-btn:hover{color:var(--admin-text-main);background:var(--alpha-05)}.class-setup-container .error-banner,.class-setup-container .success-banner{display:flex;align-items:center;gap:12px;padding:12px 24px;border-radius:12px;margin-bottom:24px;font-size:14px;font-weight:500}.class-setup-container .error-banner svg,.class-setup-container .success-banner svg{font-size:18px;flex-shrink:0}.class-setup-container .error-banner span,.class-setup-container .success-banner span{flex:1}.class-setup-container .error-banner{background:rgba(var(--error-rgb),.08);border:1px solid rgba(var(--error-rgb),.2);border-left:3px solid var(--admin-error);color:var(--admin-error)}.class-setup-container .success-banner{background:rgba(var(--success-rgb),.08);border:1px solid rgba(var(--success-rgb),.2);border-left:3px solid var(--admin-success);color:var(--admin-success);animation:slideIn .3s ease}.class-setup-container .class-setup-content{max-width:1200px;margin:0 auto}.class-setup-container .phase-container{background:var(--admin-bg-primary);border:1px solid var(--alpha-10);border-radius:12px;padding:48px;animation:fadeIn .3s ease}@media(max-width:768px){.class-setup-container .phase-container{padding:24px}}@media(max-width:640px){.class-setup-container .phase-container{padding:12px;border-radius:8px}}.class-setup-container .loading-state,.class-setup-container .error-state{text-align:center;padding:64px 24px;background:var(--admin-bg-primary);border:1px solid var(--alpha-10);border-radius:12px;margin:48px auto;max-width:500px}.class-setup-container .loading-state p,.class-setup-container .error-state p{color:var(--admin-text-secondary);font-size:16px;margin:24px 0 0}.class-setup-container .loading-state button,.class-setup-container .error-state button{margin-top:24px;padding:8px 24px;background:var(--admin-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700;transition:all .2s ease}.class-setup-container .loading-state button:hover,.class-setup-container .error-state button:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-primary)}.class-setup-container .loading-state .spinner{width:40px;height:40px;border:4px solid var(--alpha-10);border-top-color:var(--admin-primary);border-radius:9999px;animation:spin 1s linear infinite;margin:0 auto}.class-setup-container .error-state h2{color:var(--admin-error);margin:0 0 12px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.families-list-page{padding:48px;animation:pageEntrance .4s ease-out;min-height:calc(100vh - 70px)}[data-theme=light] .families-list-page{background-color:var(--admin-bg-content)}@media(max-width:768px){.families-list-page{padding:24px}}@media(max-width:640px){.families-list-page{padding:8px}}.family-children-count{display:inline-flex;align-items:center;gap:6px;background:var(--alpha-08);border:1px solid var(--alpha-08);border-radius:20px;padding:3px 10px;font-size:.8rem;color:var(--admin-text-secondary);font-weight:600}.family-children-count svg{color:var(--admin-primary);font-size:.75rem}:root{--admin-bg-primary: #120f23;--admin-bg-secondary: #1a162e;--admin-bg-tertiary: #0d0b1a;--admin-bg-hover: rgba(255, 255, 255, .04);--admin-bg-card: #1a162e;--admin-bg-content: #0d0b1a;--admin-text-main: #f1f0f5;--admin-text-secondary: #9daabf;--admin-text-muted: #64748b;--admin-primary: #ff9800;--admin-primary-dark: #e68600;--admin-primary-light: #ffb84d;--warning-rgb: 245, 158, 11;--success-rgb: 16, 185, 129;--error-rgb: 239, 68, 68;--info-rgb: 59, 130, 246;--indigo-rgb: 99, 102, 241;--primary-rgb: 255, 152, 0;--admin-success: #10b981;--admin-warning: #f59e0b;--admin-error: #ef4444;--admin-info: #3b82f6;--alpha-02: rgba(255, 255, 255, .02);--alpha-03: rgba(255, 255, 255, .03);--alpha-05: rgba(255, 255, 255, .05);--alpha-08: rgba(255, 255, 255, .08);--alpha-10: rgba(255, 255, 255, .1);--alpha-20: rgba(255, 255, 255, .2);--alpha-30: rgba(255, 255, 255, .3);--alpha-50: rgba(255, 255, 255, .5);--alpha-60: rgba(255, 255, 255, .6);--alpha-70: rgba(255, 255, 255, .7);--alpha-80: rgba(255, 255, 255, .8);--shadow-primary: rgba(255, 152, 0, .3);--shadow-base: rgba(0, 0, 0, .5);--shadow-card: 0 1px 3px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);--shadow-card-hover: 0 3px 6px rgba(0, 0, 0, .16), 0 3px 6px rgba(0, 0, 0, .23)}[data-theme=light]{--admin-bg-primary: #ffffff;--admin-bg-secondary: #ffffff;--admin-bg-tertiary: #f4f7fe;--admin-bg-hover: rgba(0, 0, 0, .04);--admin-bg-card: #ffffff;--admin-bg-content: #f4f7fe;--admin-text-main: #1a1a1a;--admin-text-secondary: #4f4f4f;--admin-text-muted: #828282;--admin-primary: #ff9800;--admin-primary-dark: #f57c00;--admin-primary-light: #ffb74d;--warning-rgb: 245, 158, 11;--success-rgb: 16, 185, 129;--error-rgb: 239, 68, 68;--info-rgb: 59, 130, 246;--indigo-rgb: 99, 102, 241;--primary-rgb: 255, 152, 0;--alpha-02: rgba(0, 0, 0, .02);--alpha-03: rgba(0, 0, 0, .03);--alpha-05: rgba(0, 0, 0, .05);--alpha-08: rgba(0, 0, 0, .08);--alpha-10: rgba(0, 0, 0, .1);--alpha-20: rgba(0, 0, 0, .2);--alpha-30: rgba(0, 0, 0, .3);--alpha-50: rgba(0, 0, 0, .5);--alpha-60: rgba(0, 0, 0, .6);--alpha-70: rgba(0, 0, 0, .7);--alpha-80: rgba(0, 0, 0, .8);--shadow-primary: rgba(255, 152, 0, .15);--shadow-base: rgba(0, 0, 0, .1);--shadow-card: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .06);--shadow-card-hover: 0 4px 12px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .06)}.family-detail-page{padding:48px;animation:pageEntrance .4s ease-out;min-height:calc(100vh - 70px)}[data-theme=light] .family-detail-page{background-color:var(--admin-bg-content)}@media(max-width:768px){.family-detail-page{padding:24px}}@media(max-width:640px){.family-detail-page{padding:8px}}.family-parent-card{background:var(--admin-bg-card);border:1px solid var(--alpha-08);border-radius:16px;padding:24px 32px;display:flex;align-items:center;gap:12px;margin-bottom:32px}.family-parent-card__avatar{width:48px;height:48px;border-radius:50%;background:rgba(var(--primary-rgb),.15);display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:var(--admin-primary);flex-shrink:0;overflow:hidden}.family-parent-card__info{flex:1;min-width:0}.family-parent-card__info h2{font-size:1rem;font-weight:700;color:var(--admin-text-main);margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.family-parent-card__info p{font-size:.82rem;color:var(--admin-text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.family-students-section__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.family-students-section__header h3{font-size:1rem;font-weight:700;color:var(--admin-text-main);margin:0}.family-students-table{width:100%;border-collapse:collapse;background:var(--admin-bg-card);border:1px solid var(--alpha-08);border-radius:12px;overflow:hidden}.family-students-table th{background:var(--alpha-05);color:var(--admin-text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;padding:8px 12px;text-align:left;font-weight:600}.family-students-table td{padding:12px;color:var(--admin-text-main);font-size:.9rem;border-top:1px solid var(--alpha-05);vertical-align:middle}.family-students-table tr:first-child td{border-top:none}.family-students-table__empty{text-align:center;color:var(--admin-text-secondary);padding:48px!important;font-size:.9rem}.family-students-table__unlink-btn{background:none;border:1px solid rgba(var(--error-rgb),.2);color:var(--admin-error);border-radius:6px;padding:4px 10px;font-size:.78rem;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .15s;white-space:nowrap}.family-students-table__unlink-btn:hover:not(:disabled){background:rgba(var(--error-rgb),.1)}.family-students-table__unlink-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.family-students-table{display:none}}.family-student-cards{display:none;flex-direction:column;gap:8px}@media(max-width:768px){.family-student-cards{display:flex}}.family-student-card{background:var(--admin-bg-card);border:1px solid var(--alpha-08);border-radius:12px;padding:12px}.family-student-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.family-student-card__name{font-size:.95rem;font-weight:700;color:var(--admin-text-main)}.family-student-card__fields{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}.family-student-card__field{display:flex;flex-direction:column;gap:2px}.family-student-card__label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--admin-text-secondary);font-weight:600}.family-student-card__value{font-size:.85rem;color:var(--admin-text-main)}.family-student-card__unlink-btn{background:none;border:1px solid rgba(var(--error-rgb),.2);color:var(--admin-error);border-radius:6px;padding:4px 10px;font-size:.78rem;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:background .15s}.family-student-card__unlink-btn:hover:not(:disabled){background:rgba(var(--error-rgb),.1)}.family-student-card__unlink-btn:disabled{opacity:.4;cursor:not-allowed}.link-student-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:12px;animation:fadeIn .15s ease-out}@media(max-width:640px){.link-student-modal-overlay{align-items:flex-end;padding:0}}.link-student-modal{background:var(--admin-bg-card);border:1px solid var(--alpha-08);border-radius:16px;width:100%;max-width:480px;padding:32px;display:flex;flex-direction:column;gap:24px;animation:slideUp .2s ease-out;max-height:90dvh;overflow:hidden}@media(max-width:640px){.link-student-modal{padding:12px;border-radius:20px 20px 0 0;position:fixed;bottom:0;left:0;right:0;max-width:100%;max-height:85dvh;gap:12px}}.link-student-modal__header h2{font-size:1.2rem;font-weight:700;color:var(--admin-text-main);margin:0 0 4px}.link-student-modal__header p{font-size:.85rem;color:var(--admin-text-secondary);margin:0}@media(max-width:640px){.link-student-modal__header:before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:var(--alpha-20);margin:0 auto 12px}}.link-student-modal__search{width:100%;box-sizing:border-box;background:var(--alpha-05);border:1px solid var(--alpha-08);border-radius:8px;padding:8px 12px;color:var(--admin-text-main);font-size:.9rem;outline:none;transition:border-color .15s}.link-student-modal__search:focus{border-color:var(--admin-primary)}.link-student-modal__search::placeholder{color:var(--admin-text-secondary)}@media(max-width:640px){.link-student-modal__search{font-size:1rem}}.link-student-modal__list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1;min-height:0;max-height:280px}@media(max-width:640px){.link-student-modal__list{max-height:none}}.link-student-modal__student-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:8px;border:1px solid var(--alpha-08);background:var(--alpha-03);transition:background .15s}.link-student-modal__student-row:hover{background:var(--alpha-08)}.link-student-modal__student-row--already-linked{opacity:.5}.link-student-modal__student-info{display:flex;flex-direction:column;min-width:0}.link-student-modal__student-info strong{font-size:.9rem;color:var(--admin-text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-student-modal__student-info span{font-size:.78rem;color:var(--admin-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-student-modal__link-btn{background:var(--admin-primary);color:#fff;border:none;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:600;cursor:pointer;transition:opacity .15s;flex-shrink:0}.link-student-modal__link-btn:hover:not(:disabled){opacity:.85}.link-student-modal__link-btn:disabled{opacity:.4;cursor:not-allowed}.link-student-modal__already-linked{font-size:.75rem;color:var(--admin-text-secondary);flex-shrink:0}.link-student-modal__footer{display:flex;justify-content:flex-end;border-top:1px solid var(--alpha-05);padding-top:8px;flex-shrink:0}.link-student-modal__cancel-btn{background:var(--alpha-08);color:var(--admin-text-secondary);border:none;border-radius:8px;padding:8px 24px;font-size:.9rem;font-weight:600;cursor:pointer}@media(max-width:640px){.link-student-modal__cancel-btn{width:100%;text-align:center}}.link-student-modal__cancel-btn:hover{background:var(--alpha-10)}@keyframes pageEntrance{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
