:root{--primary-blue: #3b82f6;--primary-blue-dark: #2563eb;--primary-blue-darker: #1d4ed8;--success-green: #10b981;--success-green-dark: #059669;--warning-orange: #f59e0b;--danger-red: #ef4444;--danger-red-dark: #dc2626;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25)}.subscription-management{max-width:1280px;margin:0 auto;padding:3rem 2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(180deg,#f8fafc,#fff);min-height:100vh}.subscription-management .subscription-header{text-align:center;margin-bottom:1rem;animation:fadeInDown .6s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.subscription-management .subscription-header h2{font-size:clamp(2rem,5vw,3rem);font-weight:800;margin-bottom:1rem;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-darker) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.subscription-management .subscription-header p{color:var(--gray-600);font-size:1.125rem;max-width:600px;margin:0 auto;line-height:1.6}.subscription-management .loading-container{text-align:center;padding:6rem 2rem}.subscription-management .loading-spinner{display:inline-block;width:2rem;height:2rem;border:3px solid var(--gray-200);border-top-color:var(--primary-blue);border-radius:50%;animation:spin .8s linear infinite}.subscription-management .loading-spinner.large{width:3rem;height:3rem;border-width:4px}.subscription-management .current-subscription-info{margin-bottom:3rem}.subscription-management .current-subscription-info:hover{box-shadow:var(--shadow-xl),0 0 0 1px #3b82f61a;transform:translateY(-2px)}.subscription-management .current-subscription-info h3{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin-bottom:1.5rem;letter-spacing:-.01em}.subscription-management .subscription-details{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.subscription-management .plan-info{display:flex;align-items:flex-start;gap:1.25rem;flex:1}.subscription-management .plan-info .plan-emoji{font-size:2.5rem;line-height:1}.subscription-management .plan-info h4{font-size:1.375rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem;letter-spacing:-.01em}.subscription-management .plan-info p{color:var(--gray-600);margin:.375rem 0;font-size:.9375rem;line-height:1.6}.subscription-management .subscription-source{font-style:italic;color:var(--gray-500)}.subscription-management .subscription-status{display:flex;align-items:center;gap:.5rem}.subscription-management .subscription-status .status{font-weight:600;text-transform:capitalize;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.subscription-management .status.active{background:#10b9811a;color:var(--success-green-dark)}.subscription-management .status.canceled{background:#ef44441a;color:var(--danger-red-dark)}.subscription-management .status.past_due{background:#f59e0b1a;color:var(--warning-orange)}.subscription-management .next-billing{font-weight:600;color:var(--gray-700)}.subscription-management .cancel-button{padding:.875rem 1.5rem;background:#fff;color:var(--danger-red);border:2px solid var(--gray-200);border-radius:.75rem;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .3s ease;white-space:nowrap;box-shadow:var(--shadow-sm)}.subscription-management .cancel-button:hover:not(:disabled){background:#ef44440d;border-color:var(--danger-red);transform:translateY(-2px);box-shadow:var(--shadow-md)}.subscription-management .cancel-button:disabled{opacity:.6;cursor:not-allowed}.subscription-management .message{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;border-radius:.875rem;margin-bottom:2rem;font-weight:500;animation:slideInRight .4s ease-out;box-shadow:var(--shadow-sm)}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.subscription-management .success-message{background:linear-gradient(135deg,#10b9811a,#10b9810d);color:var(--success-green-dark);border:1px solid rgba(16,185,129,.2)}.subscription-management .error-message{background:linear-gradient(135deg,#ef44441a,#ef44440d);color:var(--danger-red-dark);border:1px solid rgba(239,68,68,.2)}.subscription-management .message-icon{width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.125rem}.subscription-management .message p{margin:0;line-height:1.5}.subscription-management .plans-section{margin-top:3rem}.subscription-management .plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:2rem}.subscription-management .plan-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;padding:32px 24px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;height:100%;box-shadow:0 4px 6px #0000000d;position:relative}.subscription-management .plan-card:nth-child(1){animation-delay:.1s}.subscription-management .plan-card:nth-child(2){animation-delay:.2s}.subscription-management .plan-card:nth-child(3){animation-delay:.3s}.subscription-management .plan-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:#667eea}.subscription-management .plan-card.popular:hover{transform:scale(1.05) translateY(-8px)}.subscription-management .plan-card.current{border-color:#10b981;background:#f0fdf4}.subscription-management .popular-badge,.subscription-management .current-badge{position:absolute;top:16px;right:16px;padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:.375rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.subscription-management .popular-badge{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-darker) 100%);color:#fff}.subscription-management .current-badge{background:linear-gradient(135deg,var(--success-green) 0%,var(--success-green-dark) 100%);color:#fff}.subscription-management .badge-icon{width:.875rem;height:.875rem}.subscription-management .popular-badge{display:none}.subscription-management .plan-header{text-align:center;margin-bottom:24px;padding-bottom:0;border-bottom:none}.subscription-management .plan-icon{font-size:3rem;margin-bottom:16px;display:block}.subscription-management .plan-name{font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 16px;letter-spacing:-.01em}.subscription-management .plan-price{margin-bottom:16px}.subscription-management .price-free .price-amount{font-size:1.25rem;font-weight:700;color:#10b981;background:none;-webkit-text-fill-color:initial}.subscription-management .price-paid{display:flex;align-items:baseline;justify-content:center;gap:.25rem;line-height:1}.subscription-management .price-currency{display:none}.subscription-management .price-amount{font-size:3rem;font-weight:700;color:#1e293b;background:none;-webkit-text-fill-color:initial}.subscription-management .price-period{font-size:1rem;color:#64748b;font-weight:500}.subscription-management .plan-description{font-size:.9375rem;color:#64748b;line-height:1.6;margin:0 0 24px;min-height:48px}.subscription-management .plan-features{list-style:none;padding:0;margin:0 0 24px;flex:1}.subscription-management .plan-feature{display:flex;align-items:flex-start;gap:8px;padding:8px 0;font-size:.9375rem;color:#374151;line-height:1.5;transition:none;border-radius:0}.subscription-management .plan-feature:hover{background:none;padding-left:0;padding-right:0;margin-left:0;margin-right:0}.subscription-management .feature-icon{width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.125rem;color:var(--success-green);stroke-width:2.5}.subscription-management .feature-icon.unavailable{color:var(--gray-300)}.subscription-management .plan-feature.unavailable{color:var(--gray-400)}.subscription-management .plan-feature.unavailable span{text-decoration:line-through;text-decoration-color:var(--gray-300)}.subscription-management .plan-button{width:100%;padding:1rem 1.5rem;border-radius:.875rem;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:auto;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.subscription-management .plan-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.subscription-management .plan-button:hover:before{width:300px;height:300px}.subscription-management .plan-button:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.subscription-management .button-icon{width:1.25rem;height:1.25rem;stroke-width:2.5}.subscription-management .current-plan-button{background:linear-gradient(135deg,#10b9811a,#10b9810d);color:var(--success-green-dark);border:2px solid var(--success-green)}.subscription-management .upgrade-button{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-darker) 100%);color:#fff;border:none;box-shadow:var(--shadow-lg),0 4px 20px #3b82f64d}.subscription-management .upgrade-button:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-blue-dark) 0%,var(--primary-blue-darker) 100%);transform:translateY(-2px);box-shadow:var(--shadow-xl),0 8px 30px #3b82f666}.subscription-management .downgrade-button{background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);color:var(--warning-orange);border:2px solid var(--warning-orange)}.subscription-management .downgrade-button:hover:not(:disabled){background:linear-gradient(135deg,#f59e0b26,#f59e0b1a);transform:translateY(-2px)}.subscription-management .modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.subscription-management .modal-content{background:#fff;border-radius:1.5rem;box-shadow:var(--shadow-2xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:modalSlideUp .3s cubic-bezier(.4,0,.2,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.subscription-management .payment-modal{max-width:560px}.subscription-management .modal-close-button{position:absolute;top:1.5rem;right:1.5rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border:none;border-radius:50%;color:var(--gray-600);cursor:pointer;transition:all .2s ease;z-index:10}.subscription-management .modal-close-button svg{width:1.25rem;height:1.25rem}.subscription-management .modal-close-button:hover{background:var(--gray-200);color:var(--gray-900);transform:rotate(90deg)}.subscription-management .modal-header{text-align:center;padding:3rem 2rem 1.5rem}.subscription-management .modal-icon{width:4rem;height:4rem;margin:0 auto 1.5rem;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-darker) 100%);border-radius:1rem;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-lg),0 0 0 8px #3b82f61a}.subscription-management .modal-icon.warning{background:linear-gradient(135deg,var(--warning-orange) 0%,#d97706 100%);box-shadow:var(--shadow-lg),0 0 0 8px #f59e0b1a}.subscription-management .modal-icon svg{width:2rem;height:2rem;stroke-width:2}.subscription-management .modal-header h3{font-size:1.75rem;font-weight:800;color:var(--gray-900);margin:0 0 .5rem;letter-spacing:-.01em}.subscription-management .modal-header p{color:var(--gray-600);margin:0;font-size:.9375rem}.subscription-management .upgrade-summary{padding:0 2rem 1.5rem}.subscription-management .plan-summary-card{background:var(--gray-50);border:2px solid var(--gray-100);border-radius:1rem;padding:1.5rem}.subscription-management .summary-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;color:var(--gray-700);font-size:.9375rem}.subscription-management .summary-row.total{border-top:2px solid var(--gray-200);margin-top:.5rem;padding-top:1rem;font-weight:700;font-size:1.125rem}.subscription-management .summary-plan{font-weight:600;color:var(--gray-900)}.subscription-management .summary-price{font-size:1.5rem;font-weight:800;color:var(--primary-blue)}.subscription-management .payment-form{padding:0 2rem 2rem}.subscription-management .card-element-container{margin-bottom:1.5rem}.subscription-management .form-label{display:block;font-weight:600;color:var(--gray-700);margin-bottom:.625rem;font-size:.875rem;letter-spacing:.01em}.subscription-management .card-element-wrapper{padding:1rem 1.25rem;border:2px solid var(--gray-200);border-radius:.875rem;transition:all .2s ease;background:#fff}.subscription-management .card-element-wrapper:focus-within{border-color:var(--primary-blue);box-shadow:0 0 0 4px #3b82f61a}.subscription-management .error-message{display:flex;align-items:center;gap:.5rem;color:var(--danger-red);font-size:.875rem;margin-top:.625rem;font-weight:500}.subscription-management .error-icon{width:1rem;height:1rem;flex-shrink:0}.subscription-management .payment-button{width:100%;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-darker) 100%);color:#fff;border:none;padding:1.125rem 1.5rem;border-radius:.875rem;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--shadow-lg),0 4px 20px #3b82f64d}.subscription-management .payment-button:hover:not(.disabled){background:linear-gradient(135deg,var(--primary-blue-dark) 0%,var(--primary-blue-darker) 100%);transform:translateY(-2px);box-shadow:var(--shadow-xl),0 8px 30px #3b82f666}.subscription-management .payment-button.disabled{opacity:.6;cursor:not-allowed;transform:none}.subscription-management .payment-footer{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem 2rem;color:var(--gray-500);font-size:.8125rem}.subscription-management .lock-icon{width:1rem;height:1rem}.subscription-management .cancel-content{padding:0 2rem 2rem}.subscription-management .cancel-info{background:var(--gray-50);border:2px solid var(--gray-100);border-radius:1rem;padding:1.5rem;margin-bottom:2rem}.subscription-management .cancel-info h4{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0 0 1rem}.subscription-management .cancel-info ul{margin:0;padding:0;list-style:none}.subscription-management .cancel-info li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;font-size:.9375rem;line-height:1.5;color:var(--gray-700)}.subscription-management .cancel-info li:last-child{margin-bottom:0}.subscription-management .list-icon{width:1.25rem;height:1.25rem;color:var(--primary-blue);flex-shrink:0;margin-top:.125rem}.subscription-management .cancel-info strong{color:var(--gray-900);font-weight:600}.subscription-management .cancel-actions{display:flex;gap:1rem;justify-content:center}.subscription-management .keep-button{flex:1;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-darker) 100%);color:#fff;border:none;border-radius:.875rem;font-weight:700;font-size:.9375rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--shadow-md)}.subscription-management .keep-button:hover{background:linear-gradient(135deg,var(--primary-blue-dark) 0%,var(--primary-blue-darker) 100%);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.subscription-management .confirm-cancel-button{flex:1;padding:1rem 1.5rem;background:#fff;color:var(--danger-red);border:2px solid var(--gray-200);border-radius:.875rem;font-weight:700;font-size:.9375rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.subscription-management .confirm-cancel-button:hover:not(:disabled){background:#ef44440d;border-color:var(--danger-red);transform:translateY(-2px)}.subscription-management .confirm-cancel-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.subscription-management{padding:2rem 1rem}.subscription-management .subscription-header h2{font-size:2rem}.subscription-management .subscription-details{flex-direction:column;gap:1.5rem}.subscription-management .plans-grid{grid-template-columns:1fr;gap:1.5rem}.subscription-management .plan-card.popular{border:2px solid #e5e7eb;background:#fff;transform:none;box-shadow:0 4px 6px #0000000d}.subscription-management .plan-card:hover,.subscription-management .plan-card.popular:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:#667eea}.subscription-management .plan-card.popular:before{display:none}.subscription-management .popular-badge{display:none}.subscription-management .modal-content{margin:0;border-radius:1.25rem}.subscription-management .cancel-actions{flex-direction:column}.subscription-management .keep-button,.subscription-management .confirm-cancel-button{width:100%}}@media (max-width: 480px){.subscription-management{padding:1.5rem .75rem}.subscription-management .subscription-header{margin-bottom:2rem}.subscription-management .current-subscription-info,.subscription-management .plan-card{padding:1.5rem}.subscription-management .modal-header{padding:2.5rem 1.5rem 1.25rem}.subscription-management .payment-form,.subscription-management .upgrade-summary,.subscription-management .cancel-content{padding-left:1.5rem;padding-right:1.5rem}.subscription-management .modal-icon{width:3rem;height:3rem}.subscription-management .modal-icon svg{width:1.5rem;height:1.5rem}.subscription-management .modal-header h3{font-size:1.5rem}}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}.subscription-management *:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}.subscription-management button:focus-visible{outline-offset:4px}.subscription-management .success-icon-big{font-size:5rem;margin-bottom:1rem}.subscription-management .verification-subtitle-main{font-size:1.5rem;font-weight:600;color:#667eea;margin:.5rem 0 1.5rem}.subscription-management .subscription-card{background:#fff;border:2px solid #e5e7eb;border-radius:20px;overflow:hidden;box-shadow:0 4px 6px #0000000d;transition:all .3s ease}.subscription-management .subscription-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-2px)}.subscription-management .subscription-card-header{display:flex;justify-content:space-between;align-items:center;padding:2rem!important;background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important;border-bottom:none!important;margin-bottom:0!important}.subscription-management .plan-badge{display:flex;align-items:center;gap:1rem}.subscription-management .plan-badge-emoji{font-size:3rem;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.subscription-management .plan-badge-info h4{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;color:#fff!important}.subscription-management .plan-badge-price{font-size:1rem;margin:0;color:#ffffffe6!important;font-weight:500}.subscription-management .status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:capitalize}.subscription-management .status-badge.active{background:#fff3!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff!important}.subscription-management .status-badge.canceled{background:#ef44441a;color:#dc2626}.subscription-management .subscription-card-details{padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.subscription-management .detail-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.subscription-management .detail-item:last-child{border-bottom:none;padding-bottom:0}.subscription-management .detail-label{color:#6b7280;font-size:.875rem;font-weight:500}.subscription-management .detail-value{color:#1e293b;font-size:.9375rem;font-weight:600}.subscription-management .subscription-card-footer{padding:1.5rem 2rem;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.subscription-management .cancel-subscription-button{padding:.75rem 1.25rem;background:#fff;color:#ef4444;border:2px solid #e5e7eb;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.subscription-management .cancel-subscription-button:hover:not(:disabled){background:#fef2f2;border-color:#ef4444;transform:translateY(-1px)}.subscription-management .cancel-subscription-button:disabled{opacity:.5;cursor:not-allowed}.subscription-management .button-icon-small{width:1rem;height:1rem}@media (max-width: 768px){.subscription-management .subscription-card-header{flex-direction:column;gap:1rem;align-items:flex-start}.subscription-management .detail-item{flex-direction:column;align-items:flex-start;gap:.5rem}}.subscription-management .container{background:#fffffffa;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;max-height:900px;width:100%;overflow:hidden}.subscription-management .header{padding:30px 40px 10px;text-align:center;border-bottom:1px solid #d1d5db}.subscription-management .header .logo{font-size:28px;font-weight:700;color:#667eea;margin:0;padding:0;line-height:1.2;height:auto}.subscription-management .subtitle{color:#6b7280;font-size:14px;margin:8px 0 15px;padding:0}.subscription-management .content{padding:32px 40px}.subscription-management .footer{text-align:center;padding:20px;border-top:1px solid #e6e6e6;font-size:13px;color:#6b7280}.subscription-management .footer-link{color:#667eea;cursor:pointer;text-decoration:none}.subscription-management .footer-link:hover{text-decoration:underline}.home-container{min-height:calc(100vh - 70px);background:linear-gradient(135deg,#dbeafe,#eff6ff,#e0e7ff);padding:0;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.content-wrapper{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.header-section{text-align:center;margin-bottom:3rem}.main-title{font-size:3rem;font-weight:700;background:linear-gradient(to right,#2563eb,#4f46e5);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1.5rem;line-height:1.2}.main-subtitle{font-size:1.25rem;color:#64748b;max-width:48rem;margin:0 auto;line-height:1.6}.logged-in-content{max-width:800px;margin:0 auto}.welcome-section{text-align:center;margin-bottom:2rem}.welcome-card{padding:1rem 1.25rem;border-radius:.75rem}.welcome-title{font-size:1.125rem;margin-bottom:.25rem}.welcome-text{font-size:.875rem}.tab-navigation{display:flex;background:#fffc;border-radius:1rem;padding:.5rem;margin-bottom:2rem;box-shadow:0 10px 25px -5px #0000001a}.tab-button{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:none;border:none;border-radius:.75rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .3s ease}.tab-button:hover{color:#2563eb;background:#2563eb1a}.tab-button.active{background:#2563eb;color:#fff;box-shadow:0 4px 14px #2563eb66}.tab-icon{width:1.25rem;height:1.25rem}.horizontal-nav-tabs{display:flex;border-bottom:2px solid #e5e7eb;margin-bottom:2rem;gap:2rem}.nav-tab{background:none;border:none;font-size:1rem;font-weight:600;color:#64748b;padding:.5rem 0;cursor:pointer;position:relative;transition:color .2s ease}.nav-tab:hover,.nav-tab.active{color:#1d4ed8}.nav-tab.active:after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:100%;background:#1d4ed8;border-radius:1px}.tab-content{background:#ffffffe6;border-radius:1rem;padding:3rem 2rem;box-shadow:0 25px 50px -12px #0000001a;text-align:center}.content-header{margin-bottom:2rem}.content-header h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin-bottom:.5rem}.content-header p{color:#64748b;margin:0}.tab-action{margin-top:2rem;display:flex;justify-content:center;align-items:center}.primary-action-button{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:#2563eb;color:#fff;text-decoration:none;border-radius:.75rem;font-weight:600;font-size:1.125rem;transition:all .3s ease;box-shadow:0 10px 25px -5px #2563eb4d}.primary-action-button:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 15px 35px -5px #2563eb66}.button-arrow{width:1.25rem;height:1.25rem}.not-logged-in-content{max-width:600px;margin:0 auto}.auth-card{background:#ffffffe6;border-radius:1.5rem;box-shadow:0 35px 70px -12px #00000026;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.auth-content-simple{padding:3rem;text-align:center}.auth-title{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:1rem}.auth-description{color:#64748b;margin-bottom:2rem;font-size:1.125rem;line-height:1.6}.auth-buttons{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.btn{flex:1;padding:1rem 2rem;font-weight:600;border-radius:1rem;text-decoration:none;text-align:center;transition:all .3s ease;display:inline-block;min-width:140px}.btn:hover{transform:scale(1.05)}.btn-primary{background:linear-gradient(to right,#2563eb,#4f46e5);color:#fff;box-shadow:0 10px 25px -5px #2563eb4d}.btn-primary:hover{background:linear-gradient(to right,#1d4ed8,#4338ca)}.btn-secondary{background:#f1f5f9;color:#1e293b;border:1px solid #e2e8f0}.btn-secondary:hover{background:#e2e8f0}.auth-features{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;font-size:.9rem;color:#64748b}.feature{text-align:left}.inline-solve-section{margin-top:1.5rem}.inline-solve-form{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.inline-solve-input{flex:1;min-width:250px;padding:.875rem 1rem;border:2px solid rgba(59,130,246,.2);border-radius:.75rem;font-size:1rem;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;color:#1e293b;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}.inline-solve-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;transform:translateY(-1px)}.inline-solve-input:disabled{opacity:.6;cursor:not-allowed}.inline-solve-input::placeholder{color:#64748b;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}.inline-solve-button{padding:.875rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:.75rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d;white-space:nowrap}.inline-solve-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.inline-solve-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.inline-error-message{margin-top:.75rem;color:#ef4444;font-weight:500;padding:.75rem;background:#ef44441a;border-radius:.5rem;border:1px solid rgba(239,68,68,.2);font-size:.875rem}.inline-success-message{margin-top:.75rem;color:#059669;font-weight:500;padding:.75rem;background:#22c55e1a;border-radius:.5rem;border:1px solid rgba(34,197,94,.2);font-size:.875rem}.quick-examples{margin-bottom:1.5rem}.quick-examples h4{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.example-problems{display:flex;gap:.5rem;flex-wrap:wrap}.example-button{padding:.5rem .75rem;background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.2);border-radius:.5rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}.example-button:hover:not(:disabled){background:#3b82f633;color:#1d4ed8;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f633}.example-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.inline-solution-section{margin-top:1.5rem}.inline-solution-title{font-weight:600;margin-bottom:.75rem;color:#1e293b;font-size:1rem}.inline-solution-container{background:#f8fafce6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem;border-radius:.75rem;border:1px solid rgba(226,232,240,.5);max-height:16rem;overflow-y:auto;scroll-behavior:smooth}.inline-solution-step{margin-bottom:.75rem}.inline-step-text{white-space:pre-wrap;color:#374151;font-size:.875rem;line-height:1.5;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;margin:0}.inline-step-divider{margin:.75rem 0;border:none;height:1px;background:linear-gradient(to right,transparent,#e5e7eb,transparent)}.inline-typing-step{border-left:3px solid #3b82f6;padding-left:.75rem;margin-bottom:.75rem}.typing-indicator-inline{display:flex;gap:.375rem;padding:.75rem;align-items:flex-end}.wave-dot{height:.375rem;width:.375rem;background:#3b82f6;border-radius:50%;animation:wave 1.2s infinite ease-in-out}.wave-medium{height:.5rem;width:.375rem}.wave-large{height:.625rem;width:.375rem}.inline-related-section{margin-top:1.5rem;border-top:1px solid rgba(226,232,240,.5);padding-top:1rem}.inline-related-toggle{background:none;border:none;color:#2563eb;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-size:.875rem;transition:all .3s ease;margin-bottom:.75rem}.inline-related-toggle:hover{color:#1d4ed8;transform:translate(2px)}.toggle-arrow{transition:transform .3s ease;font-size:.75rem}.inline-related-problems{display:flex;flex-direction:column;gap:.5rem}.inline-related-problem{padding:.75rem;border:1px solid rgba(226,232,240,.5);border-radius:.5rem;background:#ffffffb3;cursor:pointer;transition:all .3s ease;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.875rem}.inline-related-problem:hover{background:#3b82f61a;border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f61a}.inline-progress-section{margin-top:1rem}.progress-loading{display:flex;flex-direction:column;align-items:center;padding:2rem;color:#64748b}.loading-spinner{width:2rem;height:2rem;border:3px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.progress-quick-stats{display:flex;gap:1rem;margin-bottom:1.5rem;justify-content:center}.quick-stat-card{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(226,232,240,.5);border-radius:.75rem;padding:1rem;display:flex;align-items:center;gap:.75rem;transition:all .3s ease;min-width:140px}.quick-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:#3b82f64d}.stat-icon{font-size:1.5rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background:#3b82f61a;border-radius:.5rem;flex-shrink:0}.stat-content h3{margin:0;font-size:1.25rem;font-weight:700;color:#1e293b;line-height:1.2}.stat-content p{margin:0;font-size:.75rem;color:#64748b;font-weight:500}.recent-activity-section{background:#f8fafcb3;border-radius:.75rem;padding:1rem;border:1px solid rgba(226,232,240,.5)}.recent-activity-section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#374151}.inline-progress-entries{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.inline-progress-entry{background:#fffc;border:1px solid rgba(226,232,240,.3);border-radius:.5rem;padding:.75rem;transition:all .3s ease}.inline-progress-entry:hover{border-color:#3b82f64d;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.entry-main{display:flex;align-items:center;gap:.75rem}.entry-number{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;width:1.75rem;height:1.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;flex-shrink:0}.entry-content{flex:1}.entry-problem-text{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.8125rem;color:#374151;font-weight:500;margin-bottom:.25rem}.entry-timestamp{font-size:.75rem;color:#64748b}.more-entries-indicator{text-align:center;padding-top:.75rem;border-top:1px solid rgba(226,232,240,.5);font-size:.8125rem;color:#64748b;font-style:italic}.no-progress-inline{text-align:center;padding:2rem;background:#f8fafcb3;border-radius:.75rem;border:1px solid rgba(226,232,240,.5)}.no-progress-icon{font-size:2.5rem;margin-bottom:.75rem;animation:float 3s ease-in-out infinite}.no-progress-inline h4{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#374151}.no-progress-inline p{margin:0 0 1rem;color:#64748b;font-size:.875rem}.start-solving-inline-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.875rem}.start-solving-inline-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.ai-assistant-open{margin-right:400px;transition:margin-right .3s cubic-bezier(.4,0,.2,1)}body{margin-right:0;transition:margin-right .3s cubic-bezier(.4,0,.2,1)}@keyframes wave{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.fade-in{animation:fadeIn .4s ease-out forwards}.cursor-blink{animation:blink .8s infinite;color:#3b82f6;font-weight:700}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (max-width: 1200px){.ai-assistant-open{margin-right:350px}}@media (max-width: 1024px){.ai-assistant-open{margin-right:0}}@media (max-width: 768px){.auth-buttons{flex-direction:column}.auth-features{grid-template-columns:1fr}.main-title{font-size:2.5rem}.content-wrapper{padding:1rem}.tab-content{padding:2rem 1.5rem}.inline-solve-form{flex-direction:column}.inline-solve-input{min-width:auto}.example-problems{justify-content:center}.inline-solution-container{max-height:12rem;padding:.75rem}.inline-step-text{font-size:.8125rem}.progress-quick-stats{flex-direction:column;align-items:center}.quick-stat-card{width:100%;max-width:200px;min-width:auto}.entry-main{gap:.5rem}.entry-number{width:1.5rem;height:1.5rem;font-size:.6875rem}.entry-problem-text{font-size:.75rem}.no-progress-inline{padding:1.5rem}}@media (min-width: 640px){.auth-buttons{flex-direction:row}}@media (min-width: 768px){.content-wrapper{padding:2rem}.main-title{font-size:4rem}}@media (max-width: 480px){.quick-examples h4{text-align:center}.example-problems{flex-direction:column;align-items:center}.example-button{width:100%;max-width:200px}.inline-solution-container{max-height:10rem}.progress-quick-stats{gap:.75rem}.quick-stat-card{padding:.75rem}.stat-icon{font-size:1.25rem;width:2rem;height:2rem}.stat-content h3{font-size:1rem}.no-progress-icon{font-size:2rem}}.new-dashboard-container{min-height:100vh;background:#f8fafc;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.new-dashboard-content{max-width:1200px;margin:0 auto}.new-dashboard-header{margin-bottom:2.5rem;padding-left:2rem}.header-container{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.25rem;border-bottom:1px solid #e2e8f0;margin-bottom:2rem}.welcome-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin:0 0 1.5rem;line-height:1.2}.courses-title{font-size:2rem;font-weight:600;color:#0f172a;margin:0;letter-spacing:-.02em}.course-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;height:600px}.course-card{background:#fff;border-radius:12px;padding:0;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0;transition:all .3s ease;position:relative;min-height:160px;display:flex;flex-direction:column;overflow:hidden}.course-card-top{height:60px;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;position:relative}.course-card-top.math-bg{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.course-card-top.geometry-bg{background:linear-gradient(135deg,#10b981,#059669)}.course-card-top.algebra2-bg{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.course-card-top.precalc-bg{background:linear-gradient(135deg,#f59e0b,#d97706)}.course-card-top.calculus-bg{background:linear-gradient(135deg,#ef4444,#dc2626)}.course-card-top.stats-bg{background:linear-gradient(135deg,#06b6d4,#0891b2)}.course-card-bottom{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.course-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;transition:all .3s ease}.math-icon,.geometry-icon,.algebra2-icon,.precalc-icon,.calculus-icon,.stats-icon{background:#fff3}.status-badge{position:relative!important;top:auto!important;right:auto!important;background:#fffffff2!important;padding:4px 8px;border-radius:12px;fontSize:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.course-card-top{height:70px;padding:.875rem 1.25rem}.course-card-bottom{padding:1.25rem}}@media (max-width: 480px){.course-card-top{height:60px;padding:.75rem 1rem}.course-icon{width:40px;height:40px}.course-card-bottom{padding:1rem}}.course-card.clickable{cursor:pointer}.course-card.clickable:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a;border-color:#cbd5e1}.course-card:not(.clickable){opacity:.7}.course-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:#fff;transition:all .3s ease}.math-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.geometry-icon{background:linear-gradient(135deg,#10b981,#059669)}.algebra2-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.precalc-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.calculus-icon{background:linear-gradient(135deg,#ef4444,#dc2626)}.stats-icon{background:linear-gradient(135deg,#06b6d4,#0891b2)}.course-title{font-size:1.25rem;font-weight:600;color:#1e293b;margin:0 0 .5rem}.course-subtitle{font-size:.875rem;color:#64748b;margin:0 0 1.5rem;flex-grow:1}.continue-btn{background:#1e293b;color:#fff;border:none;border-radius:8px;padding:.75rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:auto}.continue-btn:hover:not(.disabled){background:#334155;transform:translateY(-1px)}.continue-btn.disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.continue-btn.disabled:hover{transform:none}.dashboard-back-button{position:static;margin:0;padding:1.5rem 2rem 1rem;background:transparent;z-index:auto}.back-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.8);border-radius:.75rem;box-shadow:0 4px 12px #0000001a;transition:all .3s ease;color:#374151;font-weight:600;font-size:.875rem;cursor:pointer;text-decoration:none}.back-btn:hover{background:#3b82f60d;color:#2563eb;transform:translateY(-1px);box-shadow:0 6px 16px #00000026;border-color:#3b82f64d}.back-icon{width:1rem;height:1rem;transition:transform .3s ease}.back-btn:hover .back-icon{transform:translate(-2px)}.dashboard-back-button.sidebar-collapsed{padding-left:5rem}.dashboard-back-button.sidebar-visible{padding-left:2rem}.course-card.clickable:hover .course-icon{transform:scale(1.05)}.course-card.clickable:hover .continue-btn{background:#334155}@media (max-width: 768px){.new-dashboard-container{padding:1rem}.welcome-title{font-size:2rem}.courses-title{font-size:1.25rem}.course-cards-grid{grid-template-columns:1fr;gap:1rem}.course-card{padding:1.25rem;min-height:140px}.course-icon{width:40px;height:40px}.course-title{font-size:1.125rem}.dashboard-back-button{padding:1rem 1rem .75rem}.back-btn{padding:.625rem 1rem;font-size:.8125rem}.dashboard-back-button.sidebar-collapsed,.dashboard-back-button.sidebar-visible{padding-left:1rem}}@media (max-width: 480px){.welcome-title{font-size:1.75rem}.course-card{padding:1rem;min-height:120px}.course-icon{width:36px;height:36px;margin-bottom:.75rem}.course-title{font-size:1rem}.course-subtitle{font-size:.8125rem;margin-bottom:1rem}.continue-btn{padding:.625rem .875rem;font-size:.8125rem}.dashboard-back-button{padding:.75rem .5rem .5rem}.back-btn{padding:.5rem .875rem;font-size:.75rem}}@media (min-width: 769px) and (max-width: 1024px){.course-cards-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1025px){.course-cards-grid{grid-template-columns:repeat(3,1fr)}}.course-icon,.continue-btn{transition:all .3s ease}.welcome-choice-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden;padding:40px 20px;animation:fadeIn .6s ease;opacity:1;transform:scale(1);transition:opacity .3s ease-out,transform .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.welcome-choice-container.fade-out{opacity:0;transform:scale(.98)}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.welcome-content{max-width:1200px;width:100%;z-index:10;animation:slideUp .8s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.greeting-section{text-align:center;margin-bottom:48px}.greeting-text{font-size:48px;font-weight:700;color:#fff;margin:0 0 16px;animation:slideUp .8s ease .2s backwards}.username-highlight{background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.greeting-subtitle{font-size:20px;color:#ffffffe6;margin:0;animation:slideUp .8s ease .3s backwards}.choice-cards{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:32px}.choice-card{background:#fff;border-radius:24px;padding:40px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;animation:slideUp .8s ease backwards}.sat-card{animation-delay:.4s;border:3px solid transparent}.learning-card{animation-delay:.5s;border:3px solid transparent}.choice-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0003}.sat-card:hover{border-color:#3b82f6;box-shadow:0 20px 40px #3b82f64d}.learning-card:hover{border-color:#10b981;box-shadow:0 20px 40px #10b9814d}.choice-card.selected{transform:scale(1.05);opacity:1;border-width:3px;box-shadow:0 20px 50px #00000026;animation:pulse .6s ease}.sat-card.selected{border-color:#3b82f6;box-shadow:0 20px 60px #3b82f666}.learning-card.selected{border-color:#10b981;box-shadow:0 20px 60px #10b98166}.choice-card.unselected{opacity:.3;transform:scale(.95);filter:blur(2px)}@keyframes pulse{0%,to{transform:scale(1.05)}50%{transform:scale(1.08)}}.card-icon{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:40px;margin-bottom:24px;transition:all .3s ease}.sat-icon{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.learning-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.choice-card:hover .card-icon{transform:rotate(5deg) scale(1.1)}.card-title{font-size:28px;font-weight:700;color:#1a1a1a;margin:0 0 12px}.card-description{font-size:16px;color:#6b7280;line-height:1.6;margin:0 0 24px}.card-features{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.feature{font-size:14px;color:#4b5563;display:flex;align-items:center;gap:8px}.card-arrow{position:absolute;bottom:24px;right:24px;font-size:32px;color:#d1d5db;transition:all .3s ease}.choice-card:hover .card-arrow{color:#6b7280;transform:translate(8px)}.choice-card.selected .card-arrow{color:#3b82f6}.learning-card.selected .card-arrow{color:#10b981}.skip-link{display:block;margin:0 auto;background:transparent;border:2px solid rgba(255,255,255,.3);color:#fff;padding:12px 32px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;animation:slideUp .8s ease .6s backwards}.skip-link:hover{background:#ffffff1a;border-color:#ffffff80;transform:translateY(-2px)}.bg-decoration{position:absolute;border-radius:50%;opacity:.1;animation:float 20s ease-in-out infinite}.decoration-1{width:400px;height:400px;background:#fff;top:-200px;right:-100px}.decoration-2{width:300px;height:300px;background:#fff;bottom:-150px;left:-100px;animation-delay:-5s}.decoration-3{width:200px;height:200px;background:#fff;top:50%;left:-50px;animation-delay:-10s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}@keyframes fadeInSlide{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.username-highlight{animation:fadeInSlide .5s ease-out forwards;display:inline-block}@media (max-width: 968px){.choice-cards{grid-template-columns:1fr;gap:24px}.greeting-text{font-size:36px}.greeting-subtitle{font-size:18px}.card-title{font-size:24px}}@media (max-width: 640px){.greeting-text{font-size:28px}.choice-card{padding:32px 24px}.card-icon{width:64px;height:64px;font-size:32px}}.ph-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.ph-container{max-width:1200px;margin:0 auto}.ph-loading,.ph-error,.ph-empty{background:#fff;border-radius:16px;padding:3rem;text-align:center;box-shadow:0 10px 40px #0000001a}.spinner{width:40px;height:40px;border:3px solid #f3f4f6;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}.ph-error button{margin-top:1rem;padding:.75rem 2rem;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600}.ph-header{background:#fff;border-radius:20px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 20px #00000014}.ph-title-section{margin-bottom:2rem}.ph-title-section h1{margin:0 0 .5rem;font-size:2rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ph-title-section p{margin:0;color:#64748b;font-size:1rem}.ph-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.ph-stat-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;border-radius:12px;transition:transform .2s}.ph-stat-card:hover{transform:translateY(-2px)}.ph-stat-card.blue{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.ph-stat-card.green{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.ph-stat-card.purple{background:linear-gradient(135deg,#e9d5ff,#d8b4fe)}.ph-stat-card.orange{background:linear-gradient(135deg,#fed7aa,#fdba74)}.ph-stat-icon{font-size:2rem}.ph-stat-value{font-size:1.75rem;font-weight:700;color:#1f2937}.ph-stat-label{font-size:.875rem;color:#64748b;font-weight:500}.empty-icon{font-size:4rem;margin-bottom:1rem}.ph-empty h3{margin:0 0 .5rem;font-size:1.5rem;color:#1f2937}.ph-empty p{margin:0;color:#64748b}.ph-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.ph-quiz-card,.ph-practice-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #00000014;transition:transform .2s,box-shadow .2s}.ph-quiz-card:hover,.ph-practice-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001f}.quiz-card-header,.practice-card-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.quiz-card-header h3,.practice-card-header h3{margin:0;font-size:1.125rem;color:#1f2937;flex:1}.quiz-score{padding:.5rem 1rem;border-radius:12px;font-weight:700;font-size:1.125rem}.quiz-score.excellent{background:#d1fae5;color:#065f46}.quiz-score.good{background:#fef3c7;color:#92400e}.quiz-score.needs-work{background:#fee2e2;color:#991b1b}.quiz-card-meta,.practice-card-meta{display:flex;justify-content:space-between;font-size:.875rem;color:#64748b;margin-bottom:1rem}.difficulty-badge{background:#e0e7ff;color:#4338ca;padding:.25rem .75rem;border-radius:6px;font-weight:600;font-size:.75rem;text-transform:capitalize}.quiz-card-breakdown{display:flex;flex-direction:column;gap:.75rem}.breakdown-row{display:grid;grid-template-columns:4rem 1fr 3rem;align-items:center;gap:.75rem}.breakdown-label{font-size:.875rem;font-weight:500;color:#64748b}.breakdown-bar{height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden}.breakdown-fill{height:100%;border-radius:4px;transition:width .3s}.breakdown-fill.easy{background:#10b981}.breakdown-fill.medium{background:#f59e0b}.breakdown-fill.hard{background:#ef4444}.breakdown-stat{font-size:.875rem;font-weight:600;color:#1f2937;text-align:right}.mastery-badge{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;padding:.375rem .75rem;border-radius:8px;font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:.25rem}.practice-card-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.practice-stat-box{background:#f8fafc;padding:1rem;border-radius:12px;display:flex;gap:.75rem}.stat-icon{font-size:1.5rem}.stat-info{flex:1}.stat-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.stat-value{font-size:1.25rem;font-weight:700;color:#1f2937}.stat-attempts{font-size:.75rem;color:#64748b}.perfect-streak{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;padding:.75rem;border-radius:8px;text-align:center;font-weight:600;font-size:.875rem}@media (max-width: 768px){.ph-stats-grid{grid-template-columns:repeat(2,1fr)}.ph-grid{grid-template-columns:1fr}.ph-tabs{flex-direction:column}}.view-more-container{display:flex;justify-content:center;margin-top:2rem}.view-more-btn{padding:.875rem 2rem;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #667eea33}.view-more-btn:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.register-container{min-height:100vh;background:linear-gradient(135deg,#1e293b,#334155);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;position:relative;overflow:hidden}.register-container .register-card{background:#fff;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:35%;max-width:28rem;padding:2rem 1.5rem;position:relative;z-index:1}.register-container .register-card.account-type-card{width:80%;max-width:60rem;padding:2.5rem;background:transparent;box-shadow:none}.register-container .register-card.wide-card{width:90%;max-width:80rem;padding:2.5rem;background:transparent;box-shadow:none}.register-container .payment-step{width:100%;display:flex;justify-content:center}.register-container .payment-container{width:100%;max-width:40rem;background:#fff;border-radius:1rem;padding:2.5rem;box-shadow:0 20px 25px -5px #0000001a}.register-container .payment-header-section{text-align:center;margin-bottom:2rem}.register-container .payment-icon{font-size:3rem;margin-bottom:.75rem}.register-container .payment-title{font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.register-container .payment-subtitle{font-size:.9375rem;color:#64748b;margin:0}.register-container .selected-plan-summary{margin-bottom:2rem}.register-container .plan-summary-card{background:linear-gradient(135deg,#1e293b,#334155);border-radius:.75rem;padding:1.5rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 6px -1px #0000001a}.register-container .plan-summary-left{display:flex;align-items:center;gap:1rem;flex:1}.register-container .plan-summary-emoji{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.register-container .plan-summary-info{flex:1}.register-container .plan-summary-name{font-size:1.125rem;font-weight:700;color:#fff;margin:0 0 .25rem}.register-container .plan-summary-desc{font-size:.875rem;color:#ffffffe6;margin:0;line-height:1.4}.register-container .plan-summary-right{text-align:right;padding-left:1rem}.register-container .plan-summary-price{font-size:2rem;font-weight:700;color:#fff;line-height:1}.register-container .plan-summary-period{font-size:.875rem;color:#ffffffe6}.register-container .payment-form-section{margin-bottom:2rem}.register-container .payment-form{display:flex;flex-direction:column;gap:1.5rem}.register-container .card-element-container{display:flex;flex-direction:column;gap:.5rem}.register-container .form-label{display:block;font-size:.9375rem;font-weight:600;color:#374151;margin-bottom:.5rem}.register-container .card-element-wrapper{padding:1rem;border:2px solid #e5e7eb;border-radius:.5rem;background:#f9fafb;transition:all .2s ease}.register-container .card-element-wrapper:focus-within{border-color:#4f46e5;background:#fff;box-shadow:0 0 0 3px #4f46e51a}.register-container .payment-button{width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,#fff,#dbeafe,#93c5fd);color:#1e293b;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.register-container .payment-button:hover:not(:disabled){background:linear-gradient(135deg,#f0f9ff,#bfdbfe,#60a5fa);transform:translateY(-1px);box-shadow:0 10px 15px -3px #0003}.register-container .payment-button:disabled,.register-container .payment-button.disabled{opacity:.6;cursor:not-allowed;transform:none}.register-container .payment-security{margin-bottom:2rem;padding-top:2rem;border-top:1px solid #e5e7eb}.register-container .security-badges{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.register-container .security-badge{display:flex;align-items:center;gap:.5rem;color:#64748b;font-size:.875rem}.register-container .security-icon{font-size:1.125rem}.register-container .payment-footer{display:flex;justify-content:center}.register-container .email-back-button{padding:.75rem 1.5rem;background:#fff;color:#6b7280;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.register-container .email-back-button:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;color:#374151}.register-container .email-back-button:disabled{opacity:.5;cursor:not-allowed}.register-container .account-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}.register-container .account-type-card-btn{background:#fff;border:none;border-radius:1rem;padding:3rem 2rem;cursor:pointer;transition:all .3s ease;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.25rem;box-shadow:0 10px 30px -5px #0003}.register-container .account-type-card-btn:hover{transform:translateY(-8px);box-shadow:0 20px 40px -5px #0000004d}.register-container .account-card-icon{font-size:5rem;margin-bottom:.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.register-container .account-card-title{font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 .75rem}.register-container .account-card-description{font-size:1rem;color:#64748b;line-height:1.6;margin:0;max-width:20rem}.register-container .account-type-toggle{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:2rem}.register-container .toggle-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem 1rem;background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;cursor:pointer;transition:all .2s ease;font-size:1rem;font-weight:600;color:#6b7280}.register-container .toggle-btn:hover{border-color:#3b82f6;background:#f0f9ff}.register-container .toggle-btn.active{border-color:#3b82f6;background:#eff6ff;color:#3b82f6}.register-container .toggle-icon{width:2rem;height:2rem;stroke-width:2}.register-container .form-label-top{display:block;font-size:.9375rem;font-weight:600;color:#374151;margin-bottom:.5rem}.register-container .form-input-simple{width:100%;padding:.875rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.9375rem;transition:all .2s ease;box-sizing:border-box;background:#f9fafb;color:#1e293b}.register-container .form-input-simple:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.register-container .form-input-simple.error{border-color:#ef4444;background:#fef2f2}.register-container .password-wrapper-simple{position:relative;width:100%}.register-container .password-toggle-simple{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.125rem;padding:.25rem;opacity:.5;transition:opacity .2s}.register-container .password-toggle-simple:hover{opacity:1}.register-container .register-header{text-align:center;margin-bottom:3rem}.register-container .register-title{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.register-container .wide-card .register-title,.register-container .account-type-card .register-title{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.2)}.register-container .register-subtitle{color:#64748b;font-size:1.0625rem;line-height:1.5;margin-top:.5rem}.register-container .account-type-card .register-subtitle{color:#fffffff2;text-shadow:0 1px 3px rgba(0,0,0,.2);font-size:1.125rem}.register-container .invitation-banner{background:#fef3c7;border:1px solid #fbbf24;border-radius:.5rem;padding:.75rem 1rem;margin-top:1rem;font-size:.875rem;color:#92400e;text-align:center}.register-container .progress-indicator{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding:0 .5rem}.register-container .progress-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;position:relative}.register-container .step-number{width:2rem;height:2rem;border-radius:50%;background:#e5e7eb;color:#9ca3af;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;transition:all .3s ease}.register-container .progress-step.active .step-number{background:#4f46e5;color:#fff}.register-container .progress-step.completed .step-number{background:#10b981;color:#fff}.register-container .step-label{font-size:.75rem;color:#9ca3af;font-weight:500;text-align:center}.register-container .progress-step.active .step-label{color:#4f46e5}.register-container .progress-step.completed .step-label{color:#10b981}.register-container .progress-line{height:2px;background:#e5e7eb;flex:1;margin:0 .5rem 1.5rem}.register-container .register-form{display:flex;flex-direction:column;gap:1.25rem}.register-container .form-group{display:flex;flex-direction:column}.register-container .error-message{color:#ef4444;font-size:.8125rem;margin:.25rem 0 0}.register-container .account-type-selector{display:flex;gap:.75rem}.register-container .account-type-btn{flex:1;padding:1rem .75rem;border:2px solid #e5e7eb;background:#fff;border-radius:.5rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:.25rem}.register-container .account-type-btn.active{border-color:#4f46e5;background:#eff6ff}.register-container .account-icon{font-size:1.5rem}.register-container .account-label{font-weight:600;font-size:.875rem;color:#374151}.register-container .account-type-btn.active .account-label{color:#1e40af}.register-container .account-desc{font-size:.8125rem;color:#6b7280;opacity:.8}.register-container .password-feedback{margin-top:.75rem}.register-container .strength-meter{height:.5rem;background:#e5e7eb;border-radius:.25rem;overflow:hidden;margin-bottom:.5rem}.register-container .strength-bar{height:100%;transition:all .3s ease}.register-container .strength-bar.strength-weak{background:#ef4444}.register-container .strength-bar.strength-good{background:#f59e0b}.register-container .strength-bar.strength-strong{background:#10b981}.register-container .strength-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.register-container .strength-error{font-size:.8125rem;color:#6b7280;margin:0}.register-container .strength-label{font-size:.8125rem;font-weight:600}.register-container .strength-label.strength-weak{color:#ef4444}.register-container .strength-label.strength-good{color:#f59e0b}.register-container .strength-label.strength-strong{color:#10b981}.register-container .requirements-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.375rem}.register-container .requirement{display:flex;align-items:center;gap:.5rem;font-size:.8125rem}.register-container .requirement.valid{color:#10b981}.register-container .requirement.invalid{color:#9ca3af}.register-container .requirement-icon{font-weight:600}.register-container .consent-box-simple{background:#fffbeb;border:1px solid #fbbf24;border-radius:.75rem;padding:1rem;margin-bottom:1.5rem}.register-container .consent-box-simple.data-consent-box{background:#f0f9ff;border-color:#bfdbfe}.register-container .consent-label-simple{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer}.register-container .consent-checkbox-simple{width:1.125rem;height:1.125rem;margin-top:.125rem;cursor:pointer;flex-shrink:0;accent-color:#3b82f6;border-radius:.25rem}.register-container .consent-text-wrapper{display:flex;flex-direction:column;gap:.375rem}.register-container .consent-text{font-size:.9375rem;color:#374151;line-height:1.5}.register-container .consent-subtext{font-size:.8125rem;color:#6b7280;line-height:1.4}.register-container .consent-link{color:#3b82f6;text-decoration:none;font-weight:500}.register-container .consent-link:hover{text-decoration:underline}.register-container .terms-link{color:#4f46e5;text-decoration:none;font-weight:500}.register-container .terms-link:hover{text-decoration:underline}.register-container .register-button{width:100%;padding:.9375rem 1.5rem;background:linear-gradient(135deg,#fff,#dbeafe,#93c5fd);color:#1e293b;border:none;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:1.5rem}.register-container .register-button:hover:not(:disabled){background:linear-gradient(135deg,#f0f9ff,#bfdbfe,#60a5fa)}.register-container .register-button:disabled{opacity:.5;cursor:not-allowed}.register-container .register-button.disabled{opacity:.5;cursor:not-allowed}.register-container .back-button{padding:.875rem 1.5rem;background:#fff;margin-top:50px;color:#6b7280;border:2px solid #e5e7eb;border-radius:.75rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.register-container .back-button:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;color:#374151}.register-container .back-button:disabled{opacity:.5;cursor:not-allowed}.register-container .info-box{margin-top:1.5rem;padding:.75rem;background:#f8fafc;border-radius:.5rem;font-size:.75rem;color:#64748b;text-align:center;line-height:1.5}.register-container .warning-box{background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1.25rem;margin-bottom:1.25rem;text-align:center}.register-container .warning-title{margin:0 0 .75rem;font-weight:600;color:#dc2626;font-size:.9375rem}.register-container .warning-text{margin:0;font-size:.875rem;color:#7f1d1d;line-height:1.5}.register-container .warning-text a{color:#dc2626;text-decoration:none}.register-container .warning-text a:hover{text-decoration:underline}.register-container .consent-box{border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;margin-bottom:1rem}.register-container .consent-box.essential{background:#f9fafb}.register-container .consent-title{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#111827}.register-container .consent-description{margin:0 0 .75rem;font-size:.875rem;color:#6b7280;line-height:1.5}.register-container .consent-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#374151}.register-container .consent-label.disabled{cursor:not-allowed;opacity:.7}.register-container .consent-label input[type=checkbox]{width:1rem;height:1rem;cursor:pointer;accent-color:#4f46e5}.register-container .consent-label.disabled input[type=checkbox]{cursor:not-allowed}.register-container .plan-selection-step{width:100%}.register-container .plans-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-bottom:1.5rem}@media (min-width: 768px){.register-container .register-card{max-width:60rem;padding:3rem}.register-container .plans-grid{grid-template-columns:repeat(3,1fr)}}.register-container .plan-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:32px;transition:all .3s ease;box-shadow:0 4px 6px #0000000d}.register-container .plan-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:#667eea}.register-container .plan-card.selected{border-color:#4f46e5;background:#eff6ff}.register-container .plan-card.popular{border:3px solid #667eea;position:relative}.register-container .plan-card.popular:before{content:"MOST POPULAR";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 16px;border-radius:20px;font-size:.75rem;font-weight:700;letter-spacing:.5px}.register-container .plan-header{text-align:center;margin-bottom:16px}.register-container .plan-emoji{font-size:2.5rem;margin-bottom:12px}.register-container .plan-name{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 12px}.register-container .plan-price{margin-bottom:16px}.register-container .price-amount{font-size:3rem;font-weight:700;color:#1e293b}.register-container .price-free{font-size:1.25rem;font-weight:700;color:#10b981}.register-container .price-period{font-size:1rem;color:#64748b;font-weight:500}.register-container .plan-description{font-size:.875rem;color:#64748b;line-height:1.6;margin:0 0 16px;min-height:40px}.register-container .plan-features{list-style:none;padding:0;margin:0 0 16px;flex:1}.register-container .plan-feature{display:flex;align-items:flex-start;gap:8px;padding:8px 0;font-size:.9375rem;color:#374151;line-height:1.5}.register-container .plan-select-button{width:100%;padding:16px 24px;border-radius:10px;font-size:1.0625rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;margin-top:auto;background:linear-gradient(135deg,#fff,#dbeafe,#93c5fd);color:#1e293b}.register-container .plan-feature.limitation{color:#9ca3af}.register-container .feature-icon{color:#10b981;font-weight:700;flex-shrink:0;font-size:.875rem}.register-container .feature-icon.unavailable{color:#d1d5db}.register-container .plan-select-button:hover{background:linear-gradient(135deg,#f0f9ff,#bfdbfe,#60a5fa);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0003}.register-container .plan-select-button.free{background:#10b981;color:#fff}.register-container .plan-select-button.free:hover{background:#059669}.register-container .plan-select-button.basic{background:#667eea;color:#fff}.register-container .plan-select-button.premium{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.register-container .plan-select-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0003}.register-container .plan-selection-footer{display:flex;justify-content:center;margin-top:1.5rem;position:relative;z-index:10}.register-container .email-verification-container{width:100%;max-width:40rem;margin:0 auto}.register-container .email-verification-header{text-align:center;margin-bottom:2rem}.register-container .email-verification-title{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.75rem;text-shadow:0 2px 10px rgba(0,0,0,.2)}.register-container .email-verification-subtitle{font-size:1.0625rem;color:#fffffff2;text-shadow:0 1px 3px rgba(0,0,0,.2)}.register-container .email-plan-highlight{color:#fff;font-weight:700}.register-container .email-verification-box-container{margin-bottom:2rem}.register-container .email-verification-box{background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;padding:2rem;text-align:center;box-shadow:0 10px 25px -5px #0003}.register-container .email-verification-icon{font-size:3rem;margin-bottom:1rem}.register-container .email-verification-content{max-width:28rem;margin:0 auto}.register-container .email-verification-heading{font-size:1.125rem;font-weight:600;color:#1e293b;margin:0 0 .75rem}.register-container .email-verification-text{font-size:.9375rem;color:#64748b;margin:0 0 .5rem}.register-container .email-verification-address{font-size:1rem;font-weight:600;color:#4f46e5;margin:0 0 1.5rem;word-break:break-all}.register-container .email-verification-button-container{display:flex;justify-content:center}.register-container .email-send-button{padding:.875rem 2rem;background:linear-gradient(135deg,#fff,#dbeafe,#93c5fd);color:#1e293b;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.register-container .email-send-button:hover:not(:disabled){background:linear-gradient(135deg,#f0f9ff,#bfdbfe,#60a5fa)}.register-container .email-send-button:disabled{opacity:.7;cursor:not-allowed}.register-container .email-send-button.loading{opacity:.7}.register-container .button-icon,.register-container .button-arrow{font-size:1.25rem}.register-container .email-verification-footer{display:flex;justify-content:center}.register-container .verification-notice{text-align:center;padding:1.5rem}.register-container .verification-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin-bottom:1rem}.register-container .verification-description{font-size:.9375rem;color:#64748b;margin-bottom:.5rem}.register-container .email-highlight{color:#4f46e5;font-weight:600}.register-container .verification-instructions{font-size:.9375rem;color:#64748b;margin-bottom:2rem}.register-container .verification-actions{display:flex;flex-direction:column;align-items:center;gap:1rem}.register-container .resend-btn{padding:.875rem 2rem;background:linear-gradient(135deg,#fff,#dbeafe,#93c5fd);color:#1e293b;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.register-container .resend-btn:hover:not(:disabled){background:linear-gradient(135deg,#f0f9ff,#bfdbfe,#60a5fa)}.register-container .resend-btn:disabled{opacity:.5;cursor:not-allowed}.register-container .back-to-login{margin:0;font-size:.875rem}.register-container .login-link{color:#4f46e5;text-decoration:none;font-weight:500;cursor:pointer}.register-container .login-link:hover{text-decoration:underline}.register-container .success-notice{text-align:center;padding:2rem 1.5rem}.register-container .success-icon{font-size:4rem;margin-bottom:1rem}.register-container .success-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin-bottom:.75rem}.register-container .success-description{font-size:.9375rem;color:#64748b;margin-bottom:1.5rem;line-height:1.5}.register-container .invitation-next-step{background:#fef3c7;border:1px solid #fbbf24;border-radius:.5rem;padding:1rem;margin-bottom:1.5rem}.register-container .invitation-next-step p{margin:0;font-size:.875rem;color:#92400e}.register-container .dashboard-btn{padding:.875rem 2rem;background:linear-gradient(135deg,#fff,#dbeafe,#93c5fd);color:#1e293b;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.register-container .dashboard-btn:hover{background:linear-gradient(135deg,#f0f9ff,#bfdbfe,#60a5fa)}.register-container .general-error{background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1rem;display:flex;align-items:flex-start;gap:.75rem;margin-top:1rem}.register-container .general-error p{margin:0;font-size:.875rem;color:#7f1d1d;line-height:1.5}.register-container .error-icon{font-size:1.25rem;flex-shrink:0}.register-container .general-success{background:#f0fdf4;border:1px solid #86efac;border-radius:.5rem;padding:1rem;display:flex;align-items:flex-start;gap:.75rem;margin-top:1rem}.register-container .general-success p{margin:0;font-size:.875rem;color:#14532d;line-height:1.5}.register-container .general-info{background:#eff6ff;border:1px solid #bfdbfe;border-radius:.5rem;padding:1rem;display:flex;align-items:flex-start;gap:.75rem;margin-top:1rem}.register-container .general-info p{margin:0;font-size:.875rem;color:#1e3a8a;line-height:1.5}.register-container .success-icon{font-size:1.25rem;flex-shrink:0}.register-container .register-footer{text-align:center;margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.2)}.register-container .login-prompt{margin:0;font-size:1rem;color:#64748b}.register-container .account-type-card .login-prompt{color:#fffffff2;font-size:1.0625rem}.register-container .account-type-card .login-link{color:#fff;text-decoration:underline;text-underline-offset:3px}.register-container .login-link:hover{text-decoration:underline;opacity:.8}.register-container .loading-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 640px){.register-container{padding:1rem}.register-container .register-card,.register-container .payment-container{padding:1.5rem}.register-container .register-title{font-size:1.5rem}.register-container .progress-indicator{padding:0}.register-container .step-label{display:none}.register-container .account-type-grid{grid-template-columns:1fr}.register-container .account-type-card-btn{padding:1.5rem 1rem}.register-container .account-card-icon{font-size:3rem}.register-container .account-card-title{font-size:1.25rem}.register-container .plan-summary-card{flex-direction:column;text-align:center}.register-container .plan-summary-left{flex-direction:column}.register-container .plan-summary-right{padding-left:0;padding-top:1rem}}.register-container .container{background:#fffffffa;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;overflow-y:auto}.register-container .header{padding:30px 40px 10px;text-align:center;border-bottom:1px solid #d1d5db}.register-container .header .logo{font-size:28px;font-weight:700;color:#667eea;margin:0;padding:0;line-height:1.2;height:auto}.register-container .subtitle{color:#6b7280;font-size:14px;margin:8px 0 15px;padding:0}.register-container .content{padding:32px 40px}.register-container .step-title{font-size:24px;font-weight:600;color:#111827;margin:0 0 8px}.register-container .step-description{color:#6b7280;font-size:14px;margin:0 0 24px}.register-container .role-options{display:flex;flex-direction:column;gap:12px}.register-container .option-card{border:2px solid #d1d5db;border-radius:12px;padding:20px;cursor:pointer;transition:all .2s ease;position:relative;background:#fff;display:block}.register-container .option-card:hover{border-color:#667eea;background:#f9fafb}.register-container .option-card input[type=radio]{position:absolute;opacity:0}.register-container .option-title{font-size:16px;font-weight:600;color:#111827;margin:0 0 4px}.register-container .option-description{font-size:14px;color:#6b7280;margin:0}.register-container .footer{text-align:center;padding:20px;border-top:1px solid #e6e6e6;font-size:13px;color:#6b7280}.register-container .footer-link{color:#667eea;cursor:pointer;text-decoration:none}.register-container .footer-link:hover{text-decoration:underline}.register-container .btn-primary{background:#667eea;color:#fff}.register-container .btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.register-container .btn-secondary{background:#f3f4f6;color:#374151}.register-container .btn-secondary:hover{background:#e5e7eb}.register-container .plan-selection-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:1500px;width:100%;overflow:hidden;transform:scale(.95);transform-origin:center center;margin:0 auto}.register-container .plan-header-section{padding:30px 40px 15px;text-align:center;border-bottom:1px solid #d1d5db}.register-container .plan-header-section .logo{font-size:28px;font-weight:700;color:#667eea;margin:0;padding:0;line-height:1;height:auto!important}.register-container .plan-header-section .subtitle{color:#6b7280;font-size:14px;margin:6px 0 0;padding:0;line-height:1}.register-container .plan-content{padding:20px 60px 32px}.register-container .plan-main-title{font-size:32px;font-weight:700;color:#111827;text-align:center;margin:0 0 8px}.register-container .plan-main-description{font-size:16px;color:#6b7280;text-align:center;margin:0 0 24px}.register-container .plan-footer-section{padding:28px 40px;border-top:1px solid #d1d5db;text-align:center}.register-container .plan-footer-section .footer-link{color:#667eea;background:#fff;cursor:pointer;text-decoration:none;font-size:16px;font-weight:600;padding:12px 28px;display:inline-block;border-radius:10px;border:2px solid #667eea;transition:all .2s ease;box-shadow:0 2px 8px #667eea26}.register-container .plan-footer-section .footer-link:hover:not(:disabled){background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d;text-decoration:none}.register-container .plan-footer-section .footer-link:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 1200px){.register-container .plans-grid{grid-template-columns:1fr;gap:24px}.register-container .plan-card{min-height:auto}}.register-container .congrats-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 1s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.register-container .email-verification-heading-big{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.register-container .email-verification-heading-medium{font-size:1.25rem;font-weight:600;color:#667eea;margin:0 0 1rem}.verify-container{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#dbeafe,#eff6ff,#e0e7ff);padding:2rem 1rem;display:flex;align-items:center;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.verify-card{width:100%;max-width:32rem;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1.5rem;padding:2.5rem;box-shadow:0 25px 50px -12px #00000026;border:1px solid rgba(255,255,255,.2);animation:slideUp .6s ease-out}.verify-header{text-align:center;margin-bottom:2rem}.verify-main-title{font-size:2rem;font-weight:700;background:linear-gradient(to right,#2563eb,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.verify-subtitle{color:#64748b;font-size:1rem;margin:0}.verify-status{text-align:center;padding:2rem 0}.verify-icon{width:5rem;height:5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:2.5rem;position:relative}.verify-icon.verifying{background:#3b82f61a;border:2px solid rgba(59,130,246,.2)}.verify-icon.success{background:#22c55e1a;border:2px solid rgba(34,197,94,.2);animation:successPulse 2s ease-in-out infinite}.verify-icon.error{background:#ef44441a;border:2px solid rgba(239,68,68,.2);animation:errorShake .8s ease-in-out}.loading-dots{display:flex;gap:.375rem}.loading-dot{width:.75rem;height:.75rem;background:#3b82f6;border-radius:50%;animation:loadingBounce 1.4s infinite ease-in-out both}.loading-dot:nth-child(1){animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}.verify-title{font-size:1.75rem;font-weight:700;color:#1e293b;margin-bottom:1rem}.verify-description{color:#64748b;font-size:1rem;margin-bottom:1.5rem;line-height:1.6}.verify-subdescription{color:#64748b;font-size:.875rem;margin-bottom:2rem;line-height:1.5}.progress-bar{width:100%;height:.5rem;background:#e2e8f080;border-radius:.25rem;overflow:hidden;margin-top:1rem}.progress-fill{height:100%;background:linear-gradient(to right,#3b82f6,#2563eb);border-radius:.25rem;animation:progressAnimation 2s ease-in-out infinite}.verify-actions{display:flex;flex-direction:column;gap:1rem;align-items:center}.primary-button{width:100%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:1rem;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 25px -5px #3b82f64d;display:flex;align-items:center;justify-content:center;gap:.5rem}.primary-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 15px 35px -5px #3b82f666}.primary-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.primary-button.loading{background:linear-gradient(135deg,#93c5fd,#60a5fa)}.secondary-button{width:100%;background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.3);padding:1rem;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.secondary-button:hover{background:#3b82f633;transform:translateY(-2px)}.error-help{background:#f8fafccc;padding:1.5rem;border:1px solid rgba(226,232,240,.5);border-radius:.75rem;margin:1.5rem 0 2rem;text-align:left}.help-title{font-size:1rem;font-weight:600;color:#374151;margin-bottom:.75rem}.help-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.help-list li{display:flex;align-items:flex-start;font-size:.875rem;color:#64748b;line-height:1.5}.help-list li:before{content:"•";color:#3b82f6;font-weight:700;margin-right:.5rem;margin-top:.125rem}@keyframes loadingBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes progressAnimation{0%{width:0%}50%{width:70%}to{width:100%}}@keyframes successPulse{0%,to{transform:scale(1);box-shadow:0 0 #22c55e66}50%{transform:scale(1.05);box-shadow:0 0 0 10px #22c55e00}}@keyframes errorShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-3px)}20%,40%,60%,80%{transform:translate(3px)}}@media (max-width: 768px){.verify-container{padding:1.5rem .75rem}.verify-card{padding:2rem;border-radius:1rem}.verify-main-title{font-size:1.75rem}.verify-icon{width:4rem;height:4rem;font-size:2rem}.verify-title{font-size:1.5rem}.verify-actions{gap:.75rem}.primary-button,.secondary-button{padding:.875rem}}@media (max-width: 480px){.verify-container{padding:1rem .5rem}.verify-card{padding:1.5rem}.verify-main-title{font-size:1.5rem}.verify-icon{width:3.5rem;height:3.5rem;font-size:1.75rem}.verify-title{font-size:1.25rem}.error-help{padding:1rem}.help-list li{font-size:.8rem}}.signup-form{width:100%;max-width:400px;margin:0 auto}.form-group{margin-bottom:16px;text-align:left}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:14px}.form-group input,.form-group select{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input.error,.form-group select.error{border-color:#ef4444}.error-text{display:block;color:#ef4444;font-size:12px;margin-top:4px}.verify-icon.signup{font-size:32px;background:#eff6ff;border-radius:50%;width:80px;height:80px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.forgot-password-container{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#dbeafe,#eff6ff,#e0e7ff);padding:2rem 1rem;display:flex;align-items:center;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.forgot-password-card{width:100%;max-width:32rem;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1.5rem;padding:2.5rem;box-shadow:0 25px 50px -12px #00000026;border:1px solid rgba(255,255,255,.2);animation:slideUp .6s ease-out}.forgot-password-header{text-align:center;margin-bottom:2rem}.forgot-password-title{font-size:2rem;font-weight:700;background:linear-gradient(to right,#2563eb,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.forgot-password-subtitle{color:#64748b;font-size:1rem;margin:0;line-height:1.6}.forgot-password-form,.reset-password-form{display:flex;flex-direction:column;gap:1.5rem}.form-label{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.form-input{width:100%;padding:1rem;border:2px solid rgba(59,130,246,.2);border-radius:.75rem;font-size:1rem;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;color:#1e293b;box-sizing:border-box}.form-input::placeholder{color:#9ca3af}.password-wrapper{position:relative;display:flex;align-items:center}.password-input{padding-right:3.5rem}.password-toggle{position:absolute;right:1rem;background:none;border:none;font-size:1.25rem;cursor:pointer;transition:all .3s ease;padding:.25rem;border-radius:.375rem}.password-toggle:hover{background:#3b82f61a;transform:scale(1.1)}.password-feedback{margin-top:.75rem}.strength-meter{height:.5rem;width:100%;background:#e2e8f080;border-radius:.25rem;overflow:hidden;margin-bottom:.5rem}.strength-bar{height:100%;border-radius:.25rem;transition:all .3s ease}.strength-weak{background:linear-gradient(to right,#ef4444,#dc2626)}.strength-good{background:linear-gradient(to right,#eab308,#d97706)}.strength-strong{background:linear-gradient(to right,#22c55e,#16a34a)}.strength-label{font-size:.75rem;font-weight:600;margin:0}.strength-label.strength-weak{color:#ef4444}.strength-label.strength-good{color:#eab308}.strength-label.strength-strong{color:#22c55e}.requirements-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.25rem}.requirement{display:flex;align-items:center;font-size:.75rem;transition:all .3s ease}.requirement.valid{color:#16a34a}.requirement.invalid{color:#dc2626}.requirement-icon{margin-right:.5rem;font-weight:700}.forgot-password-button,.reset-password-button{width:100%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:1rem;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 25px -5px #3b82f64d;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.forgot-password-button:hover:not(:disabled),.reset-password-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 15px 35px -5px #3b82f666}.forgot-password-button:disabled,.reset-password-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.forgot-password-button.loading,.reset-password-button.loading{background:linear-gradient(135deg,#93c5fd,#60a5fa)}.email-sent-notice{text-align:center;padding:2rem 0}.email-sent-icon{font-size:4rem;margin-bottom:1.5rem;animation:bounce 2s ease-in-out infinite}.email-sent-description{color:#64748b;margin-bottom:1.5rem;line-height:1.6;font-size:1rem}.email-sent-instructions{font-size:.875rem;color:#64748b;margin-bottom:2rem;line-height:1.6}.email-sent-actions{display:flex;flex-direction:column;gap:1rem;align-items:center}.resend-button{background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.3);padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.875rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.resend-button:hover:not(.loading){background:#3b82f633;transform:translateY(-2px)}.resend-button.loading{opacity:.6;cursor:not-allowed}.message-container{margin-top:1.5rem;padding:1rem;border-radius:.75rem;border:1px solid;animation:slideDown .3s ease-out}.message-container.success{background:#22c55e1a;border-color:#22c55e4d;color:#15803d}.message-container.error{background:#ef44441a;border-color:#ef44444d;color:#dc2626}.message-content{display:flex;align-items:center;gap:.5rem}.message-text{margin:0;font-weight:500;line-height:1.5}.error-message{color:#dc2626;font-size:.75rem;margin-top:.25rem;margin-bottom:0;font-weight:500}.forgot-password-footer{margin-top:2rem;text-align:center}.back-to-login{color:#64748b;font-size:.875rem;margin:0}.login-link{color:#2563eb;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none}.login-link:hover{color:#1d4ed8;text-decoration:underline}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-8px,0)}70%{transform:translate3d(0,-4px,0)}90%{transform:translate3d(0,-2px,0)}}@media (max-width: 768px){.forgot-password-container{padding:1.5rem .75rem}.forgot-password-card{padding:2rem;border-radius:1rem}.forgot-password-title{font-size:1.75rem}.form-input,.forgot-password-button,.reset-password-button{padding:.875rem}.email-sent-icon{font-size:3rem}}@media (max-width: 480px){.forgot-password-container{padding:1rem .5rem}.forgot-password-card{padding:1.5rem}.forgot-password-title{font-size:1.5rem}.password-toggle{right:.75rem}.password-input{padding-right:3rem}.requirements-list{font-size:.7rem}.email-sent-icon{font-size:2.5rem}}.legal-page{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#dbeafe,#eff6ff,#e0e7ff);padding:2rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.legal-container{max-width:800px;margin:0 auto;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:3rem;border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000026;border:1px solid rgba(255,255,255,.2);animation:slideUp .6s ease-out}.legal-container h1{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(to right,#2563eb,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center}.effective-date{text-align:center;color:#64748b;font-style:italic;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid rgba(226,232,240,.5)}.legal-container section{margin-bottom:2rem}.legal-container h2{color:#374151;font-size:1.5rem;font-weight:600;margin:2rem 0 1rem;border-left:4px solid #3b82f6;padding-left:1rem}.legal-container h3{color:#475569;font-size:1.2rem;font-weight:600;margin:1.5rem 0 .75rem}.legal-container p{line-height:1.7;color:#64748b;margin-bottom:1rem;font-size:1rem}.legal-container ul{margin:1rem 0;padding-left:1.5rem}.legal-container li{line-height:1.6;color:#64748b;margin-bottom:.5rem;font-size:1rem}.legal-container li strong{color:#374151;font-weight:600}.legal-container a{color:#2563eb;text-decoration:none;transition:all .3s ease}.legal-container a:hover{color:#1d4ed8;text-decoration:underline}@media (max-width: 768px){.legal-page{padding:1.5rem .75rem}.legal-container{padding:2rem;border-radius:1rem}.legal-container h1{font-size:2rem}.legal-container h2{font-size:1.25rem}.legal-container h3{font-size:1.1rem}}.legal-footer{text-align:center;margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(226,232,240,.5)}.legal-footer .back-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 25px -5px #3b82f64d;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none}@media (max-width: 480px){.legal-container{padding:1.5rem}.legal-container h1{font-size:1.75rem}.legal-container h2{font-size:1.125rem;border-left-width:3px;padding-left:.75rem}}.checkmywork-container{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#dbeafe,#eff6ff,#e0e7ff);padding:2.5rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.checkmywork-card{max-width:42rem;margin:0 auto;background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1.5rem;padding:2.5rem;box-shadow:0 25px 50px -12px #00000026;border:1px solid rgba(255,255,255,.2);animation:slideUp .6s ease-out}.checkmywork-header{text-align:center;margin-bottom:2.5rem}.header-icon{font-size:3rem;margin-bottom:1rem;animation:pulse 2s ease-in-out infinite}.checkmywork-title{font-size:2.25rem;font-weight:700;background:linear-gradient(to right,#7c3aed,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.75rem}.checkmywork-subtitle{color:#64748b;font-size:1rem;line-height:1.6;margin:0 auto;max-width:32rem}.checkmywork-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column}.form-label{font-size:1rem;font-weight:600;color:#374151;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.form-input{width:100%;padding:1rem;border:2px solid rgba(59,130,246,.2);border-radius:.75rem;font-size:1rem;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;color:#1e293b;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;box-sizing:border-box}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;transform:translateY(-2px);background:#fffffff2}.form-input::placeholder{color:#9ca3af;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.form-textarea{width:100%;padding:1rem;border:2px solid rgba(59,130,246,.2);border-radius:.75rem;font-size:1rem;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;color:#1e293b;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;resize:vertical;min-height:120px;line-height:1.6;box-sizing:border-box}.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;transform:translateY(-2px);background:#fffffff2}.form-textarea::placeholder{color:#9ca3af;line-height:1.6}.textarea-hint{font-size:.875rem;color:#64748b;margin-top:.5rem;font-style:italic}.submit-button{width:100%;background:linear-gradient(135deg,#7c3aed,#3b82f6);color:#fff;border:none;padding:1rem;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 25px -5px #7c3aed4d;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.submit-button:hover:not(.loading){background:linear-gradient(135deg,#6d28d9,#2563eb);transform:translateY(-2px);box-shadow:0 15px 35px -5px #7c3aed66}.submit-button.loading{background:linear-gradient(135deg,#c4b5fd,#93c5fd);opacity:.8;cursor:not-allowed;transform:none}.loading-spinner{width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626;padding:1rem;border-radius:.75rem;margin-top:1.5rem;display:flex;align-items:center;gap:.5rem;animation:slideDown .3s ease-out}.message-icon{font-size:1.125rem;flex-shrink:0}.error-message p{margin:0;font-weight:500}.feedback-section{margin-top:2rem;border-top:1px solid rgba(226,232,240,.5);padding-top:2rem;animation:slideDown .5s ease-out}.section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.section-icon{font-size:1.5rem}.section-title{font-size:1.25rem;font-weight:600;color:#1e293b;margin:0}.feedback-content{background:#22c55e0d;border:1px solid rgba(34,197,94,.2);border-radius:.75rem;padding:1.5rem;border-left:4px solid #22c55e}.feedback-text{white-space:pre-wrap;color:#374151;font-size:.95rem;line-height:1.7;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;margin:0}.mistakes-section{margin-top:2rem;border-top:1px solid rgba(226,232,240,.5);padding-top:2rem}.mistakes-toggle{background:none;border:none;color:#dc2626;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.75rem;font-size:1rem;transition:all .3s ease;padding:.5rem 0}.mistakes-toggle:hover{color:#b91c1c;transform:translate(4px)}.toggle-arrow{transition:transform .3s ease;font-size:.875rem}.toggle-arrow.expanded{transform:rotate(90deg)}.toggle-icon{font-size:1.125rem}.mistakes-content{margin-top:1rem;background:#fef3c7cc;border:1px solid rgba(251,191,36,.3);border-radius:.75rem;padding:1.5rem;border-left:4px solid #f59e0b;animation:slideDown .3s ease-out}.mistakes-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.mistake-item{display:flex;align-items:flex-start;gap:.75rem;color:#92400e;line-height:1.6;font-size:.95rem}.mistake-bullet{color:#f59e0b;font-weight:700;font-size:1.125rem;flex-shrink:0;margin-top:.125rem}.similar-section{margin-top:2rem;border-top:1px solid rgba(226,232,240,.5);padding-top:2rem;animation:slideDown .5s ease-out}.similar-problems{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.similar-problem{background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:.75rem;padding:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.75rem;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}.similar-problem:hover{background:#3b82f61a;border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 15px #3b82f633}.problem-icon{font-size:1.125rem;flex-shrink:0}.problem-text{flex:1;color:#1e293b;font-weight:500}.try-icon{font-size:1.125rem;color:#3b82f6;flex-shrink:0;transition:transform .3s ease}.similar-problem:hover .try-icon{transform:translate(4px)}.footer-links{margin-top:2rem;text-align:center;border-top:1px solid rgba(226,232,240,.5);padding-top:2rem}.help-link{color:#2563eb;text-decoration:none;font-size:.95rem;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem}.help-link:hover{color:#1d4ed8;background:#3b82f61a;transform:translateY(-1px)}.link-icon{font-size:1rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.checkmywork-container{padding:1.5rem .75rem}.checkmywork-card{padding:2rem;border-radius:1rem}.header-icon{font-size:2.5rem}.checkmywork-title{font-size:2rem}.form-input,.form-textarea,.submit-button{padding:.875rem}.feedback-content,.mistakes-content{padding:1rem}.similar-problem{padding:.875rem}}@media (max-width: 480px){.checkmywork-container{padding:1rem .5rem}.checkmywork-card{padding:1.5rem}.header-icon{font-size:2rem}.checkmywork-title{font-size:1.75rem}.section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.mistakes-toggle{flex-wrap:wrap}.similar-problem{flex-direction:column;align-items:flex-start;text-align:left}.try-icon{align-self:flex-end}}.qh-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.qh-container{max-width:900px;margin:0 auto}.qh-loading,.qh-error,.qh-empty{background:#fff;border-radius:12px;padding:2rem;text-align:center}.qh-error a,.qh-empty a{display:inline-block;margin-top:1rem;padding:.5rem 1.5rem;background:#667eea;color:#fff;text-decoration:none;border-radius:6px}.qh-header{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.qh-header h1{margin:0 0 1rem;font-size:1.75rem}.qh-stats{display:flex;gap:2rem;color:#666;font-size:.95rem}.qh-stats strong{color:#667eea;font-size:1.25rem;display:block}.qh-list{display:flex;flex-direction:column;gap:1rem}.qh-item{background:#fff;border-radius:12px;padding:1.25rem}.qh-item-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.qh-item-top h3{margin:0;font-size:1.125rem;color:#1a1a1a}.qh-item-top span{font-weight:700;padding:.25rem .75rem;border-radius:6px}.qh-item-top .green{background:#d1fae5;color:#065f46}.qh-item-top .yellow{background:#fef3c7;color:#92400e}.qh-item-top .red{background:#fee2e2;color:#991b1b}.qh-item-meta{color:#666;font-size:.875rem;margin-bottom:1rem}.qh-bars{display:flex;flex-direction:column;gap:.5rem}.qh-bar{display:grid;grid-template-columns:3rem 1fr 3rem;gap:.5rem;align-items:center;font-size:.875rem;color:#666}.qh-bar-bg{height:6px;background:#f0f0f0;border-radius:3px;overflow:hidden}.qh-bar-fill{height:100%;border-radius:3px}.qh-bar-fill.green{background:#10b981}.qh-bar-fill.yellow{background:#f59e0b}.qh-bar-fill.red{background:#ef4444}@media (max-width: 640px){.qh-stats{gap:1rem}.qh-item-top{flex-direction:column;align-items:flex-start;gap:.5rem}}.quizattempt-container{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#dbeafe,#eff6ff,#e0e7ff);padding:2.5rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.quizattempt-content{max-width:1000px;margin:0 auto}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000026;border:1px solid rgba(255,255,255,.2);text-align:center}.error-message{color:#dc2626;font-size:1rem;font-weight:500;margin:0 0 1.5rem}.back-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3b82f64d}.back-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px)}.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.page-title{font-size:2rem;font-weight:700;background:linear-gradient(to right,#7c3aed,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.back-link{color:#2563eb;text-decoration:none;font-weight:600;padding:.75rem 1.5rem;border-radius:.75rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);transition:all .3s ease}.back-link:hover{color:#1d4ed8;background:#3b82f633;transform:translateY(-2px)}.summary-card{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1.5rem;padding:2rem;box-shadow:0 20px 40px -5px #0000001a;border:1px solid rgba(255,255,255,.2);margin-bottom:2rem;animation:slideUp .6s ease-out}.summary-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.summary-info{display:flex;flex-direction:column;gap:1rem}.info-item{display:flex;align-items:center;gap:.75rem}.info-icon{font-size:1.25rem;flex-shrink:0}.info-details{display:flex;flex-direction:column;gap:.25rem}.info-label{color:#64748b;font-size:.875rem;font-weight:500}.info-value{color:#1e293b;font-weight:600}.score-section{display:flex;align-items:center}.score-badge{padding:1rem 1.5rem;border-radius:1rem;font-weight:600;border:2px solid;display:flex;flex-direction:column;align-items:center;gap:.25rem}.score-badge.large{padding:1.5rem 2rem}.score-badge.score-excellent{background:#22c55e1a;color:#15803d;border-color:#22c55e4d}.score-badge.score-good{background:#fbbf241a;color:#d97706;border-color:#fbbf244d}.score-badge.score-needs-work{background:#ef44441a;color:#dc2626;border-color:#ef44444d}.score-label{font-size:.875rem;opacity:.8}.score-value{font-size:1.75rem;font-weight:700}.answers-section{margin-bottom:2rem}.section-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.answers-list{display:flex;flex-direction:column;gap:1.5rem}.answer-card{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1.25rem;padding:1.5rem;box-shadow:0 10px 25px -5px #0000001a;border:2px solid;transition:all .3s ease;animation:slideUp .6s ease-out}.answer-card.correct{border-color:#22c55e4d;background:#22c55e05}.answer-card.incorrect{border-color:#ef44444d;background:#ef444405}.answer-card:hover{transform:translateY(-2px);box-shadow:0 20px 40px -5px #00000026}.question-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.question-badge{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.question-number{background:linear-gradient(135deg,#7c3aed,#3b82f6);color:#fff;padding:.375rem .75rem;border-radius:.5rem;font-weight:600;font-size:.875rem}.result-icon{font-size:1.25rem}.result-icon.correct{color:#16a34a}.result-icon.incorrect{color:#dc2626}.question-text{color:#1e293b;font-weight:600;font-size:1rem;line-height:1.5;margin:0;flex:1}.answer-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.answer-section{background:#f8fafccc;border:1px solid rgba(226,232,240,.5);border-radius:.75rem;padding:1rem}.answer-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.answer-icon{font-size:1rem}.answer-label{color:#64748b;font-size:.875rem;font-weight:500}.answer-value{font-weight:600;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;margin:0;line-height:1.5}.answer-value.correct{color:#16a34a}.answer-value.incorrect{color:#dc2626}.explanation-section{background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:.75rem;padding:1.25rem;border-left:4px solid #3b82f6}.explanation-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.explanation-icon{font-size:1.125rem;color:#3b82f6}.explanation-title{font-size:.95rem;font-weight:600;color:#374151;margin:0}.explanation-text{color:#374151;font-size:.95rem;line-height:1.6;margin:0;white-space:pre-wrap}.actions-section{text-align:center;padding-top:2rem;border-top:1px solid rgba(226,232,240,.5)}.retry-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;text-decoration:none;padding:1rem 2rem;border-radius:.75rem;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 10px 25px -5px #3b82f64d;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.retry-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 15px 35px -5px #3b82f666}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.quizattempt-container{padding:2rem .75rem}.page-title{font-size:1.75rem}.header-section{flex-direction:column;align-items:stretch;text-align:center}.summary-card{padding:1.5rem}.summary-content{flex-direction:column;align-items:stretch;text-align:center}.summary-info{align-items:center}.info-item{justify-content:center}.answer-comparison{grid-template-columns:1fr}.question-header{flex-direction:column;gap:.75rem}.question-badge{justify-content:center}.answer-card{padding:1.25rem}}@media (max-width: 480px){.quizattempt-container{padding:1.5rem .5rem}.page-title{font-size:1.5rem}.summary-card{padding:1rem}.score-badge.large{padding:1rem 1.5rem}.score-value{font-size:1.5rem}.answer-card{padding:1rem}.answer-section{padding:.75rem}.explanation-section{padding:1rem}.retry-btn{padding:.875rem 1.5rem;width:100%}}.quiztopics-container{min-height:calc(100vh - 80px);background:linear-gradient(135deg,#dbeafe,#eff6ff,#e0e7ff);padding:2.5rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.quiztopics-content{max-width:1200px;margin:0 auto;width:100%}.loading-state,.error-state,.embedded-loading-state,.embedded-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:#ffffffb3;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:1rem;box-shadow:0 4px 15px #00000014;border:1px solid rgba(255,255,255,.3);text-align:center}.loading-dots{display:flex;gap:.5rem;margin-bottom:1rem}.bounce-dot{width:1rem;height:1rem;background:#3b82f6;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.delay-1{animation-delay:-.32s}.delay-2{animation-delay:-.16s}.loading-text{color:#64748b;font-size:1rem;margin:0}.error-icon{font-size:3rem;margin-bottom:1rem;animation:pulse 2s ease-in-out infinite}.error-message{color:#dc2626;font-size:1rem;font-weight:500;margin:0}.header-section{text-align:center;margin-bottom:2.5rem}.page-title{font-size:2.25rem;font-weight:700;background:linear-gradient(to right,#1e40af,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.75rem;line-height:1.2}.page-subtitle{color:#64748b;font-size:1rem;line-height:1.6;max-width:42rem;margin:0 auto}.topics-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:1rem!important;grid-auto-rows:auto!important;grid-auto-flow:row!important;align-items:stretch!important;justify-items:stretch!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;position:relative!important;z-index:1!important;flex-direction:unset!important;flex-wrap:unset!important;margin-bottom:2.5rem;overflow:visible!important;container-type:inline-size}@supports not (display: grid){.topics-grid{display:flex!important;flex-wrap:wrap!important;gap:1rem!important;align-items:stretch!important}.topics-grid>.topic-card{flex:0 0 calc(50% - .5rem)!important;max-width:calc(50% - .5rem)!important}}.embedded-quiztopics{width:100%;padding:0;margin:0;background:transparent}.embedded-quiztopics .quiztopics-content{max-width:100%;margin:0;width:100%}.embedded-quiztopics .topics-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:1rem!important;grid-auto-rows:auto!important;grid-auto-flow:row!important;align-items:stretch!important;justify-items:stretch!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;position:relative!important;z-index:1!important;flex-direction:unset!important;flex-wrap:unset!important;margin-bottom:0!important;overflow:visible!important;container-type:inline-size}.topic-card,.topics-grid>.topic-card,.embedded-quiztopics .topics-grid>.topic-card{width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;min-height:200px;box-sizing:border-box!important;flex:none!important;flex-basis:auto!important;flex-grow:0!important;flex-shrink:1!important;position:relative!important;display:block!important;float:none!important;clear:none!important;background:#fffc;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.3);border-radius:1rem;box-shadow:0 4px 15px #00000014;overflow:hidden;transition:all .3s ease}.topic-card:hover,.embedded-quiztopics .topic-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001f;border-color:#3b82f666}.card-content,.embedded-quiztopics .card-content{padding:1.5rem;text-align:center;display:flex;flex-direction:column;height:100%;min-height:180px;box-sizing:border-box;justify-content:space-between}.topic-icon,.embedded-quiztopics .topic-icon{font-size:2rem;margin-bottom:.75rem;line-height:1}.topic-name,.embedded-quiztopics .topic-name{font-size:1.25rem;font-weight:600;color:#1e40af;margin-bottom:.75rem;line-height:1.3;flex-shrink:0}.topic-description,.embedded-quiztopics .topic-description{color:#64748b;font-size:.875rem;line-height:1.5;margin-bottom:1.25rem;flex:1;display:flex;align-items:center;text-align:center}.start-quiz-btn,.embedded-quiztopics .start-quiz-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;text-decoration:none;padding:.75rem 1.25rem;border-radius:.75rem;font-weight:600;font-size:.875rem;transition:all .3s ease;box-shadow:0 2px 8px #3b82f640;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;margin-top:auto;flex-shrink:0;white-space:nowrap}.start-quiz-btn:hover,.embedded-quiztopics .start-quiz-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f659}.btn-icon,.embedded-quiztopics .btn-icon{font-size:.875rem}.footer-section{text-align:center;padding-top:1.5rem;border-top:1px solid rgba(226,232,240,.3)}.history-link{color:#2563eb;text-decoration:none;font-size:.875rem;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;gap:.375rem;padding:.625rem 1.25rem;border-radius:.625rem;background:#3b82f60d;border:1px solid rgba(59,130,246,.2)}.history-link:hover{color:#1d4ed8;background:#3b82f61a;transform:translateY(-1px)}.link-icon{font-size:.875rem}@media (max-width: 1024px){.topics-grid,.embedded-quiztopics .topics-grid{grid-template-columns:repeat(2,1fr)!important;gap:.875rem!important}}@media (max-width: 768px){.quiztopics-container{padding:2rem .75rem}.topics-grid,.embedded-quiztopics .topics-grid{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}.page-title{font-size:1.875rem}.page-subtitle{font-size:.9375rem}.card-content,.embedded-quiztopics .card-content{padding:1.25rem;min-height:160px}.topic-icon,.embedded-quiztopics .topic-icon{font-size:1.75rem}.topic-name,.embedded-quiztopics .topic-name{font-size:1.125rem}.topic-description,.embedded-quiztopics .topic-description{font-size:.8125rem}}@media (max-width: 640px){.topics-grid,.embedded-quiztopics .topics-grid{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}.card-content,.embedded-quiztopics .card-content{padding:1rem;min-height:140px}.start-quiz-btn,.embedded-quiztopics .start-quiz-btn{padding:.625rem 1rem;font-size:.8125rem}}@media (max-width: 480px){.quiztopics-container{padding:1.5rem .5rem}.page-title{font-size:1.625rem}.topics-grid,.embedded-quiztopics .topics-grid{grid-template-columns:1fr!important;gap:1rem!important}.card-content,.embedded-quiztopics .card-content{padding:1rem;min-height:140px}.start-quiz-btn,.embedded-quiztopics .start-quiz-btn{padding:.625rem 1rem;font-size:.8125rem}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.topics-grid:empty:before,.embedded-quiztopics .topics-grid:empty:before{content:"";display:block;width:100%;height:200px;grid-column:1 / -1}.topics-grid *,.embedded-quiztopics .topics-grid *{box-sizing:border-box}.topics-grid>*,.embedded-quiztopics .topics-grid>*{min-height:1px;min-width:1px;visibility:visible;opacity:1}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:pageEnter .4s ease-out}.page-enter.no-animation{animation:none}@tailwind base;@tailwind components;@tailwind utilities;:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{color:#213547;background-color:#fff}.home-page{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:2rem}.home-page button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f9f9f9;cursor:pointer;transition:border-color .25s}.home-page button:hover{border-color:#646cff}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}.idle-warning-modal{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;z-index:9999!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#00000080!important}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}@media (prefers-color-scheme: dark){.home-page{color:#ffffffde;background-color:#242424}.home-page button{background-color:#1a1a1a}}
