*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background:#000714;color:#ececec}#root{min-height:100vh}.login-container{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:#000714;padding:20px;position:fixed;top:0;left:0;overflow:hidden}.login-container:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(38,197,192,.08) 0%,transparent 60%),radial-gradient(circle at 80% 20%,rgba(59,233,227,.06) 0%,transparent 60%),radial-gradient(circle at 50% 50%,rgba(38,197,192,.03) 0%,transparent 80%);pointer-events:none}.login-container:after{content:"";position:absolute;bottom:40px;right:40px;width:120px;height:120px;background-image:url(/monograma_azul.png);background-size:contain;background-repeat:no-repeat;background-position:center;opacity:.15;filter:brightness(0) saturate(100%) invert(93%) sepia(6%) saturate(346%) hue-rotate(183deg) brightness(106%) contrast(93%);pointer-events:none;z-index:0;animation:subtle-float 6s ease-in-out infinite}.login-card{background:#000714d9;border-radius:20px;box-shadow:0 25px 50px #0006,0 0 0 1px #26c5c033,inset 0 1px #26c5c01a;padding:32px 40px;width:100%;max-width:460px;max-height:calc(100vh - 40px);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative;z-index:1;border:1px solid rgba(236,236,236,.1);overflow:hidden;display:flex;flex-direction:column;justify-content:center}.login-header{text-align:center;margin-bottom:24px}.login-header h1{color:#ececec;font-size:28px;font-weight:800;margin:0 0 12px;line-height:1.2;background:linear-gradient(135deg,#ececec,#26c5c0,#3be9e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 30px rgba(38,197,192,.3)}.login-header p{color:#ececec;opacity:.9;font-size:15px;font-weight:500;line-height:1.4;max-width:350px;margin:0 auto}.login-form{margin-bottom:20px}.input-group{margin-bottom:16px}.form-options{display:flex;justify-content:flex-end;align-items:center;margin-bottom:20px;font-size:14px}.forgot-password{color:#26c5c0;text-decoration:none;font-weight:600;transition:all .3s ease;position:relative}.forgot-password:hover{color:#3be9e3;transform:translateY(-1px)}.forgot-password:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,#26c5c0,#3be9e3);transition:width .3s ease}.forgot-password:hover:after{width:100%}.login-button{width:100%;padding:16px;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 8px 32px #26c5c04d;display:flex;align-items:center;justify-content:center}.login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.login-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 40px #26c5c066;background:linear-gradient(135deg,#3be9e3,#26c5c0)}.login-button:hover:not(:disabled):before{left:100%}.login-button:active:not(:disabled){transform:translateY(-1px)}.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.login-button:disabled:hover{transform:none;box-shadow:0 8px 32px #26c5c04d}.login-button.loading{background:linear-gradient(135deg,#26c5c0,#3be9e3)}@keyframes loading-pulse{0%{box-shadow:0 8px 32px #26c5c04d}50%{box-shadow:0 8px 32px #26c5c099;transform:translateY(-1px)}to{box-shadow:0 8px 32px #26c5c04d}}.login-footer{text-align:center;padding-top:16px;border-top:1px solid rgba(236,236,236,.2)}.login-footer p{color:#ececec;opacity:.8;margin:0;font-size:14px;font-weight:500}.signup-link{color:#26c5c0;text-decoration:none;font-weight:700;transition:all .3s ease;position:relative}.signup-link:hover{color:#3be9e3;transform:translateY(-1px)}.signup-link{text-decoration:underline}.signup-link:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#26c5c0,#3be9e3);transition:all .3s ease;opacity:0}.signup-link:hover:after{opacity:1}@media (max-width: 480px){.login-container{padding:8px}.login-card{padding:24px 20px;margin:0;border-radius:16px;max-width:100%;max-height:calc(100vh - 16px)}.logo{margin-bottom:16px}.logo-image{max-width:120px}.login-header{margin-bottom:20px}.login-header h1{font-size:24px;margin-bottom:8px}.login-header p{font-size:14px;line-height:1.3}.input-group{margin-bottom:14px}.form-input{padding:14px 14px 14px 52px!important;font-size:15px;border-radius:12px}.input-icon{left:14px}.password-toggle{right:14px}.form-options{font-size:13px;margin-bottom:16px}.login-button{padding:14px;font-size:15px;border-radius:12px}.login-form{margin-bottom:16px}.message{padding:10px 12px;font-size:13px;margin-bottom:16px}.login-footer{padding-top:12px}.login-footer p{font-size:13px}.privacy-text{font-size:10px!important;margin-top:8px!important}.login-container:after{bottom:20px;right:20px;width:80px;height:80px;opacity:.1}}@media (max-height: 600px){.login-card{padding:20px 32px;max-height:calc(100vh - 20px)}.logo{margin-bottom:12px}.logo-image{max-width:120px}.login-header{margin-bottom:16px}.login-header h1{font-size:24px;margin-bottom:8px}.login-header p{font-size:14px}.input-group{margin-bottom:12px}.form-input{padding:12px 12px 12px 50px!important;font-size:15px}.input-icon{left:12px}.password-toggle{right:12px}.form-options{margin-bottom:16px}.login-button{padding:12px;font-size:15px}.login-form{margin-bottom:12px}.message{padding:8px 10px;font-size:12px;margin-bottom:12px}.loading-spinner{width:14px;height:14px}.login-footer{padding-top:12px}.privacy-text{font-size:10px!important;margin-top:6px!important}.login-container:after{bottom:15px;right:15px;width:60px;height:60px;opacity:.08}}.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000714e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.popup-content{background:#000714f2;border-radius:20px;box-shadow:0 25px 50px #00000080,0 0 0 1px #26c5c04d,inset 0 1px #26c5c01a;padding:40px;width:90%;max-width:400px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(236,236,236,.1);text-align:center;animation:popupSlideIn .4s cubic-bezier(.4,0,.2,1)}.popup-header{margin-bottom:30px}.popup-icon{margin-bottom:20px;filter:drop-shadow(0 4px 20px rgba(38,197,192,.4))}.popup-icon.success{color:#26c5c0}.popup-content h2{color:#ececec;font-size:24px;font-weight:700;margin:0 0 12px;background:linear-gradient(135deg,#ececec,#26c5c0,#3be9e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.popup-content p{color:#ececec;opacity:.9;font-size:16px;margin:0;font-weight:500;line-height:1.4}.popup-button{width:100%;padding:16px;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.5px;box-shadow:0 8px 32px #26c5c04d}.popup-button:hover{transform:translateY(-3px);box-shadow:0 12px 40px #26c5c066;background:linear-gradient(135deg,#3be9e3,#26c5c0)}.popup-button:active{transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 480px){.popup-content{padding:30px 24px;border-radius:16px}.popup-content h2{font-size:20px}.popup-content p{font-size:14px}.popup-button{padding:14px;font-size:15px;border-radius:12px}}.country-selector{position:relative;display:inline-block;width:100%}.country-selector-button{display:flex;align-items:center;gap:8px;width:100%;padding:16px;border:2px solid rgba(236,236,236,.2);border-radius:14px;background:#ececec0d;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:16px;font-weight:500;color:#ececec;min-height:48px;box-sizing:border-box}.country-selector-button:hover:not(.disabled){border-color:#26c5c0;background:#000714cc;transform:translateY(-1px)}.country-selector-button:focus{outline:none;border-color:#26c5c0;background:#000714cc;box-shadow:0 0 0 4px #26c5c026;transform:translateY(-1px)}.country-selector-button.open{border-color:#26c5c0;background:#000714cc;box-shadow:0 0 0 4px #26c5c026;transform:translateY(-1px)}.country-selector-button.disabled{background:#ececec08;color:#ececec99;cursor:not-allowed;border-color:#ececec33;opacity:.6}.country-flag{font-size:18px;line-height:1;flex-shrink:0}.country-dial-code{font-weight:600;color:#26c5c0;flex-shrink:0}.chevron-icon{margin-left:auto;transition:transform .2s ease;color:#26c5c0;flex-shrink:0;opacity:.8}.country-selector-button.open .chevron-icon{transform:rotate(180deg)}.country-dropdown{position:absolute;top:100%;left:0;right:0;background:#000714f2;border:2px solid rgba(38,197,192,.3);border-radius:14px;box-shadow:0 25px 50px #0006,0 0 0 1px #26c5c033;z-index:1000;margin-top:4px;max-height:300px;overflow:hidden;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.country-search{position:relative;padding:12px 16px;border-bottom:1px solid rgba(38,197,192,.2);background:#26c5c00d}.search-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:#26c5c0;z-index:1;opacity:.8}.country-search-input{width:100%;padding:8px 8px 8px 32px;border:1px solid rgba(38,197,192,.3);border-radius:8px;font-size:14px;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1);background:#ececec0d;color:#ececec;font-weight:500}.country-search-input:focus{border-color:#26c5c0;box-shadow:0 0 0 2px #26c5c026;background:#000714cc}.country-search-input::placeholder{color:#ececec99;font-weight:400}.country-list{max-height:200px;overflow-y:auto;padding:4px 0}.country-option{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;text-align:left;color:#ececec;font-weight:500}.country-option:hover{background-color:#26c5c01a;color:#26c5c0}.country-option.selected{background-color:#26c5c033;color:#26c5c0;font-weight:600}.country-option .country-flag{font-size:16px;flex-shrink:0}.country-option .country-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.country-option .country-dial-code{font-weight:600;color:#26c5c0;flex-shrink:0}.country-list::-webkit-scrollbar{width:6px}.country-list::-webkit-scrollbar-track{background:#f1f1f1}.country-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.country-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 480px){.country-selector-button{padding:14px;font-size:15px;min-height:44px;border-radius:12px}.country-dropdown{max-height:250px;border-radius:12px}.country-list{max-height:180px}.country-option{padding:10px 12px;font-size:13px}.country-search{padding:10px 12px}.country-search-input{font-size:13px;padding:6px 6px 6px 28px}.search-icon{left:16px}}.cadastro-container{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:#000714;padding:20px;position:fixed;top:0;left:0;overflow:hidden}.cadastro-container:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(38,197,192,.08) 0%,transparent 60%),radial-gradient(circle at 80% 20%,rgba(59,233,227,.06) 0%,transparent 60%),radial-gradient(circle at 50% 50%,rgba(38,197,192,.03) 0%,transparent 80%);pointer-events:none}.cadastro-container:after{content:"";position:absolute;bottom:40px;right:40px;width:120px;height:120px;background-image:url(/monograma_azul.png);background-size:contain;background-repeat:no-repeat;background-position:center;opacity:.15;filter:brightness(0) saturate(100%) invert(93%) sepia(6%) saturate(346%) hue-rotate(183deg) brightness(106%) contrast(93%);pointer-events:none;z-index:0;animation:subtle-float 6s ease-in-out infinite}@keyframes subtle-float{0%,to{transform:translateY(0);opacity:.15}50%{transform:translateY(-3px);opacity:.2}}.cadastro-card{background:#000714d9;border-radius:20px;box-shadow:0 25px 50px #0006,0 0 0 1px #26c5c033,inset 0 1px #26c5c01a;padding:32px 40px;width:100%;max-width:500px;height:calc(100vh - 40px);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative;z-index:1;border:1px solid rgba(236,236,236,.1);display:flex;flex-direction:column;justify-content:space-between}.cadastro-header{text-align:center;margin-bottom:16px;flex-shrink:0}.logo{display:inline-flex;align-items:center;justify-content:center;margin-bottom:20px;position:relative}.logo-image{max-width:160px;height:auto;filter:drop-shadow(0 4px 20px rgba(38,197,192,.3));transition:all .3s ease}.logo-image:hover{filter:drop-shadow(0 6px 25px rgba(38,197,192,.4));transform:translateY(-2px)}.cadastro-header h1{color:#ececec;font-size:28px;font-weight:800;margin:0 0 12px;line-height:1.2;background:linear-gradient(135deg,#ececec,#26c5c0,#3be9e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 30px rgba(38,197,192,.3)}.cadastro-header p{color:#ececec;opacity:.9;font-size:15px;font-weight:500;line-height:1.4;max-width:400px;margin:0 auto}.cadastro-form{flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0}.message{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:12px;margin-bottom:20px;font-size:14px;font-weight:500;animation:slideIn .3s ease-out}.message.success{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0}.message.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.message-icon{flex-shrink:0}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.input-group{margin-bottom:12px}.input-wrapper{position:relative;display:flex;align-items:center}.phone-input-container{display:flex;gap:8px;align-items:stretch}.country-selector-wrapper{flex:0 0 auto;min-width:120px;max-width:140px}.phone-number-wrapper{position:relative;display:flex;align-items:center;flex:1}.phone-number-input{padding-left:56px!important}.input-icon{position:absolute;left:16px;color:#26c5c0;z-index:1;opacity:.8}.form-input{width:100%;padding:16px 16px 16px 56px!important;border:2px solid rgba(236,236,236,.2)!important;border-radius:14px;font-size:16px;transition:all .3s cubic-bezier(.4,0,.2,1);background:#ececec0d!important;box-sizing:border-box;color:#ececec;font-weight:500}.form-input:focus{outline:none;border-color:#26c5c0!important;background:#000714cc;box-shadow:0 0 0 4px #26c5c026;transform:translateY(-1px)}.form-input:disabled{opacity:.6;cursor:not-allowed;background:#ececec08}.input-wrapper:focus-within .input-icon{color:#26c5c0;opacity:1}.form-input::placeholder{color:#ececec99;font-weight:400}.password-toggle{position:absolute;right:16px;background:none;border:none;cursor:pointer;color:#26c5c0;padding:0;display:flex;align-items:center;justify-content:center;transition:all .3s ease;opacity:.7}.password-toggle:hover{color:#3be9e3;opacity:1;transform:scale(1.1)}.password-toggle:disabled{opacity:.4;cursor:not-allowed}.password-toggle:disabled:hover{transform:none}.cadastro-button{width:100%;padding:16px;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 8px 32px #26c5c04d;display:flex;align-items:center;justify-content:center;margin-top:4px}.button-content{display:flex;align-items:center;gap:8px}.cadastro-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.cadastro-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 40px #26c5c066;background:linear-gradient(135deg,#3be9e3,#26c5c0)}.cadastro-button:hover:not(:disabled):before{left:100%}.cadastro-button:active:not(:disabled){transform:translateY(-1px)}.cadastro-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.cadastro-button:disabled:hover{transform:none;box-shadow:0 8px 32px #26c5c04d}.cadastro-button.loading{background:linear-gradient(135deg,#26c5c0,#3be9e3)}.loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.cadastro-footer{text-align:center;padding-top:16px;border-top:1px solid rgba(236,236,236,.2);flex-shrink:0;margin-top:auto}.cadastro-footer p{color:#ececec;opacity:.8;margin:0;font-size:14px;font-weight:500}.login-link{color:#26c5c0;text-decoration:none;font-weight:700;transition:all .3s ease;position:relative}.login-link:hover{color:#3be9e3;transform:translateY(-1px)}.login-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,#26c5c0,#3be9e3);transition:width .3s ease}.login-link:hover:after{width:100%}.privacy-text{color:#ececec!important;opacity:.6!important;font-size:11px!important;margin-top:12px!important;font-weight:400!important;font-style:italic}@media (max-width: 480px){.cadastro-container{padding:8px}.cadastro-card{padding:24px 20px;margin:0;border-radius:16px;max-width:100%;height:calc(100vh - 16px)}.logo{margin-bottom:16px}.logo-image{max-width:120px}.cadastro-header{margin-bottom:20px}.cadastro-header h1{font-size:24px;margin-bottom:8px}.cadastro-header p{font-size:14px;line-height:1.3}.input-group{margin-bottom:10px}.form-input{padding:14px 14px 14px 52px!important;font-size:15px;border-radius:12px}.input-icon{left:14px}.password-toggle{right:14px}.cadastro-button{padding:14px;font-size:15px;border-radius:12px}.cadastro-form{margin-bottom:16px}.message{padding:10px 12px;font-size:13px;margin-bottom:16px}.cadastro-footer{padding-top:12px}.cadastro-footer p{font-size:13px}.privacy-text{font-size:10px!important;margin-top:8px!important}.cadastro-container:after{bottom:20px;right:20px;width:80px;height:80px;opacity:.1}.phone-input-container{flex-direction:column;gap:6px}.country-selector-wrapper{min-width:100%;max-width:100%}.phone-number-input{padding-left:52px!important}}@media (max-height: 700px){.cadastro-card{padding:20px 32px;height:calc(100vh - 20px)}.logo{margin-bottom:12px}.logo-image{max-width:120px}.cadastro-header{margin-bottom:16px}.cadastro-header h1{font-size:24px;margin-bottom:8px}.cadastro-header p{font-size:14px}.input-group{margin-bottom:8px}.form-input{padding:12px 12px 12px 50px!important;font-size:15px}.input-icon{left:12px}.password-toggle{right:12px}.cadastro-button{padding:12px;font-size:15px}.cadastro-form{margin-bottom:12px}.message{padding:8px 10px;font-size:12px;margin-bottom:12px}.loading-spinner{width:14px;height:14px}.cadastro-footer{padding-top:12px}.privacy-text{font-size:10px!important;margin-top:6px!important}.cadastro-container:after{bottom:15px;right:15px;width:60px;height:60px;opacity:.08}.phone-input-container{flex-direction:column;gap:4px}.country-selector-wrapper{min-width:100%;max-width:100%}}.header{background:#000714e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(38,197,192,.2);position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.header-logo{height:40px;filter:drop-shadow(0 2px 8px rgba(38,197,192,.3))}.header-right{display:flex;align-items:center;gap:24px}.credits-button{display:flex;align-items:center;gap:8px;background:#26c5c01a;border:1px solid rgba(38,197,192,.3);border-radius:12px;padding:8px 16px;color:#26c5c0;font-weight:500;font-size:14px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.credits-button:hover{background:#26c5c033;border-color:#26c5c080;transform:translateY(-1px);box-shadow:0 4px 12px #26c5c033}.credits-button:active{transform:translateY(0)}.credits-icon{color:#26c5c0}.credits-text{color:#ececec;opacity:.8}.credits-value{color:#26c5c0;font-weight:700;font-size:16px}.credits-separator{width:1px;height:20px;background:#26c5c04d;margin:0 4px}.plus-icon{color:#26c5c0;opacity:.7;transition:all .3s ease}.credits-button:hover .plus-icon{opacity:1;transform:scale(1.1)}.admin-button{display:flex;align-items:center;gap:8px;background:#a855f71a;border:1px solid rgba(168,85,247,.3);border-radius:12px;padding:8px 16px;color:#a855f7;font-weight:500;font-size:14px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.admin-button:hover{background:#a855f733;border-color:#a855f780;transform:translateY(-1px);box-shadow:0 4px 12px #a855f733}.admin-button:active{transform:translateY(0)}.admin-icon{color:#a855f7}.admin-text{color:#ececec;font-weight:500}.user-section{display:flex;align-items:center;gap:16px}.user-info{display:flex;align-items:center;gap:12px;color:#ececec;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:12px;transition:all .3s ease}.user-info:hover{background:#26c5c01a;transform:translateY(-1px)}.user-avatar{position:relative;width:40px;height:40px}.avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid rgba(38,197,192,.3);transition:all .3s ease}.avatar-image:hover{border-color:#26c5c099;transform:scale(1.05)}.avatar-fallback{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#26c5c0,#3be9e3);display:flex;align-items:center;justify-content:center;border:2px solid rgba(38,197,192,.3);transition:all .3s ease}.avatar-fallback:hover{border-color:#26c5c099;transform:scale(1.05)}.user-icon{color:#fff}.user-initial{color:#fff;font-size:18px;font-weight:700;text-transform:uppercase;-webkit-user-select:none;user-select:none}.user-name{font-size:15px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-button{display:flex;align-items:center;gap:8px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:8px 16px;border-radius:12px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.logout-button:hover{background:#ef444433;transform:translateY(-1px);box-shadow:0 4px 12px #ef444433}.logout-text{font-size:14px}@media (max-width: 768px){.header-content{padding:12px 16px;gap:16px}.header-logo{height:32px}.header-right{gap:16px}.credits-button{padding:6px 12px;font-size:13px}.credits-value{font-size:14px}.plus-icon{width:14px;height:14px}.user-avatar{width:36px;height:36px}.user-initial{font-size:16px}.user-name{display:none}.user-info{padding:6px 8px}.logout-text{display:none}.logout-button{padding:8px;min-width:40px;justify-content:center}}@media (max-width: 480px){.header-content{padding:10px 12px}.header-right{gap:12px}.credits-button{padding:6px 10px;font-size:12px;gap:6px}.credits-text{display:none}.credits-value{font-size:13px}.credits-icon{width:16px;height:16px}.plus-icon{width:12px;height:12px}.admin-button{padding:6px 10px;font-size:12px;gap:6px}.admin-text{display:none}.admin-icon{width:16px;height:16px}.user-avatar{width:32px;height:32px}.user-initial{font-size:14px}.user-info{gap:8px}}.home-container{min-height:100vh;background:#000714;color:#ececec;position:relative;overflow-x:hidden;-webkit-overflow-scrolling:touch}button,.class-item,.modal-class-item{touch-action:manipulation}.home-content{max-width:1000px;margin:0 auto;padding:1rem;width:100%;box-sizing:border-box}.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.5rem;width:100%}@media (max-width: 900px){.home-grid{grid-template-columns:1fr!important;display:flex!important;flex-direction:column!important;gap:2rem!important}.schedule-section,.history-section{width:100%!important;grid-column:unset!important}}@media (max-width: 1024px){.home-grid{grid-template-columns:1fr!important;gap:1.5rem}}@media (max-width: 768px){.home-grid{grid-template-columns:1fr!important;gap:2rem;display:grid!important}}@media (max-width: 480px){.home-grid{grid-template-columns:1fr!important;gap:1.5rem;display:grid!important}}.schedule-section{grid-column:1}@media (max-width: 1024px){.schedule-section{grid-column:unset}}.schedule-card{background:#26c5c01a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.2);border-radius:15px;padding:1.25rem;height:100%;min-height:280px;box-sizing:border-box}@media (max-width: 768px){.schedule-card{border-radius:20px;box-shadow:0 8px 32px #26c5c026}}.schedule-content{display:flex;height:100%;align-items:center;flex-wrap:wrap;gap:1rem}@media (max-width: 768px){.schedule-content{flex-direction:column;text-align:center;justify-content:center;align-items:center;gap:1.5rem}}.schedule-text{flex:1;padding-right:1rem}@media (max-width: 768px){.schedule-text{padding-right:0;margin-bottom:0;display:flex;flex-direction:column;align-items:center;text-align:center}.schedule-text h2{margin-bottom:1rem}.schedule-text p{margin-bottom:1.5rem}}.schedule-text h2{font-size:1.4rem;font-weight:700;color:#3be9e3;margin-bottom:.5rem;line-height:1.2}.schedule-text p{font-size:.9rem;color:#ececec;opacity:.9;margin-bottom:1rem;line-height:1.4}.schedule-button{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:all .3s ease;box-shadow:0 3px 10px #26c5c04d;min-height:44px}@media (max-width: 768px){.schedule-button{padding:.8rem 1.5rem;font-size:1rem;width:100%;max-width:280px;margin:0 auto;align-self:center}}.schedule-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #26c5c066}.schedule-image{flex:1;display:flex;align-items:center;justify-content:center}@media (max-width: 768px){.schedule-image{flex:none;width:100%;justify-content:center}}.schedule-image img{width:100%;max-width:200px;height:auto;border-radius:10px;object-fit:cover;box-shadow:0 4px 20px #0000004d}@media (max-width: 768px){.schedule-image img{max-width:150px}}@media (max-width: 480px){.schedule-image img{max-width:120px}}.history-section{grid-column:2}@media (max-width: 1024px){.history-section{grid-column:unset}}.history-list{display:flex!important;flex-direction:column;gap:.5rem!important;min-height:50px;visibility:visible!important;opacity:1!important}.home-container .history-list .class-item,.home-container .history-section .class-item{padding:.8rem!important;min-height:auto!important}.home-container .class-main{margin-bottom:.1rem!important}.home-container .class-meta{gap:.5rem!important}.home-container .history-card .class-item{padding:.8rem!important;min-height:auto!important}.home-container .history-card .class-main{margin-bottom:.1rem!important}.home-container .history-card .class-meta{gap:.5rem!important}@media (max-width: 768px){.history-list{gap:1rem!important}}.class-item{display:flex!important;align-items:center;justify-content:space-between;min-height:60px;visibility:visible!important;opacity:1!important}.history-card{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.25rem;height:100%;min-height:280px;display:flex!important;flex-direction:column;visibility:visible!important;opacity:1!important;box-sizing:border-box}@media (max-width: 768px){.history-card{border-radius:20px;box-shadow:0 8px 32px #26c5c01a}}.history-header{margin-bottom:1rem}@media (max-width: 768px){.history-header{margin-bottom:1.5rem;text-align:center}}.history-header h2{font-size:1.3rem;font-weight:700;color:#3be9e3;margin-bottom:.3rem;line-height:1.2}.history-header p{font-size:.85rem;color:#ececec;opacity:.8}.class-item{background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:8px;padding:.8rem!important;transition:all .3s ease}.class-item:hover{background:#26c5c01a;border-color:#26c5c04d;transform:translateY(-2px)}.class-info{display:flex;align-items:center;gap:.7rem;flex:1}.class-icon{width:36px;height:36px;background:linear-gradient(135deg,#26c5c0,#3be9e3);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#000714;flex-shrink:0}.class-details{flex:1}.class-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:.1rem!important}.class-main h4{font-size:.95rem;font-weight:600;color:#ececec;margin:0}.class-status{padding:.2rem .6rem;border-radius:15px;font-size:.7rem;font-weight:500;text-transform:uppercase}.class-meta{display:flex;align-items:center;gap:.5rem!important;flex-wrap:wrap}.class-meta span{display:flex;align-items:center;gap:.2rem;font-size:.8rem;color:#ececec;opacity:.7}.class-meta svg{width:12px;height:12px}.details-button{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.4rem .8rem;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.2rem;transition:all .3s ease;flex-shrink:0;min-height:36px}@media (max-width: 768px){.details-button{padding:.6rem 1rem;font-size:.9rem;min-height:44px}}.details-button:hover{background:#26c5c033;border-color:#26c5c0;transform:translate(2px)}.empty-history{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;color:#ececec;opacity:.6}.empty-history svg{margin-bottom:.7rem;opacity:.5}.empty-history p{font-size:.9rem;margin:0}.history-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(38,197,192,.1);display:flex;justify-content:center}@media (max-width: 768px){.history-actions{margin-top:1.5rem;padding-top:1.5rem}}.view-full-history-btn{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px}@media (max-width: 768px){.view-full-history-btn{padding:.8rem 1.5rem;font-size:1rem;width:100%;max-width:280px}}.view-full-history-btn:hover{background:#26c5c033;border-color:#26c5c0;transform:translateY(-2px);box-shadow:0 4px 15px #26c5c033}.history-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.history-modal{background:#000714;border:1px solid rgba(38,197,192,.3);border-radius:15px;width:100%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px #00000080}.history-modal-header{padding:1.5rem;border-bottom:1px solid rgba(38,197,192,.2);display:flex;align-items:center;justify-content:space-between;background:#26c5c00d;position:relative}.history-modal-header h2{color:#3be9e3;font-size:1.4rem;font-weight:700;margin:0}.close-modal-btn{background:none;border:none;color:#ececec;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;position:absolute;top:1.5rem;right:1.5rem;z-index:10}.history-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.modal-stats{background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:8px;padding:1rem;margin-bottom:1.5rem;text-align:center}.modal-stats p{color:#3be9e3;font-size:1rem;font-weight:600;margin:0}.modal-history-list{display:flex;flex-direction:column;gap:.8rem}.modal-class-item{background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:8px;padding:1rem;display:flex;align-items:center;justify-content:space-between;transition:all .3s ease}.modal-class-item:hover{background:#26c5c01a;border-color:#26c5c04d;transform:translateY(-1px)}.modal-details-btn{font-size:.75rem;padding:.3rem .6rem}.class-status.pending{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.class-details-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1001;padding:1rem}.class-details-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.class-details-item{background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:10px;padding:1rem}.class-details-label{display:flex;align-items:center;gap:.5rem;color:#3be9e3;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.class-details-value{color:#ececec;font-size:1rem;font-weight:500}.class-details-value.observation{background:#0007144d;padding:.8rem;border-radius:8px;border-left:3px solid #3BE9E3;font-style:italic}.verification-badge{padding:.3rem .6rem;border-radius:15px;font-size:.8rem;font-weight:600}.class-details-actions{margin-top:0;padding:1.5rem;border-top:1px solid rgba(38,197,192,.2);background:#26c5c00d;display:flex;justify-content:center;gap:1rem;flex-shrink:0}.cancel-class-btn{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3);padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px}.cancel-class-btn:hover{background:#ef444433;border-color:#ef444480;transform:translateY(-2px);box-shadow:0 8px 25px #ef44444d}.class-details-close-btn{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.8rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;display:flex;align-items:center;justify-content:center}.class-details-close-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #26c5c066}.cancel-confirm-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1003;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.cancel-confirm-modal{background:#000714;border:1px solid rgba(239,68,68,.3);border-radius:20px;width:100%;max-width:500px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0009;animation:modalSlideIn .3s ease-out}.cancel-confirm-modal-header{padding:1.5rem;border-bottom:1px solid rgba(239,68,68,.2);display:flex;align-items:center;justify-content:space-between;background:#ef44440d;position:relative}.cancel-confirm-modal-header h2{color:#ef4444;font-size:1.5rem;font-weight:700;margin:0}.cancel-confirm-modal-content{padding:2rem}.cancel-confirm-warning{text-align:center;margin-bottom:2rem}.cancel-confirm-warning p{color:#ececec;font-size:1.1rem;margin-top:1rem;margin-bottom:0;font-weight:500}.cancel-confirm-class-info{background:#ef44440d;border:1px solid rgba(239,68,68,.1);border-radius:12px;padding:1.5rem}.cancel-confirm-info-item{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;color:#ececec}.cancel-confirm-info-item:last-child{margin-bottom:0}.cancel-confirm-info-item svg{color:#ef4444;flex-shrink:0}.cancel-confirm-info-item span{font-size:1rem;line-height:1.4}.cancel-confirm-actions{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid rgba(239,68,68,.2);background:#ef44440d}.cancel-confirm-btn{flex:1;background:#ef4444;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px}.cancel-confirm-btn:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 8px 25px #ef444466}.cancel-keep-btn{flex:1;background:#6c757d33;color:#6c757d;border:1px solid rgba(108,117,125,.3);padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px}.cancel-keep-btn:hover{background:#6c757d4d;border-color:#6c757d80;transform:translateY(-2px)}.loading-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid #ffffff;border-radius:50%;animation:spin 1s linear infinite;display:inline-block;margin-right:8px}.cancel-confirm-btn:disabled,.cancel-keep-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.cancel-confirm-btn:disabled:hover,.cancel-keep-btn:disabled:hover{background:#ef4444;transform:none!important;box-shadow:none!important}.cancel-keep-btn:disabled:hover{background:#6c757d33;border-color:#6c757d4d}@media (max-width: 768px){.class-details-modal{margin:.5rem;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 4rem);border-radius:15px}.class-details-modal-overlay{padding-top:calc(env(safe-area-inset-top) + 2rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2rem);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.class-details-modal-header{padding:1rem}.class-details-modal-header h2{font-size:1.3rem}.class-details-modal-content{padding:1rem}.class-details-info-grid{grid-template-columns:1fr;gap:1rem;margin-bottom:3rem}.class-details-title{flex-direction:column;text-align:center;gap:.8rem}.class-details-icon{width:45px;height:45px}.class-details-title h3{font-size:1.2rem}.class-details-item{padding:.8rem}.cancel-class-btn,.class-details-close-btn{width:100%;max-width:280px}.class-details-actions{flex-direction:column;align-items:center;padding:1rem}.cancel-confirm-modal{margin:.5rem;max-width:calc(100vw - 1rem)}.cancel-confirm-modal-header{padding:1rem}.cancel-confirm-modal-header h2{font-size:1.3rem}.cancel-confirm-modal-content{padding:1.5rem}.cancel-confirm-warning p{font-size:1rem}.cancel-confirm-class-info{padding:1rem}.cancel-confirm-actions{flex-direction:column;padding:1rem}}@media (max-width: 480px){.class-details-modal{margin:.3rem;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 5rem)}.class-details-modal-overlay{padding-top:calc(env(safe-area-inset-top) + 2.5rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2.5rem);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.class-details-modal-header{padding:.8rem}.class-details-modal-header h2{font-size:1.2rem}.class-details-modal-content{padding:.8rem .8rem 1.5rem}.cancel-confirm-modal{margin:.3rem;max-width:calc(100vw - .6rem)}.cancel-confirm-modal-header{padding:.8rem}.cancel-confirm-modal-header h2{font-size:1.2rem}.cancel-confirm-modal-content{padding:1rem}.cancel-confirm-warning p{font-size:.9rem}.cancel-confirm-class-info{padding:.8rem}.cancel-confirm-info-item span{font-size:.9rem}.cancel-confirm-actions{flex-direction:column;padding:.8rem}.class-details-icon{width:40px;height:40px}.class-details-title h3{font-size:1.1rem}.class-details-value{font-size:.9rem}}.members-section{margin-top:1.5rem}@media (max-width: 768px){.members-section{margin-top:2.5rem}}@media (max-width: 480px){.members-section{margin-top:2rem}}.members-card{background:#26c5c014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.15);border-radius:15px;padding:1.5rem;min-height:200px;box-sizing:border-box}@media (max-width: 768px){.members-card{padding:1.5rem;min-height:auto;border-radius:20px;box-shadow:0 8px 32px #26c5c01f}}.members-content{display:flex;align-items:center;height:100%;gap:2rem}@media (max-width: 768px){.members-content{flex-direction:column;text-align:center;gap:2rem;justify-content:center}}.members-text{flex:1}.members-text h2{font-size:1.5rem;font-weight:700;color:#ececec;margin-bottom:1.5rem;line-height:1.3}.members-text .highlight{color:#3be9e3;font-weight:800}.access-button{background:linear-gradient(135deg,#ff7c1f,#ff9a56);color:#000714;border:none;padding:.8rem 1.8rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff7c1f4d;min-height:44px;display:inline-flex;align-items:center;justify-content:center}@media (max-width: 768px){.access-button{padding:1rem 2rem;font-size:1.1rem;width:100%;max-width:280px}}.access-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ff7c1f66}.members-image{flex:1;display:flex;align-items:center;justify-content:center}.members-image img{width:100%;max-width:300px;height:auto;border-radius:12px;object-fit:cover;box-shadow:0 6px 25px #0000004d}@media (max-width: 768px){.members-image img{max-width:250px}}@media (max-width: 480px){.members-image img{max-width:200px}}.error-screen h2{color:#ef4444;margin-bottom:.5rem}@media (max-width: 1024px){.home-content{padding:1rem;max-width:100%}.schedule-text h2{font-size:1.3rem}.history-header h2{font-size:1.2rem}.members-text h2{font-size:1.3rem}}@media (max-width: 768px){.home-content{padding:1rem}.home-grid{gap:2rem}.schedule-section,.history-section{width:100%!important;max-width:100%!important}.schedule-card,.history-card{padding:1.5rem;min-height:auto;width:100%!important;box-sizing:border-box!important}.schedule-text h2{font-size:1.3rem;line-height:1.3}.schedule-text p{font-size:.95rem;line-height:1.5}.class-item{padding:1.2rem!important;flex-direction:column!important;align-items:flex-start!important;gap:.8rem!important;margin-bottom:.8rem!important}.class-item .class-info{width:100%;gap:1rem}.class-item .class-meta{flex-direction:column;align-items:flex-start;gap:.1rem!important;margin-top:.1rem!important}.details-button{align-self:flex-end}.class-icon{width:32px;height:32px}.class-details{flex:1;min-width:0}.monogram-bg{width:200px;height:200px;bottom:-30px;right:-30px}.history-header h2{font-size:1.3rem;line-height:1.3}.history-header p{font-size:.9rem;line-height:1.4}.members-text h2{font-size:1.2rem;margin-bottom:1.5rem;line-height:1.3}.history-modal{margin:.5rem;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 4rem)}.history-modal-overlay{padding-top:calc(env(safe-area-inset-top) + 2rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2rem);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.history-modal-header{padding:1rem}.history-modal-header h2{font-size:1.2rem}.history-modal-content{padding:1rem}.modal-class-item{padding:.8rem;flex-direction:column;align-items:flex-start;gap:.7rem}.modal-class-item .class-info{width:100%}.modal-class-item .class-meta{flex-direction:column;align-items:flex-start;gap:.3rem}.modal-details-btn{align-self:flex-end}}@media (max-width: 480px){.home-content{padding:1rem}.home-grid{gap:1.5rem}.schedule-card,.history-card{padding:1.2rem}.schedule-text h2,.history-header h2{font-size:1.1rem}.class-icon{width:28px;height:28px}.class-main{flex-direction:column;align-items:flex-start;gap:.3rem}.monogram-bg{width:150px;height:150px}.members-text h2{font-size:1.1rem}.history-modal{margin:.3rem;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 5rem)}.history-modal-overlay{padding-top:calc(env(safe-area-inset-top) + 2.5rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2.5rem);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.history-modal-header{padding:.8rem}.history-modal-header h2{font-size:1.1rem}.close-modal-btn{width:35px;height:35px;font-size:1.5rem;top:.8rem;right:.8rem}.history-modal-content,.modal-stats{padding:.8rem}.modal-stats p{font-size:.9rem}}@media (max-width: 768px){.notification{top:80px;left:1rem;right:1rem;font-size:.9rem;padding:.8rem 1rem}}.timezone-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1004;padding:1rem}.timezone-popup{background:#000714;border:2px solid #3BE9E3;border-radius:20px;width:100%;max-width:500px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #3be9e34d;animation:timezonePopupSlideIn .4s ease-out}@keyframes timezonePopupSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.timezone-popup-header{padding:2rem 2rem 1rem;text-align:center;background:linear-gradient(135deg,#3be9e31a,#26c5c01a);border-bottom:1px solid rgba(59,233,227,.2);position:relative}.timezone-popup-icon{width:80px;height:80px;background:linear-gradient(135deg,#26c5c0,#3be9e3);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 8px 25px #3be9e34d;animation:timezoneIconPulse 2s ease-in-out infinite}@keyframes timezoneIconPulse{0%,to{transform:scale(1);box-shadow:0 8px 25px #3be9e34d}50%{transform:scale(1.05);box-shadow:0 12px 35px #3be9e366}}.timezone-popup-icon svg{color:#000714;animation:timezoneIconRotate 3s linear infinite}@keyframes timezoneIconRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.timezone-popup-header h2{color:#3be9e3;font-size:1.6rem;font-weight:700;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3)}.timezone-popup-content{padding:2rem;text-align:left}.timezone-feature-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#3be9e30d;border:1px solid rgba(59,233,227,.1);border-radius:12px;transition:all .3s ease}.timezone-feature-item:hover{background:#3be9e314;border-color:#3be9e333;transform:translate(5px)}.timezone-feature-item:last-child{margin-bottom:0}.timezone-feature-icon{width:50px;height:50px;background:linear-gradient(135deg,#26c5c0,#3be9e3);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 15px #3be9e34d}.timezone-feature-icon svg{color:#000714}.timezone-feature-item p{color:#ececec;font-size:1.1rem;line-height:1.6;margin:0;font-weight:400;flex:1}.highlight-text{color:#3be9e3;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.3)}.timezone-popup-actions{padding:1.5rem 2rem 2rem;display:flex;justify-content:center;background:#3be9e30d}.timezone-popup-button{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:1rem 2.5rem;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;min-height:50px;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 6px 20px #3be9e366;text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.timezone-popup-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.timezone-popup-button:hover:before{left:100%}.timezone-popup-button:hover{transform:translateY(-3px);box-shadow:0 10px 30px #3be9e380;background:linear-gradient(135deg,#3be9e3,#26c5c0)}.timezone-popup-button:active{transform:translateY(-1px);box-shadow:0 4px 15px #3be9e366}.timezone-popup-button:disabled{opacity:.7;cursor:not-allowed;transform:none!important;box-shadow:0 6px 20px #3be9e333!important}.timezone-popup-button:disabled:hover{transform:none!important;box-shadow:0 6px 20px #3be9e333!important;background:linear-gradient(135deg,#26c5c0,#3be9e3)!important}.timezone-popup-button:disabled:before{display:none}@media (max-width: 768px){.timezone-popup{margin:.5rem;max-width:calc(100vw - 1rem);border-radius:15px}.timezone-popup-header{padding:1.5rem 1.5rem 1rem}.timezone-popup-icon{width:70px;height:70px;margin-bottom:1rem}.timezone-popup-header h2{font-size:1.4rem}.timezone-popup-content{padding:1.5rem}.timezone-feature-item{padding:1.2rem;margin-bottom:1.5rem}.timezone-feature-icon{width:45px;height:45px}.timezone-feature-item p{font-size:1rem;line-height:1.5}.timezone-popup-actions{padding:1rem 1.5rem 1.5rem}.timezone-popup-button{padding:.8rem 2rem;font-size:1rem;width:100%;max-width:280px}}@media (max-width: 480px){.timezone-popup{margin:.3rem;max-width:calc(100vw - .6rem);border-radius:12px}.timezone-popup-header{padding:1.2rem 1.2rem .8rem}.timezone-popup-icon{width:60px;height:60px;margin-bottom:.8rem}.timezone-popup-header h2{font-size:1.2rem}.timezone-popup-content{padding:1.2rem}.timezone-feature-item{padding:1rem;margin-bottom:1.2rem;flex-direction:column;text-align:center;gap:.8rem}.timezone-feature-icon{width:40px;height:40px;margin:0 auto}.timezone-feature-item p{font-size:.95rem;line-height:1.4}.timezone-popup-actions{padding:.8rem 1.2rem 1.2rem}.timezone-popup-button{padding:.7rem 1.5rem;font-size:.95rem;border-radius:10px}}.profile-page{min-height:100vh;background:#000714;color:#ececec;position:relative;overflow-x:hidden}.profile-container{display:flex;max-width:1200px;margin:0 auto;padding:2rem;gap:2rem;min-height:calc(100vh - 80px)}.profile-sidebar{width:300px;flex-shrink:0}.user-photo-section{background:#26c5c01a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.2);border-radius:20px;padding:2rem;text-align:center}.user-photo{width:120px;height:120px;margin:0 auto 1rem;border-radius:50%;overflow:hidden;border:3px solid #26C5C0;position:relative}.photo-image{width:100%;height:100%;object-fit:cover}.photo-fallback{width:100%;height:100%;background:linear-gradient(135deg,#26c5c0,#3be9e3);display:flex;align-items:center;justify-content:center}.photo-initial{font-size:3rem;font-weight:700;color:#000714;text-transform:uppercase}.user-email{font-size:.9rem;color:#ececec;opacity:.8;word-break:break-word}.home-button{margin-top:1.5rem;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;width:100%}.home-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #26c5c04d}.profile-content{flex:1;background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:20px;overflow:hidden}.profile-tabs{display:flex;background:#0007144d;border-bottom:1px solid rgba(38,197,192,.2);overflow-x:auto}.tab-button{flex:1;padding:1rem 1.5rem;background:none;border:none;color:#ececec;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent;white-space:nowrap}.tab-button:hover{background:#26c5c01a;color:#3be9e3}.tab-button.active{background:#26c5c026;color:#3be9e3;border-bottom-color:#26c5c0}.tab-content{padding:2rem}.tab-content h3{margin:0 0 2rem;color:#3be9e3;font-size:1.5rem;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;color:#ececec;font-weight:500;font-size:.9rem}.form-group input,.form-group select{padding:.75rem 1rem;background:#00071480;border:1px solid rgba(38,197,192,.3);border-radius:8px;color:#ececec;font-size:.9rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#26c5c0;box-shadow:0 0 0 3px #26c5c01a}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-group input::placeholder{color:#ececec80}.select-wrapper{position:relative;display:inline-block;width:100%}.select-wrapper select{appearance:none;padding-right:2.5rem;cursor:pointer;width:100%;box-sizing:border-box}.select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#ececec;pointer-events:none;z-index:1}.phone-group{grid-column:span 2}.phone-input{display:flex;gap:.5rem}.country-select{width:120px;flex-shrink:0}.phone-input input{flex:1}.form-actions{display:flex;gap:1rem;justify-content:flex-start;align-items:center;flex-wrap:wrap;margin-top:1rem}.reset-password-btn{background:linear-gradient(135deg,#ff7c1f,#ff9a47);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.reset-password-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #ff7c1f4d}.save-changes-btn{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.75rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.save-changes-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #26c5c04d}.save-changes-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.notification{position:fixed;top:100px;right:20px;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;padding:1rem 1.5rem;border-radius:12px;font-weight:600;box-shadow:0 8px 25px #26c5c04d;z-index:1000;animation:slideInRight .3s ease-out}.support-content{text-align:center;max-width:600px;margin:0 auto}.support-content p{font-size:1.1rem;line-height:1.6;margin-bottom:2rem;color:#ececec;opacity:.9}.support-btn{background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.support-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #25d3664d}.transactions-table{overflow-x:auto;border-radius:12px;border:1px solid rgba(38,197,192,.2)}.transactions-table table{width:100%;border-collapse:collapse;background:#0007144d}.transactions-table th{background:#26c5c033;color:#3be9e3;padding:1rem;text-align:left;font-weight:600;border-bottom:1px solid rgba(38,197,192,.3)}.monogram-bg{position:fixed;bottom:-100px;right:-100px;width:400px;height:400px;opacity:.03;pointer-events:none;z-index:1;animation:float 20s ease-in-out infinite}@media (max-width: 1024px){.profile-container{flex-direction:column;padding:1rem}.profile-sidebar{width:100%}.user-photo-section{display:flex;align-items:center;gap:1.5rem;text-align:left;padding:1.5rem}.user-photo{width:80px;height:80px;margin:0}.photo-initial{font-size:2rem}}@media (max-width: 768px){.profile-tabs{flex-direction:column}.tab-button{text-align:left;border-bottom:1px solid rgba(38,197,192,.1);border-right:none}.tab-button.active{border-bottom-color:#26c5c01a;border-left:3px solid #26C5C0}.form-grid{grid-template-columns:1fr}.phone-group{grid-column:span 1}.phone-input{flex-direction:column}.country-select{width:100%}.tab-content{padding:1rem}.monogram-bg{width:300px;height:300px;bottom:-50px;right:-50px}}@media (max-width: 480px){.user-photo-section{flex-direction:column;text-align:center}.transactions-table{font-size:.8rem}.transactions-table th,.transactions-table td{padding:.5rem}.support-content p{font-size:1rem}.monogram-bg{width:200px;height:200px}}.loading-message,.error-message,.no-data-message{text-align:center;padding:2rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:10px;margin:1rem 0}.loading-message p,.error-message p,.no-data-message p{margin:0;color:#ececec;font-size:1.1rem}.retry-btn{background:#26c5c0;color:#000714;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;margin-top:1rem;transition:all .3s ease}.retry-btn:hover{background:#1ea8a3;transform:translateY(-2px)}.transactions-table{background:#26c5c00d;border:1px solid rgba(38,197,192,.2);border-radius:10px;overflow:hidden;margin-top:1rem}.transactions-table table{width:100%;border-collapse:collapse}.transactions-table th{background:#26c5c033;color:#26c5c0;font-weight:600;padding:1rem;text-align:left;border-bottom:1px solid rgba(38,197,192,.3)}.transactions-table td{padding:1rem;border-bottom:1px solid rgba(38,197,192,.1);color:#ececec}.transactions-table tr:last-child td{border-bottom:none}.transactions-table tr:hover{background:#26c5c00d}.transaction-type{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize}.transaction-type.aula-cancelada{background:#ff636333;color:#ff6363;border:1px solid rgba(255,99,99,.3)}.transaction-type.aula-agenda{background:#63ff6333;color:#63ff63;border:1px solid rgba(99,255,99,.3)}.transaction-type.horario-bloqueado{background:#ffa50033;color:orange;border:1px solid rgba(255,165,0,.3)}.transaction-type.horario-desbloqueado{background:#00bfff33;color:#00bfff;border:1px solid rgba(0,191,255,.3)}.transaction-type.unknown{background:#80808033;color:gray;border:1px solid rgba(128,128,128,.3)}@media (max-width: 768px){.transactions-table{overflow-x:auto}.transactions-table table{min-width:600px}.transactions-table th,.transactions-table td{padding:.75rem .5rem;font-size:.9rem}.transaction-type{font-size:.7rem;padding:.2rem .5rem}}.schedule-container{min-height:100vh;background:#000714;color:#ececec;position:relative;overflow-x:hidden}.mobile-back-button{display:none}.back-button{display:flex;align-items:center;gap:.5rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#3be9e3;padding:.8rem 1.2rem;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-bottom:1rem}.back-button:hover{background:#26c5c033;border-color:#26c5c080;transform:translateY(-2px)}.schedule-content{max-width:1000px;margin:0 auto;padding:1rem}.schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:1rem}.schedule-left{display:flex;flex-direction:column;gap:2rem}.details-section{background:#26c5c01a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.2);border-radius:15px;padding:1.5rem}.details-section h2{font-size:1.4rem;font-weight:700;color:#3be9e3;margin-bottom:1rem;line-height:1.2}.details-list{display:flex;flex-direction:column;gap:1rem}.detail-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#0007144d;border:1px solid rgba(38,197,192,.15);border-radius:10px;transition:all .3s ease}.detail-item:hover{background:#26c5c01a;border-color:#26c5c040}.detail-item svg{color:#26c5c0;flex-shrink:0}.detail-item span{font-size:.95rem;color:#ececec}.tips-section{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.5rem}.tips-section h3{font-size:1.2rem;font-weight:600;color:#3be9e3;margin-bottom:1rem;line-height:1.2}.tips-list{display:flex;flex-direction:column;gap:.75rem}.tip-item{display:flex;align-items:center;gap:.5rem;padding:.5rem}.tip-item svg{color:#22c55e;flex-shrink:0}.tip-item:last-child svg{color:#f59e0b}.tip-item span{font-size:.9rem;color:#ececec;opacity:.9}.schedule-right{display:flex;flex-direction:column}.teacher-selection{background:#26c5c014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.15);border-radius:15px;padding:1.5rem;height:fit-content}.teacher-selection h2{font-size:1.4rem;font-weight:700;color:#3be9e3;margin-bottom:1.5rem;line-height:1.2}.teachers-list{display:flex;flex-direction:column;gap:1rem}.teacher-card{background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:12px;padding:1rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .3s ease}.teacher-card:hover{background:#26c5c01a;border-color:#26c5c04d;transform:translateY(-2px);box-shadow:0 4px 15px #26c5c033}.teacher-photo{width:50px;height:50px;border-radius:50%;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#26c5c0,#3be9e3);display:flex;align-items:center;justify-content:center}.teacher-photo img{width:100%;height:100%;object-fit:cover}.teacher-info{flex:1;display:flex;align-items:center;justify-content:space-between}.teacher-info h4{font-size:1rem;font-weight:600;color:#ececec;margin:0}.teacher-icon{color:#26c5c0;opacity:.7}.teachers-loading,.teachers-error,.no-teachers{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;color:#ececec}.teachers-loading .loading-spinner{width:40px;height:40px;border:3px solid rgba(38,197,192,.3);border-top:3px solid #26C5C0;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.teachers-loading p{color:#3be9e3;font-size:1rem;margin:0}.teachers-error p{color:#ef4444;font-size:.9rem;margin-bottom:1rem}.retry-button{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.5rem 1rem;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .3s ease}.retry-button:hover{background:#ef444433;border-color:#ef4444}.no-teachers p{opacity:.7;font-size:.9rem;margin:0}.date-selection-grid{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:1.5rem;margin-top:1rem}.selected-teacher-section{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.5rem;margin-top:1.5rem}.selected-teacher-section h3{font-size:1.2rem;font-weight:600;color:#3be9e3;margin-bottom:1rem;line-height:1.2}.selected-teacher-card{display:flex;align-items:center;gap:1rem;background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:12px;padding:1rem}.selected-teacher-card .teacher-photo{width:60px;height:60px;border-radius:50%;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#26c5c0,#3be9e3)}.selected-teacher-card .teacher-photo img{width:100%;height:100%;object-fit:cover}.teacher-details{flex:1}.teacher-details h4{font-size:1.1rem;font-weight:600;color:#ececec;margin:0 0 .5rem}.teacher-details p{font-size:.9rem;color:#ececec;opacity:.8;margin:0 0 1rem}.change-teacher-button{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.4rem .8rem;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .3s ease}.change-teacher-button:hover{background:#26c5c033;border-color:#26c5c0}.schedule-center{display:flex;flex-direction:column}.calendar-section{background:#26c5c014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.15);border-radius:15px;padding:1.5rem;height:fit-content}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.calendar-header h3{font-size:1.3rem;font-weight:700;color:#3be9e3;margin:0;text-transform:capitalize}.month-nav-button{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.month-nav-button:hover{background:#26c5c033;border-color:#26c5c0}.calendar-loading,.calendar-error{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;color:#ececec}.calendar-loading .loading-spinner{width:40px;height:40px;border:3px solid rgba(38,197,192,.3);border-top:3px solid #26C5C0;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.calendar-error p{color:#ef4444;font-size:.9rem;margin:0}.calendar-grid{width:100%}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin-bottom:.5rem}.weekday{text-align:center;font-size:.8rem;font-weight:600;color:#3be9e3;padding:.5rem}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;border-radius:8px;cursor:pointer;transition:all .3s ease;min-height:40px}.calendar-day.empty{cursor:default}.calendar-day.past{opacity:.3;cursor:not-allowed}.calendar-day.available{background:#26c5c01a;border:1px solid rgba(38,197,192,.2);cursor:pointer}.calendar-day.available:hover{background:#26c5c033;border-color:#26c5c066;transform:scale(1.05)}.calendar-day.selected{background:linear-gradient(135deg,#26c5c0,#3be9e3);border:1px solid #26C5C0;color:#000714}.calendar-day.selected .day-number{color:#000714;font-weight:700}.day-number{font-size:.9rem;font-weight:500;color:#ececec}.availability-dot{width:6px;height:6px;background:#26c5c0;border-radius:50%;position:absolute;bottom:4px;right:4px}.calendar-day.selected .availability-dot{background:#000714}.time-slots-section{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.5rem;height:fit-content}.time-slots-section h3{font-size:1.2rem;font-weight:600;color:#3be9e3;margin-bottom:1.5rem;line-height:1.2}.time-slots-list{display:flex;flex-direction:column;gap:.75rem}.time-slot-button{background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:8px;padding:.75rem 1rem;color:#ececec;font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease}.time-slot-button:hover{background:#26c5c01a;border-color:#26c5c04d;transform:translateY(-2px);box-shadow:0 4px 15px #26c5c033}.time-slot-button svg{color:#26c5c0}.no-date-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;color:#ececec;opacity:.6}.no-date-selected svg{margin-bottom:1rem;opacity:.5}.no-date-selected p{font-size:.9rem;margin:0;line-height:1.4}.date-selection-placeholder{text-align:center;padding:3rem 1rem;background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:15px}.selected-teacher-info{margin-bottom:2rem}.selected-teacher-info h2{font-size:1.5rem;color:#3be9e3;margin-bottom:1rem}.back-button{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.back-button:hover{background:#26c5c033;border-color:#26c5c0}@media (max-width: 1024px){.schedule-content{padding:1rem}.schedule-grid{grid-template-columns:1fr;gap:1.5rem}.schedule-left{gap:1.5rem}.details-section,.tips-section,.teacher-selection{padding:1.25rem}.date-selection-grid{grid-template-columns:1fr;gap:1rem}.selected-teacher-section{margin-top:1rem;padding:1.25rem}.calendar-section,.time-slots-section{padding:1.25rem}}@media (max-width: 768px){.schedule-content{padding:.8rem}.schedule-grid{gap:1rem}.mobile-back-button{display:block}.date-selection-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.date-selection-grid.calendar{grid-template-columns:1fr;justify-items:center}.date-selection-grid.calendar .schedule-left,.date-selection-grid.calendar .schedule-right{display:none}.date-selection-grid.calendar .schedule-center{max-width:100%;width:100%}.date-selection-grid.timeslots{grid-template-columns:1fr;justify-items:center}.date-selection-grid.timeslots .schedule-left,.date-selection-grid.timeslots .schedule-center{display:none}.date-selection-grid.timeslots .schedule-right{max-width:100%;width:100%}.mobile-hidden{display:none!important}.details-section,.tips-section,.teacher-selection{padding:1rem}.details-section h2,.teacher-selection h2{font-size:1.2rem}.tips-section h3{font-size:1.1rem}.teacher-card{padding:.8rem}.teacher-photo{width:45px;height:45px}.monogram-bg{width:300px;height:300px;bottom:-50px;right:-50px}.selected-teacher-card{flex-direction:column;text-align:center;gap:.8rem}.selected-teacher-card .teacher-photo{width:50px;height:50px}.calendar-header h3{font-size:1.1rem}.month-nav-button{width:35px;height:35px}.calendar-day{min-height:35px}.day-number{font-size:.8rem}.time-slot-button{padding:.6rem .8rem;font-size:.8rem}}@media (max-width: 480px){.details-section h2,.teacher-selection h2{font-size:1.1rem}.tips-section h3{font-size:1rem}.detail-item,.tip-item{padding:.5rem}.teacher-card{padding:.7rem;gap:.7rem}.teacher-photo{width:40px;height:40px}.teacher-info h4{font-size:.9rem}.monogram-bg{width:200px;height:200px}}.booking-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.booking-modal{background:#000714;border:1px solid rgba(38,197,192,.3);border-radius:20px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #00000080;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{padding:1.5rem 1.5rem 0;border-bottom:1px solid rgba(38,197,192,.2);margin-bottom:1.5rem}.modal-header h2{font-size:1.4rem;font-weight:700;color:#3be9e3;margin:0;text-align:center}.modal-content{padding:0 1.5rem}.teacher-info-section{display:flex;align-items:center;gap:1rem;background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.2rem;margin-bottom:1.5rem}.teacher-info-section .teacher-photo{width:60px;height:60px;border-radius:50%;overflow:hidden;border:2px solid rgba(38,197,192,.3)}.teacher-info-section .teacher-photo img{width:100%;height:100%;object-fit:cover}.teacher-details h3{font-size:1.2rem;font-weight:600;color:#ececec;margin:0 0 .3rem}.teacher-details p{font-size:.9rem;color:#3be9e3;margin:0;font-weight:500}.booking-details{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.detail-row{display:flex;align-items:center;gap:1rem;padding:.8rem;background:#ffffff08;border-radius:10px;border:1px solid rgba(255,255,255,.1)}.detail-row svg{color:#3be9e3;flex-shrink:0}.detail-row>div{display:flex;flex-direction:column;gap:.2rem}.detail-label{font-size:.8rem;color:#999;font-weight:500}.detail-value{font-size:1rem;color:#ececec;font-weight:600}.observations-section{margin-bottom:1.5rem}.observations-section label{display:block;font-size:.9rem;color:#ececec;font-weight:600;margin-bottom:.8rem}.observations-section textarea{width:100%;min-height:100px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:1rem;color:#ececec;font-size:.9rem;font-family:inherit;resize:vertical;transition:all .3s ease}.observations-section textarea:focus{outline:none;border-color:#26c5c080;background:#26c5c00d}.observations-section textarea::placeholder{color:#666}.char-count{display:block;text-align:right;font-size:.75rem;color:#666;margin-top:.5rem}.modal-buttons{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid rgba(38,197,192,.2)}.cancel-button,.confirm-button{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 1.5rem;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:1px solid}.cancel-button{background:transparent;border-color:#ffffff4d;color:#ececec}.cancel-button:hover{background:#ffffff0d;border-color:#ffffff80;transform:translateY(-2px)}.confirm-button{background:linear-gradient(135deg,#26c5c0,#3be9e3);border-color:#3be9e3;color:#000714}.confirm-button:hover{background:linear-gradient(135deg,#3be9e3,#26c5c0);transform:translateY(-2px);box-shadow:0 8px 25px #26c5c04d}@media (max-width: 768px){.booking-modal{margin:1rem;max-height:85vh}.modal-header,.modal-content{padding-left:1rem;padding-right:1rem}.modal-buttons{padding:1rem;flex-direction:column}.teacher-info-section{flex-direction:column;text-align:center;gap:.8rem}.detail-row{padding:.6rem}.detail-row>div{flex-direction:row;gap:.5rem;align-items:center}.detail-label:after{content:""}}@media (max-width: 480px){.booking-modal-overlay{padding:.5rem}.modal-header h2{font-size:1.2rem}.teacher-details h3{font-size:1.1rem}.observations-section textarea{min-height:80px}}.loading-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid #fff;border-radius:50%;animation:spin 1s linear infinite;display:inline-block}.booking-error{background:#dc267f1a;border:1px solid rgba(220,38,127,.3);border-radius:8px;padding:.8rem;margin-bottom:1rem}.booking-error p{color:#ff6b9d;font-size:.9rem;margin:0}.success-modal{max-width:500px}.success-header{text-align:center;padding-bottom:1rem}.success-icon{color:#26c5c0;margin-bottom:1rem;display:flex;justify-content:center}.success-content{text-align:center;padding:0}.success-content p{font-size:1rem;color:#b0b0b0;margin-bottom:1.5rem;line-height:1.5}.booking-summary{background:#26c5c00d;border:1px solid rgba(38,197,192,.2);border-radius:10px;padding:1.2rem;text-align:left}.summary-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.5rem 0;border-bottom:1px solid rgba(38,197,192,.1);font-size:.9rem}.summary-item:last-child{border-bottom:none}.summary-item strong{color:#3be9e3;font-weight:600;flex-shrink:0;margin-right:1rem;min-width:80px}.confirm-button:disabled,.cancel-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.confirm-button:disabled:hover,.cancel-button:disabled:hover{background:#26c5c01a;border-color:#26c5c04d;transform:none}.insufficient-balance-modal{max-width:450px}.insufficient-balance-header{text-align:center;padding-bottom:1rem}.warning-icon{color:#ff6b6b;margin-bottom:1rem;display:flex;justify-content:center}.insufficient-balance-header h2{color:#ff6b6b;font-size:1.5rem;font-weight:600;margin:0}.insufficient-balance-content{text-align:center;padding:0}.insufficient-balance-content p{font-size:1rem;color:#b0b0b0;margin-bottom:1rem;line-height:1.5}.insufficient-balance-content p:last-child{margin-bottom:1.5rem}.secondary-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ececec;padding:.8rem 1.5rem;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;min-width:140px;justify-content:center}.secondary-button:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-2px)}.secondary-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.add-credits-container{min-height:100vh;background:#000714;color:#ececec;position:relative;overflow-x:hidden;-webkit-overflow-scrolling:touch}.add-credits-content{max-width:1400px;margin:0 auto;padding:1rem;width:100%;box-sizing:border-box}.add-credits-header{text-align:center;margin-bottom:3rem;position:relative}.back-button{position:absolute;left:0;top:0;background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.6rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease;min-height:44px}.back-button:hover{background:#26c5c033;border-color:#26c5c0;transform:translateY(-2px)}.add-credits-header h1{color:#3be9e3;font-size:2.5rem;font-weight:700;margin:0 0 1rem;line-height:1.2}.add-credits-header p{color:#ececec;font-size:1.1rem;opacity:.8;max-width:600px;margin:0 auto}.plans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:3rem}@media (min-width: 1400px){.plans-grid{max-width:1200px;margin:0 auto 3rem;gap:2rem}}.plan-card{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:20px;padding:1.5rem;position:relative;transition:all .3s ease;box-sizing:border-box;min-height:420px;display:flex;flex-direction:column;justify-content:space-between}.plan-card:hover{background:#26c5c014;border-color:#26c5c033;transform:translateY(-5px);box-shadow:0 15px 40px #26c5c026}.plan-card.popular{background:#26c5c01a;border:2px solid rgba(38,197,192,.3);box-shadow:0 10px 30px #26c5c033}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:.3rem;box-shadow:0 4px 15px #26c5c04d}.plan-header{text-align:center;margin-bottom:2rem}.plan-icon{width:60px;height:60px;background:linear-gradient(135deg,#26c5c0,#3be9e3);border-radius:15px;display:flex;align-items:center;justify-content:center;color:#000714;margin:0 auto 1rem;box-shadow:0 4px 15px #26c5c04d}.plan-header h3{color:#3be9e3;font-size:1.5rem;font-weight:700;margin:0}.plan-details{margin-bottom:2rem}.plan-classes{text-align:center;margin-bottom:1.5rem}.classes-number{display:block;font-size:3rem;font-weight:800;color:#3be9e3;line-height:1;margin-bottom:.5rem}.classes-text{color:#ececec;font-size:1rem;opacity:.9}.plan-pricing{text-align:center;padding:1.5rem;background:#0007144d;border-radius:12px;border:1px solid rgba(38,197,192,.1)}.price-per-class{color:#ececec;font-size:1.1rem;margin-bottom:.5rem;opacity:.8}.total-price{color:#3be9e3;font-size:1.8rem;font-weight:700}.plan-button{width:100%;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;min-height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #26c5c04d}.plan-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #26c5c066}.plan-card.popular .plan-button{background:linear-gradient(135deg,#ff7c1f,#ff9a56);box-shadow:0 4px 15px #ff7c1f4d}.plan-card.popular .plan-button:hover{box-shadow:0 8px 25px #ff7c1f66}.confirm-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1001;padding:1rem}.confirm-modal{background:#000714;border:1px solid rgba(38,197,192,.3);border-radius:20px;width:100%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0009;animation:modalSlideIn .3s ease-out}.confirm-modal-header{padding:1.5rem;border-bottom:1px solid rgba(38,197,192,.2);display:flex;flex-direction:column;align-items:center;background:#26c5c00d;position:relative}.alert-icon{color:#fbbf24;margin-bottom:1rem}.confirm-modal-header h2{color:#3be9e3;font-size:1.5rem;font-weight:700;margin:0}.close-modal-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#ececec;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .3s ease;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.confirm-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.selected-plan-info{text-align:center;margin-bottom:2rem;padding:1rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:12px}.selected-plan-info h3{color:#3be9e3;font-size:1.3rem;font-weight:700;margin:0 0 .5rem}.selected-plan-info p{color:#ececec;margin:0;opacity:.9}.confirm-instructions{margin-bottom:2rem}.confirm-instructions p{color:#ececec;margin-bottom:1rem;line-height:1.5}.email-display{background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:8px;padding:1rem;color:#3be9e3;font-family:monospace;font-size:1rem;font-weight:600;text-align:center;margin-bottom:1.5rem}.phone-warning{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:8px;padding:1rem;color:#fbbf24;font-weight:600;text-align:center}.confirm-actions{display:flex;gap:1rem;justify-content:center}.proceed-button{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.8rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;flex:1;max-width:150px}.proceed-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #26c5c066}.cancel-button{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.8rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;flex:1;max-width:150px}.cancel-button:hover{background:#ef444433;transform:translateY(-2px)}@media (max-width: 1024px){.plans-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width: 768px){.add-credits-content{padding:1rem .8rem}.add-credits-header{margin-bottom:2rem}.back-button{position:static;margin-bottom:1.5rem;width:fit-content}.add-credits-header h1{font-size:2rem}.add-credits-header p{font-size:1rem}.plans-grid{grid-template-columns:1fr;gap:1.5rem}.plan-card{padding:1.5rem;min-height:auto}.classes-number{font-size:2.5rem}.total-price{font-size:1.5rem}.confirm-modal{margin:.5rem;max-height:90vh}.confirm-modal-content{padding:1rem}.confirm-actions{flex-direction:column}.proceed-button,.cancel-button{max-width:100%}}@media (max-width: 480px){.add-credits-header h1{font-size:1.8rem}.plan-card{padding:1.2rem}.plan-icon{width:50px;height:50px}.classes-number{font-size:2rem}.plan-header h3{font-size:1.3rem}.confirm-modal{margin:.3rem;max-height:95vh}.monogram-bg{width:200px;height:200px;bottom:-50px;right:-50px}}.professor-container{min-height:100vh;background:#000714;color:#ececec;position:relative;overflow-x:hidden;-webkit-overflow-scrolling:touch}button,.class-item,.nav-item{touch-action:manipulation}.professor-content{max-width:1200px;margin:0 auto;padding:1rem;width:100%;box-sizing:border-box}.professor-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0;margin-bottom:1.5rem;border-bottom:1px solid rgba(38,197,192,.2)}@media (max-width: 768px){.professor-header{flex-direction:column;gap:1rem;padding:1rem 0;margin-bottom:1rem;text-align:center}}.professor-header h1{color:#3be9e3;font-size:1.8rem;font-weight:700;margin:0;line-height:1.2}@media (max-width: 768px){.professor-header h1{font-size:1.4rem}}@media (max-width: 480px){.professor-header h1{font-size:1.2rem}}.profile-btn,.logout-btn,.admin-btn{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.2rem;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;border:1px solid rgba(38,197,192,.3)}@media (max-width: 768px){.profile-btn,.logout-btn,.admin-btn{padding:.8rem 1rem;font-size:.85rem}}.profile-btn{background:#26c5c01a;color:#26c5c0}.profile-btn:hover{background:#26c5c033;border-color:#26c5c0;transform:translateY(-2px);box-shadow:0 4px 15px #26c5c033}.admin-btn{background:#a855f71a;color:#a855f7;border-color:#a855f74d}.admin-btn:hover{background:#a855f733;border-color:#a855f780;transform:translateY(-2px);box-shadow:0 4px 15px #a855f733}.professor-nav{display:flex;gap:.5rem;margin-bottom:2rem;padding:.5rem;background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 768px){.professor-nav{gap:.3rem;padding:.3rem;border-radius:12px}}.nav-item.active{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border-color:#3be9e3;box-shadow:0 4px 15px #26c5c04d}.professor-main{width:100%}.classes-summary{display:flex;align-items:center}.total-classes{font-size:.9rem;color:#3be9e3;font-weight:600;background:#26c5c01a;padding:.4rem .8rem;border-radius:8px;border:1px solid rgba(38,197,192,.2)}.filter-toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s ease;min-height:40px}@media (max-width: 768px){.filter-toggle-btn{width:100%;max-width:200px;justify-content:center}}.filter-toggle-btn:hover{background:#26c5c033;border-color:#26c5c0;transform:translateY(-1px)}.filters-container{background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:12px;padding:1rem;margin-top:1rem;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filters-container h4{color:#3be9e3;font-size:.95rem;font-weight:600;margin:0 0 .8rem}.filter-options{display:flex;flex-wrap:wrap;gap:.8rem}@media (max-width: 768px){.filter-options{flex-direction:column;gap:.6rem}}.filter-option{display:flex;align-items:center;gap:.6rem;cursor:pointer;padding:.5rem .8rem;border-radius:8px;transition:all .3s ease;background:#0007144d;border:1px solid rgba(38,197,192,.1)}.filter-option:hover{background:#26c5c01a;border-color:#26c5c033}.filter-option input[type=checkbox]{width:16px;height:16px;accent-color:#26C5C0;cursor:pointer}.filter-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#ececec}.class-status.small{font-size:.7rem!important;padding:.2rem .5rem}.count{color:#ececec;opacity:.7;font-size:.8rem}.classes-section{width:100%}.classes-header{margin-bottom:1.5rem;text-align:center}.classes-header h2{font-size:1.5rem;font-weight:700;color:#3be9e3;margin-bottom:.5rem;line-height:1.2}.classes-header p{font-size:.95rem;color:#ececec;opacity:.8;margin:0}.classes-list{display:flex;flex-direction:column;gap:1rem}@media (max-width: 768px){.classes-list{gap:1.2rem}}.class-item{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.5rem;display:flex;align-items:center;justify-content:space-between;transition:all .3s ease;min-height:80px}@media (max-width: 768px){.class-item{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.2rem;border-radius:12px}}.class-item:hover{background:#26c5c01a;border-color:#26c5c033;transform:translateY(-2px);box-shadow:0 8px 25px #26c5c01a}.class-info{display:flex;align-items:center;gap:1rem;flex:1}@media (max-width: 768px){.class-info{width:100%}}.class-icon{width:40px;height:40px;background:linear-gradient(135deg,#26c5c0,#3be9e3);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#000714;flex-shrink:0}@media (max-width: 768px){.class-icon{width:36px;height:36px}}.class-details{flex:1;min-width:0}.class-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;gap:1rem}@media (max-width: 768px){.class-main{flex-direction:column;align-items:flex-start;gap:.5rem}}.class-main h4{font-size:1.1rem;font-weight:600;color:#ececec;margin:0}.class-status{padding:.3rem .8rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;flex-shrink:0}.class-status.completed{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.class-status.scheduled{background:#3b82f633;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.class-status.cancelled{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.class-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}@media (max-width: 768px){.class-meta{flex-direction:column;align-items:flex-start;gap:.5rem}}.class-meta span{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:#ececec;opacity:.8}.class-meta svg{width:12px;height:12px;flex-shrink:0}.class-subject{background:#26c5c033;color:#3be9e3;padding:.2rem .6rem;border-radius:12px;font-size:.75rem!important;font-weight:500;border:1px solid rgba(38,197,192,.3)}.class-observation{background:#3b82f633;color:#3b82f6;padding:.2rem .6rem;border-radius:12px;font-size:.75rem!important;font-weight:500;border:1px solid rgba(59,130,246,.3);font-style:italic}.class-actions{display:flex;gap:.5rem;flex-shrink:0}@media (max-width: 768px){.class-actions{width:100%;justify-content:flex-end}}.notification-btn,.edit-btn,.details-btn{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.6rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;min-width:40px;min-height:40px}@media (max-width: 768px){.notification-btn,.edit-btn,.details-btn{min-width:44px;min-height:44px}}.notification-btn:hover{background:#26c5c033;border-color:#26c5c0;transform:translateY(-2px);box-shadow:0 4px 15px #26c5c033}.edit-btn:hover,.details-btn:hover{background:#3b82f633;border-color:#3b82f6;color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 15px #3b82f633}.block-content,.edit-content{display:flex;justify-content:center;padding:2rem 0}.block-card,.edit-card{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:2rem;text-align:center;max-width:400px;width:100%;transition:all .3s ease}@media (max-width: 768px){.block-card,.edit-card{padding:1.5rem;border-radius:12px}}.block-card:hover,.edit-card:hover{background:#26c5c014;border-color:#26c5c033;transform:translateY(-2px);box-shadow:0 8px 25px #26c5c01a}.block-card svg,.edit-card svg{color:#3be9e3;margin-bottom:1rem}.block-card h3,.edit-card h3{font-size:1.3rem;font-weight:600;color:#ececec;margin:0 0 .8rem}.block-card p,.edit-card p{font-size:.9rem;color:#ececec;opacity:.8;margin:0 0 1.5rem;line-height:1.4}.block-btn,.edit-schedule-btn{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.8rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;box-shadow:0 4px 15px #26c5c04d;min-height:44px;margin:0 auto}@media (max-width: 768px){.block-btn,.edit-schedule-btn{width:100%;max-width:250px;padding:1rem 1.5rem;font-size:1rem}}.block-btn:hover,.edit-schedule-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #26c5c066}.notification{position:fixed;top:100px;right:20px;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;padding:1rem 1.5rem;border-radius:12px;font-weight:600;box-shadow:0 8px 25px #26c5c04d;z-index:1000;animation:slideInRight .3s ease-out;max-width:calc(100vw - 2rem);word-wrap:break-word}.notification-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1001;padding:1rem}.notification-modal{background:#000714;border:1px solid rgba(38,197,192,.3);border-radius:20px;width:100%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0009;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.notification-modal-header{padding:1.5rem;border-bottom:1px solid rgba(38,197,192,.2);display:flex;align-items:center;justify-content:space-between;background:#26c5c00d;position:relative}.notification-modal-header h2{color:#3be9e3;font-size:1.4rem;font-weight:700;margin:0}.close-modal-btn{background:none;border:none;color:#ececec;font-size:1.5rem;cursor:pointer;padding:.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.close-modal-btn:hover{background:#ef444433;color:#ef4444;transform:scale(1.1)}.notification-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.student-info{background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:12px;padding:1rem;margin-bottom:1.5rem}.student-info-item{display:flex;align-items:center;gap:.8rem;margin-bottom:.8rem;color:#ececec}.student-info-item:last-child{margin-bottom:0}.student-info-item svg{color:#3be9e3;flex-shrink:0}.student-info-item span{font-size:1rem;font-weight:500}.message-input-section{margin-bottom:1rem}.message-input-section label{display:block;color:#3be9e3;font-size:1rem;font-weight:600;margin-bottom:.8rem}.notification-textarea{width:100%;background:#00071480;border:1px solid rgba(38,197,192,.3);border-radius:10px;padding:1rem;color:#ececec;font-size:.95rem;font-family:inherit;resize:vertical;min-height:100px;box-sizing:border-box;transition:all .3s ease}.notification-textarea:focus{outline:none;border-color:#3be9e3;background:#000714b3;box-shadow:0 0 0 2px #3be9e31a}.notification-textarea::placeholder{color:#ececec;opacity:.5}.char-count{text-align:right;font-size:.8rem;color:#ececec;opacity:.6;margin-top:.5rem}.notification-modal-actions{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid rgba(38,197,192,.2);background:#26c5c00d}.cancel-notification-btn{flex:1;background:#6c757d33;color:#6c757d;border:1px solid rgba(108,117,125,.3);padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px}.cancel-notification-btn:hover{background:#6c757d4d;border-color:#6c757d80;transform:translateY(-2px)}.send-notification-btn{flex:1;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 15px #26c5c04d}.send-notification-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #26c5c066}.send-notification-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #26c5c033}@media (max-width: 768px){.notification{top:80px;right:1rem;left:1rem;font-size:.9rem;padding:.8rem 1rem}.notification-modal{margin:.5rem;max-width:calc(100vw - 1rem);max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 4rem);border-radius:15px}.notification-modal-overlay{padding-top:calc(env(safe-area-inset-top) + 2rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2rem);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.notification-modal-header{padding:1rem}.notification-modal-header h2{font-size:1.2rem}.notification-modal-content{padding:1rem}.student-info{padding:.8rem;margin-bottom:1.2rem}.student-info-item span,.message-input-section label{font-size:.9rem}.notification-textarea{font-size:.9rem;padding:.8rem}.notification-modal-actions{flex-direction:column;padding:1rem}.cancel-notification-btn,.send-notification-btn{width:100%}}.monogram-bg{position:fixed;bottom:-100px;right:-100px;width:400px;height:400px;opacity:.03;pointer-events:none;z-index:0;animation:float 20s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}@media (max-width: 1024px){.professor-content{padding:1rem;max-width:100%}.section-header h2,.classes-header h2{font-size:1.3rem}}@media (max-width: 768px){.professor-content{padding:1rem}.professor-nav{margin-bottom:1.5rem}.section-header h2,.classes-header h2{font-size:1.2rem;line-height:1.3}.section-header p,.classes-header p{font-size:.9rem;line-height:1.4}}@media (max-width: 480px){.professor-content{padding:.8rem}.professor-nav{margin-bottom:1.2rem}.section-header h2,.classes-header h2{font-size:1.1rem}.class-main h4{font-size:1rem}.monogram-bg{width:150px;height:150px}}.loading-spinner{width:50px;height:50px;border:3px solid rgba(38,197,192,.3);border-top:3px solid #26C5C0;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.verify-section{width:100%}.pending-count{margin-top:.8rem;display:flex;justify-content:center}.pending-badge{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3);padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase}.pending-classes-list{display:flex;flex-direction:column;gap:1rem}@media (max-width: 768px){.pending-classes-list{gap:1.2rem}}.pending-class-item{background:#fbbf240d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(251,191,36,.2);border-radius:15px;padding:1.5rem;display:flex;align-items:center;justify-content:space-between;transition:all .3s ease;min-height:80px}@media (max-width: 768px){.pending-class-item{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.2rem;border-radius:12px}}.pending-class-item:hover{background:#fbbf241a;border-color:#fbbf244d;transform:translateY(-2px);box-shadow:0 8px 25px #fbbf241a}.pending-class-info{display:flex;align-items:center;gap:1rem;flex:1}@media (max-width: 768px){.pending-class-info{width:100%}}.pending-class-icon{width:40px;height:40px;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#000714;flex-shrink:0}@media (max-width: 768px){.pending-class-icon{width:36px;height:36px}}.pending-class-details{flex:1;min-width:0}.pending-class-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;gap:1rem}@media (max-width: 768px){.pending-class-main{flex-direction:column;align-items:flex-start;gap:.5rem}}.pending-class-main h4{font-size:1.1rem;font-weight:600;color:#ececec;margin:0}.pending-class-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}@media (max-width: 768px){.pending-class-meta{flex-direction:column;align-items:flex-start;gap:.5rem}}.pending-class-meta span{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:#ececec;opacity:.8}.pending-class-meta svg{width:12px;height:12px;flex-shrink:0}.pending-class-actions{display:flex;gap:.8rem;flex-shrink:0}@media (max-width: 768px){.pending-class-actions{width:100%;justify-content:flex-end}}.accept-btn,.reject-btn{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;border:1px solid}@media (max-width: 768px){.accept-btn,.reject-btn{padding:.8rem 1rem;font-size:.85rem;min-width:100px;justify-content:center}}.accept-btn{background:#22c55e1a;color:#22c55e;border-color:#22c55e4d}.accept-btn:hover{background:#22c55e33;border-color:#22c55e80;transform:translateY(-2px);box-shadow:0 4px 15px #22c55e33}.reject-btn{background:#ef44441a;color:#ef4444;border-color:#ef44444d}.reject-btn:hover{background:#ef444433;border-color:#ef444480;transform:translateY(-2px);box-shadow:0 4px 15px #ef444433}.schedule-editor{width:100%}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}@media (max-width: 768px){.schedule-grid{grid-template-columns:1fr;gap:1rem}}.day-schedule-card{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.2rem;transition:all .3s ease}@media (max-width: 768px){.day-schedule-card{padding:1rem;border-radius:12px}}.day-schedule-card:hover{background:#26c5c014;border-color:#26c5c033;transform:translateY(-2px);box-shadow:0 8px 25px #26c5c01a}.day-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.8rem;border-bottom:1px solid rgba(38,197,192,.1)}.day-header h4{color:#3be9e3;font-size:1.1rem;font-weight:600;margin:0}.hours-count{background:#26c5c033;color:#3be9e3;padding:.3rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid rgba(38,197,192,.3)}.day-hours{min-height:80px;margin-bottom:1rem}.no-hours{color:#ececec;opacity:.6;font-size:.9rem;text-align:center;padding:1.5rem 0;font-style:italic;margin:0}.hours-list{display:flex;flex-wrap:wrap;gap:.5rem}.hour-item{display:flex;align-items:center;gap:.4rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:8px;padding:.4rem .6rem;font-size:.85rem;color:#ececec;transition:all .3s ease}.hour-item:hover{background:#26c5c026;border-color:#26c5c04d}.remove-hour-btn{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#ef4444;padding:.2rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;min-width:20px;min-height:20px}.remove-hour-btn:hover{background:#ef444433;border-color:#ef44444d;transform:scale(1.1)}.add-hour-section{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(38,197,192,.1)}.hour-select{width:100%;background:#00071480;border:1px solid rgba(38,197,192,.3);border-radius:8px;padding:.6rem .8rem;color:#ececec;font-size:.9rem;cursor:pointer;transition:all .3s ease}.hour-select:focus{outline:none;border-color:#3be9e3;background:#000714b3;box-shadow:0 0 0 2px #3be9e31a}.hour-select option{background:#000714;color:#ececec;padding:.5rem}.schedule-actions{display:flex;justify-content:center;padding:2rem 0;border-top:1px solid rgba(38,197,192,.1)}.save-schedule-btn{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.6rem;transition:all .3s ease;box-shadow:0 4px 15px #26c5c04d;min-height:50px;min-width:200px}@media (max-width: 768px){.save-schedule-btn{width:100%;max-width:300px;padding:1.2rem 2rem}}.save-schedule-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #26c5c066}.save-schedule-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.block-section{width:100%}.blocked-count{margin-top:.8rem;display:flex;justify-content:center}.blocked-badge{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3);padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase}.blocked-hours-list{display:flex;flex-direction:column;gap:1rem}@media (max-width: 768px){.blocked-hours-list{gap:1.2rem}}.blocked-hour-item{background:#ef44440d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(239,68,68,.2);border-radius:15px;padding:1.5rem;display:flex;align-items:center;justify-content:space-between;transition:all .3s ease;min-height:80px}@media (max-width: 768px){.blocked-hour-item{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.2rem;border-radius:12px}}.blocked-hour-item:hover{background:#ef444414;border-color:#ef44444d;transform:translateY(-2px);box-shadow:0 8px 25px #ef44441a}.blocked-hour-info{display:flex;align-items:center;gap:1rem;flex:1;width:100%}.blocked-hour-icon{width:40px;height:40px;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}@media (max-width: 768px){.blocked-hour-icon{width:36px;height:36px}}.blocked-hour-details{flex:1;min-width:0}.blocked-hour-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;gap:1rem}@media (max-width: 768px){.blocked-hour-main{flex-direction:column;align-items:flex-start;gap:.5rem}}.blocked-hour-main h4{font-size:1.1rem;font-weight:600;color:#ececec;margin:0}.blocked-hour-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}@media (max-width: 768px){.blocked-hour-meta{flex-direction:column;align-items:flex-start;gap:.5rem}}.blocked-hour-meta span{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:#ececec;opacity:.8}.blocked-hour-meta svg{width:12px;height:12px;flex-shrink:0}.blocked-reason{background:#ef444433;color:#ef4444;padding:.2rem .6rem;border-radius:12px;font-size:.75rem!important;font-weight:500;border:1px solid rgba(239,68,68,.3);font-style:italic}.blocked-hour-actions{display:flex;gap:.5rem;flex-shrink:0}@media (max-width: 768px){.blocked-hour-actions{width:100%;justify-content:flex-end}}.unblock-btn{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3);padding:.6rem 1rem;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .3s ease;min-height:40px;display:flex;align-items:center;gap:.4rem}@media (max-width: 768px){.unblock-btn{min-width:100px;justify-content:center}}.unblock-btn:hover{background:#22c55e33;border-color:#22c55e80;transform:translateY(-2px);box-shadow:0 4px 15px #22c55e33}.add-block-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;box-shadow:0 4px 15px #ef44444d;min-height:44px;white-space:nowrap}.block-section .header-actions .add-block-btn{padding:.8rem 1.5rem;font-size:.95rem;min-width:auto;max-width:none}@media (max-width: 768px){.add-block-btn{padding:.7rem 1.2rem;font-size:.9rem}.block-section .header-actions{flex-direction:column;gap:1rem;align-items:stretch}.block-section .header-actions .add-block-btn{width:100%}}.add-block-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ef444466}.block-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1002;padding:1rem}.block-modal{background:#000714;border:1px solid rgba(239,68,68,.3);border-radius:20px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0009;animation:modalSlideIn .3s ease-out}.block-modal-header{padding:1.5rem;border-bottom:1px solid rgba(239,68,68,.2);display:flex;align-items:center;justify-content:space-between;background:#ef44440d;position:relative}.block-modal-header h2{color:#ef4444;font-size:1.4rem;font-weight:700;margin:0;display:flex;align-items:center;gap:.8rem}.block-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.date-time-selection{margin-bottom:2rem}.input-group{margin-bottom:1.5rem}.input-group label{display:block;color:#ef4444;font-size:1rem;font-weight:600;margin-bottom:.8rem}.input-group input,.input-group select,.input-group textarea{width:100%;background:#00071480;border:1px solid rgba(239,68,68,.3);border-radius:10px;padding:.8rem;color:#ececec;font-size:.95rem;font-family:inherit;box-sizing:border-box;transition:all .3s ease}.input-group input[type=time]{cursor:pointer}.input-group input[type=time]::-webkit-calendar-picker-indicator{background-color:#ef4444;border-radius:3px;cursor:pointer;filter:invert(1)}.input-group input[type=time]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{outline:none;border-color:#ef4444;background:#000714b3;box-shadow:0 0 0 2px #ef44441a}.input-group textarea{resize:vertical;min-height:80px}.input-group textarea::placeholder{color:#ececec;opacity:.5}.existing-classes{background:#ef44440d;border:1px solid rgba(239,68,68,.1);border-radius:12px;padding:1.5rem;margin-top:1rem}.existing-classes h4{color:#ef4444;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.no-classes{color:#ececec;opacity:.6;font-style:italic;text-align:center;padding:1rem;margin:0}.classes-preview{display:flex;flex-direction:column;gap:.8rem}.class-preview-item{display:flex;align-items:center;gap:1rem;background:#0007144d;padding:.8rem;border-radius:8px;border:1px solid rgba(239,68,68,.1)}@media (max-width: 768px){.class-preview-item{flex-direction:column;align-items:flex-start;gap:.5rem}}.class-preview-item .time{font-weight:600;color:#3be9e3;min-width:60px}.class-preview-item .student{flex:1;color:#ececec}.class-preview-item .status{padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase}.class-preview-item .status.scheduled{background:#3b82f633;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.class-preview-item .status.completed{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.class-preview-item .status.cancelled{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.class-preview-item .status.pending{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.remove-block-confirmation{text-align:center}.block-info h4{color:#ef4444;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.block-details{background:#ef44440d;border:1px solid rgba(239,68,68,.1);border-radius:12px;padding:1.5rem;text-align:left}.block-details p{color:#ececec;margin:0 0 .8rem;font-size:1rem}.block-details p:last-child{margin-bottom:0}.block-modal-actions{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid rgba(239,68,68,.2);background:#ef44440d}@media (max-width: 768px){.block-modal-actions{flex-direction:column}}.cancel-block-btn{flex:1;background:#6c757d33;color:#6c757d;border:1px solid rgba(108,117,125,.3);padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px}.cancel-block-btn:hover{background:#6c757d4d;border-color:#6c757d80;transform:translateY(-2px)}.confirm-block-btn{flex:1;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 15px #ef44444d}.confirm-block-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.confirm-block-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #ef444433}.class-details-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1003;padding:1rem}.class-details-modal{background:#000714;border:1px solid rgba(38,197,192,.3);border-radius:20px;width:100%;max-width:600px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0009;animation:modalSlideIn .3s ease-out}.class-details-modal-header{padding:1.5rem;border-bottom:1px solid rgba(38,197,192,.2);display:flex;align-items:center;justify-content:space-between;background:#26c5c00d;position:relative}.class-details-modal-header h2{color:#3be9e3;font-size:1.5rem;font-weight:700;margin:0}.class-details-modal-content{flex:1;overflow-y:auto;padding:1.5rem;padding-bottom:0}.class-details-main-info{margin-bottom:2rem}.class-details-title{display:flex;align-items:center;gap:1rem;padding:1rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:12px}.class-details-icon{width:50px;height:50px;background:linear-gradient(135deg,#26c5c0,#3be9e3);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#000714;flex-shrink:0}.class-details-title h3{color:#ececec;font-size:1.3rem;font-weight:600;margin:0 0 .5rem}.class-status-badge{padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.class-status-badge.completed{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.class-status-badge.scheduled{background:#3b82f633;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.class-status-badge.cancelled{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.class-status-badge.pending{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.class-details-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}.class-details-item{background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:12px;padding:1rem;transition:all .3s ease}.class-details-item:hover{background:#26c5c014;border-color:#26c5c033}.class-details-item.full-width{grid-column:1 / -1}.class-details-label{display:flex;align-items:center;gap:.6rem;color:#3be9e3;font-size:.9rem;font-weight:600;margin-bottom:.8rem}.class-details-label svg{flex-shrink:0}.class-details-value{color:#ececec;font-size:1rem;font-weight:500;line-height:1.4}.class-details-value.observation{font-style:italic;opacity:.9}.verification-badge{padding:.3rem .6rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.verification-badge.verified{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.verification-badge.not-verified{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.class-details-actions{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid rgba(38,197,192,.2);background:#26c5c00d;position:sticky;bottom:0;justify-content:center}.cancel-class-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px;box-shadow:0 4px 15px #ef44444d}.cancel-class-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.class-details-close-btn{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.8rem 2rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;min-height:44px;box-shadow:0 4px 15px #26c5c04d}.class-details-close-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #26c5c066}@media (max-width: 768px){.class-details-modal{margin:.5rem;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 4rem);border-radius:15px}.class-details-modal-overlay{padding-top:calc(env(safe-area-inset-top) + 2rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2rem);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.class-details-modal-header{padding:1rem}.class-details-modal-header h2{font-size:1.3rem}.class-details-modal-content{padding:1rem}.class-details-info-grid{grid-template-columns:1fr;gap:1rem;margin-bottom:3rem}.class-details-title{flex-direction:column;text-align:center;gap:.8rem}.class-details-icon{width:45px;height:45px}.class-details-title h3{font-size:1.2rem}.class-details-item{padding:.8rem}.cancel-class-btn,.class-details-close-btn{width:100%;max-width:280px}.class-details-actions{flex-direction:column;align-items:center;padding:1rem}}@media (max-width: 480px){.class-details-modal{margin:.3rem;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 5rem)}.class-details-modal-overlay{padding-top:calc(env(safe-area-inset-top) + 2.5rem);padding-bottom:calc(env(safe-area-inset-bottom) + 2.5rem);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.class-details-modal-header{padding:.8rem}.class-details-modal-header h2{font-size:1.2rem}.class-details-modal-content{padding:.8rem .8rem 1.5rem}.class-details-icon{width:40px;height:40px}.class-details-title h3{font-size:1.1rem}.class-details-value{font-size:.9rem}}.datetime-display{display:flex;align-items:center;gap:.5rem}.edit-datetime-btn{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.25rem;border-radius:4px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:28px;height:28px}.edit-datetime-btn:hover{background:#26c5c033;border-color:#26c5c080}.edit-datetime-btn:active{transform:scale(.95)}.datetime-edit-container{display:flex;flex-direction:column;gap:.75rem;width:100%}.datetime-inputs{display:flex;gap:.5rem;flex-wrap:wrap}.datetime-input{flex:1;min-width:120px;padding:.5rem;background:#ffffff0d;border:1px solid rgba(38,197,192,.3);border-radius:6px;color:#ececec;font-size:.9rem;transition:all .2s ease}.datetime-input:focus{outline:none;border-color:#26c5c0;background:#ffffff14;box-shadow:0 0 0 2px #26c5c033}.datetime-input::placeholder{color:#ececec80}.datetime-actions{display:flex;gap:.5rem;justify-content:flex-end}.save-datetime-btn{background:#26c5c0;color:#000714;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.9rem}.save-datetime-btn:hover:not(:disabled){background:#20a8a3;transform:translateY(-1px)}.save-datetime-btn:disabled{background:#26c5c04d;cursor:not-allowed;transform:none}.cancel-datetime-btn{background:transparent;color:#ececec;border:1px solid rgba(236,236,236,.3);padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.9rem}.cancel-datetime-btn:hover:not(:disabled){background:#ececec1a;border-color:#ececec80}.cancel-datetime-btn:disabled{opacity:.5;cursor:not-allowed}.finish-class-btn{background:#10b981;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;font-size:.9rem}.finish-class-btn:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.finish-class-btn:active{transform:translateY(0);box-shadow:0 2px 6px #10b9814d}@media (max-width: 480px){.datetime-inputs{flex-direction:column}.datetime-input{min-width:100%}.datetime-actions{flex-direction:column}.save-datetime-btn,.cancel-datetime-btn{width:100%}}.admin-container{min-height:100vh;background:#000714;color:#ececec;position:relative;overflow-x:hidden;-webkit-overflow-scrolling:touch}*{-webkit-tap-highlight-color:rgba(38,197,192,.2)}button,.user-item,.nav-item{touch-action:manipulation}.admin-content{max-width:1200px;margin:0 auto;padding:1rem;width:100%;box-sizing:border-box}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0;margin-bottom:1.5rem;border-bottom:1px solid rgba(38,197,192,.2)}@media (max-width: 768px){.admin-header{flex-direction:column;gap:1rem;padding:1rem 0;margin-bottom:1rem;text-align:center}}.header-left{display:flex;align-items:center;gap:1rem}@media (max-width: 768px){.header-left{flex-direction:column;gap:.8rem}}.logo{display:flex;align-items:center;justify-content:center}.logo-image{height:40px;width:auto;object-fit:contain}@media (max-width: 768px){.logo-image{height:35px}}.admin-header h1{color:#3be9e3;font-size:1.8rem;font-weight:700;margin:0;line-height:1.2}@media (max-width: 768px){.admin-header h1{font-size:1.4rem}}@media (max-width: 480px){.admin-header h1{font-size:1.2rem}}.header-right{display:flex;align-items:center;gap:.8rem}@media (max-width: 768px){.header-right{justify-content:center;width:100%}}.profile-btn,.logout-btn{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.2rem;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;border:1px solid rgba(38,197,192,.3)}@media (max-width: 768px){.profile-btn,.logout-btn{padding:.8rem 1rem;font-size:.85rem}}.profile-btn{background:#26c5c01a;color:#3be9e3}.profile-btn:hover{background:#26c5c033;border-color:#3be9e3;transform:translateY(-2px);box-shadow:0 4px 15px #26c5c033}.logout-btn{background:#ef44441a;color:#ef4444;border-color:#ef44444d}.logout-btn:hover{background:#ef444433;border-color:#ef444480;transform:translateY(-2px);box-shadow:0 4px 15px #ef444433}.admin-nav{display:flex;gap:.5rem;margin-bottom:2rem;padding:.5rem;background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 768px){.admin-nav{gap:.3rem;padding:.3rem;border-radius:12px}}.nav-item{display:flex;align-items:center;gap:.5rem;padding:.8rem 1.2rem;border:1px solid rgba(38,197,192,.2);background:#0007144d;color:#ececec;border-radius:10px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500;white-space:nowrap;min-height:44px;flex-shrink:0}@media (max-width: 768px){.nav-item{padding:.6rem .8rem;font-size:.8rem;gap:.3rem}.nav-item span{display:none}.nav-item{justify-content:center;min-width:44px}}.nav-item:hover{background:#26c5c01a;border-color:#26c5c04d;transform:translateY(-2px)}.nav-item.active{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border-color:#26c5c0;box-shadow:0 4px 15px #26c5c04d}.nav-item.active:hover{transform:translateY(-2px);box-shadow:0 6px 20px #26c5c066}.admin-main{width:100%}.section-header{margin-bottom:1.5rem;text-align:center}@media (max-width: 768px){.section-header{margin-bottom:2rem}}.section-header h2{font-size:1.5rem;font-weight:700;color:#3be9e3;margin-bottom:.5rem;line-height:1.2}.section-header p{font-size:.95rem;color:#ececec;opacity:.8;margin:0}.users-section{width:100%}.header-content{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem}@media (max-width: 768px){.header-content{flex-direction:column;gap:1rem;align-items:center;text-align:center}}.header-text{flex:1}@media (max-width: 768px){.header-text{width:100%}}.header-actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}@media (max-width: 768px){.header-actions{width:100%;justify-content:center;flex-direction:column;gap:.8rem}}.search-container{display:flex;align-items:center;gap:.5rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.3);border-radius:10px;padding:.6rem 1rem}.search-container:focus-within{border-color:#3be9e3;box-shadow:0 0 0 2px #26c5c01a}.search-input{background:transparent;border:none;outline:none;color:#ececec;font-size:.9rem;min-width:200px}@media (max-width: 768px){.search-input{min-width:150px}}.search-input::placeholder{color:#ececec;opacity:.6}.count-badge{background:#26c5c033;color:#3be9e3;border:1px solid rgba(38,197,192,.3);padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase}.users-list{display:flex;flex-direction:column;gap:1rem}@media (max-width: 768px){.users-list{gap:1.2rem}}.user-item{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;padding:1.5rem;display:flex;align-items:center;justify-content:space-between;min-height:80px}@media (max-width: 768px){.user-item{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.2rem;border-radius:12px}}.user-item:hover{background:#26c5c01a;border-color:#26c5c033}.user-info{display:flex;align-items:center;gap:1rem;flex:1}@media (max-width: 768px){.user-info{width:100%}}.user-avatar{width:50px;height:50px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;flex-shrink:0}.user-avatar img{width:100%;height:100%;object-fit:cover}@media (max-width: 768px){.user-avatar{width:40px;height:40px}}.user-details{flex:1;min-width:0}.user-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;gap:1rem}@media (max-width: 768px){.user-main{flex-direction:column;align-items:flex-start;gap:.5rem}}.user-main h4{font-size:1.1rem;font-weight:600;color:#ececec;margin:0}.role-badge{padding:.3rem .8rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;flex-shrink:0}.role-badge.admin{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.role-badge.teacher{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.role-badge.student{background:#3b82f633;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.user-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}@media (max-width: 768px){.user-meta{flex-direction:column;align-items:flex-start;gap:.5rem}}.user-meta span{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:#ececec;opacity:.8}.user-meta svg{width:12px;height:12px;flex-shrink:0}.user-balance{background:#fbbf2433;color:#fbbf24;padding:.2rem .6rem;border-radius:12px;font-size:.75rem!important;font-weight:500;border:1px solid rgba(251,191,36,.3)}.user-actions{display:flex;gap:.5rem;flex-shrink:0}@media (max-width: 768px){.user-actions{width:100%;justify-content:flex-end}}.view-btn,.edit-btn{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#26c5c0;padding:.6rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px}@media (max-width: 768px){.view-btn,.edit-btn{min-width:44px;min-height:44px}}.view-btn:hover{background:#26c5c033;border-color:#26c5c0}.edit-btn:hover{background:#3b82f633;border-color:#3b82f6;color:#3b82f6}.register-section{width:100%}.register-form-container{max-width:800px;margin:0 auto}.register-form{background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:20px;padding:2rem}@media (max-width: 768px){.register-form{padding:1.5rem;border-radius:15px}}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media (max-width: 768px){.form-row{grid-template-columns:1fr;gap:1rem}}.form-group{margin-bottom:1.5rem}.form-group label{display:block;color:#3be9e3;font-size:1rem;font-weight:600;margin-bottom:.8rem}.form-group input,.form-group textarea{width:100%;background:#00071480;border:1px solid rgba(38,197,192,.3);border-radius:10px;padding:.8rem;color:#ececec;font-size:.95rem;font-family:inherit;box-sizing:border-box;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3be9e3;background:#000714b3;box-shadow:0 0 0 2px #26c5c01a}.form-group input::placeholder,.form-group textarea::placeholder{color:#ececec;opacity:.5}.form-group textarea{resize:vertical;min-height:100px}.subjects-selection{background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:12px;padding:1.5rem;margin-top:.5rem}.subjects-selection h4{color:#3be9e3;font-size:1rem;font-weight:600;margin:0 0 1rem}.subjects-grid{display:flex;flex-wrap:wrap;gap:.8rem}.subject-btn{background:#26c5c01a;border:1px solid rgba(38,197,192,.3);color:#3be9e3;padding:.6rem 1rem;border-radius:25px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.subject-btn.available:hover{background:#26c5c033;border-color:#3be9e3;transform:translateY(-2px)}.subject-btn.selected{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border-color:#26c5c0}.subject-btn.selected:hover{background:linear-gradient(135deg,#26c5c0,#3be9e3);transform:translateY(-2px)}.available-subjects{margin-bottom:1.5rem}.selected-subjects{padding-top:1.5rem;border-top:1px solid rgba(38,197,192,.2)}.form-actions{display:flex;justify-content:center;padding-top:2rem;border-top:1px solid rgba(38,197,192,.1)}.register-btn{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.6rem;transition:all .3s ease;box-shadow:0 4px 15px #26c5c04d;min-height:50px;min-width:200px}@media (max-width: 768px){.register-btn{width:100%;max-width:300px;padding:1.2rem 2rem}}.register-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #26c5c066}.register-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #26c5c033}.user-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1001;padding:1rem}.user-modal{background:#000714;border:1px solid rgba(38,197,192,.3);border-radius:20px;width:100%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 60px #0009}.user-modal-header{padding:1.5rem;border-bottom:1px solid rgba(38,197,192,.2);display:flex;align-items:center;justify-content:space-between;background:#26c5c00d;position:relative}.user-modal-header h2{color:#3be9e3;font-size:1.4rem;font-weight:700;margin:0}.close-modal-btn{background:none;border:none;color:#ececec;font-size:1.5rem;cursor:pointer;padding:.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%}.close-modal-btn:hover{background:#ef444433;color:#ef4444}.user-modal-content{flex:1;overflow-y:auto;padding:1.5rem}.user-modal-info{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem;background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:12px}.user-modal-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;flex-shrink:0}.user-modal-avatar img{width:100%;height:100%;object-fit:cover}.user-modal-details h3{color:#ececec;font-size:1.3rem;font-weight:600;margin:0 0 .5rem}.user-modal-data{display:flex;flex-direction:column;gap:1rem}.data-item{display:flex;align-items:center;gap:.8rem;background:#26c5c00d;padding:1rem;border-radius:10px;border:1px solid rgba(38,197,192,.1)}.data-item svg{color:#3be9e3;flex-shrink:0}.data-item span{color:#ececec;font-size:.95rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;background:#26c5c00d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(38,197,192,.1);border-radius:15px;color:#ececec}@media (max-width: 768px){.empty-state{padding:2.5rem 1.5rem;border-radius:12px}}.empty-state svg{color:#3be9e3;margin-bottom:1rem;opacity:.7}.empty-state h3{font-size:1.2rem;font-weight:600;color:#3be9e3;margin:0 0 .5rem}.empty-state p{font-size:.9rem;opacity:.8;margin:0}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.loading-spinner{width:50px;height:50px;border:3px solid rgba(38,197,192,.3);border-top:3px solid #3BE9E3;border-radius:50%;margin-bottom:1rem}.loading-text{color:#3be9e3;font-size:1.2rem;font-weight:500}.loading-spinner.small{width:16px;height:16px;border-width:2px;margin-bottom:0}.error-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.error-icon{color:#ef4444;margin-bottom:1rem}.error-screen h2,.error-screen h3{color:#ef4444;margin-bottom:.5rem}.error-screen p{color:#ececec;opacity:.8}.retry-btn{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.8rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #26c5c04d;min-height:44px;margin-top:1rem}.retry-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #26c5c066}.notification{position:fixed;top:100px;right:20px;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;padding:1rem 1.5rem;border-radius:12px;font-weight:600;box-shadow:0 8px 25px #26c5c04d;z-index:1000;max-width:calc(100vw - 2rem);word-wrap:break-word}@media (max-width: 768px){.notification{top:80px;right:1rem;left:1rem;font-size:.9rem;padding:.8rem 1rem}}.monogram-bg{position:fixed;bottom:-100px;right:-100px;width:400px;height:400px;opacity:.03;pointer-events:none;z-index:0}.monogram-bg img{width:100%;height:100%;object-fit:contain}@media (max-width: 768px){.monogram-bg{width:200px;height:200px;bottom:-30px;right:-30px}}@media (max-width: 1024px){.admin-content{padding:1rem;max-width:100%}.section-header h2{font-size:1.3rem}}@media (max-width: 768px){.admin-content{padding:1rem}.admin-nav{margin-bottom:1.5rem}.section-header h2{font-size:1.2rem;line-height:1.3}.section-header p{font-size:.9rem;line-height:1.4}}@media (max-width: 480px){.admin-content{padding:.8rem}.admin-nav{margin-bottom:1.2rem}.section-header h2{font-size:1.1rem}.user-main h4{font-size:1rem}.monogram-bg{width:150px;height:150px}}.edit-actions-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}.edit-action-btn{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.5rem;background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:12px;cursor:pointer;text-align:left;width:100%;color:#ececec}.edit-action-btn:hover{background:#26c5c01a;border-color:#26c5c033}.edit-action-btn svg{color:#3be9e3;flex-shrink:0}.edit-action-btn span{font-size:1rem;font-weight:600;color:#ececec}.edit-action-btn small{font-size:.85rem;color:#ececec;opacity:.7}.edit-action-btn.balance-btn:hover{background:#fbbf241a;border-color:#fbbf244d}.edit-action-btn.balance-btn:hover svg{color:#fbbf24}.edit-action-btn.password-btn:hover{background:#ef44441a;border-color:#ef44444d}.edit-action-btn.password-btn:hover svg{color:#ef4444}.edit-action-btn.history-btn:hover{background:#3b82f61a;border-color:#3b82f64d}.edit-action-btn.history-btn:hover svg{color:#3b82f6}.edit-action-btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.edit-action-btn:disabled:hover{background:#26c5c00d;border-color:#26c5c01a}.edit-balance-modal{max-width:450px}.balance-edit-info{margin-bottom:2rem}.user-info-compact{display:flex;align-items:center;gap:1rem;padding:1rem;background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:12px}.user-info-compact div h4{color:#ececec;font-size:1.1rem;font-weight:600;margin:0 0 .3rem}.user-info-compact div span{color:#ececec;opacity:.8;font-size:.9rem}.balance-edit-form{margin-bottom:2rem}.balance-edit-form label{display:block;color:#3be9e3;font-size:1rem;font-weight:600;margin-bottom:1rem}.balance-input-container{display:flex;align-items:center;gap:1rem;background:#00071480;border:1px solid rgba(38,197,192,.3);border-radius:10px;padding:1rem}.balance-input-container svg{color:#3be9e3;flex-shrink:0}.balance-input-container input{flex:1;background:transparent;border:none;outline:none;color:#ececec;font-size:1.1rem;font-weight:600;text-align:center}.balance-input-container input::-webkit-outer-spin-button,.balance-input-container input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.balance-input-container input[type=number]{-moz-appearance:textfield}.balance-suffix{color:#3be9e3;font-size:.9rem;font-weight:500;flex-shrink:0}.balance-edit-actions{display:flex;gap:1rem}.cancel-balance-btn{flex:1;background:#6c757d33;color:#6c757d;border:1px solid rgba(108,117,125,.3);padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px}.cancel-balance-btn:hover:not(:disabled){background:#6c757d4d;border-color:#6c757d80}.cancel-balance-btn:disabled{opacity:.5;cursor:not-allowed}.save-balance-btn{flex:1;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;padding:.8rem 1.5rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 15px #26c5c04d}.save-balance-btn:hover:not(:disabled){box-shadow:0 6px 20px #26c5c066}.save-balance-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:0 2px 8px #26c5c033}@media (max-width: 768px){.edit-actions-grid{gap:.8rem}.edit-action-btn{padding:1.2rem}.balance-edit-actions{flex-direction:column}.balance-input-container{padding:.8rem}}.pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding:1.5rem;background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:15px}.pagination-info{color:#ececec;font-size:.9rem;opacity:.8}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-btn{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;background:#26c5c01a;border:1px solid rgba(38,197,192,.2);border-radius:8px;color:#3be9e3;cursor:pointer;font-size:.9rem;font-weight:600}.pagination-btn:hover:not(:disabled){background:#26c5c033;border-color:#26c5c066}.pagination-btn:disabled{opacity:.3;cursor:not-allowed;color:#6c757d}.pagination-btn.active{background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border-color:#3be9e3;box-shadow:0 2px 8px #26c5c04d}.pagination-btn.prev-btn,.pagination-btn.next-btn{font-size:1.2rem;font-weight:700}.pagination-numbers{display:flex;align-items:center;gap:.3rem;margin:0 1rem}.number-btn{min-width:35px;height:35px;font-size:.85rem}@media (max-width: 768px){.pagination-container{flex-direction:column;gap:1rem;padding:1rem}.pagination-controls{width:100%;justify-content:center}.pagination-numbers{margin:0 .5rem}.pagination-btn{min-width:35px;height:35px;font-size:.8rem}.number-btn{min-width:30px;height:30px;font-size:.75rem}}.class-history-modal{max-width:800px;max-height:90vh;overflow-y:auto}.class-history-info{margin-bottom:1.5rem}.loading-classes{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#ececec}.loading-classes p{margin-top:1rem;font-size:1rem}.classes-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#ef4444;text-align:center}.classes-error svg{color:#ef4444;margin-bottom:1rem}.retry-btn{margin-top:1rem;padding:.8rem 1.5rem;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;border:none;border-radius:8px;cursor:pointer;font-weight:600}.retry-btn:hover{box-shadow:0 4px 15px #26c5c04d}.no-classes{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#ececec;opacity:.7;text-align:center}.no-classes svg{color:#3be9e3;margin-bottom:1rem}.classes-list{margin-top:1rem}.classes-header{margin-bottom:1.5rem}.classes-header h3{color:#3be9e3;font-size:1.2rem;font-weight:600;margin:0}.classes-grid{display:grid;gap:1rem;max-height:400px;overflow-y:auto;padding-right:.5rem}.class-item{background:#26c5c00d;border:1px solid rgba(38,197,192,.1);border-radius:12px;padding:1.5rem}.class-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.class-title{display:flex;align-items:center;gap:.5rem;flex:1}.class-title svg{color:#3be9e3;flex-shrink:0}.class-title h4{color:#ececec;font-size:1rem;font-weight:600;margin:0;line-height:1.3}.class-status{flex-shrink:0}.status-badge{display:flex;align-items:center;gap:.3rem;padding:.3rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600;white-space:nowrap}.status-badge.completed{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-badge.cancelled{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.status-badge.pending{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.class-details{display:flex;flex-direction:column;gap:.8rem}.class-datetime,.class-teacher,.class-teacher-phone{display:flex;align-items:center;gap:.5rem;color:#ececec;font-size:.9rem}.class-datetime svg,.class-teacher svg,.class-teacher-phone svg{color:#3be9e3;flex-shrink:0}.class-observation{margin-top:.5rem;padding:1rem;background:#0007144d;border:1px solid rgba(38,197,192,.2);border-radius:8px}.class-observation p{color:#ececec;font-size:.9rem;margin:0;line-height:1.4}.class-observation strong{color:#3be9e3}.class-meta{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(38,197,192,.1)}.class-verified span{display:flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:500}.verified{color:#22c55e}.not-verified{color:#ef4444}.class-created small{color:#ececec;opacity:.6;font-size:.75rem}@media (max-width: 768px){.class-history-modal{max-width:95vw;margin:1rem}.class-header{flex-direction:column;align-items:flex-start;gap:.8rem}.class-status{align-self:flex-start}.class-meta{flex-direction:column;align-items:flex-start;gap:.5rem}.classes-grid{max-height:300px}.class-item{padding:1.2rem}}.notification{position:fixed;top:100px;right:20px;background:linear-gradient(135deg,#26c5c0,#3be9e3);color:#000714;padding:1rem 1.5rem;border-radius:10px;box-shadow:0 8px 25px #26c5c04d;z-index:10000;font-weight:600;font-size:.9rem;max-width:400px;word-wrap:break-word;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.field-hint{display:block;margin-top:.5rem;font-size:.8rem;color:#ececec;opacity:.7;font-style:italic}@media (max-width: 768px){.notification{top:80px;right:1rem;left:1rem;max-width:none;text-align:center;font-size:.9rem;padding:.8rem 1rem}}.footer{position:fixed;bottom:0;left:0;right:0;background-color:transparent;padding:4px 16px;text-align:left;z-index:1000;pointer-events:none}.footer-link{color:#0000004d;text-decoration:none;font-size:10px;font-weight:300;transition:color .3s ease;pointer-events:auto;opacity:.6}.footer-link:hover{color:#00000080;opacity:.8}@media (prefers-color-scheme: dark){.footer-link{color:#ffffff4d}.footer-link:hover{color:#ffffff80}}@media (max-width: 768px){.footer{padding:3px 12px}.footer-link{font-size:9px}}
