body{background:linear-gradient(90deg,#fceabb,#f8b500);font-family:Fredoka One,cursive;overflow-x:hidden}a{color:inherit;cursor:pointer;text-decoration:none}button{background-color:#ffd966;border-radius:10px;color:#333;font-family:inherit;font-size:1.1em;padding:8px 16px;transition:all .3s ease}button:hover{background-color:#f4c842;transform:scale(1.05)}input[type=text]{border:2px solid #ddd;border-radius:8px;font-size:1em}img{height:auto;max-width:100%;-webkit-user-select:none;user-select:none}@media screen and (max-width:768px){body{font-size:14px}button{font-size:1em;padding:10px 14px}input[type=text]{font-size:.9em;padding:10px}}@media screen and (max-width:480px){body{font-size:13px}button{font-size:.9em;padding:8px 12px}input[type=text]{font-size:.85em;padding:8px}}@media screen and (max-width:768px){input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{font-size:16px!important}}@supports (padding:max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}*{-webkit-tap-highlight-color:transparent}*,:after,:before{box-sizing:border-box}body{-webkit-overflow-scrolling:touch}body,html{overflow-x:hidden;width:100%}a.button,button,input[type=button],input[type=reset],input[type=submit]{min-height:44px;min-width:44px}input,select,textarea{appearance:none;border-radius:8px}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{font-size:16px}iframe,img,video{display:block;height:auto;max-width:100%}table{display:block;overflow-x:auto}@media screen and (max-width:768px){table{font-size:14px}td,th{padding:8px 4px}}@supports (padding:max(0px)){body{padding:max(0px,env(safe-area-inset-top)) max(0px,env(safe-area-inset-right)) max(0px,env(safe-area-inset-bottom)) max(0px,env(safe-area-inset-left))}}@media screen and (max-width:768px) and (orientation:landscape){body{font-size:14px}.header{padding:8px 15px}}@media screen and (min-width:768px) and (max-width:1024px){body{font-size:15px}}@media screen and (max-width:767px){a,button,input,select,textarea{min-height:44px}h1{font-size:24px}h2{font-size:20px}h3{font-size:18px}h4{font-size:16px}h5{font-size:14px}h6{font-size:12px}article,div.container,section{padding:10px}}@media screen and (max-width:480px){body{font-size:14px}h1{font-size:20px}h2{font-size:18px}h3{font-size:16px}h4{font-size:14px}article,div.container,section{padding:8px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){img{image-rendering:-webkit-optimize-contrast}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{body{background:#fff;color:#000}.header,.no-print,.topnav,button,footer{display:none!important}a{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}}@media screen and (-webkit-min-device-pixel-ratio:0){select{background-image:url("data:image/svg+xml;utf8,<svg fill=%27black%27 height=%2724%27 viewBox=%270 0 24 24%27 width=%2724%27 xmlns=%27http://www.w3.org/2000/svg%27><path d=%27M7 10l5 5 5-5z%27/><path d=%27M0 0h24v24H0z%27 fill=%27none%27/></svg>");background-position:right 8px center;background-repeat:no-repeat;padding-right:30px}}@supports (-webkit-touch-callout:none){input[type=email],input[type=number],input[type=tel],input[type=text],textarea{font-size:16px}body{min-height:-webkit-fill-available}}.hide-mobile{display:block}.show-mobile{display:none}@media screen and (max-width:768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}.flex-mobile-column{display:flex}@media screen and (max-width:768px){.flex-mobile-column{flex-direction:column}}.grid-responsive{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media screen and (max-width:768px){.grid-responsive{gap:15px;grid-template-columns:1fr}}@media screen and (max-width:480px){.grid-responsive{gap:10px}}.section{min-height:auto!important}@media (hover:none) and (pointer:coarse){body{-webkit-overflow-scrolling:touch}}body,html{height:100%}#root{min-height:100%}section[class*=section]{min-height:auto}*{margin:0;padding:0}:root{--font-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell",sans-serif;--font-mono:"JetBrains Mono","Fira Code","Courier New",monospace;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--transition-fast:150ms;--transition-base:300ms;--transition-slow:500ms;--ease-smooth:cubic-bezier(0.4,0,0.2,1);--ease-spring:cubic-bezier(0.68,-0.55,0.27,1.55)}html{font-size:16px;font-size:var(--base-font-size,16px);scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-background);color:var(--color-textPrimary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-primary);line-height:1.6;transition:background-color .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1);transition:background-color var(--transition-base) var(--ease-smooth),color var(--transition-base) var(--ease-smooth)}.modern-card{background:var(--color-cardBackground);border:1px solid var(--color-border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:var(--color-cardShadow);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base) var(--ease-smooth)}.modern-card:hover{box-shadow:var(--color-cardHoverShadow);transform:translateY(-4px)}.modern-card-glass{-webkit-backdrop-filter:var(--color-backdropBlur);backdrop-filter:var(--color-backdropBlur);background:var(--color-cardBackground);border:1px solid #ffffff1a;box-shadow:0 8px 32px 0 #1f268726}.btn-modern{align-items:center;border:none;border-radius:10px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;gap:var(--spacing-sm);justify-content:center;overflow:hidden;padding:12px 24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base) var(--ease-smooth)}.btn-modern:before{background:linear-gradient(45deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);transition:transform .5s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-slow) var(--ease-smooth);width:100%}.btn-modern:hover:before{transform:translateX(100%)}.btn-primary{background:var(--color-primary);color:var(--color-textInverse)}.btn-primary:hover{background:var(--color-primaryLight);box-shadow:0 8px 16px #0003}.btn-gradient{background:var(--color-primaryGradient);color:var(--color-textInverse)}.btn-gradient:hover{opacity:.9;transform:translateY(-2px)}.btn-outline{background:#0000;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:var(--color-textInverse)}.input-modern{background:var(--color-backgroundSecondary);border:2px solid var(--color-border);border-radius:10px;border-radius:var(--radius-md);color:var(--color-textPrimary);font-size:15px;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base) var(--ease-smooth);width:100%}.input-modern:focus{background:var(--color-background);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus);outline:none}.input-modern::placeholder{color:var(--color-textMuted)}.nav-modern{-webkit-backdrop-filter:var(--color-backdropBlur);backdrop-filter:var(--color-backdropBlur);background:var(--color-cardBackground);border-bottom:1px solid var(--color-border);padding:16px 24px;padding:var(--spacing-md) var(--spacing-lg);position:sticky;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base) var(--ease-smooth);z-index:100}.nav-modern.scrolled{box-shadow:0 4px 16px #0000001a}.badge-modern{align-items:center;border-radius:9999px;border-radius:var(--radius-full);display:inline-flex;font-size:12px;font-weight:600;gap:4px;gap:var(--spacing-xs);letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.badge-success{background:var(--color-success);color:#fff}.badge-warning{background:var(--color-warning);color:#fff}.badge-error{background:var(--color-error);color:#fff}.badge-info{background:var(--color-info);color:#fff}.skeleton{animation:skeleton-loading 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--color-backgroundSecondary) 0,var(--color-backgroundTertiary) 50%,var(--color-backgroundSecondary) 100%);background-size:200% 100%;border-radius:10px;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner-modern{animation:spin .8s linear infinite;border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:40px;width:40px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeInUp{animation:fadeInUp .5s cubic-bezier(.4,0,.2,1);animation:fadeInUp .5s var(--ease-smooth)}.animate-fadeInScale{animation:fadeInScale .5s cubic-bezier(.4,0,.2,1);animation:fadeInScale .5s var(--ease-smooth)}.animate-slideInRight{animation:slideInRight .5s cubic-bezier(.4,0,.2,1);animation:slideInRight .5s var(--ease-smooth)}.animate-stagger>*{animation:fadeInUp .5s cubic-bezier(.4,0,.2,1) forwards;animation:fadeInUp .5s var(--ease-smooth) forwards;opacity:0}.animate-stagger>:first-child{animation-delay:.1s}.animate-stagger>:nth-child(2){animation-delay:.2s}.animate-stagger>:nth-child(3){animation-delay:.3s}.animate-stagger>:nth-child(4){animation-delay:.4s}.animate-stagger>:nth-child(5){animation-delay:.5s}.text-gradient{-webkit-text-fill-color:#0000;background:var(--color-primaryGradient);-webkit-background-clip:text;background-clip:text}.hover-lift{transition:transform .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-base) var(--ease-smooth)}.hover-lift:hover{transform:translateY(-4px)}.glow{box-shadow:0 0 20px var(--color-primary)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--color-backgroundSecondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:9999px;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:768px){:root{--spacing-lg:16px;--spacing-xl:24px;--spacing-2xl:32px}.btn-modern{font-size:14px;padding:10px 20px}.modern-card:hover{transform:translateY(-2px)}}.theme-cosmic{animation:twinkling 200s linear infinite;background-image:radial-gradient(2px 2px at 20% 30%,#fff,#0000),radial-gradient(2px 2px at 60% 70%,#fff,#0000),radial-gradient(1px 1px at 50% 50%,#fff,#0000),radial-gradient(1px 1px at 80% 10%,#fff,#0000),radial-gradient(2px 2px at 90% 60%,#fff,#0000);background-size:200% 200%}@keyframes twinkling{0%{background-position:0 0}to{background-position:100% 100%}}.theme-nature{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z' fill='%2310b981' fill-opacity='.05' fill-rule='evenodd'/%3E%3C/svg%3E")}body{background:var(--color-primaryGradient)!important}#mainpage{background:var(--color-background)!important}.header{background:var(--color-primaryGradient)!important}.header,.header a,.header button,.header div,.header h1,.header h2,.header h3,.header span{color:var(--color-textInverse)!important}.profile-dropdown,.profile-dropdown a,.profile-dropdown button,.profile-dropdown div,.profile-dropdown h1,.profile-dropdown h2,.profile-dropdown h3,.profile-dropdown span,.profile-info,.profile-menu-item{color:var(--color-textPrimary)!important}.logo-text{-webkit-text-fill-color:#0000!important;background:var(--color-primaryGradient)!important;-webkit-background-clip:text!important;background-clip:text!important}#mainpage div,#mainpage h1,#mainpage h2,#mainpage h3,#mainpage h4,#mainpage h5,#mainpage h6,#mainpage p,#mainpage span{color:var(--color-textPrimary)}.card,.feature-card,.role-card,.section-card{background:var(--color-cardBackground)!important;border-color:var(--color-border)!important}.card:hover,.feature-card:hover,.role-card:hover,.section-card:hover{box-shadow:var(--color-cardHoverShadow)!important}.cta-button,.role-card button,.section-btn,button.primary-btn{background:var(--color-primary)!important;border-color:var(--color-primary)!important}.cta-button:hover,.role-card button:hover,.section-btn:hover,button.primary-btn:hover{background:var(--color-primaryLight)!important}input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{background:var(--color-cardBackground)!important;border-color:var(--color-border)!important;color:var(--color-textPrimary)!important}input:focus,select:focus,textarea:focus{border-color:var(--color-primary)!important}table{background:var(--color-cardBackground)!important}th,thead{background:var(--color-backgroundSecondary)!important}tbody tr:hover{background:var(--color-hover)!important}.dialog,.modal-content,.popup{background:var(--color-cardBackground)!important;color:var(--color-textPrimary)!important}.modal-overlay{background:var(--color-overlay)!important}.nav-menu,.sidebar{background:var(--color-backgroundSecondary)!important}.content-area,.section-content{background:#0000}.option-card,.question-card,.result-card{background:var(--color-cardBackground)!important;border-color:var(--color-border)!important}.progress-bar{background:var(--color-primary)!important}.correct,.success{background:var(--color-success)!important}.error,.incorrect{background:var(--color-error)!important}a:not(.header a){color:var(--color-primary)}a:not(.header a):hover{color:var(--color-primaryLight)}.description,.hint,.subtitle{color:var(--color-textSecondary)}.badge,.tag{background:var(--color-primary)!important;color:var(--color-textInverse)!important}.gp-overlay{align-items:center;animation:gp-fade .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:10000}.gp-modal{animation:gp-pop .35s cubic-bezier(.2,1.2,.4,1);background:var(--gp-surface);border-radius:24px;border-top:6px solid var(--gp-primary);box-shadow:0 25px 60px #00000059;color:var(--gp-text);max-height:92vh;max-width:460px;overflow-y:auto;padding:28px 24px 22px;position:relative;text-align:center;width:100%}.gp-close{background:#0000;border:none;color:var(--gp-muted);cursor:pointer;font-size:28px;line-height:1;position:absolute;right:14px;top:10px}.gp-btn:focus-visible,.gp-close:focus-visible{outline:3px solid var(--gp-accent);outline-offset:2px}.gp-chest{font-size:52px;height:84px;margin-bottom:6px;position:relative}.gp-chest__lid{animation:gp-shake .8s ease-in-out;top:0;transition:transform .5s ease}.gp-chest__box,.gp-chest__lid{left:50%;position:absolute;transform:translateX(-50%)}.gp-chest__box{bottom:0}.gp-chest--open .gp-chest__lid{animation:gp-sparkle 1.6s ease-in-out infinite;transform:translate(-50%,-14px) scale(1.25) rotate(-8deg)}.gp-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,var(--gp-primary),var(--gp-secondary));-webkit-background-clip:text;background-clip:text;font-size:1.45rem;font-weight:800;margin:4px 0 6px}.gp-target{color:var(--gp-primary);font-size:1.05rem;margin:0 0 6px}.gp-desc{color:var(--gp-muted);font-size:.92rem;margin:0 0 14px}.gp-peek{border:1px dashed var(--gp-primary);border-radius:14px;margin:0 auto 14px;overflow:hidden;position:relative}.gp-peek__card{filter:blur(4px);padding:12px;text-align:left;-webkit-user-select:none;user-select:none}.gp-peek__q{font-weight:700;margin-bottom:6px}.gp-peek__opts{display:flex;flex-wrap:wrap;gap:8px}.gp-peek__opts span{background:#667eea26;border-radius:10px;padding:4px 10px}.gp-peek__frost{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffff8c;color:var(--gp-text);display:flex;font-size:.85rem;font-weight:700;inset:0;justify-content:center;padding:8px;position:absolute}.gp-perks{grid-gap:8px;display:grid;font-size:.85rem;gap:8px;grid-template-columns:1fr 1fr;list-style:none;margin:0 0 12px;padding:0;text-align:left}.gp-perks li{background:#667eea14;border-radius:12px;padding:8px 10px}.gp-tagline{color:var(--gp-muted);font-size:.9rem;font-style:italic;margin:0 0 14px;min-height:1.4em}.gp-actions{align-items:center;display:flex;flex-direction:column;gap:10px}.gp-btn{cursor:pointer;font-weight:700;text-decoration:none}.gp-btn--primary{background:linear-gradient(135deg,var(--gp-primary),var(--gp-secondary));border-radius:999px;box-shadow:0 8px 20px #667eea73;box-sizing:border-box;color:#fff;font-size:1.1rem;padding:14px 20px;transition:transform .15s ease;width:100%}.gp-btn--primary:hover{transform:translateY(-2px) scale(1.02)}.gp-btn--link{color:var(--gp-primary);font-size:.9rem}.guest-gate{display:inline-block;position:relative}.guest-gate--block{display:block;width:100%}.guest-gate__badge{animation:gp-sparkle 2.2s ease-in-out infinite;background:#fff;border-radius:999px;box-shadow:0 2px 6px #00000040;font-size:.75rem;padding:1px 6px;pointer-events:none;position:absolute;right:-6px;top:-8px}.guest-banner{align-items:center;background:linear-gradient(90deg,#667eea,#8b5cf6,#f093fb);color:#fff;display:flex;font-size:.9rem;gap:10px;justify-content:center;padding:8px 14px}.guest-banner a{color:#fff;font-weight:800;text-decoration:underline}.guest-banner__close{background:#0000;border:none;color:#fff;cursor:pointer;font-size:20px;line-height:1}@keyframes gp-fade{0%{opacity:0}to{opacity:1}}@keyframes gp-pop{0%{opacity:0;transform:translateY(20px) scale(.92)}to{opacity:1;transform:none}}@keyframes gp-shake{0%,to{transform:translateX(-50%) rotate(0)}25%{transform:translateX(-50%) rotate(-10deg)}75%{transform:translateX(-50%) rotate(10deg)}}@keyframes gp-sparkle{0%,to{opacity:1}50%{opacity:.6}}@media (max-width:480px){.gp-modal{border-radius:18px;padding:22px 16px 16px}.gp-perks{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.gp-btn--primary,.gp-chest__lid,.gp-modal,.gp-overlay,.guest-gate__badge{animation:none!important;transition:none!important}}.user-role-management{width:100%}.user-management-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px}.management-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:24px}.management-title{align-items:center;color:#1a202c;display:flex;font-size:24px;font-weight:700;gap:12px;margin:0 0 8px}.title-icon{font-size:28px}.management-subtitle{color:#718096;font-size:14px;margin:0}.management-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.search-box{flex:1 1;min-width:300px;position:relative}.search-icon{color:#a0aec0;font-size:18px;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.search-box input{border:2px solid #e2e8f0;border-radius:10px;font-size:14px;padding:12px 16px 12px 48px;transition:border-color .2s ease;width:100%}.search-box input:focus{border-color:#e2e8f0;outline:none}.role-filter{align-items:center;display:flex;gap:12px}.role-filter label{color:#2d3748;font-size:14px;font-weight:600}.role-filter select{background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;font-size:14px;padding:12px 16px;transition:border-color .2s ease}.role-filter select:focus{border-color:#667eea;outline:none}.user-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:24px}.stat-item{align-items:center;background:#f7fafc;border-radius:10px;display:flex;flex-direction:column;padding:16px;text-align:center}.stat-label{margin-top:4px}.users-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f7fafc}.users-table th{border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.users-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s ease}.users-table tbody tr:hover{background:#f7fafc}.users-table tbody tr:last-child{border-bottom:none}.users-table td{padding:16px;vertical-align:middle}.user-info{gap:12px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;flex-shrink:0;font-size:16px;font-weight:600;height:48px;justify-content:center;width:48px}.user-avatar.large{font-size:24px;height:64px;width:64px}.user-details{display:flex;flex-direction:column;gap:2px}.user-name{color:#2d3748;font-size:14px}.user-email{color:#718096}.user-username{color:#a0aec0;font-size:12px}.role-badge{align-items:center;background:#ebf4ff;color:#2b6cb0;display:inline-flex;gap:6px;padding:6px 12px;white-space:nowrap}.role-badge.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:13px;padding:8px 14px}.role-badge.small{font-size:11px;padding:4px 8px}.role-icon{font-size:14px}.roles-list{display:flex;flex-wrap:wrap;gap:6px}.apps-list{display:flex;gap:8px}.app-badge{cursor:help;font-size:20px}.action-buttons{display:flex;gap:8px}.action-btn{background:#f7fafc;font-size:16px;height:36px;width:36px}.action-btn:hover{box-shadow:0 4px 8px #0000001a;transform:scale(1.1)}.action-btn.edit:hover{background:#ebf4ff}.action-btn.apps:hover{background:#fef5e7}.action-btn.link:hover{background:#e8f5e9}.no-results{color:#718096;padding:40px 20px}.modal-backdrop{animation:fadeIn .2s ease-out;background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;left:50%;max-height:80vh;max-width:600px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}.modal-header{border-bottom:2px solid #e2e8f0;padding:24px}.modal-header h3{color:#1a202c;font-size:20px;font-weight:700;margin:0}.close-btn{background:#f7fafc;border-radius:8px;transition:all .2s ease}.close-btn:hover{background:#edf2f7}.modal-body{flex:1 1;overflow-y:auto;padding:24px}.user-info-section{align-items:center;background:#f7fafc;border-radius:12px;display:flex;gap:16px;margin-bottom:24px;padding:16px}.user-info-section h4{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 4px}.user-info-section p{color:#718096;font-size:14px;margin:0}.apps-selection,.roles-selection{margin-top:24px}.apps-selection h4,.roles-selection h4{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 16px}.apps-grid,.roles-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.app-checkbox,.role-checkbox,.role-radio{align-items:center;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:12px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.app-checkbox:hover,.role-checkbox:hover,.role-radio:hover{background:#f7fafc;border-color:#667eea}.app-checkbox.checked,.role-checkbox.checked,.role-radio.selected{background:#ebf4ff;border-color:#667eea}.app-checkbox input:checked+.app-label,.app-checkbox.checked .app-label,.role-checkbox input:checked+.role-label,.role-checkbox.checked .role-label,.role-radio input:checked+.role-label,.role-radio.selected .role-label{color:#667eea;font-weight:600}.app-checkbox input[type=checkbox],.role-checkbox input[type=checkbox],.role-radio input[type=radio]{cursor:pointer;flex-shrink:0;height:18px;width:18px}.app-label,.role-label{align-items:center;color:#2d3748;display:flex;flex:1 1;font-size:14px;gap:8px}.app-icon{font-size:20px}.app-name{font-size:14px}.help-text{color:#718096;font-size:13px;font-style:italic;margin-top:12px}.modal-footer{border-top:2px solid #e2e8f0;padding:20px 24px}.btn-cancel,.btn-save{font-size:14px;transition:all .2s ease}.btn-cancel{background:#f7fafc;color:#2d3748}.btn-cancel:hover{background:#edf2f7}.btn-save{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-save:hover{box-shadow:0 4px 12px #667eea66}.btn-save:disabled{cursor:not-allowed;opacity:.5}.students-selection{margin-top:24px}.students-selection h4{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 16px}.students-grid{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding:8px}.student-checkbox{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.student-checkbox:hover{background:#f7fafc;border-color:#667eea}.student-checkbox.checked{background:#ebf4ff;border-color:#667eea}.student-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;height:18px;width:18px}.student-info{align-items:center;display:flex;flex:1 1;gap:12px}.student-avatar-small{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.student-details{display:flex;flex-direction:column;gap:2px}.student-name{color:#2d3748;font-size:14px;font-weight:600}.student-email{color:#718096;font-size:12px}.student-grade{color:#a0aec0;font-size:11px}.no-students{color:#718096;font-style:italic;padding:40px 20px;text-align:center}@media (max-width:768px){.management-filters{flex-direction:column}.search-box{min-width:100%}.users-table-container{overflow-x:auto}.users-table{min-width:800px}.modal{max-height:90vh;width:95%}.apps-grid,.roles-grid{grid-template-columns:1fr}}.user-approvals{width:100%}.section-subtitle{color:#718096;font-size:14px;margin:8px 0 24px}.approval-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:12px;margin-bottom:24px}.approval-tab{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:#718096;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;position:relative;transition:all .2s ease}.approval-tab:hover{background:#f7fafc;color:#667eea}.approval-tab.active{background:#ebf4ff;border-bottom-color:#667eea;color:#667eea;font-weight:600}.tab-badge{background:#e53e3e;border-radius:12px;color:#fff;font-size:11px;font-weight:700;min-width:20px;padding:2px 8px;text-align:center}.approval-content{animation:fadeIn .3s ease-in}.loading-state{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center}.loading-spinner{animation:spin 1s linear infinite}.empty-state{background:#f7fafc;border:2px dashed #cbd5e0;border-radius:12px}.empty-icon{display:block;font-size:64px}.empty-state h4{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 8px}.empty-state p{font-size:14px}.user-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.approval-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s ease}.approval-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.approval-card-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;gap:16px;padding:20px}.user-avatar-large{align-items:center;background:#fff3;border:3px solid #fff6;border-radius:50%;display:flex;flex-shrink:0;font-size:20px;font-weight:700;height:56px;justify-content:center;width:56px}.user-primary-info h4{font-size:18px;font-weight:600;margin:0 0 4px}.user-email{font-size:13px;margin:0;opacity:.9}.approval-card-body{display:flex;flex-direction:column;gap:12px;padding:20px}.info-row{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding-bottom:12px}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-label{color:#718096;font-size:13px;font-weight:500}.info-value{color:#2d3748;font-size:14px;font-weight:600}.approval-card-actions{background:#f7fafc;border-top:2px solid #e2e8f0;display:flex;gap:12px;padding:16px 20px}.btn-approve,.btn-reject{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s ease}.btn-approve{background:linear-gradient(135deg,#48bb78,#38a169)}.btn-approve:hover{box-shadow:0 4px 12px #48bb7866;transform:translateY(-2px)}.btn-reject{background:#fff;border:2px solid #e53e3e;color:#e53e3e}.btn-reject:hover{background:#e53e3e;box-shadow:0 4px 12px #e53e3e66;color:#fff;transform:translateY(-2px)}.btn-icon{font-weight:700}.approvals-table-container{background:#fff;border:2px solid #e2e8f0;border-radius:12px;overflow:hidden}.approvals-table{border-collapse:collapse;width:100%}.approvals-table thead{background:#f7fafc}.approvals-table th{border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.approvals-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s ease}.approvals-table tbody tr:hover{background:#f7fafc}.approvals-table tbody tr:last-child{border-bottom:none}.approvals-table td{color:#2d3748;font-size:14px;padding:16px}.table-user-info{align-items:center;display:flex;gap:12px}.table-user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:36px;justify-content:center;width:36px}.role-badge{border-radius:6px;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;text-transform:uppercase}.role-badge.district_admin,.role-badge.school_admin,.role-badge.super_admin{background:#faf089;color:#744210}.role-badge.teacher{background:#bee3f8;color:#2c5282}.role-badge.student{background:#c6f6d5;color:#22543d}.role-badge.parent{background:#fed7e2;color:#702459}.status-badge{border-radius:6px}.status-badge.active,.status-badge.approved{background:#c6f6d5;color:#22543d}.status-badge.pending{background:#feebc8;color:#744210}.status-badge.inactive,.status-badge.rejected{background:#fed7d7;color:#742a2a}@media (max-width:768px){.user-cards-grid{grid-template-columns:1fr}.approvals-table-container{overflow-x:auto}.approvals-table{min-width:800px}.approval-tabs{border-bottom:none;flex-direction:column}.approval-tab{border-bottom:1px solid #e2e8f0;justify-content:flex-start}.approval-tab.active{border-bottom:1px solid #e2e8f0;border-left:4px solid #667eea}}.content-management{width:100%}.content-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.content-sub-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:12px;margin-bottom:24px}.content-sub-tab{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:#718096;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s ease}.content-sub-tab:hover{background:#f7fafc;color:#667eea}.content-sub-tab.active{background:#ebf4ff;border-bottom-color:#667eea;color:#667eea;font-weight:600}.content-message{align-items:center;animation:slideDown .3s ease-out;border-radius:10px;display:flex;font-size:14px;font-weight:500;gap:12px;margin-bottom:24px;padding:16px 20px}.content-message.success{background:#c6f6d5;border:2px solid #48bb78;color:#22543d}.content-message.error{background:#fed7d7;border:2px solid #e53e3e;color:#742a2a}.message-icon{font-size:20px;font-weight:700}.content-tab-body{animation:fadeIn .3s ease-in}.content-form-container{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:24px}.form-header{margin-bottom:24px}.form-header h4{color:#1a202c;font-size:20px;font-weight:600;margin:0 0 8px}.form-description{color:#718096;font-size:14px;margin:0}.form-grid{margin-bottom:24px}.form-group input,.form-group select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px 16px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input[type=number]{appearance:textfield}.form-group input[type=number]::-webkit-inner-spin-button,.form-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.submit-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;max-width:300px;padding:14px 32px;transition:all .2s ease;width:100%}.submit-button:hover:not(:disabled){box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.button-icon{font-size:18px}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.content-sub-tabs{border-bottom:none;flex-direction:column}.content-sub-tab{border-bottom:1px solid #e2e8f0;justify-content:flex-start}.content-sub-tab.active{border-bottom:1px solid #e2e8f0;border-left:4px solid #667eea}.submit-button{max-width:100%}}.cm-container{max-width:1400px;padding:16px}.cm-main-title{font-size:1.3rem;font-weight:700;margin:0 0 16px}.cm-flash{border-radius:8px;font-size:.88rem;font-weight:500;margin-bottom:12px;padding:10px 14px}.cm-flash-success{background:#dcfce7;color:#166534}.cm-flash-error{background:#fee2e2;color:#b91c1c}.cm-selectors{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.cm-warning-banner{background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;color:#92400e;flex-basis:100%;font-size:.82rem;padding:8px 12px}.cm-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;min-width:160px;padding:8px 12px}.cm-layout{align-items:flex-start;display:flex;gap:12px;overflow-x:auto}.cm-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-shrink:0}.cm-topics-panel{width:260px}.cm-subtopics-panel{width:280px}.cm-detail-panel{flex:1 1;min-width:320px}.cm-panel-header{align-items:center;font-size:.9rem;font-weight:600;justify-content:space-between}.cm-form,.cm-panel-header{border-bottom:1px solid #e5e7eb;display:flex;padding:12px 14px}.cm-form{flex-direction:column;gap:8px}.cm-input,.cm-textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:.85rem;padding:7px 10px;width:100%}.cm-textarea{resize:vertical}.cm-form-actions{display:flex;gap:8px}.cm-divider{border:none;border-top:1px solid #e5e7eb;margin:4px 0}.cm-ai-row{display:flex;gap:6px}.cm-btn{background:#f9fafb;border:1px solid #d1d5db;border-radius:7px;color:#374151;cursor:pointer;font-size:.82rem;padding:6px 12px;transition:background .15s;white-space:nowrap}.cm-btn:hover{background:#e5e7eb}.cm-btn:disabled{cursor:not-allowed;opacity:.5}.cm-btn-primary{background:#6366f1;border-color:#6366f1;color:#fff}.cm-btn-primary:hover{background:#4f46e5}.cm-btn-danger{background:#fee2e2;border-color:#fca5a5;color:#b91c1c}.cm-btn-danger:hover{background:#fecaca}.cm-btn-ai{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#d97706;color:#fff}.cm-btn-ai:hover{background:linear-gradient(135deg,#d97706,#b45309)}.cm-btn-sm{font-size:.78rem;padding:4px 8px}.cm-subtopic-row,.cm-topic-row{align-items:center;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;gap:8px;padding:10px 14px;transition:background .12s}.cm-subtopic-row:hover,.cm-topic-row:hover{background:#f9fafb}.cm-selected{background:#ede9fe!important}.cm-inactive{opacity:.5}.cm-topic-info{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow:hidden}.cm-topic-title{font-size:.85rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-topic-meta{color:#9ca3af;font-size:.72rem}.cm-row-actions{display:flex;flex-shrink:0;gap:4px}.cm-subtopic-list{padding:4px 0}.cm-subtopic-name{flex:1 1;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-indent-icon{color:#6b7280;flex-shrink:0;font-size:.8rem}.cm-ai-tag{background:#fef3c7;border-radius:10px;color:#92400e;flex-shrink:0;font-size:.7rem;font-weight:600;padding:1px 6px}.cm-detail-section{border-bottom:1px solid #f3f4f6;padding:12px 14px}.cm-detail-section:last-child{border-bottom:none}.cm-section-title{align-items:center;display:flex;font-size:.85rem;font-weight:600;justify-content:space-between;margin-bottom:8px}.cm-section-actions{display:flex;gap:6px}.cm-explanation-text{color:#374151;font-size:.85rem;line-height:1.6;max-height:200px;overflow-y:auto;white-space:pre-wrap}.cm-muted{color:#9ca3af;font-style:italic}.cm-ai-badge{background:#fef3c7;border-radius:12px;color:#92400e;font-size:.72rem;font-weight:600;padding:2px 8px}.cm-attach-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.cm-checkbox-label{align-items:center;display:flex;font-size:.82rem;gap:4px;white-space:nowrap}.cm-question-list{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}.cm-question-row{align-items:center;background:#f9fafb;border-radius:7px;display:flex;gap:8px;padding:6px 10px}.cm-question-id{color:#374151;flex:1 1;font-family:monospace;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-quiz-tag{background:#dbeafe;border-radius:10px;color:#1e40af;font-size:.7rem;font-weight:600;padding:1px 6px}.cm-loading{font-size:.85rem}.cm-empty,.cm-loading{color:#9ca3af;padding:12px 14px}.cm-empty{font-size:.82rem;text-align:center}.cm-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:4px;margin-bottom:16px;padding-bottom:0}.cm-tab{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:.88rem;font-weight:600;margin-bottom:-2px;padding:8px 16px;transition:color .15s,border-color .15s}.cm-tab:hover{color:#4f46e5}.cm-tab.cm-tab-active{border-bottom-color:#4f46e5;color:#4f46e5}.cm-import-wrap{max-width:900px}.cm-import-steps{border:1px solid #e5e7eb;border-radius:10px;display:flex;gap:0;margin-bottom:20px;overflow:hidden}.cm-step{background:#f9fafb;border-right:1px solid #e5e7eb;color:#9ca3af;flex:1 1;font-size:.82rem;font-weight:600;padding:10px 14px;text-align:center}.cm-step:last-child{border-right:none}.cm-step.cm-step-active{background:#ede9fe;color:#4f46e5}.cm-step.cm-step-done{background:#dcfce7;color:#166534}.cm-import-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:18px}.cm-import-card-title{color:#1f2937;font-size:.95rem;font-weight:700;margin:0 0 12px}.cm-type-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.cm-type-btn{background:#f9fafb;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.83rem;font-weight:600;padding:7px 14px;transition:all .15s}.cm-type-btn.cm-type-active,.cm-type-btn:hover{border-color:#6366f1;color:#4f46e5}.cm-type-btn.cm-type-active{background:#ede9fe}.cm-upload-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.cm-file-label{background:#f1f5f9;border:1.5px dashed #94a3b8;border-radius:8px;color:#475569;cursor:pointer;font-size:.83rem;padding:7px 14px;transition:background .15s}.cm-file-label:hover{background:#e2e8f0}.cm-json-editor{background:#fafaf9;border:1.5px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#1c1917;font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:.8rem;line-height:1.5;padding:10px 12px;resize:vertical;transition:border-color .15s;width:100%}.cm-json-editor:focus{border-color:#6366f1;outline:none}.cm-json-error{background:#fee2e2;border-radius:6px;color:#b91c1c;font-size:.8rem;margin-top:6px;padding:6px 10px}.cm-preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.cm-preview-count{color:#6b7280;font-size:.82rem}.cm-preview-actions,.cm-title-list{display:flex;gap:6px}.cm-title-list{flex-direction:column;max-height:380px;overflow-y:auto}.cm-title-row{align-items:flex-start;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:border-color .15s,background .15s}.cm-title-row:hover{background:#fafafa;border-color:#a5b4fc}.cm-title-row.cm-title-selected{background:#ede9fe;border-color:#6366f1}.cm-title-check{align-items:center;background:#fff;border:2px solid #d1d5db;border-radius:5px;color:#fff;display:flex;flex-shrink:0;font-size:11px;height:18px;justify-content:center;margin-top:2px;width:18px}.cm-title-row.cm-title-selected .cm-title-check{background:#6366f1;border-color:#6366f1}.cm-title-meta{flex:1 1}.cm-title-name{color:#1f2937;font-size:.88rem;font-weight:700;margin-bottom:3px}.cm-title-badges{display:flex;flex-wrap:wrap;gap:6px}.cm-badge{border-radius:10px;display:inline-block;font-size:.7rem;font-weight:600;padding:2px 8px}.cm-badge-grade{background:#dbeafe;color:#1e40af}.cm-badge-subject{background:#f0fdf4;color:#166534}.cm-badge-count{background:#f1f5f9;color:#475569}.cm-content-viewer{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-top:12px;padding:16px}.cm-content-viewer-title{font-size:.95rem;font-weight:700;margin:0 0 12px}.cm-subtopic-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:14px;padding:12px}.cm-subtopic-preview-title{color:#1f2937;font-size:.85rem;font-weight:700;margin-bottom:6px}.cm-subtopic-explanation{color:#4b5563;font-size:.8rem;line-height:1.5;margin-bottom:8px;max-height:100px;overflow-y:auto;white-space:pre-wrap}.cm-content-blocks{display:flex;flex-direction:column;gap:6px}.cm-block{border-left:3px solid #d1d5db;border-radius:7px;font-size:.8rem;padding:8px 10px}.cm-block-MCQ{background:#f5f3ff;border-left-color:#6366f1}.cm-block-MATCHING{background:#ecfdf5;border-left-color:#10b981}.cm-block-QA{background:#fffbeb;border-left-color:#f59e0b}.cm-block-type{color:#6b7280;font-size:.72rem;font-weight:700;margin-bottom:3px;text-transform:uppercase}.cm-block-question{color:#1f2937;font-weight:600;margin-bottom:4px}.cm-block-options{display:flex;flex-direction:column;gap:2px}.cm-block-option{color:#374151;padding-left:4px}.cm-block-answer{color:#059669;font-weight:600;margin-top:4px}.cm-block-pairs{display:flex;flex-direction:column;gap:2px}.cm-block-pair{align-items:center;color:#374151;display:flex;gap:8px}.cm-block-pair-arrow{color:#10b981;font-weight:700}.cm-result-box{border-radius:10px;font-size:.87rem;font-weight:500;margin-top:12px;padding:14px 16px}.cm-result-success{background:#dcfce7;border:1px solid #86efac;color:#166534}.cm-result-partial{background:#fef9c3;border:1px solid #fde047;color:#854d0e}.cm-result-error{background:#fee2e2;border:1px solid #fca5a5;color:#b91c1c}.cm-result-errors{font-size:.78rem;margin-top:8px;padding-left:12px}.cm-result-errors li{margin-bottom:3px}.cm-inline-edit{align-items:center;display:inline-flex;flex:1 1;gap:4px}.cm-inline-edit .cm-input{padding:3px 6px}.cm-inline-order{width:64px}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_AMS-Regular.73ea273a72f4aca30ca5.woff2) format("woff2"),url(/static/media/KaTeX_AMS-Regular.d562e886c52f12660a41.woff) format("woff"),url(/static/media/KaTeX_AMS-Regular.853be92419a6c3766b9a.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Caligraphic-Bold.a1abf90dfd72792a577a.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Bold.d757c535a2e5902f1325.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Bold.7489a2fbfb9bfe704420.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Caligraphic-Regular.d6484fce1ef428d5bd94.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Regular.db074fa22cf224af93d7.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Regular.7e873d3833eb108a0758.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Fraktur-Bold.931d67ea207ab37ee693.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Bold.354501bac435c3264834.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Bold.4c761b3711973ab04edf.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Fraktur-Regular.172d3529b26f8cedef6b.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Regular.6fdf0ac577be0ba82a4c.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Regular.ed305b5434865e06ffde.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Main-Bold.39890742bc957b368704.woff2) format("woff2"),url(/static/media/KaTeX_Main-Bold.0c3b8929d377c0e9b2f3.woff) format("woff"),url(/static/media/KaTeX_Main-Bold.8169508bf58f8bd92ad8.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Main-BoldItalic.20f389c4120be058d80a.woff2) format("woff2"),url(/static/media/KaTeX_Main-BoldItalic.428978dc7837d46de091.woff) format("woff"),url(/static/media/KaTeX_Main-BoldItalic.828abcb200061cffbaae.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Main-Italic.fe2176f79edaa716e621.woff2) format("woff2"),url(/static/media/KaTeX_Main-Italic.fd947498bc16392e76c2.woff) format("woff"),url(/static/media/KaTeX_Main-Italic.fa675e5e4bec9eb250b6.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Main-Regular.f650f111a3b890d116f1.woff2) format("woff2"),url(/static/media/KaTeX_Main-Regular.4f35fbcc9ee8614c2bcc.woff) format("woff"),url(/static/media/KaTeX_Main-Regular.9eba1d77abcf2aa6e94e.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Math-BoldItalic.dcbcbd93bac0470b462d.woff2) format("woff2"),url(/static/media/KaTeX_Math-BoldItalic.3f07ed67f06c720120ce.woff) format("woff"),url(/static/media/KaTeX_Math-BoldItalic.bf2d440b3a42ea78a998.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Math-Italic.6d3d25f4820d0da8f01f.woff2) format("woff2"),url(/static/media/KaTeX_Math-Italic.96759856b4e70f3a8338.woff) format("woff"),url(/static/media/KaTeX_Math-Italic.8a5f936332e8028c7278.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/static/media/KaTeX_SansSerif-Bold.95591a929f0d32aa282a.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Bold.b9cd458ac6d5889ff9c3.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Bold.5b49f4993ae22d7975b4.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Italic.7d393d382f3e7fb1c637.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Italic.8d593cfaa96238d5e2f8.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Italic.b257a18c016f37ee4543.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Regular.cd5e231e0cc53b2cb2c0.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Regular.02271ec5cb9f5b4588ac.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Regular.2f7bc363fc5424ebda59.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Script-Regular.c81d1b2a4b75d3eded60.woff2) format("woff2"),url(/static/media/KaTeX_Script-Regular.073b3402d036714b4370.woff) format("woff"),url(/static/media/KaTeX_Script-Regular.fc9ba5249878cd8f8d88.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size1-Regular.6eec866c69313624be60.woff2) format("woff2"),url(/static/media/KaTeX_Size1-Regular.0108e89c9003e8c14ea3.woff) format("woff"),url(/static/media/KaTeX_Size1-Regular.6de7d4b539221a49e9e2.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size2-Regular.2960900c4f271311eb36.woff2) format("woff2"),url(/static/media/KaTeX_Size2-Regular.3a99e70aee4076660d38.woff) format("woff"),url(/static/media/KaTeX_Size2-Regular.57f5c1837853986ea1db.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size3-Regular.e1951519f6f0596f7356.woff2) format("woff2"),url(/static/media/KaTeX_Size3-Regular.7947224e8a9914fa332b.woff) format("woff"),url(/static/media/KaTeX_Size3-Regular.8d6b6822586eea3d3b20.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size4-Regular.e418bf257af1052628d8.woff2) format("woff2"),url(/static/media/KaTeX_Size4-Regular.aeffd8025cba3647f1a6.woff) format("woff"),url(/static/media/KaTeX_Size4-Regular.4ad7c7e8bb8d10a34bb7.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Typewriter-Regular.c295e7f71970f03c0549.woff2) format("woff2"),url(/static/media/KaTeX_Typewriter-Regular.4c6b94fd1d07f8beff7c.woff) format("woff"),url(/static/media/KaTeX_Typewriter-Regular.c5c02d763c89380dcb4e.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.cc-viewer{color:#1f2937;font-size:1rem;line-height:1.7}.cc-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.cc-badge{background:#eef2ff;border-radius:999px;color:#3730a3;font-size:.78rem;font-weight:600;padding:3px 12px}.cc-progress{background:#e5e7eb;border-radius:999px;flex:1 1 140px;height:6px;min-width:100px;overflow:hidden}.cc-progress-fill{background:#4f46e5;height:100%;transition:width .3s ease}.cc-layout{display:block}.cc-layout.cc-has-toc{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:220px minmax(0,1fr)}.cc-toc{border-right:1px solid #e5e7eb;font-size:.85rem;max-height:calc(100vh - 40px);overflow:auto;padding-right:12px;position:sticky;top:12px}.cc-toc-title{color:#4b5563;font-size:.72rem;font-weight:700;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.cc-toc ul{list-style:none;margin:0;padding:0}.cc-toc li button{background:none;border:0;border-radius:6px;color:#374151;cursor:pointer;font:inherit;padding:4px 6px;text-align:left;width:100%}.cc-toc li button:focus-visible,.cc-toc li button:hover{background:#eef2ff;color:#3730a3}.cc-toc li button.cc-toc-current{color:#3730a3;font-weight:700}.cc-toc-l2{padding-left:10px}.cc-toc-l3{padding-left:20px}.cc-toc-l4{padding-left:30px}.cc-content{min-width:0;overflow-wrap:anywhere}.cc-heading{color:#111827;line-height:1.3;margin:1.4em 0 .5em;scroll-margin-top:16px}.cc-h1{font-size:1.8rem}.cc-h2{font-size:1.45rem}.cc-h3{font-size:1.2rem}.cc-h4{font-size:1.05rem}.cc-p{margin:0 0 .9em;white-space:pre-wrap}.cc-inline-code{background:#f3f4f6;border-radius:4px;color:#b91c1c;font-size:.9em;padding:1px 6px}.cc-content a{color:#1d4ed8;text-decoration:underline}.cc-list{margin:0 0 1em;padding-left:1.4em}.cc-checklist{list-style:none;padding-left:.4em}.cc-divider{border:0;border-top:1px solid #d1d5db;margin:1.5em 0}.cc-page-break{border-top:2px dashed #9ca3af;margin:1.5em 0}.cc-figure{margin:1em 0}.cc-figure.cc-align-center{text-align:center}.cc-figure.cc-align-right{text-align:right}.cc-figure.cc-align-left{text-align:left}.cc-img-btn{background:none;border:0;cursor:zoom-in;max-width:100%;padding:0}.cc-img-btn:focus-visible{outline:3px solid #4f46e5;outline-offset:2px}.cc-img-btn img{border-radius:8px;height:auto;max-width:100%}.cc-caption{color:#4b5563;font-size:.85rem;margin-top:6px;text-align:center}.cc-unavailable{background:#f3f4f6;border-radius:8px;color:#4b5563;font-size:.9rem;margin:1em 0;padding:12px}.cc-lightbox{align-items:center;animation:cc-fade .2s ease;background:#000000d9;cursor:zoom-out;display:flex;inset:0;justify-content:center;position:fixed;z-index:10000}.cc-lightbox img{border-radius:8px;cursor:default;max-height:90vh;max-width:94vw}.cc-lightbox-close{background:#fff;border:0;border-radius:50%;cursor:pointer;font-size:1.1rem;height:40px;position:absolute;right:18px;top:14px;width:40px}@keyframes cc-fade{0%{opacity:0}to{opacity:1}}.cc-video-wrap{background:#000;border-radius:8px;overflow:hidden;padding-top:56.25%;position:relative}.cc-video-wrap iframe{border:0;height:100%;inset:0;position:absolute;width:100%}.cc-video-native{border-radius:8px;width:100%}.cc-code{background:#282c34;border-radius:8px;margin:1em 0;overflow:hidden}.cc-code-bar{align-items:center;background:#21252b;display:flex;justify-content:space-between;padding:6px 12px}.cc-code-lang{color:#d1d5db;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.cc-code-copy,.cc-code-toggle{background:#374151;border:0;border-radius:6px;color:#fff;cursor:pointer;font-size:.78rem;padding:4px 10px}.cc-code-copy:hover,.cc-code-toggle:hover{background:#4b5563}.cc-code-copy:focus-visible,.cc-code-toggle:focus-visible{outline:2px solid #93c5fd}.cc-code-toggle{border-radius:0;display:block;padding:8px;width:100%}.cc-code .cc-caption{background:#21252b;color:#d1d5db;margin:0;padding:6px 12px}.cc-math{margin:1em 0;overflow-x:auto}div.cc-math{text-align:center}.cc-math-fallback code{background:#fef3c7;border-radius:4px;padding:2px 6px}.cc-table-wrap{margin:1em 0;overflow-x:auto}.cc-table{border-collapse:collapse;font-size:.95rem;width:100%}.cc-table td,.cc-table th{border:1px solid #d1d5db;padding:8px 12px;text-align:left}.cc-table th{background:#f3f4f6;color:#111827}.cc-table tbody tr:nth-child(2n){background:#f9fafb}.cc-callout{border-left:5px solid;border-radius:8px;display:flex;gap:10px;margin:1em 0;padding:12px 16px}.cc-callout .cc-p{margin:.3em 0 0}.cc-callout-title{display:block}.cc-callout-info{background:#eff6ff;border-color:#1d4ed8;color:#1e3a8a}.cc-callout-tip{background:#ecfdf5;border-color:#047857;color:#064e3b}.cc-callout-warning{background:#fffbeb;border-color:#b45309;color:#78350f}.cc-callout-success{background:#f0fdf4;border-color:#15803d;color:#14532d}.cc-callout-note{background:#f5f3ff;border-color:#6d28d9;color:#4c1d95}.cc-quote{border-left:4px solid #9ca3af;color:#374151;font-style:italic;margin:1em 0;padding:4px 16px}.cc-quote footer{color:#4b5563;font-size:.85rem;font-style:normal}.cc-example{background:#fefce8;border:1px dashed #a16207;border-radius:8px;margin:1em 0;padding:10px 16px}.cc-example-label{color:#854d0e;font-weight:700;margin-bottom:4px}.cc-definition{background:#f9fafb;border-left:4px solid #4f46e5;border-radius:4px;margin:1em 0;padding:8px 16px}.cc-definition dt{font-weight:700}.cc-definition dd{margin:4px 0 0}.cc-pager{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:20px}.cc-btn{background:#4f46e5;border:0;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px}.cc-btn:disabled{cursor:not-allowed;opacity:.45}.cc-btn:focus-visible,.cc-page-jump select:focus-visible{outline:3px solid #a5b4fc;outline-offset:2px}.cc-page-jump{align-items:center;display:flex;font-size:.9rem;font-weight:600;gap:8px}.cc-page-jump select{border:1px solid #d1d5db;border-radius:6px;padding:5px 8px}.cc-state{color:#4b5563;padding:30px 10px;text-align:center}.cc-state-icon{font-size:2.2rem}.cc-skel-line{animation:cc-shimmer 1.4s ease infinite;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;border-radius:6px;height:14px;margin:12px 0}.cc-skel-title{height:26px;width:55%}.cc-skel-short{width:65%}.cc-skel-box{animation:cc-shimmer 1.4s ease infinite;background:#e5e7eb;border-radius:8px;height:140px;margin:14px 0}@keyframes cc-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (max-width:760px){.cc-layout.cc-has-toc{grid-template-columns:1fr}.cc-toc{border-bottom:1px solid #e5e7eb;border-right:0;max-height:200px;padding:0 0 8px;position:static}.cc-h1{font-size:1.5rem}.cc-h2{font-size:1.3rem}}@media (prefers-reduced-motion:reduce){.cc-lightbox,.cc-progress-fill,.cc-skel-box,.cc-skel-line{animation:none;transition:none}}@media print{.cc-code-copy,.cc-code-toggle,.cc-lightbox,.cc-pager,.cc-progress,.cc-toc{display:none!important}.cc-layout.cc-has-toc{display:block}.cc-code{background:#fff;border:1px solid #999}.cc-code-bar{display:none}.cc-callout,.cc-code,.cc-figure,.cc-table{break-inside:avoid;page-break-inside:avoid}}.cm-be-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.cm-be-add{position:relative}.cm-be-menu{grid-gap:2px;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 8px 24px #00000026;display:grid;gap:2px;grid-template-columns:repeat(2,minmax(130px,1fr));left:0;min-width:280px;padding:6px;position:absolute;top:100%;z-index:20}.cm-be-menu-item{background:none;border:0;border-radius:6px;color:#111827;cursor:pointer;font:inherit;padding:7px 10px;text-align:left}.cm-be-menu-item:focus-visible,.cm-be-menu-item:hover{background:#eef2ff;outline:none}.cm-be-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.cm-be-block{background:#fff;border:1px solid #d1d5db;border-radius:10px}.cm-be-block.cm-be-dragover{border-color:#4f46e5;box-shadow:0 0 0 2px #c7d2fe}.cm-be-block.cm-be-invalid{border-color:#f59e0b}.cm-be-block-head{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;border-radius:10px 10px 0 0;display:flex;gap:8px;padding:6px 10px}.cm-be-handle{color:#6b7280;cursor:grab;-webkit-user-select:none;user-select:none}.cm-be-type{color:#111827;font-size:.85rem;font-weight:700}.cm-be-page{background:#e5e7eb;border-radius:999px;color:#4b5563;font-size:.75rem;padding:1px 8px}.cm-be-actions{display:flex;gap:4px;margin-left:auto}.cm-be-body{gap:8px;padding:10px}.cm-be-body,.cm-be-field{display:flex;flex-direction:column}.cm-be-field{color:#374151;flex:1 1;font-size:.8rem;gap:3px}.cm-be-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:8px}.cm-be-row>.cm-input{flex:1 1}.cm-be-mono{font-family:ui-monospace,Menlo,Consolas,monospace}.cm-be-img-preview{border:1px solid #e5e7eb;border-radius:6px;max-height:160px;max-width:240px}.cm-be-error{color:#b45309;font-size:.8rem}.cm-be-table-wrap{overflow-x:auto}.cm-be-table td,.cm-be-table th{padding:2px;vertical-align:top}.cm-be-table .cm-input{min-width:100px}.cm-ce-bar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.cm-ce-modes{border:1px solid #d1d5db;border-radius:8px;display:inline-flex;overflow:hidden}.cm-ce-modes button{background:#fff;border:0;cursor:pointer;font:inherit;padding:5px 12px}.cm-ce-modes button[aria-pressed=true]{background:#4f46e5;color:#fff}.cm-ce-dirty{color:#b45309;font-size:.82rem;font-weight:600}.cm-ce-saved{color:#047857;font-size:.82rem}.cm-ce-stats{color:#4b5563;font-size:.8rem;margin-left:auto}.cm-ce-draft{align-items:center;background:#fffbeb;border:1px solid #f59e0b;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px}.cm-ce-draft,.cm-ce-errors{margin-bottom:10px;padding:8px 12px}.cm-ce-errors{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:.85rem}.cm-ce-errors ul{margin:4px 0 0;padding-left:18px}.cm-ce-panes{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr}.cm-ce-panes.cm-ce-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cm-ce-preview{background:#fff;border:1px solid #e5e7eb;border-radius:10px;max-height:70vh;overflow:auto;padding:14px}@media (max-width:900px){.cm-be-menu,.cm-ce-panes.cm-ce-split{grid-template-columns:1fr}}.system-analytics{width:100%}.section-title{font-weight:600;gap:10px}.title-icon{font-size:24px}.analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.analytics-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:24px}.analytics-card h4{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 16px}.chart-placeholder{align-items:center;background:#fff;border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.chart-icon{font-size:48px;margin-bottom:12px}.chart-placeholder p{color:#718096;font-size:14px;margin:0}.live-logs-section{animation:fadeIn .3s ease-in;border-top:2px dashed #e2e8f0;margin-top:40px;padding-top:30px}.logs-header-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.logs-header-bar h4{color:#1a202c;font-size:18px;font-weight:600;margin:0}.header-actions{gap:10px}.clear-btn,.stream-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.stream-btn{background:#3b82f6;color:#fff}.stream-btn:hover{background:#2563eb}.stream-btn.active{animation:pulse 2s infinite;background:#ef4444}.clear-btn{background:#e2e8f0;color:#475569}.clear-btn:hover{background:#cbd5e1}.terminal-window{background:#0f172a;border:1px solid #1e293b;border-radius:12px;box-shadow:0 10px 25px #0003;margin-bottom:30px;overflow:hidden}.terminal-header{align-items:center;background:#1e293b;border-bottom:1px solid #334155;display:flex;gap:8px;padding:10px 15px}.terminal-header .dot{border-radius:50%;height:12px;width:12px}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27c93f}.terminal-title{color:#94a3b8;font-family:monospace;font-size:.9rem;margin-left:10px}.terminal-body{font-family:Courier New,Courier,monospace;font-size:.95rem;height:350px;line-height:1.5;overflow-y:auto;padding:20px}.terminal-body::-webkit-scrollbar{width:8px}.terminal-body::-webkit-scrollbar-track{background:#0f172a}.terminal-body::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.terminal-empty{color:#475569;font-style:italic}.log-entry{margin-bottom:6px;word-break:break-all}.log-time{color:#3b82f6;margin-right:10px}.log-data{color:#10b981}.security-tools-panel{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:24px}.security-tools-panel h4{color:#2d3748;font-size:16px;font-weight:600;margin-bottom:20px;margin-top:0}.tools-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.tool-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:20px}.tool-card h5{color:#4a5568;font-size:15px;margin-bottom:8px;margin-top:0}.tool-card p{color:#718096;font-size:14px;margin-bottom:15px}.tool-btn{background:#2d3748;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.tool-btn:hover{background:#1a202c}.tool-btn.danger{background:#e53e3e}.tool-btn.danger:hover{background:#c53030}.tool-result{background:#1a202c;border-radius:6px;color:#63b3ed;font-family:monospace;font-size:13px;margin-top:15px;padding:12px;word-break:break-all}.active-sessions-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d;margin-bottom:30px;padding:24px}.active-sessions-panel h4{color:#1e293b;font-size:18px;margin-bottom:5px;margin-top:0}.active-sessions-panel p{color:#64748b;font-size:14px;margin-bottom:20px}.table-responsive{overflow-x:auto}.sessions-table{text-align:left}.sessions-table td,.sessions-table th{border-bottom:1px solid #e2e8f0;padding:12px 15px}.sessions-table th{background:#f8fafc;font-size:13px;font-weight:600}.ip-cell code{background:#f1f5f9;border-radius:4px;color:#3b82f6;font-weight:700;padding:4px 8px}.badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px}.badge-guest{background:#f1f5f9;color:#64748b}.badge-auth{background:#dcfce7;color:#166534}.btn-action-block,.btn-action-logout{border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;margin-right:8px;padding:6px 12px}.btn-action-block{background:#fee2e2;color:#dc2626}.btn-action-block:hover{background:#fca5a5}.btn-action-logout{background:#fef3c7;color:#d97706}.btn-action-logout:hover{background:#fde68a}.text-center{color:#94a3b8;font-style:italic;text-align:center}.analytics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:25px}.live-status-badge{animation:pulse 2s infinite;background-color:#10b9811a;border:1px solid #10b98133;border-radius:20px;color:#10b981;font-size:.85rem;font-weight:600;padding:6px 12px}.metric-card{align-items:center;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d;display:flex;gap:20px;padding:24px;transition:transform .2s ease}.metric-card:hover{transform:translateY(-2px)}.metric-icon{align-items:center;border-radius:12px;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.metric-icon.blue{background:#3b82f61a}.metric-icon.green{background:#10b9811a}.metric-icon.purple{background:#8b5cf61a}.metric-icon.orange{background:#f973161a}.metric-data h4{color:#111827;font-size:1.8rem;font-weight:700;margin:0 0 4px}.metric-data p{color:#6b7280;font-size:.9rem;margin:0 0 8px}.trend{border-radius:10px;font-size:.75rem;font-weight:600;padding:2px 8px}.trend.positive{background:#dcfce7;color:#059669}.trend.negative{background:#fee2e2;color:#e11d48}.trend.neutral{background:#f3f4f6;color:#4b5563}.charts-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:30px}.chart-box{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 4px #00000005;padding:20px}.chart-box.full-width{grid-column:1/-1}.chart-box h4{color:#374151;font-size:1.1rem;font-weight:600;margin-bottom:20px;margin-top:0}.bulk-registration-container{margin:0 auto;max-width:1200px;padding:30px}.bulk-reg-header{margin-bottom:40px;text-align:center}.bulk-reg-header h2{color:#1a202c;font-size:32px;font-weight:700;margin:0 0 12px}.bulk-reg-header p{color:#718096;font-size:16px;margin:0}.bulk-reg-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:30px}.section-header{gap:16px;margin-bottom:16px}.step-number{background:linear-gradient(135deg,#667eea,#764ba2);flex-shrink:0;font-size:18px;height:40px;width:40px}.section-header h3{color:#1a202c;font-size:22px;font-weight:700}.section-description{color:#718096;font-size:15px;line-height:1.6;margin:0 0 20px}.download-template-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:10px;padding:14px 28px;transition:all .3s ease}.download-template-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-icon{font-size:20px}.upload-area{background:#f7fafc;border:3px dashed #cbd5e0;border-radius:16px;cursor:pointer;padding:40px;text-align:center;transition:all .3s ease}.upload-area:hover{background:#edf2f7;border-color:#667eea}.upload-area.drag-active{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:#667eea}.file-input{display:none}.upload-label{cursor:pointer;display:block}.upload-icon{font-size:64px;margin-bottom:16px}.upload-text{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 8px}.upload-hint{color:#718096;font-size:14px;margin:0}.validation-errors{background:#fff5f5;border:2px solid #fc8181;border-radius:12px;margin-bottom:20px;padding:20px}.validation-errors h4{color:#c53030;font-size:18px;font-weight:700;margin:0 0 12px}.errors-list{display:flex;flex-direction:column;gap:8px}.error-item{background:#fff;border-radius:6px;color:#742a2a;font-size:14px;padding:8px 12px}.error-item strong{font-weight:700}.preview-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-card{background:#f7fafc;border:2px solid #e2e8f0}.stat-card.success{background:#f0fff4;border-color:#48bb78}.stat-card.error{background:#fff5f5;border-color:#fc8181}.stat-card.total{background:#edf2f7;border-color:#667eea}.stat-number{display:block;font-size:36px;font-weight:800;margin-bottom:8px}.stat-card.success .stat-number{color:#38a169}.stat-card.error .stat-number{color:#e53e3e}.stat-card.total .stat-number{color:#667eea}.stat-label{display:block}.preview-table-container{margin-bottom:20px;overflow-x:auto}.preview-table{border-collapse:collapse;font-size:14px;width:100%}.preview-table thead{background:#f7fafc}.preview-table th{border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:700;padding:12px;text-align:left}.preview-table td{border-bottom:1px solid #e2e8f0;padding:12px}.preview-table tr.error-row{background:#fff5f5}.preview-table tr.success-row{background:#fff}.preview-table tr:hover{background:#f7fafc}.status-badge{font-size:12px}.status-badge.success{background:#c6f6d5;color:#22543d}.status-badge.error{background:#fed7d7;color:#742a2a}.preview-note{color:#718096;font-size:14px;font-style:italic;margin-top:12px;text-align:center}.upload-progress{margin-bottom:24px}.progress-bar{border-radius:12px;height:12px;margin-bottom:8px}.progress-fill{background:linear-gradient(90deg,#48bb78,#38a169)}.progress-text{color:#2d3748;font-size:14px;margin:0}.upload-result{border-radius:12px;margin-bottom:24px;padding:24px;text-align:center}.upload-result.success{background:#f0fff4;border:2px solid #48bb78}.upload-result.error{background:#fff5f5;border:2px solid #fc8181}.result-icon{font-size:48px;margin-bottom:12px}.upload-result h4{font-size:20px;font-weight:700;margin:0 0 8px}.upload-result.success h4{color:#22543d}.upload-result.error h4{color:#742a2a}.upload-result p{font-size:15px;margin:0 0 8px}.upload-result.success p{color:#276749}.upload-result.error p{color:#9b2c2c}.result-note{font-size:13px;font-style:italic;opacity:.8}.upload-actions{display:flex;gap:16px;justify-content:center}.upload-btn{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:12px;box-shadow:0 4px 12px #48bb784d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:14px 32px;transition:all .3s ease}.upload-btn:hover:not(:disabled){box-shadow:0 6px 20px #48bb7866;transform:translateY(-2px)}.upload-btn:disabled{background:#cbd5e0;box-shadow:none;cursor:not-allowed}.cancel-btn{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#718096;cursor:pointer;font-size:16px;font-weight:700;padding:14px 32px;transition:all .3s ease}.cancel-btn:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0}.cancel-btn:disabled{cursor:not-allowed;opacity:.5}.bulk-reg-section.instructions{background:#edf2f7}.instructions h3{color:#1a202c;font-size:20px;font-weight:700;margin:0 0 16px}.instructions ol{margin:0;padding-left:24px}.instructions li{color:#2d3748;font-size:15px;line-height:1.8;margin-bottom:8px}@media (max-width:768px){.bulk-registration-container{padding:20px 16px}.bulk-reg-header h2{font-size:26px}.bulk-reg-section{padding:20px}.section-header{align-items:flex-start;flex-direction:column}.preview-stats{grid-template-columns:1fr}.upload-area{padding:30px 20px}.upload-icon{font-size:48px}.preview-table{font-size:12px}.preview-table td,.preview-table th{padding:8px 6px}.upload-actions{flex-direction:column}.cancel-btn,.upload-btn{width:100%}}.session-management{padding:20px}.session-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.session-stat-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:20px;transition:all .2s}.session-stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.session-stat-card.active{border-color:#3b82f6}.session-stat-card.completed{border-color:#10b981}.session-stat-card.terminated{border-color:#ef4444}.session-stat-card.total{border-color:#8b5cf6}.reset-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;margin-left:8px;padding:6px 10px}.reset-btn:hover{background:#059669}.bulk-reset-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px;transition:all .2s}.bulk-reset-btn:hover{background:#059669}.stat-icon{font-size:2rem;opacity:.8}.stat-value{color:#0f172a;font-size:2rem;line-height:1}.stat-label{font-size:.875rem}.session-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.filter-input,.filter-select{border:2px solid #e2e8f0;border-radius:8px;flex:1 1;font-size:.9rem;min-width:200px;padding:10px 16px}.filter-input:focus,.filter-select:focus{border-color:#3b82f6;outline:none}.refresh-btn{background:#3b82f6;border-radius:8px;font-weight:600;transition:all .2s}.refresh-btn:hover{background:#2563eb}.bulk-actions{align-items:center;background:#fffbeb;border:2px solid #fcd34d;border-radius:8px;gap:12px;margin-bottom:16px;padding:12px 16px}.bulk-actions span{color:#92400e;font-weight:600}.bulk-actions-hint{color:#92400e;font-size:.85rem;font-style:italic}.bulk-kill-btn{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px;transition:all .2s}.bulk-kill-btn:hover{background:#dc2626}.clear-selection-btn{background:#64748b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px;transition:all .2s}.clear-selection-btn:hover{background:#475569}.sessions-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.sessions-table{border-collapse:collapse;width:100%}.sessions-table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.sessions-table th{color:#475569;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.sessions-table td{border-bottom:1px solid #f1f5f9;color:#1e293b;font-size:.9rem;padding:16px}.sessions-table tbody tr:hover{background:#f8fafc}.sessions-table td:first-child,.sessions-table th:first-child{background:inherit;left:0;max-width:56px;min-width:56px;padding-left:8px;padding-right:8px;position:sticky;text-align:center;width:56px;z-index:2}.sessions-table thead th:first-child input[type=checkbox]{cursor:pointer;transform:scale(1.15)}.sessions-table tbody td:first-child input[type=checkbox]{cursor:pointer;transform:scale(1.05)}.user-id-cell{color:#6366f1;font-family:monospace;font-size:.85rem;font-weight:600}.assessment-name-cell{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-cell{display:flex;flex-direction:column;gap:4px}.progress-bar{background:#e2e8f0;width:100px}.progress-fill{transition:width .3s}.progress-text{font-size:.75rem}.score-cell{color:#10b981;font-size:1.1rem}.date-cell{font-size:.8rem}.kill-btn{background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;color:#ef4444;cursor:pointer;font-size:1rem;padding:6px 12px;transition:all .2s}.kill-btn:hover{background:#fecaca;transform:scale(1.1)}.empty-state p{margin:0}@media (max-width:1200px){.sessions-table-container{overflow-x:auto}.sessions-table{min-width:1000px}}@media (max-width:768px){.session-stats-grid{grid-template-columns:1fr 1fr}.session-filters{flex-direction:column}.filter-input,.filter-select{width:100%}}.grades-management{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:20px}.grades-header{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.header-info h2{color:#0f172a;font-size:1.5rem;margin:0 0 4px}.header-info p{color:#64748b;font-size:.9rem;margin:0}.header-actions{display:flex;gap:12px}.add-btn,.init-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s}.init-btn{background:#64748b;color:#fff}.init-btn:hover{background:#475569}.add-btn{background:#3b82f6;color:#fff}.add-btn:hover{background:#2563eb}.subject-pool-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d;flex-shrink:0;margin-bottom:30px;padding:20px}.pool-header h3{color:#1e293b;font-size:1.25rem;margin:0 0 5px}.pool-header p{color:#64748b;font-size:.9rem;margin:0 0 15px}.pool-content{display:flex;flex-direction:column;gap:15px}.pool-chips{display:flex;flex-wrap:wrap;gap:10px}.pool-chip{align-items:center;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:20px;color:#334155;display:flex;font-size:.85rem;font-weight:600;gap:6px;padding:6px 14px}.add-pool-form{display:flex;gap:10px;max-width:400px}.add-pool-form input{border:1px solid #cbd5e1;border-radius:6px;flex:1 1;font-size:.9rem;padding:8px 12px}.add-pool-form button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px}.add-pool-form button:disabled{background:#94a3b8;cursor:not-allowed}.empty-state,.loading-state{color:#64748b;flex-grow:1}.empty-state h3{margin:12px 0 8px}.empty-state p{font-size:.9rem;margin:0 0 24px}.init-btn-large{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 32px;transition:all .2s}.init-btn-large:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.grades-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));padding-bottom:40px}.grade-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;padding:20px;transition:all .2s}.grade-card:hover{border-color:#3b82f6;box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.grade-card.inactive{background:#f8fafc;opacity:.6}.grade-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.grade-badge{background:#eff6ff;border-radius:12px;color:#2563eb;padding:4px 12px}.grade-card-body{flex-grow:1;margin-bottom:16px}.grade-card-body h3{align-items:center;color:#0f172a;display:flex;font-size:1.2rem;margin:0 0 8px}.grade-code-pill{background:#e0e7ff;border-radius:10px;color:#1d4ed8;font-size:.75rem;font-weight:400;margin-left:8px;padding:2px 8px;vertical-align:middle}.grade-description{color:#64748b;font-size:.85rem;line-height:1.4;margin:8px 0 0}.grade-subjects-section{border-top:1px dashed #e2e8f0;margin-top:15px;padding-top:15px}.grade-subjects-section h4{color:#64748b;font-size:.85rem;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.assigned-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;min-height:30px}.assigned-chip{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;color:#047857;display:flex;font-size:.8rem;font-weight:600;gap:6px;padding:4px 10px}.chip-remove{background:none;border:none;color:#059669;cursor:pointer;font-size:1.1rem;font-weight:700;line-height:1;padding:0}.chip-remove:hover{color:#ef4444}.subject-assign-select{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;color:#475569;cursor:pointer;font-size:.85rem;outline:none;padding:8px;width:100%}.subject-assign-select:focus,.subject-assign-select:hover{background:#fff;border-color:#3b82f6}.grade-actions-mini{display:flex;gap:8px}.grade-actions-mini button{align-items:center;background:#f1f5f9;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .2s;width:32px}.grade-actions-mini button:hover{background:#e2e8f0;transform:scale(1.1)}.modal-content{border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px}.modal-header{padding:24px 24px 16px}.modal-header h2{color:#0f172a}.modal-close{border-radius:6px;height:32px;transition:all .2s;width:32px}.modal-close:hover{background:#f1f5f9;color:#64748b}.grade-form{padding:24px}.form-group input,.form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:.95rem;padding:10px 12px;transition:all .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group.checkbox,.form-group.checkbox label{align-items:center;display:flex}.form-group.checkbox label{cursor:pointer;margin:0}.form-group.checkbox input{cursor:pointer;margin-right:8px;width:auto}.form-actions{margin-top:24px}.cancel-btn,.submit-btn{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 24px;transition:all .2s}.cancel-btn{background:#f1f5f9;color:#475569}.cancel-btn:hover{background:#e2e8f0}.submit-btn{background:#3b82f6;color:#fff}.submit-btn:hover{background:#2563eb}@media (max-width:768px){.grades-header{align-items:flex-start;flex-direction:column}.header-actions{width:100%}.add-btn,.init-btn{flex:1 1}.grades-grid{grid-template-columns:1fr}}.incident-management-container{background:#f8fafc;min-height:100vh;padding:24px}.incident-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.incident-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;gap:16px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.incident-stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.incident-stat-card .stat-icon{font-size:2.5rem;opacity:.8}.incident-stat-card .stat-content{flex:1 1}.incident-stat-card .stat-value{color:#1e293b;font-size:2rem;font-weight:700;line-height:1;margin-bottom:6px}.incident-stat-card .stat-label{color:#64748b;font-size:.9rem;font-weight:500}.incident-stat-card.total{border-top:4px solid #667eea}.incident-stat-card.open{border-top:4px solid #3b82f6}.incident-stat-card.progress{border-top:4px solid #f59e0b}.incident-stat-card.resolved{border-top:4px solid #10b981}.incident-stat-card.closed{border-top:4px solid #6b7280}.incident-stat-card.recent{border-top:4px solid #8b5cf6}.incident-filters{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;gap:8px;margin-bottom:24px;padding:12px}.filter-tab{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.filter-tab:hover{border-color:#667eea;color:#667eea}.filter-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.incidents-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow-x:auto;padding:24px}.incidents-table{border-collapse:collapse;width:100%}.incidents-table thead{background:#f8fafc}.incidents-table th{border-bottom:2px solid #e2e8f0;color:#475569;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.incidents-table td{border-bottom:1px solid #e2e8f0;color:#1e293b;font-size:.9rem;padding:16px}.incidents-table tbody tr{transition:background-color .2s ease}.incidents-table tbody tr:hover{background:#f8fafc}.incident-id{color:#667eea;font-family:Courier New,monospace;font-weight:700}.incident-title{font-weight:600;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-cell{display:flex;flex-direction:column;gap:4px}.user-name{color:#1e293b;font-weight:600}.user-email{color:#64748b;font-size:.8rem}.priority-badge,.status-badge{border-radius:12px;color:#fff;display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.category-cell{text-transform:capitalize}.category-cell,.date-cell{color:#64748b;font-size:.85rem}.date-cell{white-space:nowrap}.view-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.view-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.empty-state,.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.spinner{height:48px;margin-bottom:16px;width:48px}.empty-state p,.loading-state p{color:#64748b;font-size:1rem;margin:8px 0 0}.empty-icon{margin-bottom:16px;opacity:.5}.empty-state h3{color:#1e293b;font-size:1.5rem;margin:0 0 8px}.incident-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.incident-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px 16px 0 0;color:#fff;padding:24px 32px}.modal-header h2{font-size:1.5rem}.modal-close{align-items:center;background:#fff3;border-radius:50%;color:#fff;display:flex;justify-content:center;padding:0}.modal-close:hover{background:#ffffff4d}.modal-body{padding:32px}.info-section{margin-bottom:32px}.info-section h3{border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:1.2rem;font-weight:700;margin:0 0 16px;padding-bottom:12px}.info-grid{grid-template-columns:1fr 1fr}.info-item{gap:6px}.info-item.full-width{grid-column:1/-1}.info-item label{color:#64748b;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-item a,.info-item span{color:#1e293b;font-size:.95rem;font-weight:500}.info-item a{color:#667eea;text-decoration:none;word-break:break-all}.info-item a:hover{text-decoration:underline}.description-text{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;font-size:.95rem;line-height:1.6;margin:0;padding:12px 16px;white-space:pre-wrap}.update-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:16px}.form-group textarea{min-height:100px}.btn-close-incident,.btn-update{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:14px 24px;transition:all .2s ease}.btn-update{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-update:hover{box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.btn-close-incident{background:#fee2e2;border:2px solid #fca5a5;color:#dc2626}.btn-close-incident:hover{background:#fecaca;box-shadow:0 8px 20px #dc262633;transform:translateY(-2px)}@media (max-width:768px){.incident-stats-grid{grid-template-columns:1fr 1fr}.incident-filters{flex-wrap:wrap}.incidents-table-wrapper{overflow-x:auto}.incidents-table{min-width:800px}.incident-modal{border-radius:0;max-height:100vh;max-width:100%}.modal-header{border-radius:0}.form-row,.info-grid{grid-template-columns:1fr}}@media (max-width:480px){.incident-management-container{padding:16px}.incident-stats-grid{grid-template-columns:1fr}.modal-body{padding:20px}.modal-actions{flex-direction:column}}.flash-manager-container{margin:0 auto;max-width:1200px;padding:40px 20px}.flash-manager-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.flash-manager-header h1{color:#0f172a;font-size:2rem}.btn-new-message{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;box-shadow:0 4px 12px #3b82f64d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s}.btn-new-message:hover{box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.flash-form-card{background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:30px;padding:30px}.flash-form-card h2{color:#0f172a;font-size:1.5rem;margin-bottom:20px}.form-group label{color:#334155;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group.checkbox-group{align-items:center;flex-direction:row}.form-group.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:8px;margin:0}.form-group.checkbox-group input[type=checkbox]{cursor:pointer;height:20px;width:20px}.form-actions{margin-top:20px}.btn-cancel,.btn-save{border:none;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s}.btn-cancel{background:#f1f5f9;color:#64748b}.btn-cancel:hover{background:#e2e8f0}.btn-save{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d;color:#fff}.btn-save:hover{box-shadow:0 6px 16px #10b98166;transform:translateY(-2px)}.messages-list{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:30px}.messages-list h2{color:#0f172a;font-size:1.5rem;margin-bottom:20px}.no-messages{color:#64748b;padding:60px 20px;text-align:center}.no-messages p{font-size:1.2rem;margin-bottom:10px}.messages-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.message-card{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .3s}.message-card:hover{border-color:#3b82f6;box-shadow:0 6px 20px #3b82f626;transform:translateY(-2px)}.message-card.inactive{opacity:.6}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.message-type-badge{border-radius:20px;font-size:.85rem;font-weight:600;padding:6px 12px}.message-type-badge[data-type=info]{background:#dbeafe;color:#1e40af}.message-type-badge[data-type=success]{background:#d1fae5;color:#065f46}.message-type-badge[data-type=warning]{background:#fed7aa;color:#92400e}.message-type-badge[data-type=error]{background:#fee2e2;color:#991b1b}.message-type-badge[data-type=announcement]{background:#ede9fe;color:#5b21b6}.status-badge{font-size:.8rem;padding:4px 10px}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.message-content{margin:15px 0}.message-content p{color:#334155;font-size:1rem;line-height:1.6}.message-meta{border-top:1px solid #e2e8f0;display:flex;gap:15px;margin:15px 0;padding-top:15px}.meta-item{color:#64748b;font-size:.85rem}.message-actions{display:flex;gap:8px;margin-top:15px}.btn-action{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:600;padding:8px 12px;transition:all .2s}.btn-action.edit{background:#dbeafe;color:#1e40af}.btn-action.edit:hover{background:#bfdbfe}.btn-action.toggle{background:#fef3c7;color:#92400e}.btn-action.toggle:hover{background:#fde68a}.btn-action.delete{background:#fee2e2;color:#991b1b}.btn-action.delete:hover{background:#fecaca}@media (max-width:768px){.flash-manager-container{padding:20px 15px}.flash-manager-header{align-items:stretch;flex-direction:column;gap:15px}.flash-manager-header h1{font-size:1.6rem}.btn-new-message{width:100%}.form-row,.messages-grid{grid-template-columns:1fr}.message-actions{flex-direction:column}}.pnm-container{padding:1.5rem}.pnm-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px #00000012;max-width:640px;padding:2rem}.pnm-title{color:#1a1a2e;font-size:1.25rem;font-weight:700;margin:0 0 .4rem}.pnm-subtitle{color:#777;font-size:.875rem;line-height:1.5;margin:0 0 1.75rem}.pnm-form{display:flex;flex-direction:column;gap:.75rem}.pnm-label{color:#444;font-size:.82rem;font-weight:600;margin-bottom:-.3rem}.pnm-input,.pnm-textarea{border:1.5px solid #e5e7eb;border-radius:10px;box-sizing:border-box;color:#1a1a2e;font-size:.9rem;outline:none;padding:.625rem .875rem;transition:border-color .2s;width:100%}.pnm-input:focus,.pnm-textarea:focus{border-color:#667eea}.pnm-textarea{min-height:96px;resize:vertical}.pnm-input-sm{width:120px}.pnm-target-row,.pnm-type-row{display:flex;flex-wrap:wrap;gap:.5rem}.pnm-target-btn,.pnm-type-btn{background:#fff;border:1.5px solid #e5e7eb;border-radius:20px;color:#555;cursor:pointer;font-size:.82rem;font-weight:500;padding:.45rem .9rem;transition:all .15s}.pnm-target-btn.active,.pnm-type-btn.active{background:#667eea;border-color:#667eea;color:#fff}.pnm-target-btn:hover:not(.active),.pnm-type-btn:hover:not(.active){border-color:#667eea;color:#667eea}.pnm-result{border-radius:10px;font-size:.875rem;font-weight:500;padding:.625rem .875rem}.pnm-result.ok{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.pnm-result.err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.pnm-send-btn{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;margin-top:.5rem;padding:.75rem 1.5rem;transition:opacity .2s}.pnm-send-btn:hover:not(:disabled){opacity:.9}.pnm-send-btn:disabled{cursor:not-allowed;opacity:.6}.pnm-history-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px #00000012;margin-top:1.5rem;max-width:640px;padding:1.5rem 2rem}.pnm-history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.pnm-history-title{color:#1a1a2e;font-size:1rem;font-weight:700;margin:0}.pnm-refresh-btn{background:none;border:1.5px solid #e5e7eb;border-radius:8px;color:#555;cursor:pointer;font-size:.82rem;padding:.3rem .75rem;transition:border-color .15s}.pnm-refresh-btn:hover:not(:disabled){border-color:#667eea;color:#667eea}.pnm-history-empty{color:#999;font-size:.875rem;margin:0;padding:1rem 0;text-align:center}.pnm-history-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.pnm-history-item{background:#fafafa;border:1px solid #f0f0f0;border-radius:10px;padding:.75rem 1rem}.pnm-history-row{align-items:center;display:flex;gap:.5rem;margin-bottom:.35rem}.pnm-history-type{border-radius:12px;font-size:.75rem;font-weight:600;padding:.2rem .55rem}.pnm-history-time{color:#999;font-size:.75rem;margin-left:auto}.pnm-history-subject{color:#1a1a2e;font-size:.875rem;font-weight:600;margin-bottom:.2rem}.pnm-history-msg{color:#555;font-size:.825rem;line-height:1.4}.bem-container{padding:1.5rem}.bem-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px #00000012;max-width:640px;padding:2rem}.bem-title{color:#1a1a2e;font-size:1.25rem;font-weight:700;margin:0 0 .4rem}.bem-subtitle{color:#777;font-size:.875rem;line-height:1.5;margin:0 0 1.75rem}.bem-form{display:flex;flex-direction:column;gap:.75rem}.bem-label{color:#444;font-size:.82rem;font-weight:600;margin-bottom:-.3rem}.bem-input,.bem-textarea{border:1.5px solid #e5e7eb;border-radius:10px;box-sizing:border-box;color:#1a1a2e;font-size:.9rem;outline:none;padding:.625rem .875rem;transition:border-color .2s;width:100%}.bem-input:focus,.bem-textarea:focus{border-color:#667eea}.bem-textarea{min-height:120px;resize:vertical}.bem-textarea-sm{min-height:80px}.bem-target-row{display:flex;flex-wrap:wrap;gap:.5rem}.bem-target-btn{background:#fff;border:1.5px solid #e5e7eb;border-radius:20px;color:#555;cursor:pointer;font-size:.82rem;font-weight:500;padding:.45rem .9rem;transition:all .15s}.bem-target-btn.active{background:#667eea;border-color:#667eea;color:#fff}.bem-target-btn:hover:not(.active){border-color:#667eea;color:#667eea}.bem-hint{color:#999;font-size:.8rem;margin:-.25rem 0}.bem-result{border-radius:10px;font-size:.875rem;font-weight:500;padding:.625rem .875rem}.bem-result.ok{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.bem-result.err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.bem-send-btn{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;margin-top:.5rem;padding:.75rem 1.5rem;transition:opacity .2s}.bem-send-btn:hover:not(:disabled){opacity:.9}.bem-send-btn:disabled{cursor:not-allowed;opacity:.6}.feature-access-control{background:#f8f9fa;min-height:100vh;padding:30px}.fac-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;margin-bottom:30px;padding:25px}.fac-header-content h1{color:#1a202c;font-size:32px;font-weight:700;margin:0 0 8px}.fac-header-content p{color:#718096;font-size:14px;margin:0}.fac-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.fac-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.fac-btn-primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.fac-btn-secondary{background:#e2e8f0;color:#4a5568}.fac-btn-secondary:hover{background:#cbd5e0}.fac-controls{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px;padding:20px}.fac-filters{display:flex;gap:10px}.fac-filter-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.fac-filter-btn.active{background:#667eea;border-color:#667eea;color:#fff}.fac-filter-btn:hover{border-color:#667eea;color:#667eea}.fac-filter-btn.active:hover{color:#fff}.fac-search-input{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:10px 16px;transition:all .2s ease;width:300px}.fac-search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.fac-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.fac-summary-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:15px;padding:20px}.fac-summary-icon{align-items:center;background:#f7fafc;border-radius:10px;display:flex;font-size:32px;height:50px;justify-content:center;width:50px}.fac-summary-value{color:#1a202c;font-size:28px;font-weight:700}.fac-summary-label{color:#718096;font-size:13px;font-weight:600}.fac-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.fac-table{border-collapse:collapse;width:100%}.fac-table thead{background:#f7fafc}.fac-table th{border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:12px;font-weight:700;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.fac-table td{border-bottom:1px solid #f0f0f0;font-size:14px;padding:15px}.fac-table tr:hover{background:#f7fafc}.fac-table tr.fac-disabled{opacity:.5}.fac-feature-cell{display:flex;flex-direction:column;gap:4px}.fac-feature-name{color:#1a202c;font-weight:600}.fac-feature-code{color:#718096;font-family:Courier New,monospace;font-size:12px}.fac-category-badge{border-radius:12px;color:#fff;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.fac-toggle-cell{align-items:center;display:flex;gap:10px}.fac-switch{display:inline-block;height:24px;position:relative;width:44px}.fac-switch input{height:0;opacity:0;width:0}.fac-switch-slider{background-color:#cbd5e0;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.fac-switch-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.fac-switch input:checked+.fac-switch-slider{background-color:#48bb78}.fac-switch input:checked+.fac-switch-slider:before{transform:translateX(20px)}.fac-status{font-size:12px;font-weight:600}.fac-status.active{color:#48bb78}.fac-status.inactive{color:#cbd5e0}.fac-access-mode,.fac-roles,.fac-tiers{color:#4a5568;font-size:12px;font-weight:600}.fac-launch-mode{display:flex;flex-direction:column;gap:4px}.fac-launch-active{color:#48bb78;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:2px}.fac-launch-expiry{color:#718096;font-size:11px;font-weight:400}.fac-launch-inactive{color:#cbd5e0;font-size:12px;font-weight:600}.fac-actions{display:flex;gap:8px}.fac-action-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s ease}.fac-action-btn:hover{box-shadow:0 2px 8px #667eea4d;transform:translateY(-2px)}.fac-action-btn.success{background:#48bb78}.fac-action-btn.danger{background:#f56565}.fac-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.fac-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.fac-modal-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;padding:20px 25px}.fac-modal-header h2{color:#1a202c;font-size:20px;font-weight:700;margin:0}.fac-modal-close{background:none;border:none;color:#a0aec0;cursor:pointer;font-size:28px;height:30px;line-height:1;padding:0;width:30px}.fac-modal-close:hover{color:#4a5568}.fac-modal-body{padding:25px}.fac-modal-description{background:#f7fafc;border-radius:8px;color:#4a5568;font-size:13px;line-height:1.6;margin-bottom:20px;padding:15px;white-space:pre-line}.fac-form-group{margin-bottom:20px}.fac-form-group label{color:#4a5568;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.fac-form-group input,.fac-form-group select,.fac-form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.fac-form-group input:focus,.fac-form-group select:focus,.fac-form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.fac-form-group input:disabled{background:#f7fafc;cursor:not-allowed}.fac-form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.fac-checkbox{align-items:center;cursor:pointer;display:flex;gap:10px}.fac-checkbox input{cursor:pointer;width:auto}.fac-modal-footer{border-top:2px solid #f0f0f0;display:flex;gap:10px;justify-content:flex-end;padding:20px 25px}.fac-loading{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:400px}.spinner{border:4px solid #f0f0f0}@media (max-width:1200px){.fac-table{font-size:13px}.fac-table td,.fac-table th{padding:12px 10px}}@media (max-width:768px){.feature-access-control{padding:15px}.fac-header{gap:15px}.fac-controls,.fac-header{flex-direction:column}.fac-search-input{width:100%}.fac-summary{grid-template-columns:1fr 1fr}.fac-table-container{overflow-x:auto}.fac-table{min-width:1000px}}.futuristic-settings-wrapper{background-color:#0b0c10;border-radius:16px;color:#c5c6c7;font-family:Inter,system-ui,sans-serif;min-height:calc(100vh - 80px);overflow:hidden;padding:40px;position:relative;z-index:1}.ambient-glow{animation:float 10s ease-in-out infinite alternate;border-radius:50%;filter:blur(80px);opacity:.5;position:absolute;z-index:-1}.glow-1{background:#00e5ff26;height:400px;right:-50px;top:-100px;width:400px}.glow-2{animation-delay:-5s;background:#b300ff26;bottom:-50px;height:300px;left:-50px;width:300px}.settings-header{animation:slideInLeft .5s ease-out;border-left:4px solid #00e5ff;margin-bottom:40px;padding-left:20px}.settings-header h1{color:#fff;font-size:2.5rem;font-weight:300;letter-spacing:2px;margin:0 0 8px;text-transform:uppercase}.settings-header p{color:#66fcf1;font-size:1rem;letter-spacing:1px;margin:0}.settings-navigation{border-bottom:1px solid #ffffff1a;display:flex;gap:20px;margin-bottom:40px;padding-bottom:10px}.nav-tab{align-items:center;background:#0000;border:none;color:#c5c6c7;display:flex;font-size:1.1rem;gap:8px;letter-spacing:1px;padding:10px 20px;position:relative;transition:all .3s ease}.nav-tab .icon{color:#45a29e;font-size:1.2rem}.nav-tab:after{background:#00e5ff;bottom:-11px;box-shadow:0 0 10px #00e5ff;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-tab:hover{color:#fff}.nav-tab.active{color:#00e5ff;font-weight:700}.nav-tab.active:after{width:100%}.glass-panel{animation:fadeIn .6s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f111a99;border:1px solid #ffffff0d;border-radius:16px;box-shadow:0 10px 30px #00000080;padding:40px}.panel-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:40px}.provider-selector{background:#0000004d;border:1px solid #ffffff0d;border-radius:8px;display:flex;padding:4px}.provider-btn{background:#0000;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-weight:600;letter-spacing:1px;padding:10px 24px;transition:all .3s}.provider-btn.active{background:#00e5ff1a;border:1px solid #00e5ff4d;box-shadow:inset 0 0 10px #00e5ff33;color:#00e5ff}.cyber-toggle{display:flex;gap:15px}.toggle-label{color:#c5c6c7;font-size:.9rem;letter-spacing:1px;text-transform:uppercase}.toggle-switch{height:26px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.slider{background-color:#ffffff1a;border:1px solid #fff3;border-radius:34px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#94a3b8;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}input:checked+.slider{background-color:#00ff9d1a;border-color:#00ff9d;box-shadow:0 0 15px #00ff9d33}input:checked+.slider:before{background-color:#00ff9d;box-shadow:0 0 10px #00ff9d;transform:translateX(24px)}.form-grid{grid-gap:30px;gap:30px;grid-template-columns:1fr 1fr}.input-group.full-width{grid-column:1/-1}.input-group{margin-bottom:10px;position:relative}.input-group input{background:#0003;border:none;border-radius:8px 8px 0 0;box-sizing:border-box;color:#fff;font-family:Fira Code,monospace;font-size:1rem;outline:none;padding:24px 16px 12px}.input-group label{color:#66fcf1;font-size:1rem;font-weight:500;left:16px;letter-spacing:1px;pointer-events:none;position:absolute;top:20px;transition:all .3s ease}.input-line{background:#fff3;width:100%}.input-line,.input-line:after{bottom:0;height:2px;left:0;position:absolute}.input-line:after{background:#00e5ff;box-shadow:0 0 10px #00e5ff;content:"";transition:all .4s ease;width:0}.input-group input:focus~label,.input-group input:not(:placeholder-shown)~label{color:#00e5ff;font-size:.7rem;top:6px}.input-group input:focus~.input-line:after{width:100%}.form-actions{margin-top:40px}.cyber-submit-btn{background:#0000;border:1px solid #00e5ff;border-radius:4px;box-shadow:inset 0 0 10px #00e5ff1a;color:#00e5ff;cursor:pointer;font-size:1.1rem;font-weight:700;letter-spacing:2px;overflow:hidden;padding:16px 32px;position:relative;text-transform:uppercase;transition:all .3s ease}.cyber-submit-btn:hover{background:#00e5ff1a;box-shadow:inset 0 0 20px #00e5ff66,0 0 20px #00e5ff66;text-shadow:0 0 5px #00e5ff}.cyber-submit-btn:disabled{border-color:#45a29e;box-shadow:none;color:#45a29e;cursor:not-allowed}.cyber-submit-btn:before{background:linear-gradient(90deg,#0000,#00e5ff66,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:all .5s ease;width:50%}.cyber-submit-btn:hover:before{left:100%}.hologram-alert{background:#0006;border-radius:8px;font-family:Fira Code,monospace;font-size:.9rem;margin-bottom:24px;overflow:hidden;padding:16px 24px;position:relative}.hologram-alert.success{border-left:4px solid #00ff9d;box-shadow:0 0 15px #00ff9d1a;color:#00ff9d}.hologram-alert.error{border-left:4px solid #ff3c00;box-shadow:0 0 15px #ff3c001a;color:#ff3c00}.alert-scanner{animation:scanDown 2s linear infinite;background:#ffffff80;height:1px;left:0;position:absolute;right:0;top:0}@keyframes scanDown{0%{opacity:0;top:0}10%{opacity:1}90%{opacity:1}to{opacity:0;top:100%}}.empty-icon{color:#ffffff1a;font-size:4rem;margin-bottom:20px}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.panel-header{align-items:flex-start;flex-direction:column}.provider-selector{justify-content:space-between;width:100%}.provider-btn{flex:1 1;padding:10px}}.otp-settings-wrapper{animation:fadeIn .3s ease-out;margin:0 auto;max-width:1200px;padding:24px;width:100%}.otp-settings-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:24px}.header-content{gap:20px}.header-icon{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.1));font-size:3rem}.header-text h1{color:#1e293b;font-size:2rem;font-weight:800;margin:0 0 8px}.header-text p{color:#64748b;font-size:1.1rem;margin:0}.initialize-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.initialize-btn:hover:not(:disabled){box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.initialize-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.otp-alert{align-items:center;animation:slideDown .3s ease-out;border-radius:12px;display:flex;font-weight:600;gap:16px;margin-bottom:24px;padding:16px 20px}.otp-alert.success{background:#dcfce7;border:2px solid #86efac;color:#166534}.otp-alert.error{background:#fee2e2;border:2px solid #fca5a5;color:#991b1b}.otp-alert.warning{background:#fef3c7;border:2px solid #fde047;color:#92400e}.alert-icon{font-size:1.5rem}.alert-text{flex:1 1;font-size:1rem}.otp-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;padding:80px 20px}.loading-spinner{animation:spin .8s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:48px;margin-bottom:16px;width:48px}.otp-loading p{font-size:1.1rem;font-weight:600}.otp-settings-content{display:flex;flex-direction:column;gap:24px}.otp-card{background:#fff;border-radius:16px;box-shadow:0 4px 16px #00000014;overflow:hidden;transition:all .3s ease}.otp-card:hover{box-shadow:0 8px 24px #0000001f}.otp-card.disabled{opacity:.5;pointer-events:none}.card-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;gap:16px;padding:24px}.card-header.small{background:linear-gradient(135deg,#f59e0b,#d97706);padding:16px}.card-icon{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.2));font-size:2.5rem}.card-icon.small{font-size:2rem}.card-title h2{font-size:1.6rem}.card-title h2,.card-title h3{font-weight:800;margin:0 0 4px;text-shadow:1px 1px 2px #0000001a}.card-title h3{font-size:1.3rem}.card-title p{font-size:1rem;opacity:.95}.card-title.small p{font-size:.9rem}.card-body{padding:24px}.main-toggle-card{border:3px solid #667eea}.toggle-container{align-items:center;display:flex;gap:24px;justify-content:space-between;margin-bottom:20px}.toggle-info h3{color:#1e293b;font-size:1.4rem;font-weight:800;margin:0 0 8px}.status-description{color:#64748b;font-size:1rem;line-height:1.6;margin:0}.cyber-toggle{align-items:center;cursor:pointer;display:inline-flex;gap:12px;position:relative}.cyber-toggle input{display:none}.cyber-toggle .slider{background:#cbd5e1;border-radius:16px;height:32px;position:relative;transition:all .3s ease;width:60px}.cyber-toggle.large .slider{border-radius:20px;height:40px;width:80px}.cyber-toggle .slider:before{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;content:"";height:24px;left:4px;position:absolute;top:4px;transition:all .3s ease;width:24px}.cyber-toggle.large .slider:before{height:32px;width:32px}.cyber-toggle input:checked+.slider{background:linear-gradient(135deg,#10b981,#059669)}.cyber-toggle input:checked+.slider:before{transform:translateX(28px)}.cyber-toggle.large input:checked+.slider:before{transform:translateX(40px)}.cyber-toggle .toggle-label{color:#1e293b;font-size:1rem;font-weight:700}.status-badges{display:flex;flex-wrap:wrap;gap:12px}.status-badge{align-items:center;border-radius:20px;display:flex;font-size:.9rem;gap:8px;padding:8px 16px}.status-badge.success{background:#dcfce7;border:1px solid #86efac;color:#166534}.status-badge.info{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.badge-icon{font-size:1.1rem}.otp-config-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.input-group{margin-bottom:16px}.input-group label{color:#475569;display:block;font-size:.9rem;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.input-group input{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;color:#1e293b;font-size:1.2rem;font-weight:700;padding:12px 16px;transition:all .3s ease;width:100%}.input-group input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.input-group input:disabled{cursor:not-allowed;opacity:.5}.input-hint{color:#94a3b8;display:block;font-size:.85rem;font-style:italic;margin-top:4px}.info-text{background:#f1f5f9;border-left:4px solid #667eea;border-radius:4px;color:#475569;font-size:.95rem;padding:12px 16px}.info-text strong{color:#1e293b}.otp-info-panel{background:#fff;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:32px}.otp-info-panel h3{color:#1e293b;font-size:1.5rem;font-weight:800;margin:0 0 20px}.otp-info-panel ul{list-style:none;margin:0 0 32px;padding:0}.otp-info-panel li{border-bottom:1px solid #e2e8f0;color:#475569;font-size:1rem;line-height:1.6;padding:12px 0}.otp-info-panel li:last-child{border-bottom:none}.otp-info-panel li strong{color:#1e293b;font-weight:700}.best-practices{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #bae6fd;border-radius:12px;padding:24px}.best-practices h4{color:#0c4a6e;font-size:1.2rem;font-weight:800;margin:0 0 16px}.practice-grid{grid-gap:12px;display:grid;gap:12px}.practice-item{align-items:flex-start;color:#0f172a;display:flex;font-size:.95rem;gap:12px}.practice-icon{align-items:center;background:#0ea5e9;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:800;height:24px;justify-content:center;margin-top:2px;width:24px}@media (max-width:768px){.otp-settings-wrapper{padding:16px}.otp-settings-header{align-items:flex-start;flex-direction:column;gap:16px}.initialize-btn{width:100%}.header-icon{font-size:2.5rem}.header-text h1{font-size:1.6rem}.toggle-container{align-items:flex-start;flex-direction:column}.otp-config-grid{grid-template-columns:1fr}.card-body,.card-header{padding:16px}.otp-info-panel{padding:20px}}@media (max-width:480px){.header-text h1{font-size:1.4rem}.card-title h2{font-size:1.3rem}.card-title h3{font-size:1.1rem}.status-badges{flex-direction:column}.status-badge{justify-content:center;width:100%}}.notification-admin-loading{align-items:center;display:flex;flex-direction:column;gap:20px;height:400px;justify-content:center}.spinner{border:5px solid #f3f3f3;border-top-color:#3498db}.notification-admin-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;margin:0 auto;max-width:1200px;padding:30px}.notification-admin-header{margin-bottom:30px}.notification-admin-header h1{color:#1a202c;font-size:2rem;margin:0 0 8px}.notification-admin-header p{color:#718096;font-size:1rem;margin:0}.notification-admin-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:10px;margin-bottom:30px;padding-bottom:10px}.notification-admin-tabs .tab{background:#0000;border:none;border-radius:8px 8px 0 0;color:#718096;cursor:pointer;font-size:.95rem;font-weight:500;padding:12px 24px;transition:all .2s}.notification-admin-tabs .tab:hover{background:#f7fafc;color:#2d3748}.notification-admin-tabs .tab.active{background:#4299e1;color:#fff}.status-card{border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:30px}.status-card.enabled{background:linear-gradient(135deg,#c6f6d5,#9ae6b4);border:2px solid #48bb78}.status-card.disabled{background:linear-gradient(135deg,#fed7d7,#fc8181);border:2px solid #f56565}.status-header{align-items:center;display:flex;gap:20px;margin-bottom:20px}.status-icon{font-size:48px}.status-info h2{font-size:1.5rem;margin:0 0 5px}.status-info p{color:#4a5568;font-size:.9rem;margin:0}.toggle-btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:16px;transition:all .2s;width:100%}.toggle-btn.disable{background:#e53e3e;color:#fff}.toggle-btn.disable:hover{background:#c53030}.toggle-btn.enable{background:#38a169;color:#fff}.toggle-btn.enable:hover{background:#2f855a}.toggle-btn:disabled{cursor:not-allowed;opacity:.6}.info-box,.warning-box{border-radius:8px;margin-top:20px;padding:20px}.warning-box{background:#fffaf0;border:1px solid #f6ad55}.info-box{background:#ebf8ff;border:1px solid #63b3ed}.info-box h3,.warning-box h3{font-size:1.1rem;margin:0 0 10px}.info-box p,.warning-box p{color:#4a5568;margin:0}.schedule-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.schedule-meta{background:#f7fafc;border-radius:8px;display:flex;gap:30px;margin-bottom:30px;padding:15px}.notification-schedule-sections{display:flex;flex-direction:column;gap:30px}.schedule-section h3{margin-bottom:15px}.schedule-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.schedule-item{background:#f7fafc;border-left:4px solid #4299e1;border-radius:8px;display:flex;justify-content:space-between;padding:15px}.schedule-item .days{color:#2d3748;font-weight:600}.schedule-item .desc{color:#718096}.post-expiry-info{display:flex;flex-direction:column;gap:10px}.info-item{background:#f7fafc;border-radius:8px;gap:15px;padding:15px}.info-item .label{color:#2d3748;font-weight:600}.info-item .value{color:#718096}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{box-shadow:0 2px 8px #0000001a;padding:30px}.stat-card.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-card.warning{background:linear-gradient(135deg,#f6ad55,#ed8936);color:#fff}.stat-value{font-size:3rem;margin-bottom:10px}.stat-label{font-size:1rem;opacity:.9}.breakdown-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.breakdown-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.breakdown-item{background:#f7fafc;border-radius:8px;display:flex;justify-content:space-between;padding:15px}.breakdown-item .type{color:#2d3748;font-weight:500}.breakdown-item .count{color:#4299e1;font-weight:600}.logs-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.refresh-btn{background:#4299e1;border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px}.no-logs{background:#f7fafc;border-radius:12px;color:#718096;padding:60px;text-align:center}.logs-table-container{overflow-x:auto}.logs-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%}.logs-table th{background:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:15px;text-align:left}.logs-table td{border-bottom:1px solid #e2e8f0;padding:12px 15px}.logs-table tr.failed{background:#fff5f5}.logs-table tr.success{background:#fff}.status-badge{border-radius:12px;font-size:.85rem;font-weight:600;padding:4px 12px}.status-badge.sent{background:#c6f6d5;color:#22543d}.status-badge.failed{background:#fed7d7;color:#822727}@media (max-width:768px){.notification-admin-container{padding:15px}.notification-admin-tabs{flex-wrap:wrap}.notification-admin-tabs .tab{flex:1 1;text-align:center}.status-header{flex-direction:column;text-align:center}.schedule-meta{flex-direction:column;gap:10px}}.superadmin-subscriptions{margin:0 auto;max-width:1400px;padding:20px}.superadmin-subscriptions h1{color:#667eea;margin-bottom:30px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;text-align:center}.stat-card h3{font-size:36px;margin:0 0 10px}.stat-card p{margin:0;opacity:.9}.tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:10px;margin-bottom:30px}.tabs button{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:16px;padding:12px 24px;transition:all .3s}.tabs button.active{border-bottom-color:#667eea;color:#667eea;font-weight:700}.config-section,.plans-section,.subscriptions-section,.transactions-section{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.plan-card{border:1px solid #e0e0e0;border-radius:10px;margin-bottom:15px;padding:20px}.plan-card input{border:1px solid #ddd;border-radius:5px;margin:5px;padding:8px}.plan-card button{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;margin:5px;padding:8px 16px}.bulk-actions{display:flex;gap:10px;margin-bottom:20px}.bulk-actions button{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px}table{border-collapse:collapse;margin-top:20px;width:100%}table th{background:#f5f5f5;border-bottom:2px solid #ddd;font-weight:700;padding:12px;text-align:left}table td{border-bottom:1px solid #eee;padding:12px}table tr:hover{background:#f9f9f9}.status{border-radius:20px;font-size:12px;font-weight:700;padding:4px 12px}.status.active{background:#4caf50;color:#fff}.status.expired{background:#f44336;color:#fff}.status.completed{background:#4caf50;color:#fff}.status.pending{background:#ff9800;color:#fff}.status.failed{background:#f44336;color:#fff}.config-form{max-width:600px}.config-form label{color:#333;display:block;font-weight:700;margin:20px 0 8px}.config-form input{border:1px solid #ddd;border-radius:5px;font-size:16px;padding:12px;width:100%}.config-form button{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;margin-top:20px;padding:12px 30px}.config-help{background:#f0f4ff;border-left:4px solid #667eea;border-radius:5px;margin-top:40px;padding:20px}.config-help h4{color:#667eea;margin-top:0}.config-help ol{line-height:1.8}.config-help a{color:#667eea;font-weight:700;text-decoration:none}.teacher-attendance{padding:4px 0 24px}.attendance-header h2{color:#1f2937;font-size:1.5rem;margin:0 0 4px}.attendance-subtitle{color:#6b7280;font-size:.9rem;margin:0 0 20px}.attendance-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000a;margin-bottom:20px;padding:20px}.attendance-card h3{color:#111827;font-size:1.05rem;margin:0 0 6px}.attendance-hint{color:#6b7280;font-size:.82rem;margin:0 0 14px}.attendance-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.88rem;margin-bottom:16px;padding:12px 14px}.attendance-empty,.attendance-loading{background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;color:#6b7280;font-size:.88rem;padding:18px;text-align:center}.attendance-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1d4ed8;font-size:.85rem;margin-top:10px;padding:10px 12px}.attendance-note.success{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.attendance-rejected{color:#b91c1c;font-size:.84rem;margin:10px 0 0;padding-left:20px}.attendance-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.88rem;font-weight:600;padding:10px 16px;transition:background .15s,border-color .15s,transform .1s}.attendance-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.attendance-btn.primary{background:#4f46e5;border-color:#4f46e5;color:#fff}.attendance-btn.primary:hover:not(:disabled){background:#4338ca;border-color:#4338ca}.attendance-btn:disabled{cursor:not-allowed;opacity:.55}.attendance-self-actions{display:flex;flex-wrap:wrap;gap:10px}.attendance-self-summary{background:#f9fafb;border-radius:8px;color:#374151;display:flex;flex-wrap:wrap;font-size:.85rem;gap:18px;margin-top:12px;padding:12px 14px}.attendance-controls{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.attendance-field{display:flex;flex:1 1 200px;flex-direction:column;gap:6px;min-width:200px}.attendance-field>span{color:#6b7280;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.attendance-field input,.attendance-field select{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111827;font-size:.9rem;padding:9px 11px}.attendance-field input:focus,.attendance-field select:focus,.attendance-remarks:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f;outline:none}.attendance-bulk{align-items:center;background:#f9fafb;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:12px}.attendance-bulk-label{color:#4b5563;font-size:.82rem;font-weight:600}.attendance-chip{background:#fff;border:1px solid #d1d5db;border-radius:999px;color:#374151;cursor:pointer;font-size:.8rem;padding:5px 12px}.attendance-chip:hover{background:#eef2ff;border-color:#a5b4fc}.attendance-counts{color:#4b5563;display:flex;flex-wrap:wrap;font-size:.83rem;gap:16px;margin-bottom:14px}.attendance-table-wrap{border:1px solid #e5e7eb;border-radius:10px;overflow-x:auto}.attendance-table{border-collapse:collapse;font-size:.88rem;min-width:720px;width:100%}.attendance-table thead th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:.75rem;letter-spacing:.04em;padding:11px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.attendance-table tbody td{border-bottom:1px solid #f3f4f6;padding:10px 12px;vertical-align:middle}.attendance-table tbody tr:last-child td{border-bottom:none}.attendance-table tbody tr:hover{background:#fcfcfd}.attendance-student-name{color:#111827;font-weight:600}.attendance-student-id{color:#9ca3af;font-size:.74rem}.attendance-status-group{display:flex;flex-wrap:wrap;gap:5px}.attendance-status-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:7px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:.78rem;gap:4px;padding:5px 9px;white-space:nowrap}.attendance-status-btn:hover{border-color:#9ca3af}.attendance-status-text{font-weight:600}.attendance-status-btn.selected.status-present{background:#f0fdf4;border-color:#86efac;color:#15803d}.attendance-status-btn.selected.status-absent{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.attendance-status-btn.selected.status-late{background:#fffbeb;border-color:#fcd34d;color:#b45309}.attendance-status-btn.selected.status-excused{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.attendance-status-btn.selected.status-half_day{background:#f5f3ff;border-color:#c4b5fd;color:#6d28d9}.attendance-remarks{border:1px solid #e5e7eb;border-radius:7px;font-size:.83rem;min-width:130px;padding:7px 9px;width:100%}.attendance-legend{color:#6b7280;display:flex;flex-direction:column;font-size:.76rem;gap:4px;margin-top:12px}.attendance-actions{display:flex;justify-content:flex-end;margin-top:16px}.attendance-step-btn{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;color:#334155;cursor:pointer;font-size:.82rem;font-weight:600;padding:6px 12px;transition:all .15s ease}.attendance-step-btn:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.attendance-step-btn:disabled{cursor:not-allowed;opacity:.45}.attendance-step-btn.active{background:#4f46e5;border-color:#4338ca;color:#fff}.attendance-history-banner{align-items:center;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:18px;padding:14px 18px}.attendance-history-banner.banner-update{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.attendance-history-banner.banner-backfill{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.attendance-history-tag{background:#dbeafe;border-radius:999px;color:#1d4ed8;font-size:.78rem;font-weight:700;letter-spacing:.03em;padding:4px 10px;text-transform:uppercase}.attendance-row{transition:background-color .15s ease,border-left .15s ease}.attendance-row.status-border-present{border-left:5px solid #22c55e!important}.attendance-row.status-border-absent{background-color:#fffbfa!important;border-left:5px solid #ef4444!important}.attendance-row.status-border-late{background-color:#fffdf7!important;border-left:5px solid #f59e0b!important}.attendance-row.status-border-excused{background-color:#f8faff!important;border-left:5px solid #3b82f6!important}.attendance-row.status-border-half_day{background-color:#faf8ff!important;border-left:5px solid #8b5cf6!important}.attendance-status-btn.selected{box-shadow:0 1px 3px #00000014;font-weight:700}.attendance-btn.primary.btn-update{background:linear-gradient(135deg,#0284c7,#0369a1);box-shadow:0 2px 6px #0284c74d}.attendance-btn.primary.btn-update:hover:not(:disabled){background:linear-gradient(135deg,#0369a1,#075985)}@media (max-width:640px){.attendance-card{padding:14px}.attendance-controls{flex-direction:column}}.question-inspector-container{margin:0 auto;max-width:1400px;padding:24px}.inspector-header{margin-bottom:24px}.inspector-title-area h2{color:#0f172a;font-size:1.8rem;font-weight:800;margin:0 0 6px}.inspector-title-area p{color:#64748b;font-size:1rem;margin:0}.inspector-search-form{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #0000000d;margin-bottom:24px;padding:20px}.search-bar-row{align-items:center;display:flex;gap:12px}.search-mode-select select{background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:12px;color:#1e293b;cursor:pointer;font-size:.95rem;font-weight:600;height:48px;outline:none;padding:0 16px;transition:all .2s}.search-mode-select select:focus{background:#fff;border-color:#3b82f6}.search-input-field{align-items:center;display:flex;flex:1 1;position:relative}.search-input-field input{background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:12px;color:#0f172a;font-size:1.05rem;height:48px;outline:none;padding:0 40px 0 18px;transition:all .2s;width:100%}.search-input-field input:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.clear-search-btn{background:#0000;border:none;color:#94a3b8;cursor:pointer;font-size:1.1rem;padding:4px;position:absolute;right:12px}.clear-search-btn:hover{color:#475569}.search-submit-btn{align-items:center;background:#3b82f6;border:none;border-radius:12px;box-shadow:0 4px 12px #3b82f640;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:8px;height:48px;padding:0 28px;transition:all .2s}.search-submit-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.search-submit-btn:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed}.search-quick-hints{align-items:center;color:#64748b;display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px;margin-top:14px}.hint-btn{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#2563eb;cursor:pointer;font-size:.82rem;font-weight:600;padding:3px 12px;transition:all .15s}.hint-btn:hover{background:#e0e7ff;border-color:#c7d2fe}.inspector-alert{align-items:center;border-radius:12px;display:flex;font-weight:600;gap:10px;margin-bottom:24px;padding:16px 20px}.inspector-alert.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.inspector-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:390px 1fr}.results-sidebar{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #0000000a;display:flex;flex-direction:column;max-height:calc(100vh - 270px);overflow:hidden}.results-count-bar{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;display:flex;font-size:.88rem;justify-content:space-between;padding:14px 16px}.count-info strong{color:#0f172a}.filters-inline select{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#334155;font-size:.8rem;margin-left:6px;padding:4px 8px}.results-scroll-list{display:flex;flex:1 1;flex-direction:column;gap:10px;overflow-y:auto;padding:12px}.result-item-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:14px;transition:all .2s}.result-item-card:hover{border-color:#93c5fd;box-shadow:0 4px 12px #3b82f614;transform:translateY(-1px)}.result-item-card.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 4px 14px #3b82f61f}.item-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.item-card-id{background:#f1f5f9;border-radius:4px;color:#64748b;font-family:monospace;font-size:.8rem;padding:2px 6px}.complexity-badge{border-radius:12px;font-size:.72rem;font-weight:700;padding:2px 8px;text-transform:uppercase}.complexity-badge.simple{background:#dcfce7;color:#15803d}.complexity-badge.medium{background:#fef3c7;color:#b45309}.complexity-badge.complex{background:#fee2e2;color:#b91c1c}.complexity-badge.very_complex{background:#f3e8ff;color:#7e22ce}.item-card-text{color:#1e293b;font-size:.92rem;font-weight:600;line-height:1.4;margin-bottom:10px}.item-card-footer{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.category-pill,.type-pill{background:#f1f5f9;color:#475569}.answer-preview-pill,.category-pill,.type-pill{border-radius:6px;font-size:.75rem;padding:2px 8px}.answer-preview-pill{background:#e0f2fe;color:#0284c7;font-weight:700;margin-left:auto}.pagination-controls-bar{align-items:center;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:12px 16px}.page-size-selector select{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#334155;font-size:.82rem;outline:none;padding:5px 8px}.page-nav-cluster{align-items:center;display:flex;gap:8px}.page-btn{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#1e293b;cursor:pointer;font-size:.82rem;font-weight:600;padding:5px 12px;transition:all .15s}.page-btn:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.page-btn:disabled{cursor:not-allowed;opacity:.45}.page-indicator{color:#475569;font-size:.82rem;font-weight:700;min-width:44px;text-align:center}.detail-inspector-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #0000000a;padding:24px}.card-top-bar{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px;padding-bottom:18px}.card-top-bar,.id-container{align-items:center;display:flex}.id-container{gap:10px}.id-label{color:#64748b;font-size:.88rem;font-weight:600}.id-code{border-radius:6px;color:#0f172a;font-family:monospace;font-size:.92rem;font-weight:700}.copy-btn,.id-code{background:#f1f5f9;padding:4px 10px}.copy-btn{border:1px solid #cbd5e1;border-radius:6px;color:#334155;cursor:pointer;font-size:.82rem;font-weight:600;transition:all .15s}.copy-btn:hover{background:#e2e8f0}.actions-cluster{align-items:center;display:flex;gap:12px}.print-checkbox-label{align-items:center;color:#475569;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:6px}.print-action-btn{background:#059669;border:none;border-radius:8px;box-shadow:0 2px 8px #05966940;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:8px 16px;transition:all .2s}.print-action-btn:hover{background:#047857;transform:translateY(-1px)}.json-toggle-btn{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 14px;transition:all .15s}.json-toggle-btn:hover{background:#e2e8f0}.json-toggle-btn.active{background:#0f172a;border-color:#0f172a;color:#fff}.metadata-tags-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.meta-tag{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:2px;padding:8px 14px}.meta-tag-label{color:#64748b;font-size:.72rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.meta-tag-value{color:#0f172a;font-size:.92rem;font-weight:700}.section-label{color:#64748b;display:block;font-size:.75rem;font-weight:800;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.question-prompt-section{margin-bottom:28px}.prompt-text-display{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:0 12px 12px 0;color:#0f172a;font-size:1.15rem;font-weight:600;line-height:1.6;padding:18px 22px}.question-options-section{margin-bottom:28px}.options-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.option-box{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;display:flex;gap:14px;padding:12px 16px;position:relative;transition:all .2s}.option-box.correct-option{background:#f0fdf4;border-color:#10b981}.option-key-badge{align-items:center;background:#f1f5f9;border-radius:50%;color:#1e293b;display:flex;flex-shrink:0;font-size:.95rem;font-weight:800;height:32px;justify-content:center;width:32px}.option-box.correct-option .option-key-badge{background:#10b981;color:#fff}.option-val-text{color:#1e293b;flex:1 1;font-size:.98rem;font-weight:500}.correct-indicator{background:#dcfce7;border-radius:12px;color:#059669;font-size:.78rem;font-weight:800;margin-left:8px;padding:2px 8px}.no-options-warning{background:#f8fafc;border-radius:10px;color:#64748b;font-size:.95rem;font-style:italic;padding:16px}.answer-solution-section{margin-bottom:24px}.answer-display-banner{background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:14px;padding:18px 22px}.answer-pill-large{align-items:center;background:#10b981;border-radius:30px;box-shadow:0 4px 12px #10b98140;color:#fff;display:inline-flex;font-size:1.15rem;font-weight:800;gap:10px;padding:8px 20px}.badge-check{font-size:1.2rem}.explanation-box{border-top:1px dashed #86efac;color:#065f46;font-size:.98rem;line-height:1.5;margin-top:14px;padding-top:12px}.explanation-box p{margin:6px 0 0}.raw-json-panel{background:#0f172a;border-radius:12px;margin-top:24px;padding:20px}.raw-json-panel .section-label{color:#94a3b8}.json-pre{color:#38bdf8;font-family:monospace;font-size:.85rem;margin:0;max-height:350px;overflow-y:auto}.empty-selection-placeholder{color:#94a3b8;font-size:1.1rem;padding:60px 20px;text-align:center}.printable-question-card{display:none}@page{size:A4 portrait;margin:15mm 20mm}@media print{.inspector-screen-view,.navbar,.no-print,.sidebar,button,footer,header,nav{display:none!important}#root,.app-container,.question-inspector-container,body,html{background:#fff!important;height:auto!important;margin:0!important;min-height:auto!important;overflow:visible!important;padding:0!important;width:100%!important}.printable-question-card{background:#fff!important;color:#000!important;display:block!important;font-family:Times New Roman,Times,serif;font-size:11pt;line-height:1.5;margin:0!important;max-width:100%!important;padding:0!important;position:static!important;width:100%!important}.print-header{border-bottom:2px solid #000;margin-bottom:14px;padding-bottom:12px}.print-logo-row{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:8px;text-align:center}.print-logo-img{height:44px;object-fit:contain;width:auto}.print-brand-titles{text-align:center}.print-main-title{font-size:17pt;font-weight:800;letter-spacing:1px;margin:0 0 2px}.print-main-title,.print-sub-title{font-family:Helvetica Neue,Arial,sans-serif;text-transform:uppercase}.print-sub-title{color:#333;font-size:11pt;font-weight:600;letter-spacing:.5px;margin:0}.print-student-info-bar{grid-gap:10px;display:grid;font-family:Helvetica Neue,Arial,sans-serif;font-size:10.5pt;gap:10px;grid-template-columns:2fr 1fr 1fr 1fr;margin:12px 0 8px}.info-field{align-items:center;display:flex;gap:6px;white-space:nowrap}.field-label{font-weight:700}.fill-line{color:#444}.print-meta-grid{border-top:1px solid #ccc;color:#222;display:flex;flex-wrap:wrap;font-family:Helvetica Neue,Arial,sans-serif;font-size:9.5pt;gap:8px;justify-content:space-between;margin-top:6px;padding-top:8px}.print-meta-mono{font-family:monospace;font-size:9pt}.print-body{padding-top:8px}.print-prompt-card{background:#fafafa;border:1.5px solid #222;border-radius:6px;margin-bottom:16px;padding:14px 18px}.print-q-badge{color:#222;font-family:Helvetica Neue,Arial,sans-serif;font-size:9.5pt;font-weight:800;letter-spacing:.5px;margin-bottom:6px}.print-prompt-text{color:#000;font-size:13pt;font-weight:600;line-height:1.5}.print-options-section{break-inside:avoid;margin-bottom:20px;page-break-inside:avoid}.print-options-title{font-family:Helvetica Neue,Arial,sans-serif;font-size:10pt;font-weight:700;margin-bottom:8px}.print-options-grid{display:flex;flex-direction:column;gap:10px}.print-option-row{align-items:flex-start;display:flex;font-size:11.5pt;gap:10px;line-height:1.4}.print-checkbox-box{font-family:monospace;font-size:11pt;font-weight:700}.print-key-letter{font-weight:700;min-width:22px}.print-val-text{flex:1 1}.print-no-options-note{color:#555;font-size:10pt;font-style:italic}.print-rough-workspace{break-inside:avoid;margin:20px 0;page-break-inside:avoid}.workspace-header{color:#444;font-family:Helvetica Neue,Arial,sans-serif;font-size:9.5pt;font-weight:700;letter-spacing:.5px;margin-bottom:6px}.workspace-dotted-box{background:#fff;border:1.5px dashed #999;border-radius:6px;height:140px}.print-answer-key{border:1.5px solid #000;border-radius:6px;break-inside:avoid;margin-top:18px;page-break-inside:avoid}.print-answer-header{background:#f0f0f0;border-bottom:1px solid #000;font-family:Helvetica Neue,Arial,sans-serif;font-size:10pt;font-weight:800;letter-spacing:.5px;padding:6px 14px}.print-answer-content{font-size:11pt;padding:12px 14px}.print-answer-line{margin-bottom:8px}.print-correct-highlight{font-weight:700;text-decoration:underline}.print-explanation-line strong{display:block;margin-bottom:4px}.print-explanation-line p{line-height:1.4;margin:0}.print-footer{break-inside:avoid;margin-top:30px;page-break-inside:avoid}.footer-line{border-top:1px solid #000;margin-bottom:8px}.footer-content{color:#444;display:flex;font-family:Helvetica Neue,Arial,sans-serif;font-size:8.5pt;justify-content:space-between}.avoid-break{break-inside:avoid!important;page-break-inside:avoid!important}}.super-admin-dashboard-new{background:#f5f7fa;display:flex;margin-top:60px;min-height:calc(100vh - 60px)}.admin-sidebar{align-self:flex-start;background:linear-gradient(180deg,#4f46e5,#7c3aed 50%,#a855f7);box-shadow:4px 0 20px #4f46e54d;color:#fff;display:flex;flex-direction:column;flex-shrink:0;height:calc(100vh - 60px);position:sticky;top:60px;width:280px}.sidebar-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-bottom:1px solid #fff3;gap:16px;padding:32px 24px}.admin-avatar,.sidebar-header{align-items:center;display:flex}.admin-avatar{background:linear-gradient(135deg,#fbbf24,#f59e0b);border:2px solid #ffffff4d;border-radius:50%;box-shadow:0 4px 16px #fbbf2480;flex-shrink:0;font-size:24px;font-weight:700;height:56px;justify-content:center;width:56px}.admin-info h3{color:#fff;font-size:18px;font-weight:600;margin:0 0 4px}.admin-info p{color:#ffffffb3;font-size:13px;letter-spacing:.5px;margin:0;text-transform:uppercase}.sidebar-nav{flex:1 1;overflow-y:auto;padding:24px 0}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.nav-section-title{background:#ffffff0d;color:#fffc;font-size:11px;font-weight:700;letter-spacing:1px;margin-top:8px;padding:16px 24px 8px;text-transform:uppercase}.nav-section-collapsible{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding-bottom:8px;-webkit-user-select:none;user-select:none}.nav-section-collapsible:hover{background:#ffffff1a}.nav-chevron{display:inline-block;font-size:13px;transition:transform .2s ease}.nav-chevron.collapsed{transform:rotate(-90deg)}.nav-item{border-left:4px solid #0000;color:#ffffffd9;font-size:15px;gap:12px;padding:14px 24px;text-align:left;transition:all .2s ease;width:100%}.nav-item:hover{background:#ffffff26;transform:translateX(4px)}.nav-item.active,.nav-item:hover{border-left-color:#fbbf24;color:#fff}.nav-item.active{background:#fbbf2433;box-shadow:inset 0 0 20px #fbbf241a;font-weight:600}.nav-icon{text-align:center;width:24px}.nav-label{flex:1 1}.nav-badge{animation:badge-pulse 2s ease-in-out infinite;background:#f59e0b;border-radius:12px;box-shadow:0 2px 8px #f59e0b66;color:#fff;font-size:11px;font-weight:700;min-width:22px;padding:3px 8px;text-align:center}@keyframes badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.admin-main-content{background:#f5f7fa;flex:1 1;min-height:calc(100vh - 60px)}.content-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 2px 8px #0000000d;padding:28px 40px;position:sticky;top:60px;z-index:10}.page-title{color:#1a202c;font-size:32px;font-weight:700;margin:0}.content-body{max-width:1600px;padding:32px 40px}.overview-container{display:flex;flex-direction:column;gap:32px}.hero-stats{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.hero-stat-card{align-items:center;background:#fff;border-radius:16px;border-top:4px solid;box-shadow:0 4px 12px #00000014;display:flex;justify-content:space-between;padding:32px;transition:transform .2s ease,box-shadow .2s ease}.hero-stat-card.primary{border-top-color:#667eea}.hero-stat-card.success{border-top-color:#48bb78}.hero-stat-card.warning{border-top-color:#ed8936}.hero-stat-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.hero-stat-card .stat-content h2{color:#1a202c;font-size:48px;font-weight:800;line-height:1;margin:0 0 8px}.hero-stat-card .stat-content p{color:#718096;font-size:16px;font-weight:500;margin:0}.hero-stat-card .stat-icon{font-size:64px;opacity:.15}.content-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.content-stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:24px;transition:all .2s ease}.content-stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.content-stat-card .stat-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.content-stat-card .stat-header .stat-icon{font-size:28px}.content-stat-card .stat-header h3{color:#2d3748;font-size:16px;font-weight:600;margin:0}.content-stat-card .stat-value{color:#667eea;font-size:36px;font-weight:700;margin-bottom:8px}.content-stat-card .stat-footer{color:#718096;font-size:13px}.quick-actions-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:32px}.section-title{color:#1a202c;font-size:24px;margin:0 0 24px}.action-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.action-card{background:linear-gradient(135deg,#f7fafc,#fff);overflow:hidden;padding:28px 24px;position:relative;transition:all .3s ease}.action-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.action-card:hover:before{transform:scaleX(1)}.action-card:hover{box-shadow:0 8px 20px #667eea26}.action-card-icon{font-size:48px;margin-bottom:16px}.action-card h3{color:#1a202c;font-size:20px;font-weight:700;margin:0 0 8px}.action-card p{color:#718096;font-size:14px;line-height:1.6;margin:0 0 20px}.action-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease;width:100%}.action-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateX(4px)}.action-badge{background:#e53e3e;border-radius:12px;color:#fff;font-size:12px;font-weight:700;padding:6px 12px;position:absolute;right:16px;top:16px}.system-health-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:32px}.health-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.health-card{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:20px}.health-indicator{animation:pulse 2s ease-in-out infinite;border-radius:50%;height:12px;width:12px}.health-indicator.success{background:#48bb78;box-shadow:0 0 12px #48bb7899}.health-info h4{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 4px}.health-info p{color:#718096;font-size:13px;margin:0}.settings-container{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:32px}.settings-sections{grid-gap:32px;display:grid;gap:32px}.settings-section{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:24px}.settings-section h3{color:#1a202c;font-size:20px;font-weight:700;margin:0 0 20px}.setting-item{border-bottom:1px solid #e2e8f0;padding:16px 0}.setting-item:last-child{border-bottom:none}.setting-item label{align-items:center;color:#2d3748;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px}.setting-item input[type=checkbox]{cursor:pointer;height:20px;width:20px}.setting-description{color:#718096;font-size:14px;line-height:1.5;margin:8px 0 0 32px}@media (max-width:1200px){.admin-sidebar{width:240px}.content-body{padding:24px 32px}}@media (max-width:968px){.admin-sidebar{width:80px}.sidebar-header{flex-direction:column;padding:24px 16px}.admin-info,.nav-section-title{display:none}.nav-item{justify-content:center;padding:16px}.nav-label{display:none}.nav-icon{font-size:24px}.hero-stats{grid-template-columns:1fr}.content-body{padding:20px 24px}.page-title{font-size:24px}}@media (max-width:768px){.super-admin-dashboard-new{flex-direction:column}.admin-sidebar{left:-280px;position:fixed;transition:left .3s ease;width:280px;z-index:1000}.admin-sidebar.mobile-open{left:0}.action-cards-grid,.content-stats-grid,.health-cards{grid-template-columns:1fr}.content-header{padding:20px 24px}.content-body{padding:20px}}.overview-container,.settings-container{animation:fadeIn .3s ease-out}.text-muted{color:#718096}.text-primary{color:#667eea}.text-success{color:#48bb78}.text-warning{color:#ed8936}.text-danger{color:#e53e3e}.upload-exam-paper-container{margin:0 auto;max-width:1200px;padding:24px;width:100%}.upload-header{margin-bottom:32px}.upload-header h2{align-items:center;color:#1e293b;display:flex;font-size:1.8rem;font-weight:700;gap:12px;margin:0 0 8px}.header-icon{font-size:2rem}.header-description{color:#64748b;font-size:1rem;margin:0}.upload-form-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:32px}.form-section:last-child{margin-bottom:0}.section-title{border-bottom:2px solid #f1f5f9;font-size:1.1rem;margin:0 0 16px;padding-bottom:8px}.form-input:focus,.form-select:focus{outline:none}.form-hint{font-size:.8rem}.file-upload-area{background:#f8fafc;border:2px dashed #cbd5e0;border-radius:12px;padding:24px;text-align:center;transition:all .2s ease}.file-upload-area:hover{background:#f1f5f9;border-color:#667eea}.file-input-hidden{display:none}.file-upload-label{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:16px}.upload-icon{font-size:3rem}.upload-text{display:flex;flex-direction:column;gap:4px}.upload-primary{color:#1e293b;font-size:1rem;font-weight:600;margin:0}.upload-secondary{color:#64748b;font-size:.85rem;margin:0}.selected-files{margin-top:24px;text-align:left}.selected-files h4{color:#475569;font-size:.95rem;font-weight:700;margin:0 0 12px}.files-list{display:flex;flex-direction:column;gap:8px}.file-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;padding:12px}.file-icon{font-size:1.5rem}.file-name{color:#1e293b;flex:1 1;font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:#94a3b8;font-size:.8rem}.upload-progress{margin:24px 0}.progress-bar{background:#f1f5f9;border-radius:4px;height:8px}.progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.progress-text{color:#667eea;font-size:.9rem}.upload-status{align-items:flex-start;border-radius:8px;display:flex;gap:12px;margin:24px 0;padding:16px}.upload-status.success{background:#d1fae5;border:1px solid #a7f3d0}.upload-status.error{background:#fee2e2;border:1px solid #fca5a5}.status-icon{flex-shrink:0;font-size:1.5rem}.upload-status p{font-size:.95rem;font-weight:600;margin:0}.upload-status.success p{color:#065f46}.upload-status.error p{color:#991b1b}.submission-id{font-size:.85rem!important;font-weight:500!important;margin-top:8px!important;opacity:.9}.btn-reset,.btn-upload{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:700;padding:14px 32px;transition:all .2s ease}.btn-upload{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex:2 1}.btn-upload:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-upload:disabled{cursor:not-allowed;opacity:.5}.btn-reset{background:#f1f5f9;color:#475569;flex:1 1}.btn-reset:hover:not(:disabled){background:#e2e8f0}.btn-reset:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.upload-exam-paper-container{padding:16px}.upload-form-card{padding:20px}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-reset,.btn-upload{width:100%}}.grade-submissions-container{margin:0 auto;max-width:1600px;padding:24px;width:100%}.submissions-header{margin-bottom:24px}.submissions-header h2{align-items:center;color:#1e293b;display:flex;font-size:1.8rem;font-weight:700;gap:12px;margin:0 0 8px}.submissions-header p{color:#64748b;font-size:1rem;margin:0}.submissions-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.btn-bulk-approve{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:12px 24px;white-space:nowrap}.btn-bulk-approve:hover:not(:disabled){background:#059669}.btn-bulk-approve:disabled{cursor:not-allowed;opacity:.5}.submissions-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto;padding:24px}.submissions-table{border-collapse:collapse;font-size:.85rem;width:100%}.submissions-table thead{background:#f8fafc}.submissions-table th{border-bottom:2px solid #e2e8f0;color:#475569;font-size:.8rem;font-weight:700;padding:12px;text-align:left;text-transform:uppercase}.submissions-table td{border-bottom:1px solid #f1f5f9;color:#334155;padding:14px 12px}.submissions-table tbody tr:hover{background:#f8fafc}.submissions-table code{background:#f1f5f9;border-radius:4px;color:#475569;font-size:.8rem;padding:2px 6px}.subject-tag{background:#e0e7ff;color:#4f46e5;font-size:.75rem}.percentage-badge,.subject-tag{border-radius:20px;display:inline-block;padding:4px 10px}.percentage-badge{font-size:.8rem;font-weight:700}.percentage-badge.high{background:#d1fae5;color:#065f46}.percentage-badge.medium{background:#fef3c7;color:#92400e}.percentage-badge.low{background:#fee2e2;color:#991b1b}.status-badge{border-radius:8px;display:inline-block;font-size:.75rem;font-weight:700;padding:6px 12px;text-transform:uppercase}.status-badge.status-pending_review{background:#fef3c7;color:#92400e}.status-badge.status-reviewed{background:#dbeafe;color:#1e40af}.status-badge.status-approved{background:#d1fae5;color:#065f46}.btn-approve,.btn-view{border:none;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600;margin-right:4px;padding:6px 12px}.btn-view{background:#e2e8f0;color:#475569}.btn-view:hover{background:#cbd5e0}.btn-approve{background:#10b981;color:#fff}.btn-approve:hover{background:#059669}.submission-detail-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{max-height:90vh;max-width:800px;width:100%}.modal-close{line-height:1}.modal-content h3{font-size:1.5rem}.detail-section{border-bottom:2px solid #f1f5f9;margin-bottom:24px;padding-bottom:24px}.detail-section:last-child{border-bottom:none}.detail-section h4{color:#1e293b;font-size:1.1rem;font-weight:700;margin:0 0 16px}.info-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(2,1fr)}.info-item{gap:4px}.info-item span{color:#64748b;font-size:.85rem}.info-item strong{color:#1e293b;font-size:1rem}.score-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.score-card{background:#f8fafc;border-radius:8px;padding:20px;text-align:center}.score-card span{color:#64748b;display:block;font-size:.85rem;margin-bottom:8px}.score-card strong{color:#1e293b;display:block;font-size:2rem;font-weight:800}.feedback-box{background:#f8fafc;border-radius:8px;color:#475569;font-size:.95rem;line-height:1.6;padding:16px}.questions-list{display:flex;flex-direction:column;gap:12px}.question-item{background:#f8fafc;border-radius:8px;padding:16px}.question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.question-header span:first-child{color:#1e293b;font-weight:700}.points{border-radius:20px;font-size:.85rem;font-weight:700;padding:4px 12px}.points.full{background:#d1fae5;color:#065f46}.points.partial{background:#fef3c7;color:#92400e}.question-feedback{color:#64748b;font-size:.85rem;line-height:1.5;margin-top:8px}.modal-actions{border-top:2px solid #f1f5f9;display:flex;gap:12px;margin-top:24px;padding-top:24px}.btn-approve-modal,.btn-edit-modal{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:700;padding:12px 24px}.btn-approve-modal{background:#10b981;color:#fff;flex:2 1}.btn-approve-modal:hover{background:#059669}.btn-edit-modal{background:#667eea;color:#fff;flex:1 1}.btn-edit-modal:hover{background:#5568d3}@media (max-width:768px){.submissions-controls{align-items:stretch;flex-direction:column}.submissions-table{font-size:.75rem}.submissions-table td,.submissions-table th{padding:8px 6px}.info-grid,.score-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}}.grade-banner{border-radius:8px;font-size:.9rem;font-weight:600;line-height:1.5;margin-bottom:16px;padding:14px 16px}.grade-banner-ok{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.grade-banner-error{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.grade-empty{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:40px 24px;text-align:center}.grade-empty strong{color:#1e293b;display:block;font-size:1.05rem;margin-bottom:8px}.grade-empty p{color:#64748b;font-size:.9rem;line-height:1.6;margin:0 0 16px}.grade-empty-error{background:#fffbfb;border-color:#fca5a5}.grade-hint{color:#64748b;font-size:.85rem;line-height:1.6;margin:12px 0 0}.question-edit{grid-gap:12px;border-top:1px dashed #cbd5e0;display:grid;gap:12px;margin-top:12px;padding-top:12px}.question-edit label{color:#475569;display:flex;flex-direction:column;font-size:.8rem;font-weight:600;gap:6px}.question-edit input[type=number]{border:2px solid #e2e8f0;border-radius:6px;font-size:.9rem;max-width:140px;padding:8px 10px}.grade-review-notes,.question-edit textarea{border:2px solid #e2e8f0;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:.9rem;padding:10px;resize:vertical;width:100%}.grade-review-notes:focus,.question-edit input:focus,.question-edit textarea:focus{border-color:#667eea;outline:none}.question-edit-max{color:#94a3b8;font-size:.75rem;font-weight:500}.manual-paper{padding:4px 0 24px}.mp-header h2{color:#1f2937;font-size:1.5rem;margin:0 0 4px}.mp-subtitle{color:#6b7280;font-size:.9rem;margin:0 0 20px;max-width:68ch}.mp-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000a;margin-bottom:20px;padding:20px}.mp-card h3{color:#111827;font-size:1.05rem;margin:0 0 14px}.mp-hint{color:#6b7280;font-size:.82rem;margin:10px 0 0}.mp-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c}.mp-error,.mp-success{font-size:.88rem;margin-bottom:16px;padding:12px 14px}.mp-success{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#15803d}.mp-success-note{color:#4b5563;font-size:.8rem;margin-top:6px}.mp-shortfalls{color:#b45309;font-size:.83rem;margin:8px 0 0;padding-left:20px}.mp-grid{display:flex;flex-wrap:wrap;gap:14px}.mp-field{display:flex;flex:1 1 190px;flex-direction:column;gap:6px;min-width:190px}.mp-field-wide{flex:2 1 320px}.mp-field-full{flex:1 1 100%;margin-top:14px}.mp-field>span{color:#6b7280;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.mp-field input,.mp-field select,.mp-field textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-family:inherit;font-size:.9rem;padding:9px 11px;width:100%}.mp-field textarea{resize:vertical}.mp-field input:focus,.mp-field select:focus,.mp-field textarea:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f;outline:none}.mp-field select:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.mp-invalid{border-color:#f87171!important}.mp-field-error{color:#b91c1c}.mp-field-error,.mp-field-hint{font-size:.76rem;font-style:normal}.mp-field-hint{color:#6b7280}.mp-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.88rem;font-weight:600;padding:10px 16px;transition:background .15s,border-color .15s}.mp-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.mp-btn.primary{background:#4f46e5;border-color:#4f46e5;color:#fff}.mp-btn.primary:hover:not(:disabled){background:#4338ca;border-color:#4338ca}.mp-btn:disabled{cursor:not-allowed;opacity:.55}.mp-actions{display:flex;justify-content:flex-end}.mp-questions-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:14px}.mp-questions-head h3{margin:0}.mp-q-strip{display:flex;gap:8px;margin-bottom:4px;overflow-x:auto;padding:4px 2px 10px}.mp-q-tab{align-items:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:2px;max-width:160px;min-width:118px;padding:7px 10px;text-align:left}.mp-q-tab:hover{border-color:#9ca3af}.mp-q-tab.active{background:#eef2ff;border-color:#4f46e5}.mp-q-tab.invalid{background:#fef2f2;border-color:#fca5a5}.mp-q-tab-num{color:#4f46e5;font-size:.74rem;font-weight:700}.mp-q-tab-text{color:#6b7280;font-size:.76rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-q-editor{background:#fcfcfd;border:1px solid #e5e7eb;border-radius:10px;padding:16px}.mp-q-editor-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:12px}.mp-q-editor-title{color:#374151;font-size:.85rem;font-weight:700}.mp-q-editor-actions{display:flex;gap:6px}.mp-q-editor-actions button{background:#fff;border:1px solid #d1d5db;border-radius:7px;color:#4b5563;cursor:pointer;font-size:.85rem;height:30px;width:30px}.mp-q-editor-actions button:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.mp-q-editor-actions button:disabled{cursor:not-allowed;opacity:.4}.mp-q-editor-actions .mp-danger:hover:not(:disabled){background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.mp-q-issues{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.82rem;margin:0 0 12px;padding:10px 12px 10px 30px}.mp-options{display:flex;flex-direction:column;gap:8px;margin-top:14px}.mp-option{align-items:center;border:1px solid #0000;border-radius:8px;display:flex;gap:10px;padding:6px}.mp-option.correct{background:#f0fdf4;border-color:#bbf7d0}.mp-option input{border:1px solid #d1d5db;border-radius:8px;color:#111827;flex:1 1;font-family:inherit;font-size:.9rem;padding:9px 11px}.mp-option input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f;outline:none}.mp-option-mark{background:#fff;border:2px solid #d1d5db;color:#6b7280;cursor:pointer;flex:0 0 auto;font-size:.85rem;font-weight:700;height:34px;width:34px}.mp-option-mark.radio{border-radius:50%}.mp-option-mark.box{border-radius:7px}.mp-option-mark:hover{border-color:#4f46e5;color:#4f46e5}.mp-option.correct .mp-option-mark{background:#16a34a;border-color:#16a34a;color:#fff}@media (max-width:640px){.mp-card{padding:14px}.mp-grid{flex-direction:column}.mp-field,.mp-field-wide{flex:1 1 100%;min-width:0}}.mp-questions-head-actions{align-items:center;display:flex;gap:10px}.mp-import-btn{background:#f0fdf4!important;border-color:#bbf7d0!important;color:#166534!important;font-weight:600}.mp-import-btn:hover{background:#dcfce7!important;border-color:#86efac!important}.mp-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a99;bottom:0;display:flex;justify-content:center;left:0;padding:16px;position:fixed;right:0;top:0;z-index:9999}.mp-modal-card{animation:mpFadeIn .15s ease-out;background:#fff;border-radius:14px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:620px;overflow:hidden;width:100%}@keyframes mpFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.mp-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:18px 22px}.mp-modal-header h3{color:#111827;font-size:1.15rem;font-weight:700;margin:0}.mp-modal-close{background:#0000;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;font-size:1.25rem;padding:4px 8px}.mp-modal-close:hover{background:#f3f4f6;color:#374151}.mp-modal-tabs{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;gap:8px;padding:0 20px}.mp-tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:600;padding:12px 14px;transition:all .15s ease}.mp-tab-btn:hover{color:#1e293b}.mp-tab-btn.active{background:#fff;border-bottom-color:#2563eb;color:#2563eb}.mp-modal-body{display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 22px}.mp-import-desc{color:#64748b;font-size:.88rem;line-height:1.4;margin:0 0 10px}.mp-file-dropzone{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:10px;cursor:pointer;display:block;padding:30px 20px;text-align:center;transition:all .2s ease}.mp-file-dropzone:hover{background:#eff6ff;border-color:#3b82f6}.mp-dropzone-content{align-items:center;display:flex;flex-direction:column;gap:6px}.mp-dropzone-icon{font-size:2.2rem}.mp-dropzone-label{color:#1e293b;font-size:.95rem;font-weight:600}.mp-dropzone-hint{color:#94a3b8;font-size:.8rem}.mp-json-textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:monospace;font-size:.85rem;outline:none;padding:10px 12px;resize:vertical;width:100%}.mp-json-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.mp-notice{border-radius:6px;font-size:.85rem;font-weight:500;padding:10px 12px}.mp-notice.success{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.mp-notice.error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.mp-template-downloads{align-items:center;color:#64748b;display:flex;font-size:.82rem;gap:8px;padding-top:4px}.mp-link-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.82rem;font-weight:600;padding:0;text-decoration:underline}.mp-link-btn:hover{color:#1d4ed8}.mp-modal-footer{align-items:center;background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:14px 22px}.mp-modal-action-group{align-items:center;display:flex;gap:10px}.create-assessment-container{margin:0 auto;max-width:1200px;padding:24px;width:100%}.assessment-header{margin-bottom:32px}.assessment-header h2{align-items:center;color:#1e293b;display:flex;font-size:1.8rem;font-weight:700;gap:12px;margin:0 0 8px}.assessment-header p{color:#64748b;font-size:1rem;margin:0}.assessment-form-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:32px}.form-section{margin-bottom:32px}.form-section h3{border-bottom:2px solid #f1f5f9;color:#1e293b;font-size:1.1rem;font-weight:700;margin:0 0 16px;padding-bottom:8px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-group{gap:8px}.form-group label{font-size:.9rem}.form-input,.form-select{border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;padding:12px 16px;transition:all .2s ease}.form-input:focus,.form-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:0}.create-status{align-items:flex-start;border-radius:8px;display:flex;gap:12px;margin:24px 0;padding:16px}.create-status.success{background:#d1fae5;border:1px solid #a7f3d0}.create-status.error{background:#fee2e2;border:1px solid #fca5a5}.create-status span{flex-shrink:0;font-size:1.5rem}.create-status p{font-size:.95rem;font-weight:600;margin:0}.create-status.success p{color:#065f46}.create-status.error p{color:#991b1b}.form-actions{border-top:2px solid #f1f5f9;gap:16px;margin-top:32px;padding-top:24px}.btn-create,.btn-preview{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:700;padding:14px 32px;transition:all .2s ease}.btn-preview{background:#f1f5f9;color:#475569;flex:1 1}.btn-preview:hover:not(:disabled){background:#e2e8f0}.btn-create{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex:2 1}.btn-create:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-create:disabled,.btn-preview:disabled{cursor:not-allowed;opacity:.5}.preview-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:32px;padding:24px}.preview-section h3{color:#1e293b;font-size:1rem;font-weight:700;margin:0 0 16px}.preview-questions{display:flex;flex-direction:column;gap:12px}.preview-question{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;font-size:.9rem;padding:12px}.preview-question strong{color:#1e293b}.preview-more{color:#94a3b8;font-size:.85rem;font-style:italic;margin-top:8px;text-align:center}@media (max-width:768px){.create-assessment-container{padding:16px}.assessment-form-card{padding:20px}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-create,.btn-preview{width:100%}}.assessment-mode-switch{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px;padding:14px 18px}.assessment-mode-current{display:flex;flex-direction:column;gap:2px}.assessment-mode-current strong{color:#1e293b;font-size:.92rem}.assessment-mode-current span{color:#64748b;font-size:.83rem}.btn-switch-manual{background:#fff;border:2px solid #667eea;border-radius:8px;color:#4c51bf;cursor:pointer;flex-shrink:0;font-size:.9rem;font-weight:700;padding:10px 18px;transition:background .2s ease,transform .2s ease}.btn-switch-manual:hover{background:#eef2ff;transform:translateY(-1px)}@media (max-width:640px){.assessment-mode-switch{align-items:stretch;flex-direction:column}.btn-switch-manual{width:100%}}.teacher-groups-container{margin:0 auto;max-width:1400px;padding:20px}.classes-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px;padding:0 10px}.header-content h2{color:#1a202c;font-size:32px;font-weight:700;margin:0 0 8px}.header-content p{color:#718096;font-size:16px;margin:0}.create-class-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;padding:14px 28px;transition:all .3s ease}.create-class-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.btn-icon{font-size:18px}.create-first-class-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s ease}.create-first-class-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.classes-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:20px}.class-card{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .3s ease}.class-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.class-card-header{justify-content:space-between;padding:20px 20px 0}.class-card-header,.class-icon{align-items:center;display:flex}.class-icon{animation:gradientShift 5s ease infinite;background:linear-gradient(135deg,#f093fb,#f5576c 20%,#f093fb 40%,#f5576c 60%,#f093fb 80%,#f5576c);background-size:200% 200%;border-radius:16px;font-size:48px;height:80px;justify-content:center;width:80px}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.class-actions{display:flex;gap:8px}.icon-btn{background:#f7fafc;border:none;border-radius:8px;cursor:pointer;font-size:16px;height:36px;transition:all .2s ease;width:36px}.icon-btn:hover{background:#e2e8f0;transform:scale(1.1)}.icon-btn.delete:hover{background:#fff5f5;color:#e53e3e}.class-card-body{cursor:pointer;padding:20px}.class-name{color:#1a202c;font-size:20px;font-weight:700;margin:0 0 12px}.class-meta{display:flex;gap:16px;margin-bottom:12px}.meta-item{align-items:center;color:#718096;display:flex;font-size:14px;gap:6px}.meta-icon{font-size:16px}.class-schedule{align-items:center;background:#edf2f7;border-radius:8px;color:#2d3748;display:flex;font-size:14px;gap:8px;padding:8px 12px}.schedule-icon{font-size:16px}.class-card-footer{background:#f7fafc;border-top:1px solid #e2e8f0;justify-content:space-between;padding:16px 20px}.class-card-footer,.class-stat{align-items:center;display:flex}.class-stat{flex-direction:column}.stat-value{color:#667eea;font-size:24px}.stat-label{font-size:12px}.view-class-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.view-class-btn:hover{background:#5568d3;transform:translateX(4px)}.create-class-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:85vh;max-width:600px;overflow-y:auto;width:90%}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.form-group.full-width{grid-column:1/-1}.form-group input,.form-group select,.form-group textarea{font-size:14px;padding:12px 16px;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group textarea{min-height:80px}.checkbox-label{align-items:center;background:#f7fafc;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.checkbox-label:hover{background:#edf2f7}.checkbox-label input[type=checkbox]{cursor:pointer;height:20px;width:20px}.checkbox-label span{color:#2d3748;font-size:14px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-primary:disabled{background:#cbd5e0}.btn-primary.full-width{width:100%}.class-code-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%}.code-description{color:#2d3748;font-size:16px;margin:0 0 24px;text-align:center}.class-code-display{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;margin-bottom:24px;padding:28px;text-align:center}.code-value{color:#fff;font-family:Courier New,monospace;font-size:48px;font-weight:800;letter-spacing:8px;margin-bottom:16px}.copy-code-btn{background:#fff;border:none;border-radius:8px;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.copy-code-btn:hover{box-shadow:0 4px 12px #0003;transform:scale(1.05)}.code-instructions{background:#f7fafc;border-radius:12px;padding:20px}.code-instructions h4{color:#1a202c;font-size:16px;font-weight:700;margin:0 0 12px}.code-instructions ol{margin:0;padding-left:24px}.code-instructions li{color:#2d3748;font-size:14px;line-height:1.8;margin-bottom:8px}.code-instructions strong{color:#667eea;font-weight:700}.class-details-container{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden}.details-header .back-btn{align-items:center;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;margin-bottom:20px;padding:8px 16px;transition:all .2s ease}.details-header .back-btn:hover{background:#ffffff4d;transform:translateX(-4px)}.details-title h2{font-size:28px;font-weight:700;margin:0 0 12px}.details-meta{display:flex;flex-wrap:wrap;gap:12px}.meta-badge{background:#fff3;border-radius:8px;display:inline-block;font-size:13px;font-weight:600;padding:6px 12px}.tab-icon{font-size:18px}.details-content{padding:40px}.coming-soon-message{padding:60px 20px;text-align:center}.coming-soon-icon{font-size:80px;margin-bottom:24px}.coming-soon-message h3{color:#1a202c;font-size:24px;font-weight:700;margin:0 0 12px}.coming-soon-message p{color:#718096;font-size:16px;line-height:1.6;margin:0 auto;max-width:500px}@media (max-width:768px){.teacher-groups-container{padding:16px}.classes-header{align-items:flex-start;flex-direction:column;gap:16px}.header-content h2{font-size:26px}.create-class-btn{justify-content:center;width:100%}.classes-grid{grid-template-columns:1fr}.class-card-footer{flex-wrap:wrap;gap:12px}.view-class-btn{width:100%}.form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.details-tabs{flex-wrap:nowrap;overflow-x:auto}.tab-btn{font-size:13px;padding:12px 16px}.code-value{font-size:36px;letter-spacing:4px}}.groups-banner{align-items:center;border-radius:10px;display:flex;font-size:.9rem;font-weight:600;gap:12px;line-height:1.45;margin-bottom:16px;padding:14px 18px}.groups-banner-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.groups-banner-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.btn-inline-retry:hover:not(:disabled){background:#0000000d}.btn-inline-retry:disabled{cursor:not-allowed;opacity:.55}.groups-empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:48px 24px;text-align:center}.groups-empty h3{color:#1e293b;font-size:1.1rem;font-weight:800;margin:0 0 8px}.groups-empty p{color:#64748b;font-size:.9rem;margin:0}.groups-hint{color:#64748b;font-size:.85rem;line-height:1.5;margin:0 0 14px}.form-hint{display:block;font-size:.78rem;margin-top:6px}.roster-section{padding:4px}.roster-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.roster-header h3{color:#1e293b;font-size:1.05rem;font-weight:800;margin:0}.enroll-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.enroll-row input{border:1px solid #d1d5db;border-radius:8px;flex:1 1 220px;font-size:.9rem;min-width:0;padding:10px 14px}.enroll-row input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;outline:none}.enroll-row .enroll-roll{flex:0 1 160px}.enroll-row .btn-primary{flex:0 0 auto;white-space:nowrap}.roster-table{background:#fff;border-collapse:collapse;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden;width:100%}.roster-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:.78rem;font-weight:800;letter-spacing:.04em;padding:12px 16px;text-align:left;text-transform:uppercase}.roster-table td{border-bottom:1px solid #f1f5f9;color:#1e293b;font-size:.9rem;padding:12px 16px}.roster-table tbody tr:last-child td{border-bottom:none}.roster-table tbody tr:hover{background:#f8fafc}.roster-table .roster-id{color:#64748b;font-size:.82rem;word-break:break-all}@media (max-width:768px){.enroll-row .btn-primary,.enroll-row .enroll-roll,.enroll-row input{flex:1 1 100%}.roster-table{display:block;overflow-x:auto}}.class-progress-container{margin:0 auto;max-width:1400px;padding:24px;width:100%}.progress-header{margin-bottom:24px}.progress-header h2{align-items:center;color:#1e293b;display:flex;font-size:1.8rem;font-weight:700;gap:12px;margin:0 0 8px}.progress-header p{color:#64748b;font-size:1rem;margin:0}.progress-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.control-group{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:200px}.control-group label{color:#475569;font-size:.9rem;font-weight:600}.form-select{border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;padding:12px 16px}.btn-export{background:#48bb78;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:12px 24px;white-space:nowrap}.btn-export:hover:not(:disabled){background:#38a169}.btn-export:disabled{cursor:not-allowed;opacity:.5}.loading-spinner{color:#667eea;font-weight:600;padding:40px;text-align:center}.students-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto;padding:24px}.students-table{border-collapse:collapse;width:100%}.students-table thead{background:#f8fafc}.students-table th{border-bottom:2px solid #e2e8f0;color:#475569;font-size:.85rem;font-weight:700;padding:12px 16px;text-align:left;text-transform:uppercase}.students-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.9rem;padding:16px}.students-table tbody tr:hover{background:#f8fafc}.score-badge{background:#e0f2fe;border-radius:20px;color:#0369a1;display:inline-block;padding:4px 12px}.grade-badge,.score-badge{font-size:.85rem;font-weight:700}.grade-badge{padding:6px 12px}.btn-view-details{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px}.btn-view-details:hover{background:#5568d3}.student-detail-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;max-height:80vh;max-width:600px;overflow-y:auto;padding:32px;position:relative;width:90%}.modal-close{background:none;color:#94a3b8;font-size:2rem;position:absolute;right:16px;top:16px}.modal-close:hover{color:#475569}.modal-content h3{color:#1e293b;font-size:1.3rem;font-weight:700;margin:0 0 24px}.detail-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.detail-stat{background:#f8fafc;border-radius:8px;padding:16px;text-align:center}.detail-stat span{color:#64748b;display:block;font-size:.85rem;margin-bottom:8px}.detail-stat strong{color:#1e293b;display:block;font-size:1.5rem;font-weight:800}.subject-breakdown{margin-top:24px}.subject-breakdown h4{color:#1e293b;font-size:1rem;font-weight:700;margin:0 0 16px}.subject-item{background:#f8fafc;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px}.subject-item span:first-child{color:#475569;font-weight:600}.subject-item span:last-child{color:#1e293b;font-weight:700}@media (max-width:768px){.progress-controls{align-items:stretch;flex-direction:column}.control-group{min-width:auto}.students-table{font-size:.8rem}.students-table td,.students-table th{padding:10px 8px}}.progress-banner-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.progress-cell-error{background:#fef2f2;color:#991b1b;font-weight:600;padding:18px;text-align:center}.progress-cell-empty{color:#94a3b8;padding:18px;text-align:center}.progress-cell-error .btn-inline-retry{margin-left:12px}.grade-badge-nodata,.score-badge-nodata{background:#f1f5f9!important;color:#94a3b8!important}.progress-hint{color:#94a3b8;font-size:.85rem;font-style:italic;margin:0}.progress-card-container{margin:0 auto;max-width:1400px;padding:24px;width:100%}.progress-card-toolbar{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.progress-card-toolbar .header-content h2{align-items:center;color:#1e293b;display:flex;font-size:1.8rem;font-weight:700;gap:12px;margin:0 0 8px}.progress-card-toolbar .header-content p{color:#64748b;font-size:1rem;margin:0}.btn-print{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:12px 24px;white-space:nowrap}.btn-print:hover:not(:disabled){background:#5568d3}.btn-print:disabled{cursor:not-allowed;opacity:.5}.progress-card-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.progress-card-controls .control-group{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:200px}.progress-card-controls label{color:#475569;font-size:.9rem;font-weight:600}.progress-card-controls select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;padding:12px 16px}.progress-cards-stack{display:flex;flex-direction:column;gap:24px}.progress-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:28px}.progress-card-header{align-items:flex-start;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.progress-card-header h3{color:#1e293b;font-size:1.4rem;font-weight:800;margin:0 0 4px}.progress-card-meta{color:#64748b;font-size:.9rem;margin:0}.progress-card-overall{align-items:center;display:flex;gap:12px}.progress-card-avg{color:#1e293b;font-size:1.4rem;font-weight:800}.progress-card-notes{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:16px;padding:12px 16px}.progress-card-notes p{color:#92400e;font-size:.85rem;margin:4px 0}.progress-card-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(5,1fr);margin-bottom:20px}.progress-stat{background:#f8fafc;border-radius:8px;padding:14px;text-align:center}.progress-stat span{color:#64748b;display:block;font-size:.78rem;margin-bottom:6px}.progress-stat strong{color:#1e293b;display:block;font-size:1.15rem;font-weight:800}.progress-card-section{margin-top:20px}.progress-card-section h4{color:#1e293b;font-size:1rem;font-weight:700;margin:0 0 12px}.progress-subjects-table{border-collapse:collapse;width:100%}.progress-subjects-table th{border-bottom:2px solid #e2e8f0;color:#475569;font-size:.8rem;font-weight:700;padding:8px 12px;text-align:left;text-transform:uppercase}.progress-subjects-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.9rem;padding:10px 12px}.progress-card-hint{color:#94a3b8;font-size:.9rem;font-style:italic;margin-top:12px}.progress-card-feedback-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.progress-card-feedback-list li{background:#f8fafc;border-radius:8px;padding:12px 16px}.progress-card-feedback-list strong{color:#1e293b}.feedback-subject{color:#64748b;font-size:.85rem}.progress-card-feedback-list p{color:#475569;font-size:.9rem;margin:6px 0 0}.progress-card-footer{border-top:1px solid #f1f5f9;color:#94a3b8;font-size:.8rem;margin-top:20px;padding-top:12px;text-align:right}.grade-badge{border-radius:8px;display:inline-block;font-size:1rem;font-weight:800;padding:6px 14px}.grade-badge.grade-A{background:#d1fae5;color:#065f46}.grade-badge.grade-B{background:#dbeafe;color:#1e40af}.grade-badge.grade-C{background:#fef3c7;color:#92400e}.grade-badge.grade-D{background:#fed7aa;color:#9a3412}.grade-badge.grade-F{background:#fee2e2;color:#991b1b}.grade-badge-nodata{background:#f1f5f9;border-radius:8px;color:#94a3b8;display:inline-block;font-weight:700;padding:6px 14px}.progress-empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:48px 24px;text-align:center}.progress-empty h3{color:#1e293b;font-size:1.1rem;font-weight:800;margin:0 0 8px}.progress-empty p{color:#64748b;font-size:.9rem;margin:0}.progress-banner{align-items:center;border-radius:10px;display:flex;font-size:.9rem;font-weight:600;gap:12px;line-height:1.45;margin-bottom:16px;padding:14px 18px}.progress-banner-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}@media print{.no-print{display:none!important}.progress-card{break-inside:avoid;margin-bottom:24px;page-break-inside:avoid}}@media (max-width:768px){.progress-card-stats{grid-template-columns:repeat(2,1fr)}.progress-card-controls{align-items:stretch;flex-direction:column}}.feedback-container{margin:0 auto;max-width:1400px;padding:24px;width:100%}.feedback-header{margin-bottom:24px}.feedback-header h2{align-items:center;color:#1e293b;display:flex;font-size:1.8rem;font-weight:700;gap:12px;margin:0 0 8px}.feedback-header p{color:#64748b;font-size:1rem;margin:0}.feedback-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:minmax(360px,1fr) minmax(360px,1.1fr)}.feedback-form{background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:16px;padding:24px}.feedback-form h3{color:#1e293b;font-size:1.15rem;font-weight:800;margin:0}.form-row{display:flex;flex-wrap:wrap;gap:16px}.form-group{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:160px}.form-group.full-width{flex:1 1 100%}.form-group label{color:#475569;font-size:.85rem}.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:.95rem;padding:10px 14px}.form-group textarea{resize:vertical}.form-hint{align-self:flex-end;color:#94a3b8;font-size:.75rem}.form-checkbox{align-items:center;color:#334155;cursor:pointer;display:flex;font-size:.9rem;gap:10px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.btn-primary{background:#667eea;border:none;border-radius:8px;cursor:pointer;font-weight:700;padding:12px 28px}.btn-primary:hover:not(:disabled){background:#5568d3}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#f1f5f9;border:none;border-radius:8px;color:#475569;cursor:pointer;font-weight:700;padding:12px 24px}.btn-secondary:hover:not(:disabled){background:#e2e8f0}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.feedback-history{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.feedback-history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.feedback-history-header h3{color:#1e293b;font-size:1.15rem;font-weight:800;margin:0}.feedback-list{display:flex;flex-direction:column;gap:14px;list-style:none;margin:0;max-height:640px;overflow-y:auto;padding:0}.feedback-list-item{background:#f8fafc;border-radius:10px;padding:16px}.feedback-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.feedback-list-header strong{color:#1e293b;font-size:.95rem}.feedback-visibility-tag{background:#e2e8f0;border-radius:999px;color:#475569;font-size:.72rem;font-weight:700;padding:3px 10px;text-transform:capitalize}.feedback-visibility-tag.visibility-teacher_only{background:#fef3c7;color:#92400e}.feedback-list-title{color:#334155;font-size:.9rem;font-weight:700;margin:0 0 4px}.feedback-list-body{color:#475569;font-size:.9rem;line-height:1.5;margin:0}.feedback-list-footer{align-items:center;color:#94a3b8;display:flex;flex-wrap:wrap;font-size:.78rem;gap:10px;margin-top:10px}.feedback-sent-ok{color:#065f46;font-weight:700}.feedback-sent-warn{color:#92400e;font-weight:700}.btn-list-delete{background:#0000;border:none;border-radius:6px;cursor:pointer;font-size:.95rem;margin-left:auto;padding:2px 6px}.btn-list-delete:hover{background:#fee2e2}.feedback-empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:48px 24px;text-align:center}.feedback-empty h3{color:#1e293b;font-size:1.1rem;font-weight:800;margin:0 0 8px}.feedback-empty p{color:#64748b;font-size:.9rem;margin:0}.feedback-banner{align-items:center;border-radius:10px;display:flex;font-size:.9rem;font-weight:600;gap:12px;line-height:1.45;margin-bottom:16px;padding:14px 18px}.feedback-banner-ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.feedback-banner-warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.feedback-banner-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.btn-inline-retry{background:#0000;border:1px solid;border-radius:6px;color:inherit;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:700;margin-left:auto;padding:6px 14px}.btn-inline-retry:hover{background:#0000000d}.loading-state{color:#667eea;padding:60px 24px}.loading-state .spinner{animation:progress-spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:36px;margin:0 auto 16px;width:36px}@keyframes progress-spin{to{transform:rotate(1turn)}}@media (max-width:1024px){.feedback-layout{grid-template-columns:1fr}}@media (max-width:768px){.form-row{flex-direction:column}}.fees-manager-container{color:#1e293b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;margin:0 auto;max-width:1300px;padding:24px}.fees-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.fees-title-group h2{align-items:center;color:#0f172a;display:flex;font-size:1.65rem;font-weight:700;gap:10px;margin:0}.fees-subtitle{color:#64748b;font-size:.95rem;margin:6px 0 0}.fees-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:24px}.fees-stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 8px #0000000a;display:flex;gap:16px;padding:18px 20px}.fees-stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.fees-stat-icon.billed{background:#eff6ff;color:#2563eb}.fees-stat-icon.collected{background:#ecfdf5;color:#059669}.fees-stat-icon.due{background:#fef2f2;color:#dc2626}.fees-stat-icon.discount{background:#fef3c7;color:#d97706}.fees-stat-info .stat-label{color:#64748b;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.fees-stat-info .stat-value{color:#0f172a;font-size:1.4rem;font-weight:800;margin-top:4px}.fees-nav-tabs{background:#f1f5f9;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding:6px}.fees-tab-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.92rem;font-weight:600;gap:8px;padding:10px 18px;transition:all .2s ease}.fees-tab-btn:hover{background:#ffffff80;color:#1e293b}.fees-tab-btn.active{background:#fff;box-shadow:0 2px 6px #00000014;color:#3b82f6}.fees-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:14px;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.fees-filters,.fees-toolbar{align-items:center;display:flex;flex-wrap:wrap}.fees-filters{gap:12px}.fees-input,.fees-select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#1e293b;font-size:.9rem;outline:none;padding:9px 14px;transition:border-color .2s}.fees-input:focus,.fees-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.btn-fee-primary{align-items:center;background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;padding:9px 18px;transition:background .2s}.btn-fee-primary:hover{background:#1d4ed8}.btn-fee-secondary{align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:6px;padding:9px 16px;transition:all .2s}.btn-fee-secondary:hover{background:#f1f5f9;border-color:#94a3b8}.fees-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.fees-table{border-collapse:collapse;text-align:left;width:100%}.fees-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:.8rem;font-weight:700;padding:14px 16px;text-transform:uppercase}.fees-table td{border-bottom:1px solid #f1f5f9;color:#1e293b;font-size:.9rem;padding:14px 16px;vertical-align:middle}.fees-table tr:hover td{background:#f8fafc}.fee-badge{border-radius:20px;display:inline-block;font-size:.75rem;font-weight:700;padding:4px 10px;text-transform:uppercase}.fee-badge.paid{background:#dcfce7;color:#15803d}.fee-badge.partially_paid{background:#e0e7ff;color:#4338ca}.fee-badge.pending{background:#fef3c7;color:#b45309}.fee-badge.overdue{background:#fee2e2;color:#b91c1c}.fee-badge.waived{background:#f1f5f9;color:#64748b}.discount-tag{align-items:center;background:#fffbeb;border:1px solid #fef08a;border-radius:6px;color:#b45309;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;padding:2px 8px}.fees-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.fees-modal{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:650px;overflow-y:auto;width:100%}.fees-modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.fees-modal-header h3{color:#0f172a;font-size:1.25rem;margin:0}.fees-modal-close{background:#0000;border:none;color:#94a3b8;cursor:pointer;font-size:1.5rem;line-height:1}.fees-modal-body{padding:24px}.fees-form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.fees-form-group{margin-bottom:16px}.fees-form-group.full-width{grid-column:span 2}.fees-form-group label{color:#334155;display:block;font-size:.85rem;font-weight:600;margin-bottom:6px}.fees-form-group input,.fees-form-group select,.fees-form-group textarea{box-sizing:border-box;width:100%}.fees-modal-footer{background:#f8fafc;border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.receipt-card{background:#fff;border:2px dashed #cbd5e1;border-radius:12px;padding:24px}.receipt-header{border-bottom:1px solid #e2e8f0;margin-bottom:16px;padding-bottom:16px;text-align:center}.receipt-grid{grid-gap:12px;display:grid;font-size:.9rem;gap:12px;grid-template-columns:1fr 1fr}@media print{.fees-modal-footer,.fees-nav-tabs,.fees-toolbar,.no-print{display:none!important}.receipt-card{border:none!important;padding:0!important}}.role-dashboard{animation:fadeIn .3s ease-in;width:100%}.dashboard-nav-tabs{display:flex;gap:12px;margin-bottom:24px;overflow-x:auto;padding-bottom:4px}.nav-tab{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .2s ease;white-space:nowrap}.nav-tab:hover{border-color:#667eea;color:#667eea;transform:translateY(-2px)}.nav-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.back-to-overview-btn{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;color:#2d3748;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;margin-bottom:20px;padding:10px 20px;transition:all .2s ease}.back-to-overview-btn:hover{background:#edf2f7;border-color:#cbd5e0;transform:translateX(-4px)}.dashboard-stats-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#991b1b;display:flex;font-size:.9rem;font-weight:600;gap:12px;line-height:1.45;margin-bottom:20px;padding:14px 18px}.dashboard-stats-error .btn-inline-retry{background:#0000;border:1px solid;border-radius:6px;color:inherit;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:700;margin-left:auto;padding:6px 14px}.dashboard-stats-error .btn-inline-retry:hover{background:#0000000d}.dashboard-welcome{align-items:center;color:#1a202c;display:flex;font-size:28px;font-weight:700;gap:12px;margin:0 0 8px}.welcome-icon{font-size:32px}.dashboard-description{color:#718096;font-size:14px;margin:0 0 32px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:32px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:16px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-4px)}.stat-info{flex:1 1}.stat-label{font-size:14px}.quick-actions-section{background:#f7fafc;border-radius:12px;padding:24px}.quick-actions-section h3{color:#1a202c;font-size:18px;font-weight:600;margin:0 0 20px}.action-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.action-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#2d3748;cursor:pointer;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:12px;justify-content:center;padding:24px 16px;transition:all .2s ease}.action-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33;transform:translateY(-4px)}.action-icon{font-size:32px}.modal-overlay{background:#0009;overflow-y:auto;padding:20px;z-index:9999}.modal-content-large{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;margin-bottom:20px;margin-top:20px;max-height:85vh;max-width:900px;overflow-y:auto;position:relative;width:90%}.modal-close-btn{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer;display:flex;float:right;font-size:20px;height:36px;justify-content:center;position:sticky;right:12px;top:12px;transition:all .2s ease;width:36px;z-index:10}.modal-close-btn:hover{background:#e53e3e;border-color:#e53e3e;color:#fff;transform:rotate(90deg)}@media (max-width:768px){.stats-grid{grid-template-columns:1fr}.action-grid{grid-template-columns:repeat(2,1fr)}.modal-content-large{margin:10px;max-height:90vh;width:95%}.modal-overlay{padding:10px}}@media (max-width:480px){.modal-content-large{border-radius:12px;max-height:95vh;width:100%}}.district-executive-hero{background:linear-gradient(135deg,#090d16,#0f172a 40%,#1e1b4b);border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 10px 25px -5px #0f172a40,0 8px 10px -6px #0f172a33;color:#fff;margin-bottom:24px;overflow:hidden;padding:32px;position:relative}.district-hero-glow{background:radial-gradient(circle,#6366f140 0,#6366f100 70%);height:260px;pointer-events:none;position:absolute;right:-60px;top:-60px;width:260px}.district-badge-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.district-gold-pill{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #d9770659;color:#fff;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.district-code-pill,.district-gold-pill{border-radius:20px;font-size:.75rem;padding:4px 12px}.district-code-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border:1px solid #fff3;color:#e2e8f0;font-weight:600}.district-branch-count-pill{background:#38bdf833;border:1px solid #38bdf84d;border-radius:20px;color:#38bdf8;font-size:.75rem;font-weight:700;padding:4px 12px}.district-hero-title{color:#fff;font-size:2rem;font-weight:800;letter-spacing:-.5px;margin:0 0 8px}.district-hero-subtitle{color:#cbd5e1;font-size:.95rem;line-height:1.5;margin:0 0 24px;max-width:650px}.district-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.district-action-btn-primary{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 4px 12px #2563eb4d;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:700;gap:8px;padding:10px 20px;transition:all .2s ease}.district-action-btn-primary:hover{box-shadow:0 6px 16px #2563eb66;transform:translateY(-2px)}.district-action-btn-secondary{align-items:center;background:#ffffff1a;border:1px solid #ffffff40;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 18px;transition:all .2s ease}.district-action-btn-secondary:hover{background:#fff3;transform:translateY(-2px)}.district-kpi-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:28px}.district-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 6px #0000000a;overflow:hidden;padding:20px;position:relative;transition:all .2s ease}.district-kpi-card:hover{border-color:#cbd5e1;box-shadow:0 8px 18px #00000014;transform:translateY(-3px)}.district-kpi-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.district-kpi-label{color:#64748b;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.district-kpi-icon-bubble{align-items:center;border-radius:10px;display:flex;font-size:1.25rem;height:40px;justify-content:center;width:40px}.district-kpi-val{color:#0f172a;font-size:2.1rem;font-weight:800;line-height:1.1;margin-bottom:4px}.district-kpi-foot{align-items:center;color:#64748b;display:flex;font-size:.8rem;gap:6px}.district-campuses-section{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 6px #0000000a;margin-bottom:28px;padding:24px}.district-campuses-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:18px}.district-campus-cards-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.district-campus-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:18px;transition:all .2s ease}.district-campus-card:hover{background:#fff;border-color:#3b82f6;box-shadow:0 6px 16px #3b82f61f;transform:translateY(-2px)}.district-campus-name{color:#1e293b;font-size:1.05rem;font-weight:700;margin:0 0 6px}.district-campus-meta{color:#64748b;font-size:.82rem;line-height:1.4;margin-bottom:12px}.district-campus-footer{align-items:center;border-top:1px solid #e2e8f0;display:flex;font-size:.82rem;justify-content:space-between;padding-top:12px}.role-dashboard-container{background:#f8fafc;display:flex;min-height:calc(100vh - 60px);width:100%}.role-sidebar{background:#fff;border-right:1px solid #e2e8f0;box-shadow:2px 0 8px #00000005;display:flex;flex-direction:column;flex-shrink:0;height:calc(100vh - 60px);max-width:275px;min-width:275px;overflow-y:auto;position:sticky;top:0;width:275px;z-index:10}.role-sidebar::-webkit-scrollbar{width:5px}.role-sidebar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.sidebar-navigation{display:flex!important;flex-direction:column!important;gap:4px;padding:12px 10px}.sidebar-link{align-items:center;background:#0000;border:none;border-radius:8px;box-sizing:border-box;color:#475569;cursor:pointer;display:flex;font-size:.88rem;font-weight:500;gap:10px;line-height:1.3;padding:10px 14px;text-align:left;transition:all .15s ease-in-out;white-space:nowrap;width:100%}.sidebar-link .icon{align-items:center;display:inline-flex;flex-shrink:0;font-size:1.15rem;justify-content:center;width:22px}.sidebar-link:hover{background:#f1f5f9;color:#1e293b;transform:translateX(2px)}.sidebar-link.active{background:linear-gradient(135deg,#4f46e5,#3b82f6);box-shadow:0 4px 12px #4f46e540;color:#fff;font-weight:600}.sidebar-link.active .icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.role-main-content{background:#f8fafc;flex:1 1;min-width:0;overflow-y:auto;padding:24px 32px}@media (max-width:900px){.role-dashboard-container{flex-direction:column}.role-sidebar{border-bottom:1px solid #e2e8f0;border-right:none;height:auto;max-width:100%;position:static;width:100%}.role-main-content{padding:16px}}.parent-dashboard-container{margin:0 auto;max-width:1400px;padding:20px}.parent-dashboard-header{margin-bottom:32px;text-align:center}.parent-dashboard-header h2{color:#1a202c;font-size:32px;font-weight:700;margin:0 0 8px}.parent-dashboard-header p{color:#718096;font-size:16px;margin:0}.loading-state{padding:80px 20px}.loading-state p{color:#718096;font-size:16px;margin:0}.empty-state{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:80px 20px}.empty-icon{font-size:80px;margin-bottom:24px}.empty-state h3{color:#1a202c;font-size:24px;font-weight:700;margin:0 0 12px}.empty-state p{color:#718096;font-size:16px;margin:0 0 28px}.plan-limit-info{background:#f0f4ff;border-radius:8px;color:#667eea!important;display:inline-block;font-size:14px!important;font-weight:600!important;margin:0 0 24px!important;padding:8px 16px}.add-first-child-btn{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:12px;box-shadow:0 4px 12px #48bb784d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s ease}.add-first-child-btn:hover{box-shadow:0 6px 20px #48bb7866;transform:translateY(-2px)}.child-selector-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.selector-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.selector-header h3{color:#1a202c;font-size:20px;font-weight:700;margin:0}.add-child-btn{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.add-child-btn:hover:not(:disabled){box-shadow:0 4px 12px #48bb784d;transform:translateY(-2px)}.add-child-btn.disabled,.add-child-btn:disabled{background:#cbd5e0;cursor:not-allowed;opacity:.6}.add-child-btn.disabled:hover,.add-child-btn:disabled:hover{box-shadow:none;transform:none}.children-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.child-card{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;gap:16px;padding:16px;transition:all .2s ease}.child-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.child-card.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.child-avatar{flex-shrink:0;height:56px;width:56px}.avatar-placeholder{align-items:center;background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:50%;color:#fff;display:flex;font-size:20px;font-weight:700;height:56px;justify-content:center;width:56px}.child-card.active .avatar-placeholder{background:#ffffff4d}.child-info{flex:1 1}.child-info h4{color:inherit;font-size:16px;font-weight:700;margin:0 0 4px}.child-info p{font-size:13px;margin:0;opacity:.8}.child-progress-badge{flex-shrink:0}.progress-circle{height:52px;width:52px}.progress-circle,.progress-inner{align-items:center;border-radius:50%;display:flex;justify-content:center}.progress-inner{background:#fff;color:#1a202c;font-size:13px;font-weight:700;height:40px;width:40px}.child-card.active .progress-inner{background:#fffffff2}.child-details-container{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden}.details-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:28px}.child-name-section{align-items:center;display:flex;gap:20px}.large-avatar{height:80px;width:80px}.avatar-placeholder-large{align-items:center;background:#ffffff4d;border-radius:50%;color:#fff;display:flex;font-size:32px;font-weight:700;height:80px;justify-content:center;width:80px}.name-details h3{font-size:28px;font-weight:700;margin:0 0 8px}.name-details p{font-size:15px;margin:0;opacity:.9}.details-tabs{background:#f7fafc;border-bottom:2px solid #e2e8f0;display:flex;overflow-x:auto}.tab-btn{align-items:center;display:flex;gap:8px;padding:16px 24px;white-space:nowrap}.tab-btn:hover{background:#667eea0d}.tab-btn.active{background:#fff}.details-content{padding:28px}.performance-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:28px}.perf-stat-card{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:20px;transition:all .2s ease}.perf-stat-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.stat-icon{align-items:center;border-radius:12px;display:flex;font-size:28px;height:56px;justify-content:center;width:56px}.stat-details{flex:1 1}.stat-value{color:#1a202c;font-size:28px;font-weight:800;margin-bottom:4px}.stat-label{font-size:13px;font-weight:600}.strengths-improvements-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:28px}.improvement-card,.strength-card{border:2px solid #e2e8f0;border-radius:12px;padding:20px}.strength-card{background:linear-gradient(135deg,#f0fff4,#c6f6d5);border-color:#48bb78}.improvement-card{background:linear-gradient(135deg,#fffaf0,#feebc8);border-color:#ed8936}.improvement-card h3,.strength-card h3{color:#1a202c;font-size:16px;font-weight:700;margin:0 0 16px}.subject-tags{display:flex;flex-wrap:wrap;gap:8px}.subject-tag{border-radius:8px;font-size:14px;font-weight:600;padding:8px 16px}.subject-tag.success{background:#48bb78;color:#fff}.subject-tag.warning{background:#ed8936;color:#fff}.recent-activity-section{background:#f7fafc;border-radius:12px;margin-bottom:28px;padding:24px}.recent-activity-section h3{color:#1a202c;font-size:18px;font-weight:700;margin:0 0 20px}.activity-timeline{display:flex;flex-direction:column;gap:16px}.activity-item{background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:16px}.activity-date{background:#edf2f7;border-radius:8px;color:#667eea;font-size:13px;font-weight:700;height:fit-content;min-width:60px;padding:8px;text-align:center}.activity-header{color:#718096;display:flex;font-size:13px;gap:8px;margin-bottom:6px}.activity-type{color:#667eea;font-weight:600}.activity-title{color:#1a202c;font-size:15px;font-weight:600;margin-bottom:6px}.activity-score{font-size:14px;font-weight:700}.upcoming-assignments-section{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:24px}.upcoming-assignments-section h3{color:#1a202c;font-size:18px;font-weight:700;margin:0 0 20px}.no-assignments{color:#48bb78;font-size:16px;padding:40px;text-align:center}.assignments-list{display:flex;flex-direction:column;gap:12px}.assignment-item{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:16px}.assignment-due-date{align-items:center;display:flex;gap:12px;min-width:120px}.due-icon{font-size:24px}.due-text{display:flex;flex-direction:column}.due-label{color:#718096;font-size:11px;font-weight:600;text-transform:uppercase}.due-value{color:#1a202c;font-size:14px;font-weight:700}.assignment-details{flex:1 1}.assignment-subject{color:#667eea;font-size:12px;font-weight:600;margin-bottom:4px}.assignment-title{color:#1a202c;font-size:15px;font-weight:600}.assignment-status{border-radius:8px;font-size:13px;font-weight:700;padding:8px 16px}.assignment-status.pending{background:#feebc8;color:#c05621}.progress-content{padding:20px}.progress-chart-placeholder{background:#f7fafc;border-radius:12px;padding:40px;text-align:center}.progress-chart-placeholder h3{color:#1a202c;font-size:20px;font-weight:700;margin:0 0 12px}.coming-soon-text{color:#718096;font-size:15px;margin:0 0 28px}.chart-mockup{margin:0 auto;max-width:600px}.chart-bars{align-items:flex-end;display:flex;gap:20px;height:200px;justify-content:space-around;margin-bottom:12px}.chart-bar{animation:barGrow .8s ease;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:8px 8px 0 0;flex:1 1;min-height:20px}@keyframes barGrow{0%{height:0}to{height:var(--height)}}.chart-labels{color:#718096;display:flex;font-size:13px;font-weight:600;gap:20px;justify-content:space-around}.reports-content{padding:20px}.reports-header{margin-bottom:32px;text-align:center}.reports-header h3{color:#1a202c;font-size:24px;font-weight:700;margin:0 0 8px}.reports-header p{color:#718096;font-size:15px;margin:0}.report-types-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.report-type-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:28px;text-align:center;transition:all .2s ease}.report-type-card:hover{border-color:#667eea;box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.report-icon{font-size:48px;margin-bottom:16px}.report-type-card h4{color:#1a202c;font-size:18px;font-weight:700;margin:0 0 8px}.report-type-card p{color:#718096;font-size:14px;margin:0 0 20px}.download-report-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.download-report-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.messages-content{padding:40px}.messages-placeholder{background:#f7fafc;border-radius:12px;padding:60px 20px;text-align:center}.placeholder-icon{font-size:80px;margin-bottom:20px}.messages-placeholder h3{color:#1a202c;font-size:24px;font-weight:700;margin:0 0 12px}.messages-placeholder p{color:#718096;font-size:16px;margin:0 auto 24px;max-width:500px}.placeholder-btn{background:#cbd5e0;border:none;border-radius:8px;color:#718096;cursor:not-allowed;font-size:14px;font-weight:600;padding:12px 28px}.modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.add-child-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px 28px}.modal-header h2{color:#1a202c;font-size:24px;font-weight:700;margin:0}.modal-close{background:#f7fafc;border:none;border-radius:8px;cursor:pointer;font-size:20px;height:36px;transition:all .2s ease;width:36px}.modal-close:hover{background:#e2e8f0;transform:rotate(90deg)}.modal-body{padding:28px}.modal-description{color:#718096;font-size:15px;margin:0 0 24px}.limit-warning{align-items:center;background:#fef3cd;border:2px solid #fed766;border-radius:8px;color:#975a16;display:flex;font-size:14px;gap:8px;margin:0 0 20px;padding:12px 16px}.form-group{margin-bottom:20px}.form-group label{color:#2d3748;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input{border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .2s ease;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.helper-text{color:#718096;font-size:13px;line-height:1.6;margin:16px 0 0}.error-alert{background:#fed7d7;border:2px solid #fc8181;border-radius:8px;color:#9b2c2c;font-size:14px;margin:0 0 20px;padding:12px 16px}.error-message{color:#e53e3e;display:block;font-size:13px;margin-top:6px}.avatar-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr)}.avatar-option{align-items:center;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:10px 6px;transition:all .2s ease}.avatar-option:hover{background:#f7fafc;border-color:#a3bffa}.avatar-option.selected{background:#edf2ff;border-color:#667eea}.avatar-emoji{font-size:24px}.avatar-name{color:#718096;font-size:11px}.link-method-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:12px;margin:24px 0 16px}.tab-btn{background:#0000;border:none;border-bottom:3px solid #0000;bottom:-2px;color:#718096;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 16px;position:relative;transition:all .2s ease}.tab-btn.active,.tab-btn:hover{background:#f7fafc;color:#667eea}.tab-btn.active{border-bottom-color:#667eea}.link-form{margin-top:20px}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 28px}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.btn-primary:hover{box-shadow:0 4px 12px #48bb784d;transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid #e2e8f0;color:#718096}.btn-secondary:hover{background:#f7fafc;border-color:#cbd5e0}@media (max-width:768px){.parent-dashboard-container{padding:16px}.parent-dashboard-header h2{font-size:26px}.children-cards{grid-template-columns:1fr}.child-name-section{flex-direction:column;text-align:center}.name-details h3{font-size:22px}.details-tabs{overflow-x:auto}.tab-btn{font-size:13px;padding:12px 16px}.details-content{padding:20px}.performance-stats-grid,.strengths-improvements-section{grid-template-columns:1fr}.activity-item,.assignment-item{flex-direction:column}.assignment-item{align-items:flex-start}.report-types-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.action-center-content{padding:20px}.action-center-header{margin-bottom:40px;text-align:center}.action-center-header h2{color:#2d3748;font-size:2rem;margin:0 0 10px}.action-center-header p{color:#718096;font-size:1.1rem;margin:0 0 20px}.action-stats{display:flex;gap:40px;justify-content:center;margin-top:20px}.action-stat{align-items:center;display:flex;flex-direction:column;gap:5px}.stat-number{color:#48bb78;font-size:2.5rem}.stat-label{color:#718096;letter-spacing:.5px;text-transform:uppercase}.action-section{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000000d;margin-bottom:40px;padding:30px}.section-header{border-bottom:2px solid #e2e8f0;margin-bottom:25px;padding-bottom:15px}.section-header h3{color:#2d3748;font-size:1.5rem;margin:0}.section-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:6px 16px;text-transform:uppercase}.daily-activity-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border:3px solid #f59e0b}.activity-card{background:#fff;border-radius:12px;display:flex;gap:20px;padding:25px;transition:all .3s}.activity-card.completed{background:#f7fafc;opacity:.7}.activity-icon{flex-shrink:0;font-size:3rem}.activity-content{flex:1 1}.activity-content h4{color:#2d3748;font-size:1.4rem;margin:0 0 10px}.activity-description{color:#4a5568;line-height:1.6;margin:0 0 15px}.activity-details{color:#718096;display:flex;font-size:.9rem;gap:20px;margin-bottom:15px}.activity-duration,.activity-materials{align-items:center;display:flex;gap:5px}.activity-instructions{background:#f7fafc;border-radius:8px;margin:15px 0;padding:15px}.activity-instructions strong{color:#2d3748;display:block;margin-bottom:8px}.activity-instructions p{color:#4a5568;line-height:1.6;margin:0;white-space:pre-line}.btn-complete-activity{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:15px;padding:12px 30px;transition:all .3s}.btn-complete-activity:hover{box-shadow:0 8px 16px #48bb784d;transform:translateY(-2px)}.completed-badge{background:#48bb78;border-radius:8px;color:#fff;display:inline-block;font-weight:600;margin-top:15px;padding:10px 20px}.questions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.question-card{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border:2px solid #0ea5e9;border-radius:12px;padding:20px;position:relative;transition:all .3s}.question-card:hover{box-shadow:0 8px 20px #0ea5e933;transform:translateY(-4px)}.question-card.completed{background:#f0f9ff;opacity:.6}.question-number{align-items:center;background:#0ea5e9;border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:700;height:32px;justify-content:center;left:20px;position:absolute;top:-12px;width:32px}.question-card h4{color:#0c4a6e;font-size:1.1rem;margin:10px 0}.question-card p{color:#475569;line-height:1.5;margin:10px 0}.question-tip{color:#64748b;font-size:.9rem;font-style:italic}.btn-complete-small{background:#0ea5e9;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:10px;padding:8px 20px;transition:all .2s}.btn-complete-small:hover{background:#0284c7;transform:scale(1.05)}.completed-check{color:#48bb78;display:inline-block;font-size:1.5rem;font-weight:700;margin-top:10px}.games-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.game-card{background:linear-gradient(135deg,#fce7f3,#fbcfe8);border:2px solid #ec4899;border-radius:12px;padding:20px;text-align:center;transition:all .3s}.game-card:hover{box-shadow:0 8px 20px #ec489933;transform:translateY(-4px)}.game-card.completed{background:#fdf2f8;opacity:.6}.game-icon{font-size:2.5rem;margin-bottom:10px}.game-card h4{color:#831843;font-size:1.1rem;margin:10px 0}.game-card p{color:#9f1239;font-size:.95rem;margin:10px 0}.game-meta{color:#be185d;display:flex;font-size:.85rem;gap:15px;justify-content:center;margin:15px 0}.game-instructions{margin:15px 0;text-align:left}.game-instructions summary{background:#fff;border-radius:6px;color:#be185d;cursor:pointer;font-weight:600;margin-bottom:10px;padding:8px}.game-instructions p{background:#fff;border-radius:6px;color:#4a5568;margin:10px 0;padding:10px;white-space:pre-line}.strength-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border:3px solid #f59e0b}.prompts-list{display:flex;flex-direction:column;gap:20px}.prompt-card{align-items:flex-start;background:#fff;border-radius:12px;display:flex;gap:20px;padding:20px;transition:all .3s}.prompt-card:hover{box-shadow:0 4px 12px #f59e0b33;transform:translateX(5px)}.prompt-card.completed{background:#fefce8;opacity:.6}.prompt-icon{font-size:2rem}.prompt-content h4{color:#78350f;font-size:1.1rem;margin:0 0 10px}.prompt-content p{color:#92400e;line-height:1.6;margin:0 0 15px}.prompt-example{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:8px;margin-top:10px;padding:12px}.prompt-example strong{color:#78350f;display:block;margin-bottom:5px}.loading-state{padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 20px;width:50px}.empty-state{color:#718096;font-size:1.1rem;padding:60px 20px;text-align:center}@media (max-width:768px){.action-stats{flex-direction:column;gap:20px}.games-grid,.questions-grid{grid-template-columns:1fr}.activity-card{flex-direction:column}.activity-icon{text-align:center}}.premium-features-content{padding:30px}.premium-header-section{margin-bottom:40px;text-align:center}.premium-header-section h3{color:#667eea;font-size:28px;margin-bottom:10px}.premium-header-section p{color:#718096;font-size:16px}.premium-plans-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:40px}.premium-plan-card{background:linear-gradient(135deg,#fff,#f7fafc);border:2px solid #e2e8f0;border-radius:20px;padding:30px;position:relative;text-align:center;transition:all .3s}.premium-plan-card:hover{border-color:#667eea;box-shadow:0 20px 40px #667eea33;transform:translateY(-5px)}.premium-plan-card.popular{background:linear-gradient(135deg,#fffbf0,#fff9e6);border-color:#f39c12;transform:scale(1.05)}.popular-badge{background:linear-gradient(135deg,#f39c12,#f1c40f);border-radius:12px;color:#fff;font-size:12px;font-weight:700;padding:6px 16px;position:absolute;right:20px;text-transform:uppercase;top:-12px}.plan-badge{color:#4a5568;display:inline-block;font-size:18px;font-weight:700;margin-bottom:10px}.plan-price{color:#1a202c;font-size:42px;font-weight:700;margin-bottom:20px}.plan-price span{color:#718096;font-size:16px;font-weight:400}.plan-features{list-style:none;margin:0 0 20px;padding:0;text-align:left}.plan-features li{border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:15px;padding:10px 0}.plan-features li:last-child{border-bottom:none}.upgrade-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:all .3s;width:100%}.upgrade-btn:hover{box-shadow:0 10px 30px #667eea66;transform:scale(1.05)}.premium-benefits{background:#667eea0d;border-radius:16px;margin-top:30px;padding:30px}.premium-benefits h4{color:#1a202c;font-size:20px;margin-bottom:20px}.benefits-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.benefit-item{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:12px;padding:15px}.benefit-icon{font-size:24px}.achievements-content{padding:30px}.achievements-header{margin-bottom:30px;text-align:center}.achievements-header h3{color:#1a202c;font-size:28px;margin-bottom:10px}.achievements-header p{color:#718096}.achievements-stats{display:flex;gap:30px;justify-content:center;margin-bottom:40px}.achievement-stat{background:linear-gradient(135deg,#fff,#f7fafc);border-radius:16px;box-shadow:0 4px 12px #00000014;padding:20px 30px;text-align:center}.achievement-stat .stat-number{color:#667eea;display:block;font-size:36px;font-weight:700}.achievement-stat .stat-label{color:#718096;display:block;font-size:14px;margin-top:5px}.achievements-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.achievement-card{background:#fff;border:2px solid #e2e8f0;border-radius:16px;padding:25px;text-align:center;transition:all .3s}.achievement-card:hover{box-shadow:0 10px 30px #0000001a;transform:translateY(-5px)}.achievement-card.earned{background:linear-gradient(135deg,#f0fff4,#e6ffed);border-color:#48bb78}.achievement-icon-large{font-size:48px;margin-bottom:15px}.achievement-card h4{color:#1a202c;font-size:18px;margin-bottom:10px}.achievement-card p{color:#718096;font-size:14px;margin-bottom:15px}.earned-date{color:#48bb78;font-size:14px;font-weight:600}.progress-section{margin-top:15px}.progress-bar-small{background:#e2e8f0;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.progress-fill-small{background:linear-gradient(90deg,#f39c12,#f1c40f);border-radius:4px;height:100%;transition:width .5s ease}.progress-text{color:#718096}.ai-recommendations-content{padding:30px}.recommendations-header{margin-bottom:30px;text-align:center}.recommendations-header h3{color:#1a202c;font-size:28px;margin-bottom:10px}.recommendations-header p{color:#718096}.recommendations-list-parent{grid-gap:20px;display:grid;gap:20px;margin-bottom:40px}.recommendation-card-parent{background:#fff;border-left:5px solid;border-radius:16px;padding:25px;transition:all .3s}.recommendation-card-parent:hover{box-shadow:0 10px 30px #0000001a}.recommendation-card-parent.high{background:linear-gradient(135deg,#fff5f5,#fff);border-left-color:#e74c3c}.recommendation-card-parent.medium{background:linear-gradient(135deg,#fffbf0,#fff);border-left-color:#f39c12}.recommendation-card-parent.low{background:linear-gradient(135deg,#f0fff4,#fff);border-left-color:#48bb78}.rec-header-parent{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.rec-subject-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:14px;font-weight:600;padding:6px 16px}.priority-indicator{border-radius:8px;font-size:14px;font-weight:600;padding:6px 12px}.priority-indicator.high{background:#e74c3c1a;color:#e74c3c}.priority-indicator.medium{background:#f39c121a;color:#f39c12}.priority-indicator.low{background:#48bb781a;color:#48bb78}.recommendation-card-parent h4{color:#1a202c;font-size:20px;margin-bottom:10px}.rec-reason{color:#718096;font-size:14px;margin-bottom:15px}.rec-action{align-items:center;background:#667eea0d;border-radius:10px;display:flex;gap:10px;margin-bottom:15px;padding:12px}.action-icon{font-size:20px}.rec-meta{margin-bottom:15px}.time-badge{background:#667eea1a;border-radius:8px;color:#667eea;font-size:13px;font-weight:600;padding:6px 12px}.start-practice-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px;transition:all .3s;width:100%}.start-practice-btn:hover{box-shadow:0 5px 20px #667eea4d;transform:scale(1.02)}.ai-insights{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-radius:16px;padding:25px}.ai-insights h4{color:#1a202c;font-size:20px;margin-bottom:20px}.insight-item{align-items:center;background:#fff;border-radius:12px;display:flex;gap:15px;margin-bottom:12px;padding:15px}.insight-item:last-child{margin-bottom:0}.insight-icon{font-size:24px}.insight-item p{color:#4a5568;font-size:15px;margin:0}@media (max-width:768px){.premium-plans-grid{grid-template-columns:1fr}.premium-plan-card.popular{transform:scale(1)}.achievements-stats{flex-direction:column;gap:15px}.achievements-grid{grid-template-columns:1fr}.rec-header-parent{align-items:flex-start;flex-direction:column;gap:10px}.benefits-grid{grid-template-columns:1fr}}.metrics-dashboard-container{color:#1e293b;font-family:Inter,sans-serif;margin:0 auto;max-width:1200px;padding:24px}.rating-banner{align-items:center;background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:24px;box-shadow:0 10px 30px #00000026;color:#fff;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:40px;padding:30px 40px}.rating-title{color:#f8fafc;font-size:2rem;font-weight:800;margin:0 0 10px}.rating-stars{color:#fbbf24;text-shadow:0 2px 10px #fbbf2466}.rating-message{color:#cbd5e1;font-size:1.15rem;line-height:1.5;margin:0}.rating-accuracy-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:20px;padding:20px 35px;text-align:center}.accuracy-value{color:#38bdf8;font-size:3rem;font-weight:900;line-height:1;margin-bottom:5px}.accuracy-label{color:#94a3b8;font-size:.9rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}@media (max-width:768px){.rating-banner{flex-direction:column;padding:24px;text-align:center}.rating-accuracy-box{width:100%}}.dashboard-header h1{color:#0f172a;font-size:28px;margin:0}.dashboard-header p{color:#64748b;margin-top:8px}.section-title{font-size:20px;font-weight:700;margin:32px 0 16px}.resume-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.resume-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000000d;display:flex;flex-direction:column;justify-content:space-between;padding:20px}.resume-tag{background:#e0e7ff;border-radius:20px;color:#4338ca;font-size:12px;font-weight:600;margin-bottom:12px;padding:4px 10px;text-transform:capitalize;width:fit-content}.resume-card h3{color:#1e293b;font-size:16px;margin:0 0 16px}.progress-container{margin-bottom:16px}.progress-text{display:flex;font-size:13px;justify-content:space-between;margin-bottom:6px}.progress-bar-bg{background:#f1f5f9;border-radius:4px;height:8px;overflow:hidden}.progress-bar-fill{background:#3b82f6;border-radius:4px;transition:width .3s}.resume-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px;transition:.2s}.resume-btn:hover{background:#2563eb}.metrics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:20px;text-align:center}.metric-card h4{color:#64748b;font-size:14px;letter-spacing:.5px;margin:0;text-transform:uppercase}.metric-value{color:#0f172a;font-size:32px;font-weight:800;margin:12px 0 4px}.metric-subtext{color:#10b981;font-size:13px;font-weight:600}.time-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:8px}.time-tab{background:#0000;border:1px solid #cbd5e1;border-radius:20px;color:#475569;cursor:pointer;font-weight:600;padding:8px 16px}.time-tab.active{background:#0f172a;border-color:#0f172a;color:#fff}.completed-list{display:flex;flex-direction:column;gap:12px}.completed-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;justify-content:space-between;padding:16px}.completed-info h4{font-size:15px;margin:0 0 4px}.completed-info p{color:#64748b;font-size:13px;margin:0;text-transform:capitalize}.completed-score{background:#d1fae5;border-radius:20px;color:#10b981;font-size:18px;font-weight:700;padding:6px 16px}.offline-mode-container{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);margin:0 auto;max-width:1200px;min-height:100vh;padding:60px 20px 20px;position:relative}.toast-notification{animation:slideInRight .3s ease-out,fadeOut .5s ease-in 2.5s;background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;box-shadow:0 8px 24px #10b9814d;color:#fff;font-size:1rem;font-weight:600;padding:16px 24px;position:fixed;right:20px;top:80px;z-index:10000}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.offline-header{margin-bottom:30px;text-align:center}.offline-header h2{color:#1e40af;font-size:2.5rem;font-weight:700;margin:0 0 10px}.offline-subtitle{color:#64748b;font-size:1.2rem;margin:0}.offline-loading{color:#64748b;font-size:1.3rem;padding:60px 20px;text-align:center}.network-status{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:20px;padding:20px}.status-indicator{align-items:center;display:flex;font-size:1.1rem;font-weight:600;gap:12px}.status-dot{animation:pulse 2s infinite;border-radius:50%;height:12px;width:12px}.status-indicator.online .status-dot{background:#10b981}.status-indicator.offline .status-dot{background:#ef4444}.india-message{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:4px solid #f59e0b;border-radius:10px;display:flex;gap:15px;margin-bottom:20px;padding:15px 20px}.india-message .flag{font-size:2rem}.india-message p{color:#92400e;font-size:1.05rem;font-weight:600;margin:0}.package-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000001a;margin-bottom:30px;padding:30px}.package-info h3{color:#1e293b;font-size:1.5rem;margin:0 0 20px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.info-item{display:flex;flex-direction:column;gap:5px}.info-item .label{color:#64748b;font-size:.9rem;font-weight:500}.info-item .value{color:#1e293b;font-size:1.1rem;font-weight:700}.value.status-completed{color:#10b981}.value.status-downloading{color:#3b82f6}.value.status-pending{color:#f59e0b}.progress-container{margin:20px 0}.progress-bar{background:#e5e7eb;border-radius:15px;height:30px;overflow:hidden;position:relative;width:100%}.progress-fill{align-items:center;background:linear-gradient(90deg,#3b82f6,#2563eb);display:flex;height:100%;justify-content:flex-end;padding-right:10px;transition:width .5s ease}.progress-text{color:#3b82f6;display:block;margin-top:8px;text-align:center}.pending-analytics{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:10px;display:flex;justify-content:space-between;margin-top:20px;padding:15px 20px}.pending-badge{color:#92400e}.pending-badge,.sync-btn{font-size:1rem;font-weight:600}.sync-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:10px;color:#fff;cursor:pointer;padding:10px 25px;transition:all .3s ease}.sync-btn:hover:not(:disabled){box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px)}.sync-btn:disabled{cursor:not-allowed;opacity:.6}.package-actions{border-top:2px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;padding-top:20px}.refresh-btn,.regenerate-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;min-width:160px;padding:12px 20px;transition:all .3s ease}.refresh-btn{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.refresh-btn:hover:not(:disabled){box-shadow:0 6px 20px #3b82f666;transform:translateY(-2px)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.refresh-btn.refreshing{animation:pulse-refresh 1.5s ease-in-out infinite}@keyframes pulse-refresh{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}.regenerate-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.regenerate-btn:hover:not(:disabled){box-shadow:0 6px 20px #10b98166;transform:translateY(-2px)}.regenerate-btn:disabled{cursor:not-allowed;opacity:.6}.package-features{border-top:2px solid #f1f5f9;margin-top:30px;padding-top:30px}.package-features h4{color:#1e293b;font-size:1.2rem;margin:0 0 15px}.package-features ul{list-style:none;margin:0;padding:0}.package-features li{border-bottom:1px solid #f1f5f9;color:#475569;font-size:1.05rem;padding:10px 0}.package-features li:last-child{border-bottom:none}.no-package-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000001a;margin-bottom:30px;padding:40px;text-align:center}.no-package-icon{font-size:5rem;margin-bottom:20px}.no-package-card h3{color:#1e293b;font-size:1.8rem;margin:0 0 15px}.no-package-card>p{color:#64748b;font-size:1.1rem;margin:0 0 30px}.benefits-list{margin:0 auto 30px;max-width:500px;text-align:left}.benefits-list h4{color:#1e293b;font-size:1.2rem;margin:0 0 15px}.benefits-list ul{list-style:none;margin:0;padding:0}.benefits-list li{border-bottom:1px solid #f1f5f9;color:#475569;font-size:1.05rem;padding:10px 0}.generate-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:15px;box-shadow:0 6px 20px #3b82f666;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:700;padding:18px 40px;transition:all .3s ease}.generate-btn:hover:not(:disabled){box-shadow:0 10px 30px #3b82f680;transform:translateY(-3px)}.generate-btn:disabled{cursor:not-allowed;opacity:.6}.recommendation{align-items:center;color:#64748b;display:flex;font-size:.95rem;gap:10px;justify-content:center;margin-top:20px}.tip-icon{font-size:1.5rem}.how-it-works{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000001a;margin-bottom:30px;padding:30px}.how-it-works h3{color:#1e293b;font-size:1.5rem;margin:0 0 25px;text-align:center}.steps{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.step{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:15px;flex-direction:column;padding:20px;text-align:center}.step,.step-number{align-items:center;display:flex}.step-number{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;color:#fff;font-size:1.5rem;font-weight:700;height:50px;justify-content:center;margin-bottom:15px;width:50px}.step p{color:#475569;font-size:1rem;margin:0}.india-stats{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:20px;box-shadow:0 4px 20px #0000001a;padding:30px}.india-stats h4{color:#92400e;font-size:1.5rem;margin:0 0 25px;text-align:center}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{align-items:center;background:#fff;border-radius:15px;display:flex;flex-direction:column;padding:20px;text-align:center}.stat-number{color:#f59e0b;font-size:2rem;font-weight:700;margin-bottom:10px}.stat-label{font-size:.9rem}@media (max-width:768px){.offline-mode-container{padding:15px}.offline-header h2{font-size:2rem}.no-package-card,.package-card{padding:20px}.info-grid,.steps{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.generate-btn{font-size:1.1rem;width:100%}}.xp-bar-container{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #00000014;margin:16px 0;overflow:hidden;padding:16px;position:relative}.xp-header{gap:12px;margin-bottom:12px}.level-badge,.xp-header{align-items:center;display:flex}.level-badge{border-radius:50%;box-shadow:0 4px 12px #0003;color:#fff;flex-shrink:0;font-size:20px;font-weight:700;height:48px;justify-content:center;transition:all .3s ease;width:48px}.level-badge:hover{transform:scale(1.1)}.level-number{display:block}.xp-info{display:flex;flex-direction:column;gap:2px}.xp-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.xp-count{color:#1f2937;font-size:14px;font-weight:600}.xp-progress-container{margin-bottom:8px}.xp-progress-background{background:linear-gradient(90deg,#e5e7eb,#d1d5db);box-shadow:inset 0 2px 4px #0000001a;height:24px;width:100%}.xp-progress-background,.xp-progress-bar{border-radius:12px;overflow:hidden;position:relative}.xp-progress-bar{box-shadow:0 2px 8px #00000026;height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1)}.xp-progress-shimmer{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;left:0;position:absolute;right:0;top:0}.xp-footer{display:flex;justify-content:flex-end}.xp-milestone{color:#64748b;font-size:12px;font-weight:500}.xp-bar-container.level-up-animation{animation:level-up-pulse .8s ease-out}@keyframes level-up-pulse{0%{box-shadow:0 2px 8px #00000014;transform:scale(1)}50%{box-shadow:0 0 30px #22c55e66;transform:scale(1.05)}to{box-shadow:0 2px 8px #00000014;transform:scale(1)}}.level-up-message{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1000}.level-up-badge{animation:bounce-in .6s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:8px;box-shadow:0 8px 24px #fbbf2466;padding:12px 24px}.level-up-text{color:#fff;display:block;font-size:16px;font-weight:700;text-shadow:0 2px 4px #0003}@keyframes bounce-in{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@media (max-width:640px){.xp-bar-container{margin:12px 0;padding:12px}.level-badge{font-size:16px;height:40px;width:40px}.xp-progress-background{height:20px}.level-up-text{font-size:14px}}.streak-widget{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 12px #00000014;margin:16px 0;overflow:hidden;padding:20px}.milestone-popup{animation:milestone-bounce-in .6s cubic-bezier(.34,1.56,.64,1);left:50%;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:10000}.milestone-content{align-items:center;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:16px;box-shadow:0 12px 40px #fbbf2466;display:flex;gap:16px;min-width:300px;padding:24px 32px}.milestone-emoji{animation:milestone-emoji-spin .6s ease-out;font-size:48px}.milestone-text{display:flex;flex-direction:column;gap:4px}.milestone-title{color:#fff;font-size:18px;font-weight:700;margin:0}.milestone-bonus{color:#ffffffe6;font-size:14px;font-weight:600;margin:0}.streak-container{gap:20px;margin-bottom:24px;position:relative}.streak-container,.streak-main{align-items:center;display:flex}.streak-main{flex:1 1;gap:16px}.streak-fire{align-items:center;border-radius:50%;box-shadow:0 4px 16px #0000001a;display:flex;flex-shrink:0;font-size:44px;height:80px;justify-content:center;transition:all .3s ease;width:80px}.streak-fire.mild{animation:fire-pulse-mild 2s ease-in-out infinite;background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 4px 16px #fbbf244d}.streak-fire.warm{animation:fire-pulse-warm 2s ease-in-out infinite;background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 16px #f9731666}.streak-fire.hot{animation:fire-pulse-hot 2s ease-in-out infinite;background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 16px #ef444466}.streak-fire.legendary{animation:fire-pulse-legendary 2s ease-in-out infinite;background:linear-gradient(135deg,#a855f7,#9333ea);box-shadow:0 4px 20px #a855f780}.streak-fire.frozen{animation:freeze-shimmer 2s ease-in-out infinite}.streak-info{gap:4px}.streak-number{color:#1f2937;font-size:36px;font-weight:700}.streak-label{color:#64748b}.freeze-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;box-shadow:0 4px 12px #3b82f64d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:600;gap:6px;padding:12px 16px;transition:all .3s ease}.freeze-button:hover:not(:disabled){box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.freeze-button:active:not(:disabled){transform:translateY(0)}.freeze-button:disabled{cursor:not-allowed;opacity:.5}.gem-icon{font-size:16px}.gem-cost{min-width:20px;text-align:center}.freeze-active{align-items:center;background:linear-gradient(135deg,#06b6d4,#0891b2);border-radius:12px;box-shadow:0 4px 12px #06b6d44d;color:#fff;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 16px}.freeze-icon{font-size:16px}.streak-breakdown{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.streak-stat{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:12px;padding:12px;transition:all .3s ease}.streak-stat:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.stat-icon{flex-shrink:0;font-size:20px}.stat-content{display:flex;flex-direction:column;gap:2px;min-width:0}.stat-value{color:#1f2937;font-size:18px;font-weight:700}.stat-label{color:#64748b;font-size:11px;font-weight:500;white-space:nowrap}.milestone-progress{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;padding:16px}.milestone-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.milestone-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.milestone-target{color:#1f2937;font-size:14px;font-weight:700}.progress-bar-container{align-items:center;display:flex;gap:12px;position:relative}.progress-bar-background{background:linear-gradient(90deg,#e5e7eb,#d1d5db);box-shadow:inset 0 2px 4px #0000001a;flex:1 1;height:20px}.progress-bar-background,.progress-bar-fill{border-radius:10px;overflow:hidden;position:relative}.progress-bar-fill{background:linear-gradient(90deg,#3b82f6,#2563eb);box-shadow:0 2px 8px #3b82f64d;height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1)}.progress-bar-shimmer{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;left:0;position:absolute;right:0;top:0}.progress-text{color:#64748b;font-size:12px;font-weight:600;min-width:50px;text-align:right}.milestones-info{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px}.milestones-title{color:#64748b;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.milestones-list{display:flex;flex-direction:column;gap:8px}.milestone-item{align-items:center;border-radius:8px;display:flex;gap:8px;opacity:.6;padding:8px;transition:all .3s ease}.milestone-item.unlocked{background:#f0fdf4;opacity:1}.milestone-check{align-items:center;color:#64748b;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:20px;justify-content:center;width:20px}.milestone-item.unlocked .milestone-check{color:#22c55e}.milestone-desc{color:#1f2937;font-size:13px;font-weight:500}.milestone-item.unlocked .milestone-desc{color:#15803d;font-weight:600}@keyframes fire-pulse-mild{0%,to{box-shadow:0 4px 16px #fbbf244d;transform:scale(1)}50%{box-shadow:0 6px 20px #fbbf2480;transform:scale(1.05)}}@keyframes fire-pulse-warm{0%,to{box-shadow:0 4px 16px #f9731666;transform:scale(1)}50%{box-shadow:0 6px 20px #f9731699;transform:scale(1.08)}}@keyframes fire-pulse-hot{0%,to{box-shadow:0 4px 16px #ef444466;transform:scale(1)}50%{box-shadow:0 8px 24px #ef444499;transform:scale(1.1)}}@keyframes fire-pulse-legendary{0%,to{box-shadow:0 4px 20px #a855f780;transform:scale(1)}50%{box-shadow:0 8px 28px #a855f7b3;transform:scale(1.12)}}@keyframes freeze-shimmer{0%,to{box-shadow:0 4px 16px #06b6d433,inset 0 0 10px #fff3}50%{box-shadow:0 4px 20px #06b6d466,inset 0 0 15px #fff6}}@keyframes milestone-bounce-in{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}50%{transform:translate(-50%,-50%) scale(1.2)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes milestone-emoji-spin{0%{transform:scale(0) rotate(-180deg)}to{transform:scale(1) rotate(0deg)}}@media (max-width:640px){.streak-widget{margin:12px 0;padding:16px}.streak-container{gap:12px}.streak-fire{font-size:32px;height:64px;width:64px}.streak-number{font-size:28px}.streak-breakdown{gap:8px;grid-template-columns:1fr}.freeze-button{font-size:12px;padding:10px 12px}.milestone-content{gap:12px;min-width:280px;padding:20px 24px}.milestone-emoji{font-size:36px}.milestone-title{font-size:16px}}@media (max-width:480px){.streak-fire{font-size:28px;height:56px;width:56px}.streak-number{font-size:24px}.milestone-content{flex-direction:column;min-width:260px;text-align:center}}.progress-ring-container{align-items:center;display:flex;justify-content:center;margin:20px 0;position:relative}.progress-ring-svg{height:auto;transform:rotate(-90deg);width:100%}.progress-ring-background{fill:none;stroke:#e5e7eb;stroke-linecap:round}.progress-ring-circle{fill:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 2px rgba(0,0,0,.1));transition:stroke .3s ease}.progress-ring-circle.celebrate-pulse{animation:pulse-celebrate .6s ease-out}.progress-ring-label{align-items:center;display:flex;height:100%;justify-content:center;position:absolute;width:100%}.progress-percentage{color:#1f2937;font-size:24px;font-weight:700;text-align:center}.confetti-particle{animation:confetti-fall 1s ease-out forwards;border-radius:50%;height:8px;pointer-events:none;position:fixed;width:8px;z-index:9999}@keyframes confetti-fall{0%{opacity:1;transform:translate(0) scale(1) rotate(0deg)}to{opacity:0;transform:translate(0,100px) scale(0) rotate(1turn);transform:translate(calc(var(--vx, 0)*100px),calc(var(--vy, 0)*100px + 100px)) scale(0) rotate(1turn)}}@keyframes pulse-celebrate{0%{filter:drop-shadow(0 0 2px rgba(0,0,0,.1));transform:scale(1)}50%{filter:drop-shadow(0 0 8px rgba(34,197,94,.4));transform:scale(1.1)}to{filter:drop-shadow(0 0 2px rgba(0,0,0,.1));transform:scale(1)}}@media (max-width:640px){.progress-percentage{font-size:18px}}@media (max-width:380px){.progress-percentage{font-size:14px}}.motivation-engine-container{display:flex;flex-direction:column;gap:28px;position:relative;width:100%}.celebration-overlay{bottom:0;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:9999}.celebration-text{animation:celebrationPop .8s cubic-bezier(.34,1.56,.64,1);font-size:48px;font-weight:700;left:50%;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-50%)}@keyframes celebrationPop{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}to{opacity:0;transform:translate(-50%,-50%) scale(1.2)}}.confetti{animation:confettiFall 3s ease-out forwards;background:linear-gradient(135deg,#fbbf24,#f97316);height:10px;position:fixed;width:10px}.confetti-1{animation-delay:.1s;animation-duration:2.3s;left:10%}.confetti-2{animation-delay:.3s;animation-duration:2.7s;left:25%}.confetti-3{animation-delay:.2s;animation-duration:2.1s;left:50%}.confetti-4{animation-delay:.4s;animation-duration:2.9s;left:70%}.confetti-5{animation-delay:.15s;animation-duration:2.5s;left:88%}@keyframes confettiFall{0%{opacity:1;transform:translateY(-100vh) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(1turn)}}.messages-section{display:flex;flex-direction:column;gap:16px}.messages-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.motivation-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;gap:12px;padding:20px;position:relative;transition:all .3s ease}.motivation-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.motivation-card.positive{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-color:#86efac}.motivation-card.supportive{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fcd34d}.motivation-card.greeting{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe}.motivation-card.challenge{background:linear-gradient(135deg,#fffaeb,#fef08a);border-color:#fbbf24}.motivation-card.celebration{animation:pulse .6s ease-out;background:linear-gradient(135deg,#fff0f9,#fce7f3);border-color:#f472b6}.motivation-card.affirmation{background:linear-gradient(135deg,#faf5ff,#f3e8ff);border-color:#c084fc}.motivation-card.bounce{animation:bounceIn .6s cubic-bezier(.34,1.56,.64,1)}.motivation-card.pulse{animation:pulseCard .8s ease-out}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes pulseCard{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.dismiss-button{align-items:center;background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;position:absolute;right:8px;top:8px;transition:all .2s ease;width:24px}.dismiss-button:hover{background-color:#f1f5f9;color:#475569}.card-icon{font-size:32px}.card-title{color:#1e293b;font-size:16px;font-weight:700;margin:0}.card-message{color:#64748b;font-size:14px;line-height:1.5;margin:0}.card-action-button{align-self:flex-start;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;margin-top:4px;padding:8px 12px;transition:all .2s ease}.card-action-button:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.card-emoji-decoration{bottom:8px;font-size:28px;opacity:.3;position:absolute;right:8px}.challenges-section{display:flex;flex-direction:column;gap:16px}.challenges-header{display:flex;flex-direction:column;gap:4px}.challenges-title{color:#1e293b;font-size:20px;font-weight:700;margin:0}.challenges-subtitle{color:#94a3b8;font-size:13px}.challenges-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.challenge-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:16px;transition:all .3s ease}.challenge-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.challenge-card.medium{border-top:3px solid #f59e0b}.challenge-card.hard{border-top:3px solid #ef4444}.challenge-card.easy{border-top:3px solid #22c55e}.challenge-card.selected{animation:pulse .5s ease-out;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;box-shadow:0 4px 16px #3b82f633}.challenge-header{align-items:center;display:flex;justify-content:space-between}.challenge-difficulty{background-color:#f1f5f9;border-radius:4px;color:#64748b;font-size:11px;font-weight:700;padding:4px 8px;text-transform:uppercase}.challenge-reward{color:#f59e0b;font-size:13px;font-weight:700}.challenge-title{color:#1e293b;font-size:15px;font-weight:700;margin:0}.challenge-description{color:#64748b;font-size:13px;line-height:1.4;margin:0}.challenge-topic{background-color:#f8fafc;border-radius:6px;display:flex;font-size:12px;gap:6px;padding:8px}.topic-label{color:#94a3b8;font-weight:600}.topic-value{color:#1e293b;font-weight:600}.challenge-button{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;margin-top:4px;padding:8px 12px;transition:all .2s ease}.challenge-button:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.streak-section{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr}.streak-card{align-items:center;background:linear-gradient(135deg,#fef3c7,#fef08a);border:2px solid #fcd34d;border-radius:12px;box-shadow:0 4px 12px #fcd34d33;display:flex;gap:20px;padding:24px}.streak-icon{animation:flicker .6s ease-in-out;font-size:48px}.streak-content{display:flex;flex-direction:column;gap:4px}.streak-value{color:#f59e0b;font-size:32px;font-weight:700}.streak-label{color:#78350f;font-size:12px;letter-spacing:.5px}.streak-message{align-items:center;color:#78350f;display:flex;font-size:13px;font-weight:600;gap:8px}.streak-message .emoji{font-size:18px}.performance-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.summary-item{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:16px;text-align:center;transition:all .2s ease}.summary-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.summary-label{color:#94a3b8;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.summary-value{color:#1e293b;font-size:24px;font-weight:700}.summary-emoji,.summary-trend{font-size:20px}.capitalize{text-transform:capitalize}.weekly-prompt-card{align-items:flex-start;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:2px solid #7dd3fc;border-radius:12px;display:flex;gap:16px;padding:20px}.prompt-icon{flex-shrink:0;font-size:32px}.prompt-content{display:flex;flex:1 1;flex-direction:column;gap:8px}.prompt-title{color:#1e40af;font-size:16px;font-weight:700;margin:0}.prompt-text{color:#1e3a8a;font-size:13px;margin:0}.prompt-button{align-self:flex-start;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;margin-top:4px;padding:6px 12px;transition:all .2s ease}.prompt-button:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}@media (max-width:1024px){.messages-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.challenges-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.performance-summary,.streak-section{grid-template-columns:1fr}}@media (max-width:768px){.challenges-grid,.messages-grid{grid-template-columns:1fr}.streak-card{gap:16px;padding:16px}.card-icon,.streak-value{font-size:24px}.card-title{font-size:14px}.card-message{font-size:13px}.weekly-prompt-card{align-items:center;flex-direction:column;text-align:center}.prompt-button{align-self:center}}@media (max-width:640px){.motivation-engine-container{gap:20px}.challenges-grid,.messages-grid{grid-template-columns:1fr}.challenges-title{font-size:16px}.challenges-subtitle{font-size:12px}.card-icon{font-size:20px}.card-title{font-size:13px}.streak-icon{font-size:32px}.streak-value{font-size:20px}.summary-value{font-size:18px}.celebration-text{font-size:32px}}.notif-bell-btn,.notif-bell-wrapper{position:relative}.notif-bell-btn{background:#0000;border:none;border-radius:8px;cursor:pointer;font-size:1.25rem;line-height:1;padding:.4rem;transition:background .2s}.notif-bell-btn:hover{background:#0000000f}.notif-badge{align-items:center;background:#ef4444;border-radius:99px;color:#fff;font-size:.6rem;font-weight:700;height:16px;justify-content:center;line-height:1;min-width:16px;padding:0 3px;pointer-events:none;top:0}.notif-badge,.notif-panel{display:flex;position:absolute;right:0}.notif-panel{animation:notifPanelIn .18s ease;background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000029;flex-direction:column;max-height:440px;overflow:hidden;top:calc(100% + 8px);width:340px;z-index:8000}@keyframes notifPanelIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.notif-panel-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:1rem 1.25rem .75rem}.notif-panel-title{color:#1a1a2e;font-size:.95rem;font-weight:700}.notif-mark-all{background:#0000;border:none;color:#667eea;cursor:pointer;font-size:.78rem;font-weight:600;padding:0}.notif-mark-all:hover{text-decoration:underline}.notif-list{flex:1 1;overflow-y:auto}.notif-empty{align-items:center;color:#aaa;display:flex;flex-direction:column;font-size:.9rem;gap:.5rem;justify-content:center;padding:2.5rem 1rem}.notif-empty span{font-size:2rem}.notif-item{align-items:flex-start;border-bottom:1px solid #f8f8f8;cursor:default;display:flex;gap:.75rem;padding:.875rem 1.25rem;position:relative;transition:background .15s}.notif-item:last-child{border-bottom:none}.notif-item.unread{background:#f8f7ff}.notif-item:hover{background:#f5f5f5}.notif-item-icon{flex-shrink:0;font-size:1.1rem;margin-top:2px}.notif-item-body{flex:1 1;min-width:0}.notif-item-title{color:#1a1a2e;font-size:.85rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-item-msg{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.8rem;line-height:1.4;margin-top:2px;overflow:hidden}.notif-item-time{color:#aaa;font-size:.72rem;margin-top:4px}.notif-unread-dot{background:#667eea;border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.seg-overlay{align-items:center;background:#0a0e1af7;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:9999}.seg-card{animation:seg-pop .3s ease;background:#0f1629;border:1.5px solid #6366f14d;border-radius:24px;box-shadow:0 0 60px #6366f126;max-width:480px;padding:48px 40px;text-align:center;width:100%}@keyframes seg-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.seg-icon{font-size:3.5rem;margin-bottom:16px}.seg-title{color:#e2e8f0;font-family:Inter,sans-serif;font-size:1.7rem;font-weight:800;margin:0 0 14px}.seg-body{color:#94a3b8;font-size:.95rem;line-height:1.6;margin:0 0 24px}.seg-features{display:flex;flex-direction:column;gap:8px;margin-bottom:28px;text-align:left}.seg-feature{align-items:center;color:#cbd5e1;display:flex;font-size:.9rem;gap:10px}.seg-check{color:#10b981;font-size:1rem;font-weight:700}.seg-btn-upgrade{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:14px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:1.05rem;font-weight:700;margin-bottom:12px;padding:16px;transition:opacity .2s,transform .1s;width:100%}.seg-btn-upgrade:hover{opacity:.9;transform:translateY(-1px)}.seg-note{color:#475569;font-size:.78rem;margin:0}.unified-dashboard-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}.dashboard-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:24px;padding:24px 32px}.dashboard-header-left{flex:1 1;min-width:250px}.dashboard-title{align-items:center;color:#1a202c;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 8px}.dashboard-icon{font-size:36px}.dashboard-subtitle{color:#718096;font-size:16px;margin:0}.dashboard-header-right{gap:16px}.role-switcher-container{position:relative}.current-role-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;padding:12px 20px;transition:all .3s ease}.current-role-button:hover{box-shadow:0 6px 16px #667eea80;transform:translateY(-2px)}.role-icon{font-size:20px}.role-name{font-weight:600}.dropdown-arrow{font-size:12px;margin-left:4px}.role-switcher-backdrop{bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.role-switcher-dropdown{animation:dropdownSlideIn .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;min-width:280px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.role-switcher-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.role-switcher-header span:first-child{font-size:16px;font-weight:600}.role-switcher-header small{font-size:12px;opacity:.9}.role-switcher-options{max-height:400px;overflow-y:auto}.role-option{align-items:center;background:#fff;border:none;border-bottom:1px solid #e2e8f0;cursor:pointer;display:flex;gap:12px;padding:14px 20px;text-align:left;transition:background .2s ease;width:100%}.role-option:hover:not(:disabled){background:#f7fafc}.role-option:disabled{background:#edf2f7;cursor:default}.role-option.active{background:#ebf4ff;border-left:4px solid #667eea}.role-option:last-child{border-bottom:none}.role-option-icon{font-size:24px}.role-option-info{align-items:center;display:flex;flex:1 1;justify-content:space-between}.role-option-name{color:#2d3748;font-size:14px;font-weight:500}.role-option-badge{background:#667eea;border-radius:6px;color:#fff;font-size:11px;font-weight:600;padding:4px 8px}.current-role-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #667eea66;color:#fff;display:flex;font-size:15px;font-weight:600;gap:10px;padding:12px 20px}.current-role-badge .role-icon{font-size:20px}.dashboard-content{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;min-height:500px;padding:32px}.dashboard-content.admin-workspace{background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000014;overflow:hidden;padding:0}.dashboard-error{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;padding:60px 20px;text-align:center}.dashboard-error h2{color:#e53e3e;font-size:24px;margin-bottom:12px}.dashboard-error p{color:#718096;font-size:16px}@media (max-width:768px){.dashboard-header{align-items:flex-start;flex-direction:column;padding:20px}.dashboard-title{font-size:24px}.dashboard-content{padding:20px}.role-switcher-dropdown{left:0;min-width:auto;right:0}}.dashboard-header-right{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.profile-action-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:15px;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease;white-space:nowrap}.profile-action-button:hover{box-shadow:0 6px 16px #667eea80;transform:translateY(-2px)}.profile-action-button.upgrade-btn{background:linear-gradient(135deg,#f5a623,#f76b1c);box-shadow:0 4px 12px #f5a62366}.profile-action-button.upgrade-btn:hover{box-shadow:0 6px 16px #f5a62380}.profile-icon{font-size:20px}@media (max-width:640px){.profile-text{display:none}.profile-action-button{padding:10px 14px}}:root{--primary-blue:#4a90e2;--primary-purple:#9b59b6;--primary-green:#2ecc71;--primary-orange:#f39c12;--primary-pink:#e91e63;--primary-red:#e74c3c;--primary-yellow:#f1c40f;--light-bg:#fff9f0;--card-shadow:0 4px 6px #0000001a}body{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);background:var(--color-primaryGradient,linear-gradient(135deg,#667eea 0,#764ba2 50%,#f093fb 100%));background-attachment:fixed;font-family:Baloo Bhai\ 2,Comic Sans MS,Segoe UI,cursive;margin:0;padding:0}#mainpage{background:#fffffffa;background:var(--color-background,#fffffffa);border-radius:0;box-shadow:none;box-sizing:border-box;max-width:2400px;min-height:100vh;padding:0 24px;width:100%}.section-content{animation:fadeIn .5s ease-in-out}.header{align-items:center;background:linear-gradient(135deg,#4a3aff,#7c3aed 40%,#a855f7 75%,#ec4899);border:1.5px solid #ffffff38;border-radius:18px;box-shadow:0 6px 24px #7c3aed66,0 2px 8px #0000001f;box-sizing:border-box;display:flex;flex-wrap:nowrap;gap:16px;justify-content:space-between;margin-bottom:14px;max-width:100%;overflow:visible;padding:7px 28px;top:6px;transition:border-radius .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),box-shadow .4s ease,-webkit-backdrop-filter .4s ease;transition:border-radius .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),box-shadow .4s ease,backdrop-filter .4s ease;transition:border-radius .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),box-shadow .4s ease,backdrop-filter .4s ease,-webkit-backdrop-filter .4s ease;width:100%;z-index:999980}.header.header-scrolled{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#4a3affeb,#7c3aedeb 40%,#a855f7eb 75%,#ec4899eb);border-radius:999px;box-shadow:0 4px 40px #7c3aed8c,0 1px 12px #0003;padding:4px 22px}.header.header-scrolled .logo-image{height:44px;top:0}.header:after{animation:hdr-shimmer 4s linear infinite;background:linear-gradient(105deg,#0000 35%,#ffffff14 50%,#0000 65%);background-size:200% 100%;border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}@keyframes hdr-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.header:before{display:none}.brand-section{flex-shrink:0;gap:10px;min-width:90px;overflow:visible;z-index:1}.brand-section,.logo-container{align-items:center;display:flex;position:relative}.logo-container{cursor:pointer;gap:12px;padding:0 8px}.logo-image{background:#0000;border:none;filter:drop-shadow(0 4px 12px rgba(0,0,0,.25));height:80px;object-fit:contain;position:relative;top:-10px;width:auto}.logo-icon{font-size:32px}@keyframes bookFlip{0%,to{transform:rotateY(0deg)}50%{transform:rotateY(180deg)}}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primaryGradient,linear-gradient(135deg,#667eea 0,#764ba2 100%));-webkit-background-clip:text;background-clip:text;font-size:24px;font-weight:900;letter-spacing:-.5px}.welcome-message{align-items:center;display:flex;flex:1 1;justify-content:center;text-align:center}.welcome-message h1{color:#ffffffe0;font-size:13px;font-weight:700;letter-spacing:.2px;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-right{flex-shrink:0;flex-wrap:nowrap;gap:15px;justify-content:flex-end;overflow:visible;position:relative;z-index:999990}.audio-toggle,.audio-toggle-container,.nav-right{align-items:center;display:flex}.audio-toggle{border:2px solid #ffffff73;border-radius:50%;box-shadow:0 2px 8px #0000002e;cursor:pointer;font-family:Baloo Bhai\ 2,cursive;font-size:13px;font-weight:700;height:36px;justify-content:center;padding:0;transition:all .25s ease;width:36px}.audio-toggle.enabled{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.audio-toggle.disabled{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.audio-toggle:hover{border-color:#fffc;box-shadow:0 6px 20px #0000004d;transform:translateY(-3px)}.audio-icon{align-items:center;display:flex;font-size:15px}.audio-toggle.enabled .audio-icon{animation:pulse 2s ease-in-out infinite}.audio-toggle.disabled .audio-icon{animation:none}.icon-button{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1.5px solid #ffffff61;border-radius:50%;box-shadow:0 2px 8px #00000026,inset 0 1px 0 #ffffff40;color:#fff;cursor:pointer;display:flex;font-family:Baloo Bhai\ 2,cursive;font-size:16px;height:36px;justify-content:center;padding:0;position:relative;transition:all .22s cubic-bezier(.4,0,.2,1);width:36px;z-index:1}.icon-button:hover{background:#ffffff47;border-color:#ffffffbf;box-shadow:0 8px 24px #00000040;transform:translateY(-3px) scale(1.08)}.search-button{background:#ffffff38;color:#fff;position:relative}.search-button:hover{background:#ffffff59}.profile-button{background:linear-gradient(135deg,#4ecdc4d9,#44a08dd9)}.nav-toggle-button,.profile-button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav-toggle-button{background:#ffffff26;position:relative}.nav-toggle-button.enabled{background:linear-gradient(135deg,#2ecc71cc,#27ae60cc)}.nav-toggle-button.disabled{background:#ffffff1a;opacity:.75}.nav-toggle-button:hover{opacity:1}.nav-toggle-icon{align-items:center;animation:fadeIn .3s ease;display:flex;font-size:22px}.admin-nav-info-banner{align-items:center;animation:slideDown .4s ease;background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primary,linear-gradient(135deg,#667eea 0,#764ba2 100%));border-radius:12px;box-shadow:0 4px 12px #667eea4d;display:flex;gap:12px;margin:20px auto;max-width:1800px;padding:16px 24px}.admin-nav-info-banner .info-icon{animation:pulse 2s ease-in-out infinite;font-size:28px}.admin-nav-info-banner p{color:#fff;font-size:16px;font-weight:600;line-height:1.5;margin:0}.profile-container{position:relative;z-index:999999}.profile-backdrop{background:#0000;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999998}.profile-dropdown{animation:slideDown .3s ease-out;background:#f8f9fa;border:3px solid #667eea;border-radius:15px;box-shadow:0 10px 40px #00000040;min-width:180px;overflow:visible;position:absolute;right:0;top:60px;z-index:999999}.profile-menu-item{align-items:center;background:#f8f9fa;border:none;border-bottom:1px solid #e9ecef;color:#1f2937;cursor:pointer;display:flex;font-family:Baloo Bhai\ 2,cursive;font-size:16px;font-weight:600;gap:12px;padding:15px 20px;text-align:left;transition:all .2s ease;width:100%}.profile-menu-item:last-child{border-bottom:none}.profile-menu-item:hover{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);transform:translateX(5px)}.login-item:hover{background:linear-gradient(135deg,#ffe6e6,#ffd4d4);color:#ff6b6b}.signup-item:hover{background:linear-gradient(135deg,#e6f9f7,#d4f4f0)}.admin-login-item:hover{background:linear-gradient(135deg,#fff4e6,#ffe6cc);color:#ff9800}.logout-item:hover{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#f44336}.profile-info{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-bottom:2px solid #f0f0f0;padding:15px 20px}.profile-info p{color:#333;font-size:14px;margin:5px 0}.profile-info .profile-email{color:#666;font-size:12px}.profile-role{border-radius:12px;display:inline-block;font-size:11px;font-weight:700;margin-top:5px;padding:4px 12px;text-transform:uppercase}.profile-role.admin{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.profile-role.user{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.menu-icon{flex-shrink:0;font-size:20px}.profile-menu-item span:not(.menu-icon){color:#2d3436;font-weight:600}.search-modal-backdrop{animation:fadeIn .3s ease-out;background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:10000}.search-modal{animation:scaleIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0006;left:50%;max-height:80vh;max-width:600px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:10001}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.search-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primary,linear-gradient(135deg,#667eea 0,#764ba2 100%));color:#fff;display:flex;justify-content:space-between;padding:20px 25px}.search-modal-header h3{font-size:24px;font-weight:800;margin:0}.close-modal{align-items:center;background:#fff3;border:2px solid #ffffff80;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-family:Baloo Bhai\ 2,cursive;font-size:24px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.close-modal:hover{background:#ffffff4d;transform:rotate(90deg)}.search-modal-content{max-height:calc(80vh - 80px);overflow-y:auto;padding:25px}.search-modal-input{border:3px solid #667eea;border-radius:50px;box-shadow:0 4px 12px #667eea33;font-family:Baloo Bhai\ 2,cursive;font-size:16px;outline:none;padding:15px 20px;transition:all .3s ease;width:100%}.search-modal-input:focus{border-color:#764ba2;box-shadow:0 6px 20px #667eea4d}.results-count{color:#666;font-size:14px;font-weight:700;letter-spacing:.5px;margin:20px 0 15px;text-transform:uppercase}.search-suggestions{margin-top:30px;text-align:center}.search-suggestions p{color:#666;font-size:16px;font-weight:700;margin-bottom:15px}.suggestion-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.suggestion-chip{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primary,linear-gradient(135deg,#667eea 0,#764ba2 100%));border:none;border-radius:50px;box-shadow:0 4px 12px #667eea4d;color:#fff;font-family:Baloo Bhai\ 2,cursive;font-size:14px;font-weight:600;padding:10px 20px}.suggestion-chip:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-3px)}.search-results-list{max-height:450px;overflow-y:auto}.search-result-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:15px;padding:15px 20px;transition:all .3s ease}.search-result-item:hover{background:linear-gradient(135deg,#f5f7fa,#e8eef5);transform:translateX(5px)}.search-result-item:last-child{border-bottom:none}.result-icon{flex-shrink:0;font-size:32px}.result-name{color:#2d3436;font-size:15px;font-weight:800;margin-bottom:4px}.result-description{color:#636e72;font-size:12px;line-height:1.4}.result-category{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primary,linear-gradient(135deg,#667eea 0,#764ba2 100%));border-radius:15px;color:#fff;flex-shrink:0;font-size:11px;padding:4px 12px}.search-no-results{color:#636e72;padding:40px 20px;text-align:center}.no-results-icon{display:block;font-size:48px;margin-bottom:15px;opacity:.5}.search-no-results p{color:#2d3436;font-size:16px;font-weight:700;margin-bottom:10px}.search-no-results small{color:#95a5a6;font-size:12px}.search input:focus{border-color:#667eea;width:200px}.search input::placeholder{color:#999}.search-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primary,linear-gradient(135deg,#667eea 0,#764ba2 100%));border:none;border-radius:50%;cursor:pointer;display:flex;justify-content:center;padding:10px;transition:all .3s ease}.search-icon:hover{box-shadow:0 4px 15px #667eea80;transform:rotate(90deg) scale(1.1)}.search-icon img{filter:brightness(0) invert(1)}.topnav{align-items:center;background:#0000;border:none;border-radius:0;box-shadow:none;display:flex!important;flex-direction:row!important;flex-wrap:nowrap;gap:20px;justify-content:center;margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:100%;overflow:visible;padding:20px 40px;position:relative;width:fit-content}.topnav:before{animation:sparkle 2s ease-in-out infinite;content:"✨";font-size:40px;left:50%;position:absolute;top:-15px;transform:translateX(-50%)}.breadcrumb-nav{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:2px solid #e5e7eb;box-shadow:0 2px 8px #0000000d;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:12px;margin-bottom:20px;padding:16px 40px}.breadcrumb-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:8px 16px;transition:all .2s ease}.breadcrumb-item:not(.active):hover{background:#f3f4f6;color:#1f2937;transform:translateY(-1px)}.breadcrumb-item.active{background:#eef2ff;border:2px solid #667eea;color:#667eea;cursor:default}.breadcrumb-icon{align-items:center;display:flex;font-size:18px}.breadcrumb-separator{color:#d1d5db;font-size:20px;font-weight:300}.nav-item{background:#fff;border-radius:50%;box-shadow:0 8px 20px #00000026;display:flex;flex:0 0 auto;font-size:50px;height:90px;justify-content:center;overflow:visible;padding:0;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);width:90px}.nav-item .nav-icon{display:block;font-size:50px}.nav-icon{align-items:center;display:inline-flex;font-size:20px;transition:transform .3s ease}.nav-item:before{background:#fff9;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .5s,height .5s;width:0}.nav-item:hover{box-shadow:0 12px 35px #667eea80;transform:scale(1.2) rotate(10deg)}.nav-item.active,.nav-item:hover{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primary,linear-gradient(135deg,#667eea 0,#764ba2 100%))}.nav-item.active{animation:pulseIcon 2s ease-in-out infinite;box-shadow:0 15px 40px #667eea99;transform:scale(1.15)}@keyframes pulseIcon{0%,to{transform:scale(1.15)}50%{transform:scale(1.25)}}.nav-item.active:after{display:none}.quick-access-section{background:linear-gradient(135deg,#fff5f5,#ffe5ec 50%,#fff0f5);border:3px solid #ff6b6b33;border-radius:25px;box-shadow:0 8px 30px #667eea26;margin:0 auto 40px;max-width:1800px;padding:30px}.quick-access-title{color:#2d3436;font-family:Baloo Bhai\ 2,cursive;font-size:28px;font-weight:800;margin-bottom:25px;text-align:center;text-shadow:2px 2px 4px #0000001a}.quick-tools-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto;max-width:1400px}.quick-tool-card{background:#fff;border:3px solid #0000;border-radius:20px;box-shadow:0 6px 20px #0000001a;cursor:pointer;overflow:hidden;padding:25px 20px;position:relative;text-align:center;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.quick-tool-card:before{background:linear-gradient(135deg,#ffffff80,#fff0);content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.quick-tool-card:hover:before{opacity:1}.quick-tool-card:hover{box-shadow:0 12px 35px #0003;transform:translateY(-10px) scale(1.05)}.tool-icon{display:inline-block;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));font-size:56px;margin-bottom:12px;transition:transform .3s ease}.quick-tool-card:hover .tool-icon{animation:wiggle .5s ease;transform:scale(1.2) rotate(10deg)}@keyframes wiggle{0%,to{transform:scale(1.2) rotate(10deg)}25%{transform:scale(1.25) rotate(-5deg)}75%{transform:scale(1.25) rotate(15deg)}}.quick-tool-card h3{color:#2d3436;font-family:Baloo Bhai\ 2,cursive;font-size:18px;font-weight:800;margin:8px 0}.quick-tool-card p{color:#636e72;font-size:13px;font-weight:600;margin:0}.ai-tool{background:linear-gradient(135deg,#f5f7ff,#e8ebff);border-color:#667eea}.ai-tool:hover{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--color-primary,linear-gradient(135deg,#667eea 0,#764ba2 100%));border-color:#667eea}.ai-tool:hover h3,.ai-tool:hover p{color:#fff}.reading-tool{background:linear-gradient(135deg,#f0fdf9,#e0f7f3);border-color:#00b894}.reading-tool:hover{background:linear-gradient(135deg,#00b894,#00cec9);border-color:#00b894}.reading-tool:hover h3,.reading-tool:hover p{color:#fff}.math-tool{background:linear-gradient(135deg,#f0f7ff,#e0efff);border-color:#0984e3}.math-tool:hover{background:linear-gradient(135deg,#0984e3,#74b9ff);border-color:#0984e3}.math-tool:hover h3,.math-tool:hover p{color:#fff}.game-tool{background:linear-gradient(135deg,#fff5f9,#ffe5f0);border-color:#fd79a8}.game-tool:hover{background:linear-gradient(135deg,#fd79a8,#e84393);border-color:#fd79a8}.game-tool:hover h3,.game-tool:hover p{color:#fff}.alphabet-tool{background:linear-gradient(135deg,#fffbf0,#fff5e0);border-color:#fdcb6e}.alphabet-tool:hover{background:linear-gradient(135deg,#fdcb6e,#f39c12);border-color:#fdcb6e}.alphabet-tool:hover h3,.alphabet-tool:hover p{color:#fff}.numbers-tool{background:linear-gradient(135deg,#f8f7ff,#f0eeff);border-color:#a29bfe}.numbers-tool:hover{background:linear-gradient(135deg,#a29bfe,#6c5ce7);border-color:#a29bfe}.numbers-tool:hover h3,.numbers-tool:hover p{color:#fff}.learning-garden{background:linear-gradient(135deg,#e8f5e9,#c8e6c9 50%,#a5d6a7);border:4px solid #4caf504d;border-radius:30px;box-shadow:0 10px 40px #00000026;margin:0 auto 40px;max-width:1800px;overflow:hidden;padding:40px 30px;position:relative}.learning-garden:before{animation:float 4s ease-in-out infinite;content:"🌸🦋🌼🐝";font-size:50px;letter-spacing:20px;opacity:.15;position:absolute;right:30px;top:20px}.garden-title{color:#2e7d32;font-family:Baloo Bhai\ 2,cursive;font-size:32px;font-weight:800;margin-bottom:40px;position:relative;text-align:center;text-shadow:2px 2px 4px #0000001a;z-index:1}.trees-container{grid-gap:50px;display:grid;gap:50px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1600px;position:relative;z-index:1}.learning-tree{align-items:center;background:linear-gradient(180deg,#0000,#0000 85%,#8bc34a33 0,#689f384d);border-radius:20px;display:flex;flex-direction:column;min-height:450px;padding:20px 20px 60px;position:relative}.learning-tree:after{bottom:15px;content:"🌱🌿🌾";font-size:24px;left:0;letter-spacing:10px;opacity:.6;position:absolute;right:0;text-align:center}.tree-trunk{align-items:flex-end;background:linear-gradient(180deg,#6d4c41,#8d6e63 50%,#6d4c41);border:3px solid #5d4037;border-radius:5px 5px 15px 15px;bottom:20px;box-shadow:0 6px 20px #0000004d;display:flex;height:100px;justify-content:center;left:50%;padding-bottom:10px;position:absolute;transform:translateX(-50%);width:70px;z-index:3}.tree-trunk:before{height:20px;left:15%;top:25%;width:12px}.tree-trunk:after,.tree-trunk:before{background:#5d4037;border-radius:50%;content:"";opacity:.4;position:absolute}.tree-trunk:after{height:18px;right:18%;top:50%;width:15px}.trunk-label{background:#5d4037b3;border-radius:8px;color:#fff;font-family:Baloo Bhai\ 2,cursive;font-size:15px;font-weight:800;letter-spacing:1px;padding:5px;text-shadow:1px 1px 3px #00000080}.tree-branches{grid-gap:20px;align-items:end;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));height:calc(100% - 120px);justify-items:center;padding:20px;position:relative;width:100%}.tree-branches:before{background:linear-gradient(180deg,#0000,#8d6e63 50%,#6d4c41);bottom:0;content:"";height:80px;left:50%;position:absolute;transform:translateX(-50%);width:4px;z-index:1}.leaf{align-items:center;animation:leafGrow .8s ease-out backwards;background:linear-gradient(135deg,#66bb6a,#43a047);border:2px solid #388e3c;border-radius:0 50% 50% 50%;box-shadow:0 4px 12px #00000026;cursor:pointer;display:flex;gap:8px;margin-bottom:30px;padding:14px 20px;position:relative;transform-origin:bottom center;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.leaf:before{background:linear-gradient(180deg,#8d6e63,#8d6e6380);bottom:-30px;box-shadow:0 2px 4px #0003;height:35px;left:50%;transform:translateX(-50%);width:3px;z-index:-1}.leaf:after,.leaf:before{content:"";position:absolute}.leaf:after{background:#ffffff4d;height:1px;left:8px;top:2px;transform:rotate(-20deg);width:50%}@keyframes leafGrow{0%{opacity:0;transform:scale(0) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.leaf-1{animation-delay:.1s}.leaf-2{animation-delay:.2s}.leaf-3{animation-delay:.3s}.leaf-4{animation-delay:.4s}.leaf-5{animation-delay:.5s}.leaf:hover{background:linear-gradient(135deg,#81c784,#66bb6a);border-color:#2e7d32;box-shadow:0 8px 25px #00000040;transform:scale(1.15) rotate(5deg)}.leaf:active{transform:scale(1.05) rotate(2deg)}.leaf-emoji{animation:leafSway 3s ease-in-out infinite;display:inline-block;font-size:20px}@keyframes leafSway{0%,to{transform:rotate(0deg)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.leaf:hover .leaf-emoji{animation:leafShake .5s ease}@keyframes leafShake{0%,to{transform:rotate(0deg)}25%{transform:rotate(-15deg)}50%{transform:rotate(15deg)}75%{transform:rotate(-10deg)}}.leaf-text{color:#fff;font-family:Baloo Bhai\ 2,cursive;font-size:14px;font-weight:700;text-shadow:1px 1px 2px #0000004d;white-space:nowrap}.prek-tree .leaf{background:linear-gradient(135deg,#ffb74d,#ffa726);border-color:#f57c00}.prek-tree .leaf:hover{background:linear-gradient(135deg,#ffcc80,#ffb74d);border-color:#ef6c00}.math-tree .leaf{background:linear-gradient(135deg,#64b5f6,#42a5f5);border-color:#1976d2}.math-tree .leaf:hover{background:linear-gradient(135deg,#90caf9,#64b5f6);border-color:#1565c0}.reading-tree .leaf{background:linear-gradient(135deg,#ba68c8,#ab47bc);border-color:#7b1fa2}.reading-tree .leaf:hover{background:linear-gradient(135deg,#ce93d8,#ba68c8);border-color:#6a1b9a}.grades-tree .leaf{background:linear-gradient(135deg,#f06292,#ec407a);border-color:#c2185b}.grades-tree .leaf:hover{background:linear-gradient(135deg,#f48fb1,#f06292);border-color:#ad1457}.mega-tree-section{background:linear-gradient(135deg,#fff8e1,#ffecb3 50%,#ffe082);border:4px solid #ffc1074d;border-radius:30px;box-shadow:0 10px 40px #00000026;margin:50px auto 0;max-width:1800px;padding:40px 30px}.mega-tree-title{color:#f57f17;font-family:Baloo Bhai\ 2,cursive;font-size:28px;font-weight:800;margin-bottom:35px;text-align:center;text-shadow:2px 2px 4px #0000001a}.grade-forest{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin:0 auto;max-width:1600px}.grade-tree{background:linear-gradient(180deg,#0000,#0000 85%,#8bc34a26 0,#689f3840);border-radius:15px;min-height:200px;padding:20px 15px 50px;position:relative;transition:all .3s ease}.grade-tree:after{bottom:10px;content:"🌱";font-size:20px;opacity:.5}.grade-tree:after,.grade-trunk{left:50%;position:absolute;transform:translateX(-50%)}.grade-trunk{align-items:center;background:linear-gradient(180deg,#6d4c41,#8d6e63 50%,#6d4c41);border:2px solid #5d4037;border-radius:5px 5px 12px 12px;bottom:20px;box-shadow:0 4px 15px #0000004d;cursor:pointer;display:flex;flex-direction:column;gap:5px;height:80px;justify-content:center;transition:all .3s ease;width:90px;z-index:2}.grade-trunk:hover{box-shadow:0 6px 20px #0006;transform:translateX(-50%) translateY(-3px)}.grade-trunk-label{background:#5d403799;border-radius:6px;color:#fff;font-family:Baloo Bhai\ 2,cursive;font-size:13px;font-weight:800;line-height:1.3;padding:3px 8px;text-align:center;text-shadow:1px 1px 2px #00000080}.trunk-arrow{animation:pulse 2s ease-in-out infinite;color:#fff;font-size:18px}.subject-branches{animation:branchesGrow .5s ease-out;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:20px;padding:15px 10px 0;position:relative}@keyframes branchesGrow{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.subject-branches:before{background:linear-gradient(180deg,#0000,#8d6e63);bottom:-20px;content:"";height:25px;left:50%;position:absolute;transform:translateX(-50%);width:3px;z-index:1}.subject-leaf{align-items:center;animation:leafPop .5s ease-out backwards;background:linear-gradient(135deg,#66bb6a,#43a047);border:2px solid #388e3c;border-radius:0 50% 50% 50%;box-shadow:0 3px 10px #00000026;cursor:pointer;display:flex;gap:6px;padding:10px 15px;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes leafPop{0%{opacity:0;transform:scale(0) rotate(-10deg)}60%{transform:scale(1.1) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}.subject-leaf:hover{background:linear-gradient(135deg,#81c784,#66bb6a);box-shadow:0 6px 20px #00000040;transform:scale(1.12) rotate(3deg)}.subject-leaf .leaf-emoji{animation:leafSway 3s ease-in-out infinite;font-size:16px}.subject-text{color:#fff;font-family:Baloo Bhai\ 2,cursive;font-size:12px;font-weight:700;text-shadow:1px 1px 2px #0000004d;white-space:nowrap}.grade-tree-0 .subject-leaf{background:linear-gradient(135deg,#ffb74d,#ffa726);border-color:#f57c00}.grade-tree-1 .subject-leaf{background:linear-gradient(135deg,#64b5f6,#42a5f5);border-color:#1976d2}.grade-tree-2 .subject-leaf{background:linear-gradient(135deg,#ba68c8,#ab47bc);border-color:#7b1fa2}.grade-tree-3 .subject-leaf{background:linear-gradient(135deg,#f06292,#ec407a);border-color:#c2185b}.home-container{grid-gap:40px;display:grid;gap:40px;grid-template-columns:350px 1fr;margin:0 auto;max-width:1800px;padding:0}.left-grade-section{display:flex;flex-direction:column;gap:18px}.right-section{display:flex;flex-direction:column;gap:25px}.section-card{background:#fff;border:3px solid #0000;border-radius:18px;box-shadow:0 8px 25px #0000001f;cursor:pointer;overflow:hidden;padding:30px;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.prek-card{background:linear-gradient(135deg,#ffe5e5,#ffcccb 50%,#ffdab9);border-color:#ffb3ba}.math-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb 50%,#90caf9);border-color:#64b5f6}.kg-card{background:linear-gradient(135deg,#f3e5f5,#e1bee7 50%,#ce93d8);border-color:#ba68c8}.card-header{align-items:center;display:flex;gap:20px}.card-icon{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.1));flex-shrink:0;font-size:48px}.card-title{flex:1 1}.card-title h2{color:#2d3436;font-size:22px;font-weight:700;margin:0 0 5px}.card-title p{color:#636e72;font-size:14px;font-weight:500;margin:0}.card-arrow{color:#2d3436;flex-shrink:0;font-size:24px;font-weight:700;transition:transform .3s ease}.section-card:hover{box-shadow:0 15px 40px #0003;transform:translateY(-5px)}.prek-card:hover{border-color:#ff6b6b}.math-card:hover{border-color:#2196f3}.kg-card:hover{border-color:#9c27b0}.section-card:hover .card-arrow{transform:scale(1.2)}.dropdown-content{animation:slideDown .3s ease-out;border-top:2px solid #0000001a;margin-top:25px;padding-top:20px}.dropdown-content a{align-items:center;background:#fffc;border:2px solid #0000;border-radius:10px;color:#2d3436;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:12px;margin-bottom:10px;padding:14px 18px;transition:all .3s ease}.option-icon{color:#00b894;font-size:16px;font-weight:700}.dropdown-content a:hover{background:#fff;border-color:#00b894;box-shadow:0 4px 12px #00000026;transform:translateX(5px)}.dropdown-content a:hover .option-icon{transform:scale(1.3)}.grade-card{background:linear-gradient(135deg,#a8e6cf,#3ddc84);border:4px solid #0000;border-radius:18px;box-shadow:0 6px 18px #00000026;cursor:pointer;overflow:hidden;padding:22px 25px;position:relative;text-align:center;transition:all .3s cubic-bezier(.175,.885,.32,1.275);width:100%}.grade-card:after{content:"📚";font-size:30px;opacity:.3;position:absolute;right:10px;top:10px;transition:all .3s ease}.grade-card:hover:after{opacity:.6;transform:rotate(15deg) scale(1.2)}.grade-card:hover{border-color:#3ddc84;box-shadow:0 12px 30px #3ddc844d;transform:translateY(-5px) scale(1.03)}.grade-card h2{color:#2d3436;font-size:18px;font-weight:700;margin:0;position:relative;z-index:1}.grade-card,.section-card{margin-bottom:15px}@media screen and (min-width:2560px){#mainpage{max-width:2400px;padding:40px 100px}.header{gap:24px;padding:7px 36px}.topnav{gap:30px;padding:20px 60px}.nav-item{height:100px;width:100px}.nav-item .nav-icon{font-size:60px}.quick-access-section{max-width:2200px}.quick-tools-grid{grid-template-columns:repeat(6,1fr);max-width:1800px}.home-container{gap:60px;grid-template-columns:400px 1fr;max-width:2200px}.welcome-message h1{font-size:22px}.welcome-message p{font-size:18px}}@media screen and (min-width:1920px) and (max-width:2559px){#mainpage{max-width:2000px;padding:35px 80px}.header{gap:50px;max-width:1900px}.topnav{gap:25px}.nav-item{height:90px;width:90px}.nav-item .nav-icon{font-size:50px}.home-container{gap:50px;grid-template-columns:380px 1fr;max-width:1900px}}@media screen and (min-width:1200px) and (max-width:1919px){#mainpage{padding:20px 40px}.nav-item{height:90px;width:90px}.nav-item .nav-icon{font-size:50px}}@media screen and (min-width:1024px) and (max-width:1199px){#mainpage{padding:20px 30px}.home-container{gap:25px;grid-template-columns:280px 1fr}.nav-item{font-size:15px;padding:12px 18px}.welcome-message h1{font-size:22px}.welcome-message p{font-size:13px}}@media screen and (max-width:1023px) and (min-width:768px){#mainpage{padding:15px 20px}.mega-tree-section{padding:30px 20px}.mega-tree-title{font-size:24px}.grade-forest{gap:25px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.grade-trunk{height:70px;width:80px}.grade-trunk-label{font-size:12px}.quick-access-section{margin-bottom:25px;padding:20px 15px}.quick-access-title{font-size:22px;margin-bottom:18px}.quick-tools-grid{gap:15px;grid-template-columns:repeat(3,1fr)}.tool-icon{font-size:48px}.quick-tool-card h3{font-size:16px}.quick-tool-card p{font-size:12px}.learning-garden{padding:25px 20px}.garden-title{font-size:26px;margin-bottom:30px}.trees-container{gap:35px;grid-template-columns:repeat(2,1fr)}.learning-tree{min-height:400px;padding-bottom:50px}.learning-tree:after{bottom:12px;font-size:20px}.tree-trunk{height:90px;width:60px}.trunk-label{font-size:14px}.tree-branches:before{height:70px}.leaf{margin-bottom:25px;padding:12px 16px}.leaf:before{bottom:-25px;height:30px}.leaf-text{font-size:13px}.home-container{gap:20px;grid-template-columns:1fr;padding:0 10px}.topnav{flex-wrap:nowrap;gap:15px;overflow-x:auto;padding:15px}.nav-item{flex-shrink:0;height:70px;width:70px}.nav-item .nav-icon{font-size:40px}.header{padding:15px 20px}.welcome-message h1{font-size:20px}.welcome-message p{font-size:13px}}@media screen and (max-width:767px){body{background-size:200% 200%}#mainpage{padding:12px 15px}.quick-access-section{margin-bottom:20px;padding:15px 12px}.quick-access-title{font-size:20px;margin-bottom:15px}.quick-tools-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.quick-tool-card{padding:18px 12px}.tool-icon{font-size:42px;margin-bottom:8px}.quick-tool-card h3{font-size:15px;margin:6px 0}.quick-tool-card p{font-size:11px}.learning-garden{margin-bottom:25px;padding:20px 15px}.garden-title{font-size:22px;margin-bottom:25px}.learning-garden:before{font-size:35px;right:15px;top:10px}.mega-tree-section{margin-top:30px;padding:25px 15px}.mega-tree-title{font-size:20px;margin-bottom:25px}.grade-forest{gap:20px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.grade-tree{min-height:180px;padding:15px 10px 45px}.grade-trunk{height:65px;width:75px}.grade-trunk-label{font-size:11px;padding:2px 6px}.trunk-arrow{font-size:16px}.subject-leaf{padding:8px 12px}.subject-text{font-size:11px}.trees-container{gap:30px;grid-template-columns:1fr}.learning-tree{min-height:350px;padding:15px 15px 45px}.learning-tree:after{bottom:10px;font-size:18px;letter-spacing:5px}.tree-trunk{bottom:15px;height:80px;width:55px}.trunk-label{font-size:13px;letter-spacing:.5px}.tree-branches{gap:12px}.tree-branches:before{height:60px}.leaf{margin-bottom:22px;padding:10px 14px}.leaf:before{bottom:-22px;height:25px}.leaf-emoji{font-size:18px}.leaf-text{font-size:12px}.header{flex-direction:column;gap:15px;padding:15px}.header:before{display:none}.brand-section{min-width:150px}.logo-container{padding:6px 12px}.logo-icon{font-size:24px}.logo-text{font-size:18px}.welcome-message h1{font-size:16px}.welcome-message p{font-size:12px;padding:3px 10px}.nav-right{flex-direction:column;gap:12px;width:100%}.buttons{gap:12px;justify-content:center;width:100%}.buttons button{flex:1 1;font-size:14px;min-width:120px;padding:12px 20px}.search{padding:8px 15px;width:100%}.search input{flex:1 1;font-size:14px;width:100%}.search input:focus{width:100%}.topnav{flex-wrap:nowrap;gap:12px;overflow-x:auto;padding:12px}.nav-item{flex-shrink:0;height:65px;width:65px}.nav-item .nav-icon{font-size:38px}.home-container{padding:0 5px}.grade-card,.section-card{padding:20px}.grade-card h2,.section-card h2{font-size:18px}.dropdown-content a{font-size:14px;padding:10px 12px}}@media screen and (max-width:480px){#mainpage{padding:10px 12px}.header{padding:12px}.logo-icon{font-size:20px}.logo-text,.welcome-message h1{font-size:16px}.welcome-message p{font-size:11px;padding:2px 8px}.buttons{flex-direction:column;gap:10px}.buttons button{font-size:13px;width:100%}.search{padding:6px 12px}.search input{font-size:13px;padding:8px 12px}.topnav{flex-wrap:nowrap;gap:10px;overflow-x:auto;padding:10px}.nav-item{flex-shrink:0;height:60px;width:60px}.nav-item .nav-icon{font-size:35px}.grade-card,.section-card{padding:16px}.grade-card h2,.section-card h2{font-size:16px}.dropdown-content{padding-left:5px}.dropdown-content a{font-size:13px;padding:8px 10px}.section-card .arrow{font-size:16px}}@media (hover:none) and (pointer:coarse){.buttons button,.grade-card,.nav-item,.section-card{align-items:center;display:flex;justify-content:center;min-height:48px}.nav-item{padding:14px 20px}}@media screen and (max-width:768px) and (orientation:landscape){.header{padding:10px 15px}.header,.nav-right{flex-direction:row}.topnav{flex-wrap:nowrap;gap:12px}}@media screen and (min-width:768px) and (max-width:1024px) and (orientation:landscape){.home-container{grid-template-columns:300px 1fr}.topnav{flex-wrap:nowrap;gap:18px}.nav-item{height:75px;width:75px}.nav-item .nav-icon{font-size:45px}}@media screen and (min-width:768px) and (max-width:1024px) and (orientation:portrait){.home-container{grid-template-columns:1fr}.topnav{flex-wrap:nowrap;gap:12px;overflow-x:auto}.nav-item{flex-shrink:0;height:70px;width:70px}.nav-item .nav-icon{font-size:40px}.search-results-dropdown{right:40px;width:380px}}@media screen and (max-width:768px){.search-results-dropdown{left:20px;max-height:60vh;position:fixed;right:20px;top:120px;width:auto}.profile-dropdown{right:0;top:60px}.result-icon{font-size:24px}.result-name{font-size:14px}.result-description{font-size:11px}.result-category{font-size:10px;padding:3px 10px}}.guest-mode-banner{align-items:center;animation:slideDown .4s ease;background:#7c3aed0f;border-bottom:1px solid #7c3aed1f;color:#4c1d95;display:flex;flex-wrap:wrap;font-size:13.5px;font-weight:600;gap:12px;justify-content:center;margin-bottom:0;padding:8px 24px;position:relative;z-index:999970}.guest-banner-content{align-items:center;display:flex;gap:7px}.guest-icon{font-size:15px}.guest-message{color:#5b21b6;font-size:13.5px;font-weight:600}.guest-action-buttons{display:flex;flex-shrink:0;gap:8px}.guest-pin-btn{background:#0000;border:1.5px solid #f59e0b;border-radius:999px;color:#d97706;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:700;padding:4px 14px;transition:all .2s ease}.guest-pin-btn:hover{background:#f59e0b;border-color:#f59e0b;color:#fff}.guest-login-btn{background:#0000;border:1.5px solid #7c3aed;border-radius:999px;color:#7c3aed;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:700;padding:4px 14px;transition:all .2s ease}.guest-login-btn:hover,.guest-signup-btn{background:#7c3aed;color:#fff}.guest-signup-btn{border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:700;padding:4px 14px;transition:all .2s ease}.guest-signup-btn:hover{background:#6d28d9}.usage-indicators-container{animation:fadeIn .5s ease;background:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:12px 30px}@media (max-width:768px){.guest-mode-banner{gap:8px;padding:7px 16px}.guest-message{font-size:12.5px}.usage-indicators-container{gap:8px;padding:12px 20px}}*{box-sizing:border-box}#mainpage{margin:0 auto;max-width:1600px;padding:0 5%}.student-nav-wrapper{align-items:center;display:flex;justify-content:center;margin:0 0 28px;width:100%}.flat-topnav{align-items:flex-end;backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6);background:linear-gradient(135deg,#0f0c29c7,#2c1c8ec7 50%,#4a3affc7);border:1px solid #a78bfa4d;border-radius:999px;box-shadow:0 8px 40px #4a3aff73,0 2px 12px #0000004d,inset 0 1px 0 #ffffff26;box-sizing:border-box;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:4px;justify-content:center;padding:10px 18px}.nav-item{align-items:center;background:#0000;border:none;border-radius:16px;box-sizing:border-box;color:#ffffff8c!important;cursor:pointer;display:inline-flex!important;flex:0 0 auto!important;flex-direction:column!important;font-family:inherit;font-size:11px;font-weight:700;gap:3px;justify-content:flex-end;min-width:58px;padding:6px 12px;position:relative;transition:all .25s cubic-bezier(.34,1.4,.64,1);white-space:nowrap!important;width:auto!important}.nav-icon{filter:grayscale(30%);font-size:22px;line-height:1;transition:transform .3s cubic-bezier(.34,1.6,.64,1),filter .2s ease}.nav-icon,.nav-text{background:#0000!important;display:block;flex-shrink:0}.nav-text{letter-spacing:.2px;line-height:1.1;transition:color .2s ease;white-space:nowrap!important}.nav-item:hover:not(.active){background:#ffffff14!important;color:#ffffffd9!important}.nav-item:hover:not(.active) .nav-icon{filter:grayscale(0);transform:translateY(-5px) scale(1.18)}.nav-item.active{background:#ffffff1f!important;box-shadow:0 0 0 1.5px #a78bfa99,0 4px 20px #a78bfa59;color:#fff!important}.nav-item.active .nav-icon{filter:drop-shadow(0 4px 10px rgba(167,139,250,.8)) grayscale(0);transform:translateY(-6px) scale(1.22)}.nav-item.active .nav-text{color:#c4b5fd!important}.nav-item.active:after{background:#a78bfa;border-radius:50%;bottom:3px;box-shadow:0 0 6px 2px #a78bfab3;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:4px}@media screen and (max-width:860px){.flat-topnav{gap:2px;padding:8px 12px}.nav-item{min-width:52px;padding:6px 10px}.nav-icon{font-size:20px!important}}@media screen and (max-width:480px){.nav-text{display:none!important}.nav-item{min-width:44px;padding:8px 8px 6px}.flat-topnav{padding:8px 10px}}.brand-section-buttons{align-items:center;display:flex;margin-left:auto}.brand-section-buttons button{background-color:initial;border:none;color:#fff;cursor:pointer;margin-left:10px}.brand-section-buttons button.login:hover,.brand-section-buttons button.signup:hover{background-color:#45a049}.assessment{border-collapse:collapse;margin:20px auto;max-width:80%;padding:20px}.assessment td,.assessment th{background-color:#fff;border:1px solid #ddd}.summary{border:1px solid #ccc;padding:10px}.question,.summary{background-color:#f9f9f9;margin-top:20px}input[type=text]{margin-bottom:10px;padding:8px;width:100%}button{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 20px}button,button:hover{background-color:#04aa6d}button:disabled{background-color:#ccc;cursor:not-allowed}.selected{background-color:blue}.dropdown-content{margin-top:10px;text-align:left}.dropdown-content a{color:#04aa6d;display:block;padding:8px 0;text-decoration:none;transition:color .3s}.dropdown-content a:hover{color:#00796b;text-decoration:underline}.generateNumbersMainDiv{margin:0 auto;max-width:600px;padding:20px}.generateNumberQuesTb{border:1px solid #ddd;border-collapse:collapse;width:100%}.generateNumberQuesTb td,.generateNumberQuesTb th{border-bottom:1px solid #ddd;padding:8px;text-align:left}.generateNumberQuesTb th{background-color:#f2f2f2}.generateNumberQuesTb input[type=number],.generateNumberQuesTb input[type=text],.generateNumberQuesTb select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;padding:6px 10px;width:100%}.generateNumberQuesTb button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;margin:auto;padding:8px 0;width:40%}.generateNumberQuesTb button:hover{background-color:#45a049}.generated-numbers-table{border:1px solid #ddd;border-collapse:collapse;width:100%}.generated-numbers-table td{border:1px solid #ddd;padding:8px;position:relative;text-align:center;transition:all .3s ease}.generated-numbers-table td.number-bubble-out{align-items:center!important;animation:numberBubbleZoom 3s ease-out forwards!important;background:linear-gradient(135deg,#667eea,#764ba2)!important;border:none!important;border-radius:30px!important;box-shadow:0 30px 80px #667eeacc!important;color:#fff!important;display:flex!important;font-size:12em!important;font-weight:900!important;height:400px!important;justify-content:center!important;left:var(--start-x)!important;position:fixed!important;text-shadow:8px 8px 16px #00000080!important;top:var(--start-y)!important;transform:translate(-50%,-50%) scale(1)!important;width:400px!important;z-index:9999!important}@keyframes numberBubbleZoom{0%{opacity:0;transform:translate(-50%,-50%) scale(.1)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}40%{transform:translate(-50%,-50%) scale(.95)}60%{transform:translate(-50%,-50%) scale(1)}85%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.1)}}.pagination{margin-top:10px}.pagination button{background-color:#008cba;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px;text-decoration:none}.pagination button:hover{background-color:#004a8f}.card-container{flex-wrap:wrap}.card,.card-container{display:flex;justify-content:center}.card{align-items:center;background-color:#47edff;border:1px solid #ccc;border-radius:10px;font-size:2rem;height:120px;margin:10px;perspective:1000px;width:120px}.letter{color:#fff;font-size:8rem;transform-style:preserve-3d;transition:transform .5s}.card:hover .letter{color:coral;transform:scale(1.5);transition:transform .5s ease}.container{display:flex}.sidebar{background-color:grey;border:1px solid #ccc;flex:0 0 250px;height:fit-content;padding:20px}.content{flex:1 1;padding:20px}@media screen and (max-width:1024px){.container{flex-direction:column}.sidebar{border-bottom:1px solid #ccc;border-right:none;flex:1 1;width:100%}}@media screen and (max-width:768px){.header{padding:10px}.header,.nav-right{align-items:center;flex-direction:column}.buttons,.nav-right{width:100%}.buttons{flex-direction:row;justify-content:center;margin-bottom:10px}.buttons button{margin:0 5px}.search{margin-left:0;margin-top:10px}.search,.search input[type=text]{width:100%}.contact-form{margin:10px;padding:10px;width:95%}.assessment{max-width:95%}.assessment,.generateNumbersMainDiv{padding:10px}.card-container{justify-content:center}.card{font-size:1.5rem;height:100px;margin:5px;width:100px}.letter{font-size:6rem}.section-card{margin:10px 0;width:100%}.brand-section img{height:56px;width:auto}}@media screen and (max-width:480px){#mainpage{padding:0 2%}.header{padding:8px}.brand-section img{height:44px;width:auto}.buttons button{font-size:12px;padding:6px 10px}.search input[type=text]{font-size:14px;padding:8px}.contact-form{margin:5px;padding:8px;width:98%}.contact-form td,.contact-form th{font-size:14px;padding:4px}.assessment{max-width:98%;padding:8px}.generateNumbersMainDiv{padding:8px}.generateNumberQuesTb button{width:100%}.card{font-size:1.2rem;height:80px;margin:4px;width:80px}.letter{font-size:4rem}.section-card{padding:15px}.section-card h2{font-size:18px}button{font-size:14px;padding:8px 16px}}@media (hover:none) and (pointer:coarse){.buttons button,.section-card,button{min-height:44px;min-width:44px}.card{min-height:100px;min-width:100px}}@media screen and (max-width:768px) and (orientation:landscape){.header{padding:8px 15px}.header,.nav-right{flex-direction:row}.buttons{margin-bottom:0;margin-right:10px}.search{margin-top:0;width:auto}}.brand-section img{height:144px;object-fit:contain;width:auto}.search-icon img{height:20px;transition:transform .3s;width:20px}.search-icon:hover img{transform:scale(1.2)}.ft-root{--ft-bg1:#0f172a;--ft-bg2:#111827;--ft-bg3:#0f172a;--ft-surface:#1e293b;--ft-border:#334155;--ft-text:#f1f5f9;--ft-text-dim:#cbd5e1;--ft-purple:#a78bfa;--ft-amber:#fbbf24;--ft-trans:all .2s cubic-bezier(.4,0,.2,1);--ft-pad-x:32px;--ft-pad-y:28px;--ft-main-y:36px;--ft-gap:32px;--ft-max:1200px;--ft-t-xs:0.75rem;--ft-t-sm:0.82rem;--ft-t-md:0.95rem;background:linear-gradient(160deg,var(--ft-bg1) 0,var(--ft-bg2) 55%,var(--ft-bg3) 100%);color:var(--ft-text);font-family:Baloo Bhai\ 2,Nunito,Segoe UI,cursive,sans-serif;overflow:hidden;position:relative}.ft-cta-band{background:var(--ft-surface);padding:var(--ft-pad-y) var(--ft-pad-x);position:relative;z-index:1}.ft-cta-inner{flex-wrap:wrap;gap:24px;justify-content:space-between;margin:0 auto;max-width:var(--ft-max)}.ft-cta-copy,.ft-cta-inner{align-items:center;display:flex}.ft-cta-copy{gap:16px}.ft-cta-emoji{flex-shrink:0;font-size:1.7rem}.ft-cta-copy strong{color:#fff;display:block;font-size:var(--ft-t-md);font-weight:800;line-height:1.25}.ft-cta-copy span{color:var(--ft-text-dim);font-size:var(--ft-t-sm)}.ft-cta-btns{display:flex;flex-wrap:wrap;gap:12px}.ft-btn-primary{background:var(--ft-amber);border:none;border-radius:999px;box-shadow:0 4px 16px #fbbf2459;color:var(--ft-bg1);cursor:pointer;font-family:inherit;font-size:var(--ft-t-sm);font-weight:800;padding:9px 22px;transition:var(--ft-trans)}.ft-btn-primary:hover{background:#fcd34d;box-shadow:0 8px 24px #fbbf2473;transform:translateY(-2px)}.ft-btn-ghost{background:#0000;border:1.5px solid #ffffff80;border-radius:999px;color:#fff;cursor:pointer;font-family:inherit;font-size:var(--ft-t-sm);font-weight:700;padding:9px 20px;transition:var(--ft-trans)}.ft-btn-ghost:hover{background:#ffffff1f;border-color:#fffc;transform:translateY(-2px)}.ft-main{grid-gap:var(--ft-gap);align-items:start;border-top:1px solid var(--ft-border);display:grid;gap:var(--ft-gap);grid-template-columns:240px repeat(4,1fr);margin:0 auto;max-width:var(--ft-max);padding:var(--ft-main-y) var(--ft-pad-x);position:relative;z-index:1}.ft-brand-col{display:flex;flex-direction:column;gap:16px}.ft-logo{align-items:center;display:flex;gap:10px}.ft-logo-mark{color:var(--ft-amber);filter:drop-shadow(0 0 8px rgba(251,191,36,.5));font-size:1.4rem;line-height:1}.ft-logo-name{color:#fff;font-size:1.35rem;font-weight:900;letter-spacing:.5px;line-height:1}.ft-brand-tagline{color:var(--ft-text-dim);font-size:var(--ft-t-sm);line-height:1.55;margin:0;max-width:220px}.ft-social{display:flex;gap:10px}.ft-soc{align-items:center;background:var(--ft-surface);border:1px solid var(--ft-border);border-radius:12px;color:#fff;display:flex;font-size:.9rem;font-weight:800;height:38px;justify-content:center;text-decoration:none;transition:var(--ft-trans);width:38px}.ft-soc:hover{box-shadow:0 6px 20px #0000004d;transform:translateY(-3px)}.ft-soc-yt:hover{background:red;border-color:red}.ft-soc-li:hover{background:#0a66c2;border-color:#0a66c2}.ft-soc-fb:hover{background:#1877f2;border-color:#1877f2}.ft-badges{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.ft-badge{background:var(--ft-surface);border:1px solid var(--ft-border);border-radius:999px;color:var(--ft-text-dim);font-size:var(--ft-t-xs);font-weight:600;padding:5px 11px;white-space:nowrap}.ft-nav-col{display:flex;flex-direction:column;gap:0;min-width:0}.ft-nav-title{color:var(--ft-amber);font-size:var(--ft-t-xs);font-weight:700;letter-spacing:1.2px;margin:0 0 16px;padding-bottom:10px;position:relative;text-transform:uppercase}.ft-nav-title:after{background:var(--ft-amber);border-radius:2px;bottom:0;content:"";height:2px;left:0;opacity:.65;position:absolute;width:28px}.ft-link{background:none;border:none;color:var(--ft-text);cursor:pointer;font-family:inherit;font-size:var(--ft-t-sm);line-height:1.35;padding:5px 0;text-align:left;transition:var(--ft-trans);will-change:transform}.ft-link:hover{color:#fff;text-shadow:0 0 12px #a78bfa8c;transform:translateX(6px)}.ft-bottom{align-items:center;border-top:1px solid var(--ft-border);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:0 auto;max-width:var(--ft-max);padding:var(--ft-pad-y) var(--ft-pad-x);position:relative;z-index:1}.ft-copyright{color:var(--ft-text-dim);font-size:var(--ft-t-sm)}.ft-visit-stats{gap:8px}.ft-legal,.ft-visit-stats{align-items:center;color:var(--ft-text-dim);display:flex;font-size:var(--ft-t-sm)}.ft-legal{gap:10px}.ft-legal-btn{background:none;border:none;color:var(--ft-text);cursor:pointer;font-family:inherit;font-size:inherit;padding:0;transition:var(--ft-trans)}.ft-legal-btn:hover{color:var(--ft-amber)}@media (max-width:1100px){.ft-main{gap:28px;grid-template-columns:repeat(4,1fr);row-gap:40px}.ft-brand-col{align-items:center;flex-direction:row;flex-wrap:wrap;gap:24px;grid-column:1/-1}.ft-brand-col .ft-logo{flex-shrink:0}.ft-brand-tagline{flex:1 1 260px;max-width:420px}.ft-social{flex-shrink:0}.ft-badges{flex:1 1 100%;margin-top:4px}}@media (max-width:768px){.ft-cta-inner{align-items:flex-start;flex-direction:column;gap:16px}.ft-cta-btns{width:100%}.ft-main{gap:24px;grid-template-columns:1fr 1fr;padding:32px 20px;row-gap:32px}.ft-brand-col{align-items:flex-start;flex-direction:column;gap:14px;grid-column:1/-1}.ft-brand-tagline{max-width:100%}.ft-bottom,.ft-cta-band{padding:22px 20px}.ft-bottom{align-items:center;flex-direction:column;gap:10px;text-align:center}}@media (max-width:480px){.ft-main{gap:28px;grid-template-columns:1fr;padding:28px 16px}.ft-bottom,.ft-cta-band{padding:20px 16px}.ft-cta-btns{flex-direction:column;width:100%}.ft-btn-ghost,.ft-btn-primary{text-align:center;width:100%}}#mainpage .ft-logo-name{color:#fff}#mainpage .ft-badge,#mainpage .ft-brand-tagline,#mainpage .ft-copyright,#mainpage .ft-cta-copy span,#mainpage .ft-legal,#mainpage .ft-visit-stats{color:var(--ft-text-dim)}#mainpage .ft-cta-copy strong{color:#fff}#mainpage .ft-legal-btn,#mainpage .ft-link{color:var(--ft-text)}#mainpage .ft-logo-mark,#mainpage .ft-nav-title{color:var(--ft-amber)}#mainpage .ft-soc{color:#fff}#mainpage .ft-btn-primary{color:var(--ft-bg1)}#mainpage .ft-btn-ghost,#mainpage .ft-legal-btn:hover,#mainpage .ft-link:hover{color:#fff}.enhanced-search-backdrop{animation:searchFadeIn .2s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0f172aa6;bottom:0;left:0;position:fixed;right:0;top:0;z-index:10000000}@keyframes searchFadeIn{0%{opacity:0}to{opacity:1}}.enhanced-search-modal{animation:searchSlideIn .28s cubic-bezier(.34,1.56,.64,1);background:#fff;border:2px solid #ffffffe6;border-radius:26px;box-shadow:0 25px 70px -12px #0f172a73,0 0 0 1px #ffffff4d,0 0 80px #6366f138;display:flex;flex-direction:column;left:50%;max-height:88vh;max-width:860px;overflow:hidden;position:fixed;top:6%;transform:translateX(-50%);width:92%;z-index:10000001}@keyframes searchSlideIn{0%{opacity:0;transform:translateX(-50%) translateY(-24px) scale(.96)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.enhanced-search-modal .search-top-banner{align-items:center;animation:bannerGradient 8s ease infinite alternate;background:linear-gradient(135deg,#4f46e5,#7c3aed 36%,#ec4899 74%,#f59e0b);background-size:200% 200%;box-sizing:border-box;color:#fff;display:flex;flex:0 0 auto;gap:16px;justify-content:space-between;margin:0;padding:14px 22px;position:relative;-webkit-user-select:none;user-select:none;z-index:15}@keyframes bannerGradient{0%{background-position:0 50%}to{background-position:100% 50%}}.search-branding{align-items:center;display:flex;gap:12px;min-width:0}.search-brand-icon-wrapper{align-items:center;background:#ffffff38;border:2px solid #ffffff73;border-radius:14px;box-shadow:0 4px 12px #00000026;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.search-brand-mascot{animation:mascotBounce 2s ease-in-out infinite alternate;display:inline-block;font-size:1.55rem}@keyframes mascotBounce{0%{transform:translateY(0) rotate(0deg) scale(1)}to{transform:translateY(-3px) rotate(8deg) scale(1.1)}}.search-brand-text{display:flex;flex-direction:column;min-width:0}.search-brand-title{color:#fff;font-size:1.22rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;text-shadow:0 2px 4px #0003}.search-brand-sub{color:#ffffffeb;font-size:.82rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-search-btn{align-items:center;background:#ffffff38;border:1.5px solid #ffffff80;border-radius:999px;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.92rem;font-weight:800;gap:8px;outline:none;padding:7px 16px;transition:all .18s cubic-bezier(.16,1,.3,1)}.close-search-btn:hover{background:#ef4444;border-color:#fee2e2;box-shadow:0 6px 18px #ef444473;color:#fff;transform:scale(1.05)}.close-search-btn:active{transform:scale(.96)}.close-btn-sym{font-size:1.05rem;font-weight:900}.close-btn-txt{letter-spacing:.02em}.close-btn-shortcut{background:#0003;border:1px solid #ffffff40;border-radius:6px;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:2px 7px}.enhanced-search-modal .search-header{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-bottom:1.5px solid #e2e8f0;box-sizing:border-box;flex:0 0 auto;margin:0;padding:16px 22px;position:relative;z-index:14}.search-input-wrapper{align-items:center;background:#fff;border:2px solid #cbd5e1;border-radius:16px;box-shadow:0 4px 16px -2px #0f172a14,inset 0 2px 4px #00000005;display:flex;gap:12px;padding:12px 18px;transition:all .2s ease}.search-input-wrapper:focus-within{border-color:#6366f1;box-shadow:0 6px 20px -2px #6366f140,0 0 0 4px #6366f126;transform:translateY(-1px)}.search-input{background:#0000;border:none;color:#0f172a;flex:1 1;font-family:inherit;font-size:1.14rem;font-weight:600;outline:none}.search-input::placeholder{color:#94a3b8;font-size:1.02rem;font-weight:500}.search-spinner{animation:spin 1s linear infinite;display:inline-block;font-size:1.25rem}.clear-btn{align-items:center;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:50%;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;font-weight:800;height:28px;justify-content:center;transition:all .15s ease;width:28px}.clear-btn:hover{background:#ef4444;border-color:#ef4444;color:#fff;transform:scale(1.1)}.enhanced-search-modal .category-filters,.enhanced-search-modal .enhanced-search-category-filters{align-items:center!important;background:#fff!important;border-bottom:1.5px solid #e2e8f0!important;box-sizing:border-box!important;display:flex!important;flex:0 0 auto!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:8px!important;justify-content:flex-start!important;margin:0!important;overflow-x:auto!important;overflow-y:hidden!important;padding:10px 22px!important;position:relative!important;scrollbar-color:#cbd5e1 #0000;scrollbar-width:thin;white-space:nowrap!important;width:100%!important;z-index:10!important}.enhanced-search-modal .category-filters::-webkit-scrollbar,.enhanced-search-modal .enhanced-search-category-filters::-webkit-scrollbar{height:5px}.enhanced-search-modal .category-filters::-webkit-scrollbar-thumb,.enhanced-search-modal .enhanced-search-category-filters::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.enhanced-search-modal .category-chip{align-items:center!important;background:#f8fafc!important;border:1.5px solid #e2e8f0!important;border-radius:999px!important;box-sizing:border-box!important;color:#475569!important;cursor:pointer!important;display:inline-flex!important;flex:0 0 auto!important;flex-shrink:0!important;font-size:.88rem!important;font-weight:700!important;gap:6px!important;margin:2px 0!important;padding:7px 15px!important;transition:all .18s cubic-bezier(.16,1,.3,1)!important;white-space:nowrap!important}.enhanced-search-modal .category-chip:hover{background:#f1f5f9!important;border-color:#6366f1!important;border-color:var(--chip-color,#6366f1)!important;color:#6366f1!important;color:var(--chip-color,#6366f1)!important;transform:translateY(-2px)!important}.enhanced-search-modal .category-chip.active{background:#6366f1!important;background:var(--chip-color,#6366f1)!important;border-color:#6366f1!important;border-color:var(--chip-color,#6366f1)!important;box-shadow:0 4px 14px #6366f159!important;color:#fff!important;transform:translateY(-1px) scale(1.02)!important}.enhanced-search-modal .search-content{background:#fafafa!important;box-sizing:border-box!important;clear:both!important;flex:1 1 auto!important;margin:0!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;padding:22px!important;position:relative!important;scrollbar-color:#cbd5e1 #0000;scrollbar-width:thin;width:100%!important;z-index:1!important}.enhanced-search-modal .search-content::-webkit-scrollbar{width:6px}.enhanced-search-modal .search-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.search-section{margin-bottom:24px}.section-header{justify-content:space-between;margin-bottom:12px;padding-bottom:4px}.section-header,.section-title{align-items:center;display:flex}.section-title{color:#1e293b;font-size:1.02rem;font-weight:800;gap:8px;letter-spacing:-.01em}.section-hint{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:.8rem;font-weight:600;padding:3px 9px}.clear-recent-btn{background:none;border:1px solid #fca5a5;border-radius:999px;color:#ef4444;cursor:pointer;font-size:.8rem;font-weight:700;padding:3px 10px;transition:all .18s ease}.clear-recent-btn:hover{background:#ef4444;color:#fff}.results-list{display:flex;flex-direction:column;gap:10px}.result-item{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 6px #00000008;cursor:pointer;display:flex;gap:14px;overflow:hidden;padding:12px 18px;position:relative;transition:all .18s cubic-bezier(.16,1,.3,1)}.result-item.selected,.result-item:hover{background:linear-gradient(135deg,#fff,#f5f3ff);border-color:#6366f1;box-shadow:0 8px 24px -4px #6366f138;transform:translateY(-2px) translateX(3px)}.result-icon-bubble{align-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1.5px solid #bfdbfe;border-radius:14px;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .2s ease;width:48px}.result-item.selected .result-icon-bubble,.result-item:hover .result-icon-bubble{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-color:#818cf8;transform:scale(1.08) rotate(4deg)}.result-icon{font-size:1.7rem;line-height:1}.result-info{flex:1 1;min-width:0}.result-name{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:3px}.result-title-text{color:#0f172a;font-size:1.05rem;font-weight:800;letter-spacing:-.01em}.result-sub-badge{background:#ecfdf5;border:1px solid #a7f3d0;color:#059669;letter-spacing:.03em;text-transform:uppercase}.result-sub-badge,.result-view-pill{border-radius:8px;font-size:.72rem;font-weight:800;padding:2px 8px}.result-view-pill{background:#dbeafe;border:1px solid #93c5fd;color:#1d4ed8}.result-description{color:#64748b;font-size:.88rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-meta{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:5px}.result-category{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;color:#475569;font-size:.75rem;font-weight:700;padding:3px 9px}.relevance-score{font-size:.85rem;font-weight:800;letter-spacing:1px}.result-hover-cta{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;color:#4f46e5;display:inline-flex;font-size:.78rem;font-weight:800;gap:4px;opacity:0;padding:3px 9px;transform:translateX(6px);transition:all .18s ease}.result-item.selected .result-hover-cta,.result-item:hover .result-hover-cta{opacity:1;transform:translateX(0)}.adventures-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}.adventure-card{align-items:center;border:2px solid;border-radius:18px;box-shadow:0 4px 12px #0000000a;cursor:pointer;display:flex;gap:14px;overflow:hidden;padding:14px 16px;position:relative;transition:all .22s cubic-bezier(.16,1,.3,1)}.adventure-card:hover{box-shadow:0 14px 28px -6px #0000001f;transform:translateY(-4px) scale(1.015)}.adv-icon-box{align-items:center;background:#ffffffd9;border:1px solid #00000014;border-radius:14px;box-shadow:0 2px 6px #0000000f;display:flex;flex-shrink:0;height:46px;justify-content:center;transition:transform .2s ease;width:46px}.adventure-card:hover .adv-icon-box{transform:scale(1.12) rotate(6deg)}.adv-icon{font-size:1.65rem;line-height:1}.adv-info{flex:1 1;min-width:0}.adv-header-row{align-items:center;display:flex;gap:8px;margin-bottom:2px}.adv-title{color:#0f172a;font-size:.98rem;font-weight:800;letter-spacing:-.01em}.adv-badge{background:#fffc;border:1px solid;border-radius:6px;font-size:.68rem;font-weight:800;letter-spacing:.04em;padding:1px 7px;text-transform:uppercase}.adv-desc{color:#475569;font-size:.8rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adv-cta-arrow{font-size:1.15rem;font-weight:900;opacity:.75;transition:transform .2s ease,opacity .2s ease}.adventure-card:hover .adv-cta-arrow{opacity:1;transform:translateX(4px)}.quick-chips{display:flex;flex-wrap:wrap;gap:8px}.quick-chip{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:999px;box-shadow:0 2px 4px #00000008;color:#334155;cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:700;gap:6px;padding:8px 16px;transition:all .18s cubic-bezier(.16,1,.3,1)}.quick-chip:hover{background:#eef2ff;border-color:#6366f1;box-shadow:0 6px 14px #6366f12e;color:#4f46e5;transform:translateY(-2px)}.quick-chip.popular{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fde68a;color:#92400e}.quick-chip.popular:hover{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b;box-shadow:0 6px 16px #f59e0b40;color:#78350f}.quick-actions{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.quick-action{background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 6px #00000008;color:#1e293b;cursor:pointer;font-size:.92rem;font-weight:700;padding:13px 16px;text-align:left;transition:all .18s ease}.quick-action:hover{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-color:#6366f1;box-shadow:0 8px 18px #6366f12e;color:#4338ca;transform:translateY(-2px)}.no-results{background:#fff;border:2px dashed #cbd5e1;border-radius:20px;color:#64748b;padding:45px 20px;text-align:center}.no-results-icon{animation:mascotBounce 1.5s ease-in-out infinite alternate;display:inline-block;font-size:3.2rem;margin-bottom:12px}.no-results p{color:#1e293b;font-size:1.15rem;font-weight:800;margin:0 0 6px}.no-results small{color:#64748b;display:block;font-size:.92rem;margin-bottom:18px}.no-results-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.enhanced-search-modal .search-footer{align-items:center;background:#fff;border-top:1.5px solid #e2e8f0;box-sizing:border-box!important;display:flex;flex:0 0 auto!important;gap:14px;justify-content:space-between;margin:0!important;padding:12px 22px;position:relative!important;z-index:10!important}.search-hints-group{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.search-hint-pill{align-items:center;color:#64748b;display:inline-flex;font-size:.78rem;font-weight:600;gap:5px}.search-hint-pill kbd{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;box-shadow:0 1px 2px #00000014;color:#334155;font-family:inherit;font-size:.72rem;font-weight:800;padding:2px 6px}.footer-close-btn{align-items:center;background:#fee2e2;border:1.5px solid #fca5a5;border-radius:999px;color:#b91c1c;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:800;gap:6px;padding:6px 16px;transition:all .18s ease}.footer-close-btn:hover{background:#ef4444;border-color:#ef4444;box-shadow:0 4px 12px #ef444459;color:#fff;transform:translateY(-1px)}.question-inspect-modal{background:#fff;border:2px solid #e2e8f0;border-radius:22px;box-shadow:0 25px 65px #0006;display:flex;flex-direction:column;left:50%;max-height:85vh;max-width:680px;overflow-y:auto;padding:24px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:10000005}.question-inspect-header{align-items:center;border-bottom:1.5px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.question-inspect-title{color:#0f172a;font-size:1.15rem;font-weight:800}.question-close-btn{align-items:center;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:50%;color:#475569;cursor:pointer;display:flex;font-size:1.1rem;font-weight:800;height:32px;justify-content:center;transition:all .15s ease;width:32px}.question-close-btn:hover{background:#ef4444;border-color:#ef4444;color:#fff}.question-text-box{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;color:#0f172a;font-size:1.1rem;font-weight:700;line-height:1.5;margin-bottom:18px;padding:16px 20px}.question-options-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.question-option-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:14px;display:flex;gap:12px;padding:12px 16px;transition:all .18s ease}.question-option-card.correct-revealed{background:#ecfdf5;border-color:#10b981;box-shadow:0 4px 14px #10b98133}.option-badge-letter{align-items:center;background:#e2e8f0;border-radius:50%;color:#334155;display:flex;flex-shrink:0;font-size:.95rem;font-weight:800;height:32px;justify-content:center;width:32px}.question-option-card.correct-revealed .option-badge-letter{background:#10b981;color:#fff}.option-content-text{color:#1e293b;flex:1 1;font-size:1rem;font-weight:600}.option-correct-badge{background:#10b981;border-radius:8px;color:#fff;font-size:.72rem;font-weight:800;padding:3px 9px;text-transform:uppercase}.question-answer-banner{background:#ecfdf5;border:1.5px solid #a7f3d0;border-radius:14px;color:#065f46;margin-bottom:20px;padding:14px 18px}.question-answer-banner strong{display:block;font-size:1.05rem;margin-bottom:4px}.question-inspect-actions{align-items:center;border-top:1.5px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:auto;padding-top:14px}.btn-toggle-answer{background:#4f46e5;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:.92rem;font-weight:700;padding:10px 18px;transition:all .18s ease}.btn-toggle-answer:hover{background:#4338ca}.btn-print-question{background:#10b981;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:.92rem;font-weight:700;padding:10px 18px;transition:all .18s ease}.btn-print-question:hover{background:#059669}.btn-practice-question{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:12px;color:#334155;cursor:pointer;font-size:.92rem;font-weight:700;padding:10px 18px;transition:all .18s ease}.btn-practice-question:hover{background:#e2e8f0}@media (max-width:768px){.enhanced-search-modal{border-radius:20px;max-height:94vh;top:2%;width:96%}.search-top-banner{padding:12px 16px}.close-btn-shortcut,.search-brand-sub{display:none}.search-header{padding:12px 16px}.search-input-wrapper{padding:10px 14px}.search-input{font-size:1rem}.enhanced-search-modal .category-filters,.enhanced-search-modal .enhanced-search-category-filters{gap:6px!important;padding:8px 16px!important}.enhanced-search-modal .category-chip{font-size:.82rem!important;padding:6px 12px!important}.enhanced-search-modal .search-content{padding:16px!important}.adventures-grid{gap:10px;grid-template-columns:1fr}.adventure-card{padding:12px 14px}.result-item{gap:10px;padding:10px 14px}.result-icon-bubble{height:40px;width:40px}.result-icon{font-size:1.4rem}.result-hover-cta{display:none}.search-footer{align-items:stretch;flex-direction:column-reverse;gap:10px}.footer-close-btn{justify-content:center;padding:8px}}@media print{.enhanced-search-backdrop,.enhanced-search-modal{display:none!important}.question-inspect-modal{border:none!important;box-shadow:none!important;max-width:100%!important;padding:0!important;position:static!important;transform:none!important;width:100%!important}.question-close-btn,.question-inspect-actions{display:none!important}}.flash-messages-container{display:flex;flex-direction:column;left:0;position:relative;top:0;width:100%;z-index:1000}.flash-message{animation:slideDown .3s ease-out forwards;box-shadow:0 4px 6px -1px #0000001a;font-size:1rem;font-weight:600;padding:12px 20px}.flash-content-wrapper,.flash-message{align-items:center;display:flex;justify-content:center;width:100%}.flash-content-wrapper{gap:10px;max-width:1200px}.flash-icon{font-size:1.2rem}.flash-text{color:#1e293b}.flash-info{background:linear-gradient(90deg,#dbeafe,#bfdbfe);border-bottom:3px solid #3b82f6}.flash-success{background:linear-gradient(90deg,#dcfce7,#bbf7d0);border-bottom:3px solid #22c55e}.flash-warning{background:linear-gradient(90deg,#fef3c7,#fde68a);border-bottom:3px solid #f59e0b}.flash-error{background:linear-gradient(90deg,#fee2e2,#fecaca);border-bottom:3px solid #ef4444}.flash-announcement{background:linear-gradient(90deg,#f3e8ff,#e9d5ff);border-bottom:3px solid #a855f7}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.streak-widget{align-items:center;background:linear-gradient(135deg,var(--streak-color) 0,var(--streak-color) 100%);border:2px solid #ffffff4d;border-radius:25px;box-shadow:0 4px 15px #0003;cursor:pointer;display:flex;gap:10px;padding:10px 16px;position:relative;transition:all .3s}.streak-widget:hover{box-shadow:0 6px 20px #0000004d;transform:translateY(-3px) scale(1.05)}.streak-widget.on-fire{animation:pulse 2s infinite}.streak-widget.at-risk{animation:shake .5s infinite;border-color:#fef3c7}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}.streak-flame{animation:flicker 1.5s infinite;font-size:1.8rem}@keyframes flicker{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.1) rotate(-5deg)}75%{transform:scale(1.1) rotate(5deg)}}.streak-info{align-items:center;color:#fff;display:flex;flex-direction:column}.streak-number{font-size:1.4rem;font-weight:800;line-height:1;text-shadow:0 2px 4px #0000004d}.streak-label{font-size:.7rem;font-weight:600;opacity:.9;text-transform:uppercase}.streak-alert{font-size:1.2rem;position:absolute;right:-5px;top:-5px}.streak-spark{animation:sparkle 1s forwards;font-size:2rem;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}@keyframes sparkle{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.5)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}@media (max-width:768px){.streak-widget{padding:8px 12px}.streak-flame{font-size:1.5rem}.streak-number{font-size:1.2rem}.streak-label{font-size:.65rem}}.fc-root{bottom:32px;position:fixed;right:max(32px,calc(50vw - 1168px));z-index:99999}.fc-btn,.fc-root{align-items:center;display:flex;justify-content:center}.fc-btn{background:linear-gradient(135deg,#7c3aed,#a855f7);border:3px solid #ffffff8c;border-radius:50%;box-shadow:0 8px 32px #7c3aed8c,0 2px 10px #0003;cursor:pointer;flex-direction:column;font-family:inherit;height:64px;position:relative;transition:transform .3s cubic-bezier(.34,1.5,.64,1),box-shadow .3s ease;width:64px;z-index:2}.fc-btn:hover{box-shadow:0 12px 40px #7c3aedb3;transform:scale(1.1)}.fc-open .fc-btn{transform:scale(1.06) rotate(12deg)}.fc-face{display:block;font-size:1.9rem;line-height:1}.fc-badge{align-items:center;background:#fbbf24;border:2px solid #fff;border-radius:50%;color:#1a1523;display:flex;font-size:.62rem;font-weight:900;height:20px;justify-content:center;position:absolute;right:-4px;top:-4px;width:20px}.fc-mood-wave .fc-face{animation:fc-wave .7s ease-in-out}.fc-mood-run .fc-btn{animation:fc-run .5s ease-in-out}.fc-mood-sleep .fc-face{animation:fc-sleep 2.4s ease-in-out infinite}@keyframes fc-wave{0%,to{transform:rotate(0)}30%{transform:rotate(-22deg)}65%{transform:rotate(16deg)}}@keyframes fc-run{0%,to{transform:scale(1)}50%{transform:scale(1.18) translateX(-5px)}}@keyframes fc-sleep{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(.93) rotate(-10deg)}}.fc-item{align-items:center;background:#fff;border:2.5px solid #e9e3f8;border-radius:50%;box-shadow:0 4px 20px #00000021;cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:0;height:54px;justify-content:center;opacity:0;pointer-events:none;position:absolute;transform:scale(0);transition:transform .35s cubic-bezier(.34,1.5,.64,1) calc(var(--ci)*38ms),opacity .28s ease calc(var(--ci)*30ms),box-shadow .2s ease;width:54px}.fc-item:hover{border-color:#a78bfa;box-shadow:0 8px 28px #7c3aed4d}.fc-open .fc-item{opacity:1;pointer-events:auto}.fc-open .fc-item:first-child{transform:scale(1) translate(-88px,-18px)}.fc-open .fc-item:nth-child(2){transform:scale(1) translate(-78px,-72px)}.fc-open .fc-item:nth-child(3){transform:scale(1) translate(-44px,-114px)}.fc-open .fc-item:nth-child(4){transform:scale(1) translate(4px,-122px)}.fc-open .fc-item:nth-child(5){transform:scale(1) translate(48px,-108px)}.fc-open .fc-item:nth-child(6){transform:scale(1) translate(76px,-70px)}.fc-item-icon{font-size:1.35rem;line-height:1}.fc-item-label{color:#5b5068;font-size:.52rem;font-weight:800;margin-top:1px;white-space:nowrap}@media (max-width:768px){.fc-root{bottom:20px;right:max(20px,calc(50vw - 1180px))}.fc-btn{height:56px;width:56px}.fc-face{font-size:1.6rem}}.error-report-float-btn{align-items:center;animation:pulse-float 3s ease-in-out infinite;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:50%;bottom:100px;box-shadow:0 4px 20px #ef444466;color:#fff;cursor:pointer;display:flex;font-size:1.3rem;height:48px;justify-content:center;position:fixed;right:max(30px,calc(50vw - 1170px));transition:all .3s ease;width:48px;z-index:9999999}.error-report-float-btn:hover{box-shadow:0 8px 30px #ef444499;transform:translateY(-4px) scale(1.1)}.error-report-float-btn:active{transform:translateY(-2px) scale(1.05)}@keyframes pulse-float{0%,to{box-shadow:0 4px 20px #ef444466}50%{box-shadow:0 4px 20px #ef4444b3,0 0 0 8px #ef44441a}}.error-report-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:999999}.error-report-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:600px;overflow:hidden;width:100%}.error-report-header{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:flex;justify-content:space-between;padding:24px 28px}.error-report-header h3{font-size:1.5rem;font-weight:700;margin:0}.error-report-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:2rem;height:36px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:36px}.error-report-close:hover{background:#ffffff4d;transform:rotate(90deg)}.error-report-body{padding:28px}.error-report-info{color:#64748b;font-size:.95rem;line-height:1.6;margin:0 0 20px}.error-report-context{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:10px;margin-bottom:20px;padding:16px}.context-item{font-size:.9rem;gap:8px}.context-label{color:#475569;font-weight:600;min-width:120px}.context-value{color:#1e293b;font-weight:500;word-break:break-all}.error-report-textarea{border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:1rem;margin-bottom:20px;padding:14px 16px;resize:vertical;transition:all .2s ease;width:100%}.error-report-textarea:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-report-textarea:disabled{background:#f1f5f9;cursor:not-allowed}.error-report-textarea::placeholder{color:#94a3b8}.error-report-submit{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;box-shadow:0 4px 15px #ef44444d;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:10px;justify-content:center;padding:16px 24px;transition:all .3s ease;width:100%}.error-report-submit:hover:not(:disabled){box-shadow:0 8px 25px #ef444466;transform:translateY(-2px)}.error-report-submit:active:not(:disabled){transform:translateY(0)}.error-report-submit:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed}.spinner-small{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}@keyframes spin{to{transform:rotate(1turn)}}.error-report-toast{align-items:center;animation:slideInRight .3s ease-out;background:#fff;border-radius:12px;bottom:100px;box-shadow:0 8px 30px #0003;display:flex;font-size:.95rem;font-weight:500;gap:12px;max-width:400px;padding:16px 24px;position:fixed;right:max(24px,calc(50vw - 1176px));z-index:9999999}.error-report-toast.success{border-left:4px solid #10b981;color:#065f46}.error-report-toast.error{border-left:4px solid #ef4444;color:#991b1b}.toast-icon{flex-shrink:0;font-size:1.5rem}@media (max-width:768px){.error-report-float-btn{bottom:90px;font-size:1.3rem;height:48px;right:20px;width:48px}.error-report-modal{border-radius:16px;margin:0;max-width:100%}.error-report-header{padding:20px 24px}.error-report-header h3{font-size:1.3rem}.error-report-body{padding:24px 20px}.context-item{align-items:flex-start;flex-direction:column;gap:4px}.context-label{min-width:auto}.error-report-toast{bottom:90px;left:20px;max-width:none;right:20px}}@media (max-width:480px){.error-report-float-btn{bottom:80px;font-size:1.2rem;height:44px;right:16px;width:44px}.error-report-header h3{font-size:1.2rem}.error-report-body{padding:20px 16px}.error-report-submit{font-size:1rem;padding:14px 20px}}.error-report-close:focus,.error-report-float-btn:focus,.error-report-submit:focus{outline:3px solid #ef444480;outline-offset:2px}.error-report-textarea:focus{outline:none}@media (prefers-color-scheme:dark){.error-report-modal{background:#1e293b}.error-report-body{color:#e2e8f0}.error-report-info{color:#94a3b8}.error-report-context{background:#0f172a;border-color:#334155}.context-label{color:#cbd5e1}.context-value{color:#f1f5f9}.error-report-textarea{background:#0f172a;border-color:#334155;color:#f1f5f9}.error-report-textarea:focus{border-color:#ef4444}.error-report-toast{background:#1e293b;color:#e2e8f0}}.idea-submit-float-btn{align-items:center;animation:float-pulse 4s ease-in-out infinite;background:linear-gradient(135deg,#8b5cf6,#6366f1 50%,#3b82f6);border:none;border-radius:50%;bottom:100px;box-shadow:0 6px 20px #8b5cf666,0 0 0 0 #8b5cf699;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:48px;justify-content:center;left:max(30px,calc(50vw - 1170px));overflow:visible;position:fixed;transition:all .4s cubic-bezier(.175,.885,.32,1.275);width:48px;z-index:9999999}.idea-icon{animation:bulb-flicker 3s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(255,255,255,.8));position:relative;z-index:2}.idea-pulse,.idea-pulse-2{animation:pulse-wave 3s ease-out infinite;background:linear-gradient(135deg,#8b5cf6,#6366f1);border-radius:50%;height:100%;opacity:0;position:absolute;width:100%}.idea-pulse-2{animation-delay:1.5s}@keyframes float-pulse{0%,to{box-shadow:0 8px 32px #8b5cf666,0 0 0 0 #8b5cf699;transform:translateY(0) scale(1)}25%{box-shadow:0 12px 40px #8b5cf699,0 0 0 8px #8b5cf633;transform:translateY(-8px) scale(1.05)}50%{box-shadow:0 8px 32px #8b5cf666,0 0 0 0 #8b5cf699;transform:translateY(0) scale(1)}75%{box-shadow:0 10px 36px #8b5cf680,0 0 0 4px #8b5cf61a;transform:translateY(-4px) scale(1.02)}}@keyframes pulse-wave{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(2.5)}}@keyframes bulb-flicker{0%,to{filter:drop-shadow(0 0 8px rgba(255,255,255,.8))}50%{filter:drop-shadow(0 0 16px rgba(255,255,255,1))}}.idea-submit-float-btn:hover{box-shadow:0 16px 48px #8b5cf6b3,0 0 60px #8b5cf666;transform:translateY(-8px) scale(1.15) rotate(10deg)}.idea-submit-float-btn:active{transform:translateY(-4px) scale(1.05)}.idea-submit-overlay{align-items:center;animation:overlayFadeIn .4s cubic-bezier(.25,.46,.45,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at 30% 40%,#8b5cf626,#0000 50%),radial-gradient(circle at 70% 60%,#6366f126,#0000 50%),#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:999999}@keyframes overlayFadeIn{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:1}}.idea-submit-modal{animation:modalSlideIn .5s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(145deg,#fff,#f8fafc);border-radius:24px;box-shadow:0 30px 90px #8b5cf64d,0 0 0 1px #8b5cf61a,inset 0 1px 0 #fffc;max-height:90vh;max-width:700px;overflow-y:auto;position:relative;width:100%}.idea-submit-modal:before{animation:shimmer 3s linear infinite;background:linear-gradient(90deg,#8b5cf6,#6366f1,#3b82f6,#8b5cf6);background-size:200% 100%;border-radius:24px 24px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(100px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shimmer{0%{background-position:0 0}to{background-position:200% 0}}.idea-submit-header{align-items:flex-start;background:linear-gradient(135deg,#8b5cf6,#6366f1 50%,#3b82f6);color:#fff;display:flex;justify-content:space-between;overflow:hidden;padding:32px 32px 28px;position:relative}.idea-submit-header:after{background:radial-gradient(circle at 20% 50%,#ffffff1a,#0000 40%),radial-gradient(circle at 80% 50%,#ffffff1a,#0000 40%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.header-content{gap:16px;z-index:1}.header-content,.header-icon-wrapper{align-items:center;display:flex;position:relative}.header-icon-wrapper{height:56px;justify-content:center;width:56px}.header-icon{animation:bulb-glow 2s ease-in-out infinite;font-size:2.5rem;position:relative;z-index:2}.icon-glow{animation:glow-pulse 2s ease-in-out infinite;background:radial-gradient(circle,#fff6,#0000 70%);border-radius:50%;height:100%;position:absolute;width:100%}@keyframes bulb-glow{0%,to{filter:drop-shadow(0 0 10px rgba(255,255,255,.6))}50%{filter:drop-shadow(0 0 20px rgba(255,255,255,1))}}@keyframes glow-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.5)}}.idea-submit-header h3{font-size:1.75rem;font-weight:800;letter-spacing:-.5px;margin:0}.header-subtitle{font-size:.95rem;font-weight:400;margin:4px 0 0;opacity:.9}.idea-submit-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;line-height:1;padding:0;position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1);width:40px;z-index:1}.idea-submit-close:hover{background:#ffffff40;box-shadow:0 4px 20px #0003;transform:rotate(90deg) scale(1.1)}.idea-submit-body{padding:32px}.innovation-banner{align-items:flex-start;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #fbbf24;border-radius:16px;display:flex;gap:16px;margin-bottom:28px;overflow:hidden;padding:20px;position:relative}.innovation-banner:before{animation:shine 3s ease-in-out infinite;background:linear-gradient(45deg,#0000,#fbbf241a,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes shine{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}.banner-icon{animation:trophy-bounce 2s ease-in-out infinite;flex-shrink:0;font-size:2.5rem}@keyframes trophy-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.banner-text{position:relative;z-index:1}.banner-text strong{color:#92400e;display:block;font-size:1.1rem;font-weight:700;margin-bottom:6px}.banner-text p{color:#78350f;font-size:.9rem;line-height:1.5;margin:0}.idea-submit-context{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #38bdf8;border-radius:14px;display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding:18px}.context-item{align-items:center;display:flex;font-size:.95rem;gap:10px}.context-label{color:#0c4a6e;font-weight:700;min-width:130px}.context-value{color:#075985;font-weight:600}.form-group{margin-bottom:24px;position:relative}.form-label{align-items:center;color:#1e293b;display:flex;font-size:1rem;font-weight:700;gap:8px;margin-bottom:10px}.label-icon,.label-required{font-size:1.2rem}.label-required{color:#ef4444;margin-left:4px}.idea-category-select{appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%236366f1' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 18px center;background-repeat:no-repeat;border:2px solid #cbd5e1;border-radius:12px;color:#1e293b;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:600;padding:14px 48px 14px 18px;transition:all .3s ease;width:100%}.idea-category-select:hover{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.idea-category-select:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f126;outline:none}.idea-title-input{border:2px solid #cbd5e1;border-radius:12px;font-family:inherit;font-size:1rem;font-weight:600;padding:14px 18px;transition:all .3s ease;width:100%}.idea-title-input:hover{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.idea-title-input:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f126;outline:none}.idea-title-input::placeholder{color:#94a3b8;font-weight:500}.idea-description-textarea{border:2px solid #cbd5e1;border-radius:12px;font-family:inherit;font-size:1rem;line-height:1.6;min-height:180px;padding:16px 18px;resize:vertical;transition:all .3s ease;width:100%}.idea-description-textarea:hover{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.idea-description-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f126;outline:none}.idea-description-textarea::placeholder{color:#94a3b8}.char-count{color:#64748b;font-size:.85rem;font-weight:600;margin-top:6px;text-align:right}.submit-section{margin-top:32px}.submit-info{align-items:flex-start;background:linear-gradient(135deg,#ede9fe,#ddd6fe);border:2px solid #a78bfa;border-radius:12px;color:#4c1d95;display:flex;font-size:.9rem;font-weight:500;gap:12px;line-height:1.5;margin-bottom:20px;padding:14px 16px}.info-icon{flex-shrink:0;font-size:1.3rem}.idea-submit-button{align-items:center;background:linear-gradient(135deg,#8b5cf6,#6366f1 50%,#3b82f6);background-size:200% 100%;border:none;border-radius:14px;box-shadow:0 8px 24px #8b5cf666,inset 0 1px 0 #fff3;color:#fff;cursor:pointer;display:flex;font-size:1.15rem;font-weight:800;gap:12px;justify-content:center;overflow:hidden;padding:18px 32px;position:relative;transition:all .4s cubic-bezier(.34,1.56,.64,1);width:100%}.idea-submit-button:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.idea-submit-button:hover:before{left:100%}.idea-submit-button:hover:not(:disabled){background-position:100% 0;box-shadow:0 16px 40px #8b5cf699,inset 0 1px 0 #ffffff4d;transform:translateY(-4px) scale(1.02)}.idea-submit-button:active:not(:disabled){transform:translateY(-2px) scale(.98)}.idea-submit-button:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed;transform:none}.submit-icon{animation:rocket-launch 1.5s ease-in-out infinite;font-size:1.4rem}@keyframes rocket-launch{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.button-glow{animation:glow-slide 2s linear infinite;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#3b82f6);background-size:200% 100%;bottom:0;height:4px;left:0;position:absolute;right:0}@keyframes glow-slide{0%{background-position:0 0}to{background-position:200% 0}}.spinner-orbit{animation:spin-orbit .8s cubic-bezier(.5,0,.5,1) infinite;border-color:#fff #fff #ffffff4d #ffffff4d;border-radius:50%;border-style:solid;border-width:3px;height:22px;width:22px}@keyframes spin-orbit{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.idea-toast{animation:toastSlideIn .5s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:16px;bottom:110px;box-shadow:0 12px 40px #0003,0 0 0 1px #8b5cf61a;left:24px;max-width:500px;overflow:hidden;position:fixed;right:24px;z-index:9999999}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(100px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-content{align-items:flex-start;display:flex;gap:16px;padding:20px 24px}.idea-toast .toast-icon{animation:icon-pop .6s cubic-bezier(.34,1.56,.64,1);flex-shrink:0;font-size:2rem}@keyframes icon-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.toast-text{flex:1 1}.toast-text strong{display:block;font-size:1.05rem;font-weight:700;margin-bottom:4px}.toast-text p{font-size:.9rem;line-height:1.5;margin:0}.idea-toast.success{border-left:5px solid #10b981}.idea-toast.success .toast-text strong{color:#065f46}.idea-toast.success .toast-text p{color:#047857}.idea-toast.error{border-left:5px solid #ef4444}.idea-toast.error .toast-text strong{color:#991b1b}.idea-toast.error .toast-text p{color:#b91c1c}.toast-progress{animation:progress-shrink 5s linear forwards;background:linear-gradient(90deg,#10b981,#059669);height:4px}.toast-progress.error{animation:progress-shrink 3s linear forwards;background:linear-gradient(90deg,#ef4444,#dc2626)}@keyframes progress-shrink{0%{width:100%}to{width:0}}@media (max-width:768px){.idea-submit-float-btn{bottom:90px;font-size:1.5rem;height:48px;left:20px;width:48px}.idea-submit-modal{border-radius:20px;max-height:95vh}.idea-submit-header{padding:24px 20px}.header-content{gap:12px}.header-icon-wrapper{height:48px;width:48px}.header-icon{font-size:2rem}.idea-submit-header h3{font-size:1.4rem}.header-subtitle{font-size:.85rem}.idea-submit-body{padding:24px 20px}.innovation-banner{padding:16px}.banner-icon{font-size:2rem}.form-label{font-size:.95rem}.idea-submit-button{font-size:1.05rem;padding:16px 24px}.idea-toast{bottom:100px;left:16px;right:16px}}@media (max-width:480px){.idea-submit-float-btn{bottom:80px;font-size:1.3rem;height:44px;left:16px;width:44px}.context-item{align-items:flex-start;flex-direction:column;gap:4px}.context-label{min-width:auto}}.idea-submit-button:focus,.idea-submit-close:focus,.idea-submit-float-btn:focus{outline:3px solid #8b5cf699;outline-offset:3px}.theme-switcher{align-items:center;display:inline-flex;position:relative}.theme-toggle-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:none;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:var(--color-textInverse);cursor:pointer;display:flex;font-size:22px;font-weight:600;gap:8px;min-height:48px;min-width:48px;padding:12px;transition:all .3s ease}.theme-toggle-btn:hover{background:#ffffff40;transform:scale(1.05)}.theme-icon{font-size:20px}.theme-label{font-weight:600}.theme-overlay{animation:fadeIn .2s ease;-webkit-backdrop-filter:var(--color-backdropBlur);backdrop-filter:var(--color-backdropBlur);background:var(--color-overlay);inset:0;position:fixed;z-index:999}.theme-panel{animation:slideUp .3s ease;background:var(--color-cardBackground);border:1px solid var(--color-border);border-radius:20px;box-shadow:var(--color-cardHoverShadow);max-height:calc(100vh - 140px);max-width:calc(100vw - 48px);overflow-y:auto;position:absolute;right:0;top:calc(100% + 10px);width:380px;z-index:1000}.theme-cosmic .theme-panel{-webkit-backdrop-filter:var(--color-backdropBlur);backdrop-filter:var(--color-backdropBlur);background:var(--color-cardBackground);border:1px solid #ffffff1a}.theme-panel-header{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--color-cardBackground);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px;position:sticky;top:0;z-index:1}.theme-panel-header h3{font-weight:700;margin:0}.close-btn,.theme-panel-header h3{color:var(--color-textPrimary);font-size:18px}.close-btn{background:var(--color-hover);border:none;border-radius:50%;cursor:pointer;height:32px;transition:all .2s;width:32px}.close-btn:hover{background:var(--color-active);transform:rotate(90deg)}.theme-section{border-bottom:1px solid var(--color-borderLight);padding:20px}.theme-section:last-child{border-bottom:none}.theme-section h4{color:var(--color-textSecondary);font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.theme-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);max-height:400px;overflow-y:auto}.theme-option{align-items:center;background:var(--color-backgroundSecondary);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:16px 12px;position:relative;transition:all .2s}.theme-option:hover{background:var(--color-hover);border-color:var(--color-primary);transform:translateY(-2px)}.theme-option.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-textInverse)}.theme-option-icon{font-size:28px}.theme-option-name{font-size:13px;font-weight:600}.theme-check{align-items:center;background:#ffffff4d;border-radius:50%;display:flex;font-size:12px;height:20px;justify-content:center;position:absolute;right:6px;top:6px;width:20px}.font-size-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.font-size-option{align-items:center;background:var(--color-backgroundSecondary);border:2px solid var(--color-border);border-radius:10px;cursor:pointer;display:flex;gap:8px;padding:12px 16px;transition:all .2s}.font-size-option:hover{background:var(--color-hover);border-color:var(--color-primary)}.font-size-option.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-textInverse)}.font-size-icon{font-size:18px;font-weight:700}.font-size-label{font-size:12px;font-weight:600}.toggle-switch{align-items:center;cursor:pointer;display:flex;gap:12px}.toggle-switch input{display:none}.toggle-slider{background:var(--color-border);border-radius:13px;height:26px;position:relative;transition:all .3s;width:48px}.toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;content:"";height:20px;left:3px;position:absolute;top:3px;transition:all .3s;width:20px}.toggle-switch input:checked+.toggle-slider{background:var(--color-success)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(22px)}.toggle-label{color:var(--color-textPrimary);font-size:14px;font-weight:600}.theme-footer{background:var(--color-backgroundSecondary);border-radius:0 0 20px 20px;padding:16px 20px}.theme-footer-text{color:var(--color-textMuted);font-size:12px;margin:0;text-align:center}@media (max-width:480px){.theme-toggle-btn{font-size:20px;min-height:44px;min-width:44px;padding:10px}.theme-label{display:none}.theme-panel{right:-8px;width:calc(100vw - 32px)}.theme-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.font-size-grid{grid-template-columns:1fr}}.mobile-touch-optimizer{-webkit-tap-highlight-color:transparent;position:relative;touch-action:manipulation;-webkit-user-select:none;user-select:none}.mobile-touch-optimizer.touch-active{background:#667eea0d;transition:background .15s ease}.touch-button{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;gap:8px;justify-content:center;margin:0;overflow:hidden;padding:0;position:relative;touch-action:manipulation;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.touch-button-small{font-size:12px;height:40px;min-height:40px;min-width:40px;width:40px}.touch-button-medium{font-size:14px;height:48px;min-height:48px;min-width:48px;width:48px}.touch-button-large{font-size:16px;height:56px;min-height:56px;min-width:56px;padding:12px;width:56px}.touch-button-full{font-size:16px;height:48px;min-height:48px;width:100%}.touch-button{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea33;color:#fff}.touch-button:hover:not(:disabled){box-shadow:0 6px 16px #667eea4d;transform:translateY(-2px) scale(1.05)}.touch-button:active:not(:disabled){box-shadow:0 2px 8px #667eea33;transform:translateY(0) scale(.98)}.touch-button:disabled{cursor:not-allowed;opacity:.5}.touch-button-icon{align-items:center;display:flex;font-size:20px;justify-content:center;line-height:1}.touch-button-label{font-weight:600;line-height:1.2}.touch-button:after{background:radial-gradient(circle,#ffffff80 0,#0000 70%);border-radius:50%;content:"";height:100%;left:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);width:100%}.touch-button:active:after{animation:touchRipple .6s ease-out}@keyframes touchRipple{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}.touch-slider-container{display:flex;flex-direction:column;gap:12px;padding:16px;width:100%}.touch-slider-label{color:#1e293b;display:block;font-size:14px;font-weight:600}.touch-slider{appearance:none;background:#0000;cursor:pointer;height:44px;padding:12px 0;position:relative;width:100%}.touch-slider::-webkit-slider-runnable-track{background:linear-gradient(90deg,#667eea,#764ba2);border:none;border-radius:4px;height:8px;width:100%}.touch-slider::-moz-range-track{background:linear-gradient(90deg,#667eea,#764ba2);border:none;border-radius:4px;height:8px;width:100%}.touch-slider::-webkit-slider-thumb{appearance:none;background:#fff;border:3px solid #667eea;border-radius:50%;box-shadow:0 2px 8px #667eea66;cursor:pointer;height:32px;margin-top:-12px;-webkit-transition:all .2s ease;transition:all .2s ease;width:32px}.touch-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 12px #667eea99;transform:scale(1.15)}.touch-slider::-webkit-slider-thumb:active{transform:scale(.95)}.touch-slider::-moz-range-thumb{background:#fff;border:3px solid #667eea;border-radius:50%;box-shadow:0 2px 8px #667eea66;cursor:pointer;height:32px;-moz-transition:all .2s ease;transition:all .2s ease;width:32px}.touch-slider::-moz-range-thumb:hover{box-shadow:0 4px 12px #667eea99;transform:scale(1.15)}.touch-slider::-moz-range-thumb:active{transform:scale(.95)}.touch-slider-value{align-self:center;background:#667eea1a;border-radius:8px;color:#667eea;font-size:16px;font-weight:700;min-width:80px;padding:8px 16px;text-align:center}.swipe-indicator{bottom:40px;left:50%;opacity:0;pointer-events:none;position:fixed;transform:translateX(-50%) translateY(100px);transition:all .3s cubic-bezier(.34,1.56,.64,1);z-index:1000}.swipe-indicator.visible{opacity:1;transform:translateX(-50%) translateY(0)}.swipe-arrow{animation:swipeArrowBounce .6s ease-in-out;color:#667eea;font-size:32px;text-shadow:0 0 10px #667eea80}@keyframes swipeArrowBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.swipe-indicator-left .swipe-arrow{transform:scaleX(-1)}.swipe-indicator-right .swipe-arrow{transform:scaleX(1)}.swipe-indicator-up .swipe-arrow{transform:rotate(-90deg)}.swipe-indicator-down .swipe-arrow{transform:rotate(90deg)}.haptic-indicator{left:50%;opacity:0;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:2000}.haptic-indicator.active{animation:hapticPulse .4s ease-out forwards}@keyframes hapticPulse{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.haptic-pulse{background:radial-gradient(circle,#667eea99 0,#667eea33 100%);border-radius:50%;box-shadow:0 0 20px #667eea66;height:60px;width:60px}[data-touch-size-warning=true]{background-color:#f59e0b0d;outline:2px dashed #f59e0b}.long-press-container{position:relative}.long-press-indicator{animation:longPressProgress linear forwards;background:linear-gradient(90deg,#0000,#667eea4d 50%,#0000);border-radius:inherit;height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:0;width:100%}@keyframes longPressProgress{0%{opacity:0;width:0}50%{opacity:1}to{opacity:0;width:100%}}.double-tap-feedback{animation:doubleTapPulse .4s ease-out}@keyframes doubleTapPulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}@media (hover:none) and (pointer:coarse){.touch-button:hover:not(:disabled){transform:translateY(0) scale(1)}.touch-slider::-webkit-slider-thumb:hover{transform:scale(1)}.touch-button-small{height:44px;width:44px}.touch-button-medium{height:56px;width:56px}.touch-button-large{height:64px;width:64px}.touch-button{margin:8px}.touch-slider::-webkit-slider-thumb{height:36px;margin-top:-14px;width:36px}}@media (max-width:768px){.touch-button-small{height:44px;width:44px}.touch-button-medium{height:52px;width:52px}.touch-button-large{height:60px;width:60px}.touch-slider-container{padding:12px}.swipe-indicator{bottom:30px}.swipe-arrow{font-size:28px}}@media (max-width:480px){.touch-button-small{height:40px;min-height:40px;min-width:40px;width:40px}.touch-button-medium{height:48px;width:48px}.touch-button-large{height:56px;width:56px}.touch-button-full{height:44px}.touch-slider-container{gap:8px;padding:8px}.touch-slider-label{font-size:12px}.touch-slider-value{font-size:14px}.haptic-indicator.active{animation:hapticPulseMobile .3s ease-out forwards}}@keyframes hapticPulseMobile{0%{opacity:1;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.2)}}@media (prefers-reduced-motion:reduce){.haptic-indicator,.swipe-indicator,.touch-button,.touch-slider{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:more){.touch-button{border:2px solid #0000004d}.touch-slider-container{border:2px solid #1e293b;padding:12px}.touch-slider::-webkit-slider-thumb{border-width:4px}.touch-slider::-moz-range-thumb{border-width:4px}}@media (prefers-color-scheme:dark){.mobile-touch-optimizer.touch-active{background:#667eea1a}.touch-slider-label{color:#f1f5f9}.touch-slider-value{background:#667eea33;color:#93c5fd}.swipe-arrow{color:#93c5fd;text-shadow:0 0 10px #667eeab3}.haptic-pulse{background:radial-gradient(circle,#93c5fd99 0,#93c5fd33 100%);box-shadow:0 0 20px #93c5fd66}[data-touch-size-warning=true]{background-color:#fbbf240d;outline-color:#fbbf24}}@media print{.haptic-indicator,.swipe-indicator,.touch-button:after{display:none}.mobile-touch-optimizer{touch-action:auto}}.vidya-ai-float{bottom:30px;cursor:pointer;position:fixed;right:30px;transition:all .3s ease;z-index:9999}.vidya-ai-float:hover{transform:scale(1.1)}.ai-avatar{align-items:center;animation:float 3s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 10px 30px #667eea80;display:flex;height:70px;justify-content:center;position:relative;width:70px}.ai-emoji{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:2.5rem}.ai-pulse{animation:pulse 2s ease-out infinite;background:#667eea66;border-radius:50%;height:100%;position:absolute;width:100%}.ai-tooltip{animation:slideInRight .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 5px 20px #0003;color:#667eea;font-weight:600;padding:10px 20px;position:absolute;right:80px;white-space:nowrap}@keyframes pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.vidya-ai-window{animation:slideUp .4s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:25px;bottom:20px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;height:600px;overflow:hidden;position:fixed;right:20px;width:420px;z-index:9998}@keyframes slideUp{0%{opacity:0;transform:translateY(50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-header{background:#fffffff2;border-radius:25px 25px 0 0;justify-content:space-between;padding:20px}.ai-header,.ai-title{align-items:center;display:flex}.ai-title{gap:15px}.ai-emoji-large{animation:bounce 1s ease-in-out infinite;font-size:3rem}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.ai-title h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;margin:0}.ai-status{color:#666;font-size:.9rem;margin:5px 0 0}.ai-close{background:#667eea1a;border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;height:35px;transition:all .3s ease;width:35px}.ai-close:hover{background:#ff6b6b;color:#fff}.ai-particles{height:100%;left:0;overflow:hidden;top:0;width:100%;z-index:0}.ai-particles,.particle{pointer-events:none;position:absolute}.particle{background:#ffffff4d;border-radius:50%}@keyframes floatUp{0%{opacity:1;transform:translateY(0) scale(0)}to{opacity:0;transform:translateY(-600px) scale(1)}}.ai-messages{background:#ffffff0d;flex:1 1;overflow-y:auto;padding:20px;z-index:1}.message{animation:fadeIn .3s ease-out;display:flex;gap:10px;margin-bottom:15px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{flex-direction:row-reverse}.msg-avatar{flex-shrink:0;font-size:2rem}.msg-content{background:#fff;border-radius:20px;box-shadow:0 3px 10px #0000001a;color:#333;max-width:80%;padding:15px 20px}.message.user .msg-content{background:linear-gradient(135deg,#00b894,#00a085);color:#fff}.ai-suggestions{background:#fffffff2;border-top:1px solid #0000001a;display:flex;flex-wrap:wrap;gap:10px;padding:15px;z-index:1}.suggestion-chip{background:#667eea1a;border:1px solid #667eea4d;border-radius:20px;color:#667eea;cursor:pointer;font-size:.85rem;padding:8px 15px;transition:all .3s ease}.suggestion-chip:hover{background:#667eea;box-shadow:0 3px 10px #667eea4d;color:#fff;transform:translateY(-2px)}.ai-input-area{background:#fff;border-radius:0 0 25px 25px;display:flex;gap:10px;padding:15px;z-index:1}.ai-input{border:2px solid #e0e0e0;border-radius:25px;flex:1 1;font-size:1rem;padding:12px 20px;transition:all .3s ease}.ai-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.ai-send{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:25px;color:#fff;cursor:pointer;font-weight:600;padding:12px 25px;transition:all .3s ease}.ai-send:hover{box-shadow:0 5px 15px #667eea66;transform:scale(1.05)}.voice-btn{background:#ff6b6b1a;border:none;border-radius:50%;cursor:pointer;font-size:1.5rem;height:45px;transition:all .3s ease;width:45px}.voice-btn.listening{animation:pulse 1s ease-in-out infinite;background:#ff6b6b}.voice-toggle{background:#ffffffe6;border:none;border-radius:15px;bottom:80px;color:#666;cursor:pointer;font-size:.75rem;padding:5px 12px;position:absolute;right:15px;z-index:2}@media (max-width:480px){.vidya-ai-window{bottom:10px;height:calc(100vh - 100px);left:10px;right:10px;width:calc(100% - 20px)}}
/*# sourceMappingURL=main.73511526.css.map*/