.top-box{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-2xl);padding:var(--space-xl);border:1px solid var(--glass-border);transition:var(--transition-base);width:100%;max-width:100%;box-shadow:var(--shadow-xs)}.top-box-compact{padding:var(--space-md) var(--space-lg)}.top-box:has(.course-form-collapse-btn){padding-top:var(--space-sm);padding-bottom:var(--space-lg);padding-inline:var(--space-xl)}.course-form-compact{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.course-form-compact .btn-primary,.course-form-compact .btn-secondary{width:100%;min-width:0;height:auto;min-height:44px;padding:var(--space-xs) var(--space-md);box-sizing:border-box;font-size:var(--text-sm);letter-spacing:0;font-weight:600;line-height:1.2}.course-form-compact .btn-primary{border:2px solid #0000}.course-form-compact .btn-secondary{-webkit-backdrop-filter:var(--glass-blur);color:var(--primary-600);background:#ffffff1f;border:2px solid #ff795599}.course-form-compact .btn-secondary:hover{background:var(--primary-500);border-color:var(--primary-500);color:var(--white)}.course-form-collapse-btn{margin-bottom:var(--space-sm);margin-top:0;padding:var(--space-sm) var(--space-md);min-height:44px;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin-inline-start:auto;font-weight:600;text-decoration:underline;display:block}.course-form-collapse-btn:hover{color:var(--primary-600)}.course-form-collapse-btn:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px;border-radius:var(--radius-sm)}.course-form{gap:var(--space-lg);flex-direction:column;display:flex}.form-row{align-items:center;gap:var(--space-md) var(--space-lg);grid-template-columns:minmax(7.5rem,9.5rem) minmax(0,1fr);display:grid}.form-label{color:var(--text-color);font-weight:600;font-size:var(--text-sm);text-align:start;line-height:1.35}.form-control-wrap{width:100%;min-width:0;position:relative}.form-control-wrap--grade .grade-dropdown-input-mode{width:100%}.course-form .form-input,.course-form .credit-hours-input,.course-form .grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger{width:100%;min-width:0;padding:0 var(--space-lg);border:1px solid var(--glass-border);border-radius:var(--radius-md);font-size:var(--text-base);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);color:var(--text-color);transition:border-color .2s var(--ease-out-quart), box-shadow .2s var(--ease-out-quart), background-color .2s var(--ease-out-quart);box-sizing:border-box;box-shadow:var(--shadow-xs);outline:none;font-weight:550;height:48px!important;min-height:48px!important}.course-form .form-input--text:placeholder-shown{text-align:center}.course-form .form-input--text:not(:placeholder-shown){text-align:start}.course-form .form-input:focus,.course-form .form-input:focus-visible,.course-form .credit-hours-input:focus-within,.course-form .grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger:hover,.course-form .grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger:focus,.course-form .grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger:focus-visible{border-color:var(--primary-500);background:#ffffff6b;box-shadow:0 0 0 3px #ff795533}.course-form .form-input::placeholder{color:var(--text-secondary);opacity:1;font-weight:400}.course-form-suggestions{top:calc(100% + var(--space-xs));padding:var(--space-xs);border:1px solid var(--glass-border);border-radius:var(--radius-md);max-height:14rem;z-index:var(--z-dropdown);box-shadow:var(--shadow-md);-webkit-backdrop-filter:var(--glass-blur);background:#ffffffeb;margin:0;list-style:none;position:absolute;inset-inline:0;overflow-y:auto}.course-form-suggestion-item{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font:inherit;color:var(--text-color);text-align:start;cursor:pointer;transition:background-color .15s var(--ease-out-quart);background:0 0;border:0;font-weight:500;display:flex}.course-form-suggestion-item:hover,.course-form-suggestion-item.is-active{color:var(--primary-700);background:#ff79551f}.course-form-suggestion-item:focus-visible{outline:2px solid var(--primary-500);outline-offset:-2px}.course-form-suggestion-code{font-variant-numeric:tabular-nums;color:var(--primary-600);flex-shrink:0;font-weight:700}.course-form-suggestion-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.course-form .grade-dropdown-input-text{text-align:center;width:max-content;max-width:calc(100% - 3rem);font-size:var(--text-lg);font-variant-numeric:tabular-nums;pointer-events:none;font-weight:650;position:absolute;left:50%;transform:translate(-50%)}.course-form .grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger{cursor:pointer;justify-content:flex-end;align-items:center;gap:0;margin:0;display:flex;position:relative}.course-form .grade-dropdown-input-mode .grade-dropdown-arrow{z-index:1;width:14px;height:14px;color:var(--text-secondary);flex-shrink:0;margin:0;position:relative}.course-form-actions{gap:var(--space-sm);margin-top:var(--space-xs);padding-top:var(--space-md);border-top:1px solid var(--glass-border);flex-wrap:wrap;justify-content:stretch;display:flex}.course-form-actions .btn-primary,.course-form-actions .btn-secondary{min-height:44px;padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);letter-spacing:0;box-sizing:border-box;flex:12rem;font-weight:600}.course-form-actions .btn-primary{border:2px solid #0000}.course-form-actions .btn-secondary{-webkit-backdrop-filter:var(--glass-blur);color:var(--primary-600);background:#ffffff1f;border:2px solid #ff795599}.course-form-actions .btn-secondary:hover{background:var(--primary-500);border-color:var(--primary-500);color:var(--white)}[dir=rtl] .form-label{text-align:start}@media (max-width:768px){.top-box{padding:var(--space-lg);border-radius:var(--radius-xl)}.top-box:has(.course-form-collapse-btn){padding-top:var(--space-xs);padding-bottom:var(--space-md);padding-inline:var(--space-lg)}.form-row{gap:var(--space-xs);grid-template-columns:1fr}.form-label{font-size:var(--text-base)}.course-form .form-input,.course-form .credit-hours-input,.course-form .grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger{padding:0 var(--space-md);height:44px!important;min-height:44px!important;max-height:44px!important}.course-form-compact{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.course-form-compact .btn-primary,.course-form-compact .btn-secondary{width:100%;min-width:0;height:36px;min-height:36px;padding:0 var(--space-md);font-size:var(--text-sm);letter-spacing:0}.course-form-actions{gap:var(--space-xs);padding-top:var(--space-sm);flex-direction:row}.course-form-actions .btn-primary,.course-form-actions .btn-secondary{width:auto;min-width:0;height:36px;min-height:36px;padding:0 var(--space-md);font-size:var(--text-sm);letter-spacing:0;flex:1 1 0}}@media (max-width:360px){.form-label{min-width:0}}
.grade-dropdown{width:100%;display:inline-block;position:relative}.grade-dropdown-input-mode{width:100%;display:block}.grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger{border-radius:var(--radius-md);background:var(--glass-bg);border:1px solid var(--glass-border);width:100%;min-width:0;height:48px;min-height:48px;padding:0 var(--space-lg);box-sizing:border-box;margin-inline-start:0}.grade-dropdown-trigger{background:var(--gray-100);width:24px;height:24px;color:var(--gray-600);font-size:var(--text-sm);cursor:pointer;transition:var(--transition-base);text-align:center;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:8px;padding:0;font-weight:600;display:inline-flex;position:relative}.grade-dropdown-trigger:not(.grade-dropdown-pill):hover{background:var(--gray-200)}.grade-dropdown-trigger:active{transform:translateY(0)}.grade-dropdown-trigger-compact{width:24px;min-width:auto;height:24px;box-shadow:var(--shadow-xs);padding:0}.grade-dropdown-pill{width:auto;min-width:72px;height:36px;min-height:36px;padding:0 var(--space-sm) 0 var(--space-md);border-radius:var(--radius-full);justify-content:space-between;gap:var(--space-xs);box-shadow:none;font-weight:650;font-size:var(--text-sm);border:1px solid #0000;margin:0;line-height:1}.grade-dropdown-pill.empty-grade-pill{background:var(--gray-100);color:var(--gray-600);border-color:var(--gray-200)}.grade-dropdown-pill:hover{filter:brightness(.94)}.grade-dropdown-pill.empty-grade-pill:hover{background:var(--gray-200);filter:none}.grade-dropdown-pill-value,.grade-ltr.grade-dropdown-pill-value{text-align:center;flex:1;min-width:0}.grade-dropdown-pill .grade-dropdown-arrow{opacity:.9;flex-shrink:0;width:10px;height:10px}.grade-dropdown-text{flex-shrink:0}.grade-dropdown-arrow{transition:var(--transition-base);flex-shrink:0;width:8px;height:8px}.grade-dropdown-arrow.open{transform:rotate(180deg)}.grade-dropdown-menu{z-index:var(--z-dropdown);border:1px solid var(--gray-200);border-radius:var(--radius-lg);width:220px;animation:dropdownSlideIn .25s var(--ease-out);box-shadow:var(--shadow-md);isolation:isolate;pointer-events:auto;background:#fff;margin-top:0;position:absolute;overflow:hidden}.grade-dropdown-content{max-height:300px;padding:var(--space-md);scrollbar-width:thin;scrollbar-color:var(--gray-300) transparent;overflow-y:auto}.grade-dropdown-content::-webkit-scrollbar{width:6px}.grade-dropdown-content::-webkit-scrollbar-track{background:0 0}.grade-dropdown-content::-webkit-scrollbar-thumb{background-color:var(--gray-300);border-radius:3px}.grade-dropdown-option{width:100%;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-size:var(--text-sm);text-align:center;cursor:pointer;transition:var(--transition-fast);border:none;justify-content:center;align-items:center;height:36px;margin-bottom:4px;font-weight:600;display:flex;color:#fff!important}.grade-dropdown-option:last-child{margin-bottom:0}.grade-dropdown-option:hover{box-shadow:var(--shadow-sm);filter:brightness(1.05);transform:scale(1.02)}.grade-dropdown-option:hover:after{content:"";z-index:-1;position:absolute;inset:0}.grade-dropdown-separator{background:var(--gray-200);border-radius:var(--radius-full);height:1px;margin:6px 12px}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.course-table .grade-dropdown-trigger:not(.form-input-style-trigger):not(.grade-dropdown-pill){width:44px;min-width:44px;height:44px;min-height:44px;padding:0}.course-table .grade-dropdown-pill{width:var(--clist-pill-w,54px);min-width:var(--clist-pill-w,54px);max-width:var(--clist-pill-w,54px);height:var(--clist-pill-h,28px);min-height:var(--clist-pill-h,28px);border-radius:var(--radius-full);gap:4px;margin:0;padding:0 6px 0 8px;font-size:.75rem}.course-table .grade-dropdown-pill .grade-dropdown-arrow{width:8px;height:8px}@media (max-width:768px){.grade-dropdown-trigger:not(.form-input-style-trigger):not(.grade-dropdown-pill){width:20px;min-width:20px;height:20px;font-size:var(--text-xs);padding:0}.course-table .grade-dropdown-trigger:not(.form-input-style-trigger):not(.grade-dropdown-pill){width:44px;min-width:44px;height:44px;min-height:44px}.course-table .grade-dropdown-pill{width:var(--clist-pill-w,50px);min-width:var(--clist-pill-w,50px);max-width:var(--clist-pill-w,50px);height:var(--clist-pill-h,28px);min-height:var(--clist-pill-h,28px);border-radius:var(--radius-full)}.grade-dropdown-option{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs);height:28px}.grade-dropdown-menu{width:140px;box-shadow:0 3px 10px #00000026}.course-grade-badge{width:40px;min-width:40px;height:28px;font-size:var(--text-xs);padding:0}}@media (max-width:480px){.grade-dropdown-menu{width:120px}.grade-dropdown-option{height:auto;min-height:44px;padding:var(--space-sm) var(--space-md)}.course-table .grade-dropdown-trigger:not(.grade-dropdown-pill){width:44px;min-width:44px;height:44px;min-height:44px}.course-table .grade-dropdown-pill{width:var(--clist-pill-w,52px);min-width:var(--clist-pill-w,52px);max-width:var(--clist-pill-w,52px);height:var(--clist-pill-h,36px);min-height:var(--clist-pill-h,36px);border-radius:var(--radius-full)}.course-grade-badge{width:40px;min-width:40px;height:28px;font-size:var(--text-xs);padding:0}}@media (prefers-contrast:high){.top-box,.table-box,.gpa-display,.form-input,.form-select,.course-form .credit-hours-input,.course-form .grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger{background:var(--white);-webkit-backdrop-filter:none;border:2px solid var(--border-color)}}
.credit-hours-input{--credit-pane-blur:3px;--credit-pane-blur-far:calc(var(--credit-pane-blur) * 1.6);--credit-pane-overlay:.04;--credit-pane-gradient-peak:.1;--credit-pane-inset-glow:.06;position:relative;background:var(--glass-bg)!important;width:100%!important;min-width:200px!important;height:50px!important;-webkit-backdrop-filter:var(--glass-blur)!important;border:1px solid var(--glass-border)!important;border-radius:var(--radius-md)!important;isolation:isolate!important;transition:var(--transition-base)!important;box-sizing:border-box!important;visibility:visible!important;opacity:1!important;flex:1 0!important;justify-content:space-between!important;align-items:center!important;display:flex!important;box-shadow:inset 0 1px #ffffff80,0 2px 6px #0000000a!important}.credit-hours-input-inner{flex:1;justify-content:space-between;align-items:center;width:100%;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.credit-hours-input:focus-within{background:#ffffff40!important;border-color:#ff795599!important;transform:translateY(-1px)!important;box-shadow:0 0 0 3px #ff795526!important}.perspective-container{perspective:1200px;perspective-origin:50%;justify-content:center;align-items:center;height:100%;z-index:1!important;flex:1!important;min-width:60px!important;display:flex!important;position:relative!important;overflow:hidden!important}.number-dial-viewport{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:visible}.number-strip{transform-style:preserve-3d;transform-origin:50%;will-change:transform;z-index:30;backface-visibility:hidden;perspective:1000px;align-items:center;width:max-content;height:100%;display:flex;position:absolute;top:0;left:0;transition:transform .4s var(--ease-out-quart)!important}.number-strip.animating{transition:transform .85s cubic-bezier(.25,.46,.45,.94)!important}.number-item{color:#1f2937;backface-visibility:hidden;opacity:1;box-sizing:border-box;text-shadow:0 1px 3px #0000001a;text-align:center;font-smooth:always;-webkit-font-smoothing:subpixel-antialiased;-webkit-user-select:none;user-select:none;flex:0 0 50px;justify-content:center;align-items:center;width:50px;min-width:50px;max-width:50px;height:100%;margin:0;padding:0;font-weight:800;display:flex;position:relative;transform:scale(1);text-rendering:optimizelegibility!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;z-index:35!important;font-size:1.25rem!important;transition:transform .4s,color .4s,opacity .4s,filter .3s,text-shadow .3s!important}.animating .number-item{transition:transform .7s cubic-bezier(.25,.46,.45,.94),opacity .5s cubic-bezier(.25,.46,.45,.94),color .4s,filter .4s!important}.credit-hours-input .number-item:not(.active){opacity:.85;z-index:20!important;filter:blur(var(--credit-pane-blur))!important}.credit-hours-input .number-item.prev,.credit-hours-input .number-item.next{opacity:.75}.credit-hours-input .number-item.prev{color:#6b7280;text-shadow:0 -1px #0000000d;transform:translate(-55px)translateZ(-12px)scale(.86)}.credit-hours-input .number-item.next{color:#6b7280;text-shadow:0 -1px #0000000d;transform:translate(55px)translateZ(-12px)scale(.86)}.number-item.active{opacity:1;color:#111827;letter-spacing:-.01em;text-shadow:0 1px 2px #0000001f;font-weight:800;position:relative;transform:translateZ(20px)scale(1.2);isolation:isolate!important;z-index:100!important;filter:none!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;text-rendering:optimizelegibility!important}.number-item.active:after{display:none}@keyframes pulse{0%{opacity:.5;transform:scale(.96)}40%{opacity:.65;transform:scale(1.03)}70%{opacity:.55;transform:scale(.99)}to{opacity:.7;transform:scale(1.01)}}.credit-hours-input .glass-pane-left,.credit-hours-input .glass-pane-right{box-shadow:inset 0 0 16px rgba(255, 255, 255, var(--credit-pane-inset-glow));pointer-events:auto!important;z-index:100!important;background:rgba(255, 255, 255, var(--credit-pane-overlay))!important;-webkit-backdrop-filter:none!important;-webkit-tap-highlight-color:transparent!important;width:calc(50% - 25px)!important;height:100%!important;transition:all .25s!important;position:absolute!important;top:0!important}.credit-hours-input .glass-pane-left{background-image:linear-gradient(to right, rgba(255, 255, 255, var(--credit-pane-gradient-peak)) 0%, rgba(255, 255, 255, calc(var(--credit-pane-gradient-peak) * .5)) 30%, rgba(255, 255, 255, calc(var(--credit-pane-overlay) * 1.5)) 70%, transparent 100%);border-right:1px solid #ffffff29;left:0!important}.credit-hours-input .glass-pane-right{background-image:linear-gradient(to left, rgba(255, 255, 255, var(--credit-pane-gradient-peak)) 0%, rgba(255, 255, 255, calc(var(--credit-pane-gradient-peak) * .5)) 30%, rgba(255, 255, 255, calc(var(--credit-pane-overlay) * 1.5)) 70%, transparent 100%);border-left:1px solid #ffffff29;right:0!important}.center-window{margin:0;box-shadow:0 0 20px #fffc,inset 0 0 6px #fff,0 0 2px #ffffffe6;-webkit-backdrop-filter:none!important;pointer-events:none!important;z-index:25!important;background:0 0!important;border:0!important;border-left:1px solid #fff9!important;border-right:1px solid #fff9!important;width:50px!important;height:100%!important;position:absolute!important;top:0!important;left:50%!important;transform:translate(-50%)!important}.center-window:after{content:"";pointer-events:none;background:0 0;width:100%;height:100%;position:absolute;top:0;left:0}.arrow-button{z-index:200!important;pointer-events:none!important;justify-content:center!important;align-items:center!important;width:40px!important;height:100%!important;display:flex!important;position:absolute!important;top:0!important}.arrow-button svg{color:#2d3748!important;width:20px!important;height:20px!important;transition:transform .25s!important}.credit-arrow{-webkit-backdrop-filter:blur(5px);cursor:pointer;color:#3c465acc;z-index:6;border-radius:var(--radius-sm);background:#ffffff26 linear-gradient(#fff3 0%,#ffffff1a 100%);border:none;justify-content:center;align-items:center;width:40px;min-width:40px;height:100%;transition:transform .2s,background-color .2s;display:flex;position:relative;box-shadow:0 2px 6px #00000008,inset 0 0 0 1px #fff3;flex-shrink:0!important}.credit-arrow:hover{color:#323c50f2;-webkit-backdrop-filter:blur(5px)saturate(150%);background:#ffffff40;transform:translateY(-1px)}.credit-arrow:hover:not(:disabled){background:linear-gradient(#ff8c6e40 0%,#ff795533 100%);transform:scale(1.05);box-shadow:0 2px 12px #ff785526,inset 0 0 0 1px #ffffff4d}.credit-arrow:active:not(:disabled){background:linear-gradient(#ff795540 0%,#ff64464d 100%);transition:all .1s;transform:scale(.95)}.credit-arrow:disabled{opacity:.5;cursor:not-allowed;color:var(--text-muted);-webkit-backdrop-filter:blur(3px)}.credit-arrow svg{filter:drop-shadow(0 1px 1px #0000001a);width:20px;height:20px}.credit-arrow-left{background-image:linear-gradient(270deg,#fff6 0%,#fff 80% 100%);border-right:1px solid #c8dcf04d;position:relative;overflow:hidden}.credit-arrow-left:before{content:"";pointer-events:none;background:linear-gradient(135deg,#fff3 0%,#fff0 50%);width:100%;height:100%;position:absolute;top:0;left:0}.credit-arrow-right{background-image:linear-gradient(90deg,#fff 0% 20%,#fff6 100%);border-left:1px solid #c8dcf04d;position:relative;overflow:hidden}.credit-arrow-right:before{content:"";pointer-events:none;background:linear-gradient(225deg,#fff3 0%,#fff0 50%);width:100%;height:100%;position:absolute;top:0;left:0}@media (max-width:768px){.credit-hours-input{visibility:visible!important;opacity:1!important;box-sizing:border-box!important;isolation:isolate!important;background:#ffffff59!important;border:2px solid #ffffff80!important;flex-shrink:0!important;justify-content:space-between!important;align-items:center!important;width:100%!important;min-width:200px!important;max-width:none!important;height:50px!important;display:flex!important}.credit-hours-input-inner{overflow:hidden!important}.perspective-container{visibility:visible!important;opacity:1!important;flex:1!important;justify-content:center!important;align-items:center!important;min-width:120px!important;height:100%!important;display:flex!important}.number-item{flex:0 0 45px!important;justify-content:center!important;align-items:center!important;width:45px!important;min-width:45px!important;max-width:45px!important;font-size:1.1rem!important;display:flex!important}.glass-pane-left,.glass-pane-right{opacity:1!important;visibility:visible!important;width:calc(50% - 22px)!important;height:100%!important;display:block!important}.center-window{visibility:visible!important;width:45px!important;height:100%!important;display:block!important}.credit-arrow{visibility:visible!important;opacity:1!important;flex:0 0 45px!important;justify-content:center!important;align-items:center!important;width:45px!important;min-width:45px!important;max-width:45px!important;height:100%!important;display:flex!important}.credit-arrow svg{width:18px!important;height:18px!important}}@media (max-width:480px){.credit-hours-input{visibility:visible!important;opacity:1!important;isolation:isolate!important;background:#ffffff59!important;border:2px solid #ffffff80!important;flex-shrink:0!important;justify-content:space-between!important;align-items:center!important;width:100%!important;min-width:200px!important;height:50px!important;padding:0!important;display:flex!important}.number-item{flex:0 0 40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;font-size:1.1rem!important}.glass-pane-left,.glass-pane-right{opacity:1!important;visibility:visible!important;width:calc(50% - 20px)!important;display:block!important}.center-window{visibility:visible!important;width:40px!important;display:block!important}.credit-arrow{visibility:visible!important;opacity:1!important;flex:0 0 40px!important;justify-content:center!important;align-items:center!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:100%!important;display:flex!important}.credit-arrow svg{width:18px!important;height:18px!important}.perspective-container{visibility:visible!important;opacity:1!important;flex:1!important;min-width:120px!important;display:flex!important}}@media (max-width:400px){.credit-hours-input{isolation:isolate!important;min-width:180px!important}.number-item{font-size:1rem!important}}@media (max-width:360px){.credit-hours-input{isolation:isolate!important;min-width:160px!important;height:50px!important}.number-item{flex:0 0 35px!important;width:35px!important;min-width:35px!important;max-width:35px!important;font-size:1rem!important}.center-window{width:35px!important}.credit-arrow{flex:0 0 35px!important;width:35px!important;min-width:35px!important;max-width:35px!important}.credit-arrow svg{width:16px!important;height:16px!important}.perspective-container{min-width:90px!important}.glass-pane-left,.glass-pane-right{width:calc(50% - 17px)!important}}@media (max-width:320px){.credit-hours-input{isolation:isolate!important;min-width:140px!important;height:50px!important}.perspective-container{min-width:70px!important}.number-item{font-size:.9rem!important}}.number-strip.shaking{position:relative}.glass-pane-left:active .arrow-button svg,.glass-pane-right:active .arrow-button svg{transition:transform .1s;transform:scale(.9)}[dir=rtl] .credit-hours-input{direction:ltr!important;width:auto!important;min-width:200px!important;max-width:100%!important;margin-inline:auto 0!important}[dir=rtl] .credit-hours-input-inner,[dir=rtl] .perspective-container,[dir=rtl] .number-dial-viewport,[dir=rtl] .number-strip{direction:ltr!important}@media (max-width:768px){.credit-hours-input{margin:0!important;padding:0!important;transform:scale(1)!important}.credit-hours-input .credit-hours-input-inner{overflow:hidden!important}.credit-hours-input .perspective-container{flex:1!important;justify-content:center!important;align-items:center!important;min-width:120px!important;height:100%!important;display:flex!important}.credit-hours-input .glass-pane-left,.credit-hours-input .glass-pane-right,.credit-hours-input .center-window{visibility:visible!important;opacity:1!important;height:100%!important;display:block!important}.credit-hours-input .credit-arrow{flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:45px!important;min-width:45px!important;height:100%!important;display:flex!important}}@media (max-width:480px){.credit-hours-input{isolation:isolate!important;min-width:180px!important}.credit-hours-input .credit-arrow{width:40px!important;min-width:40px!important}}@media (max-width:360px){.credit-hours-input{isolation:isolate!important;min-width:160px!important}.credit-hours-input .credit-arrow{width:35px!important;min-width:35px!important}.credit-hours-input .perspective-container{min-width:90px!important}}.credit-hours-container{flex:1;justify-content:center;align-items:center;min-width:0;height:50px;display:flex;position:relative;overflow:hidden}.credit-hours-display{justify-content:center;align-items:center;width:100%;min-width:0;height:100%;display:flex;position:relative}.credit-hours-current,.credit-hours-pending{font-size:var(--text-base);color:var(--text-color);-webkit-user-select:none;user-select:none;font-weight:650;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute}.credit-hours-current{z-index:2}.credit-hours-pending{z-index:1;opacity:0}.credit-hours-container.slide-left .credit-hours-current{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideOutRight}.credit-hours-container.slide-left .credit-hours-pending{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideInLeft}.credit-hours-container.slide-right .credit-hours-current{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideOutLeft}.credit-hours-container.slide-right .credit-hours-pending{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideInRight}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-3px)}20%,40%,60%,80%{transform:translate(3px)}}.credit-arrow.shake{animation:.5s cubic-bezier(.4,0,.2,1) shake}.credit-hours-container.resetting .credit-hours-current{animation:.2s ease-in-out pulseScale}@keyframes pulseScale{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.loading{opacity:.6;pointer-events:none}.loading:after{content:"";border:2px solid var(--primary-color);border-top-color:#0000;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;animation:1s linear infinite spin;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}
.table-box{isolation:isolate;gap:var(--space-md);border-radius:var(--radius-2xl);box-shadow:none;padding:var(--space-xl);padding-bottom:calc(var(--space-xl) + var(--term-indent));--clist-section-gap:8px;--clist-block-gap:12px;--clist-header-min-h:48px;--clist-pill-h:28px;--clist-pill-w:54px;--clist-action:34px;--clist-control-track:var(--clist-pill-w);--clist-remove-track:calc(var(--clist-action) + var(--clist-row-pe));--clist-controls-gap:10px;--clist-name-px:16px;--clist-row-py:10px;--clist-row-pe:var(--clist-row-py);--clist-collapse-duration:.36s;--clist-collapse-ease:cubic-bezier(.45, 0, .55, 1);--clist-shadow-bleed:16px;--clist-edge-inset:var(--term-indent);--course-pill-width:var(--clist-pill-w);--grade-pill-width:var(--clist-pill-w);--course-control-size:var(--clist-action);--course-row-gap:var(--clist-controls-gap);background:0 0;border:none;flex-direction:column;display:flex;position:relative;overflow:visible}.table-box:before{content:"";border-radius:inherit;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-xs);pointer-events:none;z-index:0;position:absolute;inset:0}.table-box>*{z-index:1;position:relative}.table-box-toolbar{min-height:44px;margin:calc(-1 * var(--clist-shadow-bleed)) calc(-1 * var(--clist-shadow-bleed)) 0;padding:var(--clist-shadow-bleed) var(--clist-shadow-bleed) 0;flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.table-box-body{gap:var(--clist-block-gap);margin:calc(-1 * var(--clist-shadow-bleed));padding:var(--clist-shadow-bleed);flex-direction:column;display:flex;overflow:visible}.table-box-body>.course-group.level-group{gap:var(--clist-section-gap);flex-direction:column;margin:0;display:flex}.table-box-body>.course-group.level-group>.level-header+.level-container,.table-box-body>.course-group.level-group>.level-header+.manual-container{margin-top:0}.table-box .level-container-inner{gap:var(--clist-section-gap);flex-direction:column;margin:0;padding:0;display:flex}.table-box .term-group{flex-direction:column;gap:0;display:flex;margin:0!important}.table-box .level-container,.table-box .term-group .term-container,.table-box .manual-container{overflow-clip-margin:0;grid-template-rows:1fr;display:grid;overflow:clip;transition-property:grid-template-rows!important;transition-duration:var(--clist-collapse-duration)!important;transition-timing-function:var(--clist-collapse-ease)!important}.table-box .level-container.collapsed,.table-box .term-group .term-container.collapsed,.table-box .manual-container.collapsed{overflow-clip-margin:0;pointer-events:none;-webkit-user-select:none;user-select:none;touch-action:none;grid-template-rows:0fr;overflow:clip}.table-box .level-container.expanded,.table-box .term-group .term-container.expanded,.table-box .manual-container.expanded{overflow-clip-margin:var(--clist-shadow-bleed);pointer-events:auto;grid-template-rows:1fr;overflow:clip}.level-container,.term-container,.manual-container{overflow-clip-margin:0;grid-template-rows:1fr;display:grid;overflow:clip;transition:grid-template-rows var(--clist-collapse-duration,.36s) var(--clist-collapse-ease,cubic-bezier(.45, 0, .55, 1))!important}.level-container.collapsed,.term-container.collapsed,.manual-container.collapsed{overflow-clip-margin:0;grid-template-rows:0fr}.level-container.expanded,.term-container.expanded,.manual-container.expanded{overflow-clip-margin:var(--clist-shadow-bleed,12px);grid-template-rows:1fr}.table-box .level-container-inner,.table-box .term-container-inner,.table-box .manual-container-inner{min-height:0;margin:0}.table-box .level-container.expanded>.level-container-inner,.table-box .manual-container.expanded>.manual-container-inner,.table-box .term-group .term-container.expanded>.term-container-inner{overflow:visible}.table-box .level-container.collapsed>.level-container-inner,.table-box .term-group .term-container.collapsed>.term-container-inner,.table-box .manual-container.collapsed>.manual-container-inner{overflow-clip-margin:0;overflow:clip}@supports not (overflow-clip-margin:1px){.table-box .level-container.expanded,.table-box .term-group .term-container.expanded,.table-box .manual-container.expanded,.table-box .level-container.expanded>.level-container-inner,.table-box .term-group .term-container.expanded>.term-container-inner,.table-box .manual-container.expanded>.manual-container-inner,.table-box .level-container.collapsed,.table-box .term-group .term-container.collapsed,.table-box .manual-container.collapsed,.table-box .level-container.collapsed>.level-container-inner,.table-box .term-group .term-container.collapsed>.term-container-inner,.table-box .manual-container.collapsed>.manual-container-inner{overflow:hidden}.table-box .term-container.expanded>.term-container-inner{padding-inline:var(--clist-shadow-bleed);padding-bottom:var(--clist-shadow-bleed)}.table-box .manual-container.expanded>.manual-container-inner{padding-inline:var(--clist-shadow-bleed)}}@supports (interpolate-size:allow-keywords){.table-box .level-container,.table-box .term-group .term-container,.table-box .manual-container{interpolate-size:allow-keywords}}.table-box .term-container-inner{padding-top:0}.table-box .term-group .term-container.expanded>.term-container-inner{padding-top:var(--clist-section-gap)}.table-box .manual-container-inner{padding:0}.table-box .level-container>.level-container-inner,.table-box .manual-container>.manual-container-inner{box-shadow:none;border-radius:0}.table-box .course-group.level-group,.table-box .course-group.term-group,.table-box .manual-courses-group,.table-box .term-group .group-header.term-header{overflow:visible}.group-header{pointer-events:auto!important;visibility:visible!important;position:relative!important}:root{--level-width:100%;--term-width:94%;--term-indent:3%;--course-width:100%;--stats-button-right-distance:0px;--group-spacing:0px;--remove-btn-base-size:var(--course-control-size);--remove-btn-size:var(--course-control-size);--remove-btn-min-size:var(--course-control-size)}.reset-button-container{z-index:1;pointer-events:auto;justify-content:flex-end;align-items:center;display:flex;position:static}.reset-button{font-weight:700;font-family:var(--font-bricolage), sans-serif;color:#ff7955;border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--glass-blur);box-shadow:none;cursor:pointer;background:0 0;border:1px solid #0000001a;justify-content:center;align-items:center;gap:8px;padding:.6rem 1.2rem;font-size:.9rem;transition:background .2s;display:inline-flex}.reset-button:hover{background:#ffffffe6}.reset-button:active{background:#ffffffb3}html[lang=ar] .reset-button,[dir=rtl] .reset-button{font-family:inherit}.reset-button:focus{outline:none;box-shadow:0 0 0 2px #ff795533}.reset-button svg{color:#ff7955;width:16px;height:16px}.reset-button{min-height:44px}@media (max-width:768px){.reset-button{font-size:var(--text-sm);padding:var(--space-sm) var(--space-md);gap:var(--space-xs);min-height:44px}.reset-button svg{width:16px;height:16px}}@media (max-width:480px){.reset-button{font-size:var(--text-sm);padding:var(--space-sm) var(--space-md);min-height:44px}.reset-button svg{width:16px;height:16px}}.level-group{width:var(--level-width);margin:0;position:relative}.level-group:last-child{margin-bottom:0}.level-header{width:var(--level-width);margin-bottom:0}.level-container-inner>.term-group{box-sizing:content-box;padding:0 var(--clist-shadow-bleed);position:relative;overflow:visible;width:var(--term-width)!important;margin-left:calc(var(--term-indent) - var(--clist-shadow-bleed))!important;margin-right:calc(var(--term-indent) - var(--clist-shadow-bleed))!important;margin-top:0!important;margin-bottom:0!important}.term-group{margin:0!important}.level-container-inner>.term-group .group-header,.table-box .course-group.level-group .level-container .term-group .term-header{width:100%!important}.term-title{text-align:left;align-items:center;width:100%;height:100%;display:flex;position:relative}.group-header{align-items:center;gap:var(--space-sm)}.group-header-toggle{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;font:inherit;color:inherit;text-align:start;cursor:pointer;touch-action:manipulation;appearance:none;box-sizing:border-box;background:0 0;border:0;flex-direction:row;margin:0;padding:0;display:flex}.table-box button.group-header.group-header-toggle{min-height:var(--clist-header-min-h);flex:none}.group-header-toggle:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:var(--radius-lg)}.group-header-primary,.group-header-stats-row{pointer-events:none}.group-header-static{cursor:default}.group-header-primary-plain{gap:0}.table-box .group-header.level-header+.table-container,.table-box .term-group .group-header.term-header+.term-container,.table-box .course-group.level-group>.level-container,.table-box .course-group.level-group>.manual-container{padding:0}.group-header-primary{align-items:center;gap:var(--space-md);flex:auto;min-width:0;display:flex}.group-header-name{font-size:var(--text-lg);color:var(--text-color);letter-spacing:.025em;text-wrap:balance;font-weight:650}.group-header-stats-row{justify-content:flex-end;align-items:center;gap:var(--space-xs) var(--space-sm);font-size:var(--text-sm);color:var(--text-secondary);text-align:end;flex-wrap:wrap;flex-shrink:0;margin-inline-start:auto;font-weight:600;display:flex}.group-metric{white-space:nowrap}.group-metric.gpa{color:var(--primary-color)}.group-metric.credits .passed{color:var(--gray-700)}.group-metric.credits .sep{color:var(--gray-400);margin:0 1px}.group-metric.credits .failed{color:var(--primary-600)}.group-metric-sep{color:var(--gray-400);font-weight:400}.table-box .term-group .table-container,.table-box .term-group .term-container{width:100%;margin-left:0;margin-right:0;padding:0}.course-container{justify-content:center;width:100%;margin:0;padding:0;display:flex;overflow:visible}.table-box .course-container{isolation:isolate;-webkit-backdrop-filter:none;box-shadow:none;background:0 0;border:none;position:relative;overflow:visible}.table-box .course-container:before{content:"";border-radius:var(--radius-lg);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-xs);pointer-events:none;z-index:0;position:absolute;inset:0}.table-box .course-container>*{z-index:1;position:relative}.table-box .course-container .course-table{border-radius:var(--radius-lg);background:0 0;margin:0;padding:0;overflow:hidden}.level-container-inner>.term-group .table-container table,.term-group .table-container .course-table,.table-box .course-group.term-group .table-container table{width:100%!important;max-width:100%!important}.term-group .term-header,.term-group .table-container,.term-group .table-container table{margin-left:0!important;margin-right:0!important}.table-box table.course-table{max-width:var(--term-width)!important;width:100%!important}.level-group .level-header{width:100%!important;max-width:100%!important;margin-right:0!important}.table-box .manual-courses-group>.manual-container>.manual-container-inner>.course-container,.table-box .course-group.level-group>.table-container>.course-container{width:var(--term-width)!important;margin-left:var(--term-indent)!important;margin-right:var(--term-indent)!important}.term-group .course-table tbody tr,.table-box .manual-courses-group .course-table,.course-group.level-group>.table-container>.course-container>.course-table{width:100%!important;max-width:100%!important}.course-group,.course-group:last-child{margin-bottom:0}.table-box .group-header{min-height:var(--clist-header-min-h);padding:var(--space-md) var(--space-md);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:var(--transition-base);box-shadow:var(--shadow-xs);justify-content:space-between;align-items:center;margin:0;display:flex;overflow:visible}.course-group.level-group>.group-header{margin-bottom:0!important}.group-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none;z-index:1;touch-action:manipulation;position:relative;pointer-events:auto!important}.group-toggle{pointer-events:none;background:var(--primary-color);border-radius:var(--radius-full);width:24px;height:24px;transition:background var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.group-toggle svg{fill:#fff;width:16px;height:16px;transition:transform var(--clist-collapse-duration) var(--clist-collapse-ease)}.group-name{flex:1}.group-title{align-items:center;gap:var(--space-md);font-size:var(--text-lg);color:var(--text-color);letter-spacing:.025em;text-align:left;flex:1;margin:0;font-weight:650;display:flex;position:relative}.group-toggle.expanded svg{transform:rotate(180deg)}.group-toggle.collapsed svg{transform:rotate(0)}.table-box .course-table{margin:0;padding:0}.term-title{font-size:var(--text-base);color:var(--text-secondary);font-weight:600}@media (max-width:768px){:root{--term-width:100%;--term-indent:0px}.table-box{padding:var(--space-md);padding-bottom:var(--space-md)}.table-box .level-container-inner{box-sizing:border-box;padding-inline-start:var(--space-sm)}.level-container-inner>.term-group{padding-inline:0;width:100%!important;margin-inline:0!important}.level-group:first-child{margin-top:0}.term-group .table-container table{width:100%!important}.table-box .group-header{min-height:var(--clist-header-min-h);padding:var(--space-sm) var(--space-md);display:flex;justify-content:space-between!important;align-items:center!important}.group-title{font-size:var(--text-base);gap:var(--space-sm);display:flex;align-items:center!important}.group-toggle{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.group-toggle svg{width:10px;height:10px}.group-title,.term-title{align-items:center;height:100%;display:flex}}@media (max-width:640px){:root{--term-width:100%;--term-indent:0px}.table-box .level-container-inner{box-sizing:border-box;padding-inline-start:var(--space-sm)}.level-container-inner>.term-group{padding-inline:0;width:100%!important;margin-inline:0!important}.table-box .manual-courses-group>.manual-container>.manual-container-inner>.course-container,.table-box .course-group.level-group>.table-container>.course-container{width:100%!important;margin-inline:0!important}.table-box table.course-table{max-width:100%!important}}@media (max-width:600px){:root{--term-width:100%;--term-indent:0px}}@media (max-width:480px){:root{--term-width:100%;--term-indent:0px}.table-box{padding:var(--space-md);padding-bottom:var(--space-md)}.term-group{margin-bottom:0}.term-title{font-size:.95rem}.table-box .group-header{min-height:var(--clist-header-min-h)}}@media (max-width:430px){.group-title{justify-content:flex-start;align-items:center;display:flex}.table-box .group-header{min-height:var(--clist-header-min-h);padding:var(--space-sm) var(--space-md);justify-content:space-between;align-items:center;display:flex}.group-header-toggle{align-content:center;row-gap:var(--space-xs);flex-wrap:wrap}.group-header-stats-row{justify-content:flex-end;width:100%}}@media (max-width:400px){:root{--term-width:100%;--term-indent:0px}.term-title{font-size:.85rem}.table-box .group-header{min-height:var(--clist-header-min-h)}}@media (max-width:380px){.table-box .group-header{min-height:var(--clist-header-min-h)}}.level-container.collapsed button,.level-container.collapsed a,.level-container.collapsed input,.level-container.collapsed select,.level-container.collapsed [role=button],.term-container.collapsed button,.term-container.collapsed a,.term-container.collapsed input,.term-container.collapsed select,.term-container.collapsed [role=button],.manual-container.collapsed button,.manual-container.collapsed a,.manual-container.collapsed input,.manual-container.collapsed select,.manual-container.collapsed [role=button]{pointer-events:none!important}.level-container.collapsed .remove-btn,.term-container.collapsed .remove-btn,.manual-container.collapsed .remove-btn{visibility:hidden;pointer-events:none!important}.course-table tbody tr.course-row{grid-template-columns:minmax(0, 1fr) var(--clist-control-track,var(--clist-pill-w)) var(--clist-control-track,var(--clist-pill-w)) var(--clist-remove-track,calc(var(--clist-action) + var(--clist-row-pe)));column-gap:var(--clist-controls-gap,var(--course-row-gap));align-items:center;min-height:0;padding:0;display:grid}.level-container.collapsed .course-row,.term-container.collapsed .course-row,.manual-container.collapsed .course-row{pointer-events:none!important}.course-table tbody tr.course-row{pointer-events:auto;visibility:visible;opacity:1;height:auto;min-height:calc(var(--clist-pill-h,28px) + var(--clist-row-py,10px) * 2);box-sizing:border-box;position:relative}.course-table td.course-name{text-align:start;min-width:0;padding-block:var(--clist-row-py,10px);padding-inline:var(--clist-name-px,12px);white-space:nowrap;text-overflow:ellipsis;grid-column:1;overflow:hidden}.course-table td.course-hours{text-align:center;padding-block:var(--clist-row-py,10px);white-space:nowrap;grid-column:2;justify-content:center;align-items:center;padding-inline:0;display:flex}.course-table td.course-grade{padding-block:var(--clist-row-py,10px);grid-column:3;justify-content:center;align-items:center;padding-inline:0;display:flex}.course-table td.course-remove{padding-block:var(--clist-row-py,10px);padding-inline:0 var(--clist-row-pe,var(--clist-row-py,10px));z-index:12;grid-column:4;justify-content:end;align-items:center;display:flex;position:relative;overflow:visible}.course-table .credit-hours-pill-mode{justify-content:center;width:100%;display:flex}.course-table .credit-hours-pill{width:var(--clist-pill-w,var(--course-pill-width));min-width:var(--clist-pill-w,var(--course-pill-width));max-width:var(--clist-pill-w,var(--course-pill-width));height:var(--clist-pill-h,28px);min-height:var(--clist-pill-h,28px);border-radius:var(--radius-full);background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-200);cursor:pointer;opacity:1;justify-content:space-between;align-items:center;gap:4px;margin:0;padding:0 6px 0 8px;font-size:.75rem;font-weight:650;line-height:1;transition:background .15s,border-color .15s;display:inline-flex;transform:none}.course-table .credit-hours-pill:hover{background:var(--gray-200);border-color:var(--gray-300)}.course-table .credit-hours-pill-value{text-align:center;flex:1;min-width:0}.course-table .credit-hours-pill .credit-hours-dropdown-arrow{opacity:.75;flex-shrink:0;width:8px;height:8px}.course-table .grade-dropdown-pill-mode{justify-content:center;width:100%;display:flex}.course-table td.course-remove .remove-btn{width:var(--clist-action,var(--course-control-size));height:var(--clist-action,var(--course-control-size));min-width:var(--clist-action,var(--course-control-size));min-height:var(--clist-action,var(--course-control-size));border-radius:var(--radius-md);border:1px solid var(--gray-200);color:var(--gray-500);cursor:pointer;appearance:none;box-sizing:border-box;background-color:#0000;justify-content:center;align-items:center;margin:0;padding:0;transition:background-color .2s cubic-bezier(.25,1,.5,1),border-color .2s cubic-bezier(.25,1,.5,1),color .2s cubic-bezier(.25,1,.5,1);display:inline-flex}.course-table td.course-remove .remove-btn svg{pointer-events:none;flex-shrink:0;width:15px;height:15px;transition:color .2s cubic-bezier(.25,1,.5,1)}@media (hover:hover) and (pointer:fine){.course-table td.course-remove .remove-btn:hover{color:#fff;background-color:#dc2626;border-color:#dc2626}.course-table td.course-remove .remove-btn:hover svg,.course-table td.course-remove .remove-btn:hover svg path{color:#fff;stroke:#fff}}.course-table td.course-remove .remove-btn:active{color:#fff;background-color:#b91c1c;border-color:#b91c1c}.course-table td.course-remove .remove-btn:active svg,.course-table td.course-remove .remove-btn:active svg path{color:#fff;stroke:#fff}.course-table .remove-btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:768px){.table-box{--clist-section-gap:8px;--clist-block-gap:11px;--clist-header-min-h:50px;--clist-pill-w:50px;--clist-controls-gap:8px;--clist-name-px:14px;--clist-row-py:9px}.table-box .group-header{padding-block:var(--space-md)}}@media (max-width:480px){.table-box{--clist-section-gap:7px;--clist-block-gap:10px;--clist-header-min-h:50px;--clist-pill-h:36px;--clist-pill-w:52px;--clist-controls-gap:8px;--clist-name-px:12px;--clist-row-py:8px;--clist-action:44px}.table-box .group-header{padding-block:var(--space-md)}}.credit-hours-dropdown-trigger{-webkit-backdrop-filter:var(--glass-blur);cursor:pointer;width:24px;height:24px;color:var(--text-color);opacity:0;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;margin-left:0;padding:0;font-size:12px;transition:all .2s;display:inline-flex;transform:scale(.8)}.credit-hours-dropdown-trigger.static-arrow{opacity:1;background:var(--gray-100);color:var(--gray-600);width:var(--course-control-size);height:var(--course-control-size);min-width:var(--course-control-size);min-height:var(--course-control-size);border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:0;display:flex;transform:scale(1)}.credit-hours-dropdown-trigger.static-arrow:hover{background:var(--gray-200)}@media (hover:none){.credit-hours-dropdown-trigger.static-arrow{opacity:1}}.credit-hours-dropdown-trigger:hover:not(.credit-hours-pill),.credit-hours-dropdown-trigger:focus:not(.credit-hours-pill){background:var(--gray-300);transform:scale(1.1)}.credit-hours-dropdown-arrow{color:var(--text-color);transition:var(--transition-base);flex-shrink:0;width:8px;height:8px;display:block}.credit-hours-dropdown-arrow.open{transform:rotate(180deg)}.credit-hours-dropdown-menu{width:140px;-webkit-backdrop-filter:var(--glass-blur);z-index:1000;isolation:isolate;pointer-events:auto;opacity:0;background:#fffffff2;border-radius:12px;margin-top:8px;animation:.15s ease-out forwards dropdownFadeIn;position:fixed;overflow:hidden;transform:translateY(-5px);box-shadow:0 5px 20px #0000001f,0 1px 5px #0000000d,0 0 0 1px #fff6}@keyframes dropdownFadeIn{to{opacity:1;transform:translateY(0)}}.credit-hours-dropdown-content{scrollbar-width:thin;scrollbar-color:var(--gray-300) transparent;max-height:180px;padding:12px;overflow-y:auto}.credit-hours-dropdown-content::-webkit-scrollbar{width:5px}.credit-hours-dropdown-content::-webkit-scrollbar-track{background:0 0}.credit-hours-dropdown-content::-webkit-scrollbar-thumb{background-color:var(--gray-300);border-radius:3px}.credit-hours-dropdown-option{width:100%;padding:6px var(--space-sm);border-radius:var(--radius-md);font-size:var(--text-sm);text-align:center;cursor:pointer;color:var(--text-color);background:#fff9;border:none;justify-content:center;align-items:center;min-height:28px;margin-bottom:0;font-weight:600;transition:all .15s ease-out;display:flex}.credit-hours-dropdown-option:hover{background:#ffffffe6;transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.credit-hours-dropdown-separator{background:#0000000d;height:1px;margin:4px 0}.credit-hours-cell{justify-content:flex-start;align-items:center;width:100%;display:flex;position:relative}.credit-hours-value{padding-left:8px;font-weight:550}.course-hours{align-items:center;display:flex;position:relative;padding-right:0!important}.credit-hours-cell{justify-content:flex-start;align-items:center;width:100%;display:flex}.credit-hours-dropdown-trigger.static-arrow{opacity:1;transform:scale(1)}.credit-hours-dropdown{z-index:10;position:relative}tr.dropdown-open{z-index:var(--z-dropdown)!important;position:relative!important}.credit-hours-value-container{text-align:center;justify-content:center;align-items:center;min-width:30px;display:flex}.credit-hours-value{justify-content:center;align-items:center;font-weight:550;display:inline-flex}@media (max-width:768px){.credit-hours-dropdown-trigger{opacity:.8}}@media (hover:none){.credit-hours-dropdown-trigger{opacity:.8}}.course-table{border-collapse:separate;border-spacing:0;border-radius:var(--radius-md);width:100%;margin:0;overflow:visible}.table-header-hidden{display:none}.course-table tbody{overflow:visible}.course-table tbody tr{transition:var(--transition-base);background:#ffffff26;border-bottom:1px solid #ffffff59;position:relative;overflow:visible}.course-table tbody tr:hover:not(.dropdown-open){z-index:1;background:#ffffff40}.course-table tbody tr.dropdown-open{z-index:5;background:#ffffff26;transform:none}.course-table tbody tr:last-child{border-bottom:none}.course-table td{text-align:center;color:var(--text-color);border:none;padding:0;font-weight:550;position:relative}.course-name{color:var(--text-color);font-weight:650}.course-hours{color:var(--text-secondary);font-weight:600}.grade-cell{justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.form-grade-container{box-sizing:border-box;flex:1;justify-content:center;align-items:center;width:100%;min-width:200px;display:flex;position:relative}.empty-state{text-align:center;padding:var(--space-3xl);color:var(--text-muted);text-shadow:0 1px 2px #ffffffb3}.empty-state-icon{width:64px;height:64px;margin:0 auto var(--space-lg);color:var(--gray-300)}.empty-state-icon svg{width:100%;height:100%}.empty-state p{font-size:var(--text-lg);margin:0}@media (max-width:480px){.gpa-display{max-width:100%}.top-box,.gpa-display,.table-box:before,.form-input,.form-select,.credit-hours-input,.grade-dropdown-input-mode .grade-dropdown-trigger.form-input-style-trigger{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-border)}.credit-arrow{aspect-ratio:1;flex-shrink:0;justify-content:center;align-items:center;width:40px;min-width:40px;height:100%;display:flex}}
.confirmation-modal .modal-body{padding-top:var(--space-md);padding-bottom:var(--space-lg)}.confirmation-message{font-size:var(--text-base);color:var(--text-color);text-align:center;text-wrap:pretty;margin:0;line-height:1.55}.confirmation-modal .modal-footer .button-group{justify-content:stretch;gap:var(--space-sm)}.confirmation-modal .modal-footer .button-group button{width:auto;min-width:0;height:44px;min-height:44px;max-height:44px;padding:0 var(--space-md);box-sizing:border-box;flex:1 1 0}.confirmation-modal .modal-footer .btn-danger{border:none;margin:0;font-weight:650}.btn-danger{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);color:var(--white);border-radius:var(--radius-md);font-size:var(--text-base);cursor:pointer;transition:var(--transition-base);letter-spacing:.01em;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;min-width:7.5rem;min-height:44px;font-weight:650;text-decoration:none;display:inline-flex}.btn-danger:hover{background:linear-gradient(135deg,#b91c1c,#991b1b)}.btn-danger:active{transform:translateY(1px)}.btn-danger:focus-visible{outline-offset:2px;outline:2px solid #dc2626}@media (max-width:480px){.confirmation-modal .modal-footer .button-group{flex-direction:column-reverse}.confirmation-modal .modal-footer .button-group button{width:100%}}
.gpa-sticky-root{width:100%}.gpa-sticky-slot{width:100%;margin-bottom:var(--space-sm);position:relative}.gpa-sticky-spacer{pointer-events:none;visibility:hidden;width:100%;display:block}.gpa-sticky-summary{--gpa-dock-duration:.24s;--gpa-dock-ease:cubic-bezier(.22, 1, .36, 1);z-index:var(--z-sticky);width:100%;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);box-sizing:border-box;justify-content:center;align-items:center;margin-bottom:0;display:flex;position:relative;overflow:hidden}.gpa-sticky-summary.is-floating{isolation:isolate;box-shadow:var(--shadow-sm);contain:layout paint;transform-origin:50%;will-change:top, width, height, padding, border-radius, backdrop-filter}.gpa-sticky-summary.is-undocking{--gpa-dock-duration:.18s}.gpa-sticky-summary.is-floating.is-compact{box-shadow:var(--shadow-xs)}.gpa-sticky-row{align-items:center;column-gap:var(--space-md);row-gap:var(--space-sm);width:100%;transition:column-gap var(--gpa-dock-duration) var(--gpa-dock-ease), row-gap var(--gpa-dock-duration) var(--gpa-dock-ease);display:grid}.gpa-sticky-summary.has-assessment .gpa-sticky-row,.gpa-sticky-summary:not(.has-assessment) .gpa-sticky-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.gpa-sticky-side{align-items:baseline;gap:var(--space-xs) var(--space-sm);min-width:0;transition:gap var(--gpa-dock-duration) var(--gpa-dock-ease);flex-wrap:wrap;display:flex}.gpa-sticky-side-start{text-align:end;grid-column:1;justify-content:flex-end;justify-self:end}.gpa-sticky-side-end{text-align:start;grid-column:3;justify-content:flex-start;justify-self:start}.gpa-sticky-center{justify-content:center;align-items:center;gap:var(--space-md);transition:gap var(--gpa-dock-duration) var(--gpa-dock-ease);flex-shrink:0;grid-column:2;display:flex}.gpa-sticky-label{font-size:var(--text-sm);color:var(--text-secondary);transition:font-size var(--gpa-dock-duration) var(--gpa-dock-ease);font-weight:600}.gpa-sticky-value{font-size:var(--text-2xl);color:var(--primary-600);font-variant-numeric:tabular-nums;transition:font-size var(--gpa-dock-duration) var(--gpa-dock-ease);font-weight:700;line-height:1.1}.gpa-sticky-scale{max-width:5rem;font-size:var(--text-sm);color:var(--text-muted);opacity:1;transform-origin:0;white-space:nowrap;transition:max-width var(--gpa-dock-duration) var(--gpa-dock-ease), opacity var(--gpa-dock-duration) var(--gpa-dock-ease), transform var(--gpa-dock-duration) var(--gpa-dock-ease);display:inline-block;overflow:hidden;transform:scaleX(1)}.gpa-sticky-credits .gpa-sticky-value{font-size:var(--text-xl)}.gpa-sticky-unit{font-size:var(--text-sm);color:var(--text-secondary);transition:font-size var(--gpa-dock-duration) var(--gpa-dock-ease);margin-inline-start:var(--space-xs);font-weight:600}.gpa-sticky-divider{background:var(--border-color);width:1px;min-height:1.5rem;transition:min-height var(--gpa-dock-duration) var(--gpa-dock-ease), width var(--gpa-dock-duration) var(--gpa-dock-ease);flex-shrink:0;align-self:stretch}.gpa-sticky-assessment{font-size:var(--text-sm);text-align:center;white-space:nowrap;transition:font-size var(--gpa-dock-duration) var(--gpa-dock-ease);font-weight:650;line-height:1.2}.gpa-sticky-summary.is-compact .gpa-sticky-row{column-gap:var(--space-sm);row-gap:0;width:100%;max-width:100%}.gpa-sticky-summary.is-floating.is-compact .gpa-sticky-row{flex-wrap:nowrap;justify-content:center;align-items:center;width:100%;display:flex}.gpa-sticky-summary.is-floating.is-compact .gpa-sticky-side-start,.gpa-sticky-summary.is-floating.is-compact .gpa-sticky-side-end,.gpa-sticky-summary.is-floating.is-compact .gpa-sticky-center{text-align:center;flex-shrink:0;grid-column:auto;justify-content:center;justify-self:auto}.gpa-sticky-summary.is-floating.is-compact .gpa-sticky-side{flex-wrap:nowrap}.gpa-sticky-summary.is-compact .gpa-sticky-value,.gpa-sticky-summary.is-compact .gpa-sticky-credits .gpa-sticky-value{font-size:var(--text-base);line-height:1}.gpa-sticky-summary.is-compact .gpa-sticky-label,.gpa-sticky-summary.is-compact .gpa-sticky-unit{font-size:var(--text-xs);line-height:1.2}.gpa-sticky-summary.is-compact .gpa-sticky-assessment{font-size:var(--text-xs)}.gpa-sticky-summary.is-compact .gpa-sticky-divider{min-height:1rem}.gpa-sticky-summary.is-compact .gpa-sticky-center{gap:var(--space-sm)}.gpa-sticky-summary.is-compact .gpa-sticky-side{gap:var(--space-xs);flex-wrap:nowrap}.gpa-sticky-summary.is-compact .gpa-sticky-scale{opacity:0;max-width:0;overflow:hidden;transform:scaleX(.85)}@media (max-width:640px){.gpa-sticky-summary:not(.is-floating){top:calc(var(--header-clearance) + env(safe-area-inset-top,0px));z-index:var(--z-sticky);position:sticky}.gpa-sticky-summary.is-compact .gpa-sticky-side-end .gpa-sticky-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (max-width:520px){.gpa-sticky-summary:not(.is-floating) .gpa-sticky-row{text-align:center;grid-template-columns:1fr;justify-items:center}.gpa-sticky-summary:not(.is-floating) .gpa-sticky-side-start,.gpa-sticky-summary:not(.is-floating) .gpa-sticky-side-end{text-align:center;grid-column:1;justify-content:center;justify-self:center}.gpa-sticky-summary:not(.is-floating) .gpa-sticky-center{grid-column:1;width:min(12rem,70%)}.gpa-sticky-summary:not(.is-floating) .gpa-sticky-divider{align-self:center;width:100%;height:1px;min-height:0}.gpa-sticky-summary.is-compact .gpa-sticky-side-start .gpa-sticky-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (max-width:400px){.gpa-sticky-summary.is-compact .gpa-sticky-assessment{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gpa-sticky-summary.is-compact .gpa-sticky-center .gpa-sticky-divider:last-child{display:none}}
.import-textarea::placeholder{color:var(--gray-600);opacity:1}.import-textarea{width:100%;min-height:11rem;padding:var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:var(--text-sm);background:var(--gray-50);color:var(--text-color);resize:vertical;box-sizing:border-box;text-align:start;vertical-align:top;scrollbar-width:thin;outline:none;padding-inline-end:calc(var(--space-md) + 5.75rem);font-weight:400;line-height:1.5;transition:border-color .2s,box-shadow .2s}.import-textarea:focus{border-color:var(--primary-color);background:var(--white);box-shadow:0 0 0 3px #ff795526}.import-textarea.import-textarea-error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261f}.textarea-container{width:100%;position:relative}.paste-btn{top:var(--space-sm);z-index:2;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-sm);min-width:44px;min-height:44px;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-xs);transition:var(--transition-base);font-weight:600;display:inline-flex;position:absolute;inset-inline-end:var(--space-sm)}.paste-btn:hover{color:var(--primary-color);background:var(--primary-50);border-color:#ff795573}.paste-btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.paste-btn svg{flex-shrink:0;width:18px;height:18px}.how-to-link{color:var(--primary-color);font-size:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.how-to-link:hover{color:var(--primary-hover)}.import-error{margin:0 0 var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);color:var(--gray-800);background:#ef444414;border:1px solid #ef444447}.import-error p{font-size:var(--text-sm);margin:0;font-weight:500;line-height:1.5}.import-error-action{margin-top:var(--space-sm);display:inline-block}.import-modal .modal-body{padding-bottom:var(--space-md)}.import-modal .modal-footer{padding-top:var(--space-sm)}.import-modal .modal-footer .button-group{justify-content:flex-end}@media (max-width:640px){.import-textarea{min-height:9.5rem;padding-inline-end:calc(var(--space-md) + 5.25rem)}}
.how-to-modal .modal-header{border-bottom:none;padding-bottom:0}.how-to-tabs{padding:0 var(--space-xl);border-bottom:1px solid var(--border-color);flex-shrink:0;gap:0;display:flex}.how-to-tab{padding:var(--space-md) var(--space-lg);font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-bottom:-1px;font-weight:600;transition:color .2s;position:relative}.how-to-tab:after{content:"";left:var(--space-lg);right:var(--space-lg);background:0 0;border-radius:3px 3px 0 0;height:3px;transition:background-color .2s;position:absolute;bottom:0}.how-to-tab:hover{color:var(--text-color)}.how-to-tab.active{color:var(--primary-color)}.how-to-tab.active:after{background:var(--primary-color)}.how-to-tab:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px;border-radius:var(--radius-xs)}.how-to-body{padding:var(--space-lg) var(--space-xl) var(--space-xl)}.how-to-steps{color:var(--text-color);margin:0;padding-inline-start:1.35rem;line-height:1.65}.how-to-steps li{margin-bottom:var(--space-md);padding-inline-start:var(--space-xs)}.how-to-steps li:last-child{margin-bottom:0}.how-to-steps a{color:var(--primary-color);text-underline-offset:2px;font-weight:600;text-decoration:underline}.how-to-steps a:hover{color:var(--primary-hover)}@media (max-width:480px){.how-to-tabs{padding:0 var(--space-md);scrollbar-width:none;overflow-x:auto}.how-to-tabs::-webkit-scrollbar{display:none}.how-to-tab{padding:var(--space-sm) var(--space-md);flex:1 0 auto;min-height:44px}.how-to-tab:after{left:var(--space-md);right:var(--space-md)}.how-to-body{padding:var(--space-md) var(--space-lg) var(--space-lg)}.how-to-steps{font-size:var(--text-sm);padding-inline-start:1.15rem}.how-to-steps li{margin-bottom:var(--space-sm)}}
.header-float-btn{top:max(var(--space-md), env(safe-area-inset-top,0px));z-index:var(--z-header-float);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);min-width:44px;min-height:44px;box-shadow:var(--shadow-xs);-webkit-backdrop-filter:var(--glass-blur);transition:var(--transition-base);justify-content:center;align-items:center;padding:0;display:inline-flex;position:fixed}.header-float-btn:hover{background:#ffffffbf;border-color:#ff795566}.header-float-btn-inner{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);box-sizing:border-box;min-width:44px;min-height:44px;color:var(--text-color);font-size:var(--text-sm);cursor:pointer;appearance:none;background:0 0;border:none;margin:0;font-weight:500;display:inline-flex}.header-float-btn-inner:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:var(--radius-xs)}.how-to-btn{left:var(--space-md)}.language-switcher{right:var(--space-md);font-family:var(--font-rubik), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}[dir=rtl] .language-switcher,html[lang=ar] .language-switcher{font-family:var(--font-bricolage), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.language-switcher-label{font-variant-numeric:tabular-nums}@media (max-width:400px){.how-to-btn-label,.language-switcher-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header-float-btn-inner{padding:var(--space-sm)}}
.fcai-status-indicator{--fcai-pill-inset:8px;--fcai-dot-size:9px;--fcai-pill-gap:8px;justify-content:center;align-items:center;gap:var(--fcai-pill-gap);box-sizing:border-box;min-height:calc(var(--fcai-dot-size) + 2 * var(--fcai-pill-inset) + 2px);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-xs);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;border-radius:9999px;margin:0;padding-block:0;padding-inline-start:calc(var(--fcai-pill-inset) + var(--fcai-dot-size) + var(--fcai-pill-gap));padding-inline-end:calc(var(--fcai-pill-inset) + 3px);font-weight:500;line-height:1;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex;position:relative}.fcai-status-indicator:hover{color:var(--text-secondary);background:#ffffff59;border-color:#ffffff80;text-decoration:none}.fcai-status-link-icon{opacity:.8;flex-shrink:0;width:12px;height:12px}.fcai-status-dot{top:var(--fcai-pill-inset);left:var(--fcai-pill-inset);width:var(--fcai-dot-size);height:var(--fcai-dot-size);border-radius:50%;flex-shrink:0;position:absolute}.fcai-status-dot.fcai-status-online{background:#22c55e}.fcai-status-dot.fcai-status-offline{background:#ef4444}.fcai-status-dot.fcai-status-unknown{background:#eab308}
.app-footer{text-align:center;z-index:10;justify-content:center;align-items:center;width:min(95%,755px);margin-top:0;margin-left:auto;margin-right:auto;padding:0 0 40px;display:flex;position:relative}.footer-content{width:100%;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-lg);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);transition:var(--transition-base);justify-content:space-between;align-items:center;display:flex}.footer-content:hover{background:#ffffff38;border:1px solid #fff3}.footer-left{flex:1;justify-content:flex-start;align-items:center;min-width:0;display:flex}.footer-creator-link{color:var(--text-color);opacity:.78;font-size:var(--text-sm);letter-spacing:.3px;transition:var(--transition-base);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.footer-creator-link-icon{stroke-width:2px;flex-shrink:0;width:13px;height:13px}.footer-creator-link:hover{opacity:1;color:var(--text-color)}.footer-creator-link:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:var(--radius-xs)}.footer-right{flex:none;justify-content:flex-end;align-items:center;display:flex}.footer-star-btn{justify-content:center;align-items:center;gap:var(--space-sm);min-height:36px;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);color:var(--text-color);font-size:var(--text-sm);transition:var(--transition-base);box-shadow:var(--shadow-xs);background:#ffffff59;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.footer-star-btn-github{width:16px;height:16px;color:var(--text-color);opacity:.85;flex-shrink:0}.footer-star-btn-separator{background:var(--border-color);flex-shrink:0;align-self:stretch;width:1px;min-height:1rem;margin-block:2px}.footer-star-btn-label{font-weight:600;line-height:1}.footer-star-btn-star{color:#e8b923;flex-shrink:0;width:14px;height:14px}.footer-star-btn:hover{color:var(--text-color);background:#ffffff80;border-color:#ff795573;transform:translateY(-1px)}.footer-star-btn:active{transform:translateY(0)}.footer-star-btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:768px){.app-footer{width:min(92%,800px)}.footer-content{gap:var(--space-md);padding:var(--space-lg) var(--space-md);background:#ffffff38;flex-direction:row}.footer-left{justify-content:flex-start}.footer-creator-link{font-size:var(--text-sm);font-weight:600}}@media (max-width:480px){.app-footer{width:min(90%,800px)}.footer-content{gap:14px;padding:18px 16px}.footer-star-btn{min-height:40px;padding:var(--space-sm) var(--space-md)}}@media (max-width:360px){.app-footer{width:min(95%,800px)}.footer-content{gap:12px;padding:16px 12px}}
