@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@300;400;500;600;700&family=Poppins:wght@600;700;800&display=swap);.avatar{flex-shrink:0;position:relative;transition:transform .2s ease;-webkit-user-select:none;user-select:none}.avatar:hover{transform:scale(1.05)}.avatar__image{display:block;transition:opacity .2s ease}.avatar__initials{background:linear-gradient(135deg,#22c55e,#4ade80 50%,#16a34a);text-transform:uppercase;transition:opacity .2s ease;-webkit-user-select:none;user-select:none}.avatar__online-indicator{background-color:#10b981;border:2px solid #fff;position:absolute;transition:all .2s ease}.avatar--tiny{height:20px;width:20px}.avatar--tiny .avatar__initials{font-size:8px}.avatar--tiny .avatar__online-indicator{bottom:1px;height:6px;right:1px;width:6px}.avatar--small{height:28px;width:28px}.avatar--small .avatar__initials{font-size:11px}.avatar--small .avatar__online-indicator{bottom:1px;height:7px;right:1px;width:7px}.avatar--navbar{height:44px;width:44px}.avatar--navbar .avatar__initials{font-size:18px}.avatar--navbar .avatar__online-indicator{bottom:2px;height:11px;right:2px;width:11px}.avatar--medium{height:36px;width:36px}.avatar--medium .avatar__initials{font-size:14px}.avatar--medium .avatar__online-indicator{bottom:2px;height:9px;right:2px;width:9px}.avatar--large{height:60px;width:60px}.avatar--large .avatar__initials{font-size:24px}.avatar--large .avatar__online-indicator{bottom:2px;height:12px;right:2px;width:12px}.avatar--xlarge{height:80px;width:80px}.avatar--xlarge .avatar__initials{font-size:32px}.avatar--xlarge .avatar__online-indicator{bottom:3px;height:14px;right:3px;width:14px}@media (max-width:768px){.avatar--navbar{height:40px;width:40px}.avatar--navbar .avatar__initials{font-size:16px}.avatar--navbar .avatar__online-indicator{bottom:2px;height:10px;right:2px;width:10px}}.avatar-uploader-modal{align-items:center;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:1000}.avatar-uploader-modal.open{opacity:1;visibility:visible}.avatar-uploader-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;bottom:0;left:0;position:absolute;right:0;top:0}.avatar-uploader-content{background:#1c1d1f;border:1px solid #333;border-radius:16px;box-shadow:0 20px 40px #0006;max-height:90vh;max-width:500px;overflow-y:auto;padding:24px;position:relative;width:90%}.avatar-uploader-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.avatar-uploader-header h3{color:#fff;font-size:20px;font-weight:600;margin:0}.avatar-uploader-close{align-items:center;background:none;border:none;border-radius:8px;color:#999;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.avatar-uploader-close:hover{background:#333;color:#fff}.avatar-uploader-current{align-items:center;background:#2a2b2e;border:1px solid #333;border-radius:12px;display:flex;gap:16px;margin-bottom:24px;padding:16px}.avatar-uploader-preview{border:2px solid var(--accent-green);border-radius:50%;box-shadow:0 4px 12px #22c55e4d;flex-shrink:0;height:60px;overflow:hidden;width:60px}.avatar-uploader-current-img{height:100%;object-fit:cover;width:100%}.avatar-uploader-default{align-items:center;background:linear-gradient(135deg,#22c55e,#4ade80);color:#fff;display:flex;font-size:20px;font-weight:700;height:100%;justify-content:center;width:100%}.avatar-uploader-current p{color:#ccc;font-size:14px;margin:0}.avatar-uploader-file-input{margin-bottom:24px}.avatar-uploader-file-label{align-items:center;background:#2a2b2e;border:2px dashed var(--accent-green);border-radius:12px;color:var(--accent-green);cursor:pointer;display:flex;font-weight:500;gap:12px;justify-content:center;padding:16px 24px;text-align:center;transition:all .2s ease}.avatar-uploader-file-label:hover{background:#333;border-color:#8b5cf6;color:#8b5cf6}.avatar-uploader-cropper{margin-bottom:24px}.avatar-uploader-crop-container{background:#2a2b2e;border:1px solid #333;border-radius:12px;margin-bottom:16px;overflow:hidden}.avatar-uploader-controls{align-items:center;display:flex;gap:16px;justify-content:space-between}.avatar-uploader-control-group{align-items:center;display:flex;gap:12px}.avatar-uploader-control-btn{align-items:center;background:#2a2b2e;border:1px solid #444;border-radius:8px;color:#ccc;cursor:pointer;display:flex;height:40px;justify-content:center;min-width:40px;padding:8px 12px;transition:all .2s ease}.avatar-uploader-control-btn:hover{background:#333;border-color:var(--accent-green);color:var(--accent-green)}.avatar-uploader-zoom-text{color:#ccc;font-size:14px;font-weight:500;min-width:50px;text-align:center}.avatar-uploader-actions{display:flex;gap:12px;justify-content:flex-end}.avatar-uploader-cancel{background:#2a2b2e;border:1px solid #444;border-radius:8px;color:#ccc;cursor:pointer;font-weight:500;padding:12px 24px;transition:all .2s ease}.avatar-uploader-cancel:hover{background:#333;border-color:#666;color:#fff}.avatar-uploader-save{align-items:center;background:linear-gradient(135deg,#22c55e,#4ade80);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;justify-content:center;min-width:140px;padding:12px 24px;transition:all .2s ease}.avatar-uploader-save:hover:not(:disabled){background:linear-gradient(135deg,#5b5bd6,#7c3aed);box-shadow:0 4px 12px #22c55e66;transform:translateY(-1px)}.avatar-uploader-save:disabled{cursor:not-allowed;opacity:.6}.avatar-uploader-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.avatar-uploader-content{margin:20px;padding:20px;width:95%}.avatar-uploader-actions{flex-direction:column}.avatar-uploader-cancel,.avatar-uploader-save{width:100%}}.profile-edit-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000b3;height:100%;left:0;position:fixed;top:0;width:100%;z-index:400}.profile-edit-modal{background:#1f2937;border-radius:12px;box-shadow:0 20px 60px #000c;color:#fff;left:50%;max-height:90vh;max-width:600px;overflow-y:auto;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:500}.profile-edit-header{align-items:center;border-bottom:1px solid #374151;display:flex;justify-content:space-between;padding:24px 28px}.profile-edit-header h2{font-size:24px;font-weight:700;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.close-btn:hover{background:#ffffff1a;color:#fff}.profile-edit-tabs{border-bottom:1px solid #374151;display:flex;gap:8px;padding:0 28px}.tab-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:15px;font-weight:500;padding:14px 24px;position:relative;transition:color .2s}.tab-btn:hover{color:#d1d5db}.tab-btn.active{color:var(--accent-green)}.tab-btn.active:after{background:var(--accent-green);bottom:0;content:"";height:2px;left:0;position:absolute;right:0}.profile-edit-content{padding:28px}.avatar-section{align-items:center;border-bottom:1px solid #374151;display:flex;gap:24px;margin-bottom:28px;padding-bottom:28px}.avatar-preview{border:3px solid var(--accent-green);border-radius:50%;flex-shrink:0}.profile-avatar-preview{font-size:32px!important;height:100px!important;width:100px!important}.avatar-upload{flex:1 1}.upload-btn{align-items:center;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:background .2s}.upload-btn,.upload-btn:hover{background:var(--accent-green-dark)}.upload-hint{color:#9ca3af;font-size:13px;margin-top:8px}.form-group{margin-bottom:20px}.form-group label{font-size:14px;font-weight:500;margin-bottom:8px}.form-group input{background:#111827;border:1px solid #374151;border-radius:8px;font-size:15px;padding:12px 14px;transition:border .2s,box-shadow .2s}.form-group input:focus{border-color:var(--accent-green);box-shadow:0 0 0 3px #22c55e33}.password-input{position:relative}.password-input input{padding-right:45px}.toggle-password{align-items:center;background:none;border:none;color:#9ca3af;cursor:pointer;display:flex;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.toggle-password:hover{color:#d1d5db}.password-strength{background:#22c55e0d;border:1px solid #374151;border-radius:8px;margin-top:12px;padding:12px}.strength-label{color:#d1d5db;font-size:13px;font-weight:500;margin-bottom:10px}.password-rules{display:flex;flex-direction:column;gap:6px}.rule{align-items:center;display:flex;font-size:13px;gap:8px}.rule.valid{color:#10b981}.rule.invalid{color:#9ca3af}.current-email,.verification-info{background:#22c55e1a;border-radius:8px;color:#d1d5db;font-size:14px;margin-bottom:20px;padding:14px}.verification-info{align-items:flex-start;display:flex;gap:12px}.submit-btn{align-items:center;background:var(--accent-green-dark);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:12px;transition:all .2s;width:100%}.submit-btn:hover:not(:disabled){background:var(--accent-green-dark);transform:translateY(-1px)}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.spinner{animation:spin 1s linear infinite}.form-actions{display:flex;gap:12px}.cancel-btn{background:#374151;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:12px;transition:background .2s}.cancel-btn:hover{background:#4b5563}.error-hint{color:#ef4444;display:block;font-size:13px;margin-top:6px}@media (max-width:640px){.profile-edit-modal{max-height:95vh;width:95%}.profile-edit-content,.profile-edit-header{padding:20px}.avatar-section{flex-direction:column;text-align:center}.profile-edit-tabs{padding:0 20px}.tab-btn{font-size:14px;padding:12px 16px}}.profile-sidebar{background:#1c1d1f;box-shadow:-2px 0 10px #0006;color:#fff;display:flex;flex-direction:column;height:100%;position:fixed;right:-300px;top:0;transition:right .3s ease;width:280px;z-index:300}.profile-sidebar.open{right:0}.profile-sidebar-header{align-items:flex-start;border-bottom:1px solid #333;display:flex;gap:12px;min-height:-webkit-fit-content;min-height:fit-content;padding:1rem}.profile-sidebar-header .user-info{word-wrap:break-word;flex:1 1;-webkit-hyphens:auto;hyphens:auto;min-width:0;overflow-wrap:break-word}.profile-sidebar-header .user-info h3{font-size:16px;font-weight:600;margin:0 0 4px}.profile-sidebar-header .user-info h3,.profile-sidebar-header .user-info p{word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;overflow-wrap:break-word}.profile-sidebar-header .user-info p{color:#ccc;font-size:14px;margin:0}.sidebar-avatar{border:2px solid #22c55e4d;box-shadow:0 2px 8px #22c55e33;transition:all .2s ease}.sidebar-avatar:hover{border-color:#22c55ecc;box-shadow:0 4px 12px #22c55e4d;transform:scale(1.02)}.profile-sidebar-links{display:flex;flex-direction:column;padding:.8rem}.profile-sidebar-links button{align-items:center;background:none;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:15px;gap:.6rem;padding:.7rem;text-align:left;transition:background .2s ease}.profile-sidebar-links button:hover{background:#2a2b2e}.profile-sidebar-overlay{background:#0006;height:100%;left:0;position:fixed;top:0;width:100%;z-index:250}@media (max-width:480px){.profile-sidebar{width:260px}.profile-sidebar-header{gap:10px;padding:.8rem}.profile-sidebar-header .user-info h3{font-size:15px}.profile-sidebar-header .user-info p{font-size:13px}}@media (max-width:360px){.profile-sidebar{width:240px}.profile-sidebar-header{align-items:center;flex-direction:column;gap:8px;text-align:center}.profile-sidebar-header .user-info{text-align:center}}.tooltip{display:inline-block;position:relative}.tooltip .tooltip-text{word-wrap:break-word;background-color:#333;border-radius:4px;bottom:125%;color:#fff;font-size:12px;left:50%;line-height:1.4;margin-left:-100px;opacity:0;padding:8px;position:absolute;text-align:center;transition:opacity .3s;visibility:hidden;width:200px;z-index:400}.tooltip:hover .tooltip-text{opacity:1;visibility:visible}.tooltip .tooltip-text:after{border:5px solid #0000;border-top-color:#333;content:"";left:50%;margin-left:-5px;position:absolute;top:100%}.notification-wrapper{display:inline-block;position:relative}.bell-icon{border-radius:8px;color:var(--text-primary);cursor:pointer;padding:8px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.bell-icon:hover{background:#22c55e14;transform:scale(1.1)}.badge,.bell-icon:hover{color:var(--text-primary)}.badge{align-items:center;background-color:var(--accent-green);border-radius:50%;box-shadow:var(--shadow-gold);display:flex;font-size:10px;font-weight:700;height:20px;justify-content:center;position:absolute;right:-4px;top:-4px;width:20px}.notification-dropdown{animation:dropdownFade .25s ease-out;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);background:#fffffff2;border:1px solid #00000014;border-radius:16px;box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;max-height:500px;top:36px;width:min(380px,90vw)}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}.notification-header{align-items:center;border-bottom:var(--border-width) solid var(--border-color);color:var(--text-primary);display:flex;font-size:16px;font-weight:600;justify-content:space-between;padding:16px 20px}.mark-all-btn{background:none;border:none;color:var(--accent-green);cursor:pointer;font-size:14px;transition:all var(--transition-base)}.mark-all-btn:hover{color:var(--text-primary);text-decoration:underline}.mark-all-btn.loading,.mark-all-btn:disabled{cursor:not-allowed;opacity:.6}.notification-list{display:flex;flex-direction:column;padding:8px 0}.notification-item{background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-sm);margin:4px 12px;padding:14px 20px;transition:background .2s,transform .2s,box-shadow .2s}.notification-item:hover{background-color:var(--bg-secondary);border-color:var(--accent-green);box-shadow:var(--shadow-md);transform:translateY(-2px)}.notification-item.unread{background-color:var(--bg-secondary);border-left:4px solid var(--accent-green)}.notification-item.read{background-color:var(--bg-primary)}.notification-content .title{color:var(--text-primary);font-size:14px;font-weight:600}.notification-content .content{color:var(--text-secondary);font-size:13px;margin-top:2px}.notification-content .time{color:var(--text-secondary);font-size:11px;margin-top:4px}.unread-dot{background:var(--accent-green);box-shadow:0 0 4px #22c55e80;margin-left:12px}.notification-item.empty{color:var(--text-secondary);font-style:italic;padding:20px 0}.notification-item.loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:8px;padding:20px 0;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border-top:2px solid var(--bg-neutral);border:2px solid var(--bg-neutral);border-radius:50%;border-top-color:var(--accent-green);height:20px;width:20px}.notification-dropdown::-webkit-scrollbar{width:8px}.notification-dropdown::-webkit-scrollbar-thumb{background-color:#22c55e66;border-radius:4px}.notification-dropdown::-webkit-scrollbar-track{background:var(--bg-neutral);border-radius:4px}.language-switcher{display:inline-block;position:relative}.language-switcher-button{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:14px;font-weight:600;gap:6px;padding:8px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.language-switcher-button:hover{background:#22c55e14;border-color:var(--accent-green);color:var(--text-primary)}.language-flag{font-size:18px;line-height:1}.language-code{font-size:13px;font-weight:600;text-transform:uppercase}.language-arrow{color:var(--text-primary);opacity:.7;transition:transform .3s ease}.language-arrow.open{transform:rotate(180deg)}.language-dropdown{animation:slideDown .2s ease;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-xl);min-width:160px;padding:8px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.language-option{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:14px;font-weight:500;gap:10px;padding:10px 12px;text-align:left;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.language-option:hover{background:#22c55e14;color:var(--text-primary);padding-left:16px}.language-option.active{background:#22c55e1f;color:var(--text-primary);font-weight:600}.language-option .language-name{flex:1 1}.check-icon{color:var(--accent-green);flex-shrink:0}@media (max-width:768px){.language-switcher-button{font-size:13px;padding:6px 10px}.language-flag{font-size:16px}.language-code{font-size:12px}.language-dropdown{min-width:140px}.language-option{font-size:13px;padding:8px 10px}}.navbar{align-items:center;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);background:var(--glass-bg);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);color:var(--text-primary);display:flex;font-size:var(--text-body);justify-content:space-between;padding:20px 40px;position:-webkit-sticky;position:sticky;top:0;transition:all var(--transition-base);z-index:1002}.navbar-overlay{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:#00000073;inset:0;position:fixed;z-index:1000}.navbar.scrolled{background:var(--bg-primary);border-bottom-color:var(--border-color);box-shadow:var(--shadow-md);padding:14px 40px}.navbar-left{gap:25px}.navbar-left,.navbar-logo{align-items:center;display:flex}.navbar-logo{gap:12px;text-decoration:none}.navbar-logo,.navbar-logo-img{transition:all var(--transition-base)}.navbar-logo-img{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px #0000001a;height:40px;object-fit:contain;padding:4px;width:40px}.navbar-logo-text{color:var(--text-primary);font-size:var(--text-h5);letter-spacing:.05em;position:relative;text-transform:uppercase;transition:all var(--transition-base)}.navbar-logo:hover .navbar-logo-text{color:var(--text-primary);transform:translateX(2px)}.navbar-logo:hover{transform:scale(1.02)}.navbar-logo:hover .navbar-logo-img{border-color:var(--accent-green);box-shadow:var(--shadow-gold);transform:scale(1.1)}.navbar-link{border-radius:var(--border-radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body);font-weight:600;letter-spacing:.01em;padding:8px 16px;position:relative;text-decoration:none;transition:all var(--transition-base)}.navbar-link:after{background:linear-gradient(90deg,var(--accent-green),var(--accent-green-light));border-radius:2px;bottom:4px;content:"";height:2px;left:50%;opacity:0;position:absolute;right:50%;transition:all .3s cubic-bezier(.4,0,.2,1)}.navbar-link:hover{background:#22c55e14;color:var(--text-primary)}.navbar-link:hover:after{left:16px;opacity:1;right:16px}.explore-container,.explore-link{cursor:pointer;position:relative}.explore-link{border-radius:var(--border-radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body);font-weight:600;padding:8px 16px;transition:all var(--transition-base)}.explore-link:after{background:linear-gradient(90deg,var(--accent-green),var(--accent-green-light));border-radius:2px;bottom:4px;content:"";height:2px;left:50%;opacity:0;position:absolute;right:50%;transition:all .3s cubic-bezier(.4,0,.2,1)}.explore-link:hover{background:#22c55e14;color:var(--text-primary)}.explore-link:hover:after{left:16px;opacity:1;right:16px}.explore-dropdown{animation:slideDown .2s ease-out;backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-xl);left:0;min-width:200px;padding:8px 0;position:absolute;top:calc(100% + 8px);z-index:200}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.explore-item{background:none;border:none;border-radius:0;color:var(--text-primary);cursor:pointer;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;padding:10px 16px;text-align:left;transition:all var(--transition-base);width:100%}.explore-item:hover{background:#22c55e14;color:var(--text-primary);padding-left:20px}.explore-loading{color:var(--text-secondary);font-size:var(--text-body-sm);padding:12px 14px;text-align:center;transition:color .3s ease}.navbar-right{align-items:center;display:flex;gap:20px}.navbar-menu-toggle{align-items:center;background:#0000;border:1px solid #0000;border-radius:8px;cursor:pointer;display:none;flex-direction:column;gap:4px;justify-content:center;margin-left:8px;padding:8px;transition:all var(--transition-base)}.navbar-menu-bar{background:var(--text-primary);border-radius:999px;height:2px;transition:transform .2s ease,opacity .2s ease;width:18px}.cart-icon{align-items:center;border-radius:10px;color:var(--text-primary);display:flex;justify-content:center;padding:10px;position:relative;text-decoration:none;transition:all var(--transition-base)}.cart-icon:hover{background-color:#22c55e14;color:var(--text-primary);transform:scale(1.05)}.cart-badge{align-items:center;background:var(--accent-green);border:2px solid var(--bg-primary);border-radius:50%;box-shadow:var(--shadow-gold);color:var(--text-primary);display:flex;font-size:var(--text-caption);font-weight:700;height:20px;justify-content:center;min-width:20px;position:absolute;right:4px;top:4px}.navbar-avatar{cursor:pointer;position:relative;transition:transform .2s ease}.navbar-avatar:hover{transform:scale(1.05)}.navbar-avatar .avatar{border:2px solid #22c55e4d;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.navbar-avatar .avatar:hover{border-color:var(--accent-green);box-shadow:var(--shadow-gold)}.auth-buttons{align-items:center;display:flex;gap:20px}.btn{border-radius:10px;font-size:var(--text-body);height:44px;min-width:110px;padding:0 24px}.auth-btn{background:var(--accent-green);border:2px solid var(--accent-green);box-shadow:0 4px 12px #22c55e33;color:var(--text-primary);font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.auth-btn:hover{background:var(--accent-green-dark);border-color:var(--accent-green-dark);box-shadow:0 6px 20px #22c55e59;color:var(--text-primary);transform:translateY(-2px)}.auth-btn:active{box-shadow:0 2px 8px #22c55e40;transform:translateY(0)}.logout-btn{background-color:#dc3545;border:none;color:#fff}.logout-btn:hover{background-color:#b02a37}@media (max-width:768px){.navbar{align-items:stretch;flex-direction:column;gap:12px;padding:14px 20px}.navbar-left{justify-content:space-between;width:100%}.navbar-menu-toggle{display:flex}.navbar-right{align-items:stretch;background:var(--bg-primary);display:flex;flex-direction:column;gap:12px;height:100vh;justify-content:flex-start;max-width:320px;overflow-y:auto;padding:24px;position:fixed;right:-100%;top:0;transition:right .3s ease;width:80%;z-index:1001}.navbar-right.open{right:0}.auth-buttons{flex-wrap:wrap;justify-content:center;width:100%}.navbar-logo-img{height:32px;width:32px}.navbar-logo-text{font-size:var(--text-h4)}.auth-buttons{gap:10px}}@media (max-width:480px){.navbar-logo{gap:8px}.navbar-logo-img{height:28px;width:28px}.navbar-logo-text{font-size:var(--text-body-lg)}}.notification-bell{align-items:center;border-radius:6px;color:#ddd;cursor:pointer;display:flex;padding:8px;position:relative;transition:background .2s ease,color .2s ease}.notification-bell:hover{background-color:#2a2b2e;color:#fff}.bell-unread-dot{background:#ff6b35;border:2px solid #1c1d1f;border-radius:50%;height:10px;position:absolute;right:4px;top:4px;width:10px}.notification-dropdown{background:#1c1d1f;border:1px solid #333;border-radius:8px;box-shadow:0 4px 16px #00000080;max-height:400px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:48px;width:300px;z-index:999}.notification-item{align-items:center;border-bottom:1px solid #333;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background .2s ease}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:#2a2b2e}.notification-item.unread{background-color:#3b1d1d}.notification-item.read{background-color:#1c1d1f;color:#aaa}.notification-content{flex:1 1}.notification-content strong{color:#fff}.notification-content p{color:#ccc;font-size:var(--text-caption);margin:4px 0 0}.unread-dot{background:#ff6b35;border-radius:50%;height:10px;margin-left:8px;width:10px}.read-icon{color:#4caf50;margin-left:8px}.notification-item.empty{color:#888;font-size:var(--text-body-sm);padding:16px 0;text-align:center}.footer{background:var(--bg-primary);border-top:var(--border-width) solid var(--border-color);color:var(--text-secondary);font-size:var(--text-body-sm);padding:60px 40px 24px;position:relative}.footer:before{background:linear-gradient(90deg,#0000,var(--accent-green),#0000);content:"";height:1px;left:0;opacity:.3;position:absolute;right:0;top:0;transition:opacity .3s ease}.footer:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 10h60v60H10Zm10 10h40v40H20Z' stroke='%2322c55e' fill='none' opacity='.2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;bottom:20px;content:"";height:80px;opacity:.15;pointer-events:none;position:absolute;right:40px;width:80px}.footer-top{display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;margin-bottom:30px}.footer-brand{flex:1 1;min-width:220px}.footer-logo{color:var(--text-primary);font-size:var(--text-h5);font-weight:800;letter-spacing:.08em;margin-bottom:12px;position:relative;text-transform:uppercase;transition:color .3s ease}.footer-description{color:var(--text-secondary);font-family:var(--font-body);line-height:1.6;max-width:300px}.footer-links{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:160px}.footer-links h4{color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body);font-size:var(--text-body-sm);font-weight:600;letter-spacing:.05em;margin-bottom:12px;text-transform:uppercase}.footer-links a{color:var(--text-secondary);display:inline-block;font-family:var(--font-body);padding:6px 0;text-decoration:none;transition:all var(--transition-base)}.footer-links a:hover{color:var(--text-secondary);transform:translateX(4px)}.footer-social{flex:1 1;min-width:180px}.footer-social h4{color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body);font-size:var(--text-body-sm);font-weight:600;letter-spacing:.05em;margin-bottom:12px;text-transform:uppercase}.social-icons{gap:12px}.social-icons,.social-icons a{align-items:center;display:flex}.social-icons a{background-color:var(--bg-neutral);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-secondary);font-size:var(--text-body-lg);justify-content:center;padding:10px;transition:all var(--transition-base)}.social-icons a:hover{background:var(--bg-primary);border-color:var(--accent-green);box-shadow:var(--shadow-gold);color:var(--text-secondary);transform:translateY(-2px) scale(1.05)}.social-icons svg{fill:currentColor;height:20px;width:20px}.footer-bottom{border-top:var(--border-width) solid var(--border-color);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-caption);padding-top:20px;text-align:center;transition:border-color .3s ease,color .3s ease}@media (max-width:768px){.footer-top{flex-direction:column;text-align:center}.footer-brand,.footer-links,.footer-social,.footer-top{align-items:center}}.theme-mode-toggle-container{bottom:24px;font-family:var(--font-body);position:fixed;right:24px;z-index:999}.theme-mode-toggle-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-lg);color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.theme-mode-toggle-button:hover{background:var(--bg-primary);border-color:var(--accent-green);box-shadow:var(--shadow-xl);color:var(--text-primary);transform:translateY(-2px)}.theme-mode-toggle-button:active{transform:translateY(0)}.theme-mode-icon{stroke-width:2;color:var(--text-primary);flex-shrink:0;height:18px;width:18px}.theme-mode-text{color:var(--text-primary);min-width:70px;text-align:left;white-space:nowrap}.theme-mode-chevron{stroke-width:2;color:var(--text-primary);flex-shrink:0;height:16px;transition:transform .3s ease;width:16px}.theme-mode-chevron.open{transform:rotate(180deg)}.theme-mode-dropdown{animation:slideUpFade .2s ease-out;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;bottom:calc(100% + 8px);box-shadow:var(--shadow-2xl);min-width:160px;overflow:hidden;position:absolute;right:0}.theme-mode-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:14px;font-weight:500;gap:10px;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.theme-mode-option.active,.theme-mode-option:hover{background:var(--bg-tertiary);color:var(--text-primary)}.theme-mode-option.active{border-left:3px solid var(--accent-green);font-weight:600}.theme-mode-option-icon{stroke-width:2;color:var(--text-primary);flex-shrink:0;height:16px;width:16px}@media (max-width:768px){.theme-mode-toggle-container{bottom:16px;right:16px}.theme-mode-toggle-button{font-size:13px;padding:10px 14px}.theme-mode-text{min-width:60px}.theme-mode-chevron,.theme-mode-icon{height:16px;width:16px}.theme-mode-dropdown{min-width:140px;right:0}.theme-mode-option{font-size:13px;padding:10px 14px}}.carousel-left.small-text .inline-text h2,.courses-header h2,.faq-section .section-header h2,.hero-title,.instructors-header h2,.popular-courses-header-left h2,h1,h2,h3,h4,h5,h6{-webkit-text-fill-color:var(--text-primary)!important;animation:none!important;background:none!important;-webkit-background-clip:unset!important;background-clip:initial!important;background-size:initial!important;color:var(--text-primary)!important}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}50%{transform:translate(-30px,-30px) rotate(180deg)}}@keyframes floatOrb{0%,to{opacity:.6;transform:translate(0) scale(1)}33%{opacity:.8;transform:translate(30px,-30px) scale(1.1)}66%{opacity:.5;transform:translate(-20px,20px) scale(.9)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #22c55e4d,0 0 40px #22c55e33}50%{box-shadow:0 0 30px #22c55e80,0 0 60px #22c55e4d}}@keyframes glowPulseGreen{0%,to{box-shadow:0 20px 40px #22c55e66,0 0 0 4px #22c55e1a}50%{box-shadow:0 25px 50px #22c55e99,0 0 0 6px #22c55e33}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.scroll-animate{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1)}.scroll-animate.visible{opacity:1;transform:translateY(0)}.scroll-animate.stagger-1{transition-delay:.1s}.scroll-animate.stagger-2{transition-delay:.2s}.scroll-animate.stagger-3{transition-delay:.3s}.scroll-animate.stagger-4{transition-delay:.4s}.carousel-section.scroll-animate,.courses-section.scroll-animate,.faq-section.scroll-animate,.instructors-section.scroll-animate,.popular-courses-section.scroll-animate{opacity:0;transform:translateY(50px)}.carousel-section.scroll-animate.visible,.courses-section.scroll-animate.visible,.faq-section.scroll-animate.visible,.instructors-section.scroll-animate.visible,.popular-courses-section.scroll-animate.visible{opacity:1;transform:translateY(0)}.hero-full{align-items:center;background-position:75%;background-repeat:no-repeat;background-size:cover;display:flex;min-height:clamp(620px,90vh,820px);overflow:hidden;position:relative;width:100%}.hero-full:before{background:linear-gradient(90deg,#ffffffe0 0,#ffffffd1 20%,#ffffffa6 40%,#ffffff59 60%,#ffffff1a 75%,#fff0 90%);content:"";inset:0;pointer-events:none;position:absolute;z-index:1}[data-theme=dark] .hero-full:before{background:linear-gradient(90deg,#000000e0 0,#000000d1 25%,#000000b3 45%,#00000073 65%,#0003 80%,#0000 95%)}.hero-inner{margin:0;padding-bottom:120px;padding-left:var(--page-x);padding-right:var(--page-x);padding-top:120px}.hero-content,.hero-inner,.hero-left{position:relative;width:100%;z-index:2}.hero-content,.hero-left{align-self:flex-start;display:flex;flex-direction:column;gap:20px;justify-content:center;max-width:620px}.hero-title{animation:none!important;color:var(--text-primary)!important;font-size:clamp(2.8rem,5vw,4rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:0 0 20px;position:relative;transition:color .3s ease}.hero-subtitle{color:var(--text-secondary);font-size:clamp(1rem,1.4vw,1.2rem);font-weight:400;line-height:1.7;margin:0 0 28px;max-width:520px;transition:color .3s ease}.hero-stats{gap:24px;margin:30px 0 20px}.stat-item{backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-radius:14px;box-shadow:0 18px 55px #0000001f;min-width:180px;padding:20px 26px}.stat-item:hover:after{opacity:1}[data-theme=dark] .home .hero-full .stat-item{background:linear-gradient(135deg,#0f172af2,#0f172ae6);border-color:#94a3b899;box-shadow:0 20px 55px #000000d9}[data-theme=dark] .home .hero-full .stat-item:hover{background:linear-gradient(135deg,#065f464d,#15803d33);border-color:#00ff6acc}.hero-cta-container{margin-top:16px}.hero-cta-primary{border-radius:14px;box-shadow:0 20px 40px #22c55e59;font-size:1.05rem;gap:10px;padding:18px 42px}@media (max-width:1024px){.hero-inner{padding-bottom:100px;padding-top:100px}.hero-content,.hero-left{align-items:flex-start;max-width:100%;text-align:left}.hero-stats{justify-content:flex-start}.hero-title{font-size:var(--text-h2)}}@media (min-width:1024px){.hero-inner{padding-left:40px;padding-right:40px}}@media (max-width:768px){.hero-inner{align-items:flex-start;padding-bottom:80px;padding-top:80px}.hero-title{font-size:var(--text-h2)}.stat-item{min-width:0;padding:12px 16px}.stat-text{font-size:var(--text-body)}.hero-stats{flex-direction:column}.hero-cta-primary,.stat-item{width:100%}}@media (max-width:480px){.hero-inner{padding-bottom:40px;padding-top:48px}.hero-title{font-size:var(--text-h3)}.hero-stats{gap:12px}.stat-item{gap:8px;min-width:100px;padding:10px 12px}.stat-icon{font-size:var(--text-h4)}.stat-text{font-size:var(--text-body-sm)}.hero-cta-container .hero-cta-primary{width:100%}}.carousel-section{background:var(--bg-secondary);padding:40px 0 20px}.carousel-container{align-items:stretch;display:flex;gap:40px;justify-content:flex-start;margin:0 auto;max-width:1500px;padding-left:20px}.carousel-left.small-text{align-items:flex-start;display:flex;flex:0 0 35%;flex-direction:column;justify-content:center;text-align:left}.carousel-left.small-text .inline-text{align-items:flex-start;display:flex;flex-direction:column;gap:14px;max-width:400px}.carousel-left.small-text .inline-text h2{font-size:var(--text-h2);font-weight:800;line-height:1.2;margin:0}.carousel-left.small-text .inline-text p{color:var(--text-secondary);font-size:var(--text-body-lg);line-height:1.6;margin:0}.carousel-right{align-items:flex-start;display:flex;flex:1 1;flex-direction:column}.carousel-cards{display:flex;flex-wrap:wrap;gap:20px;justify-content:flex-start;width:100%}.carousel-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);color:var(--text-primary);cursor:pointer;flex:1 1;min-width:0;overflow:hidden;perspective:1000px;position:relative;transform-style:preserve-3d;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%;will-change:transform}@media (min-width:768px){.carousel-card{min-width:280px}}.carousel-card:before{background:linear-gradient(135deg,#22c55e14,#22c55e0d 50%,#4dde8014);border-radius:16px;bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s;z-index:1}.carousel-card:hover{border-color:#22c55e4d;box-shadow:var(--shadow-xl),0 0 0 1px #22c55e33,inset 0 1px 0 #ffffff1a;transform:translateY(-12px) rotateX(2deg) rotateY(-1deg) scale(1.02)}.carousel-card:hover:before{opacity:1}.carousel-card img{height:260px;object-fit:cover;width:100%}.carousel-info{padding:14px}.carousel-info h3{color:var(--text-primary);font-size:var(--text-body);font-weight:700;margin-bottom:6px}.carousel-info span{color:var(--text-secondary);font-size:var(--text-body-sm)}.carousel-controls{align-items:center;display:flex;gap:20px;margin-top:24px}.carousel-arrow{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:50%;box-shadow:var(--shadow-sm);color:var(--text-primary);cursor:pointer;display:flex;height:48px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:48px}.carousel-arrow:hover{background:#22c55e1a;border-color:var(--accent-green);box-shadow:0 4px 12px #22c55e4d;color:var(--text-primary);transform:scale(1.05)}.carousel-indicators{align-items:center;display:flex;gap:8px}.indicator{background:var(--gray-300);border-radius:2px;height:4px;transition:all .3s cubic-bezier(.4,0,.2,1);width:28px}.indicator.active{background:var(--text-primary);box-shadow:0 0 8px #0003}.courses-section{background:var(--bg-primary);margin:0 auto;max-width:1500px;padding:40px 20px 60px}.courses-header h2{display:inline-block;font-size:var(--text-h3);font-weight:800;margin-bottom:10px;position:relative}.courses-header p{color:var(--text-secondary);margin-bottom:24px}.category-filter{border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:16px;margin-bottom:32px;padding-bottom:12px}.filter-btn{background:none;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;opacity:.7;padding:12px 16px;position:relative;transition:all var(--transition-base)}.filter-btn:hover{background:#22c55e14;color:var(--text-primary);opacity:1}.filter-btn.active{background:#22c55e1f;color:var(--text-primary);opacity:1}.filter-btn.active:after{left:16px;right:16px}.filter-btn.active:after,.filter-btn:after{background:var(--text-primary);border-radius:2px;bottom:8px;content:"";height:3px;position:absolute}.filter-btn:after{left:50%;opacity:0;right:50%;transition:all .3s cubic-bezier(.4,0,.2,1)}.filter-btn:hover:after{left:16px;opacity:.5;right:16px}.courses-grid{grid-template-columns:repeat(4,minmax(0,1fr));position:relative}@media (max-width:1200px){.courses-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.courses-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.courses-grid{grid-template-columns:1fr}}.courses-grid:has(.course-card:only-child){grid-template-columns:minmax(280px,400px);justify-content:start}.courses-grid:has(.course-card:first-child:nth-last-child(2)){grid-template-columns:repeat(2,minmax(280px,1fr))}.courses-grid:has(.course-card:first-child:nth-last-child(3)){grid-template-columns:repeat(3,minmax(280px,1fr))}@media (max-width:767px){.courses-grid{grid-template-columns:1fr!important}.courses-grid:has(.course-card:first-child:nth-last-child(2)),.courses-grid:has(.course-card:first-child:nth-last-child(3)),.courses-grid:has(.course-card:only-child){grid-template-columns:1fr!important}}.course-card{border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);overflow:visible;perspective:1000px;transform-style:preserve-3d;transition:all .4s cubic-bezier(.4,0,.2,1);will-change:transform}.course-card:before{background:linear-gradient(135deg,#22c55e66,#4dde8066,#22c55e66);border-radius:16px;bottom:-2px;content:"";filter:blur(8px);left:-2px;opacity:0;position:absolute;right:-2px;top:-2px;transition:opacity .4s;z-index:-1}.course-card:hover{border-color:#22c55e66;box-shadow:var(--shadow-2xl),0 0 0 1px #22c55e33,inset 0 1px 0 #ffffff1a;transform:translateY(-12px) rotateX(3deg) rotateY(-2deg) scale(1.03);z-index:1000}.course-card:hover:before{opacity:1}.course-card img{background:var(--bg-tertiary);border-radius:12px;display:block;height:200px;margin:16px;object-fit:cover;width:calc(100% - 32px)}.course-info{display:flex;flex-direction:column;height:100%;padding:16px}.course-info h3{color:var(--text-primary);font-size:var(--text-body);font-weight:700;line-height:1.2;margin-bottom:8px;max-height:2.4em;overflow:hidden}.course-meta{color:var(--text-secondary);margin-top:auto}.course-price{border-radius:6px;box-shadow:0 2px 8px #22c55e4d;display:inline-block;font-weight:700;padding:4px 10px}.course-price,.see-course-btn{background:linear-gradient(135deg,var(--accent-green) 0,var(--accent-green-light) 100%);color:var(--text-primary);font-size:var(--text-body)}.see-course-btn{align-items:center;border:2px solid var(--accent-green);border-radius:10px;box-shadow:0 4px 12px #22c55e33;cursor:pointer;display:inline-flex;font-family:var(--font-body);font-weight:600;gap:6px;justify-content:center;margin-top:12px;padding:12px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.see-course-btn:hover{background:linear-gradient(135deg,var(--accent-green-dark) 0,var(--accent-green) 100%);border-color:var(--accent-green-dark);box-shadow:0 6px 20px #22c55e59;color:var(--text-primary);transform:translateY(-2px)}.show-all-wrapper{display:flex;justify-content:flex-start;margin-top:24px}.show-all-link{color:var(--text-primary);cursor:pointer;display:inline-block;font-family:var(--font-body);font-size:var(--text-body-lg);font-weight:600;padding:4px 0;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.show-all-link:after{background:var(--text-primary);border-radius:2px;bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .4s cubic-bezier(.4,0,.2,1);width:0}.show-all-link:hover{color:var(--text-primary);transform:translateX(4px)}.show-all-link:hover:after{width:100%}.course-popup{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-2xl);color:var(--text-primary);left:calc(100% + 16px);padding:20px;pointer-events:auto;position:absolute;top:8px;width:360px;z-index:2000}.course-popup.left{animation:slideInLeft .18s ease forwards;left:auto;right:calc(100% + 12px)}@media (max-width:768px){.course-popup{left:50%;right:auto;transform:translateX(-50%);width:min(360px,calc(100vw - 32px))}.course-popup.left{right:auto}}@keyframes slideInRight{0%{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}.course-popup h4{font-size:var(--text-body);font-weight:700;margin-bottom:6px}.course-popup .badge{background:#f59e0b;border-radius:4px;color:#fff;display:inline-block;font-size:var(--text-caption);font-weight:600;margin-bottom:8px;padding:2px 6px}.course-popup .desc,.course-popup .details,.course-popup .update{color:var(--text-primary);font-size:var(--text-body-sm);margin-bottom:8px}.course-popup .update{color:var(--text-secondary)}.course-popup ul{color:var(--text-primary);font-size:var(--text-caption);list-style-type:disc;padding-left:18px}.course-popup li{margin-bottom:4px}.popular-courses-section{background:var(--bg-secondary);margin:0 auto;max-width:1500px;padding:60px 20px}.popular-courses-header-left{margin-bottom:40px}.popular-courses-header-left h2{display:inline-block;font-size:var(--text-h3);font-weight:800;margin-bottom:10px;position:relative;text-align:left}.popular-courses-header-left p{color:var(--text-secondary);font-size:var(--text-body-lg);line-height:1.6;max-width:600px;text-align:left}.popular-courses-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.popular-courses-grid:has(.popular-course-card:only-child){grid-template-columns:minmax(280px,400px);justify-content:start}.popular-courses-grid:has(.popular-course-card:first-child:nth-last-child(2)){grid-template-columns:repeat(2,minmax(280px,1fr))}@media (max-width:900px){.popular-courses-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width:600px){.popular-courses-grid{grid-template-columns:1fr}}.popular-course-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;overflow:hidden;perspective:1000px;position:relative;transform-style:preserve-3d;transition:all .4s cubic-bezier(.4,0,.2,1);will-change:transform}.popular-course-card:before{background:linear-gradient(135deg,#22c55e14,#4dde800d);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s;z-index:1}.popular-course-card:hover{border-color:#22c55e4d;box-shadow:var(--shadow-xl),0 0 0 1px #22c55e33;transform:translateY(-10px) rotateX(2deg) scale(1.02)}.popular-course-card:hover:before{opacity:1}.popular-course-image{height:180px;object-fit:cover;width:100%}.popular-course-info{display:flex;flex-direction:column;gap:8px;padding:16px}.popular-course-title{font-weight:700;line-height:1.3;min-height:48px}.popular-course-price,.popular-course-title{color:var(--text-primary);font-size:var(--text-body)}.popular-course-price{background:var(--bg-tertiary);border-radius:6px;display:inline-block;font-weight:600;padding:4px 8px;transition:all .3s ease}.popular-course-stats{color:var(--text-secondary);font-size:var(--text-body-sm)}.enroll-btn{background:linear-gradient(135deg,var(--accent-green) 0,var(--accent-green-light) 100%);border:2px solid var(--accent-green);border-radius:8px;box-shadow:0 4px 12px #22c55e33;color:var(--text-primary);cursor:pointer;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;margin-top:8px;padding:10px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.enroll-btn:hover{background:linear-gradient(135deg,var(--accent-green-dark) 0,var(--accent-green) 100%);border-color:var(--accent-green-dark);box-shadow:0 6px 20px #22c55e59;color:var(--text-primary);transform:translateY(-2px)}.instructors-section{background:var(--bg-primary);margin:0 auto;max-width:1500px;padding:80px 20px 100px;transition:background .3s ease}.instructors-header{margin-bottom:60px;text-align:center}.instructors-header h2{display:inline-block;font-size:var(--text-h2);font-weight:700;letter-spacing:-.02em;margin-bottom:16px;position:relative}.instructors-header p{color:var(--text-secondary);font-size:var(--text-body-lg);line-height:1.7;margin:0 auto;max-width:600px}.instructors-grid{grid-gap:32px;align-items:stretch;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.instructor-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-sm);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:32px;perspective:1000px;position:relative;transform-style:preserve-3d;transition:all .4s cubic-bezier(.4,0,.2,1);will-change:transform}.instructor-card:before{background:linear-gradient(135deg,#22c55e14,#22c55e0d 50%,#4dde8014);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s;z-index:0}.instructor-card>*{position:relative;z-index:1}.instructor-card:hover{border-color:#22c55e66;box-shadow:var(--shadow-xl),0 0 0 1px #22c55e33,inset 0 1px 0 #ffffff1a;transform:translateY(-12px) rotateX(2deg) rotateY(-1deg) scale(1.02)}.instructor-card:hover:before{opacity:1}.instructor-top{align-items:flex-start;display:flex;gap:16px;margin-bottom:20px}.instructor-top img{border:3px solid #f1f5f9;border-radius:50%;box-shadow:0 2px 8px #00000014;flex-shrink:0;height:80px;object-fit:cover;width:80px}.instructor-top>div{flex:1 1;min-width:0}.instructor-top h3{color:var(--text-primary);font-size:var(--text-body-lg);font-weight:700;line-height:var(--lh-body);margin:0 0 6px}.instructor-title{color:var(--text-secondary);font-size:var(--text-body-sm);font-weight:500;line-height:1.4;margin:0}.instructor-bio{color:var(--text-secondary);flex:1 1;font-size:var(--text-body);line-height:1.6;margin:20px 0;min-height:60px}.instructor-stats{align-items:center;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;margin-top:auto;width:100%}.stat{flex-shrink:0;text-align:left}.stat strong{color:var(--text-primary);display:block;font-size:var(--text-body);font-weight:700;line-height:var(--lh-body)}.stat-label{letter-spacing:.05em;margin-top:2px}.profile-button{box-sizing:border-box;flex-shrink:0;margin-top:auto;width:100%}.profile-button .btn.ghost{align-items:center;background:#0000;border:2px solid #22c55e4d;border-radius:10px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;justify-content:center;overflow:hidden;padding:14px 20px;text-align:center;text-overflow:ellipsis;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;width:100%}.profile-button .btn.ghost:hover{background:linear-gradient(135deg,var(--accent-green) 0,var(--accent-green-light) 100%);border-color:var(--accent-green);box-shadow:0 4px 12px #22c55e4d;color:var(--text-primary);transform:translateY(-1px)}.faq-section{background:var(--bg-primary);padding:60px 20px}.faq-section .container{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:1200px}.faq-section .section-header{margin-bottom:50px;text-align:center}.faq-section .section-header h2{display:inline-block;font-size:var(--text-h3);font-weight:800;margin-bottom:8px;position:relative}.faq-section .section-header p{color:var(--text-secondary);font-size:var(--text-body);margin:0 auto;max-width:600px}.how-it-works-wrapper{display:flex;flex-direction:column;gap:40px;width:100%}@media (min-width:768px){.how-it-works-wrapper{align-items:flex-start;flex-direction:row;gap:60px}}.how-it-works-list{counter-reset:how-step;list-style:none;margin:0;padding:0}.how-it-works-list li{color:var(--text-primary);font-size:var(--text-body);margin-bottom:16px;padding-left:30px;position:relative}.how-it-works-list li:before{color:var(--text-primary);content:counter(how-step);counter-increment:how-step;font-size:var(--text-body-lg);font-weight:700;left:0;position:absolute;top:0}.faq-section-right{flex:1 1}.faq-header{margin-bottom:24px}.faq-header h3{color:var(--text-primary);font-size:var(--text-h4);font-weight:700;text-align:left}.faq-list{counter-reset:none;list-style:none;margin:0;padding:0}.faq-item{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.faq-item:before{background:linear-gradient(135deg,#22c55e14,#4dde800d);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s;z-index:0}.faq-item>*{position:relative;z-index:1}.faq-item.open{background:var(--bg-primary);border-color:#22c55e4d;box-shadow:var(--shadow-lg),0 0 0 1px #22c55e33;transform:translateY(-3px) scale(1.01)}.faq-item.open:before{opacity:1}.faq-question{align-items:center;background:var(--bg-primary);border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--text-body);font-weight:600;justify-content:space-between;padding:16px 20px;transition:background .2s,color .2s;width:100%}.faq-question:hover{background:var(--bg-tertiary);color:var(--text-primary)}.faq-icon{font-size:var(--text-h5);font-weight:700;transition:transform .2s}.faq-answer,.faq-icon{color:var(--text-primary)}.faq-answer{background:var(--bg-tertiary);font-size:var(--text-body);line-height:1.6;overflow:hidden;padding:0 20px;transition:max-height .3s ease,padding .3s ease,color .3s ease,background .3s ease}.faq-item.open .faq-answer{padding:16px 20px}.api-error-notice{background:var(--bg-tertiary);border:1px solid var(--accent-green);border-radius:8px;color:var(--text-primary);margin:20px auto;max-width:1400px;padding:12px 20px;text-align:center;transition:all .3s ease}@media (prefers-reduced-motion:reduce){.hero-background-elements,.hero-image{animation:none!important}.scroll-animate{opacity:1;transform:none;transition:none}}:root{--bg:#fafafa;--card:#fff;--muted:#6b7280;--accent:var(--accent-green);--accent-2:var(--accent-green-light);--glass:#fff9;--border:#e6e9ee;--shadow:0 6px 20px #2a2e3d14;--radius:12px}.courses-page{background:var(--bg-secondary);min-height:100vh;transition:background .3s ease;width:100%}.courses-hero{background:radial-gradient(circle at 75% 25%,#aac8b92e,#0000 45%),linear-gradient(to bottom right,#f5f6f5,#eef1ef);padding-bottom:120px;padding-top:120px;position:relative;width:100%}[data-theme=dark] .courses-hero{background:radial-gradient(circle at 75% 25%,#2eb47814,#0000 50%),linear-gradient(to bottom right,#0f1720,#0b1218)}.courses-hero-inner{display:flex;flex-direction:column;gap:32px;padding:64px var(--page-x)}@media (min-width:768px){.courses-hero-inner{grid-gap:70px;align-items:center;display:grid;gap:70px;grid-template-columns:1.05fr .95fr;padding:120px var(--page-x)}}.courses-hero-left{max-width:560px}.courses-hero-right{display:flex;justify-content:center}.hero-title{font-size:clamp(2rem,7vw,3.6rem);font-weight:700;letter-spacing:-.015em;line-height:1.12;margin-bottom:16px;overflow-wrap:normal;word-break:keep-all}.hero-title,[data-theme=dark] .hero-title{color:var(--text-primary)}.title-highlight{display:inline-block}.hero-cta-container{margin-top:28px}.hero-cta-primary{background:linear-gradient(135deg,var(--accent-green),var(--accent-green-light));box-shadow:0 12px 32px #22c55e59;color:#fff;padding:16px 36px;transition:all .3s ease}[data-theme=dark] .hero-cta-primary{box-shadow:0 8px 25px #2eb47840}.hero-cta-primary:hover{box-shadow:0 18px 42px #22c55e66}.courses-hero-tools-block{margin-top:32px}.courses-hero-tools-label{color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.15em;margin-bottom:16px;margin-top:12px;text-transform:uppercase}[data-theme=dark] .courses-hero-tools-label{color:#7b8a99}.courses-hero-tools-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}@media (min-width:768px){.courses-hero-tools-grid{gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}}.tool-card{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#ffffffa6;border:1px solid var(--border-color);border-radius:16px;box-shadow:none;display:flex;flex-direction:column;gap:8px;padding:14px 12px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease}[data-theme=dark] .tool-card{background:#ffffff0f;border-color:#ffffff1f;box-shadow:none}.tool-card-icon-circle{align-items:center;background:radial-gradient(circle at 20% 0,#94a3b833,#0000 60%),radial-gradient(circle at 80% 120%,#22c55e38,#0f172a0a);border:1px solid #94a3b88c;border-radius:999px;color:var(--accent-green);display:flex;height:38px;justify-content:center;width:38px}[data-theme=dark] .tool-card-icon-circle{background:#2eb4781f;box-shadow:inset 0 0 0 1px #2eb47833}.tool-card-icon{height:24px;width:24px}.tool-card-label{color:var(--text-primary);font-size:10px;font-weight:600;letter-spacing:.16em;text-align:center;text-transform:uppercase}[data-theme=dark] .tool-card-label{color:var(--text-secondary)}.tool-card:hover{background:#fffffff5;border-color:#22c55ee6;box-shadow:0 14px 38px #0f172a29;transform:translateY(-3px)}[data-theme=dark] .tool-card{background:#141414bf;border-color:#94a3b859;box-shadow:0 18px 40px #000000d9}[data-theme=dark] .tool-card:hover{background:#0f172af5;border-color:#22c55ee6}.courses-hero-image{border-radius:28px;box-shadow:0 30px 60px #00000014;height:auto;max-width:560px;width:100%}[data-theme=dark] .courses-hero-image{box-shadow:0 25px 60px #0009}@media (max-width:767px){.courses-hero-image{max-width:100%}}.hero-stats{display:flex;flex-wrap:wrap;gap:20px;margin:20px 0 8px}.stat-item{align-items:center;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:linear-gradient(135deg,#0f172a0a,#0f172a05),linear-gradient(135deg,#ffffffe6,#f8fafcb3);border:1px solid #94a3b859;border-radius:12px;box-shadow:0 14px 40px #0f172a1c;cursor:pointer;display:flex;flex:1 1;flex-direction:row;gap:14px;min-width:160px;overflow:hidden;padding:18px 22px;position:relative;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease}.stat-item:before{background:radial-gradient(circle at top left,#94a3b833,#0000 55%);bottom:0;left:0;right:0;top:0}.stat-item:after,.stat-item:before{content:"";opacity:0;position:absolute;transition:opacity .4s ease;z-index:0}.stat-item:after{background:radial-gradient(circle,#94a3b824 0,#0000 70%);height:200%;left:-50%;top:-50%;width:200%}.stat-item:hover{background:linear-gradient(135deg,#065f462e,#15803d1f),linear-gradient(135deg,#fffffffa,#f1f5f9e6);border-color:#22c55ea6;box-shadow:0 20px 55px #0f172a2e;transform:translateY(-4px) translateZ(0)}.stat-item:hover:before{opacity:1}.stat-icon{align-items:center;background:radial-gradient(circle at 20% 0,#10b9813d,#0000 60%),radial-gradient(circle at 80% 120%,#22c55e2e,#0f172a0a);border:1px solid #94a3b873;border-radius:999px;box-shadow:0 6px 20px #16a34a8c;color:var(--accent-green);display:flex;height:40px;justify-content:center;min-width:40px;position:relative;transition:box-shadow .3s ease,border-color .3s ease,background .3s ease,transform .3s ease;width:40px;z-index:1}.stat-item:hover .stat-icon{border-color:#22c55ee6;box-shadow:0 14px 32px #10b981b3;transform:translateY(-1px)}[data-theme=dark] .courses-page .hero-section .stat-item{background:linear-gradient(135deg,#0f172af2,#0f172ae6);border-color:#94a3b899;box-shadow:0 20px 55px #000000d9}[data-theme=dark] .courses-page .hero-section .stat-item:hover{background:linear-gradient(135deg,#065f464d,#15803d33);border-color:#00ff6acc}.stat-content{align-items:flex-start;display:flex;flex-direction:column;gap:4px;position:relative;z-index:1}.stat-metric{color:var(--text-primary);font-size:var(--text-h5);font-weight:700;letter-spacing:.12em;text-transform:uppercase}.stat-label{color:var(--text-secondary);font-size:var(--text-caption);font-weight:500;letter-spacing:.24em;text-transform:uppercase}.hero-cta-container{margin-top:8px}.hero-cta-primary{align-items:center;background:linear-gradient(135deg,var(--accent-green) 0,var(--accent-green-light) 100%);border:none;border-radius:12px;box-shadow:var(--shadow-gold);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:var(--text-body-lg);font-weight:700;gap:12px;overflow:hidden;padding:18px 40px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);z-index:1}.hero-cta-primary:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%;z-index:-1}.hero-cta-primary:hover:before{left:100%}.hero-cta-primary:hover{background:linear-gradient(135deg,var(--accent-green-dark) 0,var(--accent-green) 100%);box-shadow:0 12px 32px #22c55e66,0 6px 16px #22c55e4d;color:var(--text-primary);transform:translateY(-2px)}.hero-cta-primary svg{transition:transform .3s ease}.hero-cta-primary:hover svg{transform:translateX(4px)}.hero-visual{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%;z-index:2}.hero-visual-container{max-width:600px;position:relative;width:100%}.hero-image-wrapper{filter:drop-shadow(0 20px 60px rgba(15,23,42,.15));overflow:visible}.hero-image-glass,.hero-image-wrapper{border-radius:24px;position:relative;width:100%}.hero-image-glass{aspect-ratio:4/5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#22c55e26,#4dde801a 50%,#22c55e14);border:1px solid #ffffff4d;box-shadow:0 20px 60px #0f172a26,0 8px 24px #0f172a1a,0 0 0 1px #ffffff1a,inset 0 1px 0 #fff3;min-height:500px;overflow:hidden;padding:4px}.hero-image{align-items:center;background:linear-gradient(135deg,#22c55e,#4ade80 50%,#16a34a);display:flex;justify-content:center;overflow:hidden;position:relative}.hero-image,.hero-image img{border-radius:20px;height:100%;min-height:500px;width:100%}.hero-image img{display:block;max-height:600px;object-fit:cover;object-position:center}@keyframes heroImageFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.02)}}.hero-image-overlay{background:linear-gradient(135deg,#22c55e14,#4dde800f 50%,#0f172a0d);height:100%;left:0;mix-blend-mode:overlay;top:0;width:100%}.hero-image-overlay,.hero-image-shine{border-radius:20px;pointer-events:none;position:absolute}.hero-image-shine{animation:shine 8s infinite;background:linear-gradient(45deg,#0000 30%,#ffffff1a 50%,#0000 70%);height:200%;left:-50%;top:-50%;width:200%}@keyframes shine{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}.search-controls-bar{background:var(--bg-primary);border-bottom:1px solid var(--border-color);padding:20px 0;transition:background .3s ease}.search-controls-container{align-items:stretch;display:flex;flex-direction:column;gap:16px;margin:0 auto;max-width:1280px;padding-left:var(--page-x);padding-right:var(--page-x)}@media (min-width:768px){.search-controls-container{align-items:center;flex-direction:row;justify-content:space-between}}.courses-topbar{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.page-title{color:var(--text-primary);font-size:var(--text-h3);font-weight:700;margin:0}.page-sub,.page-title{transition:color .3s ease}.page-sub{color:var(--text-secondary);font-size:var(--text-body-sm);margin:6px 0 0}.top-right-controls{align-items:center;display:flex;gap:12px;margin-left:auto}.search-controls-container .top-right-controls{margin-left:auto}.search-wrapper{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow-sm);display:flex;padding:6px 8px;position:relative;transition:all .15s ease}.search-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #22c55e1a}.search-input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:var(--text-body-sm);outline:none;padding:8px;transition:color .3s ease;width:100%}.search-clear,.search-input::placeholder{color:var(--text-secondary)}.search-clear{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:var(--text-body-sm);padding:4px;transition:all .15s ease,color .3s ease}.search-clear:hover{background:#22c55e1a;color:var(--accent-green);color:var(--accent)}.sort-select select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:var(--text-body-sm);outline:none;padding:8px 10px;transition:all .3s ease,background .3s ease,color .3s ease,border-color .3s ease}.filters-toggle{background:linear-gradient(90deg,#22c55e1a,#4dde800f);border:1px solid #22c55e1f;border-radius:10px;color:var(--accent-green);color:var(--accent);cursor:pointer;font-weight:600;gap:8px;padding:8px 12px}.filters-count,.filters-toggle{align-items:center;display:inline-flex}.filters-count{background:var(--accent-green);background:var(--accent);border-radius:999px;color:#fff;font-size:var(--text-caption);height:18px;justify-content:center;margin-left:8px;width:18px}.courses-body{display:flex;min-height:calc(100vh - 200px);width:100%}body.scroll-locked{overflow:hidden}.filters-panel{background:var(--bg-primary);border-right:1px solid var(--border-color);flex-shrink:0;min-height:calc(100vh - 200px);padding:24px 20px;position:-webkit-sticky;position:sticky;top:0;transition:transform .24s ease,opacity .24s ease,background .3s ease,border-color .3s ease;width:280px}@media (max-width:767px){.filters-panel{display:none}}@media (min-width:768px){.filters-panel{display:block}}.filters-panel .filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.filters-panel h3{color:var(--text-primary);font-size:var(--text-body);margin:0;transition:color .3s ease}.filters-panel .clear-btn{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;transition:color .3s ease}.filters-panel .clear-btn:hover{color:var(--text-primary)}.filter-group{margin-bottom:14px}.filter-group h4{color:var(--text-primary);font-size:var(--text-caption);margin:0 0 8px;transition:color .3s ease}.categories-list{display:flex;flex-wrap:wrap;gap:8px}.chip{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:999px;color:var(--text-primary);cursor:pointer;font-size:var(--text-caption);padding:8px 10px;transition:all .16s ease,background .3s ease,color .3s ease,border-color .3s ease}.chip:hover{background:var(--bg-secondary);border-color:var(--accent-green);transform:translateY(-2px)}.chip.active{background:linear-gradient(90deg,var(--accent-green),var(--accent-green-light));background:linear-gradient(90deg,var(--accent),var(--accent-2));border:none;box-shadow:0 6px 26px #22c55e1f;color:#fff}.price-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.price-value{font-weight:700}.range{accent-color:var(--accent-green);accent-color:var(--accent);margin-bottom:8px;width:100%}.muted{color:var(--text-secondary)}.free-checkbox,.muted{font-size:var(--text-caption);transition:color .3s ease}.free-checkbox{align-items:center;color:var(--text-primary);display:flex;gap:8px}.courses-main{background:var(--bg-secondary);flex:1 1;min-height:calc(100vh - 200px);padding:24px;transition:background .3s ease}.status{border-radius:10px;font-size:var(--text-body-sm);margin-bottom:12px;padding:10px 12px}.status.info{border:1px solid var(--border-color)}.status.info,.status.warn{background:var(--bg-tertiary);color:var(--text-primary);transition:background .3s ease,color .3s ease,border-color .3s ease}.status.warn{border:1px solid var(--accent-green)}.status.empty{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);transition:background .3s ease,color .3s ease,border-color .3s ease}.courses-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr;width:100%}@media (min-width:480px){.courses-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.courses-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1400px){.courses-grid{grid-template-columns:repeat(4,1fr)}}.course-card{background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;max-height:600px;min-height:480px;overflow:hidden;position:relative;transition:all var(--transition-base)}.course-card:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 5h50v50H5Zm5 5h40v40H10Z' stroke='%2322c55e' stroke-width='.8' fill='none' opacity='.08' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;bottom:12px;content:"";height:60px;opacity:.3;pointer-events:none;position:absolute;right:12px;width:60px;z-index:0}.course-card:focus,.course-card:hover{border-color:var(--accent-green);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-media{aspect-ratio:16/9;overflow:hidden;position:relative;width:100%}.card-media img{display:block;height:100%;inset:0;object-fit:cover;position:absolute;transition:transform .2s ease;width:100%}.course-card:hover .card-media img{transform:scale(1.05)}.card-badge{background:var(--accent-green);border-radius:var(--border-radius-md);bottom:12px;box-shadow:var(--shadow-gold);color:var(--text-primary);font-size:var(--text-caption);font-weight:700;padding:6px 12px;position:absolute;right:12px;z-index:2}.card-body{display:flex;flex:1 1;flex-direction:column;gap:16px;padding:20px}.card-title{-webkit-line-clamp:2;line-clamp:2;color:var(--text-primary);font-size:var(--text-body-lg);font-weight:700;line-height:1.3}.card-sub,.card-title{-webkit-box-orient:vertical;display:-webkit-box;margin:0;overflow:hidden;transition:color .3s ease}.card-sub{-webkit-line-clamp:3;line-clamp:3;line-height:1.5}.card-meta,.card-sub{color:var(--text-secondary);font-size:var(--text-body-sm)}.card-meta{align-items:center;display:flex;gap:12px;justify-content:space-between}.card-meta,.rating{transition:color .3s ease}.rating{color:var(--text-primary);font-weight:600;gap:6px}.rating-stars{color:#f59e0b;font-size:var(--text-body)}.students{color:var(--text-secondary);font-size:var(--text-body-sm);transition:color .3s ease}.card-footer{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:auto;padding-top:12px}.instructor{color:var(--text-secondary);transition:color .3s ease}.btn,.instructor{font-size:var(--text-body-sm)}.btn{border:none;border-radius:12px;flex-shrink:0;gap:8px;min-height:44px;padding:10px 16px;transition:all .15s ease;white-space:nowrap}.btn-primary{background:linear-gradient(90deg,var(--accent-green),var(--accent-green-light));background:linear-gradient(90deg,var(--accent),var(--accent-2));box-shadow:0 4px 16px #22c55e33;color:#fff}.btn-primary:hover{box-shadow:0 6px 20px #22c55e4d;transform:translateY(-1px)}.btn-outline{background:#0000;border:1px solid var(--border-color);color:var(--text-primary);transition:all .3s ease,color .3s ease,border-color .3s ease}.btn-outline:hover{background:#22c55e0d;border-color:#22c55e4d;color:var(--accent-green);color:var(--accent)}.btn-ghost{background:#0000;border:1px dashed var(--border-color);color:var(--text-secondary);transition:all .3s ease,color .3s ease,border-color .3s ease}.btn-ghost:hover{background:#22c55e0d;border-color:var(--accent);color:var(--accent-green);color:var(--accent)}.btn-secondary{background:#4ade80;color:#fff;cursor:not-allowed;transition:all .3s ease}.btn-secondary:disabled{cursor:not-allowed;opacity:.8}.btn-primary{transition:all .3s ease}.pagination-row{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:18px}@media (max-width:1024px){.hero-container{gap:60px;grid-template-columns:1fr;padding:100px 40px}.hero-content,.hero-left{align-items:center;max-width:620px;text-align:center}.hero-title{font-size:var(--text-h2)}.hero-subtitle{font-size:var(--text-body-lg)}.hero-stats{flex-wrap:wrap;gap:20px;justify-content:center}.stat-item{flex-basis:calc(50% - 10px);flex-direction:row;flex-grow:1;flex-shrink:1;justify-content:center;min-width:160px;padding:18px 20px}.stat-text{font-size:var(--text-body)}.stat-icon{font-size:var(--text-h4)}.hero-cta-container{display:flex;justify-content:center;width:100%}.hero-visual{order:-1}.hero-image-wrapper{margin:0 auto;max-width:500px}.hero-image-glass{aspect-ratio:16/12}.hero-image,.hero-image img{min-height:400px}.courses-body{flex-direction:column}.filters-panel{border-bottom:1px solid #e6e9ee;border-bottom:1px solid var(--border);border-right:none;min-height:auto;position:static;width:100%}.courses-main{padding:20px}.courses-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.hero-container{gap:40px;grid-template-columns:1fr;padding:80px 40px}.hero-content,.hero-left{align-items:center;max-width:100%;text-align:center}.hero-title{font-size:var(--text-h2)}.hero-subtitle{font-size:var(--text-body-lg)}.hero-stats{flex-wrap:wrap;gap:16px;justify-content:center}.stat-item{flex-basis:calc(50% - 8px);flex-direction:row;flex-grow:1;flex-shrink:1;justify-content:center;min-width:140px;padding:16px 20px}.stat-text{font-size:var(--text-body)}.stat-icon{font-size:var(--text-h4)}.hero-cta-primary{font-size:var(--text-body);max-width:100%;padding:16px 32px;width:100%}.hero-image-wrapper{max-width:100%}.hero-image-glass{aspect-ratio:16/11}.hero-image,.hero-image img{min-height:300px}.courses-grid{gap:20px;grid-template-columns:repeat(2,1fr)}.course-card{border-radius:12px;min-height:380px}.card-body{padding:16px}.card-title{font-size:var(--text-body)}.card-sub{font-size:var(--text-caption)}.search-controls-container{flex-wrap:wrap;gap:12px}}@media (max-width:640px){.hero-container{flex-direction:column!important;gap:0;padding:80px 40px}.hero-content,.hero-left{align-items:center;max-width:100%;text-align:center}.hero-title{font-size:var(--text-h2)}.hero-subtitle{font-size:var(--text-body)}.hero-stats{flex-wrap:wrap;gap:12px;justify-content:center}.stat-item{flex:1 1 100%;flex-direction:row;justify-content:center;min-width:auto;padding:16px 20px}.stat-text{font-size:var(--text-body-sm)}.stat-icon{font-size:var(--text-h5)}.hero-cta-primary{font-size:var(--text-body);padding:16px 28px}.hero-image-wrapper{max-width:100%}.hero-image-glass{aspect-ratio:16/10}.hero-image,.hero-image img{min-height:250px}.courses-main{padding:16px}.search-controls-container{align-items:stretch;flex-direction:column}.search-input{width:100%}.courses-grid{gap:16px;grid-template-columns:repeat(2,1fr)}.filters-panel{padding:16px}.course-card{min-height:360px}}@media (max-width:480px){.hero-container{gap:24px;padding:48px 16px 40px}.hero-section{min-height:auto}.hero-title{font-size:var(--text-h3)}.hero-subtitle{font-size:var(--text-body)}.hero-stats{flex-direction:column;gap:12px;width:100%}.stat-item{flex-direction:row;justify-content:center;max-width:100%;padding:14px 18px;width:100%}.stat-text{font-size:var(--text-body-sm)}.stat-icon{font-size:var(--text-body-lg)}.hero-cta-primary{font-size:var(--text-body-sm);padding:14px 24px;width:100%}.hero-image-wrapper{max-width:100%}.hero-image-glass{aspect-ratio:16/9}.hero-image,.hero-image img{min-height:200px}.hero-bg-circle{display:none}.courses-grid{gap:16px;grid-template-columns:1fr}.course-card{min-height:400px}.card-body{padding:18px}}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;white-space:nowrap;width:1px}.login-container{align-items:center!important;background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155)!important;background-image:radial-gradient(circle at 20% 50%,#22c55e26 0,#0000 50%),radial-gradient(circle at 80% 80%,#4dde8026 0,#0000 50%),linear-gradient(135deg,#0f172a,#1e293b 50%,#334155)!important;color:#fff!important;display:flex!important;justify-content:center!important;min-height:100vh!important;overflow:hidden!important;padding:1rem!important;position:relative!important;width:100%!important}body:has(.login-container),html:has(.login-container){background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155)!important;color:#fff!important}.login-container:before{background:repeating-linear-gradient(45deg,#0000,#0000 2px,#ffffff05 0,#ffffff05 4px);bottom:0;content:"";left:0;opacity:.5;pointer-events:none;position:absolute;right:0;top:0}.login-box{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1e293bcc;border:1px solid #ffffff1a;border-radius:1.5rem;box-shadow:0 20px 50px #00000080,0 0 0 1px #ffffff0d,inset 0 1px 0 #ffffff1a;max-width:440px;padding:3rem 2.5rem;position:relative;transition:all var(--transition-base);width:100%;z-index:1}.login-box:hover{border-color:#22c55e4d;box-shadow:0 30px 60px #0009,0 0 0 1px #22c55e4d,inset 0 1px 0 #ffffff1a;transform:translateY(-8px)}.login-header{margin-bottom:2rem;text-align:center}.login-logo{background:#ffffff1a;border:2px solid #22c55e4d;border-radius:16px;box-shadow:0 4px 12px #22c55e4d,0 0 20px #22c55e1a;height:80px;margin-bottom:.75rem;object-fit:contain;padding:8px;transition:all var(--transition-base);width:80px}.login-header h2{color:#fff;font-size:var(--text-h3);font-weight:700;margin-bottom:.25rem}.login-header p{color:#9ca3af;font-size:var(--text-body)}.forgot-password{margin-top:.5rem;text-align:right}.forgot-password button{background:none;border:none;color:var(--accent-green);cursor:pointer;font-size:var(--text-body-sm);font-weight:500}.forgot-password button:hover{text-decoration:underline}.login-button{background:var(--primary-gradient);border:none;border-radius:.75rem;box-shadow:0 4px 15px #22c55e4d;color:#fff;cursor:pointer;font-size:var(--text-body);font-weight:600;margin-top:1.5rem;overflow:hidden;padding:1rem;position:relative;transition:all var(--transition-base);width:100%}.login-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.login-button:hover:before{left:100%}.login-button:hover{box-shadow:0 8px 25px #22c55e66;transform:translateY(-2px)}.login-button:active{transform:translateY(0)}.error-alert{background:#ef44441a;border:1px solid #ef444466;border-radius:.5rem;color:#fca5a5;font-size:var(--text-body-sm);margin-bottom:1.25rem;padding:.875rem 1rem}.error-message{color:#fca5a5;display:block;font-size:var(--text-caption);margin-top:.4rem}.error-link{background:none;border:none;color:var(--accent-green);cursor:pointer;display:inline;font-weight:500;padding:0;text-decoration:underline}.error-link:hover{color:var(--accent-green-light)}input[aria-invalid=true]{border-color:#ef4444!important}.login-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-button:disabled:hover{background:var(--accent-green-dark);transform:none}.login-footer{color:#9ca3af;font-size:var(--text-body-sm);margin-top:1.5rem;text-align:center}.login-footer button{background:none;border:none;color:var(--accent-green);cursor:pointer;font-weight:500}.login-footer button:hover{text-decoration:underline}@media (max-width:480px){.login-box{padding:2rem 1.5rem}.login-header h2{font-size:var(--text-h4)}.form-group input{font-size:var(--text-body-sm)}}.signup-page{align-items:center!important;background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155)!important;background-image:radial-gradient(circle at 20% 50%,#22c55e26 0,#0000 50%),radial-gradient(circle at 80% 80%,#4dde8026 0,#0000 50%),linear-gradient(135deg,#0f172a,#1e293b 50%,#334155)!important;color:#fff!important;display:flex!important;justify-content:center!important;min-height:100vh!important;overflow:hidden!important;padding:1rem!important;position:relative!important;width:100%!important}body:has(.signup-page),html:has(.signup-page){background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155)!important;color:#fff!important}.signup-page:before{background:repeating-linear-gradient(45deg,#0000,#0000 2px,#ffffff05 0,#ffffff05 4px);bottom:0;content:"";left:0;opacity:.5;pointer-events:none;position:absolute;right:0;top:0}.signup-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1e293bcc;border:1px solid #ffffff1a;border-radius:1.5rem;box-shadow:0 20px 50px #00000080,0 0 0 1px #ffffff0d,inset 0 1px 0 #ffffff1a;max-width:460px;padding:3rem 2.5rem;position:relative;transition:all var(--transition-base);width:100%;z-index:1}.signup-container:hover{border-color:#22c55e4d;box-shadow:0 30px 60px #0009,0 0 0 1px #22c55e4d,inset 0 1px 0 #ffffff1a;transform:translateY(-8px)}.signup-header{margin-bottom:2rem;text-align:center}.signup-logo{background:#ffffff1a;border:2px solid #22c55e4d;border-radius:16px;box-shadow:0 4px 12px #22c55e4d,0 0 20px #22c55e1a;height:80px;margin-bottom:.75rem;object-fit:contain;padding:8px;transition:all var(--transition-base);width:80px}.signup-header h2{font-size:var(--text-h3);font-weight:700;margin-bottom:.25rem}.signup-header p{color:#9ca3af;font-size:var(--text-body)}.form-group{margin-bottom:1.25rem}.form-group label{color:#d1d5db;display:block;font-size:var(--text-body-sm);margin-bottom:.5rem}.form-group input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a80;border:1px solid #ffffff1a;border-radius:.75rem;color:#fff;font-size:var(--text-body);padding:.95rem 1.25rem;transition:all var(--transition-base);width:100%}.form-group input::placeholder{color:#fff6}.form-group input:focus{background:#0f172ab3;border-color:var(--primary);box-shadow:0 0 0 3px #22c55e33,0 4px 12px #0000004d;outline:none}.password-wrapper{position:relative}.password-wrapper input{padding-right:2.75rem}.password-toggle{background:none;border:none;color:#9ca3af;cursor:pointer;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.password-rules{font-size:var(--text-caption);margin-top:8px}.password-rules .valid{color:#10b981}.error-msg,.password-rules .invalid{color:#ef4444}.error-msg{font-size:var(--text-caption);margin-top:6px}.signup-btn{background:var(--primary-gradient);border:none;border-radius:.75rem;box-shadow:0 4px 15px #22c55e4d;color:#fff;cursor:pointer;font-size:var(--text-body);font-weight:600;margin-top:1.5rem;overflow:hidden;padding:1rem;position:relative;transition:all var(--transition-base);width:100%}.signup-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.signup-btn:hover:before{left:100%}.signup-btn:hover{box-shadow:0 8px 25px #22c55e66;transform:translateY(-2px)}.signup-btn:active{transform:translateY(0)}.signup-btn:disabled{background:#6b7280;cursor:not-allowed}.signup-footer{color:#9ca3af;font-size:var(--text-body-sm);margin-top:1.5rem;text-align:center}.signup-footer button{background:none;border:none;color:var(--accent-green);cursor:pointer;font-weight:500}.signup-footer button:hover{text-decoration:underline}@media (max-width:480px){.signup-container{padding:2rem 1.5rem}.signup-header h2{font-size:var(--text-h4)}.form-group input{font-size:var(--text-body-sm)}}.shopping-cart-page{background:var(--bg-secondary);color:var(--text-primary);min-height:100vh;padding:2rem 0}.cart-container{margin:0;padding:0 2rem;width:100%}.cart-header{gap:1.5rem;margin-bottom:2rem}.back-btn,.cart-header{align-items:center;display:flex}.back-btn{background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:14px;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.back-btn:hover{background-color:var(--bg-neutral);color:var(--text-primary)}.cart-title{font-size:2rem;font-weight:700;gap:1rem;margin:0}.cart-title,.empty-cart{align-items:center;display:flex}.empty-cart{background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.empty-cart svg{color:var(--text-secondary);margin-bottom:1.5rem}.empty-cart h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:.5rem}.empty-cart p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem}.cart-content{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:1fr 450px;margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:1400px}.cart-items{background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);overflow:hidden}.items-header{align-items:center;border-bottom:var(--border-width) solid var(--border-color);display:flex;justify-content:space-between;padding:1.5rem}.items-header h2{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.clear-cart-btn{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.clear-cart-btn:hover{background-color:var(--bg-neutral);color:var(--text-primary)}.items-list{padding:1rem}.cart-item{grid-gap:1rem;background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-sm);display:grid;gap:1rem;grid-template-columns:120px 1fr auto auto;margin-bottom:1rem;padding:1.5rem;transition:all .2s ease}.cart-item:hover{background:var(--bg-secondary);border-color:var(--accent-green);box-shadow:var(--shadow-md)}.item-image{border-radius:8px;height:80px;overflow:hidden;width:120px}.item-image img{height:100%;object-fit:cover;width:100%}.item-details{display:flex;flex-direction:column;gap:.5rem}.item-title{color:var(--text-primary);font-size:1.1rem;font-weight:600;line-height:1.3;margin:0}.item-subtitle{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:.9rem;line-height:1.4;margin:0;overflow:hidden}.item-meta,.item-subtitle{color:var(--text-secondary)}.item-meta{align-items:center;display:flex;font-size:.85rem;gap:1rem}.instructor{font-weight:500}.rating{align-items:center;display:flex;gap:.25rem}.rating-value{font-weight:600}.rating-stars{color:var(--accent-green)}.item-price{align-items:center;display:flex;font-size:1.1rem;font-weight:600}.price-amount,.price-free{color:var(--accent-green)}.remove-btn{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s ease}.remove-btn:hover{background-color:var(--bg-neutral);color:var(--text-primary)}.cart-summary{height:-webkit-fit-content;height:fit-content;position:-webkit-sticky;position:sticky;top:2rem}.summary-card{background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);padding:1.5rem}.summary-card h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.summary-line{align-items:center;border-bottom:var(--border-width) solid var(--border-color);color:var(--text-primary);display:flex;font-size:1rem;justify-content:space-between;padding:.75rem 0}.summary-line.total{border-bottom:none;border-top:2px solid var(--accent-green);color:var(--accent-green);font-size:1.2rem;font-weight:700;margin-top:1rem;padding-top:1rem}.checkout-btn{align-items:center;background:var(--accent-green);border:var(--border-width) solid var(--accent-green);border-radius:12px;box-shadow:var(--shadow-gold);color:var(--text-primary);cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:1.5rem;padding:1rem 2rem;transition:all .2s ease;width:100%}.checkout-btn:hover{background:var(--accent-green-dark);border-color:var(--accent-green-dark);box-shadow:0 6px 16px #22c55e4d;transform:translateY(-2px)}.checkout-info{border-top:var(--border-width) solid var(--border-color);margin-top:1.5rem;padding-top:1.5rem}.checkout-info p{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;gap:.5rem;margin:.5rem 0}.related-courses{background:var(--bg-primary);border:var(--border-width) solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);margin:0 auto;max-width:1400px;padding:2rem}.related-courses h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.related-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.related-course{background:var(--bg-secondary);border:var(--border-width) solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-sm);cursor:pointer;padding:1rem;transition:all .2s ease}.related-course:hover{background:var(--bg-primary);border-color:var(--accent-green);box-shadow:var(--shadow-md);transform:translateY(-2px)}.related-image{border-radius:8px;height:100px;margin-bottom:.75rem;overflow:hidden;width:100%}.related-image img{height:100%;object-fit:cover;width:100%}.related-details h4{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:.9rem;font-weight:600;line-height:1.3;margin:0 0 .25rem;overflow:hidden}.related-details p{color:var(--text-secondary);font-size:.8rem;margin:0 0 .5rem}.related-price{color:var(--text-primary);font-size:.9rem;font-weight:600}.related-price .price-free{color:var(--accent-green)}.related-add-btn{background:var(--accent-green);border:var(--border-width) solid var(--accent-green);border-radius:6px;box-shadow:var(--shadow-sm);color:var(--text-primary);cursor:pointer;font-size:.8rem;font-weight:600;margin-top:8px;padding:6px 12px;transition:all .2s ease;width:100%}.related-add-btn:hover{background:var(--accent-green-dark);border-color:var(--accent-green-dark);box-shadow:var(--shadow-gold);transform:translateY(-1px)}@media (max-width:768px){.cart-container{padding:0 1rem}.cart-content{gap:1.5rem;grid-template-columns:1fr}.cart-summary{order:-1;position:static}.cart-item{gap:.75rem;grid-template-columns:80px 1fr auto;padding:1rem}.item-image{height:60px;width:80px}.remove-btn{grid-column:1/-1;justify-self:end;margin-top:.5rem}.related-grid{grid-template-columns:1fr}}@media (max-width:480px){.cart-header{align-items:flex-start;flex-direction:column;gap:1rem}.cart-title{font-size:1.5rem}.cart-item{grid-template-columns:1fr;text-align:center}.item-image{height:120px;justify-self:center;width:100%}.remove-btn{grid-column:auto;justify-self:center;margin-top:1rem}}.my-courses-container{margin:0 auto;max-width:1400px;min-height:80vh;padding:60px 20px}.my-courses-header{margin-bottom:40px}.my-courses-header h1{color:var(--text-primary);font-size:var(--text-h1);font-weight:700;margin-bottom:8px}.my-courses-header p{color:#6b7280;font-size:var(--text-body-lg)}.my-courses-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.my-course-card{background:#fff;border-radius:12px;box-shadow:0 4px 16px #00000014;cursor:pointer;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease}.my-course-card:hover{box-shadow:0 12px 28px #00000026;transform:translateY(-6px)}.my-course-card.pack-card{border:2px solid var(--primary)}.pack-badge{align-items:center;background:linear-gradient(135deg,var(--primary),var(--accent-green));border-radius:20px;box-shadow:0 4px 12px #22c55e59;color:#fff;display:flex;font-size:var(--text-body-sm);font-weight:600;gap:6px;padding:6px 12px;position:absolute;right:12px;top:12px;z-index:10}.course-thumbnail{height:220px;overflow:hidden;position:relative;width:100%}.course-thumbnail img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.my-course-card:hover .course-thumbnail img{transform:scale(1.05)}.play-overlay{align-items:center;background:#0000004d;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.my-course-card:hover .play-overlay{opacity:1}.play-button{align-items:center;background:#22c55ee6;border-radius:50%;display:flex;height:60px;justify-content:center;transition:transform .2s ease;width:60px}.my-course-card:hover .play-button{transform:scale(1.1)}.course-details{padding:20px}.course-details h3{color:#111827;font-size:var(--text-body-lg);font-weight:700;line-height:1.4;margin-bottom:12px}.course-meta{align-items:center;color:#6b7280;display:flex;font-size:var(--text-body-sm);justify-content:space-between;margin-bottom:16px}.video-count{background:#22c55e1a;color:var(--accent-green)}.video-count,.video-single{font-weight:600;padding:4px 10px}.video-single{background:#f3f4f6;border-radius:12px;color:#374151}.duration{font-weight:500}.progress-section{margin-bottom:16px}.progress-bar-container{background:#e5e7eb;border-radius:10px;height:8px;margin-bottom:8px;overflow:hidden;width:100%}.progress-bar-fill{background:linear-gradient(90deg,var(--primary),var(--accent-green));border-radius:10px;height:100%;transition:width .3s ease}.progress-text{color:#6b7280;font-size:var(--text-body-sm);font-weight:500}.continue-btn{background:linear-gradient(135deg,var(--primary),var(--accent-green));border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:var(--text-body);font-weight:600;padding:12px;transition:transform .2s ease,box-shadow .2s ease;width:100%}.continue-btn:hover{box-shadow:0 6px 16px #22c55e59;transform:translateY(-2px)}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center}.loading-state .spinner{animation:spin 1s linear infinite;color:var(--primary);margin-bottom:16px}.loading-state p{color:#6b7280;font-size:var(--text-body-lg)}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 20px;text-align:center}.empty-state h2{color:#374151;font-size:var(--text-h4);font-weight:700;margin:20px 0 10px}.empty-state p{color:#6b7280;font-size:var(--text-body-lg);margin-bottom:30px}.browse-btn{background:linear-gradient(135deg,var(--primary),var(--accent-green));border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:var(--text-body);font-weight:600;padding:14px 32px;transition:transform .2s ease}.browse-btn:hover{transform:translateY(-2px)}@media (max-width:768px){.my-courses-container{padding:40px 16px}.my-courses-header h1{font-size:var(--text-h3)}.my-courses-grid{gap:20px;grid-template-columns:1fr}}.course-player-container{background:#0f0f0f;color:#fff;display:flex;min-height:calc(100vh - 80px)}.error-state,.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center;width:100%}.loading-state .spinner,.video-loading .spinner{animation:spin 1s linear infinite}.video-loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center;width:100%}.video-loading p{color:#aaa;margin-top:1rem}@keyframes spin{to{transform:rotate(1turn)}}.error-state h2{color:#ff6b6b;margin-bottom:1rem}.error-state p{color:#aaa;margin-bottom:2rem}.back-btn,.retry-btn{background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background .3s}.back-btn:hover,.retry-btn:hover{background:var(--accent-green)}.player-main{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;position:relative;z-index:1}.video-container{aspect-ratio:16/9;background:#000;max-height:calc(100vh - 200px);position:relative;width:100%;z-index:0}.video-player,.video-wrapper{height:100%;width:100%}.video-player{object-fit:contain}.video-wrapper{overflow:hidden;position:relative}.video-wrapper:before{animation:securityPulse 10s infinite;background:linear-gradient(45deg,#0000 30%,#ffffff0d 50%,#0000 70%);bottom:0;left:0;opacity:.3;right:0;top:0;z-index:1}.video-wrapper:after,.video-wrapper:before{content:"";pointer-events:none;position:absolute}.video-wrapper:after{animation:securityIndicator 3s infinite;background:#ffffff1a;border-radius:50%;height:20px;right:10px;top:10px;width:20px;z-index:2}.video-buffering-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;border-radius:12px;display:flex;flex-direction:column;gap:1rem;justify-content:center;left:50%;padding:2rem;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:20}.video-buffering-overlay .spinner{animation:spin 1s linear infinite;color:#fff}.video-buffering-overlay p{color:#fff;font-size:1rem;font-weight:500;margin:0}@keyframes securityPulse{0%,to{opacity:.1}50%{opacity:.3}}@keyframes securityIndicator{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.secure-video{pointer-events:auto!important;user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.custom-controls{background:linear-gradient(#0000,#000000e6);bottom:0;display:flex;flex-direction:column;gap:.5rem;left:0;opacity:0;padding:1rem;position:absolute;right:0;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;z-index:10}.custom-controls.visible{opacity:1;visibility:visible}.controls-top{align-items:center;display:flex;justify-content:center}.time-display{background:#00000080;border-radius:20px;color:#fff;font-size:.9rem;font-weight:500;min-width:120px;padding:.25rem .75rem;text-align:center}.controls-center{gap:1rem}.control-btn,.controls-center{align-items:center;display:flex;justify-content:center}.control-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;height:48px;transition:all .2s ease;width:48px}.control-btn:hover{background:#fff3;transform:scale(1.05)}.control-btn:active{transform:scale(.95)}.control-btn:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.play-pause-btn{background:#ffffff26;height:64px;width:64px}.play-pause-btn:hover{background:#ffffff40}.controls-bottom{align-items:center;display:flex;gap:1rem}.progress-container{align-items:center;display:flex;flex:1 1}.progress-bar{-webkit-appearance:none;appearance:none;background:#ffffff4d;border-radius:3px;cursor:pointer;height:6px;outline:none;transition:height .2s ease;width:100%}.progress-bar:hover{height:8px}.progress-bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;box-shadow:0 2px 6px #0000004d;cursor:pointer;height:20px;-webkit-transition:transform .2s ease;transition:transform .2s ease;width:20px}.progress-bar::-webkit-slider-thumb:hover{transform:scale(1.2)}.progress-bar::-moz-range-thumb{background:#fff;border:none;border-radius:50%;box-shadow:0 2px 6px #0000004d;cursor:pointer;height:20px;width:20px}.controls-right{align-items:center;display:flex;gap:.75rem;min-width:280px}.volume-btn{height:36px;width:36px}.volume-slider-container{align-items:center;display:flex;width:80px}.fullscreen-btn,.pip-btn{height:36px;width:36px}.fullscreen-btn.active,.pip-btn.active{background:#22c55e4d;color:var(--accent-green)}.volume-slider{-webkit-appearance:none;appearance:none;background:#ffffff4d;border-radius:2px;cursor:pointer;height:4px;outline:none;width:100%}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;box-shadow:0 0 2px #00000080;cursor:pointer;height:16px;width:16px}.volume-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;box-shadow:0 0 2px #00000080;cursor:pointer;height:16px;width:16px}.secure-video::-webkit-media-controls-download-button,.secure-video::-webkit-media-controls-panel-button[aria-label=Download]{display:none!important}.no-video,.video-error{align-items:center;color:#aaa;display:flex;flex-direction:column;height:100%;justify-content:center}.no-video p,.video-error p{margin:1rem 0}.video-placeholder{align-items:center;background:#0a0a0a;display:flex;height:100%;justify-content:center;min-height:400px;width:100%}.video-placeholder-content{color:#fff;padding:2rem;text-align:center}.video-placeholder-icon{color:#fff;margin:0 auto 1.5rem;opacity:.8}.video-placeholder-content h3{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.video-placeholder-content p{color:#aaa;font-size:1rem;margin-bottom:2rem}.video-play-button{align-items:center;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 2rem;transition:all .2s ease}.video-play-button:hover:not(:disabled){background:var(--accent-green);box-shadow:0 4px 12px #22c55e66;transform:translateY(-2px)}.video-play-button:active:not(:disabled){transform:translateY(0)}.video-play-button:disabled{cursor:not-allowed;opacity:.6}.video-info{background:#1a1a1a;color:#fff;padding:2rem;position:relative;z-index:1}.video-info h1{color:#fff;font-size:1.8rem;font-weight:600;line-height:1.3;margin-bottom:1rem}.video-meta{color:#aaa;display:flex;font-size:.9rem;gap:2rem;margin-bottom:1.5rem}.course-description h3{color:#fff;font-size:1.2rem;font-weight:600;line-height:1.4;margin-bottom:.75rem}.course-description p{color:#ccc;line-height:1.6}.player-sidebar{background:linear-gradient(180deg,#1a1a1a,#151515);border-left:1px solid #ffffff1a;box-shadow:-4px 0 12px #0000004d;display:flex;flex-direction:column;overflow:hidden;width:380px}.sidebar-header{align-items:center;background:#ffffff05;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:1.75rem 1.5rem}.sidebar-header h3{color:#fff;font-size:1.15rem;font-weight:600;margin:0}.video-count{background:#ffffff1a;border-radius:12px;color:#888;font-size:.85rem;font-weight:500;padding:.25rem .75rem}.video-list{flex:1 1;overflow-y:auto;padding:.5rem 0}.video-list::-webkit-scrollbar{width:6px}.video-list::-webkit-scrollbar-track{background:#0000}.video-list::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.video-list::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.video-item{align-items:center;border-bottom:1px solid #ffffff0d;border-radius:8px;cursor:pointer;display:flex;gap:1rem;margin:0 .5rem;outline:none;padding:1rem 1.5rem;position:relative;transition:all .2s ease}.video-item:focus{outline:2px solid #22c55e99;outline-offset:-2px}.video-item:before{background:#0000;border-radius:0 3px 3px 0;bottom:0;content:"";left:0;position:absolute;top:0;transition:background .2s ease;width:3px}.video-item:hover{background:#ffffff0d;transform:translateX(4px)}.video-item:hover:before{background:#fff3}.video-item.active{background:linear-gradient(90deg,#22c55e26,#22c55e0d);border-color:#22c55e66}.video-item.active:before{background:var(--primary);width:4px}.video-item.completed{opacity:.85}.video-item.completed .video-item-icon{background:#10b98133}.video-item-icon{align-items:center;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:10px;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s ease;width:36px}.video-item.active .video-item-icon{background:#22c55e4d;border-color:#22c55e99;box-shadow:0 0 12px #22c55e66}.video-number{color:#aaa;font-size:.875rem;font-weight:600}.video-item.active .video-number{color:#fff}.completed-icon{color:#10b981;height:20px;width:20px}.playing-icon{color:var(--primary);height:20px;width:20px}.video-item-info{flex:1 1;min-width:0}.video-item-info h4{color:#ddd;font-size:.95rem;font-weight:500;line-height:1.4;margin-bottom:.35rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-item.active .video-item-info h4{color:#fff;font-weight:600}.video-item-info .video-duration{color:#888;display:block;font-size:.8rem}.video-item.active .video-item-info .video-duration{color:#ffffffb3}.video-item.current-indicator{color:var(--primary);margin-left:auto}.video-duration{color:#aaa;font-size:.85rem}.current-indicator{color:#fff;flex-shrink:0}@media (max-width:1024px){.course-player-container{flex-direction:column}.player-sidebar{border-left:none;border-top:1px solid #333;max-height:400px;width:100%}.video-container{max-height:60vh}.controls-right{min-width:200px}.volume-slider-container{width:60px}.time-display{font-size:.8rem;min-width:100px}}@media (max-width:768px){.video-info{color:#fff;padding:1.5rem;position:relative;z-index:1}.video-info h1{font-size:1.4rem}.course-description h3,.video-info h1{color:#fff;font-weight:600}.video-meta{flex-direction:column;gap:.5rem}.sidebar-header{padding:1rem}.video-item{padding:.75rem 1rem}.custom-controls{gap:.25rem;padding:.75rem}.control-btn{height:40px;width:40px}.play-pause-btn{height:56px;width:56px}.controls-right{gap:.5rem;min-width:160px}.volume-slider-container{width:50px}.time-display{font-size:.8rem;padding:.2rem .5rem}}@media (hover:none) and (pointer:coarse){.custom-controls.visible{opacity:1;visibility:visible}.control-btn{min-height:48px;min-width:48px}.play-pause-btn{min-height:64px;min-width:64px}.progress-bar,.volume-slider{height:8px}.progress-bar::-webkit-slider-thumb,.volume-slider::-webkit-slider-thumb{height:24px;width:24px}.progress-bar::-moz-range-thumb,.volume-slider::-moz-range-thumb{height:24px;width:24px}.fullscreen-btn,.pip-btn{min-height:44px;min-width:44px}}.skip-overlay{animation:skipFade 1s ease-out;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:15}.skip-overlay.forward{right:2rem}.skip-overlay.backward{left:2rem}.skip-icon{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c;border:2px solid #fff3;border-radius:12px;box-shadow:0 4px 20px #00000080;color:#fff;font-size:1.2rem;font-weight:700;min-width:80px;padding:1rem 1.5rem;text-align:center}@keyframes skipFade{0%{opacity:0;transform:translateY(-50%) scale(.8)}20%{opacity:1;transform:translateY(-50%) scale(1.1)}80%{opacity:1;transform:translateY(-50%) scale(1)}to{opacity:0;transform:translateY(-50%) scale(.9)}}@media (max-width:768px){.skip-overlay.forward{right:1rem}.skip-overlay.backward{left:1rem}.skip-icon{font-size:1rem;min-width:60px;padding:.75rem 1rem}}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafaf9;background-color:var(--bg-secondary);color:#0b0b0b;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100%;scroll-behavior:smooth;transition:background-color .3s ease,color .3s ease;width:100%}:root{--bg-primary:#fff;--bg-secondary:#fafaf9;--bg-tertiary:#f5f5f5;--bg-neutral:#f0efef;--text-primary:#0b0b0b;--text-secondary:#6b6f76;--text-dark:#111217;--accent-green:#22c55e;--accent-green-light:#4ade80;--accent-green-dark:#16a34a;--accent-slate:#2e3a45;--gray-50:#fafaf9;--gray-100:#f5f5f5;--gray-200:#f0efef;--gray-300:#e5e5e5;--gray-400:#d4d4d4;--gray-500:#9ca3af;--gray-600:#6b7280;--gray-700:#4b5563;--gray-800:#374151;--gray-900:#111827;--font-display:"Playfair Display",serif;--font-body:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--text-h1:3.5rem;--text-h2:2.75rem;--text-h3:2rem;--text-h4:1.5rem;--text-h5:1.25rem;--text-body-lg:1.125rem;--text-body:1rem;--text-body-sm:0.875rem;--text-caption:0.75rem;--lh-heading:1.15;--lh-body:1.6;--shadow-sm:0 1px 2px 0 #0b0b0b0d;--shadow-md:0 2px 4px -1px #0b0b0b1a,0 1px 2px -1px #0b0b0b0f;--shadow-lg:0 4px 6px -1px #0b0b0b1a,0 2px 4px -2px #0b0b0b0f;--shadow-xl:0 10px 15px -3px #0b0b0b1a,0 4px 6px -4px #0b0b0b0d;--shadow-2xl:0 20px 25px -5px #0b0b0b26;--shadow-green:0 4px 12px #22c55e33;--border-color:#d4d4d4;--border-color-strong:#9ca3af;--border-width:1px;--border-radius-sm:0.25rem;--border-radius-md:0.5rem;--border-radius-lg:0.75rem;--border-radius-xl:1rem;--border-radius-2xl:1.5rem;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:300ms cubic-bezier(0.4,0,0.2,1);--transition-slow:500ms cubic-bezier(0.4,0,0.2,1);--primary:var(--accent-green);--primary-dark:var(--accent-green-dark);--primary-light:var(--accent-green-light);--primary-gradient:linear-gradient(135deg,var(--accent-green) 0%,var(--accent-green-light) 100%);--dark-bg:#0f172a;--dark-surface:#1e293b;--dark-surface-elevated:#334155;--glass-bg:#ffffff1a;--glass-border:#fff3;--glass-shadow:0 8px 32px 0 #1f26875e;--anim-fast:0.2s;--anim-base:0.3s;--anim-slow:0.6s;--anim-slower:1s;--glow-primary:0 0 20px #22c55e66;--glow-gold:0 0 20px #22c55e66;--glow-purple:0 0 20px #8b5cf666;--shadow-gold:0 4px 12px #22c55e33}[data-theme=dark]{--bg-primary:#020617;--bg-secondary:#020617;--bg-tertiary:#02081b;--bg-neutral:#020617;--text-primary:#e9fdf5;--text-secondary:#a3b3c6;--text-dark:#c7ffe5;--gray-50:#020617;--gray-100:#020617;--gray-200:#0b1120;--gray-300:#111827;--gray-400:#1f2937;--gray-500:#64748b;--gray-600:#94a3b8;--gray-700:#cbd5f5;--gray-800:#e2e8f0;--gray-900:#f8fafc;--accent-green:#00ff6a;--accent-green-light:#4dffa1;--accent-green-dark:#00cc52;--primary:var(--accent-green);--primary-light:var(--accent-green-light);--primary-dark:var(--accent-green-dark);--primary-gradient:linear-gradient(135deg,var(--accent-green) 0%,var(--accent-green-light) 100%);--glass-bg:#020617e6;--glass-border:#94a3b873;--glass-shadow:0 20px 45px #000000e6;--shadow-sm:0 1px 2px 0 #00000080;--shadow-md:0 4px 8px #000000b3;--shadow-lg:0 10px 20px #000000bf;--shadow-xl:0 18px 35px #000000d9;--shadow-2xl:0 28px 60px #000000e6;--shadow-gold:0 0 24px #00ff6ab3;--border-color:#94a3b873;--border-color-strong:#94a3b8cc;--glow-primary:0 0 24px #00ff6ab3;--glow-gold:0 0 24px #00ff6ab3;--glow-purple:0 0 24px #38bdf899}[data-theme=light]{--accent-green:#22c55e;--accent-green-light:#4ade80;--accent-green-dark:#16a34a;--shadow-gold:0 4px 12px #22c55e33;--glow-gold:0 0 20px #22c55e66;--primary:var(--accent-green);--primary-light:var(--accent-green-light);--primary-dark:var(--accent-green-dark);--primary-gradient:linear-gradient(135deg,var(--accent-green) 0%,var(--accent-green-light) 100%);--bg-primary:#fff;--bg-secondary:#fafafa;--bg-tertiary:#f5f5f5;--bg-neutral:#f0f0f0;--text-primary:#0b0b0b;--text-secondary:#4b5563;--text-dark:#111217;--gray-50:#fafaf9;--gray-100:#f5f5f5;--gray-200:#f0efef;--gray-300:#e5e5e5;--gray-400:#d4d4d4;--gray-500:#9ca3af;--gray-600:#6b7280;--gray-700:#4b5563;--gray-800:#374151;--gray-900:#111827;--glass-bg:#fffc;--glass-border:#0000001a;--glass-shadow:0 8px 32px 0 #0000001a;--shadow-sm:0 1px 2px 0 #0b0b0b0d;--shadow-md:0 2px 4px -1px #0b0b0b1a,0 1px 2px -1px #0b0b0b0f;--shadow-lg:0 4px 6px -1px #0b0b0b1a,0 2px 4px -2px #0b0b0b0f;--shadow-xl:0 10px 15px -3px #0b0b0b1a,0 4px 6px -4px #0b0b0b0d;--shadow-2xl:0 20px 25px -5px #0b0b0b26;--border-color:#d4d4d4;--border-color-strong:#9ca3af;--page-x:16px}@media (min-width:768px){:root{--page-x:24px}}@media (min-width:1024px){:root{--page-x:40px}}html{scroll-behavior:smooth}::selection{background-color:#22c55e4d;color:#0b0b0b;color:var(--text-primary)}::-moz-selection{background-color:#22c55e4d;color:#0b0b0b;color:var(--text-primary)}.btn{align-items:center;border:1px solid #0000;border:var(--border-width) solid #0000;border-radius:.5rem;border-radius:var(--border-radius-md);cursor:pointer;display:inline-flex;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-size:15px;font-weight:600;justify-content:center;letter-spacing:.01em;overflow:hidden;padding:14px 32px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.btn.primary{background:#22c55e;background:var(--primary);border-color:#22c55e;border-color:var(--primary);box-shadow:0 4px 12px #22c55e33;box-shadow:var(--shadow-gold);color:#0b0b0b;color:var(--text-primary)}.btn.primary:hover{background:#16a34a;background:var(--primary-dark);border-color:#16a34a;border-color:var(--primary-dark);box-shadow:0 6px 16px #22c55e4d;transform:translateY(-2px)}.btn.primary:active{transform:translateY(0)}.btn.ghost{background:#0000;border:1px solid #22c55e;border:var(--border-width) solid var(--primary)}.btn.ghost,.btn.ghost:hover{color:#0b0b0b;color:var(--text-primary)}.btn.ghost:hover{background:#22c55e;background:var(--primary);border-color:#22c55e;border-color:var(--primary)}.card{background:#fff;background:var(--bg-primary);border:1px solid #d4d4d4;border:var(--border-width) solid var(--border-color);border-radius:.75rem;border-radius:var(--border-radius-lg);box-shadow:0 1px 2px 0 #0b0b0b0d;box-shadow:var(--shadow-sm);padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.card:hover{border-color:#22c55e;border-color:var(--primary);box-shadow:0 4px 6px -1px #0b0b0b1a,0 2px 4px -2px #0b0b0b0f;box-shadow:var(--shadow-lg);transform:translateY(-2px)}input,select,textarea{border-radius:.5rem;border-radius:var(--border-radius-md);transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}input:focus,select:focus,textarea:focus{border-color:#22c55e;border-color:var(--primary);box-shadow:0 0 0 3px #22c55e1a;outline:none}body,html{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body)}body{font-size:1rem;font-size:var(--text-body);line-height:1.6;line-height:var(--lh-body)}.container{margin-left:auto;margin-right:auto;max-width:1200px;padding-left:var(--page-x);padding-right:var(--page-x);width:100%}img,video{display:block;height:auto;max-width:100%}.text-safe{overflow-wrap:anywhere;word-break:break-word}h1,h2,h3,h4,h5,h6{color:#0b0b0b;color:var(--text-primary);font-family:Playfair Display,serif;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.15;line-height:var(--lh-heading)}h1{font-size:3.5rem;font-size:var(--text-h1)}h2{font-size:2.75rem;font-size:var(--text-h2)}h3{font-size:2rem;font-size:var(--text-h3)}h4{font-size:1.5rem;font-size:var(--text-h4)}h5{font-size:1.25rem;font-size:var(--text-h5)}p{font-size:1rem;font-size:var(--text-body)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.fade-in{animation:fadeIn .5s ease-out}.slide-in{animation:slideIn .5s ease-out}.architectural-pattern{overflow:hidden;position:relative}.architectural-pattern:before{background:repeating-linear-gradient(0deg,#0000,#0000 20px,#0b0b0b05 0,#0b0b0b05 21px),repeating-linear-gradient(90deg,#0000,#0000 20px,#0b0b0b05 0,#0b0b0b05 21px);bottom:0;content:"";left:0;opacity:.3;pointer-events:none;position:absolute;right:0;top:0}.small-caps{font-feature-settings:"smcp";color:#6b6f76;color:var(--text-secondary);font-size:.875rem;font-variant:small-caps;letter-spacing:.1em;text-transform:lowercase}.App{text-align:center}.App-logo{animation:App-logo-spin 20s linear infinite;height:40vmin;pointer-events:none}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.62ed49d0.css.map*/