@font-face{font-family:KOMethlama;src:url(../fonts/KOMethlama-Bold.otf) format("opentype");font-weight:700;font-display:swap}:root{--color-primary: #0071e3;--color-primary-hover: #4d9fff;--color-primary-light: rgba(0, 113, 227, .15);--color-primary-dark: #0060c7;--color-primary-glow: transparent;--color-success: #10b981;--color-success-hover: #34d399;--color-error: #ef4444;--color-error-hover: #f87171;--color-warning: #f59e0b;--color-info: #0071e3;--color-destructive: var(--color-error);--color-destructive-foreground: #ffffff;--color-destructive-bg: rgba(239, 68, 68, .12);--color-destructive-border: rgba(239, 68, 68, .25);--color-surface-rgb: 15, 15, 15;--color-primary-rgb: 0, 113, 227;--color-error-rgb: 239, 68, 68;--color-bg-primary: #080808;--color-bg-secondary: #0f0f0f;--color-bg-tertiary: #141414;--color-bg-elevated: #111111;--color-bg-glass: rgba(15, 15, 15, .95);--color-text-primary: #ffffff;--color-text-secondary: #a3a3a3;--color-text-muted: #8a8a8a;--text-high-contrast: #e5e5e5;--text-medium-contrast: #a3a3a3;--text-muted-readable: #8a8a8a;--color-border: rgba(255, 255, 255, .07);--color-border-hover: rgba(255, 255, 255, .14);--font-display: "thmanyah Serif Display", serif;--font-text: "thmanyah Serif Text", Georgia, "Times New Roman", serif;--font-sans: "thmanyah Sans", ui-sans-serif, system-ui, sans-serif;--font-thmanyah-display: var(--font-display);--font-thmanyah-text: var(--font-text);--font-thmanyah-sans: var(--font-sans);--font-logo: "KOMethlama", var(--font-sans);--leading-display: 1.2;--tracking-display: -.01em;--leading-body: 1.7;--tracking-body: 0;--leading-ui: 1.4;--tracking-ui: 0;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-size-7xl: 4.5rem;--font-size-8xl: 6rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--radius-pill: 980px;--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--transition-page: .3s ease-in-out;--z-base: 0;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--radius: .75rem;--background: 0 0% 3.1%;--foreground: 0 0% 98%;--card: 0 0% 5.9%;--card-foreground: 0 0% 98%;--popover: 0 0% 5.9%;--popover-foreground: 0 0% 98%;--primary-shadcn: 221 83% 53%;--primary-foreground: 0 0% 100%;--secondary: 0 0% 14.9%;--secondary-foreground: 0 0% 98%;--muted: 0 0% 14.9%;--muted-foreground: 0 0% 63.9%;--accent: 0 0% 14.9%;--accent-foreground: 0 0% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 0 0% 98%;--border-shadcn: 0 0% 14.9%;--input: 0 0% 14.9%;--ring: 221 83% 53%;--chart-1: 220 70% 50%;--chart-2: 160 60% 45%;--chart-3: 30 80% 55%;--chart-4: 280 65% 60%;--chart-5: 340 75% 55%;--bg-primary: var(--color-bg-primary);--bg-secondary: var(--color-bg-secondary);--bg-tertiary: var(--color-bg-tertiary);--bg-glass: var(--color-bg-glass);--bg-elevated: var(--color-bg-elevated);--bg-active: rgba(0, 113, 227, .08);--bg-hover: rgba(255, 255, 255, .05);--border-color: var(--color-border);--border-hover: var(--color-border-hover);--border-subtle: rgba(255, 255, 255, .05);--border-blue: rgba(0, 113, 227, .3);--text-primary: var(--color-text-primary);--text-secondary: var(--color-text-secondary);--text-muted: var(--color-text-muted);--text-tertiary: #949494;--text-disabled: #6b6b6b;--text-blue: #4d9fff;--blue: #0071e3;--accent-primary: var(--color-primary);--accent-primary-hover: var(--color-primary-hover);--accent-primary-dark: var(--color-primary-dark);--accent-secondary: #1e3a5f;--success: var(--color-success);--success-hover: var(--color-success-hover);--warning: var(--color-warning);--error: var(--color-error);--error-hover: var(--color-error-hover);--info: var(--color-info);--primary: var(--color-primary);--background: var(--color-bg-primary);--surface: var(--color-bg-secondary);--text-main: var(--color-text-primary);--font-arabic: var(--font-sans);--font-english: var(--font-sans);--exam-calendar-bg: #0A0A0A;--exam-calendar-border: rgba(255, 255, 255, .08);--exam-header-bg: #161616;--exam-day-bg-empty: #0D0D0D;--exam-day-bg-active: #111111;--exam-chip-bg: rgba(0, 113, 227, .12);--exam-chip-border: rgba(0, 113, 227, .25);--exam-chip-hover-bg: rgba(0, 113, 227, .18);--exam-chip-hover-border: rgba(0, 113, 227, .4);--exam-popover-bg: #1a1a1a;--exam-popover-border: rgba(255, 255, 255, .12);--exam-popover-shadow: 0 8px 24px rgba(0, 0, 0, .15);--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem}[data-theme=light]{--color-surface-rgb: 248, 250, 252;--color-destructive: #dc2626;--color-destructive-foreground: #ffffff;--color-destructive-bg: rgba(220, 38, 38, .08);--color-destructive-border: rgba(220, 38, 38, .2);--color-bg-primary: #ffffff;--color-bg-secondary: #f8fafc;--color-bg-tertiary: #f1f5f9;--color-bg-elevated: #ffffff;--color-bg-glass: rgba(255, 255, 255, .95);--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-border: rgba(0, 0, 0, .08);--color-border-hover: rgba(0, 0, 0, .15);--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary-shadcn: 221 83% 53%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border-shadcn: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221 83% 53%;--accent-secondary: #dbeafe;--accent-primary-dark: var(--color-primary-dark);--success-hover: var(--color-success-hover);--error-hover: var(--color-error-hover);--bg-active: rgba(0, 113, 227, .1);--bg-hover: rgba(0, 0, 0, .04);--border-subtle: rgba(0, 0, 0, .06);--border-blue: rgba(0, 113, 227, .25);--text-tertiary: #64748b;--text-disabled: #cbd5e1;--text-blue: #0060c7;--blue: #0071e3;--exam-calendar-bg: #FFFFFF;--exam-calendar-border: rgba(0, 0, 0, .1);--exam-header-bg: #f8fafc;--exam-day-bg-empty: #FAFAFA;--exam-day-bg-active: #FFFFFF;--exam-chip-bg: rgba(0, 113, 227, .07);--exam-chip-border: rgba(0, 113, 227, .18);--exam-chip-hover-bg: rgba(0, 113, 227, .12);--exam-chip-hover-border: rgba(0, 113, 227, .3);--exam-popover-bg: #FFFFFF;--exam-popover-border: rgba(0, 0, 0, .1);--exam-popover-shadow: 0 8px 24px rgba(0, 0, 0, .1)}html{font-size:16px;scroll-behavior:smooth}html.font-thmanyah-root{font-family:var(--font-thmanyah-text, var(--font-text));line-height:var(--leading-body);letter-spacing:var(--tracking-body)}body{font-family:var(--font-text);background:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;direction:rtl;line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none;overflow-x:hidden}body,body *{font-synthesis:none}.font-logo{font-family:var(--font-logo)}.thmanyah-display-heading{font-family:var(--font-display);line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-feature-settings:"salt" 1}.thmanyah-tashkeel{font-feature-settings:"ss07" 1}.thmanyah-body{font-family:var(--font-text);line-height:var(--leading-body);letter-spacing:var(--tracking-body)}.thmanyah-ui{font-family:var(--font-sans);line-height:var(--leading-ui);letter-spacing:var(--tracking-ui)}.page-transition{opacity:0;transform:translateY(10px);transition:opacity var(--transition-page),transform var(--transition-page);width:100%}.page-container.active{opacity:1}.page-loading{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-primary);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.page-loading.active{opacity:1;pointer-events:all}.page-loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.app-container{min-height:100vh;display:flex;flex-direction:column;position:relative;overflow-x:hidden;overflow-y:auto}.app-container>.app-header{order:-1;flex-shrink:0}.app-header{background:var(--color-bg-glass)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border-bottom:1px solid var(--color-border)!important;position:sticky!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:1000!important;padding:var(--spacing-4) var(--spacing-6)!important;margin:0!important;display:block!important;visibility:visible!important;opacity:1!important;min-height:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;clip-path:none!important}.app-header__content{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4)}.app-header__brand{display:flex;align-items:center;gap:var(--spacing-3)}.app-header__logo-link{text-decoration:none;color:inherit;transition:transform var(--transition-fast)}.app-header__logo-link:hover{transform:scale(1.05)}.app-header__logo{font-family:var(--font-logo);font-size:2.8rem;font-weight:700;color:var(--color-primary);letter-spacing:2px;margin:0}.app-header__logo-img{height:45px;width:auto;display:block}.app-header__nav{flex:1;display:flex;justify-content:center;align-items:center}.app-header__links{display:flex;gap:var(--spacing-2);align-items:center}.app-header__actions{display:flex;align-items:center;gap:var(--spacing-3)}.app-header__theme-btn{width:36px;height:36px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--transition-normal),background var(--transition-fast)}.app-header__theme-btn:hover{color:var(--color-text-primary);background:var(--color-bg-tertiary)}.theme-icon{display:flex;align-items:center;justify-content:center}.app-header__link{display:inline-flex;align-items:center;gap:.5em;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-secondary);text-decoration:none;font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-sm);font-weight:500;transition:color var(--transition-normal),background var(--transition-fast);white-space:nowrap}.app-header__link:hover{color:var(--color-text-primary);background:var(--color-bg-tertiary)}.app-header__link.active{color:var(--color-primary);background:var(--color-primary-light)}.app-header__link{position:relative}.app-header__link:after{content:"";position:absolute;bottom:4px;right:50%;left:50%;height:2px;background:var(--color-primary);border-radius:2px;transition:right var(--transition-normal),left var(--transition-normal)}.app-header__link.active:after{right:var(--spacing-4);left:var(--spacing-4)}.app-header__link.wallpaper-new .app-header__icon,.mobile-nav-drawer__link.wallpaper-new .mobile-nav-drawer__icon{position:relative}.app-header__link.wallpaper-new .app-header__icon:after,.mobile-nav-drawer__link.wallpaper-new .mobile-nav-drawer__icon:after{content:"";position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:#0071e3;box-shadow:0 0 #0071e373;animation:wallpaperNavPulse 1.8s infinite}@keyframes wallpaperNavPulse{0%{box-shadow:0 0 #0071e373}70%{box-shadow:0 0 0 8px #0071e300}to{box-shadow:0 0 #0071e300}}.app-header__icon{display:inline-flex;align-items:center}.app-header__icon .app-icon,.app-header__icon svg{width:1.25em;height:1.25em;flex-shrink:0;color:currentColor}.page-container{flex:1;position:relative;min-height:calc(100vh - 200px)}.page-transition{opacity:0;transform:translateY(10px);transition:opacity var(--transition-page),transform var(--transition-page)}.page-transition.active{opacity:1;transform:translateY(0)}.home-page{position:relative;min-height:calc(100vh - 200px);padding:var(--spacing-16) var(--spacing-6) var(--spacing-24)}.hero-section{text-align:center;max-width:800px;margin:0 auto var(--spacing-16)}.hero-title{font-size:var(--font-size-5xl);font-weight:700;line-height:1.3;margin-bottom:var(--spacing-6);color:var(--color-text-primary);letter-spacing:2px}.hero-description{font-size:var(--font-size-lg);color:var(--color-text-muted);line-height:1.6;max-width:600px;margin:0 auto}.cards-section{max-width:1200px;margin:0 auto}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:var(--spacing-8);width:100%}.feature-card{position:relative;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-8);min-height:460px;min-width:0;width:100%;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column}.feature-card:hover{transform:translateY(-5px);border-color:var(--color-primary);box-shadow:var(--shadow-lg)}.card-gradient{display:none}.card-content{position:relative;z-index:10;flex:1;display:flex;flex-direction:column}.card-header{margin-bottom:var(--spacing-8)}.card-icon{width:80px;height:80px;background:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-6);transition:transform var(--transition-slow)}.feature-card:hover .card-icon{transform:scale(1.1)}.card-icon .material-symbols-outlined{font-size:40px;color:var(--color-primary)}.card-title{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-3);color:var(--color-text-primary)}.card-description{font-size:var(--font-size-base);color:var(--color-text-muted);line-height:1.6;max-width:100%}.card-preview{margin-top:auto;height:160px;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-5);display:flex;gap:var(--spacing-4);align-items:flex-end}.preview-bar{flex:1;background:var(--color-primary-light);border-right:2px solid var(--color-primary);border-radius:var(--radius-sm);padding:var(--spacing-2)}.preview-bar-1{opacity:1;background:color-mix(in srgb,var(--color-primary-light) 90%,var(--color-bg-tertiary))}.preview-bar-2{opacity:1;padding-top:var(--spacing-10);background:color-mix(in srgb,var(--color-primary-light) 70%,var(--color-bg-tertiary))}.preview-bar-3{opacity:1;padding-top:var(--spacing-4);background:color-mix(in srgb,var(--color-primary-light) 50%,var(--color-bg-tertiary))}.gpa-preview{align-items:center;justify-content:space-between;padding:var(--spacing-8)}.gpa-value{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2)}.gpa-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.gpa-number{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text-primary)}.gpa-value.current .gpa-number{color:var(--color-primary)}.gpa-chart{flex:1;height:80px;margin:0 var(--spacing-8)}.gpa-line{width:100%;height:100%}.card-action{position:absolute;bottom:var(--spacing-8);left:var(--spacing-8);z-index:20;opacity:0;transform:translateY(16px);transition:all var(--transition-slow)}.feature-card:hover .card-action{opacity:1;transform:translateY(0)}.action-button{width:56px;height:56px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:transform var(--transition-fast)}.action-button:hover{transform:scale(1.1)}.action-button .material-symbols-outlined{font-size:28px}@media (max-width: 1024px){.cards-grid{grid-template-columns:1fr;gap:var(--spacing-6)}}@media (max-width: 768px){.app-header{padding:var(--spacing-3) var(--spacing-4)}.app-header__content{flex-wrap:nowrap;gap:var(--spacing-3)}.app-header__logo{font-size:2rem}.app-header__nav{display:none!important}.app-header__hamburger{display:flex}.app-header__brand{flex:0 0 auto;min-width:80px;display:flex;justify-content:center}.app-header__logo-link{display:inline-flex;align-items:center;min-width:80px}.app-header__logo-img{height:40px;width:auto;max-width:100%;-o-object-fit:contain;object-fit:contain}.app-header__actions{min-width:0;gap:var(--spacing-2)}.mobile-nav-backdrop{display:block}.hero-title{font-size:var(--font-size-3xl)}.cards-grid{grid-template-columns:1fr;gap:var(--spacing-6)}.feature-card{min-height:400px;padding:var(--spacing-6)}}html:focus-within{scroll-behavior:smooth}section[id]{scroll-margin-top:100px}.app-header__hamburger{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:36px;height:36px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:4px;color:var(--color-text-secondary);transition:background var(--transition-fast),color var(--transition-fast)}.app-header__hamburger:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.hamburger-line{display:block;width:20px;height:2px;background:currentColor;border-radius:2px;transition:transform var(--transition-normal),opacity var(--transition-normal)}.mobile-nav-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:calc(var(--z-fixed) + 1);opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.mobile-nav-backdrop.open{opacity:1;pointer-events:auto}.mobile-nav-drawer{position:fixed;top:0;right:0;bottom:0;width:min(320px,85vw);background:var(--color-bg-secondary);border-left:1px solid var(--color-border);z-index:calc(var(--z-fixed) + 2);display:flex;flex-direction:column;transform:translate(100%);transition:transform var(--transition-slow);overflow-y:auto;box-shadow:var(--shadow-xl)}.mobile-nav-drawer.open{transform:translate(0)}.mobile-nav-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--color-border);flex-shrink:0}.mobile-nav-drawer__logo{height:38px;width:auto}.mobile-nav-drawer__close{width:36px;height:36px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),color var(--transition-fast)}.mobile-nav-drawer__close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.mobile-nav-drawer__links{display:flex;flex-direction:column;padding:var(--spacing-4);gap:var(--spacing-1)}.mobile-nav-drawer__link{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);text-decoration:none;font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-base);font-weight:500;transition:background var(--transition-fast),color var(--transition-fast)}.mobile-nav-drawer__link:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.mobile-nav-drawer__link.active{background:var(--color-primary-light);color:var(--color-primary)}.mobile-nav-drawer__icon{display:inline-flex;align-items:center;flex-shrink:0}.mobile-nav-drawer__icon .app-icon,.mobile-nav-drawer__icon svg{width:1.25em;height:1.25em;color:currentColor}@media (max-width: 768px){.app-header__nav{display:none!important}.app-header__hamburger{display:flex}.app-header__brand{flex:1}.mobile-nav-backdrop{display:block}}.wallpaper-factory{min-height:calc(100dvh - 80px);height:calc(100dvh - 80px);padding:.75rem 1rem;display:flex;flex-direction:column;align-items:center;overflow:hidden}.factory-header{text-align:center;margin-bottom:2rem}.factory-title{font-family:var(--font-display);font-size:2.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem;letter-spacing:-.5px}.factory-subtitle{font-size:1rem;color:var(--color-text-secondary);font-weight:400}.factory-content{display:grid;grid-template-columns:1fr 380px;gap:2rem;max-width:1200px;width:100%;margin:0 auto;align-items:stretch;height:100%;max-height:100%}@media (max-width: 900px){.factory-content{grid-template-columns:1fr;gap:1.5rem;max-width:520px}.factory-preview{order:-1}}@media (max-width: 480px){.wallpaper-factory{padding:1rem .75rem}.factory-content{gap:1rem}}.factory-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem;min-width:0;overflow:hidden}.preview-carousel{display:flex;align-items:center;justify-content:center;width:100%;min-width:0}.preview-dots{display:flex;gap:8px;margin-top:1.5rem}.preview-dots .dot{width:8px;height:8px;border-radius:50%;background:#c5bfb5;transition:all .2s}.preview-dots .dot.active{background:#7a746a;width:24px;border-radius:4px}.wallpaper-preview-wrapper{display:flex;justify-content:center;align-items:center;width:100%;min-width:0}.device-mockup-container{display:flex;justify-content:center;flex-shrink:0}.factory-sidebar{background:var(--color-bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;padding:1.5rem;border:1px solid var(--color-border);box-shadow:var(--shadow-xl);height:-moz-fit-content;height:fit-content;width:100%;box-sizing:border-box}.factory-tabs{display:flex;background:var(--color-bg-secondary);padding:6px;border-radius:16px;box-shadow:var(--shadow-sm);margin-bottom:24px;gap:4px;border:1px solid var(--color-border)}.tab-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 4px;border:none;background:transparent;cursor:pointer;border-radius:12px;color:var(--color-text-muted);transition:all .2s cubic-bezier(.4,0,.2,1)}.tab-item:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.tab-item.active{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.tab-item .material-symbols-outlined{font-size:20px}.tab-label{font-size:.7rem;font-weight:600}.tab-content-area{min-height:300px}.tab-heading{font-size:1.1rem;font-weight:700;color:var(--color-text-primary);margin-bottom:16px;text-align:center;font-family:inherit}.fade-in-content{animation:fadeInTab .4s cubic-bezier(.2,.8,.2,1) forwards}@keyframes fadeInTab{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.device-group-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin:.5rem 0 .4rem}.device-group-label:first-of-type{margin-top:0}.device-buttons{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.device-buttons:last-child{margin-bottom:0}.device-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;background:var(--color-bg-tertiary);border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s;font-family:inherit}.device-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-border-hover)}.device-btn.active{background:var(--color-bg-secondary);border-color:var(--color-primary);box-shadow:var(--shadow-md)}.device-btn-icon{font-size:1.25rem}.device-btn-name{font-size:.7rem;color:var(--color-text-secondary);font-weight:500;text-align:center}.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}@media (max-width: 400px){.theme-grid{grid-template-columns:repeat(3,1fr)}}.palette-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.palette-grid .theme-card{width:calc(33.33% - .7rem);min-width:90px}.theme-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem;background:transparent;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit;position:relative}.theme-card:hover{background:var(--color-bg-tertiary);transform:translateY(-2px)}.theme-card.active{background:var(--color-bg-secondary);border-color:var(--color-primary);box-shadow:var(--shadow-md)}.theme-card.active:after{content:"✓";position:absolute;top:-6px;right:-6px;width:20px;height:20px;background:var(--color-primary);color:#fff;border-radius:50%;font-size:12px;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-bg-secondary);box-shadow:var(--shadow-sm)}.theme-preview-swatch{width:100%;aspect-ratio:1;border-radius:16px;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.theme-swatch-accent{position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:60%;height:20%;border-radius:4px}.theme-name{font-size:.75rem;color:var(--color-text-secondary);font-weight:500}.theme-card.active .theme-name{color:var(--color-text-primary);font-weight:700}.styling-options{display:flex;flex-direction:column;gap:1rem}.styling-toggle{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.875rem;color:#3a3530}.styling-toggle input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer}.styling-time-range{display:flex;align-items:center;justify-content:space-between;gap:1rem}.styling-time-range label{font-size:.875rem;color:var(--color-text-secondary)}.styling-select{padding:.5rem .75rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-size:.875rem;font-family:inherit;cursor:pointer;min-width:100px}.styling-select:focus{outline:none;border-color:var(--color-primary)}.factory-actions{margin-top:1.5rem;display:flex;flex-direction:column;gap:.75rem}.action-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 1.5rem;font-size:1rem;font-weight:600;font-family:inherit;border:none;border-radius:12px;cursor:pointer;transition:all .2s}.action-btn-primary{background:var(--color-primary);color:#fff}.action-btn-primary:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.action-btn-primary:disabled{opacity:1;color:var(--color-text-muted);cursor:not-allowed}.action-btn .material-symbols-outlined{font-size:1.25rem}.btn-spinner{width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.factory-notice{display:flex;align-items:flex-start;gap:.75rem;margin-top:1rem;padding:.75rem 1rem 1rem;background:#ffc89633;border:1px solid rgba(200,150,100,.3);border-radius:12px;font-size:.875rem;color:#6b5540}.factory-notice .material-symbols-outlined{font-size:1.25rem;color:#a08060}.factory-notice p{margin:0;line-height:1.4}.factory-notice a{color:#6b5540;font-weight:600;text-decoration:underline;display:inline-flex;align-items:center;min-width:44px;min-height:44px;padding:0 6px}.factory-notice.compact{margin-top:0;margin-bottom:.85rem;padding:.75rem}.wallpaper-page-container{min-height:calc(100vh - 80px);width:100%;overflow-x:hidden}.wallpaper-page{display:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--color-bg-primary);border-radius:16px;max-width:400px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.course-edit-modal{width:360px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.modal-close{background:none;border:none;cursor:pointer;padding:.5rem;color:var(--color-text-secondary);border-radius:8px;transition:all .2s}.modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.modal-body{padding:1.5rem}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid var(--color-border)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:.5rem}.form-input{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-secondary);color:var(--color-text-primary);font-family:inherit;transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3a9bcd26}.color-palette-picker{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:.75rem}.color-swatch{width:36px;height:36px;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .2s}.color-swatch:hover{transform:scale(1.1)}.color-swatch.active{border-color:var(--color-text-primary);box-shadow:0 0 0 2px var(--color-bg-primary)}.custom-color-row{display:flex;align-items:center;gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--color-text-secondary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary)}.color-picker-input{width:48px;height:36px;padding:0;border:none;border-radius:8px;cursor:pointer}.btn{padding:.625rem 1.25rem;border-radius:10px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit;border:none}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-bg-tertiary)}.course-list{display:flex;flex-direction:column;gap:8px}.course-list-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--color-bg-secondary);border-radius:12px;cursor:pointer;transition:all .2s;position:relative}.course-list-item:hover{background:var(--color-bg-tertiary)}.course-list-item.has-override{background:#3a9bcd1a}.course-color-indicator{width:12px;height:40px;border-radius:4px;flex-shrink:0}.course-info{flex:1;display:flex;flex-direction:column;gap:2px}.course-code{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.course-activity{font-size:.8125rem;color:var(--color-text-secondary)}.course-edit-btn{background:none;border:none;padding:6px;cursor:pointer;color:var(--color-text-secondary);border-radius:6px;transition:all .2s}.course-edit-btn:hover{background:var(--color-bg-primary);color:var(--color-primary)}.course-edit-btn .material-symbols-outlined{font-size:18px}.override-badge{position:absolute;top:8px;left:8px;font-size:8px;color:var(--color-primary)}.course-list-empty{text-align:center;padding:2rem 1rem;color:var(--color-text-secondary)}.course-list-empty .material-symbols-outlined{font-size:3rem;color:var(--color-text-muted);margin-bottom:.5rem}.course-list-empty p{margin:0 0 1rem}.course-editor-section{margin-top:2rem;padding:1.5rem;background:#fff9;border-radius:16px;max-width:100%}.course-editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(122,116,106,.2)}.course-editor-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.editor-hint{font-size:.8125rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:4px}.editor-hint:before{content:"⬇";font-size:.75rem}.course-editor-section .course-list{gap:6px}.course-editor-section .course-list-item{padding:10px 12px}.course-editor-section .course-color-indicator{height:32px}.wallpaper-factory{--wallpaper-preview-surface-dark: #0e1118;--wallpaper-preview-surface-light: #f5f7fb;min-height:calc(100vh - 80px);padding:1rem;max-width:1400px;margin:0 auto}.wallpaper-toolbar{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);padding:8px 10px;margin-bottom:var(--spacing-4);box-shadow:var(--shadow-sm)}.wallpaper-toolbar__start,.wallpaper-toolbar__end{display:flex;align-items:center;gap:var(--spacing-2);min-width:0}.wallpaper-toolbar__start{flex:1;overflow-x:auto;padding-bottom:2px}.wallpaper-download-btn{white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.factory-content{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);gap:var(--spacing-4);align-items:stretch;height:calc(100vh - 210px);max-height:calc(100vh - 210px);min-height:0}.factory-content>*{min-height:0}.factory-preview.card,.factory-sidebar.card{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-secondary);box-shadow:var(--shadow-sm)}.factory-preview-canvas{position:relative;background:var(--wallpaper-preview-surface-dark);min-height:0;overflow:hidden}html:not(.dark) .factory-preview-canvas{background:var(--wallpaper-preview-surface-light)}.preview-carousel{transition:transform .18s ease}.preview-carousel.device-switching{transform:scale(.96)}.factory-sidebar{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.wallpaper-card-header{padding:12px 14px;border-bottom:1px solid var(--color-border)}.preset-strip{display:flex;align-items:stretch;gap:.45rem;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:.2rem}.preset-chip{min-width:74px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-tertiary);color:var(--color-text-primary);display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.35rem;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}.preset-chip:hover{border-color:var(--color-border-hover);background:var(--color-bg-secondary)}.preset-chip:active{transform:scale(.98)}.preset-chip.active{border-color:var(--color-primary);background:var(--color-primary-light)}.preset-chip__thumb{width:100%;height:30px;border-radius:6px;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center}.preset-chip__name{font-size:.75rem;font-weight:600}.preset-chip--input{flex-direction:row;min-width:190px;align-items:center}.preset-chip--input input{flex:1;background:transparent;border:0;color:var(--color-text-primary);font-family:inherit}.preset-chip--input button{background:transparent;border:0;color:var(--color-primary);display:inline-flex;cursor:pointer}.factory-tabs{margin:.75rem .8rem 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.wallpaper-tab-btn{justify-content:center;padding:7px 8px;min-height:44px}.wallpaper-tab-btn.active{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.wallpaper-tab-btn .material-symbols-outlined{font-size:16px}.tab-content-area{flex:1;min-height:0;margin-top:.5rem;overflow-y:auto;overscroll-behavior:contain;padding:0 .8rem .9rem}.fade-in-content{animation:wallpaperTabEnter .15s ease forwards}@keyframes wallpaperTabEnter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.panel-section-label{margin:0 0 .65rem;font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--color-text-muted)}.section-gap{margin-top:1rem}.device-silhouette-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.device-silhouette{position:relative;border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-tertiary);padding:.8rem .55rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;transition:border-color .14s ease,background .14s ease,transform .14s ease}.device-silhouette:hover{border-color:var(--color-border-hover);transform:translateY(-1px)}.device-silhouette.active{border-color:var(--color-primary);background:var(--color-primary-light)}.silhouette{position:relative;display:block;border:1.5px solid currentColor;color:var(--color-text-primary);background:var(--color-bg-primary)}.silhouette-iphone{width:30px;height:58px;border-radius:8px}.silhouette-iphone:after{content:"";position:absolute;top:3px;left:50%;transform:translate(-50%);width:12px;height:3px;border-radius:999px;background:currentColor}.silhouette-ipad{width:48px;height:64px;border-radius:9px}.silhouette-android{width:28px;height:56px;border-radius:7px}.silhouette-android:after{content:"";position:absolute;top:5px;left:50%;width:4px;height:4px;transform:translate(-50%);border-radius:50%;background:currentColor}.device-check{position:absolute;top:6px;right:6px;width:18px;height:18px;border-radius:50%;background:var(--color-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem}.device-silhouette__name{font-size:.75rem}.theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-card{border-radius:10px;border:1px solid var(--color-border);background:var(--color-bg-tertiary)}.theme-card.active{border-color:var(--color-primary);background:var(--color-primary-light)}.palette-mini{width:100%;height:48px;border-radius:8px;overflow:hidden;display:grid;grid-template-columns:repeat(4,1fr)}.layout-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:.75rem}.layout-row>label{font-size:.9rem;color:var(--color-text-primary)}.ipad-orientation-row{margin-top:.9rem;margin-bottom:0}.segmented{display:inline-flex;padding:3px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-tertiary);gap:2px}.segmented button{border:0;background:transparent;color:var(--color-text-secondary);border-radius:8px;padding:.35rem .65rem;cursor:pointer}.segmented button.active{background:var(--color-primary);color:#fff}.ios-toggle{width:48px;height:28px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-bg-tertiary);padding:3px;display:inline-flex;align-items:center;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.ios-toggle span{width:20px;height:20px;border-radius:50%;background:#fff;transform:translate(0);transition:transform .15s ease}.ios-toggle.active{background:var(--color-primary);border-color:var(--color-primary)}.ios-toggle.active span{transform:translate(-20px)}.wallpaper-save-banner{position:absolute;inset-inline:20px;bottom:20px;z-index:20;border-radius:10px;background:#121419eb;color:#fff;padding:.7rem .9rem;display:flex;align-items:center;gap:.45rem;transform:translateY(130%);opacity:0;transition:transform .2s ease,opacity .2s ease;pointer-events:none}html:not(.dark) .wallpaper-save-banner{background:#20242aeb}.wallpaper-save-banner.visible{transform:translateY(0);opacity:1}.wallpaper-mobile-save-wrap{display:none}.preset-chip:focus-visible,.wallpaper-tab-btn:focus-visible,.segmented button:focus-visible,.device-silhouette:focus-visible,.toolbar-btn:focus-visible,.ios-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (max-width: 1024px){.wallpaper-factory{min-height:auto;height:auto;overflow:visible;padding:.75rem}.wallpaper-toolbar{flex-direction:column;align-items:stretch;gap:8px}.wallpaper-toolbar__end{justify-content:flex-start}.factory-content{grid-template-columns:1fr;height:auto;max-height:none}.factory-preview-canvas{min-height:460px;height:auto}.factory-sidebar{min-height:0;height:auto;overflow:visible}.tab-content-area{overflow:visible}}@media (max-width: 640px){.wallpaper-download-btn{width:100%;justify-content:center}.device-silhouette-grid,.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.wallpaper-toolbar__end{display:none}.wallpaper-mobile-save-wrap{display:block;width:100%;position:sticky;bottom:0;padding-top:.65rem;padding-bottom:calc(.55rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,#0000,#0a0c12b8 45%);z-index:15}.wallpaper-download-btn-mobile{width:100%;justify-content:center}.device-silhouette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.factory-preview,.factory-preview-canvas,.wallpaper-preview-wrapper,.device-mockup-container,.preview-carousel{max-width:100%}}@media (prefers-reduced-motion: reduce){.fade-in-content,.preset-chip,.preview-carousel,.wallpaper-save-banner,.ios-toggle,.ios-toggle span{animation:none!important;transition:none!important}}.premium-tour{--premium-tour-ease: cubic-bezier(.32, .72, 0, 1);--premium-tour-exit-duration: .15s;--premium-tour-enter-duration: .22s;--premium-tour-overlay-duration: .12s;--premium-tour-entry-transform: translateY(0) scale(1);--premium-tour-arrow-x: 50%;position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.premium-tour--visible{pointer-events:auto}.premium-tour--reduced-motion,.premium-tour--reduced-motion *{animation:none!important;transition:none!important}.premium-tour__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-backdrop);background:rgba(var(--color-surface-rgb),.36);opacity:0;pointer-events:auto;transition:opacity var(--premium-tour-overlay-duration) var(--premium-tour-ease)}.premium-tour--visible .premium-tour__backdrop{opacity:1}.premium-tour--overlay-hidden .premium-tour__backdrop{opacity:0}[data-theme=light] .premium-tour__backdrop{background:rgba(var(--color-surface-rgb),.54)}.premium-tour__spotlight{position:fixed;top:0;left:0;z-index:var(--z-modal);width:0;height:0;border:1px solid rgba(var(--color-primary-rgb),.42);border-radius:var(--radius-md);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.08),0 0 0 9999px rgba(var(--color-surface-rgb),.42);opacity:1;pointer-events:none;transition:opacity var(--premium-tour-overlay-duration) var(--premium-tour-ease);will-change:opacity}.premium-tour__spotlight--hidden,.premium-tour--overlay-hidden .premium-tour__spotlight{opacity:0}.premium-tour__card{position:fixed;z-index:var(--z-tooltip);width:min(408px,calc(100vw - var(--spacing-8)));max-width:calc(100vw - var(--spacing-8));border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-elevated);color:var(--color-text-primary);padding:var(--spacing-6);overflow:visible;opacity:0;visibility:hidden;pointer-events:auto;transform:var(--premium-tour-entry-transform);transition:opacity var(--premium-tour-exit-duration) var(--premium-tour-ease);will-change:transform,opacity}.premium-tour[data-mode=coachmark] .premium-tour__card:before{content:"";position:absolute;left:var(--premium-tour-arrow-x);width:var(--spacing-3);height:var(--spacing-3);border:1px solid var(--color-border);background:var(--color-bg-elevated);transform:translate(-50%) rotate(45deg)}.premium-tour[data-mode=coachmark] .premium-tour__card[data-placement^=bottom]:before{top:-7px;border-right:0;border-bottom:0}.premium-tour[data-mode=coachmark] .premium-tour__card[data-placement^=top]:before{bottom:-7px;border-top:0;border-left:0}.premium-tour[data-mode=modal] .premium-tour__card{top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%) var(--premium-tour-entry-transform)}.premium-tour__card--hidden{opacity:0;visibility:hidden;--premium-tour-entry-transform: translateY(4px)}.premium-tour__card--pre-enter{opacity:0;visibility:visible;--premium-tour-entry-transform: translateY(6px) scale(.97);transition-duration:0ms}.premium-tour__card--entering{opacity:1;visibility:visible;--premium-tour-entry-transform: translateY(0) scale(1);transition:opacity var(--premium-tour-enter-duration) var(--premium-tour-ease),transform var(--premium-tour-enter-duration) var(--premium-tour-ease)}.premium-tour__card--exiting{opacity:0;visibility:visible;--premium-tour-entry-transform: translateY(4px);transition:opacity var(--premium-tour-exit-duration) var(--premium-tour-ease),transform var(--premium-tour-exit-duration) var(--premium-tour-ease)}.premium-tour__panel{display:grid;gap:var(--spacing-4)}.premium-tour__header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3)}.premium-tour__meta{display:flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap;font-family:var(--font-sans);font-size:var(--font-size-xs);line-height:var(--leading-ui);letter-spacing:var(--tracking-ui);color:#ffffff59}.premium-tour__eyebrow,.premium-tour__counter{display:inline-flex;align-items:center;opacity:.72}.premium-tour__eyebrow{color:var(--color-text-secondary)}.premium-tour__counter{direction:ltr;unicode-bidi:plaintext;font-variant-numeric:tabular-nums}.premium-tour__title{display:block;margin:0;max-width:100%;font-family:var(--font-display);font-size:var(--font-size-2xl);line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-feature-settings:"salt" 1;padding-block-end:var(--spacing-1);color:var(--color-text-primary);font-weight:700}.premium-tour__description{margin:0;color:#ffffffa6;font-family:var(--font-text);font-size:var(--font-size-base);line-height:var(--leading-body);letter-spacing:var(--tracking-body);text-wrap:pretty}.premium-tour__list{margin:0;padding:0;list-style:none;display:grid;gap:var(--spacing-2)}.premium-tour__list li{display:flex;align-items:flex-start;gap:var(--spacing-2);color:var(--color-text-primary);font-family:var(--font-text);font-size:var(--font-size-sm);line-height:var(--leading-body);flex-wrap:wrap}.premium-tour__list li:before{content:"";flex:0 0 6px;width:6px;height:6px;margin-top:.7em;border-radius:var(--radius-full);background:var(--color-primary)}.premium-tour__list-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-tertiary);color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:700;line-height:var(--leading-ui);letter-spacing:var(--tracking-ui);white-space:nowrap}.premium-tour__list-text{flex:1 1 180px;min-width:0}.premium-tour__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);margin-top:var(--spacing-2);padding-top:var(--spacing-4);border-top:1px solid var(--color-border)}.premium-tour__footer-meta{display:flex;align-items:center;justify-content:flex-start;min-width:0;font-family:var(--font-sans);font-size:var(--font-size-xs);line-height:var(--leading-ui);letter-spacing:var(--tracking-ui);color:#ffffff59}.premium-tour__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-2);flex-wrap:wrap}.premium-tour__btn,.premium-tour__skip{min-height:36px;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--font-size-sm);line-height:var(--leading-ui);letter-spacing:var(--tracking-ui);cursor:pointer;transition:transform var(--premium-tour-exit-duration) var(--premium-tour-ease)}.premium-tour__btn:active,.premium-tour__skip:active{transform:scale(.97)}.premium-tour__btn--primary{padding:9px 18px;border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;font-weight:700}.premium-tour__btn--primary:hover,.premium-tour__btn--primary:focus-visible{border-color:var(--color-primary-dark);background:var(--color-primary-dark)}.premium-tour__btn--secondary,.premium-tour__skip{padding:var(--spacing-2) var(--spacing-3);border:0;background:transparent;color:var(--color-text-primary);font-weight:600;opacity:.52}.premium-tour__btn--secondary:hover,.premium-tour__btn--secondary:focus-visible,.premium-tour__skip:hover,.premium-tour__skip:focus-visible{color:var(--color-text-primary);opacity:1}.premium-tour--busy .premium-tour__btn,.premium-tour--busy .premium-tour__skip{opacity:.56;pointer-events:none}.premium-tour-target{position:relative;z-index:var(--z-popover);isolation:isolate}@media (max-width: 720px){.premium-tour__card{width:auto;max-width:none;padding:var(--spacing-5)}.premium-tour[data-mode=coachmark] .premium-tour__card:before{display:none}.premium-tour[data-mode=modal] .premium-tour__card{width:min(408px,calc(100vw - var(--spacing-6)));max-width:calc(100vw - var(--spacing-6))}.premium-tour__title{font-size:var(--font-size-xl)}.premium-tour__description,.premium-tour__list li{font-size:var(--font-size-sm)}.premium-tour__footer{align-items:stretch;flex-direction:column-reverse}.premium-tour__actions{justify-content:stretch}.premium-tour__btn{flex:1 1 auto}}.auth-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:none;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.auth-modal-overlay.active{display:flex;opacity:1}.auth-modal{background:var(--color-bg-primary);border-radius:var(--radius-xl);width:90%;max-width:900px;max-height:90vh;overflow:hidden;border:1px solid var(--border-color);display:flex;flex-direction:row-reverse;animation:modalSlideIn .35s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideIn{0%{transform:translateY(24px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.auth-modal__content{display:flex;flex-direction:row-reverse;width:100%;min-height:500px}.auth-modal__form-section{flex:1;padding:48px;background:var(--color-bg-primary);overflow:hidden;display:flex;flex-direction:column}.auth-modal__brand-section{flex:1;background:#000;padding:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;position:relative;overflow:hidden}.auth-modal__brand-video{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;z-index:0;transform:scale(1.2)}.auth-modal__brand-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:1}.auth-modal__brand-content{position:relative;z-index:2}.auth-modal__brand-logo{font-size:64px;font-weight:800;margin-bottom:24px;font-family:var(--font-sans)}.auth-modal__brand-logo-img{height:120px;width:auto;margin-bottom:24px;display:block;margin-left:auto;margin-right:auto}.auth-modal__brand-title{font-size:28px;font-weight:600;margin-bottom:16px;line-height:1.3;color:#fff}.auth-modal__close{position:absolute;top:16px;left:16px;background:var(--color-bg-secondary);border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:24px;transition:all .2s ease}.auth-modal__close:hover{background:var(--color-border);transform:rotate(90deg)}.auth-form__header{margin-bottom:20px}.auth-form__title{font-size:28px;font-weight:700;color:var(--color-primary);margin-bottom:8px;font-family:var(--font-sans)}.auth-form__subtitle{font-size:15px;color:var(--color-text-secondary)}.auth-form__field{margin-bottom:14px}.auth-form__label{display:block;font-size:14px;font-weight:600;color:var(--color-primary);margin-bottom:6px;font-family:var(--font-sans)}.auth-form__input{width:100%;padding:10px 14px;border:2px solid var(--color-border);border-radius:var(--radius-sm);font-size:15px;font-family:var(--font-sans);transition:all .2s ease;background:var(--color-bg-primary);color:var(--color-text-primary);direction:rtl;text-align:right}.auth-form__input:-webkit-autofill,.auth-form__input:-webkit-autofill:hover,.auth-form__input:-webkit-autofill:focus,.auth-form__input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--color-bg-primary) inset!important;-webkit-text-fill-color:var(--color-text-primary)!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.auth-form__input:focus{outline:none;border-color:var(--color-primary)}.auth-form__input::-moz-placeholder{color:var(--color-text-muted)}.auth-form__input::placeholder{color:var(--color-text-muted)}.auth-form__input.error{border-color:var(--color-error)}.auth-form__error{color:var(--color-error);font-size:13px;margin-top:6px;font-family:var(--font-sans)}.auth-form{display:flex;flex-direction:column;height:100%;max-height:100%;overflow:hidden}.auth-form__scrollable{flex:1 1 auto;overflow-y:auto;min-height:0;display:flex;flex-direction:column;justify-content:center}.auth-form__footer{flex-shrink:0;padding-top:16px}.auth-form__submit{width:100%;height:56px;padding:0 24px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-pill);font-size:16px;font-weight:600;cursor:pointer;font-family:var(--font-sans);transition:all .2s ease;margin-top:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.auth-form__submit:hover{background:var(--color-primary-dark)}.auth-form__submit:active{transform:scale(.97)}.auth-form__submit:disabled{opacity:1;background:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:not-allowed;transform:none}.auth-form__divider{position:relative;text-align:center;margin:16px 0}.auth-form__divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border)}.auth-form__divider-text{position:relative;background:var(--color-bg-primary);padding:0 16px;color:var(--color-text-muted);font-size:14px;font-family:var(--font-sans)}.auth-form__google-btn{width:100%;padding:12px 24px;background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:var(--radius-pill);font-size:15px;font-weight:600;cursor:pointer;font-family:var(--font-sans);transition:all .2s ease;display:flex;flex-direction:row-reverse;align-items:center;justify-content:center;gap:12px;color:var(--color-text-primary)}.auth-form__google-btn:hover{background:var(--color-bg-secondary);border-color:var(--color-border-hover)}.auth-form__google-btn:disabled{opacity:1;cursor:not-allowed;background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-muted);transform:none}.auth-form__google-btn:disabled:hover{background:var(--color-bg-secondary);border-color:var(--color-border);transform:none}.auth-form__google-icon{width:20px;height:20px}.auth-form__toggle{text-align:center;margin-top:16px;font-size:14px;color:var(--color-text-secondary);font-family:var(--font-sans)}.auth-form__toggle-link{color:var(--color-primary);font-weight:600;cursor:pointer;text-decoration:none;transition:color .2s ease}.auth-form__toggle-link:hover{color:var(--color-primary-dark);text-decoration:underline}.auth-form__loading{display:inline-block;width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-left:8px}@media (max-width: 768px){.auth-modal{width:95%;max-width:100%;flex-direction:column}.auth-modal__content{flex-direction:column;min-height:auto}.auth-modal__brand-section{display:none}.auth-modal__form-section{padding:32px 24px}.auth-form__title{font-size:24px}.auth-modal__close{top:12px;left:12px}}.auth-form__terms{font-size:13px;color:var(--color-text-secondary);text-align:center;margin-top:16px;line-height:1.6;font-family:var(--font-sans)}.auth-form__terms a{color:var(--color-primary);text-decoration:none;font-weight:500;transition:color .2s ease}.auth-form__terms a:hover{color:var(--color-primary-dark);text-decoration:underline}.auth-form__success{background:#10b9811a;border:1px solid var(--color-success);color:var(--color-success);padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:16px;font-size:14px;font-family:var(--font-sans);text-align:right}.otp-input-container{display:flex;justify-content:center;gap:10px;direction:ltr;margin:24px 0}.otp-box{width:52px;height:60px;border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:center;font-size:26px;font-weight:700;color:var(--color-primary);background:var(--color-bg-secondary);transition:all .2s cubic-bezier(.34,1.56,.64,1);caret-color:var(--color-primary)}.otp-box:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);transform:translateY(-3px) scale(1.05);background:var(--color-bg-primary)}.otp-box.filled{border-color:var(--color-primary);background:#0071e31a}@media (max-width: 480px){.otp-box{width:42px;height:52px;font-size:22px;gap:6px}}.user-menu{position:relative;display:flex;align-items:center}.user-menu__loading{display:flex;align-items:center;justify-content:center;padding:8px}.user-menu__spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}.user-menu__login-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--accent-primary);border:none;border-radius:var(--radius-sm);color:#fff;font-family:var(--font-arabic);font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.user-menu__login-btn:hover{background:var(--accent-primary-hover);transform:translateY(-1px)}.user-menu__login-btn .material-symbols-outlined{font-size:18px}.user-menu__trigger{display:flex;align-items:center;gap:10px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.user-menu__trigger:hover{background:var(--bg-secondary);border-color:var(--border-hover)}.user-menu__avatar{width:36px;height:36px;border-radius:50%;background:var(--accent-primary);color:#fff;display:flex;align-items:center;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);justify-content:center;font-weight:700;font-size:16px;flex-shrink:0;font-family:var(--font-arabic)}.user-menu__name{font-size:.9rem;font-weight:600;color:var(--text-primary);font-family:var(--font-arabic);white-space:nowrap}.user-menu__arrow{font-size:20px;color:var(--text-muted);transition:transform var(--transition-fast)}.user-menu__arrow.rotated{transform:rotate(180deg)}.user-menu__dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:260px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast)}.user-menu__dropdown.active{opacity:1;visibility:visible;transform:translateY(0)}.user-menu__dropdown-header{padding:16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-color)}.user-menu__dropdown-avatar{width:48px;height:48px;border-radius:50%;background:var(--accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;flex-shrink:0;font-family:var(--font-arabic)}.user-menu__dropdown-info{flex:1;min-width:0}.user-menu__dropdown-name{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:2px;font-family:var(--font-arabic);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu__dropdown-email{font-size:.8rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:ltr;text-align:right}.user-menu__dropdown-plan{font-size:.75rem;color:var(--text-secondary);margin-top:6px;line-height:1.35;font-family:var(--font-arabic)}.user-menu__dropdown-plan--muted{color:var(--text-muted)}.user-menu__dropdown-divider{height:1px;background:var(--border-color);margin:0}.user-menu__dropdown-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;font-family:var(--font-arabic);font-size:.9rem;color:var(--text-primary);text-align:right;cursor:pointer;transition:all var(--transition-fast)}.user-menu__dropdown-item:hover{background:var(--bg-tertiary);color:var(--accent-primary)}.user-menu__dropdown-item .material-symbols-outlined{font-size:20px;color:var(--text-muted)}.user-menu__dropdown-item:hover .material-symbols-outlined{color:var(--accent-primary)}.user-menu__dropdown-section{padding:12px 16px}.user-menu__subscription{display:flex;align-items:center;justify-content:space-between;gap:8px}.user-menu__subscription--stacked{flex-direction:column;align-items:stretch;gap:6px}.user-menu__subscription-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.user-menu__subscription-expiry{font-size:.72rem;line-height:1.35;color:var(--text-secondary);font-family:var(--font-arabic);padding-inline-start:26px}.user-menu__subscription-expiry--muted{color:var(--text-muted)}.user-menu__subscription-label{display:flex;align-items:center;gap:8px;font-family:var(--font-arabic);font-size:.85rem;font-weight:500;color:var(--text-secondary)}.user-menu__subscription-icon{font-size:18px;color:var(--text-muted)}.user-menu__subscription-icon--active{color:var(--color-success)}.user-menu__subscription-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-full);font-family:var(--font-arabic);font-size:.75rem;font-weight:600;line-height:1.4;white-space:nowrap}.user-menu__subscription-badge--active{background:#10b9811f;color:var(--color-success);border:1px solid rgba(16,185,129,.25)}.user-menu__subscription-badge--inactive{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border-color)}.user-menu__subscription-badge--expired{background:#f59e0b1f;color:#d97706;border:1px solid rgba(245,158,11,.3)}.user-menu__subscribe-cta{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;padding:10px 16px;background:var(--accent-primary);border:none;border-radius:var(--radius-sm);color:#fff;font-family:var(--font-arabic);font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.user-menu__subscribe-cta:hover{background:var(--accent-primary-hover);transform:translateY(-1px)}.user-menu__subscribe-cta .material-symbols-outlined{font-size:18px}@media (max-width: 768px){.user-menu__name{display:none}.user-menu__trigger{padding:6px}.user-menu__dropdown{min-width:260px;max-width:calc(100vw - 32px)}@media (max-width: 360px){.user-menu__dropdown{min-width:calc(100vw - 32px);max-width:calc(100vw - 32px)}.user-menu__login-btn{width:44px;min-width:44px;height:44px;padding:10px;font-size:0;gap:0;justify-content:center}.user-menu__login-btn .material-symbols-outlined{font-size:20px;margin:0}}}.landing-footer{padding:48px 24px;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.landing-footer-content{max-width:800px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.landing-footer-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}.landing-footer-link{color:var(--text-primary);text-decoration:none;font-size:.9rem;font-weight:500;transition:color var(--transition-fast);font-family:var(--font-arabic)}.landing-footer-link:hover{color:var(--accent-primary)}.landing-footer-divider{color:var(--text-muted);font-size:.9rem}.landing-footer-copyright{color:var(--text-muted);font-size:.85rem;font-family:var(--font-arabic)}@media (max-width: 768px){.landing-footer{padding:32px 16px}.landing-footer-links{flex-direction:column;gap:12px}.landing-footer-divider{display:none}}.legal-page{min-height:100vh;background:var(--bg-primary);padding:24px}.legal-container{max-width:800px;margin:0 auto;padding:32px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.legal-back-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-arabic);font-size:.9rem;cursor:pointer;transition:all var(--transition-fast);margin-bottom:24px}.legal-back-btn:hover{background:var(--bg-primary);border-color:var(--border-hover)}.legal-back-btn .material-symbols-outlined{font-size:18px}.legal-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:8px;font-family:var(--font-arabic)}.legal-updated{font-size:.85rem;color:var(--text-muted);margin-bottom:32px;font-family:var(--font-arabic)}.legal-content{color:var(--text-secondary);font-family:var(--font-arabic);line-height:1.8}.legal-section{margin-bottom:32px}.legal-section h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:12px;font-family:var(--font-arabic)}.legal-section p{margin-bottom:12px;font-size:.95rem}.legal-section ul{list-style:none;padding:0;margin:12px 0}.legal-section li{position:relative;padding-right:24px;margin-bottom:8px;font-size:.95rem}.legal-section li:before{content:"•";position:absolute;right:8px;color:var(--accent-primary)}.legal-section strong{color:var(--text-primary)}@media (max-width: 768px){.legal-page{padding:16px}.legal-container{padding:24px 16px}.legal-title{font-size:1.5rem}.legal-section h2{font-size:1.1rem}}.gpa-page-shell{width:min(100%,1120px);margin:0 auto;padding:var(--spacing-20) var(--spacing-6) var(--spacing-24);color:var(--color-text-primary);font-family:var(--font-thmanyah-text),var(--font-text)}.gpa-page-hero{display:grid;justify-items:start;gap:var(--spacing-8);padding-bottom:var(--spacing-16);text-align:right}.gpa-page-hero__copy{display:grid;justify-items:start;gap:var(--spacing-3);max-width:680px}.gpa-page-shell .gpa-page-kicker,.gpa-scale-row__label,.gpa-field__label,.gpa-page-shell .gpa-courses-header,.gpa-result-kicker,.gpa-page-shell .gpa-result-label,.goal-metric__label,.goal-progress-meta,.semester-plan-row__label,.semester-plan-row__unit{color:var(--color-text-muted);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-xs);font-weight:500;line-height:var(--leading-ui)}.gpa-page-shell .gpa-page-kicker{letter-spacing:.08em;text-transform:uppercase}.gpa-page-shell .gpa-page-title{margin:0;color:var(--color-text-primary);font-family:var(--font-thmanyah-display),var(--font-display);font-size:var(--font-size-8xl);font-weight:900;line-height:var(--leading-display);letter-spacing:0;font-feature-settings:"salt" 1}.gpa-page-shell .gpa-page-subtitle{max-width:420px;margin:0;color:var(--color-text-secondary);font-family:var(--font-thmanyah-text),var(--font-text);font-size:var(--font-size-base);line-height:var(--leading-body)}.gpa-view-toggle{display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--spacing-2)}.gpa-view-toggle__btn{min-height:calc(var(--spacing-10) + var(--spacing-1));padding:0 var(--spacing-5);background:transparent;border:1px solid transparent;border-radius:var(--radius-full);color:var(--color-text-muted);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-sm);font-weight:500;line-height:var(--leading-ui);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.gpa-view-toggle__btn:hover{color:var(--color-text-primary)}.gpa-view-toggle__btn.active{background:var(--color-bg-elevated);border-color:var(--color-primary);color:var(--color-primary)}.gpa-view{display:grid;gap:var(--spacing-10);animation:gpaViewIn var(--transition-normal) ease both}.gpa-view.hidden{display:none}.gpa-scale-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);width:100%;margin-bottom:0}.gpa-scale-row__label{font-size:var(--font-size-sm)}.gpa-scale-row__options{display:inline-flex;gap:var(--spacing-2);order:-1}.gpa-scale-btn{min-height:calc(var(--spacing-8) + var(--spacing-1));padding:0 var(--spacing-4);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-sm);font-weight:700;line-height:var(--leading-ui);cursor:pointer}.gpa-scale-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-primary)}.gpa-section-head,.gpa-previous-row__head,.goal-semesters__head{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4)}.gpa-section-heading,.goal-semesters__title{margin:0;color:var(--color-text-primary);font-family:var(--font-thmanyah-text),var(--font-text);font-size:var(--font-size-xl);font-weight:700;line-height:var(--leading-body)}.gpa-panel-hint{margin:var(--spacing-2) 0 0;color:var(--color-text-secondary);font-family:var(--font-thmanyah-text),var(--font-text);font-size:var(--font-size-base);line-height:var(--leading-body)}.gpa-optional-badge{display:inline-flex;align-items:center;min-height:var(--spacing-5);padding:2px 8px;color:var(--color-text-muted);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-xs);font-weight:500;line-height:var(--leading-ui);border:1px solid var(--color-border);border-radius:var(--radius-full)}.gpa-previous-row{display:grid;gap:var(--spacing-5);margin-bottom:0}.gpa-form-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-3)}.gpa-field,.gpa-field-card{display:flex;flex-direction:column;gap:var(--spacing-2);min-width:0}.gpa-page-shell .gpa-input,.gpa-page-shell .gpa-course-row input,.gpa-page-shell .gpa-course-row select{width:100%;min-height:calc(var(--spacing-10) + var(--spacing-1));padding:var(--spacing-3) var(--spacing-4);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-base);font-weight:500;line-height:var(--leading-ui);box-shadow:none;transition:border-color var(--transition-fast),color var(--transition-fast)}.gpa-page-shell .gpa-course-row input,.gpa-page-shell .gpa-course-row select{border-radius:var(--radius-sm);font-weight:400}.gpa-page-shell .gpa-input:focus,.gpa-page-shell .gpa-course-row input:focus,.gpa-page-shell .gpa-course-row select:focus{outline:none;border-color:var(--color-primary);box-shadow:none}.gpa-page-shell .gpa-input::-moz-placeholder,.gpa-page-shell .gpa-course-row input::-moz-placeholder{color:var(--color-text-muted)}.gpa-page-shell .gpa-input::placeholder,.gpa-page-shell .gpa-course-row input::placeholder{color:var(--color-text-muted)}.gpa-page-shell .gpa-input[type=number],.gpa-page-shell .gpa-course-row input[type=number],.gpa-page-shell .semester-hours-input,.gpa-page-shell .gpa-result-value,.goal-metric__value,.goal-inline-number,.gpa-scale-btn{font-family:var(--font-thmanyah-sans),var(--font-sans);font-variant-numeric:tabular-nums}.gpa-page-shell input[type=number]::-webkit-inner-spin-button,.gpa-page-shell input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.gpa-page-shell input[type=number]{-moz-appearance:textfield}.gpa-course-table{display:grid;gap:var(--spacing-5);margin-bottom:0}.gpa-page-shell .gpa-courses-table{width:100%;border-collapse:collapse;table-layout:fixed}.gpa-page-shell .gpa-courses-list{display:table-row-group;margin-bottom:0}.gpa-page-shell .gpa-courses-header{display:table-row;border-bottom:1px solid var(--color-border)}.gpa-page-shell .gpa-courses-header th{padding:0 0 var(--spacing-3);text-align:start}.gpa-page-shell .gpa-courses-header th:nth-child(1){width:auto}.gpa-page-shell .gpa-courses-header th:nth-child(2){width:72px}.gpa-page-shell .gpa-courses-header th:nth-child(3){width:96px}.gpa-page-shell .gpa-courses-header th:nth-child(4){width:36px}.gpa-page-shell .gpa-course-table .gpa-course-row{display:table-row;background:transparent;border:0;border-bottom:1px solid var(--color-border);border-radius:0;box-shadow:none}.gpa-page-shell .gpa-course-table .gpa-course-row:last-child{border-bottom:0}.gpa-page-shell .gpa-course-row td{padding:var(--spacing-4) 0;background:transparent;border:0;vertical-align:middle}.gpa-page-shell .gpa-course-row td+td,.gpa-page-shell .gpa-courses-header th+th{padding-right:var(--spacing-3)}.gpa-page-shell .gpa-course-row select{cursor:pointer;width:96px}.gpa-page-shell .gpa-course-row select:invalid{color:var(--color-text-muted)}.gpa-page-shell .gpa-course-row select option{color:var(--color-text-primary)}.gpa-page-shell .gpa-remove-btn{display:inline-flex;width:36px;min-width:36px;height:36px;min-height:36px;align-items:center;justify-content:center;padding:0;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.gpa-page-shell .gpa-remove-btn:hover{background:var(--bg-hover);color:var(--color-error)}.gpa-page-shell .gpa-remove-btn .material-symbols-outlined{font-size:var(--font-size-lg)}.gpa-page-shell .gpa-course-row .hours-input{width:72px;text-align:center}.gpa-page-shell .gpa-add-btn{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;justify-content:flex-start;padding:0;background:transparent;border:0;color:var(--color-primary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-sm);font-weight:500;line-height:var(--leading-ui);text-align:start;cursor:pointer}.gpa-page-shell .gpa-results-card{display:grid;gap:var(--spacing-4);margin-top:var(--spacing-8);padding-top:var(--spacing-8);border-top:1px solid var(--color-border)}.gpa-page-shell .gpa-results{display:grid;gap:var(--spacing-6)}.gpa-page-shell .gpa-result{display:grid;justify-items:start;gap:var(--spacing-1);text-align:right}.gpa-page-shell .gpa-result-label{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.gpa-page-shell .gpa-result-value{color:var(--color-text-secondary);font-size:var(--font-size-4xl);font-weight:900;line-height:1}.gpa-page-shell .gpa-result-primary{color:var(--color-text-primary);font-size:var(--font-size-7xl)}.gpa-page-shell .gpa-result-value--empty{color:var(--color-text-muted);font-size:var(--font-size-5xl)}.gpa-result-context{max-width:100%;margin:0;color:var(--color-text-secondary);font-family:var(--font-thmanyah-text),var(--font-text);font-size:var(--font-size-sm);line-height:var(--leading-body)}.gpa-result-context.hidden{display:none}.goal-card{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);align-items:start;gap:var(--spacing-8)}.goal-layout__inputs,.goal-layout__results{min-width:0}.goal-layout__inputs{display:grid;gap:var(--spacing-6)}.goal-input-grid{display:grid;grid-template-columns:1fr;overflow:hidden;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.goal-input-grid .gpa-field-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);background:transparent;border:0;border-radius:0}.goal-input-grid .gpa-field__label{margin-bottom:0;letter-spacing:0;white-space:nowrap}.goal-input-grid .gpa-field-card+.gpa-field-card{border-top:1px solid var(--color-border);border-right:0}.goal-input-grid .gpa-input{width:9ch;min-height:auto;padding:0;background:transparent;border:0;border-radius:0;color:var(--color-text-primary);direction:ltr;font-size:var(--font-size-2xl);font-weight:700;text-align:left}.gpa-input-with-icon{position:relative;width:9ch}.gpa-input-with-icon .gpa-input{width:100%;padding-right:var(--spacing-6)}.gpa-input-with-icon__icon{position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--color-primary);font-size:var(--font-size-sm);pointer-events:none}.goal-semesters{display:grid;gap:var(--spacing-3)}.goal-semesters__head{display:grid;grid-template-columns:auto 1px auto;align-items:center;justify-content:space-between;gap:var(--spacing-4)}.goal-semesters__title{display:inline-flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-lg)}.goal-semesters__title .gpa-panel-icon{color:var(--color-text-muted);font-size:var(--font-size-sm)}.goal-semester-stepper{display:inline-flex;align-items:center;gap:var(--spacing-3);background:transparent}.goal-semester-stepper__btn{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-lg);line-height:1;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.goal-semester-stepper__btn:hover{background:var(--bg-hover);border-color:var(--color-border-hover)}.goal-semester-stepper__btn:disabled{background:transparent;border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.goal-semester-stepper__value{display:inline-flex;align-items:baseline;gap:var(--spacing-2);min-width:calc(var(--spacing-16) + var(--spacing-4));justify-content:center;color:var(--color-text-primary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-3xl);font-weight:900;font-variant-numeric:tabular-nums;line-height:1}.goal-semester-stepper__suffix{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:500}.goal-semester-divider{width:1px;height:32px;background:var(--color-border)}.goal-semester-hours{display:grid;gap:var(--spacing-3)}.goal-semester-shared{display:grid;gap:var(--spacing-2)}.goal-semester-shared.hidden{display:none}.goal-semester-hours__field{display:inline-flex;align-items:center;gap:var(--spacing-2)}.semester-shared-hours-input{width:64px;min-height:calc(var(--spacing-8) + var(--spacing-1));padding:var(--spacing-2);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-xl);font-weight:700;font-variant-numeric:tabular-nums;line-height:var(--leading-ui);text-align:center;box-shadow:none}.semester-shared-hours-input:focus{outline:none;border-color:var(--color-primary);box-shadow:none}.semester-custom-toggle{width:-moz-fit-content;width:fit-content;padding:0;background:transparent;border:0;color:var(--color-primary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-xs);font-weight:500;line-height:var(--leading-ui);text-align:start;cursor:pointer}.semesters-list{display:flex;flex-wrap:wrap;gap:var(--spacing-3)}.semesters-list.hidden{display:none}.semester-plan-row{display:grid;justify-items:center;gap:var(--spacing-2);animation:gpaViewIn var(--transition-normal) ease both}.semester-plan-row__label{color:var(--color-text-muted);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-xs);font-weight:500;line-height:var(--leading-ui)}.semester-hours-input{width:56px;min-height:calc(var(--spacing-8) + var(--spacing-1));padding:var(--spacing-2);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-base);font-weight:700;text-align:center}.semester-hours-input:focus{outline:none;border-color:var(--color-primary)}.goal-results-grid{display:grid;gap:0;padding-top:0;border-top:0}.goal-chart-card,.goal-status-card{background:transparent;border:0;border-radius:0;box-shadow:none}.goal-chart-card{position:relative;height:180px;padding:0;direction:rtl}#gpa-chart{width:100%!important;height:100%!important}.goal-status-card{display:block;min-height:0;direction:rtl}.goal-status-empty{display:grid;width:100%;place-items:center;color:var(--color-text-muted);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-sm);font-weight:500;text-align:center}.goal-status-content{--goal-tone: var(--color-text-primary);--goal-progress: var(--color-primary);display:grid;width:100%;gap:0}.goal-status--warning{--goal-tone: var(--color-warning);--goal-progress: var(--color-warning)}.goal-status--error{--goal-tone: var(--color-error);--goal-progress: var(--color-error)}.goal-status--success{--goal-tone: var(--color-text-primary)}.goal-status-label{display:block;width:-moz-fit-content;width:fit-content;margin-right:auto;margin-left:0;margin-bottom:var(--spacing-3);color:var(--goal-tone);font-family:var(--font-thmanyah-sans),var(--font-sans);font-size:var(--font-size-xs);font-weight:500;line-height:var(--leading-ui)}.goal-status-label .material-symbols-outlined{font-size:var(--font-size-base)}.goal-status-metrics{display:grid;grid-template-columns:minmax(0,1.35fr) 1px minmax(0,.9fr);gap:var(--spacing-6);align-items:stretch;direction:rtl;margin-bottom:var(--spacing-6);padding-bottom:0}.goal-metric{min-width:0;direction:rtl;text-align:start}.goal-metric--required{display:flex;flex-direction:column;justify-content:flex-end;gap:var(--spacing-2)}.goal-metric-stack{display:grid;gap:var(--spacing-4);align-content:center}.goal-metric--secondary{display:flex;flex-direction:column;gap:var(--spacing-1)}.goal-metric-divider{width:1px;height:100%;min-height:calc(var(--spacing-16) + var(--spacing-4));background:var(--color-border)}.goal-metric__label{margin-bottom:var(--spacing-2);letter-spacing:.04em}.goal-metric__value{color:var(--goal-tone);direction:ltr;font-size:var(--font-size-7xl);font-weight:900;line-height:1;unicode-bidi:isolate}.goal-metric__value--neutral,.goal-metric__value--count{color:var(--color-text-secondary);direction:ltr;font-size:var(--font-size-3xl);unicode-bidi:isolate}.goal-metric__value--count{display:inline-flex;align-items:baseline;gap:var(--spacing-2);color:var(--color-text-primary);font-size:var(--font-size-3xl)}.goal-metric__value--count span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:500}.goal-inline-number{color:var(--color-text-primary);direction:ltr;unicode-bidi:isolate}.goal-progress-meta,.goal-progress{width:100%}.goal-progress-meta{display:flex;justify-content:space-between;gap:var(--spacing-3);margin-bottom:var(--spacing-6)}.goal-progress{height:2px;margin:0 0 var(--spacing-2);overflow:hidden;background:var(--color-bg-tertiary);border-radius:var(--radius-full)}.goal-progress__bar{height:100%;background:var(--goal-progress);border-radius:inherit;transition:width var(--transition-slow)}.goal-status-explanation{max-width:560px;margin:var(--spacing-4) 0 0 auto;padding-top:0;color:var(--color-text-secondary);font-family:var(--font-thmanyah-text),var(--font-text);font-size:var(--font-size-sm);line-height:var(--leading-body);text-align:right}.goal-status-explanation.hidden{display:none}.gpa-value-updated{animation:gpaValueUpdated .35s ease-out}.gpa-calculator-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start;gap:var(--spacing-8)}.gpa-calculator-column{min-width:0}.gpa-calculator-left-sticky{position:sticky;top:var(--spacing-8)}.gpa-page-shell .gpa-result-kicker{margin-bottom:var(--spacing-2);letter-spacing:.06em}@keyframes gpaViewIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes gpaValueUpdated{0%{transform:scale(1)}40%{transform:scale(1.04)}to{transform:scale(1)}}@media (max-width: 900px){.gpa-page-shell{padding:var(--spacing-16) var(--spacing-4) var(--spacing-24)}.gpa-page-shell .gpa-page-title{font-size:var(--font-size-7xl)}.goal-card,.gpa-calculator-layout{grid-template-columns:1fr}.goal-card{gap:var(--spacing-10)}.gpa-calculator-left-sticky{position:static}}@media (max-width: 640px){.gpa-page-shell{padding:var(--spacing-12) var(--spacing-3) calc(var(--spacing-24) + env(safe-area-inset-bottom))}.gpa-page-hero{padding-bottom:var(--spacing-12)}.gpa-page-shell .gpa-page-title{font-size:var(--font-size-6xl)}.gpa-view-toggle,.gpa-scale-row,.gpa-section-head,.gpa-previous-row__head{align-items:flex-start;flex-direction:column}.gpa-course-table{overflow-x:auto}.gpa-page-shell .gpa-courses-table{min-width:560px}.gpa-page-shell .gpa-result-primary{font-size:var(--font-size-6xl)}.goal-status-metrics{grid-template-columns:1fr;gap:var(--spacing-5)}.goal-semesters__head{grid-template-columns:auto 1px auto;align-items:center;gap:var(--spacing-3)}.goal-metric-divider{width:100%;height:1px}}.conflict-modal-title{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-primary)}.conflict-title-icon{font-size:var(--font-size-xl);line-height:1}.conflict-title-icon svg{width:24px;height:24px;display:inline-block;vertical-align:middle}.conflict-intro{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-4);line-height:1.6}.conflict-details-list{display:flex;flex-direction:column;gap:var(--spacing-2);margin-bottom:var(--spacing-4)}.conflict-detail-row{display:flex;align-items:flex-start;gap:var(--spacing-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-3) var(--spacing-4)}.conflict-detail-icon{font-size:1.1rem;flex-shrink:0;margin-top:2px}.conflict-detail-icon svg{width:16px;height:16px;display:inline-block;vertical-align:middle}.conflict-detail-body{flex:1;display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-2);min-width:0}.conflict-course-name{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conflict-section-badge{font-size:var(--font-size-xs);color:var(--color-text-muted);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:2px var(--spacing-2);white-space:nowrap;flex-shrink:0}.conflict-detail-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-1);flex-shrink:0;text-align:end}.conflict-day{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary)}.conflict-time{font-size:var(--font-size-xs);color:var(--color-text-muted);direction:ltr}.conflict-replace-section{border-top:1px solid var(--color-border);padding-top:var(--spacing-4);margin-top:var(--spacing-2)}.conflict-replace-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-3)}.conflict-replace-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.compare-modal-overlay{align-items:stretch;padding:var(--spacing-4)}.compare-modal{max-width:none!important;width:100%;height:calc(100vh - 2 * var(--spacing-4));max-height:none!important;overflow:hidden!important;display:flex;flex-direction:column}.compare-modal-body{display:flex;flex:1;min-height:0;overflow:hidden}.compare-panel{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.compare-panel-label{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-secondary);text-align:center;padding:var(--spacing-3) var(--spacing-4);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);flex-shrink:0}.compare-grid{flex:1;overflow-y:auto!important;overflow-x:auto!important;padding:var(--spacing-3);padding-bottom:var(--spacing-8);min-height:0;margin-bottom:0!important;border-radius:0!important;border-left:none!important;border-right:none!important;grid-template-columns:52px repeat(5,minmax(0,1fr))!important;font-size:.78rem}.compare-grid .grid-cell,.compare-grid .time-slot{min-height:44px}.compare-grid .course-block{overflow:hidden}.compare-grid .course-name{font-size:.72rem}.compare-grid .course-instructor,.compare-grid .course-time,.compare-grid .course-section{font-size:.65rem}.compare-divider{width:1px;background:var(--color-border);flex-shrink:0}.compare-legend{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex;align-items:center;gap:var(--spacing-2);border-top:1px solid var(--color-border);flex-shrink:0}.compare-legend-dot{width:10px;height:10px;border-radius:2px;flex-shrink:0}.compare-legend-unique{background:#fbbf2499;border:1px solid #fbbf24}.compare-unique{outline:2px solid #fbbf24!important;opacity:1!important}.compare-tabs{display:none;flex-shrink:0;border-bottom:1px solid var(--color-border)}.compare-tab{flex:1;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);font-family:inherit}.compare-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.compare-shared{opacity:1;filter:brightness(.92)}@media (max-width: 768px){.compare-modal-overlay{padding:var(--spacing-2)}.compare-modal{height:calc(100vh - 2 * var(--spacing-2))}.compare-tabs{display:flex}.compare-panel-label,.compare-divider{display:none}.compare-modal-body{flex-direction:column;overflow:hidden}.compare-panel{display:none;flex:1;min-height:0}.compare-panel[data-panel=current],.compare-panel[data-panel-visible=true]{display:flex}.compare-panel[data-panel-visible=false]{display:none}.compare-grid{overflow-x:auto;overflow-y:auto!important}}.schedule-manager-modal .modal-body{display:flex;flex-direction:column;gap:var(--spacing-4)}.schedule-save-row{display:flex;gap:var(--spacing-2);align-items:stretch}.schedule-version-name-input{flex:1;padding:var(--spacing-2) var(--spacing-3);font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition-fast);direction:rtl}.schedule-version-name-input:focus{border-color:var(--color-primary)}.schedule-version-name-input.input-error{border-color:var(--color-error);animation:shake .25s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.schedule-version-name-input:disabled{opacity:1;color:var(--text-muted);cursor:not-allowed}.schedule-save-btn{flex-shrink:0;white-space:nowrap}.versions-list{display:flex;flex-direction:column;gap:var(--spacing-2);max-height:340px;overflow-y:auto;padding-right:2px}.version-row{display:flex;align-items:center;gap:var(--spacing-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-3) var(--spacing-4);transition:border-color var(--transition-fast)}.version-row:hover{border-color:var(--color-border-hover)}.version-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--spacing-1)}.version-name{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap}.version-row-actions{display:flex;gap:var(--spacing-1);flex-shrink:0}.version-action-btn{padding:var(--spacing-1) var(--spacing-2)!important;font-size:var(--font-size-xs)!important;height:28px;display:inline-flex;align-items:center;gap:4px}.filter-modal .modal-body{padding-bottom:var(--spacing-2)}.filter-days-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-2);margin-top:var(--spacing-2)}.filter-day-label{display:inline-flex;align-items:center;padding:var(--spacing-2) var(--spacing-4);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.filter-day-label:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-bg-secondary)}.filter-day-label input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.filter-day-label:has(input:checked){background:var(--color-primary);border-color:var(--color-primary);color:#fff}.filter-day-label:has(input:checked):hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#fff}.filter-toggle-label{display:inline-flex;align-items:center;gap:var(--spacing-3);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);-webkit-user-select:none;-moz-user-select:none;user-select:none}.filter-toggle-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.toolbar-btn.filter-active .material-symbols-outlined{color:var(--color-primary)}.toolbar-btn.filter-active{border-color:var(--color-primary)!important;background:var(--color-primary-light)!important;color:var(--color-primary)!important}#stats-section .collapsible-header{background:transparent;border:none;padding:0;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center}#stats-section .collapsible-header h2{font-size:15px;font-weight:700;color:var(--color-text-primary)}#stats-section .collapsible-header:hover{background:transparent}#stats-section .collapsible-header .chevron-icon{width:16px;height:16px;color:var(--color-text-muted);transition:transform .2s ease}.stats-container{padding:var(--spacing-4)}.stats-hero-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.stats-hero-card{border-radius:14px;padding:20px 22px;animation:statsFadeIn .2s ease forwards}.stats-hero-card-credits{background:#0071e314;border:1px solid rgba(0,113,227,.2)}[data-theme=light] .stats-hero-card-credits{background:#0071e30f}.stats-hero-card-days{background:var(--color-bg-secondary);border:1px solid var(--color-border)}.stats-hero-label{font-size:12px;color:var(--color-text-muted);margin-bottom:8px;line-height:1.3}.stats-hero-card-credits .stats-hero-label{color:#0071e3cc}.stats-hero-value{font-size:48px;font-weight:700;color:var(--color-text-primary);line-height:1;display:flex;align-items:baseline;gap:4px}.stats-hero-fraction{font-size:20px;font-weight:400;color:var(--color-text-muted);margin-right:4px}.stats-hero-subline{font-size:11px;color:var(--color-text-muted);margin-top:6px}.stats-hero-progress{margin-top:14px}.stats-hero-progress-track{height:3px;background:var(--color-border);border-radius:2px;overflow:hidden}.stats-hero-progress-fill{height:100%;background:var(--color-primary);border-radius:2px;width:0;animation:statsProgressFill .5s ease .2s forwards}.stats-day-dots{display:flex;flex-direction:row-reverse;gap:6px;margin-top:10px}.stats-day-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border);opacity:0;animation:statsDotAppear .2s ease forwards}.stats-day-dot-active{background:var(--color-primary)}.stats-day-dot:nth-child(1){animation-delay:.3s}.stats-day-dot:nth-child(2){animation-delay:.35s}.stats-day-dot:nth-child(3){animation-delay:.4s}.stats-day-dot:nth-child(4){animation-delay:.45s}.stats-day-dot:nth-child(5){animation-delay:.5s}.stats-small-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stats-small-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:14px 16px;transition:background .15s ease,border-color .15s ease;transform:translateY(6px);animation:statsFadeIn .2s ease forwards}.stats-small-card:nth-child(1){animation-delay:.05s}.stats-small-card:nth-child(2){animation-delay:.1s}.stats-small-card:nth-child(3){animation-delay:.15s}.stats-small-card:nth-child(4){animation-delay:.2s}.stats-small-card:nth-child(5){animation-delay:.25s}.stats-small-card:nth-child(6){animation-delay:.3s}.stats-small-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-hover)}.stats-small-label{font-size:11px;color:var(--color-text-muted);margin-bottom:6px;line-height:1.3}.stats-small-value{font-size:20px;font-weight:600;color:var(--color-text-primary);line-height:1;display:flex;align-items:baseline;gap:3px}.stats-small-unit{font-size:12px;font-weight:400;color:var(--color-text-muted);margin-right:3px}.stats-small-card-muted{background:var(--color-bg-tertiary)}.stats-small-card-muted .stats-small-label,.stats-small-card-muted .stats-small-unit,.stats-small-card-muted .stats-small-badge{color:color-mix(in srgb,var(--color-text-muted) 65%,var(--color-bg-secondary))}.stats-small-card-muted .stats-small-value{color:color-mix(in srgb,var(--color-text-secondary) 70%,var(--color-bg-secondary))}.stats-small-badge{display:inline-block;background:var(--color-bg-elevated);color:var(--color-text-muted);font-size:10px;font-weight:500;padding:1px 7px;border-radius:6px;margin-top:6px}@keyframes statsFadeIn{0%{transform:translateY(6px)}to{transform:translateY(0)}}@keyframes statsProgressFill{0%{width:0}to{width:var(--fill-width)}}@keyframes statsDotAppear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media (max-width: 1024px){.stats-hero-row{grid-template-columns:1fr 1fr}.stats-small-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.stats-container{padding:var(--spacing-3)}.stats-hero-row{grid-template-columns:1fr}.stats-hero-value{font-size:40px}.stats-small-grid{grid-template-columns:repeat(2,1fr)}.stats-small-value{font-size:18px}}@media (max-width: 600px){.version-row{flex-direction:column;align-items:stretch;gap:var(--spacing-2)}.version-row-actions{display:grid;grid-template-columns:1fr 1fr auto;gap:var(--spacing-1)}.version-action-btn{justify-content:center}.schedule-save-row{flex-direction:column}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:thmanyah Sans,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:IBM Plex Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}input:where([type=text]),input:where(:not([type])),input:where([type=email]),input:where([type=url]),input:where([type=password]),input:where([type=number]),input:where([type=date]),input:where([type=datetime-local]),input:where([type=month]),input:where([type=search]),input:where([type=tel]),input:where([type=time]),input:where([type=week]),select:where([multiple]),textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}input:where([type=text]):focus,input:where(:not([type])):focus,input:where([type=email]):focus,input:where([type=url]):focus,input:where([type=password]):focus,input:where([type=number]):focus,input:where([type=date]):focus,input:where([type=datetime-local]):focus,input:where([type=month]):focus,input:where([type=search]):focus,input:where([type=tel]):focus,input:where([type=time]):focus,input:where([type=week]):focus,select:where([multiple]):focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}select:where([multiple]),select:where([size]:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}input:where([type=checkbox]),input:where([type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}input:where([type=checkbox]){border-radius:0}input:where([type=radio]){border-radius:100%}input:where([type=checkbox]):focus,input:where([type=radio]):focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}input:where([type=checkbox]):checked,input:where([type=radio]):checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}input:where([type=checkbox]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){input:where([type=checkbox]):checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=radio]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){input:where([type=radio]):checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=checkbox]):checked:hover,input:where([type=checkbox]):checked:focus,input:where([type=radio]):checked:hover,input:where([type=radio]):checked:focus{border-color:transparent;background-color:currentColor}input:where([type=checkbox]):indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){input:where([type=checkbox]):indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=checkbox]):indeterminate:hover,input:where([type=checkbox]):indeterminate:focus{border-color:transparent;background-color:currentColor}input:where([type=file]){background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}input:where([type=file]):focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.left-4{left:1rem}.left-\[50\%\]{left:50%}.right-1\.5{right:.375rem}.right-2{right:.5rem}.top-1\.5{top:.375rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-0{z-index:0}.z-20{z-index:20}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.z-\[1\]{z-index:1}.z-\[2\]{z-index:2}.col-span-full{grid-column:1 / -1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-mb-px{margin-bottom:-1px}.-mt-2\.5{margin-top:-.625rem}.mb-1{margin-bottom:.25rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[140px\]{height:140px}.h-\[1px\]{height:1px}.h-\[250px\]{height:250px}.h-\[260px\]{height:260px}.h-\[52px\]{height:52px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.max-h-48{max-height:12rem}.max-h-\[--radix-select-content-available-height\]{max-height:var(--radix-select-content-available-height)}.max-h-\[420px\]{max-height:420px}.min-h-0{min-height:0px}.min-h-\[128px\]{min-height:128px}.min-h-\[168px\]{min-height:168px}.min-h-\[188px\]{min-height:188px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[140px\]{width:140px}.w-\[1px\]{width:1px}.w-\[90\%\]{width:90%}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-7xl{max-width:80rem}.max-w-\[100px\]{max-width:100px}.max-w-\[420px\]{max-width:420px}.max-w-\[440px\]{max-width:440px}.max-w-\[480px\]{max-width:480px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.origin-\[--radix-select-content-transform-origin\]{transform-origin:var(--radix-select-content-transform-origin)}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[20px\]{border-radius:20px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-\[\#0071E3\]{--tw-border-opacity: 1;border-color:rgb(0 113 227 / var(--tw-border-opacity, 1))}.border-\[hsl\(var\(--border-shadcn\)\)\]{border-color:hsl(var(--border-shadcn))}.border-\[hsl\(var\(--border-shadcn\)\)\]\/30{border-color:hsl(var(--border-shadcn) / .3)}.border-\[hsl\(var\(--border-shadcn\)\)\]\/50{border-color:hsl(var(--border-shadcn) / .5)}.border-\[hsl\(var\(--border-shadcn\)\)\]\/60{border-color:hsl(var(--border-shadcn) / .6)}.border-\[hsl\(var\(--primary-shadcn\)\)\]\/20{border-color:hsl(var(--primary-shadcn) / .2)}.border-\[rgba\(16\,185\,129\,0\.3\)\]{border-color:#10b9814d}.border-\[rgba\(59\,130\,246\,0\.3\)\]{border-color:#3b82f64d}.border-blue-500\/25{border-color:#3b82f640}.border-emerald-500\/25{border-color:#10b98140}.border-input{border-color:hsl(var(--input))}.border-orange-500\/25{border-color:#f9731640}.border-red-500\/15{border-color:#ef444426}.border-red-500\/20{border-color:#ef444433}.border-red-500\/25{border-color:#ef444440}.border-rose-500\/20{border-color:#f43f5e33}.border-transparent{border-color:transparent}.border-white\/\[0\.05\]{border-color:#ffffff0d}.border-white\/\[0\.06\]{border-color:#ffffff0f}.border-white\/\[0\.07\]{border-color:#ffffff12}.border-white\/\[0\.08\]{border-color:#ffffff14}.border-white\/\[0\.12\]{border-color:#ffffff1f}.bg-\[\#080808\]\/90{background-color:#080808e6}.bg-\[\#0a0a0a\]{--tw-bg-opacity: 1;background-color:rgb(10 10 10 / var(--tw-bg-opacity, 1))}.bg-\[\#0c0c0c\]\/80{background-color:#0c0c0ccc}.bg-\[\#111111\]{--tw-bg-opacity: 1;background-color:rgb(17 17 17 / var(--tw-bg-opacity, 1))}.bg-\[hsl\(var\(--accent\)\)\]{background-color:hsl(var(--accent))}.bg-\[hsl\(var\(--background\)\)\]{background-color:hsl(var(--background))}.bg-\[hsl\(var\(--card\)\)\]{background-color:hsl(var(--card))}.bg-\[hsl\(var\(--muted\)\)\]{background-color:hsl(var(--muted))}.bg-\[hsl\(var\(--primary-shadcn\)\)\]{background-color:hsl(var(--primary-shadcn))}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/15{background-color:#3b82f626}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-emerald-400{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.bg-emerald-500\/10{background-color:#10b9811a}.bg-emerald-500\/15{background-color:#10b98126}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-neutral-500{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity, 1))}.bg-orange-400{--tw-bg-opacity: 1;background-color:rgb(251 146 60 / var(--tw-bg-opacity, 1))}.bg-orange-500\/10{background-color:#f973161a}.bg-orange-500\/15{background-color:#f9731626}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:var(--color-primary)}.bg-purple-500\/10{background-color:#a855f71a}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/15{background-color:#ef444426}.bg-rose-500\/5{background-color:#f43f5e0d}.bg-rose-600{--tw-bg-opacity: 1;background-color:rgb(225 29 72 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:transparent}.bg-white\/\[0\.03\]{background-color:#ffffff08}.bg-white\/\[0\.04\]{background-color:#ffffff0a}.bg-white\/\[0\.06\]{background-color:#ffffff0f}.bg-white\/\[0\.07\]{background-color:#ffffff12}.bg-yellow-500\/10{background-color:#eab3081a}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-\[rgba\(255\,180\,50\,0\.04\)\]{--tw-gradient-to: rgba(255, 180, 50, 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgba(255,180,50,.04) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-3{padding-bottom:.75rem}.pb-3\.5{padding-bottom:.875rem}.pb-5{padding-bottom:1.25rem}.pl-1{padding-left:.25rem}.pl-2{padding-left:.5rem}.pr-1{padding-right:.25rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-3\.5{padding-top:.875rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-\[family-name\:var\(--font-sans\)\]{font-family:var(--font-sans)}.font-display{font-family:"thmanyah Serif Display",serif}.font-mono{font-family:IBM Plex Mono,ui-monospace,monospace}.font-sans{font-family:thmanyah Sans,ui-sans-serif,system-ui,sans-serif}.font-text{font-family:"thmanyah Serif Text",Georgia,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[20px\]{font-size:20px}.text-\[28px\]{font-size:28px}.text-\[8px\]{font-size:8px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-body{line-height:var(--leading-body)}.leading-display{line-height:var(--leading-display)}.leading-none{line-height:1}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.leading-ui{line-height:var(--leading-ui)}.tracking-display{letter-spacing:var(--tracking-display)}.tracking-normal{letter-spacing:0em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-\[\#c45c54\]{--tw-text-opacity: 1;color:rgb(196 92 84 / var(--tw-text-opacity, 1))}.text-\[hsl\(var\(--foreground\)\)\]{color:hsl(var(--foreground))}.text-\[hsl\(var\(--muted-foreground\)\)\]{color:hsl(var(--muted-foreground))}.text-\[hsl\(var\(--muted-foreground\)_\/_0\.5\)\]{color:hsl(var(--muted-foreground) / .5)}.text-\[hsl\(var\(--muted-foreground\)_\/_0\.8\)\]{color:hsl(var(--muted-foreground) / .8)}.text-\[hsl\(var\(--primary-foreground\)\)\]{color:hsl(var(--primary-foreground))}.text-\[hsl\(var\(--primary-shadcn\)\)\]{color:hsl(var(--primary-shadcn))}.text-\[hsl\(var\(--primary-shadcn\)_\/_0\.6\)\]{color:hsl(var(--primary-shadcn) / .6)}.text-\[rgba\(251\,146\,60\,0\.7\)\]{color:#fb923cb3}.text-\[rgba\(255\,255\,255\,0\.3\)\]{color:#ffffff4d}.text-\[rgba\(255\,255\,255\,0\.35\)\]{color:#ffffff59}.text-\[rgba\(255\,255\,255\,0\.4\)\]{color:#fff6}.text-\[rgba\(255\,255\,255\,0\.5\)\]{color:#ffffff80}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:var(--color-primary)}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-rose-400{--tw-text-opacity: 1;color:rgb(251 113 133 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.decoration-transparent{text-decoration-color:transparent}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_20px_rgba\(0\,113\,227\,0\.35\)\,inset_0_1px_0_rgba\(255\,255\,255\,0\.12\)\]{--tw-shadow: 0 0 20px rgba(0,113,227,.35),inset 0 1px 0 rgba(255,255,255,.12);--tw-shadow-colored: 0 0 20px var(--tw-shadow-color), inset 0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_48px_-16px_rgba\(255\,180\,50\,0\.06\)\]{--tw-shadow: 0 0 48px -16px rgba(255,180,50,.06);--tw-shadow-colored: 0 0 48px -16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[inset_0_1px_0_rgba\(255\,255\,255\,0\.08\)\]{--tw-shadow: inset 0 1px 0 rgba(255,255,255,.08);--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[stroke-dashoffset\]{transition-property:stroke-dashoffset;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.duration-1000{animation-duration:1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\[filter\:drop-shadow\(0_0_20px_rgba\(0\,113\,227\,0\.25\)\)\]{filter:drop-shadow(0 0 20px rgba(0,113,227,.25))}@font-face{font-family:KOMethlama;src:url(../fonts/KOMethlama-Bold.otf) format("opentype");font-weight:700;font-display:swap}@font-face{font-family:"thmanyah Serif Display";src:url(../fonts/thmanyah/thmanyahserifdisplay/woff2/thmanyahserifdisplay-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Display";src:url(../fonts/thmanyah/thmanyahserifdisplay/woff2/thmanyahserifdisplay-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Display";src:url(../fonts/thmanyah/thmanyahserifdisplay/woff2/thmanyahserifdisplay-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Display";src:url(../fonts/thmanyah/thmanyahserifdisplay/woff2/thmanyahserifdisplay-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Display";src:url(../fonts/thmanyah/thmanyahserifdisplay/woff2/thmanyahserifdisplay-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Text";src:url(../fonts/thmanyah/thmanyahseriftext/woff2/thmanyahseriftext-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Text";src:url(../fonts/thmanyah/thmanyahseriftext/woff2/thmanyahseriftext-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Text";src:url(../fonts/thmanyah/thmanyahseriftext/woff2/thmanyahseriftext-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Text";src:url(../fonts/thmanyah/thmanyahseriftext/woff2/thmanyahseriftext-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"thmanyah Serif Text";src:url(../fonts/thmanyah/thmanyahseriftext/woff2/thmanyahseriftext-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:thmanyah Sans;src:url(../fonts/thmanyah/thmanyahsans/woff2/thmanyahsans-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:thmanyah Sans;src:url(../fonts/thmanyah/thmanyahsans/woff2/thmanyahsans-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:thmanyah Sans;src:url(../fonts/thmanyah/thmanyahsans/woff2/thmanyahsans-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:thmanyah Sans;src:url(../fonts/thmanyah/thmanyahsans/woff2/thmanyahsans-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:thmanyah Sans;src:url(../fonts/thmanyah/thmanyahsans/woff2/thmanyahsans-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}.material-symbols-outlined{font-family:Material Symbols Outlined!important;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-text);font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}p{line-height:var(--leading-body);letter-spacing:var(--tracking-body)}body{font-family:var(--font-text);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;direction:rtl;line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none;-webkit-overflow-scrolling:touch;overflow-x:hidden}button,input,select,textarea,[role=button]{font-family:var(--font-sans);font-synthesis:none}.page-font-sans,.page-font-sans *:not(.material-symbols-outlined){font-family:var(--font-sans)}.page-font-sans .font-sans,.page-font-sans .font-text,.page-font-sans .font-display{font-family:var(--font-sans)!important}h1,h2,h3{line-height:1.3}h1{font-family:var(--font-display);font-size:1.75rem;font-weight:700;line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-feature-settings:"salt" 1;color:var(--text-primary)}h2,h3{font-family:var(--font-text);font-weight:600}h1.logo{font-family:"KOMethlama",var(--font-sans);font-size:2.8rem;font-weight:700;color:var(--accent-primary);letter-spacing:2px}h2{font-size:1.25rem;color:var(--text-primary)}.container{max-width:1400px;margin:0 auto;padding:24px}.builder-bottom-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}.app-header{display:block!important;visibility:visible!important;opacity:1!important;z-index:1000!important;position:sticky!important;top:0!important;width:100%!important;background:var(--bg-glass)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}.builder-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);gap:12px;position:relative;z-index:999;overflow:visible}.app-header__auth{display:flex;align-items:center;margin-left:12px}.header-user-info{display:flex;align-items:center;gap:12px;color:var(--text-secondary);font-size:.9rem}.welcome-text{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-text-only{background:none;border:none;color:var(--accent-primary);cursor:pointer;padding:4px 8px;font-family:inherit;font-size:.85rem;transition:color .2s}.btn-text-only:hover{text-decoration:underline;color:var(--accent-primary-hover)}.toolbar-start,.toolbar-end{display:flex;align-items:center;gap:8px;position:relative;overflow:visible}.toolbar-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-family:var(--font-arabic);font-size:.85rem;font-weight:500;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.toolbar-btn:hover{background:var(--bg-secondary);border-color:var(--border-hover);color:var(--text-primary)}.toolbar-btn .material-symbols-outlined{font-size:18px}.toolbar-btn-primary{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;font-weight:700;padding:9px 18px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.toolbar-btn-primary:hover{background:var(--accent-primary-dark);border-color:var(--accent-primary-dark);color:#fff}.toolbar-btn-primary:active{transform:scale(.97)}.toolbar-btn-icon{padding:8px;min-width:36px;min-height:36px}.toolbar-btn-icon .toolbar-btn-label{display:none}.toolbar-btn-danger:hover{background:var(--error);border-color:var(--error);color:#fff}.toolbar-btn-bookmarklet{cursor:grab;position:relative}.toolbar-btn-bookmarklet__icon{display:inline-flex;align-items:center;justify-content:center}.toolbar-btn-bookmarklet__icon .app-icon{width:18px;height:18px}.toolbar-btn-bookmarklet__bookmark-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.toolbar-btn-bookmarklet__visible-label{display:inline-flex;align-items:center;min-height:1em}.toolbar-btn-bookmarklet__visible-label:after{content:attr(data-label)}.toolbar-btn-bookmarklet:active{cursor:grabbing}.toolbar-btn-bookmarklet:after{content:"اسحبني للإشارات";position:absolute;top:calc(100% + 8px);right:50%;transform:translate(50%);font-size:.7rem;color:var(--text-muted);white-space:nowrap;opacity:0;transition:opacity var(--transition-normal);pointer-events:none;background:var(--bg-tertiary);padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-color);z-index:1100}.toolbar-btn-bookmarklet:hover:after{opacity:1}.custom-tooltip{position:fixed;font-family:var(--font-sans);font-size:.75rem;color:var(--text-primary);white-space:nowrap;background:var(--bg-secondary);padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-color);z-index:10000;pointer-events:auto;opacity:0;transition:opacity .15s ease;font-family:var(--font-arabic);font-weight:500}.toolbar-divider{width:1px;height:20px;background:var(--border-color);margin:0 4px}.course-tabs-bar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:10px 16px;display:flex;flex-direction:column;gap:10px}.course-tabs-bar__top{display:flex;align-items:center;gap:8px}.collapse-tabs-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.collapse-tabs-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-hover)}.collapse-tabs-btn .material-symbols-outlined{font-size:18px;transition:transform var(--transition-normal)}.course-tabs-bar.collapsed .course-tabs{display:none}.course-search-input{flex:1;min-width:0;padding:8px 12px;font-size:.8rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-arabic);transition:all var(--transition-fast)}.course-search-input:hover{border-color:var(--border-hover)}.course-search-input:focus{outline:none;border-color:var(--accent-primary)}.course-search-input::-moz-placeholder{color:var(--text-muted)}.course-search-input::placeholder{color:var(--text-muted)}.search-wrapper{position:relative;flex:1;min-width:0}.search-wrapper .course-search-input{width:100%;padding-right:32px}.search-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.search-wrapper .course-search-input{flex:1;min-width:0;padding-left:32px}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;flex-shrink:0}.course-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:4px 0;flex:1;min-width:0;max-height:120px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.course-tabs .empty-text{width:100%;text-align:center;word-wrap:break-word;white-space:normal;line-height:1.5}.course-tabs::-webkit-scrollbar{height:6px}.course-tabs::-webkit-scrollbar-track{background:transparent}.course-tabs::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.course-tab{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:all .2s ease;font-size:.85rem;color:var(--text-secondary)}.course-tab:hover{background:var(--bg-primary);border-color:var(--border-hover);color:var(--text-primary);border-radius:var(--radius-md)}.course-tab.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.course-tab-code{font-weight:600}.course-tab-name{max-width:150px;overflow:hidden;text-overflow:ellipsis}.main-layout{display:flex;flex-direction:row-reverse;gap:24px;padding:24px;align-items:flex-start}.schedule-section{flex:1;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.schedule-section::-webkit-scrollbar{height:8px}.schedule-section::-webkit-scrollbar-track{background:transparent}.schedule-section::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.schedule-section::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.sections-sidebar{width:320px;max-height:calc(100vh - 250px);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.sidebar-header{padding:16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.sidebar-header h3{font-size:1rem;color:var(--text-primary);margin-bottom:4px}.sidebar-hint{font-size:.75rem;color:var(--text-muted);margin-bottom:8px;display:block}.sidebar-courses{flex:1;overflow-y:auto;padding:8px;min-height:0}.sidebar-course{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:8px;overflow:hidden}.sidebar-course-header{display:flex;align-items:center;justify-content:space-between;padding:12px;cursor:pointer;transition:background .2s ease}.sidebar-course-header:hover{background:#ffffff08}.sidebar-course-info{display:flex;flex-direction:column;gap:2px;flex:1}.sidebar-course-code{font-size:.8rem;color:var(--accent-primary);font-weight:600}.sidebar-course-name{font-size:.9rem;color:var(--text-primary)}.sidebar-course-toggle{color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:transform .3s ease;margin-left:8px;cursor:pointer}.sidebar-course.expanded .sidebar-course-toggle{transform:rotate(180deg)}.sidebar-course-toggle svg{width:14px;height:14px}.sidebar-course-remove{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px 8px;font-size:1rem;transition:color .2s ease}.sidebar-course-remove:hover{color:var(--error)}.sidebar-course-sections{max-height:0;overflow:hidden;transition:max-height .3s ease;background:var(--bg-secondary)}.sidebar-course.expanded .sidebar-course-sections{max-height:60vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.sidebar-course-sections::-webkit-scrollbar{width:6px}.sidebar-course-sections::-webkit-scrollbar-track{background:transparent}.sidebar-course-sections::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.sidebar-course-sections-inner{padding:8px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.section-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px;margin-bottom:0;cursor:pointer;transition:all .2s ease;min-width:0;position:relative}.section-card:hover{border-color:var(--accent-primary);cursor:pointer}.section-card.added{color:var(--text-secondary);border-color:var(--success)}.section-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.section-number{font-weight:600;font-size:1.1rem;color:var(--text-primary)}.section-type{font-size:.75rem;padding:2px 8px;border-radius:9999px;background:var(--bg-secondary);color:var(--text-muted)}.section-card-body{font-size:.8rem;color:var(--text-secondary);display:flex;flex-direction:column;gap:4px}.section-card-icon{display:inline-block;vertical-align:middle;margin-left:2px}.section-card-icon svg{width:14px;height:14px;display:inline-block;vertical-align:middle}.section-status-open{color:var(--success)}.section-status-closed{color:var(--error)}.section-add-btn{width:100%;margin-top:8px;padding:8px;font-size:.85rem}.course-block.preview{opacity:1;border:2px dashed var(--accent-primary);filter:brightness(.88);animation:pulse 1s infinite}@keyframes pulse{0%,to{filter:brightness(.88)}50%{filter:brightness(.96)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;min-height:36px;font-family:var(--font-sans);font-size:.85rem;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent-primary);color:#fff;border-radius:var(--radius-sm)}.btn-primary:hover{background:var(--accent-primary-dark)}.btn-primary:active{transform:scale(.97)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover{background:#dc2626}.btn-add{background:var(--accent-primary);color:#fff;padding:6px 16px;font-size:.85rem;border-radius:var(--radius-pill)}.btn-add:hover{background:var(--accent-primary-dark)}.btn-add.btn-added{background:var(--success);color:#d1fae5;cursor:not-allowed}.btn-icon{min-width:auto;width:auto;height:auto;padding:8px 12px;border-radius:var(--radius-sm);font-size:.85rem;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:var(--bg-secondary);border-color:var(--border-hover);transform:scale(1.05)}#theme-icon{display:flex;align-items:center;justify-content:center;line-height:0}#theme-icon svg{display:block;margin:0}.btn-edit:hover{background:var(--info);color:#fff}.btn-delete:hover{background:var(--error);color:#fff}.card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;margin-bottom:24px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.schedule-grid{display:grid;grid-template-columns:70px repeat(5,1fr);grid-template-rows:auto;gap:0;background:var(--bg-secondary);border-radius:var(--radius-sm);margin-bottom:24px;border:1px solid var(--border-color);overflow:hidden}.grid-header{background:var(--bg-tertiary);padding:12px 8px;font-family:var(--font-sans);font-weight:500;line-height:var(--leading-ui);text-align:center;font-size:.9rem;border-bottom:2px solid var(--border-color);border-left:1px solid var(--border-color)}.grid-header:first-child{border-left:none}.grid-header.time-header{color:var(--text-muted);font-size:.8rem}.grid-header.day-header{color:var(--text-primary);background:var(--bg-tertiary);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px}.day-header-name{font-family:var(--font-sans);font-weight:700;font-size:.9rem;line-height:var(--leading-ui)}.day-header-hours{font-family:var(--font-sans);font-size:.7rem;color:var(--text-muted);font-weight:500;line-height:var(--leading-ui);font-variant-numeric:tabular-nums}.time-slot{background:var(--bg-primary);padding:8px 4px;font-family:var(--font-sans);font-size:.75rem;font-weight:500;color:var(--text-muted);text-align:center;border-bottom:1px solid var(--border-color);font-variant-numeric:tabular-nums;line-height:var(--leading-ui)}.grid-cell{background:var(--bg-primary);border-left:1px solid var(--border-color);border-bottom:1px solid var(--border-color);min-height:28px}.course-block{position:relative;margin:1px;padding:6px 8px;border-radius:var(--radius-sm);font-size:.85rem;color:#fff;cursor:pointer;transition:all var(--transition-normal);border-inline-start:3px solid;overflow:visible}.course-block:hover{transform:scale(1.03);z-index:1000;box-shadow:var(--shadow-lg),0 0 0 2px #ffffff26;filter:brightness(1.1);position:relative}.course-block:hover .course-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.course-block:last-child .course-tooltip,.course-block[style*="grid-row: 14"] .course-tooltip,.course-block[style*="grid-row: 15"] .course-tooltip{top:auto;bottom:calc(100% + 8px)}.course-block:last-child .course-tooltip:before,.course-block[style*="grid-row: 14"] .course-tooltip:before,.course-block[style*="grid-row: 15"] .course-tooltip:before{bottom:auto;top:100%;border-bottom-color:transparent;border-top-color:var(--border-color)}.course-tooltip{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(-10px);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px;min-width:220px;max-width:300px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease,transform .2s ease;z-index:10000;color:var(--text-primary);font-size:.85rem;pointer-events:auto}.course-tooltip[style*="position: fixed"]{position:fixed!important}.course-tooltip[style*=max-height]{overflow:visible}.course-tooltip[style*=max-height] .course-tooltip-body{max-height:none}.course-tooltip.tooltip-compact{padding:8px 10px;font-size:.75rem;max-width:280px}.course-tooltip.tooltip-compact .course-tooltip-header{margin-bottom:6px;padding-bottom:6px}.course-tooltip.tooltip-compact .course-tooltip-title{font-size:.8rem;line-height:1.3}.course-tooltip.tooltip-compact .course-tooltip-code{font-size:.7rem}.course-tooltip.tooltip-compact .course-tooltip-body{gap:4px}.course-tooltip.tooltip-compact .course-tooltip-row{gap:6px;font-size:.75rem;line-height:1.4}.course-tooltip.tooltip-compact .course-tooltip-remove{margin-top:6px;padding:6px 10px;font-size:.75rem}.course-tooltip.tooltip-compact .course-tooltip-exam{display:none}.course-tooltip:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:8px solid transparent;border-bottom-color:var(--border-color);transition:all .2s ease}.course-tooltip.tooltip-above:before{bottom:auto;top:100%;border-bottom-color:transparent;border-top-color:var(--border-color)}.course-tooltip.tooltip-left:before{left:20px}.course-tooltip.tooltip-right:before{left:auto;right:20px;transform:translate(0)}.course-tooltip-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.course-tooltip-title{font-weight:600;color:var(--text-primary);font-size:.9rem}.course-tooltip-code{font-size:.75rem;color:var(--accent-primary);font-weight:600}.course-tooltip-body{display:flex;flex-direction:column;gap:6px}.course-tooltip-row{display:flex;align-items:center;gap:8px;color:var(--text-secondary)}.course-tooltip-row span:first-child{width:20px;text-align:center}.course-tooltip-icon svg{width:14px;height:14px;display:inline-block;vertical-align:middle}.course-tooltip-remove{width:100%;margin-top:10px;padding:8px;background:var(--error);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.8rem;cursor:pointer;transition:background .2s ease;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:6px}.course-tooltip-remove svg{width:14px;height:14px;display:inline-block;vertical-align:middle}.course-tooltip-remove:hover{background:#dc2626}.course-block-content{display:flex;flex-direction:column;gap:1px}.course-name{font-family:var(--font-text);font-weight:600;font-size:.85rem;line-height:1.3}.course-instructor,.course-time{font-family:var(--font-sans);font-size:.75rem;font-weight:500;color:#f0f0f0;line-height:var(--leading-ui);font-variant-numeric:tabular-nums}.course-section{font-family:var(--font-sans);font-size:.75rem;font-weight:500;color:#f0f0f0;line-height:var(--leading-ui);display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.course-activity{display:inline-block;padding:2px 6px;background:#ffffff38;color:#f5f5f5;border-radius:4px;font-size:.7rem;font-weight:500;text-shadow:0 0 1px rgba(0,0,0,.4),0 1px 2px rgba(0,0,0,.3)}.imported-table{width:100%;border-collapse:collapse;font-size:.9rem}.imported-table th{background:var(--bg-tertiary);color:var(--text-secondary);font-weight:500;padding:12px 16px;text-align:right;border-bottom:1px solid var(--border-color)}.imported-table td{padding:12px 16px;border-bottom:1px solid var(--border-color);vertical-align:middle}.imported-table tr:hover{background:#ffffff05}.imported-table .status-open{color:var(--success);font-weight:500}.imported-table .status-closed{color:var(--error);font-weight:500}.imported-table .time-cell{font-size:.8rem;color:var(--text-secondary)}.imported-table .action-cell{text-align:center}.imported-table .no-time{color:var(--text-muted);font-size:.8rem}.statistics-bar{display:none;align-items:center;gap:12px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:12px;font-size:.75rem;flex-wrap:wrap}@media (max-width: 768px){.statistics-bar{padding:10px 12px;font-size:.8rem;gap:10px;position:sticky;bottom:0;z-index:20;margin-top:12px;margin-bottom:0;padding-bottom:calc(10px + env(safe-area-inset-bottom));box-shadow:0 -6px 16px #00000029}.statistics-bar-icon{font-size:1.1rem}.statistics-bar-value{font-size:1rem}}.statistics-bar-item{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.statistics-bar-icon{font-size:1rem}.statistics-bar-icon svg{width:16px;height:16px;display:inline-block;vertical-align:middle}.statistics-bar-value{font-weight:600;color:var(--accent-primary)}.statistics-bar-label{color:var(--text-muted);font-size:.75rem}.statistics-bar-separator{width:1px;height:16px;background:var(--border-color);margin:0 4px}.activity-badge{display:inline-block;padding:4px 10px;background:var(--bg-tertiary);border-radius:9999px;font-size:.75rem;color:var(--text-secondary)}.courses-accordion{display:flex;flex-direction:column;gap:8px}.course-group{border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.course-group-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-tertiary);cursor:pointer;transition:background .2s ease}.course-group-header:hover{background:#ffffff0d}.course-group-info{display:flex;align-items:center;gap:12px}.course-group-toggle{color:var(--text-muted);font-size:.8rem;transition:transform .2s ease}.course-group-code{font-weight:600;color:var(--accent-primary);font-size:.95rem}.course-group-name{color:var(--text-primary);font-weight:500}.course-group-count{color:var(--text-muted);font-size:.8rem;background:var(--bg-secondary);padding:4px 10px;border-radius:9999px}.course-sections{max-height:500px;overflow:hidden;transition:max-height .3s ease}.course-sections.collapsed{max-height:0}.course-sections .imported-table{margin:0}.course-sections .imported-table th{background:var(--bg-secondary)}.exam-calendar-container{width:100%}.exam-week-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:16px;padding:8px 0}.exam-week-nav-btn{width:32px;height:32px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0}.exam-week-nav-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-color);color:var(--text-primary)}.exam-week-nav-btn:disabled{color:var(--text-disabled);cursor:default}.exam-week-nav-btn svg{width:18px;height:18px}.exam-week-label{font-size:14px;font-weight:600;color:var(--text-primary);min-width:120px;text-align:center}.exam-calendar-wrapper{border:1px solid var(--exam-calendar-border);border-radius:14px;overflow-x:auto;overflow-y:hidden;background:var(--exam-calendar-bg);margin-bottom:16px}.exam-calendar-header{display:grid;grid-template-columns:repeat(5,1fr);background:var(--exam-header-bg);border-bottom:1px solid var(--exam-calendar-border);min-width:500px}.exam-calendar-header-cell{padding:14px 8px;text-align:center;border-left:1px solid var(--exam-calendar-border);min-width:0}.exam-calendar-header-cell:first-child{border-left:none}.exam-day-name{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.exam-calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);min-width:500px}.exam-day-cell{min-height:140px;border-left:1px solid var(--exam-calendar-border);background:var(--exam-day-bg-empty);display:flex;flex-direction:column}.exam-day-cell:first-child{border-left:none}.exam-day-cell.has-exam{background:var(--exam-day-bg-active)}.exam-day-number{padding:10px 12px 6px;display:flex;align-items:center;gap:6px}.exam-day-number-text{font-size:20px;font-weight:700;color:var(--text-tertiary);line-height:1}.exam-day-cell.has-exam .exam-day-number-text{color:var(--blue)}.exam-day-dot{width:6px;height:6px;border-radius:50%;background:var(--blue);flex-shrink:0}.exam-day-content{flex:1;padding:4px 8px 10px;display:flex;flex-direction:column;gap:6px}.exam-chip{background:var(--exam-chip-bg);border:1px solid var(--exam-chip-border);border-radius:10px;padding:12px;cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.exam-chip:hover{background:var(--exam-chip-hover-bg);border-color:var(--exam-chip-hover-border);transform:translateY(-2px);box-shadow:0 4px 12px #0071e314}.exam-chip+.exam-chip{margin-top:8px}.exam-chip-code{font-size:13px;font-weight:700;color:var(--text-blue);letter-spacing:.5px;line-height:1}.exam-chip-name{font-size:14px;font-weight:600;color:var(--text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.exam-chip-time{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:6px;line-height:1}.exam-chip-time:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--text-muted)}.exam-chip-period{background:var(--bg-default);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:6px;font-size:11px;padding:4px 10px;display:inline-flex;font-weight:500}.exam-popover{position:absolute;z-index:50;background:var(--exam-popover-bg);border:1px solid var(--exam-popover-border);border-radius:14px;padding:16px;width:220px;box-shadow:var(--exam-popover-shadow);opacity:0;transform:translateY(4px);transition:opacity .18s ease,transform .18s ease;pointer-events:none}.exam-popover.visible{opacity:1;transform:translateY(0);pointer-events:all}.exam-popover:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:6px solid var(--exam-popover-bg)}.exam-popover:before{content:"";position:absolute;bottom:-7px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:6px solid var(--exam-popover-border)}.exam-popover.above:after{bottom:auto;top:-6px;border-top:none;border-bottom:6px solid var(--exam-popover-bg)}.exam-popover.above:before{bottom:auto;top:-7px;border-top:none;border-bottom:6px solid var(--exam-popover-border)}.exam-popover-header{margin-bottom:10px}.exam-popover-code{background:var(--bg-active);color:var(--text-blue);border-radius:6px;font-size:10px;padding:2px 8px;display:inline-block;margin-bottom:6px}.exam-popover-name{font-size:14px;font-weight:600;color:var(--text-primary);line-height:1.3}.exam-popover-divider{height:1px;background:var(--border-subtle);margin:10px 0}.exam-popover-detail{display:flex;flex-direction:column;gap:8px}.exam-popover-row{display:flex;justify-content:space-between;align-items:center}.exam-popover-label{font-size:11px;color:var(--text-tertiary);min-width:60px;text-align:right}.exam-popover-value{font-size:12px;color:var(--text-primary);font-weight:500;text-align:left}.exam-popover-footer{font-size:11px;color:var(--text-disabled);text-align:center;padding-top:8px;border-top:1px solid var(--border-subtle);margin-top:8px}.exam-card-undefined{background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:10px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;margin-top:10px;cursor:pointer;transition:all .15s ease;position:relative}.exam-card-undefined:hover{background:var(--bg-active)}.exam-card-undefined-content{display:flex;align-items:center;gap:8px}.exam-card-undefined-code{background:var(--bg-elevated);color:var(--text-blue);border-radius:6px;font-size:10px;padding:2px 6px;font-weight:600}.exam-card-undefined-name{font-size:12px;color:var(--text-secondary)}.exam-card-undefined-badge{background:var(--bg-elevated);color:var(--text-disabled);border-radius:6px;font-size:10px;padding:2px 8px;white-space:nowrap}.exam-detail-section{margin-top:16px;border-top:1px solid var(--border-subtle);padding-top:14px}.exam-detail-label{font-size:11px;color:var(--text-tertiary);margin-bottom:10px}.exam-table{width:100%;border-collapse:collapse;font-size:.9rem}.exam-table th{background:transparent;color:var(--text-tertiary);font-weight:500;font-size:10px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle);text-align:right}.exam-table td{padding:8px 0;border-bottom:1px solid var(--border-subtle);font-size:11px;color:var(--text-secondary)}.exam-table td:first-child{color:var(--text-primary)}.exam-table td.exam-code{color:var(--text-blue);font-weight:500}.exam-table td.empty-cell{color:var(--text-disabled);text-align:center}.exam-table td.day-cell,.exam-table td.time-cell{color:var(--text-primary);font-weight:500}.section-num-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.section-num-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:10px;padding:10px 14px;transition:all .15s ease;overflow:hidden;width:100%}.section-num-card:hover{background:var(--bg-active);border-color:var(--border-color)}.section-num-card__info{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%}.section-num-card__code{background:var(--bg-active);color:var(--text-blue);border-radius:5px;font-size:10px;font-weight:700;padding:2px 7px;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.section-num-card__name{font-size:12px;font-weight:500;color:var(--text-primary);line-height:1.3;text-align:center;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.section-num-card__badges{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;width:100%}.section-num-badge{display:flex;align-items:center;gap:5px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:6px;padding:3px 8px}.section-num-badge__label{font-size:10px;color:var(--text-tertiary);font-weight:500}.section-num-badge__value{font-size:12px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.copy-sections-row{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:16px}.copy-sections-row .btn-icon svg{width:14px;height:14px}.search-wrapper{position:relative;margin-bottom:16px}.search-input{width:100%;max-width:300px;padding:10px 40px 10px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-arabic);font-size:.9rem;transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.search-input:hover{border-color:var(--border-hover);background:var(--bg-secondary);border-radius:var(--radius-md)}.search-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a,var(--shadow-sm);background:var(--bg-secondary);border-radius:var(--radius-md)}.search-input::-moz-placeholder{color:var(--text-muted)}.search-input::placeholder{color:var(--text-muted)}input[type=text],input[type=number],input[type=email],input[type=password],input[type=search],textarea{padding:12px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-arabic);font-size:.95rem;transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}input[type=text]:hover,input[type=number]:hover,input[type=email]:hover,input[type=password]:hover,input[type=search]:hover,textarea:hover{border-color:var(--border-hover);background:var(--bg-secondary);border-radius:var(--radius-sm)}input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #0071e326,var(--shadow-sm);background:var(--bg-secondary);border-radius:var(--radius-sm)}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--text-muted)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}select{padding:10px 40px 10px 14px;background:var(--bg-tertiary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-arabic);font-size:.9rem;cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-sm);appearance:none;-webkit-appearance:none;-moz-appearance:none;text-align:right;direction:rtl}select:hover{border-color:var(--border-hover);background-color:var(--bg-secondary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;border-radius:var(--radius-md)}select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #0071e326,var(--shadow-sm);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230071e3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;border-radius:var(--radius-md)}.collapsible{overflow:hidden;transition:all var(--transition-slow)}.collapsible.collapsed .collapsible-content{display:none}.collapsible-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:16px;background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:12px}.collapsible-header:hover{background:#ffffff0d;border-radius:var(--radius-md)}.chevron-icon{transition:transform .2s ease;color:var(--text-secondary);flex-shrink:0}.collapsible.collapsed .chevron-icon{transform:rotate(180deg)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:8px}.empty-state.small{padding:28px 16px}.empty-icon{font-size:2.8rem;margin-bottom:8px;color:var(--text-muted);display:block;line-height:1}.empty-icon svg{width:48px;height:48px;color:var(--text-muted)}.empty-icon--symbol{font-size:48px;color:var(--text-muted);margin-bottom:8px;display:block}.empty-text{font-size:.95rem;font-weight:600;color:var(--text-secondary);margin-bottom:2px}.empty-subtext{font-size:.8rem;color:var(--text-secondary);max-width:200px;line-height:1.5}.schedule-grid-empty-hint{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:64px 24px;color:var(--text-muted);text-align:center}.schedule-grid-empty-hint .empty-icon--symbol{font-size:56px;color:var(--text-disabled);margin-bottom:4px}.schedule-grid-empty-hint .empty-text{font-size:1rem;color:var(--text-secondary)}.schedule-grid-empty-hint .empty-subtext{font-size:.82rem;color:var(--text-muted);max-width:240px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;transition:opacity var(--transition-normal)}.modal-overlay.modal-show{opacity:1}.modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:90%;max-width:480px;max-height:90vh;overflow-y:auto;transform:translateY(20px);transition:transform var(--transition-normal)}.modal-overlay.modal-show .modal{transform:translateY(0)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.modal-header h2{margin:0;color:var(--text-primary);font-weight:600}.btn-close{width:32px;height:32px;border-radius:50%;background:var(--bg-tertiary);border:none;color:var(--text-secondary);cursor:pointer;font-size:1.2rem;transition:all var(--transition-fast)}.btn-close:hover{background:var(--error);color:#fff}.modal-body{padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color)}.confirm-dialog{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:90%;max-width:400px;padding:24px}.confirm-dialog-header{font-size:1.1rem;font-weight:600;margin-bottom:12px}.confirm-dialog-body{color:var(--text-secondary);margin-bottom:24px}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:12px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:.9rem;color:var(--text-secondary)}.form-group input,.form-group select{width:100%;padding:12px 40px 12px 16px;background:var(--bg-tertiary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-arabic);font-size:.95rem;transition:all var(--transition-normal);box-shadow:var(--shadow-sm);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;text-align:right;direction:rtl}.form-group input:hover,.form-group select:hover{border-color:var(--border-hover);background:var(--bg-secondary);border-radius:var(--radius-md)}.form-group select:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;border-radius:var(--radius-md)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #0071e326,var(--shadow-sm);background:var(--bg-secondary);border-radius:var(--radius-md)}.form-group select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230071e3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.form-group select:disabled{opacity:1;color:var(--text-muted);cursor:not-allowed;background:var(--bg-secondary)}.form-group select option{background:var(--bg-tertiary);color:var(--text-primary)}.checkbox-label{display:flex!important;align-items:center;gap:10px;cursor:pointer;margin-bottom:0!important;padding:8px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.checkbox-label:hover{background:var(--bg-tertiary)}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer;accent-color:var(--accent-primary)}.form-group input[type=checkbox],.form-group input[type=radio]{width:auto;padding:0;background-image:none;background-color:transparent;border:none;box-shadow:none;-moz-appearance:auto;appearance:auto;-webkit-appearance:auto}.checkbox-label span{flex:1;color:var(--text-primary);font-size:.95rem}.form-hint{display:block;margin-top:6px;color:var(--text-muted);font-size:.85rem;line-height:1.4}.preference-cards{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:24px}.preference-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);position:relative}.preference-card:hover{border-color:var(--accent-primary);background:var(--bg-secondary);border-radius:var(--radius-md)}.preference-card.active{border-color:var(--accent-primary);background:var(--accent-secondary)}.preference-card-content{flex:1}.preference-card-title{font-weight:600;color:var(--text-primary);font-size:.95rem;margin-bottom:4px}.preference-card-desc{color:var(--text-secondary);font-size:.85rem}.preference-card-check{width:24px;height:24px;border-radius:50%;background:var(--bg-primary);border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;color:transparent;flex-shrink:0;transition:all var(--transition-fast)}.preference-card-check svg{width:12px;height:12px;stroke:transparent;transition:stroke var(--transition-fast)}.preference-card.active .preference-card-check{background:var(--accent-primary);border-color:var(--accent-primary)}.preference-card.active .preference-card-check svg{stroke:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.toast-container{position:fixed;top:84px;right:16px;z-index:10050;display:flex;flex-direction:column;gap:10px;width:auto;max-width:calc(100vw - 32px);align-items:flex-end;pointer-events:none}.toast{position:relative;font-family:var(--font-sans);background:color-mix(in srgb,var(--bg-secondary) 96%,var(--bg-tertiary) 4%);border:1px solid color-mix(in srgb,var(--border-color) 94%,var(--accent-primary) 6%);border-radius:14px;padding:12px 15px;width:-moz-fit-content;width:fit-content;min-width:220px;max-width:100%;box-shadow:var(--shadow-lg);transform:translate(24px) scale(.98);opacity:0;transition:transform .24s ease,opacity .24s ease;pointer-events:auto}.toast.toast-show{transform:translate(0) scale(1);opacity:1}.toast.toast-hide{transform:translate(16px) scale(.98);opacity:0}.toast-content{display:flex;align-items:flex-start;gap:10px}.toast-icon{width:24px;height:24px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid transparent}.toast-icon svg{width:14px;height:14px}.toast-success .toast-icon{background:color-mix(in srgb,var(--success) 18%,transparent);border-color:color-mix(in srgb,var(--success) 55%,transparent);color:var(--success)}.toast-error .toast-icon{background:color-mix(in srgb,var(--error) 18%,transparent);border-color:color-mix(in srgb,var(--error) 55%,transparent);color:var(--error)}.toast-warning .toast-icon{background:color-mix(in srgb,var(--warning) 18%,transparent);border-color:color-mix(in srgb,var(--warning) 55%,transparent);color:var(--warning)}.toast-info .toast-icon{background:color-mix(in srgb,var(--info) 18%,transparent);border-color:color-mix(in srgb,var(--info) 55%,transparent);color:var(--info)}.toast-message{flex:1;font-family:var(--font-sans);font-size:1rem;line-height:1.45;color:var(--text-primary);text-align:right}.versions-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.version-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-normal)}.version-item:hover{border-color:var(--accent-primary);background:var(--bg-secondary);border-radius:var(--radius-md)}.version-info{flex:1}.version-name{font-weight:600;color:var(--text-primary);margin-bottom:4px}.version-meta{font-size:.85rem;color:var(--text-secondary)}.version-actions{display:flex;gap:8px}.btn-sm{padding:6px 12px;font-size:.85rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease forwards}@media (max-width: 1024px){.container{padding:16px}.builder-bottom-grid{grid-template-columns:1fr}.main-layout{flex-direction:column;gap:16px}.sections-sidebar{width:100%;max-height:none}}@media (max-width: 768px){html,body,#app,.app-container,.page-container{overflow-x:hidden}input,select,textarea{font-size:16px!important}button,[role=button],select,.btn,.toolbar-btn,.toolbar-btn-icon,.gpa-remove-btn,.app-header__hamburger,.app-header__theme-btn,.mobile-nav-drawer__close{min-width:44px;min-height:44px}.container{padding:12px}.header{padding:12px 16px}.header-content{gap:12px}h1.logo{font-size:2rem}.header-actions{flex-wrap:wrap;gap:8px}.header-actions .btn{flex:1 1 calc(50% - 4px);min-width:120px;padding:10px 12px;font-size:.85rem}.builder-action-bar{padding:10px 12px;gap:6px}.builder-action-bar .btn{flex:1 1 calc(50% - 3px);min-width:100px;padding:10px 12px;font-size:.8rem}.builder-toolbar{padding:8px 12px;gap:8px}.toolbar-btn{padding:6px 10px;font-size:.8rem}.toolbar-btn .material-symbols-outlined{font-size:16px}.toolbar-btn-label{display:none!important}.toolbar-btn-bookmarklet:after{display:none}.toolbar-divider{display:none}.course-tabs-bar{padding:8px 12px;flex-direction:column;gap:8px;align-items:stretch}.course-search-input{width:100%}.course-tabs{max-height:none;overflow-x:hidden;overflow-y:visible;flex-wrap:wrap;padding:4px 0;width:100%;min-width:0;gap:6px}.course-tabs .empty-text{width:100%;padding:12px 8px;text-align:center;white-space:normal;word-wrap:break-word;word-break:break-word;line-height:1.6;font-size:.85rem;display:block;box-sizing:border-box}.course-tab{flex-shrink:1;flex-grow:0;padding:8px 12px;font-size:.8rem;min-width:-moz-fit-content;min-width:fit-content}.main-layout{padding:12px;gap:16px}.schedule-section{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x}.sections-sidebar{width:100%;max-height:50vh}.sidebar-course.expanded .sidebar-course-sections{max-height:40vh}.schedule-grid{min-width:600px;font-size:.7rem;direction:rtl}.schedule-grid,.exam-calendar-wrapper{touch-action:pan-x}.grid-header{padding:10px 6px;font-size:.8rem}.time-slot{padding:6px 3px;font-size:.7rem}.course-block{padding:4px 5px;font-size:.7rem;border-inline-start-width:2px}.course-name{font-size:.75rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-instructor,.course-time,.course-section{font-size:.65rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-block.active .course-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.time-slot,.grid-header.time-header{position:sticky;right:0;z-index:3;background:var(--bg-primary)}.grid-header.time-header{z-index:4;background:var(--bg-tertiary)}.sections-sidebar{width:100%;max-height:400px}.sidebar-course-sections-inner{grid-template-columns:1fr;gap:8px}.section-card{padding:12px}.form-row{grid-template-columns:1fr}.imported-table{font-size:.8rem}.imported-table th,.imported-table td{padding:8px}.card{padding:16px}.btn{padding:10px 16px;font-size:.9rem;min-height:44px}}@media (max-width: 640px){.header{padding:10px 12px}h1.logo{font-size:1.75rem;letter-spacing:1px}h1{font-size:1.1rem}.header-badge{font-size:.65rem;padding:3px 6px}.header-actions{gap:6px}.header-actions .btn{flex:1 1 100%;padding:12px 14px;font-size:.85rem;min-height:44px}.builder-action-bar{padding:8px 10px;gap:6px}.builder-action-bar .btn{flex:1 1 100%;padding:10px 12px;font-size:.8rem;min-height:44px}.course-tabs-bar{padding:6px 10px}.course-search-input{font-size:.75rem;padding:6px 10px}.course-tabs .empty-text{padding:10px 6px;font-size:.8rem;line-height:1.5}.course-tab{padding:6px 10px;font-size:.75rem}.main-layout{padding:8px;gap:12px}.schedule-grid{grid-template-columns:45px repeat(5,minmax(80px,1fr));min-width:500px;font-size:.65rem}.grid-header{padding:8px 4px;font-size:.7rem}.day-header-name{font-size:.75rem}.day-header-hours{font-size:.6rem}.time-slot{padding:5px 2px;font-size:.65rem}.grid-cell{min-height:24px}.course-block{padding:3px 4px;font-size:.65rem}.course-name{font-size:.7rem}.course-instructor,.course-time,.course-section{font-size:.6rem}.course-activity{padding:1px 4px;font-size:.6rem}.sections-sidebar{max-height:45vh}.sidebar-course.expanded .sidebar-course-sections{max-height:35vh}.sidebar-header{padding:12px}.sidebar-header h3{font-size:.95rem}.sidebar-hint{font-size:.7rem}.section-card{padding:10px}.section-number{font-size:1rem}.section-card-body{font-size:.75rem}.section-add-btn{padding:10px;font-size:.85rem;min-height:44px;width:100%}.card{padding:12px;margin-bottom:16px}.course-tab{min-height:40px;touch-action:manipulation}.sidebar-course-header{min-height:48px;padding:12px}.section-card,.course-block{touch-action:manipulation}.exam-table{font-size:.8rem}.exam-table th,.exam-table td{padding:8px 6px}.section-num-card{padding:10px 12px}.section-num-list{grid-template-columns:repeat(2,1fr)}.card-title{font-size:1rem}.btn{padding:10px 14px;font-size:.85rem;min-height:44px}.modal{width:95%;max-width:100%;margin:20px}.modal-header,.modal-body{padding:16px}.modal-footer{padding:12px 16px;flex-direction:column;gap:8px}.modal-footer .btn{width:100%}.toast-container{top:74px;right:12px;width:auto;max-width:calc(100vw - 24px);align-items:flex-end}.toast{width:-moz-fit-content;width:fit-content;min-width:min(220px,calc(100vw - 24px));max-width:min(92vw,420px)}}.btn-accent{background:#1e3a5f;color:#fff;border:none}.btn-accent:hover{background:#1e40af}.bookmarklet-draggable{text-decoration:none;cursor:grab;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:6px}.bookmarklet-icon{font-size:1.1em;line-height:1}.bookmarklet-text{font-weight:500}.bookmarklet-draggable:active{cursor:grabbing;transform:scale(.98)}.bookmarklet-draggable:hover{transform:translateY(-2px)}.bookmarklet-draggable:before{content:"👆";margin-left:4px;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.bookmarklet-draggable:after{content:"اسحبني إلى شريط الإشارات";position:absolute;bottom:-35px;right:50%;transform:translate(50%);font-size:.7rem;color:var(--text-muted);white-space:nowrap;opacity:0;transition:opacity var(--transition-normal);pointer-events:none;background:var(--bg-tertiary);padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-color);z-index:1000}.bookmarklet-draggable:hover:after{opacity:1}@media (max-width: 768px){.bookmarklet-draggable:after{display:none}.bookmarklet-draggable{font-size:.85rem;padding:10px 16px}}.extension-modal{max-width:500px;width:90%}.extension-modal .modal-close{width:36px;height:36px;border-radius:var(--radius-md);background:#e5e7eb;border:1px solid rgba(0,0,0,.1);color:#1f2937;cursor:pointer;font-size:1.1rem;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);box-shadow:0 1px 2px #0000001a}.extension-modal .modal-close:hover{background:#d1d5db;box-shadow:0 2px 4px #00000026;transform:scale(1.05)}.extension-modal .modal-close:active{transform:scale(.98)}[data-theme=light] .extension-modal .modal-close{background:#f3f4f6;border-color:#00000026;color:#374151}[data-theme=light] .extension-modal .modal-close:hover{background:#e5e7eb}.extension-steps{display:flex;flex-direction:column;gap:20px}.step{display:flex;gap:16px;align-items:flex-start}.step-number{width:36px;height:36px;border-radius:50%;background:var(--accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.step-content{flex:1}.step-content h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}.step-content p{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.code-block{display:block;background:var(--bg-tertiary);padding:10px 14px;border-radius:var(--radius-sm);font-family:Monaco,Consolas,monospace;font-size:.85rem;color:#60a5fa;margin-top:8px;border:1px solid var(--border-color);direction:ltr;text-align:left}.code-block.code-copy{cursor:pointer;transition:all .2s ease}.code-block.code-copy:hover{background:var(--bg-secondary);border-color:var(--accent-primary);color:var(--accent-primary);transform:scale(1.02)}.tutorial-modal{max-width:900px;width:90%}.tutorial-modal .modal-close{width:36px;height:36px;border-radius:var(--radius-md);background:#e5e7eb;border:1px solid rgba(0,0,0,.1);color:#1f2937;cursor:pointer;font-size:1.1rem;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);box-shadow:0 1px 2px #0000001a}.tutorial-modal .modal-close:hover{background:#d1d5db;box-shadow:0 2px 4px #00000026;transform:scale(1.05)}.tutorial-modal .modal-close:active{transform:scale(.98)}[data-theme=light] .tutorial-modal .modal-close{background:#f3f4f6;border-color:#00000026;color:#374151}[data-theme=light] .tutorial-modal .modal-close:hover{background:#e5e7eb}.tutorial-video-container{width:100%;background:var(--bg-tertiary);border-radius:var(--radius-md);padding:8px;display:flex;justify-content:center;align-items:center}.tutorial-video-container video{max-height:70vh;background:#000}.tutorial-description{font-size:.9rem;line-height:1.6}.mobile-warning{display:none;position:fixed;font-family:var(--font-sans);bottom:0;left:0;right:0;background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border-color);z-index:99999;padding:16px;box-shadow:0 -4px 12px #0000004d;transform:translateY(100%);transition:transform .3s ease}.mobile-warning.show{transform:translateY(0)}.mobile-warning-content{text-align:center;max-width:100%}.mobile-warning-icon{font-size:2rem;margin-bottom:12px}.mobile-warning-icon svg{width:48px;height:48px}.mobile-warning h2{font-size:1.1rem;color:var(--text-primary);margin-bottom:8px;font-weight:600}.mobile-warning p{color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:16px}.mobile-warning .btn{width:100%;padding:12px 20px;font-size:.9rem;min-height:44px}@media (max-width: 768px){.mobile-warning{display:block}.mobile-warning.dismissed{display:none}}.coming-soon-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:99999;display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .5s ease,visibility .5s ease;visibility:visible;padding:24px;overflow-y:auto}.coming-soon-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.coming-soon-container{display:flex;align-items:center;justify-content:center;gap:64px;max-width:1400px;width:100%}.coming-soon-preview{flex:1;width:100%;max-width:650px;position:relative;perspective:1000px}.preview-wrapper{position:relative;width:100%}.preview-gradient-bg{display:none}.preview-card{position:relative;width:100%;aspect-ratio:4 / 3;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:1.5rem;overflow:hidden;transform:rotateY(0) rotateX(0)}.preview-overlay{display:none}.browser-header{height:56px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;padding:0 24px;gap:8px;background:#ffffff0d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-theme=light] .browser-header{background:#f8fafccc}.browser-dots{display:flex;gap:8px}.browser-dot{width:12px;height:12px;border-radius:50%}.browser-dot-red{background:#f87171}.browser-dot-amber{background:#fbbf24}.browser-dot-emerald{background:#34d399}.browser-url{flex:1;text-align:center;font-size:.75rem;font-family:Monaco,Consolas,monospace;color:var(--text-muted)}.browser-icon{color:var(--text-muted);font-size:16px}.preview-content{display:flex;flex:1;padding:20px;gap:20px;height:calc(100% - 56px);overflow:hidden;background-image:radial-gradient(circle,var(--border-color) 1px,transparent 1px);background-size:20px 20px;background-position:0 0,10px 10px;color:var(--text-secondary)}.preview-sidebar{width:33.333%;display:flex;flex-direction:column;gap:12px;padding-right:4px}.preview-sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.course-card{padding:16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;cursor:grab;transition:border-color .2s ease}.course-card:active{cursor:grabbing}.course-card:hover{border-color:var(--accent-primary)}.course-card-placeholder{color:var(--text-muted);border-style:dashed}.course-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.course-badge{height:12px;border-radius:9999px}.course-badge-blue{width:64px;background:#3b82f633}.course-badge-green{width:64px;background:#22c55e33}.drag-icon{color:var(--text-muted);font-size:16px}.skeleton{background:var(--bg-tertiary);border-radius:4px;height:12px}[data-theme=dark] .skeleton{background:#ffffff1a}.skeleton-square{width:16px;height:16px}.skeleton-w-1-2{width:50%}.skeleton-w-3-4{width:75%}.skeleton-w-2-3{width:66.666%}.skeleton-w-16{width:64px}.skeleton-w-10{width:40px}.skeleton-text{margin-bottom:8px}.skeleton-text:last-child{margin-bottom:0}.preview-calendar{flex:1;background:var(--bg-primary);border-radius:.75rem;border:1px solid var(--border-color);padding:16px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;height:100%;background:var(--border-color);border:1px solid var(--border-color);border-radius:.5rem;overflow:hidden}.calendar-day{background:var(--bg-secondary);position:relative}[data-theme=dark] .calendar-day{background:#15171c}.day-label{position:absolute;right:0;text-align:center;font-size:10px;color:var(--text-muted)}.calendar-block{position:absolute;left:4px;right:4px;padding:8px;border-radius:4px;border:1px solid}.calendar-block-blue{top:48px;height:60px;background:#3b82f61a;border-color:#3b82f64d}.calendar-block-green{top:120px;height:60px;background:#22c55e1a;border-color:#22c55e4d}.calendar-block-purple{top:192px;height:60px;background:#a855f71a;border-color:#a855f74d}.calendar-block-amber{top:96px;bottom:64px;background:#fbbf241a;border-color:#fbbf244d}.block-line{width:100%;height:6px;border-radius:2px;margin-bottom:4px}.block-line-full{background:#3b82f666}.block-line-partial{width:66.666%;background:#3b82f633}.calendar-block-amber .block-line-full{background:#fbbf2466}.calendar-block-amber .block-line-partial{background:#fbbf2433}.calendar-block-green .block-line-full{background:#22c55e66}.calendar-block-green .block-line-partial{background:#22c55e33}.calendar-block-purple .block-line-full{background:#a855f766}.calendar-block-purple .block-line-partial{background:#a855f733}.floating-notification{position:absolute;top:33.333%;right:25%;width:160px;background:var(--bg-secondary);border-radius:.75rem;box-shadow:0 10px 25px #3b82f64d;border-left:4px solid var(--accent-primary);padding:12px;display:flex;flex-direction:column;gap:8px;z-index:30;animation:floatNotification 3s ease-in-out infinite}[data-theme=dark] .floating-notification{background:#1f222b}.notification-content{display:flex;align-items:center;gap:8px}.notification-icon-wrapper{width:32px;height:32px;border-radius:.5rem;background:#3b82f61a;color:var(--accent-primary);display:flex;align-items:center;justify-content:center}.notification-icon{font-size:16px}.notification-text{flex:1;min-width:0}.notification-course-code{font-size:11px;font-weight:600;color:var(--accent-primary);margin-bottom:2px;line-height:1.2}.notification-course-name{font-size:10px;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.notification-badge{font-size:10px;color:#10b981;display:flex;align-items:center;gap:4px;background:#10b9811a;padding:4px 8px;border-radius:4px;width:-moz-fit-content;width:fit-content}.notification-check{font-size:10px}.notification-arrow{position:absolute;bottom:-16px;left:-16px;width:32px;height:32px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2))}.coming-soon-text{flex:0 0 auto;text-align:right;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;min-width:300px}.coming-soon-logo{font-family:"KOMethlama",var(--font-sans);font-size:5rem;font-weight:700;color:var(--accent-primary);letter-spacing:2px;margin-bottom:24px}.coming-soon-title{font-size:3rem;font-weight:600;color:var(--text-primary);line-height:1.3}.coming-soon-emoji{display:inline-block}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes floatNotification{0%,to{transform:translateY(0) translate(0)}50%{transform:translateY(-10px) translate(5px)}}@media (max-width: 1024px){.coming-soon-container{flex-direction:column;gap:48px}.coming-soon-preview{max-width:100%}.coming-soon-text{text-align:center;min-width:auto}.preview-card{transform:rotateY(0) rotateX(0)}}@media (max-width: 768px){.coming-soon-container{gap:32px}.coming-soon-logo{font-size:3.5rem}.coming-soon-title{font-size:2rem}.preview-card{aspect-ratio:3 / 2}.floating-notification{width:140px;padding:10px}}@media (max-width: 640px){.coming-soon-overlay{padding:16px}.coming-soon-container{gap:24px}.coming-soon-logo{font-size:2.5rem}.coming-soon-title{font-size:1.75rem}.preview-card{aspect-ratio:4 / 3}.preview-content{padding:12px;gap:12px}.preview-sidebar{width:40%}.floating-notification{width:120px;padding:8px;font-size:8px}}.gpa-page{min-height:calc(100vh - 80px);padding:24px 16px 48px;background:var(--bg-primary)}.gpa-container{max-width:700px;margin:0 auto}.gpa-page-header{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:32px}.gpa-page-icon{font-size:32px;color:var(--accent-primary)}.gpa-page-title{font-family:var(--font-display);font-size:1.75rem;font-weight:700;line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-feature-settings:"salt" 1;color:var(--text-primary);margin:0}.gpa-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:16px;overflow:hidden}.gpa-card-header{display:flex;align-items:center;gap:10px;padding:16px 20px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.gpa-card-header .material-symbols-outlined{font-size:22px;color:var(--accent-primary)}.gpa-card-header h2{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.gpa-card-hint{font-size:.8rem;color:var(--text-muted);font-weight:400}.gpa-card-body{padding:20px}.gpa-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gpa-form-group{display:flex;flex-direction:column;gap:6px}.gpa-form-group label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.gpa-form-group input{padding:10px 14px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-arabic);font-size:.9rem;transition:all var(--transition-fast)}.gpa-form-group input:hover{border-color:var(--border-hover)}.gpa-form-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #3b82f61a}.gpa-form-group input::-moz-placeholder{color:var(--text-muted)}.gpa-form-group input::placeholder{color:var(--text-muted)}.gpa-form-group input[type=number]::-webkit-inner-spin-button,.gpa-form-group input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.gpa-form-group input[type=number]{-moz-appearance:textfield}.gpa-courses-header{display:grid;grid-template-columns:1fr 80px 100px 40px;gap:12px;padding:0 4px 12px;font-size:.8rem;font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border-color);margin-bottom:12px}.gpa-courses-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.gpa-course-row{display:grid;grid-template-columns:1fr 80px 100px 40px;gap:12px;align-items:center;padding:8px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.gpa-course-row input,.gpa-course-row select{padding:8px 12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-arabic);font-size:.85rem;transition:all var(--transition-fast)}.gpa-course-row input:focus,.gpa-course-row select:focus{outline:none;border-color:var(--accent-primary)}.gpa-course-row select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 10px center;padding-left:32px}.gpa-remove-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.gpa-remove-btn:hover{background:var(--error);border-color:var(--error);color:#fff}.gpa-remove-btn .material-symbols-outlined{font-size:18px}.gpa-add-btn{width:100%;padding:12px;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:2px dashed var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--font-arabic);font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.gpa-add-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#3b82f60d}.gpa-add-btn .material-symbols-outlined{font-size:20px}.gpa-results-card{border-top:3px solid var(--accent-primary)}.gpa-results{display:flex;align-items:center;justify-content:center;padding:24px;gap:48px}.gpa-result-label{font-family:var(--font-sans);font-size:.9rem;color:var(--text-secondary);font-weight:500;line-height:var(--leading-ui)}.landing-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2, 8px);padding:var(--spacing-3, 12px) var(--spacing-6, 24px);font-family:inherit;font-size:var(--font-size-sm, .875rem);font-weight:600;border:none;border-radius:var(--radius-md, 12px);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.landing-btn-primary{background:var(--accent-primary, #3b82f6);color:#fff}.landing-btn-primary:hover{background:var(--accent-primary-hover, #60a5fa);transform:translateY(-2px)}.landing-btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.landing-btn-secondary:hover{background:var(--bg-secondary);border-color:var(--border-hover);transform:translateY(-2px)}.landing-btn-sm{padding:6px 12px!important;min-height:32px!important;font-size:.8rem!important}.gpa-result-value{font-family:var(--font-sans);font-size:2.5rem;font-weight:700;line-height:var(--leading-ui);color:var(--text-primary);font-variant-numeric:tabular-nums}.gpa-result-primary{color:var(--accent-primary)}.gpa-result-divider{width:1px;height:60px;background:var(--border-color)}@media (max-width: 640px){.gpa-page{padding:16px 12px 32px}.gpa-page-header{margin-bottom:24px}.gpa-page-icon{font-size:28px}.gpa-page-title{font-size:1.5rem}.gpa-form-row{grid-template-columns:1fr;gap:12px}.gpa-courses-header{grid-template-columns:1fr 60px 80px 32px;gap:8px;font-size:.75rem}.gpa-course-row{grid-template-columns:1fr 60px 80px 32px;gap:8px;padding:6px}.gpa-course-row input,.gpa-course-row select{padding:6px 8px;font-size:.8rem}.gpa-results{flex-direction:column;gap:24px;padding:20px}.gpa-result-divider{width:80px;height:1px}.gpa-result-value{font-size:2rem}}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-\[hsl\(var\(--muted-foreground\)\)\]::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-\[hsl\(var\(--muted-foreground\)\)\]::placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.first\:border-l-0:first-child{border-left-width:0px}.last\:border-0:last-child{border-width:0px}.hover\:scale-\[1\.03\]:hover{--tw-scale-x: 1.03;--tw-scale-y: 1.03;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[hsl\(var\(--primary-shadcn\)\)\]\/35:hover{border-color:hsl(var(--primary-shadcn) / .35)}.hover\:bg-\[\#FF453A\]\/10:hover{background-color:#ff453a1a}.hover\:bg-\[hsl\(var\(--accent\)\)\]:hover{background-color:hsl(var(--accent))}.hover\:bg-\[hsl\(var\(--primary-shadcn\)\)\]\/10:hover{background-color:hsl(var(--primary-shadcn) / .1)}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-emerald-400\/10:hover{background-color:#34d3991a}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-rose-500\/5:hover{background-color:#f43f5e0d}.hover\:bg-rose-700:hover{--tw-bg-opacity: 1;background-color:rgb(190 18 60 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-\[\#FF453A\]:hover{--tw-text-opacity: 1;color:rgb(255 69 58 / var(--tw-text-opacity, 1))}.hover\:text-\[hsl\(var\(--foreground\)\)\]:hover{color:hsl(var(--foreground))}.hover\:text-\[hsl\(var\(--primary-shadcn\)\)\]:hover{color:hsl(var(--primary-shadcn))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-emerald-400:hover{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-rose-300:hover{--tw-text-opacity: 1;color:rgb(253 164 175 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-current:hover{text-decoration-color:currentColor}.focus\:border-\[hsl\(var\(--primary-shadcn\)\)\]\/40:focus{border-color:hsl(var(--primary-shadcn) / .4)}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-rose-500\/40:focus{--tw-ring-color: rgb(244 63 94 / .4)}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-muted:disabled{background-color:hsl(var(--muted))}.disabled\:text-\[hsl\(var\(--muted-foreground\)\)\]:disabled{color:hsl(var(--muted-foreground))}.disabled\:text-muted-foreground:disabled{color:hsl(var(--muted-foreground))}.disabled\:opacity-100:disabled{opacity:1}.group:focus-within .group-focus-within\:text-\[hsl\(var\(--primary-shadcn\)_\/_0\.6\)\]{color:hsl(var(--primary-shadcn) / .6)}.group\/row:hover .group-hover\/row\:visible{visibility:visible}.group:hover .group-hover\:brightness-125{--tw-brightness: brightness(1.25);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[disabled\]\:text-muted-foreground[data-disabled],.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[disabled\]\:opacity-100[data-disabled]{opacity:1}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}@media (min-width: 640px){.sm\:col-span-1{grid-column:span 1 / span 1}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:mr-auto{margin-right:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-end{align-items:flex-end}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}}@media (min-width: 768px){.md\:p-8{padding:2rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 1024px){.lg\:w-\[35\%\]{width:35%}.lg\:w-\[40\%\]{width:40%}.lg\:w-\[60\%\]{width:60%}.lg\:w-\[65\%\]{width:65%}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}body.landing-route .app-header{display:none!important}body.landing-route section[id]{scroll-margin-top:24px}body.landing-route .page-container{background:#080808;padding-bottom:0}.landing-page--editorial{--landing-accent: #0071e3;--landing-text: #ffffff;--landing-muted: #949494;--landing-line: rgba(255, 255, 255, .07);--landing-surface: #0f0f0f;--landing-amber-glow: rgba(255, 180, 50, .12);position:relative;min-height:100vh;overflow-x:hidden;scroll-behavior:smooth;font-family:var(--font-text);font-weight:400;background:#080808;color:var(--landing-text)}.landing-page--editorial *{font-family:inherit}.landing-page--editorial .landing-section-container{max-width:1120px;margin:0 auto;padding:0 24px}.landing-page--editorial:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 80% 50% at 85% 8%,var(--landing-amber-glow) 0%,transparent 55%);opacity:1}.landing-page--editorial>*{position:relative;z-index:1}.landing-nav--fixed{position:fixed;top:0;right:0;left:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:transparent;border:none}.landing-nav__logo{display:flex;align-items:center;text-decoration:none}.landing-nav__logo img{height:36px;width:auto;display:block}.landing-nav__links{display:flex;align-items:center;gap:28px}.landing-nav__link{font-size:15px;font-weight:400;color:#fff;text-decoration:none;background:none;border:none;cursor:pointer;font-family:inherit;padding:0;transition:color .2s ease}.landing-nav__link:hover{color:#c8c8c8}.landing-hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;isolation:isolate;background:#080808}.landing-hero__media{position:absolute;top:0;bottom:0;left:0;width:min(56%,880px);z-index:0;overflow:hidden;background:#080808}.landing-hero__atm-glow{position:absolute;width:600px;height:600px;left:15%;top:20%;border-radius:50%;pointer-events:none;z-index:0;transform:translate(-50%,-50%)}.landing-hero__atm-glow--primary{background:radial-gradient(ellipse 55% 55% at 50% 50%,rgba(200,130,30,.09) 0%,transparent 70%)}.landing-hero__atm-glow--secondary{background:radial-gradient(ellipse 55% 55% at 50% 50%,rgba(220,150,40,.05) 0%,transparent 70%);transform:translate(calc(-50% + 40px),calc(-50% + 20px))}.landing-hero__media:after{content:"";position:absolute;top:0;right:0;bottom:0;width:min(48%,200px);z-index:2;pointer-events:none;background:linear-gradient(to left,#080808,#08080800)}.landing-hero__img{position:relative;z-index:1;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center;display:block}.landing-hero__gradient{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:linear-gradient(to bottom,#08080833,#08080800,#08080800 60%,#080808)}.landing-hero__content{position:relative;z-index:2;width:100%;max-width:1120px;margin-right:auto;margin-left:auto;padding:0 24px 0 max(24px,min(56%,880px));text-align:right;box-sizing:border-box;min-height:100vh;display:flex;flex-direction:column;flex:1 1 auto}.landing-hero__column{position:relative;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;width:100%;flex:1 1 auto;min-height:100vh;padding:80px 0}.landing-hero__copy{display:flex;flex-direction:column;align-items:flex-start;text-align:right;width:100%}.landing-hero__title{margin:0;font-size:clamp(2.75rem,12vw,4.5rem);font-weight:900;line-height:var(--leading-display);letter-spacing:var(--tracking-display);color:#fff}.landing-hero__title-line{display:block}.landing-hero__sub{margin:12px 0 0;width:100%;max-width:520px;margin-inline-end:0;margin-inline-start:auto;font-size:1.125rem;max-width:36rem;line-height:var(--leading-body);letter-spacing:var(--tracking-body);color:var(--text-medium-contrast, #a3a3a3);font-weight:500}.landing-hero__cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:28px 0 0;padding:14px 32px;font-size:1rem;font-weight:500;color:#fff;background:var(--landing-accent);border:none;border-radius:980px;cursor:pointer;font-family:var(--font-sans);line-height:var(--leading-ui);letter-spacing:var(--tracking-ui);transition:background .2s ease,opacity .2s ease}.landing-hero__cta:hover{background:#0060c7}.landing-hero__divider{width:100%;max-width:520px;height:0;margin:36px 0 0;margin-inline-start:auto;border:none;border-top:1px solid rgba(255,255,255,.08)}.landing-hero__social{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:24px;margin-top:20px;width:100%;max-width:520px;margin-inline-end:0;margin-inline-start:auto;direction:ltr}.landing-hero__social-stat{display:flex;flex-direction:column;align-items:flex-start;text-align:right;direction:rtl}.landing-hero__social-num{font-family:var(--font-sans);font-size:22px;font-weight:700;color:#fff;line-height:var(--leading-ui);font-variant-numeric:tabular-nums}.landing-hero__social-label{margin-top:2px;font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--text-muted-readable, #8a8a8a);line-height:var(--leading-ui)}.landing-hero__scroll-indicator{position:absolute;right:0;bottom:36px;z-index:10;display:flex;flex-direction:column;align-items:center;pointer-events:none;opacity:0;animation:landing-hero-scroll-fade-in .8s ease 2s forwards}.landing-hero__scroll-label{margin:0 0 12px;font-size:10px;font-weight:400;letter-spacing:.06em;color:#4d4d4d;writing-mode:horizontal-tb;text-align:center;animation:scroll-indicator-label 1.8s ease infinite}.landing-hero__scroll-mouse-svg{display:block;overflow:visible}.landing-hero__scroll-wheel{transform-origin:center top;transform-box:fill-box;animation:wheel-scroll 1.8s cubic-bezier(.4,0,.2,1) infinite}@keyframes landing-hero-scroll-fade-in{to{opacity:1}}@keyframes wheel-scroll{0%{transform:translateY(0);opacity:1}60%{transform:translateY(8px);opacity:0}61%{transform:translateY(0);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scroll-indicator-label{0%,to{color:#4d4d4d}30%{color:#6e6e6e}60%{color:#4d4d4d}}.landing-diff{position:relative;padding:72px 0 64px;background:#080808;overflow:hidden}.landing-diff__bloom{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 700px 350px at 50% 50%,rgba(255,160,40,.05) 0%,transparent 70%)}.landing-diff .landing-section-container{position:relative;z-index:1}.landing-diff__heading{margin:0 0 8px;font-size:clamp(2rem,6vw,3rem);font-weight:700;line-height:var(--leading-display);letter-spacing:var(--tracking-display);color:#fff;text-align:right}.landing-bento{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px;direction:rtl}.landing-bento__card{position:relative;display:flex;flex-direction:column;gap:12px;padding:32px;background:#111;border:1px solid rgba(255,255,255,.07);border-radius:20px;transition:border-color .2s ease,background .2s ease}.landing-bento__card:hover{border-color:#ffffff24;background:#141414}.landing-bento__card--wide{grid-column:1 / -1}.landing-bento__badge{position:absolute;top:24px;right:24px;font-family:var(--font-sans);font-size:11px;font-weight:500;color:#4d9fff;font-variant-numeric:tabular-nums;line-height:var(--leading-ui)}.landing-bento__name{margin:0;padding-top:8px;font-family:var(--font-text);font-size:1.25rem;font-weight:700;line-height:1.3;letter-spacing:0;color:#fff}.landing-bento__desc{margin:0;font-family:var(--font-text);font-size:1rem;line-height:var(--leading-body);letter-spacing:0;color:#9a9a9a;font-weight:400}.landing-bento__illu{margin-top:auto;min-height:72px;display:flex;align-items:center;justify-content:center}.landing-bento__illu--auto{min-height:160px;width:100%;background:transparent}.landing-bento__import{--import-ease: cubic-bezier(.4, 0, .2, 1);display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(14px,3vw,24px);width:100%;max-width:520px;margin-inline:auto;direction:rtl;font-family:inherit}.landing-bento__import-portal{flex:0 1 auto;min-width:min(100%,158px);max-width:200px;padding:12px 14px 14px;border-radius:16px;background:#ffffff09;border:1px solid rgba(255,255,255,.1);animation:landing-import-portal-float 4s var(--import-ease) infinite}.landing-bento__import-portal-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.landing-bento__import-logo{width:36px;height:36px;border-radius:10px;-o-object-fit:contain;object-fit:contain;flex-shrink:0;animation:landing-import-logo-breathe 4s var(--import-ease) infinite}.landing-bento__import-portal-title{font-size:12.5px;font-weight:700;line-height:1.25;color:#ebebeb;letter-spacing:.02em}.landing-bento__import-matrix{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:10px;border-radius:10px;background:#00000059;overflow:hidden;isolation:isolate}.landing-bento__import-matrix:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 0%,rgba(0,113,227,.22) 45%,rgba(255,255,255,.12) 50%,rgba(0,113,227,.18) 55%,transparent 100%);width:55%;animation:landing-import-matrix-sweep 4s var(--import-ease) infinite;pointer-events:none;z-index:1}.landing-bento__import-matrix-dot{position:relative;z-index:0;aspect-ratio:1;border-radius:4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.06);animation:landing-import-dot-twinkle 4s var(--import-ease) infinite}.landing-bento__import-matrix-dot:nth-child(1){animation-delay:0s}.landing-bento__import-matrix-dot:nth-child(2){animation-delay:.04s}.landing-bento__import-matrix-dot:nth-child(3){animation-delay:.08s}.landing-bento__import-matrix-dot:nth-child(4){animation-delay:.12s}.landing-bento__import-matrix-dot:nth-child(5){animation-delay:.16s}.landing-bento__import-matrix-dot:nth-child(6){animation-delay:.2s}.landing-bento__import-matrix-dot:nth-child(7){animation-delay:.24s}.landing-bento__import-matrix-dot:nth-child(8){animation-delay:.28s}.landing-bento__import-matrix-dot:nth-child(9){animation-delay:.32s}.landing-bento__import-matrix-dot:nth-child(10){animation-delay:.36s}.landing-bento__import-matrix-dot:nth-child(11){animation-delay:.4s}.landing-bento__import-matrix-dot:nth-child(12){animation-delay:.44s}.landing-bento__import-connector{position:relative;flex:0 0 auto;width:clamp(56px,12vw,88px);height:22px;direction:ltr}.landing-bento__import-connector-glow{position:absolute;left:50%;top:50%;width:120%;height:18px;margin:-9px 0 0 -60%;border-radius:999px;background:radial-gradient(ellipse at center,rgba(0,113,227,.35) 0%,rgba(0,113,227,.08) 45%,transparent 70%);filter:blur(4px);opacity:.75;animation:landing-import-connector-pulse 4s var(--import-ease) infinite;pointer-events:none}.landing-bento__import-connector-track{position:absolute;left:6px;right:6px;top:50%;height:3px;margin-top:-1.5px;border-radius:999px;background:linear-gradient(90deg,#ffffff0f,#0071e38c 50%,#ffffff0f);box-shadow:inset 0 0 0 1px #0071e333}.landing-bento__import-spark{position:absolute;top:50%;left:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#0071e3;animation:landing-import-spark-fly 4s var(--import-ease) infinite}.landing-bento__import-spark--a{animation-delay:0s}.landing-bento__import-spark--b{width:5px;height:5px;margin:-2.5px 0 0 -2.5px;opacity:.85;animation-delay:.12s}.landing-bento__import-spark--c{width:4px;height:4px;margin:-2px 0 0 -2px;opacity:.65;animation-delay:.24s}@keyframes landing-import-portal-float{0%,to{transform:translateY(0);border-color:#ffffff1a}50%{transform:translateY(-2px);border-color:#0071e333}}@keyframes landing-import-logo-breathe{0%,to{transform:scale(1)}45%{transform:scale(1.04)}}@keyframes landing-import-matrix-sweep{0%{transform:translate(-100%) skew(-6deg);opacity:0}8%{opacity:1}42%{transform:translate(120%) skew(-6deg);opacity:1}43%,to{opacity:0;transform:translate(120%) skew(-6deg)}}@keyframes landing-import-dot-twinkle{0%,35%,to{opacity:.45;background-color:#ffffff0d}18%{opacity:1;background-color:#0071e340;border-color:#0071e359}}@keyframes landing-import-connector-pulse{0%,to{opacity:.45;transform:scaleX(.92)}35%,65%{opacity:.9;transform:scaleX(1)}}@keyframes landing-import-spark-fly{0%,22%{opacity:0;transform:translate(28px) scale(.45)}26%{opacity:1;transform:translate(28px) scale(1)}58%{opacity:1;transform:translate(-28px) scale(1)}62%,to{opacity:0;transform:translate(-28px,2px) scale(.55)}}.landing-bento__import-dest{flex:0 1 auto;min-width:min(100%,168px);max-width:210px;padding:12px 12px 10px;border-radius:16px;background:#0071e30f;border:1px solid rgba(0,113,227,.2);animation:landing-import-dest-halo 4s var(--import-ease) infinite}.landing-bento__import-dest-badge{display:inline-flex;align-items:center;padding:3px 10px;margin-bottom:8px;border-radius:999px;font-size:9.5px;font-weight:700;letter-spacing:.06em;color:#ffffffd9;background:#0071e333;border:1px solid rgba(0,113,227,.35);animation:landing-import-badge 4s var(--import-ease) infinite}.landing-bento__import-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}.landing-bento__import-slot{position:relative;min-height:30px;border-radius:8px}.landing-bento__import-slot-ghost{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:8px;border:1px dashed rgba(255,255,255,.12);background:#ffffff05;animation:landing-import-ghost 4s var(--import-ease) infinite}.landing-bento__import-slot:has(.landing-bento__import-pill) .landing-bento__import-slot-ghost{opacity:0;border-color:transparent}.landing-bento__import-pill{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-height:30px;padding:4px;font-size:9.5px;font-weight:700;line-height:1.2;text-align:center;color:#fffffff5;border-radius:8px;border:1px solid rgba(255,255,255,.2);transform-origin:center;animation:landing-import-pill-snap 4s var(--import-ease) infinite}.landing-bento__import-pill--a{background:#0071e338;border-color:#0071e38c;animation-delay:0s}.landing-bento__import-pill--b{background:#34c75924;border-color:#34c75973;animation-delay:.08s}.landing-bento__import-pill--c{background:#ff9f0a24;border-color:#ff9f0a7a;animation-delay:.16s}.landing-bento__import-days{display:flex;justify-content:space-between;gap:4px;font-size:9px;font-weight:600;color:#8a8a8a}.landing-bento__import-days span{flex:1;text-align:center;min-width:0}@keyframes landing-import-dest-halo{0%,to{box-shadow:0 0 #0071e300;border-color:#0071e32e}52%,78%{box-shadow:0 0 28px -8px #0071e373;border-color:#0071e36b}}@keyframes landing-import-badge{0%,48%{color:#a3a3a3;letter-spacing:.12em}58%,88%{color:#fff;letter-spacing:.06em}to{color:#a3a3a3;letter-spacing:.12em}}@keyframes landing-import-ghost{0%,48%{opacity:1}55%,88%{opacity:0}to{opacity:1}}@keyframes landing-import-pill-snap{0%,48%{opacity:0;transform:translateY(6px) scale(.88);filter:blur(4px)}56%{opacity:1;transform:translateY(0) scale(1.02);filter:blur(0)}62%,88%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}96%,to{opacity:0;transform:translateY(4px) scale(.92);filter:blur(2px)}}@media (max-width: 480px){.landing-bento__import{flex-direction:column;gap:16px}.landing-bento__import-portal,.landing-bento__import-dest{max-width:280px;width:100%}}.landing-bento__auto-list{display:flex;width:100%;max-width:288px;flex-direction:column;gap:7px;margin-inline:auto;direction:rtl;font-family:inherit;background:transparent}.landing-bento__auto-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px 8px 10px;border-radius:11px;background:transparent;border:1px solid rgba(0,113,227,.32);animation:landing-auto-row 3.4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__auto-list-item--1{animation-delay:0s}.landing-bento__auto-list-item--2{animation-delay:.11s}.landing-bento__auto-list-item--3{animation-delay:.22s}.landing-bento__auto-list-name{flex:1;min-width:0;font-size:12.5px;font-weight:600;line-height:1.35;letter-spacing:.01em;color:#f2f2f2;text-align:right;animation:landing-auto-row-text 3.4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__auto-list-item--1 .landing-bento__auto-list-name{animation-delay:0s}.landing-bento__auto-list-item--2 .landing-bento__auto-list-name{animation-delay:.11s}.landing-bento__auto-list-item--3 .landing-bento__auto-list-name{animation-delay:.22s}.landing-bento__auto-list-check{position:relative;flex-shrink:0;width:21px;height:21px;border-radius:50%;background:#0071e3;animation:landing-auto-check 3.4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__auto-list-item--1 .landing-bento__auto-list-check{animation-delay:0s}.landing-bento__auto-list-item--2 .landing-bento__auto-list-check{animation-delay:.11s}.landing-bento__auto-list-item--3 .landing-bento__auto-list-check{animation-delay:.22s}.landing-bento__auto-list-check:after{content:"";position:absolute;top:46%;left:50%;width:4px;height:8px;border:solid #fff;border-width:0 1.75px 1.75px 0;transform:translate(-50%,-50%) rotate(45deg);animation:landing-auto-check-after 3.4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__auto-list-item--1 .landing-bento__auto-list-check:after{animation-delay:0s}.landing-bento__auto-list-item--2 .landing-bento__auto-list-check:after{animation-delay:.11s}.landing-bento__auto-list-item--3 .landing-bento__auto-list-check:after{animation-delay:.22s}@keyframes landing-auto-row{0%{transform:translateY(5px);border-color:#0071e31f}9%{transform:translateY(0);border-color:#0071e361}38%,72%{transform:translateY(0);border-color:#0071e361}88%{transform:translateY(3px);border-color:#0071e324}to{transform:translateY(6px);border-color:#0071e31a}}@keyframes landing-auto-row-text{0%{color:#f2f2f200}9%{color:#f2f2f2}38%,72%{color:#f2f2f2}88%{color:#f2f2f28c}to{color:#f2f2f200}}@keyframes landing-auto-check{0%,5%{transform:scale(.35);background:#0071e300}11%{transform:scale(1);background:#0071e3}38%,72%{transform:scale(1);background:#0071e3}88%{transform:scale(.85);background:#0071e359}to{transform:scale(.35);background:#0071e300}}@keyframes landing-auto-check-after{0%,5%{border-color:#fff0}11%,72%{border-color:#fff}88%{border-color:#ffffff59}to{border-color:#fff0}}@media (prefers-reduced-motion: reduce){.landing-bento__auto-list-item,.landing-bento__auto-list-check{animation:none}.landing-bento__auto-list-item{transform:none;border-color:#0071e361}.landing-bento__auto-list-name{animation:none;color:#f2f2f2}.landing-bento__auto-list-check{transform:none;background:#0071e3}.landing-bento__auto-list-check:after{animation:none;border-color:#fff}.landing-bento__import-portal,.landing-bento__import-logo,.landing-bento__import-matrix:before,.landing-bento__import-matrix-dot,.landing-bento__import-connector-glow,.landing-bento__import-spark,.landing-bento__import-dest,.landing-bento__import-dest-badge,.landing-bento__import-slot-ghost,.landing-bento__import-pill{animation:none}.landing-bento__import-portal{transform:none;border-color:#ffffff1f}.landing-bento__import-logo{transform:none;filter:drop-shadow(0 2px 8px rgba(0,113,227,.28))}.landing-bento__import-spark{opacity:0}.landing-bento__import-dest{box-shadow:none;border-color:#0071e347}.landing-bento__import-dest-badge{opacity:1;letter-spacing:.06em}.landing-bento__import-slot-ghost{opacity:0}.landing-bento__import-pill{opacity:1;transform:none;filter:none}}.landing-bento__illu--conflict{width:100%;height:auto;min-height:148px;margin-top:4px;display:flex;align-items:center;justify-content:center}.landing-bento__conflict-stage{width:100%;height:auto;min-height:148px;display:flex;align-items:center;justify-content:center}.landing-bento__conflict-inner{position:relative;display:flex;flex-direction:column;align-items:center;width:180px;min-height:120px;font-size:9px}.landing-bento__conflict-inner--fade{animation:landing-bento-conflict-inner-fade 4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__conflict-head{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:6px;width:100%}.landing-bento__conflict-day{margin:0;font-size:9px;line-height:1.25;color:#6b6b6b;text-align:center}.landing-bento__conflict-warn-icon{display:inline-flex;align-items:center;justify-content:center;margin-inline-end:5px;font-size:9px;font-weight:800;line-height:1;color:#ff9e9e}.landing-bento__conflict-board{position:relative;width:100%;height:89px}.landing-bento__conflict-slots{display:flex;flex-direction:column;width:100%;height:100%}.landing-bento__conflict-row{box-sizing:border-box;height:44px;border-bottom:1px solid rgba(255,255,255,.05)}.landing-bento__conflict-row:last-child{border-bottom:none}.landing-bento__conflict-acts{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.landing-bento__conflict-block{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:36px;border-radius:6px;font-size:9px;font-weight:600;color:#fff;transition-property:background,border-color,box-shadow,transform}.landing-bento__conflict-block--a{top:4px;z-index:1}.landing-bento__conflict-block--b{top:4px;z-index:2}.landing-bento__conflict-warn{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px 3px 8px;border-radius:20px;font-size:9px;font-weight:700;letter-spacing:.02em;color:#ffc9c9;white-space:nowrap;background:#241010;border:1px solid rgba(255,90,90,.55);box-shadow:0 2px 8px #00000059}.landing-bento__conflict-done{flex-shrink:0;margin-top:6px;padding:3px 10px;border-radius:20px;font-size:8px;font-weight:600;color:#4d9fff;white-space:nowrap;background:#0071e31a;border:1px solid rgba(0,113,227,.25)}.landing-bento__conflict-warn--anim{animation:landing-bento-conflict-warn 4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__conflict-done--anim{animation:landing-bento-conflict-done 4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__conflict-block--anim-a{animation:landing-bento-conflict-block-a 4s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__conflict-block--anim-b{animation:landing-bento-conflict-block-b 4s cubic-bezier(.4,0,.2,1) infinite}@keyframes landing-bento-conflict-inner-fade{0%,85%{opacity:1}92.5%,to{opacity:0}}@keyframes landing-bento-conflict-warn{0%,30%{opacity:1}35%,to{opacity:0}}@keyframes landing-bento-conflict-done{0%,55%{opacity:0}62.5%,to{opacity:1}}@keyframes landing-bento-conflict-block-a{0%{background:#ff3c3c40;border:1px solid rgba(255,60,60,.5);box-shadow:0 0 #ff3c3c00;transform:translate(-12px,4px)}3.75%{box-shadow:0 0 12px #ff3c3c4d}7.5%{box-shadow:0 0 #ff3c3c00}11.25%{box-shadow:0 0 12px #ff3c3c4d}15%{box-shadow:0 0 #ff3c3c00}18.75%{box-shadow:0 0 12px #ff3c3c4d}22.5%{box-shadow:0 0 #ff3c3c00}26.25%{box-shadow:0 0 12px #ff3c3c4d}30%{background:#ff3c3c40;border:1px solid rgba(255,60,60,.5);box-shadow:0 0 #ff3c3c00;transform:translate(-12px,4px)}40%{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);box-shadow:none;transform:translate(0)}42.5%,54.9%{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);box-shadow:none;transform:translate(0)}55%{background:#0071e34d;border:1px solid rgba(0,113,227,.5);box-shadow:0 0 14px #0071e340;transform:translate(0)}62.5%{background:#0071e34d;border:1px solid rgba(0,113,227,.5);box-shadow:0 0 6px #0071e31f;transform:translate(0)}70%,85%{background:#0071e34d;border:1px solid rgba(0,113,227,.5);box-shadow:none;transform:translate(0)}99.99%,to{background:#ff3c3c40;border:1px solid rgba(255,60,60,.5);box-shadow:0 0 #ff3c3c00;transform:translate(-12px,4px)}}@keyframes landing-bento-conflict-block-b{0%{background:#ff3c3c40;border:1px solid rgba(255,60,60,.5);box-shadow:0 0 #ff3c3c00;transform:translate(12px,14px)}3.75%{box-shadow:0 0 12px #ff3c3c4d}7.5%{box-shadow:0 0 #ff3c3c00}11.25%{box-shadow:0 0 12px #ff3c3c4d}15%{box-shadow:0 0 #ff3c3c00}18.75%{box-shadow:0 0 12px #ff3c3c4d}22.5%{box-shadow:0 0 #ff3c3c00}26.25%{box-shadow:0 0 12px #ff3c3c4d}30%{background:#ff3c3c40;border:1px solid rgba(255,60,60,.5);box-shadow:0 0 #ff3c3c00;transform:translate(12px,14px)}40%{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);box-shadow:none;transform:translateY(41px)}42.5%,54.9%{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);box-shadow:none;transform:translateY(50px)}55%{background:#0071e34d;border:1px solid rgba(0,113,227,.5);box-shadow:0 0 14px #0071e340;transform:translateY(50px)}62.5%{background:#0071e34d;border:1px solid rgba(0,113,227,.5);box-shadow:0 0 6px #0071e31f;transform:translateY(50px)}70%,85%{background:#0071e34d;border:1px solid rgba(0,113,227,.5);box-shadow:none;transform:translateY(50px)}99.99%,to{background:#ff3c3c40;border:1px solid rgba(255,60,60,.5);box-shadow:0 0 #ff3c3c00;transform:translate(12px,14px)}}.landing-bento__illu--easy-flow{width:100%;max-width:none;min-height:220px;height:auto;margin-top:4px}.landing-bento__easy{position:relative;width:100%;min-height:220px;height:auto;overflow:hidden}.landing-bento__easy-scene{position:absolute;top:0;right:0;bottom:0;left:0}.landing-bento__easy-scene--chrome{z-index:2;animation:easy-scene-chrome 5s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__easy-scene--import{z-index:1;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:8px;padding:4px 0;direction:rtl;animation:easy-scene-import 5s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__easy-window{margin:6px auto 0;max-width:268px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#0c0c0c;overflow:hidden}.landing-bento__easy-bar{display:flex;align-items:center;justify-content:flex-start;height:38px;padding:0 10px;border-bottom:1px solid rgba(255,255,255,.06);background:#ffffff08;direction:rtl}.landing-bento__easy-logo-hit{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:8px}.landing-bento__easy-logo{position:relative;z-index:1;display:block;height:24px;width:auto;max-width:92px;-o-object-fit:contain;object-fit:contain;animation:easy-logo 5s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__easy-click-ring{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;border:2px solid #0071e3;opacity:0;pointer-events:none;animation:easy-click-ring 5s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__easy-page{display:flex;flex-direction:column;gap:8px;padding:14px 12px 18px;min-height:56px}.landing-bento__easy-page-line{display:block;height:6px;border-radius:4px;background:#ffffff0f}.landing-bento__easy-page-line--short{width:55%;margin-right:auto}.landing-bento__easy-cursor{position:absolute;z-index:3;width:12px;height:12px;margin:-6px 0 0 -6px;background:#fff;border:2px solid #0071e3;border-radius:50%;box-shadow:0 2px 8px #00000073;pointer-events:none;animation:easy-cursor 5s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__easy-import-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px 2px;direction:rtl}.landing-bento__easy-import-title{margin:0;text-align:right;font-size:11px;font-weight:700;color:#b3b3b3;letter-spacing:.02em}.landing-bento__easy-import-count{flex-shrink:0;padding:3px 8px;border-radius:980px;font-size:9px;font-weight:700;color:var(--text-muted-readable, #8a8a8a);background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.landing-bento__easy-courses-shell{background:transparent;border:none;box-shadow:none;padding:0;border-radius:0}.landing-bento__easy-courses{display:flex;flex-direction:column;gap:8px;width:100%;max-width:100%}.landing-bento__easy-course{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:12px;direction:ltr;width:100%;min-height:0;padding:14px 18px;border-radius:12px;border:1px solid rgba(255,255,255,.07);background:#ffffff0a;box-shadow:none;transition:background .15s ease,border-color .15s ease}.landing-bento__easy-course:hover{background:#ffffff12;border-color:#ffffff1f}.landing-bento__easy-label{flex:1;min-width:0;font-size:15px;font-weight:500;color:#fff;text-align:right;line-height:1.35;letter-spacing:.01em;direction:rtl}.landing-bento__easy-check{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;box-sizing:border-box;background:#0071e3;border:1.5px solid #0071e3;transition:background .2s ease,border-color .2s ease}.landing-bento__easy-check-icon{display:block;width:12px;height:12px}.landing-bento__easy-course--1{animation:easy-course-1 5s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__easy-course--2{animation:easy-course-2 5s cubic-bezier(.4,0,.2,1) infinite}.landing-bento__easy-course--3{animation:easy-course-3 5s cubic-bezier(.4,0,.2,1) infinite}@keyframes easy-scene-chrome{0%,22%{opacity:1}26%,86%{opacity:0}90%,to{opacity:1}}@keyframes easy-scene-import{0%,24%{opacity:0;transform:translateY(10px)}28%,82%{opacity:1;transform:translateY(0)}86%,to{opacity:0;transform:translateY(8px)}}@keyframes easy-cursor{0%{left:18%;top:72%;opacity:1;transform:scale(1)}14%{left:72%;top:19%;opacity:1;transform:scale(1)}15.5%{left:72%;top:19%;opacity:1;transform:scale(.72)}18%,23%{left:72%;top:19%;opacity:1;transform:scale(1)}25%,88%{left:72%;top:19%;opacity:0;transform:scale(1)}89%{left:18%;top:72%;opacity:0;transform:scale(1)}92%,to{left:18%;top:72%;opacity:1;transform:scale(1)}}@keyframes easy-logo{0%,14%{transform:scale(1)}15.5%{transform:scale(.88)}20%,to{transform:scale(1)}}@keyframes easy-click-ring{0%,14%{opacity:0;transform:scale(.4)}16%{opacity:.55;transform:scale(1)}22%{opacity:0;transform:scale(1.85)}23%,to{opacity:0;transform:scale(.4)}}@keyframes easy-course-1{0%,26%{transform:translateY(12px) scale(.94);filter:blur(2px)}30%,82%{transform:translateY(0) scale(1);filter:blur(0)}86%,to{transform:translateY(6px) scale(.98);filter:blur(0)}}@keyframes easy-course-2{0%,29%{transform:translateY(12px) scale(.94);filter:blur(2px)}33%,82%{transform:translateY(0) scale(1);filter:blur(0)}86%,to{transform:translateY(6px) scale(.98);filter:blur(0)}}@keyframes easy-course-3{0%,32%{transform:translateY(12px) scale(.94);filter:blur(2px)}36%,82%{transform:translateY(0) scale(1);filter:blur(0)}86%,to{transform:translateY(6px) scale(.98);filter:blur(0)}}@media (max-width: 700px){.landing-bento{grid-template-columns:1fr}.landing-bento__card--wide{grid-column:auto}}.landing-block{padding:80px 0}.landing-block--surface{background:var(--landing-surface)}.landing-block__grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.landing-block__content{display:flex;flex-direction:column;gap:16px;text-align:right}.landing-block__title,.landing-h2-text{margin:0;font-family:var(--font-text);font-size:clamp(1.5rem,4vw,2rem);font-weight:700;line-height:1.25;letter-spacing:0;color:#fff}.landing-block__lead{margin:0;font-size:1rem;line-height:var(--leading-body);letter-spacing:0;color:var(--text-medium-contrast, #a3a3a3);font-weight:500}.landing-block__cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;width:-moz-fit-content;width:fit-content;padding:14px 32px;font-size:16px;font-weight:700;color:#fff;background:var(--landing-accent);border:none;border-radius:980px;cursor:pointer;font-family:inherit;transition:background .2s ease}.landing-block__cta:hover{background:#0060c7}.landing-preview-wrap{position:relative;display:flex;justify-content:center;align-items:center;min-height:280px}.landing-preview-glow{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:min(100%,480px);height:320px;background:radial-gradient(ellipse 400px 300px at 50% 50%,rgba(0,113,227,.08) 0%,transparent 70%);pointer-events:none}#landing-gpa-card-root{width:100%;display:flex;justify-content:center}@keyframes landing-schedule-pulse{0%,to{box-shadow:0 0 0 1px #0071e373}50%{box-shadow:0 0 0 4px #0071e340}}.landing-schedule-preview__block--pulse{animation:landing-schedule-pulse 2s ease-in-out infinite}.landing-coming-soon{padding:32px 0 40px;background:#080808;border-top:1px solid rgba(255,255,255,.06)}.landing-coming-soon__layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,.5fr);gap:clamp(24px,4vw,48px);align-items:center;direction:ltr}.landing-coming-soon__header{display:flex;grid-column:2;justify-content:center;align-items:center;margin-bottom:0;direction:rtl}.landing-coming-soon__title{margin:0;font-family:var(--font-thmanyah-display),"thmanyah Serif Display",serif;font-size:clamp(2.75rem,8vw,6rem);font-weight:700;line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-feature-settings:"salt" 1;color:#fff;text-align:center}.landing-coming-soon__figure{position:relative;grid-column:1;margin:0}.landing-coming-soon__image{display:block;width:100%;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:0;box-shadow:none}.landing-pricing{padding:88px 0 96px;border-top:1px solid rgba(255,255,255,.06)}.landing-pricing__heading{margin:0 0 12px;font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:var(--leading-display);letter-spacing:var(--tracking-display);color:#fff;text-align:center}.landing-pricing__lead{margin:0 auto 40px;max-width:560px;font-size:16px;line-height:1.7;color:var(--text-medium-contrast, #a3a3a3);text-align:center;font-weight:500}.landing-pricing__plans{display:flex;flex-direction:column;gap:16px;max-width:760px;margin:0 auto}.landing-pricing__paid{padding:36px 40px;border-radius:20px;border:1px solid rgba(0,113,227,.35);background:#111;box-shadow:0 0 40px #0071e314;text-align:right}.landing-pricing__paid-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px 24px}.landing-pricing__paid-price-block{text-align:right}.landing-pricing__paid-price{display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:6px;margin:0;line-height:1}.landing-pricing__paid-amount{font-family:var(--font-sans);font-size:42px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:0}.landing-pricing__paid-currency{font-family:var(--font-sans);font-size:1.25rem;font-weight:500;color:#ffffffbf;line-height:var(--leading-ui)}.landing-pricing__paid-sub{margin:8px 0 0;font-size:12px;line-height:1.4;color:#6b6b6b}.landing-pricing__paid-divider{height:1px;margin:24px 0;background:#ffffff12}.landing-pricing__compare{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.landing-pricing__compare-heading{margin:0 0 16px;font-size:11px;font-weight:500;line-height:1.3}.landing-pricing__compare-heading--paid{color:#4d9fff;font-weight:700}.landing-pricing__compare-heading--free{color:#8a8a8a}.landing-pricing__compare-list{margin:0;padding:0;list-style:none}.landing-pricing__compare-list li{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px;font-size:14px;line-height:1.55}.landing-pricing__compare-list li:last-child{margin-bottom:0}.landing-pricing__compare-col--paid .landing-pricing__compare-list li{color:#d4d4d4}.landing-pricing__compare-col--free .landing-pricing__compare-list li{color:#8a8a8a}.landing-pricing__check{flex-shrink:0;margin-top:2px;font-size:13px;line-height:1.2}.landing-pricing__check--paid{color:#0071e3}.landing-pricing__check--free{font-size:13px;color:#6b6b6b}.landing-pricing__paid-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;margin-top:28px;padding:0 24px;font-size:15px;font-weight:700;color:#fff;background:#0071e3;border:none;border-radius:980px;cursor:pointer;font-family:inherit;transition:background .2s ease}.landing-pricing__paid-cta:hover{background:#0060c7}.landing-pricing__strip{display:flex;align-items:center;justify-content:space-between;gap:16px 20px;padding:18px 28px;border-radius:14px;border:1px solid rgba(255,255,255,.07);background:#ffffff08}.landing-pricing__strip-meta{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px 10px}.landing-pricing__strip-text{font-size:13px;color:#8a8a8a}.landing-pricing__strip-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;padding:10px 24px;font-size:14px;font-weight:600;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:980px;cursor:pointer;font-family:inherit;transition:background .2s ease,border-color .2s ease}.landing-pricing__strip-cta:hover{background:#ffffff0f;border-color:#ffffff47}.landing-footer-cta{position:relative;isolation:isolate;overflow:hidden;padding:140px 24px;text-align:center;border-top:1px solid rgba(255,255,255,.06)}.landing-footer-cta__bg{position:absolute;top:-24px;right:-24px;bottom:-24px;left:-24px;z-index:0;pointer-events:none}.landing-footer-cta__bg-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 30%;object-position:center 30%;opacity:.06;filter:blur(40px);transform:scale(1.08)}.landing-footer-cta__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#080808eb;pointer-events:none}.landing-footer-cta__inner{position:relative;z-index:2;max-width:560px;margin:0 auto}.landing-footer-cta__title{margin:0 0 16px;font-size:clamp(2.75rem,12vw,4.5rem);font-weight:900;line-height:var(--leading-display);letter-spacing:var(--tracking-display);color:#fff}.landing-footer-cta__title-line{display:block}.landing-footer-cta__sub{margin:0 auto 28px;max-width:420px;font-size:1rem;line-height:var(--leading-body);letter-spacing:0;color:var(--text-medium-contrast, #a3a3a3);font-weight:500}.landing-footer-cta__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;font-size:1rem;font-weight:500;color:#fff;background:var(--landing-accent);border:none;border-radius:980px;cursor:pointer;font-family:var(--font-sans);line-height:var(--leading-ui);transition:background .2s ease}.landing-footer-cta__btn:hover{background:#0060c7}.landing-page--editorial .landing-footer{padding:48px 24px 64px;background:#080808;border-top:1px solid rgba(255,255,255,.06)}.landing-page--editorial .landing-footer-content{text-align:center}.landing-page--editorial .landing-footer-links{justify-content:center}.landing-page--editorial .landing-footer-link{color:#4d4d4d;font-size:12px;font-weight:400}.landing-page--editorial .landing-footer-link:hover{color:#8a8a8a}.landing-page--editorial .landing-footer-divider{color:#3d3d3d}.landing-page--editorial .landing-footer-copyright{margin:12px 0 0;color:#4d4d4d;font-size:12px;font-weight:400}@media (max-width: 768px){.landing-page--editorial .landing-footer-divider{display:inline}}@media (max-width: 900px){.landing-block__grid{grid-template-columns:1fr;gap:40px}.landing-block .landing-preview-wrap,.landing-block--reverse #landing-gpa-card-root{order:-1}.landing-pricing__compare{grid-template-columns:1fr;gap:28px}.landing-pricing__compare-col--paid{order:-1}}@media (max-width: 640px){.landing-hero{justify-content:flex-start}.landing-hero__media{position:relative;top:auto;left:auto;bottom:auto;width:100%;max-width:none;flex:0 0 auto;min-height:0;max-height:none;overflow:hidden}.landing-hero__media:after{top:auto;right:0;bottom:0;left:0;width:100%;height:min(45%,100px);background:linear-gradient(to top,#080808,#08080800)}.landing-hero__img{display:block;width:100%;height:auto;max-height:none;-o-object-fit:contain;object-fit:contain;-o-object-position:center center;object-position:center center}.landing-hero__content{min-height:0;flex:1 1 auto;padding:12px 20px 0}.landing-hero__column{min-height:auto;padding:20px 0 48px;justify-content:flex-start}.landing-hero__scroll-indicator{bottom:20px}}@media (max-width: 600px){.landing-nav--fixed{flex-direction:column;gap:16px;padding:16px}.landing-nav__links{gap:20px}.landing-footer-cta{padding:96px 20px}.landing-pricing{padding:64px 0 72px}.landing-coming-soon{padding:32px 0 40px}.landing-coming-soon__layout{grid-template-columns:1fr;gap:20px;direction:rtl}.landing-coming-soon__header{grid-column:1;justify-content:flex-start;margin-bottom:0}.landing-coming-soon__title{font-size:clamp(2.5rem,14vw,4rem);text-align:right}.landing-coming-soon__figure{grid-column:1}.landing-coming-soon__image{border-radius:0}.landing-pricing__paid{padding:28px 22px}.landing-pricing__paid-amount{font-size:36px}.landing-pricing__strip{flex-direction:column;align-items:stretch;text-align:center}.landing-pricing__strip-meta{justify-content:center}.landing-pricing__strip-cta{width:100%}}.auto-build-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-backdrop, 1040);display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);background:#00000094;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity var(--transition-normal)}.auto-build-modal-overlay.modal-show{opacity:1}.auto-build-modal{width:min(92vw,780px);max-height:min(88vh,720px);overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-secondary);color:var(--color-text-primary);font-family:var(--font-sans);opacity:0;transform:translateY(10px) scale(.98);transition:opacity var(--transition-normal),transform var(--transition-normal)}[data-theme=light] .auto-build-modal{background:var(--color-bg-elevated)}.auto-build-modal-overlay.modal-show .auto-build-modal{opacity:1;transform:translateY(0) scale(1)}.auto-build-modal::-webkit-scrollbar{width:4px}.auto-build-modal::-webkit-scrollbar-track{background:transparent}.auto-build-modal::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:var(--color-border-hover)}.auto-build-modal__header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);padding:var(--spacing-5) var(--spacing-6);border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg-secondary) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=light] .auto-build-modal__header{background:color-mix(in srgb,var(--color-bg-elevated) 94%,transparent)}.auto-build-modal__title{margin:0;color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:700;line-height:var(--leading-ui);letter-spacing:0}.auto-build-modal__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 auto;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.auto-build-modal__close:hover{border-color:var(--color-border-hover);background:var(--bg-hover);color:var(--color-text-primary)}.auto-build-modal__close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.auto-build-modal__close svg{width:14px;height:14px}.auto-build-modal__form{display:contents}.auto-build-modal__content{padding:var(--spacing-5) var(--spacing-6)}.auto-build-modal__settings-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:var(--spacing-4);align-items:start}.auto-build-modal__panel{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-3)}.auto-build-modal__panel-header{display:flex;align-items:center;justify-content:flex-start;min-height:0;padding:0 0 var(--spacing-1)}.auto-build-modal__section-label{margin:0;color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:700;line-height:var(--leading-ui);letter-spacing:0}.auto-build-modal__control-row,.auto-build-modal__compact-field{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-tertiary)}.auto-build-modal__control-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);min-height:68px;padding:var(--spacing-3) var(--spacing-4);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.auto-build-modal__control-row:hover{border-color:var(--color-border-hover);background:var(--bg-hover)}.auto-build-modal__control-copy{display:flex;min-width:0;flex:1 1 auto;flex-direction:column;gap:2px}.auto-build-modal__control-label,.auto-build-modal__field-label{color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:700;line-height:var(--leading-ui)}.auto-build-modal__control-sublabel{color:var(--color-text-muted);font-family:var(--font-sans);font-size:var(--font-size-xs);line-height:var(--leading-ui)}.auto-build-modal__toggle{position:relative;width:46px;height:28px;flex:0 0 auto}.auto-build-modal__toggle input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;margin:0;cursor:pointer;opacity:0}.auto-build-modal__toggle-track{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--color-border);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-text-muted) 24%,transparent);transition:background var(--transition-normal),border-color var(--transition-normal)}.auto-build-modal__toggle-thumb{position:absolute;top:3px;right:3px;width:22px;height:22px;border-radius:var(--radius-full);background:#fff;transition:transform var(--transition-normal)}.auto-build-modal__toggle input:checked+.auto-build-modal__toggle-track{border-color:var(--color-primary);background:var(--color-primary)}.auto-build-modal__toggle input:checked+.auto-build-modal__toggle-track+.auto-build-modal__toggle-thumb{transform:translate(-18px)}.auto-build-modal__toggle input:focus-visible+.auto-build-modal__toggle-track{outline:2px solid var(--color-primary);outline-offset:3px}.auto-build-modal__day-picker{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:transparent}.auto-build-modal__inline-label{padding:var(--spacing-3) var(--spacing-4) 0;color:var(--color-text-secondary);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:700;line-height:var(--leading-ui)}.auto-build-modal__day-pills{display:flex;flex-wrap:wrap;gap:var(--spacing-2);max-height:0;padding:0 var(--spacing-4);opacity:0;overflow:hidden;transition:max-height var(--transition-normal),opacity var(--transition-normal),padding var(--transition-normal)}.auto-build-modal__day-pills.visible{max-height:118px;padding-block:var(--spacing-3);opacity:1}.auto-build-modal__day-pill{position:relative;flex:1 1 86px;min-width:0}.auto-build-modal__day-pill input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;margin:0;cursor:pointer;opacity:0}.auto-build-modal__day-pill-label{display:flex;align-items:center;justify-content:center;min-height:36px;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:700;line-height:var(--leading-ui);text-align:center;white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.auto-build-modal__day-pill input:checked+.auto-build-modal__day-pill-label{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary-hover)}[data-theme=light] .auto-build-modal__day-pill input:checked+.auto-build-modal__day-pill-label{color:var(--color-primary-dark)}.auto-build-modal__day-pill input:focus-visible+.auto-build-modal__day-pill-label{outline:2px solid var(--color-primary);outline-offset:2px}.auto-build-modal__compact-field{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-3)}.auto-build-modal__field-label{display:block}.auto-build-modal__select-wrapper{position:relative;min-width:0}.auto-build-modal__select{width:100%;min-height:44px;padding:0 var(--spacing-3);padding-left:38px;border:1px solid var(--color-border);border-radius:var(--radius-sm);appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--color-bg-secondary);background-image:none!important;color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:600;line-height:var(--leading-ui);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}[data-theme=light] .auto-build-modal__select{background-color:var(--color-bg-primary)}.auto-build-modal__select:hover{border-color:var(--color-border-hover)}.auto-build-modal__select:focus{border-color:var(--color-primary);outline:2px solid color-mix(in srgb,var(--color-primary) 34%,transparent);outline-offset:2px}.auto-build-modal__select:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.72}.auto-build-modal__select::-ms-expand{display:none}.auto-build-modal__select-chevron{position:absolute;top:50%;left:var(--spacing-3);display:inline-flex;color:var(--color-primary);pointer-events:none;transform:translateY(-50%)}.auto-build-modal__select-chevron svg{width:14px;height:14px}.auto-build-modal__footer{position:sticky;bottom:0;z-index:10;display:flex;flex-direction:row-reverse;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg-secondary) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=light] .auto-build-modal__footer{background:color-mix(in srgb,var(--color-bg-elevated) 94%,transparent)}.auto-build-modal__btn-primary,.auto-build-modal__btn-ghost{min-height:48px;border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:700;line-height:var(--leading-ui);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.auto-build-modal__btn-primary{flex:1 1 auto;border:1px solid var(--color-primary);background:var(--color-primary);color:#fff}.auto-build-modal__btn-primary:hover{border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.auto-build-modal__btn-primary:focus-visible,.auto-build-modal__btn-ghost:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.auto-build-modal__btn-ghost{flex:0 0 auto;padding:0 var(--spacing-5);border:1px solid var(--color-border);background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.auto-build-modal__btn-ghost:hover{border-color:var(--color-border-hover);background:var(--bg-hover);color:var(--color-text-primary)}@media (max-width: 720px){.auto-build-modal{width:min(94vw,520px)}.auto-build-modal__settings-grid{grid-template-columns:1fr}.auto-build-modal__panel-header{min-height:0}}@media (max-width: 560px){.auto-build-modal-overlay{align-items:flex-end;padding:var(--spacing-2)}.auto-build-modal{width:100%;max-height:92vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.auto-build-modal__header,.auto-build-modal__content,.auto-build-modal__footer{padding-inline:var(--spacing-4)}.auto-build-modal__header,.auto-build-modal__content{padding-block:var(--spacing-4)}.auto-build-modal__panel{gap:var(--spacing-2)}.auto-build-modal__panel-header{padding-inline:0}.auto-build-modal__control-row{min-height:62px;padding:var(--spacing-3)}.auto-build-modal__day-pill{flex-basis:calc(50% - var(--spacing-2))}.auto-build-modal__footer{padding-block:var(--spacing-3)}.auto-build-modal__btn-ghost{padding-inline:var(--spacing-4)}}:root{--bento-accent: #2563EB;--bento-accent-light: #DBEAFE;--bento-accent-muted: #93C5FD;--bento-accent-dark: #1D4ED8}[data-theme=light]{--bento-surface: #ffffff;--bento-container-bg: #f8fafc;--bento-border: #e2e8f0;--bento-divider: #f1f5f9;--bento-chip-surface: #f8fafc;--bento-text-primary: #111827;--bento-text-secondary: #374151;--bento-text-muted: #9ca3af;--bento-text-accent: #2563EB;--bento-badge-bg: #EFF6FF;--bento-badge-text: #1D4ED8;--bento-empty-slot: #f8fafc;--bento-hero-gradient: linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%)}[data-theme=dark]{--bento-surface: var(--color-bg-secondary, #0f0f0f);--bento-container-bg: var(--color-bg-primary, #080808);--bento-border: var(--color-border, rgba(255, 255, 255, .07));--bento-divider: var(--color-bg-tertiary, #141414);--bento-chip-surface: var(--color-bg-tertiary, #141414);--bento-text-primary: var(--color-text-primary, #ffffff);--bento-text-secondary: var(--color-text-secondary, rgba(255, 255, 255, .6));--bento-text-muted: var(--color-text-muted, rgba(255, 255, 255, .4));--bento-text-accent: #60A5FA;--bento-badge-bg: rgba(37, 99, 235, .15);--bento-badge-text: #93C5FD;--bento-empty-slot: var(--color-bg-tertiary, #141414);--bento-hero-gradient: linear-gradient(135deg, #2563EB 0%, #1e40af 100%)}.bento-grid{display:grid;grid-template-columns:1.7fr 1fr;grid-template-rows:auto auto;gap:8px;padding:12px;border-radius:16px;background:var(--bento-container-bg);border:1px solid var(--bento-border);direction:rtl}.bento-cell{background:var(--bento-surface);border:1px solid var(--bento-border);border-radius:16px;padding:16px}.bento-cell--hero{grid-column:1;grid-row:1 / 3}.bento-cell--sections{grid-column:2;grid-row:1}.bento-cell--stats{grid-column:2;grid-row:2}.bento-title{font-size:16px;font-weight:700;color:var(--bento-text-primary);line-height:1.35;letter-spacing:-.01em}.bento-label{font-size:10px;font-weight:600;color:var(--bento-text-muted);letter-spacing:.05em;text-transform:uppercase}.bento-stat-primary{font-size:18px;font-weight:800;color:var(--bento-text-primary);font-variant-numeric:tabular-nums;line-height:1}.bento-stat-accent{font-size:18px;font-weight:800;color:var(--bento-text-accent);font-variant-numeric:tabular-nums;line-height:1}.bento-badge{font-size:10px;font-weight:700;color:var(--bento-badge-text);background:var(--bento-badge-bg);border-radius:6px;padding:2px 6px;display:inline-block}.bento-body{font-size:11px;font-weight:500;color:var(--bento-text-secondary);line-height:1.4}.bento-muted{font-size:10px;color:var(--bento-text-muted)}.bento-divider{border:0;border-top:1px solid var(--bento-divider);margin:8px 0}.bento-chip-surface{background:var(--bento-chip-surface);border-radius:12px;padding:10px}.bento-exams{display:flex;flex-direction:column;gap:12px}.bento-exams__header{display:flex;align-items:center;justify-content:space-between}.bento-period-toggle{display:flex;gap:4px;background:var(--bento-chip-surface);border-radius:9999px;padding:3px}.bento-period-toggle__btn{font-size:10px;font-weight:600;padding:4px 12px;border-radius:9999px;border:none;cursor:pointer;transition:all .15s ease;background:transparent;color:var(--bento-text-muted)}.bento-period-toggle__btn:hover{color:var(--bento-text-secondary)}.bento-period-toggle__btn--active{background:var(--bento-badge-bg);color:var(--bento-text-accent)}.bento-period-toggle__btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bento-accent),0 0 0 4px #2563eb33}.bento-exams__nav{display:flex;align-items:center;justify-content:space-between}.bento-exams__week-label{font-size:13px;font-weight:600;color:var(--bento-text-primary);font-variant-numeric:tabular-nums}.bento-exams__nav-btns{display:flex;gap:4px}.bento-nav-btn{width:24px;height:24px;border-radius:8px;background:var(--bento-chip-surface);border:none;color:var(--bento-text-muted);font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.bento-nav-btn:hover:not(:disabled){background:var(--bento-border);color:var(--bento-text-secondary)}.bento-nav-btn:disabled{opacity:1;color:var(--bento-text-muted);cursor:not-allowed}.bento-nav-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bento-accent),0 0 0 4px #2563eb33}.bento-nav-btn svg{width:12px;height:12px}.bento-exams__days{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.bento-day-column{display:flex;flex-direction:column;gap:6px;opacity:0;transform:translateY(8px);animation:bentoFadeIn .3s cubic-bezier(.4,0,.2,1) forwards}.bento-day-column:nth-child(1){animation-delay:0ms}.bento-day-column:nth-child(2){animation-delay:50ms}.bento-day-column:nth-child(3){animation-delay:.1s}.bento-day-column:nth-child(4){animation-delay:.15s}.bento-day-column:nth-child(5){animation-delay:.2s}.bento-day-header{text-align:center}.bento-day-name{font-size:10px;font-weight:500;color:var(--bento-text-muted)}.bento-day-number-row{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:2px}.bento-day-number{font-size:14px;font-weight:700;color:var(--bento-text-muted)}.bento-day-column--active .bento-day-number{color:var(--bento-text-accent)}.bento-pulse-dot{width:6px;height:6px;border-radius:50%;background:var(--bento-accent);animation:bentoPulse 1.6s ease-in-out infinite}@keyframes bentoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.45)}}.bento-exam-slot{border-radius:12px;padding:10px;min-height:88px;display:flex;flex-direction:column;gap:4px}.bento-exam-slot--empty{background:var(--bento-empty-slot);border:1px solid var(--bento-border);min-height:88px}.bento-exam-slot--upcoming{background:var(--bento-badge-bg);border:1px solid rgba(37,99,235,.2)}.bento-exam-slot--upcoming .bento-exam-code{font-size:10px;font-weight:700;color:var(--bento-text-accent)}.bento-exam-slot--upcoming .bento-exam-name{font-size:11px;font-weight:600;color:#1e3a8a;line-height:1.4;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}[data-theme=dark] .bento-exam-slot--upcoming .bento-exam-name{color:#bfdbfe}.bento-exam-slot--upcoming .bento-exam-meta{font-size:9px;color:#60a5fa;margin-top:6px}.bento-exam-slot--imminent{background:var(--bento-hero-gradient)}.bento-exam-slot--imminent .bento-exam-code{font-size:10px;font-weight:700;color:#93c5fd}.bento-exam-slot--imminent .bento-exam-name{font-size:11px;font-weight:600;color:#fff;line-height:1.4;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bento-exam-slot--imminent .bento-exam-meta{font-size:9px;color:#93c5fd;margin-top:6px}.bento-exam-slot{position:relative;cursor:pointer}.bento-exam-tooltip{position:absolute;top:100%;right:0;margin-top:8px;min-width:200px;max-width:280px;background:var(--bento-surface);border:1px solid var(--bento-border);border-radius:12px;padding:12px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:100;box-shadow:0 4px 16px #00000026;pointer-events:none}.bento-exam-slot:hover .bento-exam-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.bento-exam-tooltip__title{font-size:13px;font-weight:700;color:var(--bento-text-primary);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--bento-border);line-height:1.4}.bento-exam-tooltip__row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:12px}.bento-exam-tooltip__label{color:var(--bento-text-muted);font-weight:500}.bento-exam-tooltip__value{color:var(--bento-text-primary);font-weight:600;text-align:left;direction:ltr}.bento-day-column:nth-child(4) .bento-exam-tooltip,.bento-day-column:nth-child(5) .bento-exam-tooltip{right:auto;left:0}.bento-unscheduled{margin-top:8px}.bento-unscheduled__label{font-size:10px;font-weight:600;color:var(--bento-text-muted);letter-spacing:.05em;margin-bottom:6px}.bento-unscheduled__list{display:flex;flex-direction:column;gap:4px}.bento-unscheduled__item{background:var(--bento-chip-surface);border-radius:8px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between}.bento-unscheduled__name{font-size:11px;font-weight:500;color:var(--bento-text-secondary)}.bento-sections{display:flex;flex-direction:column;gap:12px}.bento-sections__header{display:flex;align-items:center;justify-content:space-between}.bento-sections__count{font-size:11px;font-weight:500;color:var(--bento-text-muted);font-variant-numeric:tabular-nums}.bento-sections__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.bento-course-chip{background:var(--bento-chip-surface);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:all .15s ease}.bento-course-chip:hover{background:var(--bento-border);transform:scale(1.02)}.bento-course-chip:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bento-accent),0 0 0 4px #2563eb33}.bento-course-chip__badge{align-self:flex-start}.bento-course-chip__name{font-size:11px;font-weight:500;color:var(--bento-text-secondary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bento-course-chip__section{font-size:10px;color:var(--bento-text-muted);font-variant-numeric:tabular-nums;display:flex;flex-wrap:wrap;gap:4px}.bento-section-item{display:inline-flex;align-items:center;gap:3px}.bento-section-label{font-size:8px;font-weight:600;padding:1px 4px;border-radius:4px;background:#2563eb1f;color:var(--bento-accent)}.bento-section-label--lab{background:#10b9811f;color:#10b981}.bento-section-label--training{background:#f59e0b1f;color:#f59e0b}:root.dark .bento-section-label{background:#60a5fa26;color:#60a5fa}:root.dark .bento-section-label--lab{background:#34d39926;color:#34d399}:root.dark .bento-section-label--training{background:#fbbf2426;color:#fbbf24}.bento-sections__footer{display:flex;gap:6px;margin-top:auto}.bento-action-btn{flex:1;border:1px solid var(--bento-border);border-radius:8px;padding:6px 0;font-size:10px;font-weight:600;color:var(--bento-text-muted);background:var(--bento-surface);cursor:pointer;transition:all .15s ease}.bento-action-btn:hover{background:var(--bento-chip-surface);color:var(--bento-text-secondary)}.bento-action-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bento-accent),0 0 0 4px #2563eb33}.bento-stats{display:flex;flex-direction:column;gap:8px}.bento-stats__primary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.bento-stat-chip{background:var(--bento-chip-surface);border-radius:12px;padding:11px;display:flex;flex-direction:column;gap:3px}.bento-stat-chip--accent{background:var(--bento-badge-bg)}.bento-stat-chip--accent .bento-stat-chip__value{color:var(--bento-text-accent)}.bento-stat-chip__label{font-size:11px;font-weight:600;color:var(--bento-text-muted);line-height:1.35}.bento-stat-chip__value{font-size:20px;font-weight:800;color:var(--bento-text-primary);font-variant-numeric:tabular-nums;line-height:1.1;letter-spacing:-.01em}.bento-stat-chip__sub{font-size:10px;font-weight:500;color:var(--bento-text-muted);margin-top:2px;line-height:1.3}.bento-progress{height:2px;border-radius:9999px;background:var(--bento-border);margin-top:6px;overflow:hidden}.bento-progress__fill{height:100%;border-radius:9999px;background:var(--bento-accent);width:0;animation:bentoProgressFill .9s cubic-bezier(.4,0,.2,1) forwards}@keyframes bentoProgressFill{0%{width:0}to{width:var(--fill-width)}}.bento-day-dots{display:flex;gap:6px;justify-content:center;margin-top:8px}.bento-day-dot{width:8px;height:8px;border-radius:50%;background:var(--bento-border);transition:background .2s ease,transform .2s ease}.bento-day-dot--active{background:var(--bento-accent)}.bento-stats__secondary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.bento-stat-chip--secondary .bento-stat-chip__value{font-size:15px;font-weight:700}.bento-closed-tag{font-size:8px;font-weight:700;color:#dc2626;background:#fef2f2;border-radius:4px;padding:2px 4px;margin-top:4px;align-self:flex-start}[data-theme=dark] .bento-closed-tag{background:#dc262626;color:#f87171}@keyframes bentoFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bento-count-up{transition:none}.bento-empty{display:flex;align-items:center;justify-content:center;min-height:80px;color:var(--bento-text-muted);font-size:12px}@media (max-width: 1024px){.bento-grid{grid-template-columns:1fr;grid-template-rows:auto auto auto}.bento-cell--hero{grid-column:1;grid-row:1}.bento-cell--sections{grid-column:1;grid-row:2}.bento-cell--stats{grid-column:1;grid-row:3}}@media (max-width: 640px){.bento-grid{padding:8px;gap:6px}.bento-cell{padding:12px}.bento-exams__days{grid-template-columns:repeat(2,1fr)}.bento-sections__grid{grid-template-columns:1fr}.bento-stats__primary,.bento-stats__secondary{grid-template-columns:repeat(2,1fr)}.bento-stat-chip:nth-child(3){grid-column:span 2}}
