body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a1a2e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{background-color:#fff;box-shadow:0 .125rem .25rem #0000001a;left:0;position:fixed;right:0;top:0;z-index:1000}.navbar:after{background:linear-gradient(90deg,#0077b633,#0077b6cc 25%,#0077b6 50%,#0077b6cc 75%,#0077b633);bottom:0;box-shadow:0 0 1rem #0077b666;content:"";height:.25rem;left:0;position:absolute;right:0}.nav-container{height:9rem;justify-content:space-between;margin:0 auto;max-width:87.5rem;padding:0 5%}.nav-container,.nav-logo{align-items:center;display:flex}.nav-logo{color:#0077b6;font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:700;gap:.625rem;text-decoration:none;transition:opacity .2s}.nav-logo:hover{opacity:.8}.nav-logo-img{height:5rem;width:auto}.nav-menu{gap:1.25rem;list-style:none;margin:0;padding:0}.nav-item,.nav-menu{align-items:center;display:flex}.nav-link{border-radius:.25rem;color:#0077b6;font-size:clamp(.875rem,1.5vw,1rem);font-weight:600;padding:.5rem .75rem;text-decoration:none;transition:all .2s}.nav-link:hover{background-color:#f0f8fc;color:#005a8d}.nav-user{background-color:#f5f5f5;border-radius:.25rem;color:#666;padding:.5rem .75rem}.nav-btn,.nav-btn-link,.nav-user{font-size:clamp(.8rem,1.4vw,.875rem)}.nav-btn,.nav-btn-link{background-color:#0077b6;border:none;border-radius:.25rem;color:#fff;cursor:pointer;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s}.nav-btn-link:hover,.nav-btn:hover{background-color:#005a8d}.nav-error{background-color:#fee;color:#c33;font-size:clamp(.8rem,1.4vw,.875rem);padding:.5rem;text-align:center}@media (max-width:48rem){.nav-container{flex-direction:column;height:auto;padding:.625rem 5%}.nav-menu{flex-wrap:wrap;gap:.625rem;justify-content:center;margin-top:.625rem}.nav-btn,.nav-btn-link,.nav-link{padding:.375rem .625rem}}:root{--color-primary:#1e3a5f;--color-primary-light:#2a4d7a;--color-primary-dark:#142a45;--color-primary-hover:#2a4d7a;--color-secondary:#0d9488;--color-secondary-light:#14b8a6;--color-secondary-dark:#0a7a70;--color-secondary-hover:#0a7a70;--color-accent:#f97316;--color-accent-light:#fb923c;--color-accent-dark:#ea580c;--color-accent-hover:#ea580c;--color-success:#22c55e;--color-success-light:#4ade80;--color-success-dark:#16a34a;--color-success-bg:#dcfce7;--color-success-text:#166534;--color-warning:#f59e0b;--color-warning-light:#fbbf24;--color-warning-dark:#d97706;--color-warning-bg:#fef3c7;--color-warning-text:#92400e;--color-error:#ef4444;--color-error-light:#f87171;--color-error-dark:#dc2626;--color-error-bg:#fee2e2;--color-error-text:#991b1b;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-bg-primary:#fff;--color-bg-secondary:#f8fafc;--color-bg-tertiary:#f1f5f9;--color-bg-overlay:#00000080;--color-text-primary:#1f2937;--color-text-secondary:#4b5563;--color-text-muted:#6b7280;--color-text-light:#9ca3af;--color-text-inverse:#fff;--color-border-light:#e5e7eb;--color-border-medium:#d1d5db;--color-border-dark:#9ca3af;--color-border-focus:#0d9488;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell",sans-serif;--font-mono:"SF Mono","Monaco","Inconsolata","Fira Mono",monospace;--font-dyslexia:"OpenDyslexic","Comic Sans MS","Trebuchet MS",sans-serif;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--text-4xl:36px;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--leading-loose:2;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--radius-none:0;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px #0000000d;--shadow-focus:0 0 0 3px #0d94884d;--transition-fast:150ms ease;--transition-normal:200ms ease;--transition-slow:300ms ease;--transition-slower:500ms ease;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1200px;--container-2xl:1400px;--touch-target-min:44px;--touch-target-comfortable:48px;--touch-target-large:56px;--z-dropdown:100;--z-sticky:200;--z-fixed:500;--z-modal-backdrop:900;--z-modal:1000;--z-popover:1100;--z-tooltip:1200;--z-toast:1500;--z-a11y-toggle:1500;--z-a11y-panel:2000;--gradient-primary:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);--gradient-accent:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);--gradient-success:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-dark) 100%)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-spinner{border:3px solid #e5e7eb;border-top-color:#0d9488;border:3px solid var(--color-gray-200);border-radius:9999px;border-radius:var(--radius-full);border-top-color:var(--color-secondary);height:40px;width:40px}.loading-spinner-sm{border-width:2px;height:20px;width:20px}.loading-spinner-lg{border-width:4px;height:56px;width:56px}.loading-container{align-items:center;color:#4b5563;color:var(--color-text-secondary);display:flex;flex-direction:column;gap:16px;gap:var(--space-md);justify-content:center;padding:48px;padding:var(--space-2xl)}.loading-text{animation:pulse 1.5s ease-in-out infinite;color:#6b7280;color:var(--color-text-muted);font-size:14px;font-size:var(--text-sm)}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 50%,#e5e7eb 75%);background:linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size:200% 100%;border-radius:8px;border-radius:var(--radius-md)}.skeleton-text{height:16px;margin-bottom:8px;margin-bottom:var(--space-xs)}.skeleton-title{height:24px;margin-bottom:12px;margin-bottom:var(--space-sm);width:60%}.skeleton-avatar{border-radius:9999px;border-radius:var(--radius-full);height:40px;width:40px}.skeleton-card{background:#fff;background:var(--color-bg-primary);border:1px solid #e5e7eb;border:1px solid var(--color-border-light);border-radius:12px;border-radius:var(--radius-lg);padding:24px;padding:var(--space-lg)}.touch-target{align-items:center;display:inline-flex;justify-content:center;min-height:44px;min-height:var(--touch-target-min);min-width:44px;min-width:var(--touch-target-min)}.touch-target-comfortable{min-height:48px;min-height:var(--touch-target-comfortable);min-width:48px;min-width:var(--touch-target-comfortable)}.focus-visible{outline:none}.focus-visible:focus-visible{outline:3px solid #0d9488;outline:3px solid var(--color-border-focus);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body,html{background-color:#1a1a2e}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal)}.App{display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);font-weight:var(--font-bold);line-height:var(--leading-tight)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{line-height:var(--leading-relaxed);margin-bottom:var(--space-md)}a{color:var(--color-secondary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-secondary-dark);text-decoration:underline}.container{margin:0 auto;max-width:var(--container-xl);padding:0 var(--space-lg)}.text-center{text-align:center}button{font-family:inherit}.btn,button{cursor:pointer}.btn{align-items:center;border:none;border-radius:var(--radius-md);display:inline-flex;font-size:var(--text-base);font-weight:var(--font-semibold);gap:var(--space-xs);justify-content:center;min-height:var(--touch-target-min);padding:var(--space-sm) var(--space-lg);transition:all var(--transition-normal)}.btn:focus-visible{outline:3px solid var(--color-border-focus);outline-offset:2px}.btn-primary{background:var(--gradient-primary);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-lg);color:var(--color-text-inverse);transform:translateY(-2px)}.btn-secondary{background-color:var(--color-gray-600);color:var(--color-text-inverse)}.btn-secondary:hover:not(:disabled){background-color:var(--color-gray-700)}.btn-accent{background:var(--gradient-accent);color:var(--color-text-inverse)}.btn-accent:hover:not(:disabled){box-shadow:0 6px 20px #f9731666;transform:translateY(-2px)}.btn-success{background:var(--gradient-success);color:var(--color-text-inverse)}.btn-success:hover:not(:disabled){box-shadow:0 6px 20px #22c55e66;transform:translateY(-2px)}.btn-outline{background:#0000;border:2px solid var(--color-border-medium);color:var(--color-text-secondary)}.btn-outline:hover:not(:disabled){border-color:var(--color-secondary);color:var(--color-secondary)}.btn-ghost{background:#0000;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--color-gray-100)}.btn-sm{font-size:var(--text-sm);min-height:36px;padding:var(--space-xs) var(--space-md)}.btn-lg{font-size:var(--text-lg);min-height:var(--touch-target-large);padding:var(--space-md) var(--space-xl)}.btn:disabled,button:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.btn-loading{color:#0000!important;position:relative}.btn-loading:after{animation:spin .8s linear infinite;border:2px solid #0000;border-radius:var(--radius-full);border-top-color:initial;content:"";height:20px;position:absolute;width:20px}input,select,textarea{background-color:var(--color-bg-primary);border:2px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-base);line-height:var(--leading-normal);min-height:var(--touch-target-min);padding:var(--space-sm) var(--space-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:focus,select:focus,textarea:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px #0d948826;outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-light)}.input-lg{font-size:var(--text-lg);min-height:var(--touch-target-comfortable);padding:var(--space-md) var(--space-lg)}.card{background-color:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-lg);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.card:hover{box-shadow:var(--shadow-lg)}.card-clickable:hover{cursor:pointer;transform:translateY(-2px)}.alert{align-items:flex-start;border-radius:var(--radius-md);display:flex;gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-md) var(--space-lg)}.alert-error,.error{background-color:var(--color-error-bg);border-left:4px solid var(--color-error);color:var(--color-error-text)}.alert-success,.success{background-color:var(--color-success-bg);border-left:4px solid var(--color-success);color:var(--color-success-text)}.alert-warning,.warning{background-color:var(--color-warning-bg);border-left:4px solid var(--color-warning);color:var(--color-warning-text)}.alert-info,.info{background-color:#e0f2fe;border-left:4px solid #0ea5e9;color:#075985}.loading{align-items:center;color:var(--color-text-muted);display:flex;flex-direction:column;gap:var(--space-md);justify-content:center;min-height:200px}.loading:before{animation:spin 1s linear infinite;border:3px solid var(--color-gray-200);border-radius:var(--radius-full);border-top-color:var(--color-secondary);content:"";height:40px;width:40px}.page-loading{align-items:center;animation:fadeIn var(--transition-normal);background:var(--color-bg-primary);display:flex;flex-direction:column;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.page-loading .loading-logo{color:var(--color-primary);font-size:var(--text-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-lg)}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);gap:var(--space-2xs);padding:var(--space-2xs) var(--space-sm)}.badge-success{background-color:var(--color-success-bg);color:var(--color-success-text)}.badge-warning{background-color:var(--color-warning-bg);color:var(--color-warning-text)}.badge-error{background-color:var(--color-error-bg);color:var(--color-error-text)}.badge-info{background-color:#dbeafe;color:#1e40af}.tooltip{position:relative}.tooltip:after{background-color:var(--color-gray-800);border-radius:var(--radius-sm);bottom:100%;color:var(--color-text-inverse);content:attr(data-tooltip);font-size:var(--text-xs);left:50%;opacity:0;padding:var(--space-xs) var(--space-sm);position:absolute;transform:translateX(-50%) translateY(-8px);transition:opacity var(--transition-fast),visibility var(--transition-fast);visibility:hidden;white-space:nowrap;z-index:var(--z-tooltip)}.tooltip:hover:after{opacity:1;visibility:visible}.modal-overlay{align-items:center;animation:fadeIn var(--transition-normal);background-color:var(--color-bg-overlay);display:flex;inset:0;justify-content:center;padding:var(--space-lg);position:fixed;z-index:var(--z-modal-backdrop)}.modal-content{animation:slideUp var(--transition-slow);background-color:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-height:90vh;max-width:500px;overflow:auto;width:100%}.divider{height:1px;margin:var(--space-lg) 0}.divider,.divider-vertical{background-color:var(--color-border-light)}.divider-vertical{height:100%;margin:0 var(--space-md);width:1px}@media (max-width:768px){html{font-size:15px}.container{padding:0 var(--space-md)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}.btn,input,select,textarea{min-height:var(--touch-target-comfortable)}input,select,textarea{font-size:16px}}@media (max-width:480px){.container{padding:0 var(--space-sm)}}.btn-add-leerdoel,.btn-add-option,.btn-add-question,.btn-add-selected,.btn-ai-assistant,.btn-bulk-import,.btn-generate,.btn-parse,.btn-question-bank,.btn-save-test,.btn-step-accept,.correct-badge,.correct-indicator,.question-type-badge,.reviewed-badge,.tf-answer.correct,.tf-option.active,.type-toggle.active,button[class*=active],button[class*=btn-]:not(.btn-point){color:#fff!important}.question-type-badge.mc{background:#1565c0!important;color:#fff!important}.question-type-badge.open{background:#ef6c00!important;color:#fff!important}.question-type-badge.tf{background:#7c3aed!important;color:#fff!important}@media print{body{background:#fff;color:#000}.no-print{display:none!important}.page-break{page-break-before:always}}:root{--grain-primary:#142236;--grain-primary-light:#1e3a5f;--grain-primary-dark:#0d1a2d;--grain-primary-darker:#080f1a;--grain-accent:#4a90d9;--grain-accent-warm:#f5a623;--grain-text:#fff;--grain-text-muted:#ffffffb3;--grain-text-subtle:#ffffff80;--grain-border:#ffffff26;--grain-card-bg:#ffffff14;--grain-card-bg-hover:#ffffff1f;--font-serif:"Playfair Display",Georgia,serif;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--transition:all 0.4s cubic-bezier(0.4,0,0.2,1)}.home-grain{background:#142236;background:var(--grain-primary);color:#fff;color:var(--grain-text);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);min-height:100vh;overflow-x:hidden;position:relative}.grain-overlay{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.5' numOctaves='6' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");background-repeat:repeat;mix-blend-mode:overlay;opacity:.75;z-index:1000}.grain-overlay,.particles-container{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%}.particles-container{overflow:hidden;z-index:2}.particle{animation:float-particle linear infinite;background:#fff6;border-radius:50%;height:4px;position:absolute;width:4px}.particle:first-child{animation-delay:0s;animation-duration:25s;left:5%}.particle:nth-child(2){animation-delay:-5s;animation-duration:20s;left:10%}.particle:nth-child(3){animation-delay:-2s;animation-duration:28s;left:15%}.particle:nth-child(4){animation-delay:-8s;animation-duration:22s;left:20%}.particle:nth-child(5){animation-delay:-4s;animation-duration:26s;left:25%}.particle:nth-child(6){animation-delay:-10s;animation-duration:18s;left:30%}.particle:nth-child(7){animation-delay:-6s;animation-duration:24s;left:35%}.particle:nth-child(8){animation-delay:-1s;animation-duration:30s;left:40%}.particle:nth-child(9){animation-delay:-9s;animation-duration:21s;left:45%}.particle:nth-child(10){animation-delay:-3s;animation-duration:27s;left:50%}.particle:nth-child(11){animation-delay:-7s;animation-duration:19s;left:55%}.particle:nth-child(12){animation-delay:-11s;animation-duration:23s;left:60%}.particle:nth-child(13){animation-delay:-2s;animation-duration:29s;left:65%}.particle:nth-child(14){animation-delay:-8s;animation-duration:17s;left:70%}.particle:nth-child(15){animation-delay:-5s;animation-duration:25s;left:75%}.particle:nth-child(16){animation-delay:-12s;animation-duration:22s;left:80%}.particle:nth-child(17){animation-delay:-4s;animation-duration:28s;left:85%}.particle:nth-child(18){animation-delay:-9s;animation-duration:20s;left:90%}.particle:nth-child(19){animation-delay:-6s;animation-duration:26s;left:95%}.particle:nth-child(20){animation-delay:-10s;animation-duration:24s;left:8%}.particle:nth-child(odd){height:3px;opacity:.3;width:3px}.particle:nth-child(3n){height:5px;opacity:.5;width:5px}.particle:nth-child(5n){height:2px;opacity:.25;width:2px}@keyframes float-particle{0%{opacity:0;transform:translateY(100vh) translateX(0)}10%{opacity:.4}90%{opacity:.4}to{opacity:0;transform:translateY(-100px) translateX(50px)}}.floating-nav-grain{background:#0000;border:1px solid #0000;border-radius:0;box-shadow:none;box-sizing:border-box;left:50%;position:fixed;top:0;transform:translateX(-50%);transition:top .5s cubic-bezier(.4,0,.2,1),width .5s cubic-bezier(.4,0,.2,1),max-width .5s cubic-bezier(.4,0,.2,1),padding .5s cubic-bezier(.4,0,.2,1),background .5s cubic-bezier(.4,0,.2,1),border-radius .5s cubic-bezier(.4,0,.2,1),border-color .5s cubic-bezier(.4,0,.2,1),box-shadow .5s cubic-bezier(.4,0,.2,1);width:calc(100% - 3rem);z-index:1005}.floating-nav-grain .nav-inner{align-items:center;display:flex;justify-content:space-between;margin:0;max-width:100%;padding:20px 0;transition:padding .5s cubic-bezier(.4,0,.2,1)}.floating-nav-grain.nav-scrolled{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #00000014;border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 4px 30px #0000001a;max-width:1000px;top:1rem;width:calc(100% - 10rem)}.floating-nav-grain.nav-scrolled .nav-inner{padding:10px 20px}.floating-nav-grain .nav-logo{align-items:center;display:flex;text-decoration:none}.floating-nav-grain .logo-img{height:70px;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:auto}.floating-nav-grain.nav-scrolled .logo-img{height:44px}.floating-nav-grain .nav-links{align-items:center;display:flex;gap:8px}.floating-nav-grain .nav-link{border-radius:12px;border-radius:var(--radius-md);color:#ffffffb3;color:var(--grain-text-muted);font-size:.95rem;font-weight:500;padding:10px 16px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.floating-nav-grain .nav-link:hover{color:#fff;color:var(--grain-text)}.floating-nav-grain.nav-scrolled .nav-link{color:#666;font-size:.9rem;padding:8px 12px}.floating-nav-grain.nav-scrolled .nav-link:hover,.nav-btn-grain{color:#0d1a2d;color:var(--grain-primary-dark)}.nav-btn-grain{background:#fff;background:var(--grain-text);border-radius:20px;border-radius:var(--radius-lg);font-size:.95rem;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.nav-btn-grain:hover{background:#ffffffe6;transform:translateY(-1px)}.floating-nav-grain.nav-scrolled .nav-btn-grain{background:#142236;background:var(--grain-primary);color:#fff;font-size:.85rem;padding:8px 16px}.floating-nav-grain.nav-scrolled .nav-btn-grain:hover{background:#0d1a2d;background:var(--grain-primary-dark)}.hero-grain{align-items:center;background:#0000;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:900px;min-height:100vh;padding:120px 24px 80px;position:relative;text-align:center;z-index:1}.hero-badge-grain{align-items:center;background:#ffffff1a;border:1px solid #ffffff26;border:1px solid var(--grain-border);border-radius:50px;color:#fff;color:var(--grain-text);display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;margin-bottom:32px;padding:8px 16px}.hero-badge-grain .badge-dot{animation:pulse 2s infinite;background:#10b981;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero-title-grain{color:#fff;color:var(--grain-text);font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:clamp(2.5rem,6vw,4rem);font-weight:600;line-height:1.1;margin-bottom:24px;min-height:2.4em}.rotating-word{font-weight:600}.cursor-grain,.rotating-word{color:#f5a623;color:var(--grain-accent-warm)}.cursor-grain{animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-subtitle-grain{color:#ffffffb3;color:var(--grain-text-muted);font-size:1.25rem;line-height:1.6;margin:0 auto 40px;max-width:600px}.hero-grain .hero-actions{align-items:center;display:flex;flex-direction:column;gap:16px}.btn-primary-grain{align-items:center;background:#fff;background:var(--grain-text);border:none;border-radius:20px;border-radius:var(--radius-lg);color:#0d1a2d;color:var(--grain-primary-dark);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:8px;padding:16px 32px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.btn-primary-grain:hover{background:#ffffffe6;box-shadow:0 12px 40px #0000004d;transform:translateY(-2px)}.btn-primary-grain .btn-arrow{transition:transform .2s}.btn-primary-grain:hover .btn-arrow{transform:translateX(4px)}.btn-secondary-grain{color:#ffffffb3;color:var(--grain-text-muted);font-size:.95rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.btn-secondary-grain:hover{color:#fff;color:var(--grain-text)}.transition-wrapper-grain{height:130vh;position:relative}.transition-sticky-grain{height:100vh;overflow:hidden;position:-webkit-sticky;position:sticky;top:0}.tools-section-grain,.transition-sticky-grain{align-items:center;display:flex;justify-content:center}.tools-section-grain{flex-direction:column;height:100%;padding:80px 24px;position:absolute;transition:opacity .5s ease,transform .5s ease;width:100%}.tools-section-grain.hidden{opacity:0;pointer-events:none;transform:scale(.95)}.tools-content-grain{max-width:800px;position:relative;text-align:center;z-index:2}.tools-label-grain{color:#ffffffb3;color:var(--grain-text-muted);font-size:.85rem;font-weight:600;letter-spacing:.15em;margin-bottom:32px;text-transform:uppercase}.tools-title-grain{color:#fff;color:var(--grain-text);font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:clamp(2rem,5vw,3.5rem);font-weight:600;line-height:1.2;margin-bottom:24px}.tools-subtitle-grain{color:#ffffffb3;color:var(--grain-text-muted);font-size:1.1rem;line-height:1.6;margin-bottom:16px}.tools-emphasis-grain{color:#fff;color:var(--grain-text);font-style:italic;font-weight:500}.tools-logos-grain{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.tool-logo-grain{align-items:center;animation:float-tool 6s ease-in-out infinite;background:#fff;border-radius:18px;box-shadow:0 8px 32px #00000040;display:flex;height:70px;justify-content:center;overflow:hidden;position:absolute;width:70px}.tool-logo-grain img{height:50px;object-fit:contain;width:50px}.tool-kahoot{background:#46178f;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:1.5rem;font-weight:800}.tool-socrative{align-items:center;background:#f7941d;display:flex;justify-content:center;padding:10px}.tool-lessonup{background:#ff6b35;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-sans);font-size:1.2rem;font-weight:700}.tool-logo-grain:first-child{animation-delay:0s;left:18%;top:32%;transition:all .6s cubic-bezier(.34,1.56,.64,1)}.tool-logo-grain:nth-child(2){animation-delay:-2s;left:12%;top:45%;transition:all .6s cubic-bezier(.34,1.56,.64,1)}.tool-logo-grain:nth-child(3){animation-delay:-4s;left:18%;top:58%;transition:all .6s cubic-bezier(.34,1.56,.64,1)}.tool-logo-grain:nth-child(4){animation-delay:-1s;right:18%;top:32%;transition:all .6s cubic-bezier(.34,1.56,.64,1)}.tool-logo-grain:nth-child(5){animation-delay:-3s;right:12%;top:45%;transition:all .6s cubic-bezier(.34,1.56,.64,1)}.tool-logo-grain:nth-child(6){animation-delay:-5s;right:18%;top:58%;transition:all .6s cubic-bezier(.34,1.56,.64,1)}@keyframes float-tool{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.meet-section-grain{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transform:translateY(60px);transition:opacity .5s ease-out,transform .5s ease-out;width:100%}.meet-section-grain.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.meet-content-grain{margin-top:15vh;text-align:center}.meet-title-grain{align-items:center;display:flex;gap:24px;justify-content:center;margin-bottom:24px}.meet-text-grain{color:#fff;color:var(--grain-text);font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:clamp(2.5rem,6vw,4rem);font-weight:600}.meet-logo-grain{align-items:center;display:flex;justify-content:center}.meet-logo-grain img{height:120px;width:auto}.meet-subtitle-grain{color:#ffffffb3;color:var(--grain-text-muted);font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:clamp(1.25rem,3vw,1.75rem);font-style:italic}@media (max-width:768px){.tool-logo-grain{border-radius:12px;height:50px;width:50px}.tool-logo-grain img{height:35px;width:35px}.tool-logo-grain:first-child{left:2%}.tool-logo-grain:nth-child(2){left:-2%}.tool-logo-grain:nth-child(3){left:3%}.tool-logo-grain:nth-child(4){right:2%}.tool-logo-grain:nth-child(5){right:-2%}.tool-logo-grain:nth-child(6){right:3%}.meet-logo-grain img{height:80px}.meet-title-grain{flex-direction:column;gap:16px}}.section-header-grain{margin-bottom:48px;position:relative;text-align:center;z-index:1}.section-label-grain{background:#ffffff26;border:1px solid #ffffff26;border:1px solid var(--grain-border);border-radius:50px;display:inline-block;font-size:.75rem;letter-spacing:.1em;margin-bottom:16px;padding:6px 12px;text-transform:uppercase}.section-label-grain,.section-title-grain{color:#fff;color:var(--grain-text);font-weight:600}.section-title-grain{font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.5rem)}.section-light .section-label-grain{background:#1e3a5f1a;border-color:#1e3a5f33;color:#142236;color:var(--grain-primary)}.section-light .section-title-grain{color:#0d1a2d;color:var(--grain-primary-dark)}.section-wrapper-eden{background:#142236;background:var(--grain-primary);display:flex;justify-content:center;min-height:80vh;padding:20px 0 100px;position:relative;z-index:1}.eden-white-container{background:#fff;border-radius:32px;box-shadow:0 8px 40px #00000014;padding:32px;position:relative;transition:width .15s ease-out,transform .15s ease-out;z-index:1}.eden-blue-container{background:#1e5a9626;border:1px solid #1e5a9633;border-radius:24px;padding:48px 40px}.eden-blue-container .section-label-grain{background:#142236;background:var(--grain-primary);border-color:#142236;border-color:var(--grain-primary);color:#fff}.eden-blue-container .section-title-grain{color:#0d1a2d;color:var(--grain-primary-dark)}.eden-bento-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto auto}.eden-card{background:#fff;border:1px solid #1e3a5f0f;border-radius:20px;display:flex;flex-direction:column;padding:24px;transition:transform .3s ease,box-shadow .3s ease}.eden-card:hover{box-shadow:0 16px 40px #1e3a5f1f;transform:translateY(-4px)}.eden-card-label{color:#f5a623;color:var(--grain-accent-warm);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.eden-card h3,.eden-card-label{font-weight:600;margin-bottom:8px}.eden-card h3{color:#0d1a2d;color:var(--grain-primary-dark);font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:1.25rem}.eden-card p{color:#ffffffb3;color:var(--grain-text-muted);font-size:.9rem;line-height:1.5;margin-bottom:16px}.eden-card-image{border-radius:12px;margin-top:auto;overflow:hidden}.eden-card-image img{display:block;height:100%;object-fit:cover;width:100%}.eden-card-large{grid-column:span 2;grid-row:span 2}.eden-card-large .eden-card-image{height:220px}.eden-card-medium{grid-row:span 2}.eden-card-medium .eden-card-image{height:140px}.eden-card-wide{grid-column:span 2}.eden-card-wide .eden-card-image{height:120px}.eden-card-small{background:linear-gradient(135deg,#f8fafc,#eef2f7)}.eden-card-small h3{font-size:1.1rem}.eden-card-small p{font-size:.85rem;margin-bottom:0}@media (max-width:1024px){.eden-bento-grid{grid-template-columns:repeat(2,1fr)}.eden-card-large{grid-column:span 2;grid-row:span 1}.eden-card-large .eden-card-image{height:180px}.eden-card-medium{grid-row:span 1}.eden-card-wide{grid-column:span 2}}@media (max-width:640px){.eden-bento-grid{grid-template-columns:1fr}.eden-card-large,.eden-card-wide{grid-column:span 1}.eden-card-large .eden-card-image,.eden-card-medium .eden-card-image,.eden-card-wide .eden-card-image{height:150px}}.bento-grid-grain{grid-gap:16px;display:grid;gap:16px;grid-auto-rows:minmax(150px,auto);grid-template-columns:repeat(4,1fr)}.bento-card-grain{background:#f8fafc;border:1px solid #1e3a5f14;border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #1e3a5f0f;overflow:hidden;padding:24px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.bento-card-grain:hover{box-shadow:0 12px 32px #1e3a5f1f;transform:translateY(-4px)}.bento-large-grain{background:linear-gradient(135deg,#142236,#0d1a2d);background:linear-gradient(135deg,var(--grain-primary) 0,var(--grain-primary-dark) 100%);color:#fff;display:flex;flex-direction:column;grid-column:span 2;grid-row:span 2;justify-content:space-between}.bento-large-grain h3,.bento-large-grain p{color:#fff}.bento-large-grain p{color:#fffc}.bento-medium-grain{grid-column:span 2}.bento-small-grain{align-items:flex-start;background:linear-gradient(135deg,#e8eef5,#d9e4f0);border:1px solid #1e3a5f26;display:flex;flex-direction:column;gap:8px;justify-content:center}.bento-card-grain .bento-icon{display:block;font-size:2rem;margin-bottom:12px}.bento-icon-small{font-size:1.5rem}.bento-card-grain h3{font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:1.5rem;margin-bottom:8px}.bento-card-grain h3,.bento-card-grain h4{color:#0d1a2d;color:var(--grain-primary-dark);font-weight:600}.bento-card-grain h4{font-size:1rem}.bento-card-grain p{color:#666;font-size:.95rem;line-height:1.5}.bento-visual-grain{margin-top:auto;overflow:hidden}.bento-visual-grain,.bento-visual-grain img{border-radius:12px;border-radius:var(--radius-md)}.bento-visual-grain img{box-shadow:0 8px 24px #00000026;height:auto;width:100%}.card-accent-1{background:linear-gradient(135deg,#5b21b6,#7c3aed);color:#fff}.card-accent-1 h3,.card-accent-1 p{color:#fff}.card-accent-1 p{color:#ffffffd9}.card-accent-2{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff}.card-accent-2 h3,.card-accent-2 p{color:#fff}.card-accent-2 p{color:#ffffffd9}.steps-section-grain{margin:0 auto;max-width:1200px;padding:80px 24px;position:relative;z-index:1}.steps-container-grain{background:#fff;border-radius:32px;box-shadow:0 20px 60px #0003;padding:60px 48px}.steps-section-grain .section-label-grain{background:#142236;background:var(--grain-primary);border-color:#142236;border-color:var(--grain-primary);color:#fff}.steps-section-grain .section-title-grain{color:#0d1a2d;color:var(--grain-primary-dark)}.steps-grid-grain{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(3,1fr)}.step-grain{text-align:center}.step-number-grain{color:#142236;color:var(--grain-primary);font-size:3rem;font-weight:700;margin-bottom:16px;opacity:.2}.step-grain h3,.step-number-grain{font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif)}.step-grain h3{color:#0d1a2d;color:var(--grain-primary-dark);font-size:1.25rem;font-weight:600;margin-bottom:12px}.step-grain p{color:#666;font-size:.95rem;line-height:1.6}.steps-section-new{background:#142236;background:var(--grain-primary);padding:80px 24px;position:relative}.steps-container-new{background:#fff;border-radius:32px;box-shadow:0 20px 60px #00000026;margin:0 auto;max-width:1100px;padding:48px}.steps-section-new .section-label-grain{background:#142236;background:var(--grain-primary);border-color:#142236;border-color:var(--grain-primary);color:#fff}.steps-section-new .section-title-grain{color:#0d1a2d;color:var(--grain-primary-dark)}.steps-timeline{align-items:stretch;display:flex;gap:48px;margin-top:48px}.step-card{background:#1e5a9626;border:1px solid #1e5a9633;border-radius:20px;flex:1 1;padding:28px 24px;position:relative;transition:transform .3s ease,box-shadow .3s ease}.step-card:hover{box-shadow:0 12px 24px #1e3a5f14;transform:translateY(-4px)}.step-number{background:#1e3a5f1a;border-radius:50%;color:#142236;color:var(--grain-primary);display:inline-block;font-size:.75rem;font-weight:700;height:28px;line-height:28px;margin-bottom:16px;text-align:center;width:28px}.step-card h3,.step-number{font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif)}.step-card h3{color:#0d1a2d;color:var(--grain-primary-dark);font-size:1.15rem;font-weight:600;margin-bottom:10px}.step-card p{color:#64748b;font-size:.85rem;line-height:1.6;margin:0}.step-arrow{color:#142236;color:var(--grain-primary);font-size:1.25rem;font-weight:300;position:absolute;right:-32px;top:50%;transform:translateY(-50%)}.step-card:last-child .step-arrow{display:none}@media (max-width:900px){.steps-container-new{padding:32px 24px}.steps-timeline{flex-direction:column;gap:16px}.step-arrow{display:none}.step-card{padding:24px}}.app-content-inside{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1fr 1fr}.app-description-inside{color:#64748b;font-size:1rem;line-height:1.6;margin-bottom:24px}.app-features-inside{list-style:none;margin:0 0 24px;padding:0}.app-features-inside li{align-items:center;color:#64748b;display:flex;font-size:.95rem;gap:12px;margin-bottom:10px}.check-inside{color:#10b981;font-weight:600}.btn-primary-inside{align-items:center;background:#142236;background:var(--grain-primary);border-radius:12px;color:#fff;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;padding:14px 28px;text-decoration:none;transition:all .3s ease}.btn-primary-inside:hover{background:#0d1a2d;background:var(--grain-primary-dark);transform:translateY(-2px)}.app-visual-inside{display:flex;justify-content:center}@media (max-width:900px){.app-content-inside{gap:32px;grid-template-columns:1fr}.app-visual-inside{order:-1}}.subjects-pills-inside{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:32px}.subject-pill-inside{background:#1e5a961a;border:1px solid #1e5a9626;border-radius:50px;color:#0d1a2d;color:var(--grain-primary-dark);font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .3s ease}.subject-pill-inside:hover{background:#1e5a9633;transform:translateY(-2px)}.subject-more-inside{background:#142236;background:var(--grain-primary);border-color:#142236;border-color:var(--grain-primary);color:#fff}.subject-more-inside:hover{background:#0d1a2d;background:var(--grain-primary-dark)}.app-section-grain{background:#142236;background:var(--grain-primary);padding:80px 24px;position:relative;z-index:1}.app-content-grain{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1100px}.app-description-grain{color:#ffffffb3;color:var(--grain-text-muted);font-size:1.1rem;line-height:1.6;margin-bottom:32px}.app-features-grain{list-style:none;margin:0 0 32px;padding:0}.app-features-grain li{align-items:center;color:#ffffffb3;color:var(--grain-text-muted);display:flex;font-size:1rem;gap:12px;margin-bottom:12px}.check-grain{color:#10b981;font-weight:600}.app-visual-grain{display:flex;justify-content:center}.ipad-mockup-grain{background:#2d2d3a;border-radius:32px;box-shadow:0 40px 80px #0006,inset 0 1px 0 #ffffff1a;padding:12px}.ipad-screen-grain{background:#f8fafc;border-radius:20px;height:440px;overflow:hidden;width:300px}.mockup-app-grain{display:flex;flex-direction:column;height:100%}.mockup-topbar{align-items:center;background:#142236;background:var(--grain-primary);display:flex;justify-content:space-between;padding:14px 16px}.mockup-logo-small{align-items:center;display:flex;gap:8px}.mockup-logo-icon{background:#fff3;border-radius:6px;color:#fff;font-size:.65rem;font-weight:700;padding:4px 6px}.mockup-logo-text{color:#fff;font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:.9rem;font-weight:600}.mockup-timer{background:#ffffff26;border-radius:20px;color:#fff;font-family:monospace;font-size:.8rem;font-weight:600;padding:6px 12px}.mockup-progress-bar{background:#e2e8f0;height:4px}.mockup-progress-fill{background:linear-gradient(90deg,#10b981,#059669);border-radius:0 2px 2px 0;height:100%;transition:width .3s ease}.mockup-content{display:flex;flex:1 1;flex-direction:column;padding:20px 16px}.mockup-question-badge{align-self:flex-start;background:#eef2ff;border-radius:12px;color:#6366f1;display:inline-flex;font-size:.7rem;font-weight:600;margin-bottom:12px;padding:5px 10px}.mockup-question-text{color:#1e293b;font-size:1.05rem;font-weight:600;line-height:1.4;margin-bottom:20px}.mockup-options-grain{display:flex;flex-direction:column;gap:10px}.option-grain{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:12px 14px;transition:all .2s ease}.option-grain:hover{background:#f8fafc;border-color:#cbd5e1}.option-grain.selected{background:#f5f3ff;border-color:#6366f1}.option-radio{border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;height:18px;position:relative;width:18px}.option-grain.selected .option-radio{border-color:#6366f1}.option-grain.selected .option-radio:after{background:#6366f1;border-radius:50%;content:"";height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px}.option-label{color:#334155;font-size:.9rem;font-weight:500}.option-grain.selected .option-label{color:#4338ca}.mockup-bottom{padding:12px 16px 16px}.mockup-next-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);border-radius:12px;box-shadow:0 4px 12px #6366f14d;color:#fff;font-size:.9rem;font-weight:600;padding:12px 20px;text-align:center}.subjects-section-grain{margin:0 auto;max-width:900px;padding:80px 24px;position:relative;z-index:1}.subjects-section-grain .section-label-grain{background:#ffffffe6;border-color:#ffffff4d;color:#142236;color:var(--grain-primary)}.subjects-section-grain .section-title-grain{color:#fff;color:var(--grain-text)}.subjects-pills-grain{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.subject-pill-grain{background:#fffffff2;border:1px solid #fff3;border-radius:50px;box-shadow:0 4px 12px #0000001a;color:#0d1a2d;color:var(--grain-primary-dark);font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.subject-pill-grain:hover{box-shadow:0 8px 20px #0003;transform:translateY(-2px)}.subject-more-grain{background:#ffffff26;border-color:#ffffff4d;color:#fff}.subject-more-grain:hover{background:#ffffff40;color:#fff}.cta-section-grain{background:#142236;background:var(--grain-primary);padding:100px 24px;position:relative;text-align:center;z-index:1}.cta-content-grain h2{color:#fff;color:var(--grain-text);font-family:Playfair Display,Georgia,serif;font-family:var(--font-serif);font-size:clamp(2rem,4vw,2.75rem);font-weight:600;margin-bottom:16px}.cta-content-grain p{color:#ffffffb3;color:var(--grain-text-muted);font-size:1.1rem;margin-bottom:32px}.btn-cta-grain{align-items:center;background:#fff;background:var(--grain-text);border-radius:20px;border-radius:var(--radius-lg);color:#0d1a2d;color:var(--grain-primary-dark);display:inline-flex;font-size:1.1rem;font-weight:600;gap:8px;padding:18px 36px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.btn-cta-grain:hover{box-shadow:0 20px 40px #0000004d;transform:translateY(-2px)}.footer-grain{background:#142236;background:var(--grain-primary);border-top:1px solid #ffffff26;color:#fff;color:var(--grain-text);padding:60px 24px 30px;position:relative;z-index:1}.footer-content-grain{margin:0 auto;max-width:1100px}.footer-top-grain{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:40px;padding-bottom:40px}.footer-logo-img{height:80px;width:auto}.footer-tagline-grain{color:#ffffffb3;color:var(--grain-text-muted);font-size:.9rem;margin-top:8px}.footer-links-grain{display:flex;gap:80px}.footer-col-grain h4{color:#ffffff80;color:var(--grain-text-subtle);font-size:.875rem;font-weight:600;letter-spacing:.05em;margin-bottom:16px;text-transform:uppercase}.footer-col-grain a{color:#ffffffb3;color:var(--grain-text-muted);display:block;font-size:.95rem;margin-bottom:10px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.footer-col-grain a:hover{color:#fff;color:var(--grain-text)}.footer-bottom-grain{align-items:center;color:#ffffff80;color:var(--grain-text-subtle);display:flex;font-size:.875rem;justify-content:space-between}@media (max-width:1024px){.bento-grid-grain{grid-template-columns:repeat(2,1fr)}.bento-large-grain{grid-column:span 2}.app-content-grain{grid-template-columns:1fr;text-align:center}.app-features-grain{display:inline-block;text-align:left}}@media (max-width:768px){.floating-nav-grain .nav-inner{padding:16px 20px}.floating-nav-grain.nav-scrolled{border-radius:20px;border-radius:var(--radius-lg);max-width:calc(100% - 20px);top:10px}.floating-nav-grain.nav-scrolled .nav-inner{padding:8px 16px}.floating-nav-grain .nav-links{gap:4px}.floating-nav-grain .nav-link{font-size:.875rem;padding:8px 12px}.nav-btn-grain{font-size:.875rem;padding:8px 16px}.hero-grain{min-height:100vh;padding:100px 20px 60px}.hero-title-grain{min-height:5em}.section-wrapper-eden{min-height:auto;padding:24px 0 40px}.eden-white-container{border-radius:20px!important;padding:16px;transform:none!important;width:95%!important}.eden-blue-container{border-radius:16px;padding:20px 16px}.bento-grid-grain{grid-template-columns:1fr}.bento-large-grain,.bento-medium-grain{grid-column:span 1}.bento-large-grain{grid-row:span 1}.steps-grid-grain{gap:32px;grid-template-columns:1fr}.footer-top-grain{gap:32px;text-align:center}.footer-brand-grain,.footer-top-grain{align-items:center;flex-direction:column}.footer-brand-grain{display:flex}.footer-links-grain{gap:40px;justify-content:center}.footer-col-grain{text-align:center}.footer-col-grain a{display:block}.footer-bottom-grain{flex-direction:column;gap:8px;text-align:center}}@media (max-width:480px){.hero-badge-grain{font-size:.75rem;padding:6px 12px}.subjects-pills-grain{gap:8px}.subject-pill-grain{font-size:.8rem;padding:8px 14px}}.mobile-menu-btn{display:none}@media (max-width:768px){.nav-desktop{display:none!important}.floating-nav-grain,.floating-nav-grain.nav-scrolled{background:#fff;border-radius:20px;box-shadow:0 2px 20px #00000014;max-width:none;top:12px;transition:border-radius .3s ease;width:calc(100% - 24px);z-index:1005}.floating-nav-grain.menu-open,.floating-nav-grain.menu-open.nav-scrolled{border-radius:20px 20px 0 0;box-shadow:none}.floating-nav-grain .nav-inner,.floating-nav-grain.nav-scrolled .nav-inner{padding:12px 16px}.floating-nav-grain .logo-img,.floating-nav-grain.nav-scrolled .logo-img{height:44px}.mobile-menu-btn{align-items:center;background:#0000000d;border:1px solid #00000014;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:6px;height:40px;justify-content:center;padding:10px;position:relative;transition:all .3s ease;width:40px;z-index:1004}.mobile-menu-btn:hover{background:#00000014}.hamburger-line{background:#0d1a2d;background:var(--grain-primary-dark);border-radius:2px;display:block;height:2px;transition:all .3s ease;width:16px}.mobile-menu-btn.open .hamburger-line:first-child{transform:rotate(45deg) translate(3px,3px)}.mobile-menu-btn.open .hamburger-line:nth-child(2){transform:rotate(-45deg) translate(3px,-3px)}}.mobile-menu-overlay{display:none}@media (max-width:768px){.mobile-menu-overlay{background:#fff!important;border:none;border-radius:0 0 20px 20px;box-shadow:0 10px 30px #0000001a;display:block;left:50%;max-height:0;overflow:hidden;position:fixed;top:68px;transform:translateX(-50%);transition:max-height .3s cubic-bezier(.4,0,.2,1);width:calc(100% - 24px);z-index:1003}.mobile-menu-overlay.open{max-height:420px}}.mobile-menu{background:#fff!important;display:flex;flex-direction:column;gap:4px;padding:24px 20px 20px}.mobile-menu-link{color:#0d1a2d;color:var(--grain-primary-dark);display:block;font-size:.95rem;font-weight:500;padding:10px 0;text-decoration:none;transition:all .2s ease}.mobile-menu-link:hover{color:#142236;color:var(--grain-primary)}.mobile-menu-buttons{border-top:1px solid #0000000f;display:flex;flex-direction:column;gap:10px;margin-top:16px;padding-top:16px}.mobile-menu-btn-secondary{border:1px solid #00000026;border-radius:12px;color:#0d1a2d;color:var(--grain-primary-dark);display:block;font-size:1rem;font-weight:600;padding:14px 24px;text-align:center;text-decoration:none;transition:all .2s ease}.mobile-menu-btn-secondary:hover{background:#00000008;border-color:#00000040}.mobile-menu-btn-primary{background:#0d1a2d;background:var(--grain-primary-dark);border-radius:12px;color:#fff!important;display:block;font-size:1rem;font-weight:600;padding:14px 24px;text-align:center;text-decoration:none;transition:all .2s ease}.mobile-menu-btn-primary:hover{background:#142236;background:var(--grain-primary)}.features-page{background:var(--grain-primary);color:var(--grain-text);font-family:var(--font-sans);min-height:100vh;position:relative}.features-hero{border-bottom:1px solid var(--grain-border);margin:0 auto;max-width:900px;padding:160px 24px 60px;text-align:center}.features-hero-content h1{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,3.5rem);font-weight:600;line-height:1.1;margin:0 0 16px}.features-hero-description{color:var(--grain-text-muted);font-size:1.1rem;line-height:1.7;margin:0}.features-list-section{padding:60px 24px}.features-list{margin:0 auto;max-width:1100px}.feature-item{grid-gap:48px;align-items:center;background:#ffffff0d;border:1px solid var(--grain-border);border-radius:20px;display:grid;gap:48px;grid-template-columns:1.1fr 1fr;margin-bottom:60px;padding:40px;scroll-margin-top:100px;transition:all .3s ease}.feature-item:hover{background:#ffffff14;transform:translateY(-4px)}.feature-item:last-child{margin-bottom:0}.feature-item.reverse{grid-template-columns:1fr 1.1fr}.feature-item.reverse .feature-image-container{order:2}.feature-item.reverse .feature-text-container{order:1}.feature-image-container{background:#ffffff1a;border-radius:12px;min-height:280px;overflow:hidden;position:relative}.feature-image{display:block;height:100%;object-fit:contain;width:100%}.feature-text-container{padding:16px}.feature-number{color:var(--grain-accent);display:inline-block;font-size:3rem;font-weight:700;line-height:1;margin-bottom:12px;opacity:.3}.feature-text-container h2{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(1.5rem,3vw,2rem);font-weight:600;line-height:1.2;margin:0 0 16px}.feature-text-container p{color:var(--grain-text-muted);font-size:1rem;line-height:1.8;margin:0}.features-cta{border-top:1px solid var(--grain-border);padding:80px 24px;text-align:center}.features-cta h2{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;margin:0 0 12px}.features-cta p{color:var(--grain-text-muted);font-size:1.1rem;margin:0 0 32px}.features-cta-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.features-page .features-cta button.features-btn-primary{background:#fff;border:none;border-radius:12px;color:#0d1a2d!important;cursor:pointer;font-size:1rem;font-weight:600;padding:16px 32px;transition:all .3s ease}.features-page .features-cta button.features-btn-primary:hover{box-shadow:0 10px 30px #0000004d;transform:translateY(-2px)}.features-btn-secondary{background:#0000;border:1px solid var(--grain-border);border-radius:12px;color:var(--grain-text);cursor:pointer;font-size:1rem;font-weight:600;padding:16px 32px;transition:all .3s ease}.features-btn-secondary:hover{background:#ffffff1a;border-color:var(--grain-text-muted)}@media (max-width:900px){.feature-item{gap:32px;padding:32px}.feature-item,.feature-item.reverse{grid-template-columns:1fr}.feature-item.reverse .feature-image-container{order:1}.feature-item.reverse .feature-text-container{order:2}.feature-image-container{min-height:220px}}@media (max-width:768px){.features-hero{padding:120px 20px 40px}.features-list-section{padding:40px 20px}.feature-item{margin-bottom:32px;padding:24px}.feature-text-container{padding:8px}.feature-number{font-size:2rem}.features-cta{padding:60px 20px}.features-cta-buttons{flex-direction:column;margin:0 auto;max-width:300px;width:100%}.features-page .features-cta button.features-btn-primary,.features-page .features-cta button.features-btn-secondary{width:100%}}.login-page{background:var(--grain-primary);color:var(--grain-text);display:flex;flex-direction:column;font-family:var(--font-sans);min-height:100vh;position:relative}.login-content{align-items:center;display:flex;flex:1 1;justify-content:center;padding:160px 24px 80px}.login-box{background:#ffffff0d;border:1px solid var(--grain-border);border-radius:20px;max-width:420px;padding:40px;width:100%}.login-box h2{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2rem);font-weight:600;margin:0 0 8px;text-align:center}.login-subtitle{color:var(--grain-text-muted);font-size:1rem;margin:0 0 32px;text-align:center}.login-form-group{margin-bottom:20px}.login-form-group label{color:var(--grain-text);display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.login-form-group input{background:#ffffff14;border:1px solid var(--grain-border);border-radius:12px;box-sizing:border-box;color:var(--grain-text);font-family:inherit;font-size:1rem;padding:14px 16px;transition:all .2s ease;width:100%}.login-form-group input::placeholder{color:var(--grain-text-subtle)}.login-form-group input:focus{background:#ffffff1a;border-color:var(--grain-accent);outline:none}.login-form-group input:disabled{cursor:not-allowed;opacity:.6}.login-error{background:#ef444433;border-left:4px solid #ef4444;border-radius:12px;color:#ef4444;font-size:.95rem;margin-bottom:20px;padding:14px 16px}.login-submit-btn{background:var(--grain-text);border:none;border-radius:12px;color:var(--grain-primary-dark);cursor:pointer;font-size:1rem;font-weight:600;margin-top:8px;padding:16px 32px;transition:all .3s ease;width:100%}.login-submit-btn:hover:not(:disabled){box-shadow:0 10px 30px #0000004d;transform:translateY(-2px)}.login-submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-divider{align-items:center;color:var(--grain-text-muted);display:flex;margin:24px 0}.login-divider:after,.login-divider:before{background:var(--grain-border);content:"";flex:1 1;height:1px}.login-divider span{font-size:.9rem;padding:0 16px}.login-entree-btn{align-items:center;background:#1e40af;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;padding:14px 24px;transition:all .3s ease;width:100%}.login-entree-btn:hover:not(:disabled){background:#1d4ed8;box-shadow:0 10px 30px #1e40af4d;transform:translateY(-2px)}.login-entree-btn:disabled{cursor:not-allowed;opacity:.6}.login-entree-btn svg{flex-shrink:0}.login-entree-hint{color:var(--grain-text-subtle);font-size:.85rem;margin:8px 0 0;text-align:center}.login-footer{margin-top:24px}.login-footer p{color:var(--grain-text-muted);font-size:.95rem}.login-footer a{color:var(--grain-accent);font-weight:600;text-decoration:none;transition:color .2s}.login-footer a:hover{color:var(--grain-text)}@media (max-width:768px){.login-content{padding:120px 20px 60px}.login-box{padding:32px 24px}}.contact-page{background:var(--grain-primary);color:var(--grain-text);font-family:var(--font-sans);min-height:100vh;position:relative}.contact-hero{border-bottom:1px solid var(--grain-border);margin:0 auto;max-width:900px;padding:160px 24px 60px;text-align:center}.contact-hero h1{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,3.5rem);font-weight:600;line-height:1.1;margin:0 0 16px}.contact-hero-description{color:var(--grain-text-muted);font-size:1.1rem;margin:0}.contact-info-section{margin:0 auto;max-width:1100px;padding:60px 24px}.contact-info-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.contact-info-card{background:#ffffff0d;border:1px solid var(--grain-border);border-radius:20px;padding:32px 24px;text-align:center;transition:all .3s ease}.contact-info-card:hover{background:#ffffff14;transform:translateY(-4px)}.contact-icon{font-size:2.5rem;margin-bottom:16px}.contact-info-card h3{color:var(--grain-text);font-family:var(--font-serif);font-size:1.25rem;font-weight:600;margin:0 0 8px}.contact-info-card p{color:var(--grain-text-muted);font-size:.95rem;margin:0 0 16px}.contact-link{color:var(--grain-accent);font-weight:600;text-decoration:none;transition:color .2s}.contact-link:hover{color:var(--grain-text)}.contact-text{color:var(--grain-text-muted);font-weight:600}.contact-form-section{border-top:1px solid var(--grain-border);padding:60px 24px}.contact-form-container{margin:0 auto;max-width:600px}.contact-form-header{margin-bottom:40px;text-align:center}.contact-form-header h2{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;margin:0 0 12px}.contact-form-header p{color:var(--grain-text-muted);font-size:1rem;margin:0}.form-success{background:#10b98133;border-left:4px solid #10b981;color:#10b981}.form-error,.form-success{border-radius:12px;font-weight:500;margin-bottom:24px;padding:16px 20px}.form-error{background:#ef444433;border-left:4px solid #ef4444;color:#ef4444}.contact-form{background:#ffffff0d;border:1px solid var(--grain-border);border-radius:20px;padding:32px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.contact-page .form-group{margin-bottom:20px}.contact-page .form-group label{color:var(--grain-text);display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.contact-page .form-group input,.contact-page .form-group select,.contact-page .form-group textarea{background:#ffffff14;border:1px solid var(--grain-border);border-radius:12px;color:var(--grain-text);font-family:inherit;font-size:1rem;padding:14px 16px;transition:all .2s ease;width:100%}.contact-page .form-group input::placeholder,.contact-page .form-group textarea::placeholder{color:var(--grain-text-subtle)}.contact-page .form-group select{cursor:pointer}.contact-page .form-group select option{background:var(--grain-primary);color:var(--grain-text)}.contact-page .form-group input:focus,.contact-page .form-group select:focus,.contact-page .form-group textarea:focus{background:#ffffff1a;border-color:var(--grain-accent);outline:none}.contact-page .form-group textarea{min-height:120px;resize:vertical}.contact-submit-btn{background:var(--grain-text);border:none;border-radius:12px;color:var(--grain-primary-dark);cursor:pointer;font-size:1rem;font-weight:600;margin-top:8px;padding:16px 32px;transition:all .3s ease;width:100%}.contact-submit-btn:hover{box-shadow:0 10px 30px #0000004d;transform:translateY(-2px)}.contact-submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.faq-section{border-top:1px solid var(--grain-border);padding:80px 24px}.faq-header{margin-bottom:48px;text-align:center}.faq-header h2{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;margin:0 0 12px}.section-subtitle{color:var(--grain-text-muted);font-size:1rem;margin:0}.faq-container{margin:0 auto;max-width:700px}.faq-item{background:#ffffff0d;border:1px solid var(--grain-border);border-radius:16px;cursor:pointer;margin-bottom:12px;overflow:hidden;transition:all .3s ease}.faq-item.active,.faq-item:hover{background:#ffffff14}.faq-item.active{border-color:var(--grain-accent)}.faq-question{align-items:center;display:flex;justify-content:space-between;padding:20px 24px}.faq-question h3{color:var(--grain-text);font-family:var(--font-sans);font-size:1rem;font-weight:600;margin:0;padding-right:16px}.faq-icon{color:var(--grain-accent);flex-shrink:0;font-size:1.5rem;font-weight:300;transition:transform .3s ease}.faq-answer{animation:slideDown .3s ease;padding:0 24px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.faq-answer p{color:var(--grain-text-muted);font-size:.95rem;line-height:1.7;margin:0}.faq-footer{border-top:1px solid var(--grain-border);margin-top:48px;padding-top:48px;text-align:center}.faq-footer p{color:var(--grain-text-muted);font-size:1.1rem;font-weight:500;margin:0 0 20px}.faq-email-btn{background:var(--grain-text);border-radius:12px;color:var(--grain-primary-dark);display:inline-block;font-size:1rem;font-weight:600;padding:14px 28px;text-decoration:none;transition:all .3s ease}.faq-email-btn:hover{box-shadow:0 10px 30px #0000004d;transform:translateY(-2px)}@media (max-width:768px){.contact-hero{padding:120px 20px 40px}.contact-info-section{padding:40px 20px}.contact-info-grid{grid-template-columns:1fr}.contact-form-section{padding:40px 20px}.contact-form{padding:24px 20px}.form-row{gap:0;grid-template-columns:1fr}.faq-section{padding:60px 20px}.faq-question{padding:16px 20px}.faq-answer{padding:0 20px 16px}}.privacy-page{background:var(--grain-primary);color:var(--grain-text);font-family:var(--font-sans);min-height:100vh;position:relative}.privacy-hero{border-bottom:1px solid var(--grain-border);margin:0 auto;max-width:900px;padding:160px 24px 60px;text-align:center}.privacy-hero-content h1{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,3.5rem);font-weight:600;line-height:1.1;margin:0 0 16px}.privacy-hero-description{color:var(--grain-text-muted);font-size:1.1rem;margin:0}.privacy-content{padding:60px 24px}.privacy-container{margin:0 auto;max-width:800px}.privacy-section{border-bottom:1px solid var(--grain-border);margin-bottom:48px;padding-bottom:48px}.privacy-section:last-child{border-bottom:none}.privacy-section h2{font-size:clamp(1.5rem,3vw,1.75rem);margin:0 0 24px}.privacy-section h2,.privacy-section h3{color:var(--grain-text);font-family:var(--font-serif);font-weight:600}.privacy-section h3{font-size:1.25rem;margin:32px 0 16px}.privacy-section p{color:var(--grain-text-muted);font-size:1rem;line-height:1.8;margin:0 0 16px}.privacy-section ul{list-style:none;margin:0 0 24px;padding:0}.privacy-section ul li{color:var(--grain-text-muted);font-size:1rem;line-height:1.8;margin-bottom:12px;padding-left:28px;position:relative}.privacy-section ul li:before{color:var(--grain-accent);content:"•";font-size:1.25rem;font-weight:700;left:0;position:absolute;top:0}.privacy-section a{color:var(--grain-accent);font-weight:500;text-decoration:none;transition:all .2s ease}.privacy-section a:hover{color:var(--grain-text);text-decoration:underline}.privacy-section strong{color:var(--grain-text);font-weight:600}@media (max-width:768px){.privacy-hero{padding:120px 20px 40px}.privacy-content{padding:40px 20px}.privacy-section{margin-bottom:32px;padding-bottom:32px}}.voorwaarden-page{background:var(--grain-primary);color:var(--grain-text);font-family:var(--font-sans);min-height:100vh;position:relative}.voorwaarden-hero{border-bottom:1px solid var(--grain-border);margin:0 auto;max-width:900px;padding:160px 24px 60px;text-align:center}.voorwaarden-hero-content h1{color:var(--grain-text);font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,3.5rem);font-weight:600;line-height:1.1;margin:0 0 16px}.voorwaarden-hero-description{color:var(--grain-text-muted);font-size:1.1rem;margin:0}.voorwaarden-content{padding:60px 24px}.voorwaarden-container{margin:0 auto;max-width:800px}.voorwaarden-section{border-bottom:1px solid var(--grain-border);margin-bottom:48px;padding-bottom:48px}.voorwaarden-section:last-child{border-bottom:none}.voorwaarden-section h2{font-size:clamp(1.5rem,3vw,1.75rem);margin:0 0 24px}.voorwaarden-section h2,.voorwaarden-section h3{color:var(--grain-text);font-family:var(--font-serif);font-weight:600}.voorwaarden-section h3{font-size:1.25rem;margin:32px 0 16px}.voorwaarden-section p{color:var(--grain-text-muted);font-size:1rem;line-height:1.8;margin:0 0 16px}.voorwaarden-section ul{list-style:none;margin:0 0 24px;padding:0}.voorwaarden-section ul li{color:var(--grain-text-muted);font-size:1rem;line-height:1.8;margin-bottom:12px;padding-left:28px;position:relative}.voorwaarden-section ul li:before{color:var(--grain-accent);content:"";font-size:1.25rem;font-weight:700;left:0;position:absolute;top:0}.voorwaarden-section a{color:var(--grain-accent);font-weight:500;text-decoration:none;transition:all .2s ease}.voorwaarden-section a:hover{color:var(--grain-text);text-decoration:underline}.voorwaarden-section strong{color:var(--grain-text);font-weight:600}@media (max-width:768px){.voorwaarden-hero{padding:120px 20px 40px}.voorwaarden-content{padding:40px 20px}.voorwaarden-section{margin-bottom:32px;padding-bottom:32px}}.student-login-container{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);background:linear-gradient(135deg,var(--lh-bg-primary,#1a1a2e) 0,var(--lh-bg-secondary,#16213e) 100%);display:flex;justify-content:center;min-height:100vh;padding:2rem}.student-login-content{max-width:500px;text-align:center;width:100%}.login-header{margin-bottom:2.5rem}.logo-container{align-items:center;display:flex;justify-content:center;margin-bottom:1rem}.logo-image{height:auto;max-width:280px}.subtitle{color:#ffffffb3;font-size:1.25rem;margin:0}.login-card{background:#ffffff0d;border:2px solid #ffffff1a;border-radius:16px;margin-bottom:1.5rem;padding:2.5rem}.login-card h2{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 .75rem;text-align:center}.login-description{color:#ffffffb3;font-size:1rem;line-height:1.5;margin-bottom:2rem;text-align:center}.error-message{background:#dc262626;border:1px solid #dc26264d;border-radius:8px;color:#fca5a5;font-size:14px;margin-bottom:20px;padding:15px;text-align:center}.btn-entree-login{-webkit-tap-highlight-color:rgba(45,54,145,.3);align-items:center;background:linear-gradient(135deg,#2d3691,#1e2a78);border:none;border-radius:12px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:12px;justify-content:center;padding:18px 24px;text-decoration:none;transition:all .3s ease;width:100%}.btn-entree-login:hover{background:linear-gradient(135deg,#3640a5,#2d3691);box-shadow:0 10px 30px #2d369159;color:#fff;text-decoration:none;transform:translateY(-3px)}.btn-entree-login:active{transform:translateY(-1px)}.entree-key-icon{border:2px solid #fffc;border-radius:6px;flex-shrink:0;height:28px;width:28px}.loading-spinner-small{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.login-info{border-top:1px solid #ffffff1a;margin-top:2rem;padding-top:1.5rem;text-align:left}.login-info h3{color:#ffffffe6;font-size:1rem;margin:0 0 1rem}.login-info ol{color:#fff9;margin:0;padding-left:20px}.login-info li{line-height:1.4;margin-bottom:8px}.help-section{border-top:1px solid #ffffff1a;margin-top:1.5rem;padding-top:1.25rem;text-align:center}.help-section p{color:#ffffff80;font-size:14px;margin:0}.help-text{color:#ffffff59!important;font-size:13px!important;margin-top:4px!important}.legacy-login-option{margin-top:1.5rem;text-align:center}.legacy-login-option p{color:#ffffff80;font-size:14px;margin:0 0 12px}.code-buttons{display:flex;gap:10px;justify-content:center}.btn-code-login{background:#ffffff0d;border:2px solid #ffffff26;border-radius:8px;color:#fffc;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;max-width:220px;padding:12px 18px;transition:all .3s ease}.btn-code-login:hover{background:#ffffff1a;border-color:#ffffff4d;color:#fff}@media (max-width:420px){.code-buttons{align-items:center;flex-direction:column}.btn-code-login{max-width:100%;width:100%}}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:#ffffff4d;font-size:13px;margin:0}.loading-screen{color:#ffffffb3;text-align:center}.loading-spinner{height:50px;margin:0 auto 20px;width:50px}@media (max-width:520px){.student-login-container{padding:1rem}.login-card{padding:2rem 1.5rem}.logo-image{max-width:200px}.subtitle{font-size:1.1rem}.btn-entree-login{font-size:1rem;padding:16px 20px}}.entree-callback-container{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;justify-content:center;min-height:100vh;padding:1.25rem}.callback-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #0077b64d;border-radius:1rem;box-shadow:0 .625rem 2.5rem #0000004d;max-width:25rem;padding:3.75rem 2.5rem;text-align:center;width:100%}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff1a;border-radius:50%;border-top-color:#0077b6;height:3.125rem;margin:0 auto 1.5rem;width:3.125rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.success-icon{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 0 1rem #10b9814d}.error-icon,.success-icon{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:2rem;font-weight:700;height:3.75rem;justify-content:center;margin:0 auto 1.5rem;width:3.75rem}.error-icon{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 0 1rem #ef44444d}.callback-content h2{color:#fff;font-size:1.5rem;margin:0 0 .75rem}.callback-content p{color:#fff9;font-size:1rem;margin:0}.callback-content .error-message{background:none;border:none;color:#fca5a5!important;margin-bottom:1.5rem!important;padding:0}.btn-retry{background:linear-gradient(135deg,#0077b6,#005a8d);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn-retry:hover{box-shadow:0 .25rem .75rem #0077b666;transform:translateY(-1px)}
/*# sourceMappingURL=main.19b95636.css.map*/