:root{color-scheme:light dark;--primary: light-dark(#4A4459, #CFC3E0);--onPrimary: light-dark(#FFFFFF, #352E44);--primaryContainer: light-dark(#E6E0F0, #4A4459);--onPrimaryContainer: light-dark(#1A1626, #E6E0F0);--secondary: light-dark(#5F5D65, #C9C5CE);--secondaryContainer: light-dark(#E6E1E6, #48454E);--onSecondaryContainer: light-dark(#1B1B1F, #E6E1E6);--tertiary: light-dark(#7A4F6D, #E8B9DA);--onTertiary: light-dark(#FFFFFF, #46263E);--tertiaryContainer: light-dark(#E9E0EA, #5C3B51);--onTertiaryContainer: light-dark(#1E1A22, #F7D9EE);--surface: light-dark(#FCF8FD, #141316);--surfaceContainerLowest: light-dark(#FFFFFF, #0F0E11);--surfaceContainerLow: light-dark(#F5F1F6, #1C1B1F);--surfaceContainer: light-dark(#EFEBF0, #201F23);--surfaceContainerHigh: light-dark(#E9E5EA, #2B292E);--surfaceContainerHighest: light-dark(#E4E0E5, #363438);--onSurface: light-dark(#1C1B1F, #E6E1E6);--onSurfaceVariant: light-dark(#48454E, #CAC4D0);--outline: light-dark(#79747E, #938F99);--outlineVariant: light-dark(#CAC4D0, #49454F);--inverseSurface: light-dark(#313033, #E6E1E6);--inverseOnSurface: light-dark(#F4EFF4, #313033);--inversePrimary: light-dark(#CFC3E0, #4A4459);--error: light-dark(#B3261E, #F2B8B5);--onError: light-dark(#FFFFFF, #601410);--errorContainer: light-dark(#F9DEDC, #8C1D18);--onErrorContainer: light-dark(#410E0B, #F9DEDC);--success: light-dark(#137333, #7DD99A);--successContainer: light-dark(#E1F3E6, #14391F);--onSuccessContainer: light-dark(#0B3D1C, #C5EBD0);--warning: light-dark(#B06000, #FFB74D);--onWarning: light-dark(#FFFFFF, #3B2300);--warningContainer: light-dark(#FFF8E1, #3B2E10);--onWarningContainer: light-dark(#795548, #FFE0B2);--warningOutline: light-dark(#F9A825, #8A6A1F);--rowActive: color-mix(in srgb, var(--primaryContainer) 45%, var(--surface));--rowAbsent: color-mix(in srgb, var(--errorContainer) 40%, var(--surface));--hairline: color-mix(in srgb, var(--outline) 16%, transparent);--focusRing: color-mix(in srgb, var(--primary) 22%, transparent);--scrim: light-dark(rgba(28, 27, 31, .45), rgba(0, 0, 0, .62));--motion-spring: cubic-bezier(.34, 1.56, .64, 1);--motion-standard: cubic-bezier(.2, 0, 0, 1);--r-full: 9999px;--r-xl: 28px;--r-lg: 20px;--r-md: 14px;--r-sm: 10px;--r-xs: 6px;--tap: 48px;--page-pad-x: 16px;--header-pt: calc(16px + env(safe-area-inset-top, 0px)) ;--page-pb: calc(24px + env(safe-area-inset-bottom, 0px)) ;--header-btn-size: 40px;--header-btn-tap: 48px;--gap-header-home: 32px;--gap-header-att: 24px;--gap-home-sections: 12px;--gap-list-rows: 2px;--fs-xs: 12px;--fs-s: 13px;--fs-m: 15px;--fs-l: 17px;--fs-xl: 22px;--fs-display: 48px;--shadow-1: 0 1px 3px light-dark(rgba(74, 68, 89, .08), rgba(0, 0, 0, .45)), 0 1px 2px light-dark(rgba(0, 0, 0, .04), rgba(0, 0, 0, .3));--shadow-2: 0 4px 20px light-dark(rgba(74, 68, 89, .06), rgba(0, 0, 0, .35)), 0 1px 3px light-dark(rgba(0, 0, 0, .03), rgba(0, 0, 0, .3));--shadow-3: 0 12px 40px light-dark(rgba(74, 68, 89, .2), rgba(0, 0, 0, .6));--shadow-sheet: 0 -4px 30px light-dark(rgba(0, 0, 0, .15), rgba(0, 0, 0, .55));--bg: var(--surface);--card: var(--surfaceContainerLow);--text: var(--onSurface);--muted: var(--onSurfaceVariant);--border: var(--outlineVariant);--accent: var(--primary);--danger: var(--error);--radius: var(--r-lg);--shadow: var(--shadow-1)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;background-color:var(--surface);color:var(--onSurface);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font-family:inherit}.auth-title,.att-sheet-title,.att-header-title{text-wrap:balance}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pageFadeOut{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)}}@keyframes authFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes authFadeOut{to{opacity:0}}@keyframes sheetSlideUp{0%{transform:translateY(100%);opacity:.8}to{transform:none;opacity:1}}@keyframes sheetSlideDown{to{transform:translateY(100%);opacity:0}}@keyframes modalScaleIn{0%{transform:scale(.96) translateY(8px);opacity:0}to{transform:none;opacity:1}}@keyframes modalScaleOut{to{transform:scale(.96) translateY(8px);opacity:0}}.dash-refresh-btn,.auth-close-btn,.chip-btn,.m3-connected-btn,.att-reset-filter-btn,.att-sim-reset-btn,.att-stepper-card-btn,.m3-reconnect-pill,.saved-profile-clear,.segmented-pill,.auth-input-inline-btn{position:relative}.dash-refresh-btn:after,.auth-close-btn:after,.chip-btn:after,.m3-connected-btn:after,.att-reset-filter-btn:after,.att-sim-reset-btn:after,.att-stepper-card-btn:after,.m3-reconnect-pill:after,.saved-profile-clear:after,.segmented-pill:after,.auth-input-inline-btn:after{content:"";position:absolute;inset:min(0px,calc((100% - var(--tap)) / 2))}.dash{max-width:680px;margin:0 auto;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--surface)}.dash-view-enter{animation:pageFadeIn .25s var(--motion-standard) backwards}::view-transition-old(root){animation:.18s var(--motion-standard) both pageFadeOut}::view-transition-new(root){animation:.24s var(--motion-standard) both pageFadeIn}.dash-top-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:var(--header-pt) var(--page-pad-x) 0 var(--page-pad-x);background:var(--surface);border:0;border-radius:0;box-shadow:none;margin:0}.dash-user-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.dash-user-name{margin:0;font-size:var(--fs-xl);font-weight:700;line-height:1.15;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-user-sub{display:flex;align-items:center;gap:6px;min-width:0}.dash-sync-time{font-size:var(--fs-xs);color:var(--onSurfaceVariant);white-space:nowrap;display:inline-flex;align-items:center;gap:5px}.dash-institute-select{min-height:22px;padding:1px 8px;font-size:11px;font-weight:500;color:var(--onSurface);background:var(--surfaceContainer);border:1px solid var(--outlineVariant);border-radius:var(--r-full);outline:none}.dash-top-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.dash-refresh-btn{width:var(--header-btn-size);height:var(--header-btn-size);padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:var(--surfaceContainer);color:var(--onSurfaceVariant);cursor:pointer;flex-shrink:0;position:relative;transition:border-radius .3s var(--motion-spring),background-color .15s ease,color .15s ease}.dash-refresh-btn:after{content:"";position:absolute;inset:calc((var(--header-btn-size) - var(--header-btn-tap)) / 2)}.dash-refresh-btn:hover:not(:disabled){background:var(--surfaceContainerHigh);color:var(--onSurface)}.dash-refresh-btn:active:not(:disabled){border-radius:12px}.dash-refresh-btn:disabled{opacity:.5;cursor:default}.dash-refresh-btn.is-spinning svg{animation:spin .8s linear infinite}.dash-refresh-btn.is-feedback-spinning svg{animation:spin .5s ease-out 1}.m3-reconnect-pill{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border:0;border-radius:16px;background:var(--tertiaryContainer);color:var(--onTertiaryContainer);font-size:var(--fs-xs);font-weight:600;cursor:pointer;transition:border-radius .3s var(--motion-spring),filter .15s ease}.m3-reconnect-pill:hover{filter:brightness(.96)}.m3-reconnect-pill:active{border-radius:8px}.reconnect-dot{width:7px;height:7px;border-radius:50%;background:var(--warning)}.dash-content{display:flex;flex-direction:column;gap:var(--gap-home-sections);padding:var(--gap-header-home) var(--page-pad-x) 0}.m3-stacked-sections{display:flex;flex-direction:column;gap:var(--gap-list-rows)}.m3-card,.card.m3-card,.card.collapsed.m3-card{display:flex;flex-direction:column;padding:0;gap:0;background:var(--surfaceContainerLow);border:0;border-radius:var(--r-xs);box-shadow:none;overflow:hidden;scroll-margin-top:80px;transition:border-radius .3s var(--motion-spring),background-color .15s var(--motion-standard)}.m3-stacked-sections>:first-child,.m3-stacked-sections>:first-child.m3-card,.m3-stacked-sections>:first-child .m3-list-item{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.m3-stacked-sections>:last-child,.m3-stacked-sections>:last-child.m3-card{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.m3-stacked-sections>:last-child:not(.open) .m3-list-item{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.m3-stacked-sections>:only-child,.m3-stacked-sections>:only-child.m3-card,.m3-stacked-sections>:only-child .m3-list-item{border-radius:var(--r-lg)}.m3-stacked-sections>.m3-card:active:not(.open),.m3-stacked-sections>.m3-card:active:not(.open) .m3-list-item{background:var(--surfaceContainerHigh);border-radius:var(--r-md)}.m3-card-header,.card-header.m3-card-header{display:flex;width:100%;margin:0;padding:0}.m3-card .m3-list-item{border-radius:inherit;transition:background-color .15s var(--motion-standard),border-radius .3s var(--motion-spring)}.m3-card.open{background:color-mix(in srgb,var(--primary) 6%,var(--surfaceContainerLow));box-shadow:none}.m3-card.open>.m3-card-header .m3-list-item{background-color:transparent}.m3-accordion-wrapper{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .32s var(--motion-standard),visibility .32s}.m3-accordion-wrapper.expanded{grid-template-rows:1fr;visibility:visible}.m3-accordion-inner{overflow:hidden;min-height:0;opacity:0;transform:translateY(-4px);transition:opacity .25s var(--motion-standard),transform .28s var(--motion-standard)}.m3-accordion-wrapper.expanded .m3-accordion-inner{opacity:1;transform:none}.m3-card-body,.card-body.m3-card-body{margin-top:0;padding:4px 20px 18px;border-top:1px solid var(--hairline);background:transparent;display:flex;flex-direction:column;gap:10px}.m3-expanded-action-bar{display:flex;align-items:center;justify-content:flex-end;padding:0 0 6px;margin-bottom:4px}.m3-list-item{position:relative;display:flex;align-items:center;gap:16px;width:100%;min-height:72px;padding:14px 20px;background:transparent;color:var(--onSurface);border:0;text-align:left;text-decoration:none;-webkit-user-select:none;user-select:none;outline:none;overflow:hidden}.m3-card-toggle-btn{cursor:pointer;width:100%}.m3-list-item:before,.att-subject-row:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--onSurface);opacity:0;pointer-events:none;transition:opacity .15s linear}.m3-list-item:active:before,.att-subject-row:active:before{opacity:.1}@media(hover:hover){.m3-list-item:hover:before,.att-subject-row:hover:before{opacity:.06}.m3-list-item:hover .m3-trailing-chevron:not(.open){transform:translate(3px);color:var(--onSurface)}}.m3-leading-icon-circle{width:44px;height:44px;border-radius:50%;background:var(--primaryContainer);color:var(--onPrimaryContainer);display:flex;align-items:center;justify-content:center;flex-shrink:0}.m3-leading-icon-circle svg{width:22px;height:22px}.m3-item-content{display:flex;flex-direction:column;justify-content:center;gap:3px;flex:1;min-width:0}.m3-item-headline{font-size:16px;font-weight:600;line-height:1.3;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m3-item-supporting{font-size:var(--fs-s);line-height:1.35;color:var(--onSurfaceVariant);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m3-item-supporting.short{color:var(--error);font-weight:600}.m3-trailing-chevron{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;color:var(--outline);transition:transform .28s var(--motion-spring),color .15s ease}.m3-trailing-chevron.open{transform:rotate(90deg);color:var(--onSurface)}.sem-picker{min-height:44px;max-width:132px;padding:0 12px!important;font-size:14px!important;font-weight:600;color:var(--onSurface);background:var(--surface);border:1px solid var(--outlineVariant);border-radius:var(--r-md);cursor:pointer}.sem-picker:hover{background:var(--surfaceContainerLowest)}.card{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:24px;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);scroll-margin-top:80px}.card.collapsed{padding:16px 24px;gap:0}.card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;-webkit-user-select:none;user-select:none}.card-body{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:12px}.card label{display:grid;gap:8px;font-size:14px;font-weight:500}.card input,.card select{max-width:100%;min-height:var(--tap);padding:12px 14px;font-size:16px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md)}.muted{margin:0;font-size:14px;color:var(--muted)}.error,.section-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;margin:8px 0;border-radius:var(--r-md);background:var(--surfaceContainerLow);border:1px solid var(--outlineVariant);font-size:var(--fs-s);color:var(--onSurface)}.error button,.section-error button{min-height:32px;padding:0 14px;border-radius:var(--r-full);border:1px solid var(--outlineVariant);background:var(--surfaceContainerHigh);color:var(--onSurface);font-size:var(--fs-xs);font-weight:600;cursor:pointer}.error button:active,.section-error button:active{transform:scale(.96)}.error button:disabled,.section-error button:disabled{opacity:.6;cursor:default}.segmented-pill-toggle{display:flex;gap:2px}.segmented-pill{display:inline-flex;align-items:center;justify-content:center;flex:1;min-height:48px;padding:0 14px;border:0;border-radius:var(--r-xs);background:var(--surfaceContainer);color:var(--onSurfaceVariant);font-size:14px;font-weight:500;cursor:pointer;transition:border-radius .35s var(--motion-spring),background-color .2s ease,color .2s ease}.segmented-pill:first-child{border-radius:24px var(--r-xs) var(--r-xs) 24px}.segmented-pill:last-child{border-radius:var(--r-xs) 24px 24px var(--r-xs)}.segmented-pill:only-child{border-radius:24px}.segmented-pill.active{border-radius:24px;background:var(--primary);color:var(--onPrimary);font-weight:600}.segmented-pill:active:not(.active){border-radius:14px}@media(hover:hover){.segmented-pill:hover:not(.active){background:var(--surfaceContainerHigh);color:var(--onSurface)}}.auth-canvas{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--surface)}.auth-card-container{width:100%;max-width:416px;display:flex;flex-direction:column;align-items:center;gap:16px}.auth-card{width:100%;display:flex;flex-direction:column;gap:14px;padding:28px 22px;background:var(--surfaceContainerLow);border-radius:var(--r-xl);box-shadow:var(--shadow-2);animation:authFadeIn .3s var(--motion-standard) backwards}@media(max-width:639px){.auth-canvas{justify-content:flex-start;padding-top:max(28px,calc(env(safe-area-inset-top,0px) + 16px))}.auth-card:not(.renew-modal-card){padding:4px 0 8px;background:transparent;border-radius:0;box-shadow:none}}.auth-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:2px}.auth-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.auth-title{margin:0;font-size:28px;font-weight:700;line-height:1.15;letter-spacing:-.02em}.auth-subtitle{margin:0;font-size:14px;line-height:1.4;color:var(--onSurfaceVariant)}.auth-icon-badge{width:48px;height:48px;border-radius:24px;background:var(--primaryContainer);color:var(--onPrimaryContainer);display:flex;align-items:center;justify-content:center;flex-shrink:0}.auth-banner{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--r-md);font-size:var(--fs-s);line-height:1.4;font-weight:500}.auth-banner-warning{background:var(--warningContainer);border:1px solid var(--warningOutline);color:var(--onWarningContainer)}.auth-banner-error{background:var(--errorContainer);border:1px solid color-mix(in srgb,var(--error) 28%,transparent);color:var(--onErrorContainer)}.auth-field-group{display:flex;flex-direction:column;gap:6px}.auth-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.auth-field-label{font-size:var(--fs-xs);font-weight:600;color:var(--onSurfaceVariant);letter-spacing:.01em;-webkit-user-select:none;user-select:none;transition:color .15s ease}.auth-credentials-group,.auth-captcha-group{display:flex;flex-direction:column;gap:var(--gap-list-rows);width:100%}.auth-field-card,.auth-captcha-media-card{position:relative;display:flex;flex-direction:column;gap:2px;padding:10px 16px;background:var(--surfaceContainer);border-radius:var(--r-xs);transition:background-color .18s var(--motion-standard),border-radius .3s var(--motion-spring),box-shadow .18s var(--motion-standard)}.auth-card.renew-modal-card .auth-field-card,.auth-card.renew-modal-card .auth-captcha-media-card{background:var(--surfaceContainer)}@media(min-width:640px){.auth-field-card,.auth-captcha-media-card{background:var(--surfaceContainer)}}.auth-credentials-group>:first-child,.auth-captcha-group>:first-child{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.auth-credentials-group>:last-child,.auth-captcha-group>:last-child{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.auth-field-card.is-single,.auth-credentials-group>:only-child,.auth-captcha-group>:only-child{border-radius:var(--r-lg)}.auth-field-card:focus-within{background:var(--surfaceContainerHigh);border-radius:var(--r-md)}.auth-field-card:focus-within .auth-field-label{color:var(--primary)}.auth-captcha-media-card{gap:8px;padding:12px 16px}.auth-captcha-input-card{padding:6px 16px}.saved-profile-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--r-full);background:var(--surfaceContainerHigh);border:0;font-size:11px;font-weight:600;color:var(--onSurfaceVariant)}.saved-profile-chip svg{color:var(--success)}.saved-profile-clear{display:inline-flex;align-items:center;justify-content:center;margin-left:2px;padding:0 2px;background:none;border:0;border-radius:var(--r-full);color:var(--onSurfaceVariant);font-size:11px;line-height:1;cursor:pointer}.saved-profile-clear:hover{color:var(--error)}.auth-input{width:100%;height:32px;padding:0;font-size:16px;font-weight:500;color:var(--onSurface);background:transparent;border:0;border-radius:0;outline:none}.auth-captcha-input-card .auth-input{height:40px;letter-spacing:.1em}.auth-captcha-input-card .auth-input::placeholder{letter-spacing:normal;color:var(--onSurfaceVariant);opacity:1}.auth-captcha-status{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding-inline:4px;font-size:14px;color:var(--onSurfaceVariant)}.auth-captcha-manual{flex-shrink:0;min-height:44px;padding:4px;border:0;border-radius:var(--r-xs);background:transparent;color:var(--primary);font:inherit;font-weight:600;cursor:pointer}.auth-captcha-manual:hover{background:var(--surfaceContainerHigh)}.auth-captcha-manual:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.auth-input::placeholder{color:var(--outline);font-weight:400;opacity:.8}.auth-input:focus,.auth-input:focus-visible{outline:none;box-shadow:none}.auth-input.has-action{padding-right:44px}.auth-input:-webkit-autofill,.auth-input:-webkit-autofill:hover,.auth-input:-webkit-autofill:focus,.auth-input:-webkit-autofill:active{-webkit-text-fill-color:var(--onSurface);caret-color:var(--onSurface);-webkit-box-shadow:0 0 0 1000px var(--surfaceContainer) inset;box-shadow:0 0 0 1000px var(--surfaceContainer) inset;transition:background-color 9999s ease-out 0s}.auth-field-card:focus-within .auth-input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--surfaceContainerHigh) inset;box-shadow:0 0 0 1000px var(--surfaceContainerHigh) inset}.auth-input-action-wrapper{position:relative;width:100%;display:flex;align-items:center}.auth-input-inline-btn{position:absolute;right:-6px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:0;border-radius:18px;background:transparent;color:var(--onSurfaceVariant);cursor:pointer;transition:border-radius .3s var(--motion-spring),background-color .15s ease}.auth-input-inline-btn:hover{background:var(--surfaceContainerHighest);color:var(--onSurface)}.auth-input-inline-btn:active{border-radius:10px}.auth-checkbox-row{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 4px;cursor:pointer;-webkit-user-select:none;user-select:none}.auth-checkbox-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.auth-checkbox-box{width:20px;height:20px;border-radius:6px;border:2px solid var(--outline);background:transparent;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:transparent;transition:background-color .15s ease,border-color .15s ease,border-radius .3s var(--motion-spring)}.auth-checkbox-input:checked+.auth-checkbox-box{background:var(--primary);border-color:var(--primary);color:var(--onPrimary)}.auth-checkbox-input:focus-visible+.auth-checkbox-box{outline:2px solid var(--accent);outline-offset:3px}.auth-checkbox-row:active .auth-checkbox-box{border-radius:10px}.auth-checkbox-text{font-size:14px;line-height:1.3;color:var(--onSurfaceVariant)}.auth-captcha-media-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.auth-captcha-img{height:56px;width:auto;max-width:calc(100% - 56px);border-radius:var(--r-sm);object-fit:contain;display:block;flex-shrink:0}.auth-captcha-placeholder{height:56px;min-width:160px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-s);color:var(--onSurfaceVariant)}.auth-captcha-spinner{width:22px;height:22px;border:2px solid var(--outlineVariant);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.auth-captcha-refresh{width:44px;height:44px;margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:0;border-radius:22px;background:var(--surfaceContainerHighest);color:var(--onSurfaceVariant);cursor:pointer;transition:border-radius .3s var(--motion-spring),background-color .15s ease,color .15s ease}.auth-captcha-refresh:hover:not(:disabled){background:var(--primaryContainer);color:var(--onPrimaryContainer)}.auth-captcha-refresh:active:not(:disabled){border-radius:12px}.auth-captcha-refresh.is-loading svg{animation:spin .8s linear infinite}.auth-submit-btn{width:100%;min-height:56px;margin-top:2px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:28px;background:var(--primary);color:var(--onPrimary);font-size:16px;font-weight:600;cursor:pointer;box-shadow:none;transition:border-radius .3s var(--motion-spring),filter .15s ease,opacity .15s ease}.auth-submit-btn:hover:not(:disabled){filter:brightness(1.08)}.auth-submit-btn:active:not(:disabled){border-radius:16px}.auth-submit-btn:disabled{opacity:.42;cursor:not-allowed}.auth-btn-content{display:flex;align-items:center;gap:8px}.auth-btn-spinner{width:16px;height:16px;border:2px solid color-mix(in srgb,currentColor 30%,transparent);border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}.auth-faq-disclosure{width:100%;margin-top:4px}.auth-faq-disclosure-summary{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:36px;padding:6px 12px;font-size:var(--fs-xs);font-weight:500;color:var(--onSurfaceVariant);opacity:.75;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;border-radius:var(--r-full);transition:opacity .15s ease,background-color .15s ease}.auth-faq-disclosure-summary::-webkit-details-marker{display:none}.auth-faq-disclosure-summary:hover{opacity:1;background:var(--surfaceContainerLow)}.auth-faq-disclosure-summary svg{transition:transform .24s var(--motion-spring)}.auth-faq-disclosure[open] .auth-faq-disclosure-summary{opacity:1;margin-bottom:8px}.auth-faq-disclosure[open] .auth-faq-disclosure-summary svg{transform:rotate(180deg)}.auth-faq-section{width:100%;display:flex;flex-direction:column;gap:2px;animation:authFadeIn .24s var(--motion-standard) backwards}.auth-faq-list{display:flex;flex-direction:column;gap:var(--gap-list-rows);width:100%}.auth-faq-item{background:var(--surfaceContainerLow);border-radius:var(--r-xs);border:0;overflow:hidden}.auth-faq-item:first-child{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.auth-faq-item:last-child{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.auth-faq-item:only-child{border-radius:var(--r-lg)}.auth-faq-question{padding:12px 16px;font-weight:500;color:var(--onSurface);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13.5px;transition:background-color .15s ease}.auth-faq-question:hover{background:var(--surfaceContainer)}.auth-faq-question::-webkit-details-marker{display:none}.auth-faq-question:after{content:"+";font-size:16px;font-weight:500;color:var(--onSurfaceVariant);line-height:1}details[open]>.auth-faq-question:after{content:"−"}.auth-faq-answer{padding:0 16px 14px;color:var(--onSurfaceVariant);font-size:12.5px;line-height:1.45}.renew-modal-card{display:flex;flex-direction:column;gap:16px;width:100%;max-width:416px;margin:auto;padding:28px 22px;background:var(--surfaceContainerLow);border-radius:var(--r-xl);box-shadow:var(--shadow-3);animation:modalScaleIn .24s var(--motion-standard) backwards}.renew-modal-card.closing{animation:modalScaleOut .2s var(--motion-standard) forwards}.renew-form{display:flex;flex-direction:column;gap:16px;width:100%}:root[data-keyboard-open] .auth-canvas{min-height:var(--keyboard-viewport-height);justify-content:flex-start;padding-top:max(12px,env(safe-area-inset-top,0px));padding-bottom:45vh}:root[data-keyboard-open] .modal-backdrop{top:var(--keyboard-viewport-top);bottom:auto;height:var(--keyboard-viewport-height)}:root[data-keyboard-open] .renew-modal-card{max-height:calc(var(--keyboard-viewport-height) - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain}.auth-input,.auth-field-card,.auth-captcha-group{scroll-margin-block:16px}.renew-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:4px}.renew-cancel-btn{min-height:48px;padding:0 20px;border:0;border-radius:24px;background:transparent;color:var(--onSurfaceVariant);font-size:14px;font-weight:600;cursor:pointer;transition:border-radius .3s var(--motion-spring),background-color .15s ease,color .15s ease}.renew-cancel-btn:hover:not(:disabled){background:var(--surfaceContainer);color:var(--onSurface)}.renew-cancel-btn:active:not(:disabled){border-radius:14px}.renew-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.renew-submit-btn{min-height:48px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:24px;background:var(--primary);color:var(--onPrimary);font-size:14px;font-weight:600;cursor:pointer;box-shadow:var(--shadow-1);transition:border-radius .3s var(--motion-spring),filter .15s ease,opacity .15s ease}.renew-submit-btn:hover:not(:disabled){filter:brightness(1.1)}.renew-submit-btn:active:not(:disabled){border-radius:14px}.renew-submit-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}@media(max-width:639px){.renew-modal-card{max-width:100%;margin:0;border-radius:var(--r-xl) var(--r-xl) 0 0;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px));animation:sheetSlideUp .28s var(--motion-standard) backwards}.renew-modal-card.closing{animation:sheetSlideDown .2s var(--motion-standard) forwards}}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;font-size:var(--fs-m)}th{padding:12px 8px;font-size:var(--fs-s);font-weight:500;letter-spacing:.01em;text-align:left;white-space:nowrap;color:var(--muted);border-bottom:1px solid var(--border)}th:first-child{padding-left:14px}th:last-child{padding-right:14px}td{padding:16px 8px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--surfaceContainerHigh)}.num-col,th.num-col{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}td.num-col{font-size:16px;font-weight:600}.marks-score-total{color:var(--muted);font-size:13px;font-weight:500}tr:last-child td{border-bottom:0}.att-red,td.num-col.att-red{color:var(--error)}.att-yellow,td.num-col.att-yellow{color:var(--warning)}.att-normal,td.num-col.att-normal{color:var(--onSurface)}.att-green,td.num-col.att-green{color:var(--success)}.badge{display:inline-block;padding:2px 6px;font-size:11px;font-weight:600;letter-spacing:.03em;border-radius:4px;background:var(--surfaceContainerHigh);color:var(--onSurfaceVariant);flex-shrink:0;vertical-align:middle}.att-detail-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.att-comp-box{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0}.chip-btn{height:32px;padding:0 14px;border:0;border-radius:16px;background:var(--surfaceContainer);color:var(--onSurfaceVariant);font-size:var(--fs-s);font-weight:500;cursor:pointer;transition:border-radius .3s var(--motion-spring),background-color .15s ease,color .15s ease}.chip-btn:hover{background:var(--surfaceContainerHigh);color:var(--onSurface)}.chip-btn:active{border-radius:8px}.chip-btn.active{background:var(--primary);color:var(--onPrimary)}.chip-btn.chip-absent.active{background:var(--danger);color:var(--onError)}.log-badge{display:inline-block;padding:4px 12px;font-size:var(--fs-xs);font-weight:600;border-radius:var(--r-full)}.log-badge.present{background:var(--successContainer);color:var(--success)}.log-badge.absent{background:var(--errorContainer);color:var(--onErrorContainer)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;padding:env(safe-area-inset-top,0px) 0 0;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto;overscroll-behavior:contain;animation:authFadeIn .22s var(--motion-standard) backwards}.modal-backdrop.closing{animation:authFadeOut .2s var(--motion-standard) forwards}input:focus-visible,button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.m3-list-item:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.att-subject-row:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.att-page{display:flex;flex-direction:column}.att-top-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:var(--header-pt) var(--page-pad-x) 0}.att-top-left{display:flex;align-items:center;gap:12px;min-width:0}.att-header-titles{display:flex;flex-direction:column;gap:1px;min-width:0}.att-header-title{margin:0;font-size:var(--fs-xl);font-weight:700;line-height:1.15;letter-spacing:-.02em}.att-sync-pill{font-size:var(--fs-xs);color:var(--onSurfaceVariant);white-space:nowrap}.att-sync-pill.is-syncing{display:inline-flex;align-items:center;gap:6px}.att-sync-pill.att-sync-notice{color:var(--primary);font-weight:500}.att-sync-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--primary);animation:syncPulse 1s ease-in-out infinite}.att-top-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.att-content{display:flex;flex-direction:column;gap:12px;padding:var(--gap-header-att) var(--page-pad-x) 0}.att-filter-bar{display:flex;justify-content:center;width:100%;padding:0 0 4px;margin:0}.att-filter-bar .segmented-pill-toggle{width:100%;max-width:240px}.att-filter-bar .segmented-pill{min-height:40px;font-size:var(--fs-s)}.att-list{display:flex;flex-direction:column;gap:var(--gap-list-rows);padding:0;width:100%}.att-subject-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:14px 18px;text-align:start;background:var(--surfaceContainerLow);border-radius:var(--r-xs);border:0;cursor:pointer;width:100%;overflow:hidden;transition:border-radius .3s var(--motion-spring),background-color .15s var(--motion-standard)}.att-subject-row:first-child{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.att-subject-row:last-child{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.att-subject-row:only-child{border-radius:var(--r-lg)}.att-subject-row:active{background:var(--surfaceContainerHigh);border-radius:var(--r-md)}.att-subject-info{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.att-subject-name{white-space:normal;overflow:visible;text-overflow:clip;font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.3;text-wrap:pretty}.att-subject-supporting{display:flex;align-items:center;flex-wrap:wrap;gap:2px 6px;margin:0;font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--onSurfaceVariant)}.att-code{font-weight:600;letter-spacing:.02em}.att-row-margin{display:inline-flex;align-items:center;gap:6px}.att-proj-sep{opacity:.5}.att-margin-bunk{color:var(--onSurfaceVariant)}.att-margin-need{font-weight:600;color:var(--error)}.att-count-syncing{color:var(--primary);font-weight:500;display:inline-flex;align-items:center;gap:5px;margin-left:6px}.sync-pulse-dot{display:inline-block;width:5px;height:5px;border-radius:var(--r-full);background:currentColor;animation:syncPulse 1s ease-in-out infinite}.att-row-pct{flex:none;min-width:4.5ch;text-align:end;font-size:1.125rem;font-weight:600;font-variant-numeric:tabular-nums}.att-row-pct.is-empty{color:var(--onSurfaceVariant);font-weight:400;opacity:.6}.att-empty-filter{display:flex;flex-direction:column;align-items:center;gap:12px;padding:36px 20px;text-align:center}.att-reset-filter-btn{height:32px;padding:0 16px;border:0;border-radius:16px;background:var(--surfaceContainerHigh);color:var(--primary);font-size:var(--fs-xs);font-weight:600;cursor:pointer;transition:border-radius .3s var(--motion-spring),opacity .15s ease}.att-reset-filter-btn:hover{opacity:.85}.att-reset-filter-btn:active{border-radius:8px}.att-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;animation:authFadeIn .22s var(--motion-standard) backwards}.att-sheet-backdrop.closing{animation:authFadeOut .22s var(--motion-standard) forwards}.att-sheet-card{width:100%;max-width:100%;max-height:90vh;max-height:90dvh;display:flex;flex-direction:column;gap:20px;padding:12px 20px max(24px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--outlineVariant) transparent;background:var(--surface);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:var(--shadow-sheet);animation:sheetSlideUp .3s var(--motion-standard) backwards;transition:translate .18s var(--motion-standard)}.att-sheet-card.closing{animation:sheetSlideDown .22s var(--motion-standard) forwards}.att-sheet-card.dragging{transition:none}.att-sheet-handle{min-height:44px;margin:-8px 0 -12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.att-sheet-handle:active{cursor:grabbing}.att-sheet-handle span{width:36px;height:4px;border-radius:var(--r-full);background:var(--outlineVariant);opacity:.6;pointer-events:none}.att-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.att-sheet-title-group{display:flex;flex-direction:column;gap:3px;min-width:0}.att-sheet-title{margin:0;font-size:var(--fs-xl);font-weight:700;line-height:1.25;letter-spacing:-.02em}.att-sheet-code{font-size:var(--fs-xs);color:var(--onSurfaceVariant)}.auth-close-btn{width:40px;height:40px;margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:0;border-radius:20px;background:var(--surfaceContainer);color:var(--onSurfaceVariant);font-size:var(--fs-m);line-height:1;cursor:pointer;transition:border-radius .3s var(--motion-spring),background-color .15s ease,color .15s ease}.auth-close-btn:hover{background:var(--surfaceContainerHigh);color:var(--onSurface)}.auth-close-btn:active{border-radius:12px}.att-sheet-kpi-card{display:flex;flex-direction:column;gap:14px;padding:18px 20px;background:var(--surfaceContainerLow);border-radius:var(--r-xl)}.att-sheet-kpi-main{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px}.att-sheet-score-group{display:flex;align-items:baseline;gap:8px}.att-sheet-score{font-size:var(--fs-display);font-weight:700;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.att-sheet-kpi-label{font-size:var(--fs-s);color:var(--onSurfaceVariant)}.att-sheet-ratio-group{display:flex;align-items:baseline;gap:4px}.att-sheet-ratio-val{font-size:var(--fs-m);font-weight:600;font-variant-numeric:tabular-nums}.att-sheet-ratio-label{font-size:var(--fs-xs);color:var(--onSurfaceVariant)}.att-target-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.att-target-toggle{min-width:180px}.att-target-toggle .segmented-pill{min-height:36px;padding:0 12px;font-size:var(--fs-s)}.att-target-toggle .segmented-pill:first-child{border-radius:18px var(--r-xs) var(--r-xs) 18px}.att-target-toggle .segmented-pill:last-child{border-radius:var(--r-xs) 18px 18px var(--r-xs)}.att-target-toggle .segmented-pill.active{border-radius:18px}.att-target-toggle .segmented-pill:not(.active){background:var(--surfaceContainerHigh)}.att-advice-inline{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--r-full);font-size:var(--fs-s);font-weight:600;line-height:1.2}.att-advice-inline.bunk{background:var(--successContainer);color:var(--onSuccessContainer)}.att-advice-inline.attend,.att-advice-inline.short{background:var(--errorContainer);color:var(--onErrorContainer)}.att-sim-box{--sim-accent: var(--primary);--sim-on-accent: var(--onPrimary);display:flex;flex-direction:column;gap:0;padding:12px 0 0;background:none;border-top:1px solid var(--hairline)}.att-sim-box[data-mode=miss]{--sim-accent: var(--tertiary);--sim-on-accent: var(--onTertiary)}.att-sim-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px}.att-sim-toggle-btn{display:flex;align-items:center;justify-content:space-between;flex:1;min-height:38px;padding:6px 14px;background:var(--surfaceContainer);border:0;border-radius:var(--r-full);color:var(--onSurface);cursor:pointer;transition:background-color .2s ease,transform .15s ease}.att-sim-toggle-btn:hover{background:var(--surfaceContainerHigh)}.att-sim-toggle-btn:active{transform:scale(.99)}.att-sim-toggle-left{display:flex;align-items:center;gap:8px;min-width:0}.att-sim-toggle-icon{width:15px;height:15px;color:var(--primary);flex-shrink:0}.att-sim-title{font-size:var(--fs-s);font-weight:600;letter-spacing:-.01em;color:var(--onSurface)}.att-sim-preview-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600;font-variant-numeric:tabular-nums;background:var(--primaryContainer);color:var(--onPrimaryContainer)}.att-sim-preview-badge.miss{background:var(--tertiaryContainer);color:var(--onTertiaryContainer)}.att-sim-chevron{display:grid;place-items:center;width:18px;height:18px;color:var(--onSurfaceVariant);transition:transform .24s var(--motion-standard);flex-shrink:0}.att-sim-chevron.open{transform:rotate(180deg)}.att-sim-reset-btn{padding:6px 12px;min-height:34px;background:var(--surfaceContainer);border:0;border-radius:var(--r-full);color:var(--primary);font-size:var(--fs-xs);font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color .2s ease}.att-sim-reset-btn:hover{background:var(--surfaceContainerHigh)}.att-sim-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s var(--motion-standard)}.att-sim-body.is-open{grid-template-rows:1fr}.att-sim-body-inner{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:12px;opacity:0;transition:opacity .2s var(--motion-standard)}.att-sim-body.is-open .att-sim-body-inner{opacity:1;padding-top:12px}.att-sim-body:not(.is-open) .att-sim-body-inner{visibility:hidden}.att-sim-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.att-stepper-card{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:var(--surfaceContainer);border-radius:var(--r-lg);-webkit-user-select:none;user-select:none}.att-stepper-card[data-variant=attend]{--step-accent: var(--primary);--step-on-accent: var(--onPrimary)}.att-stepper-card[data-variant=miss]{--step-accent: var(--tertiary);--step-on-accent: var(--onTertiary)}.att-stepper-card-label{font-size:var(--fs-xs);font-weight:600;letter-spacing:.01em;color:var(--onSurfaceVariant);text-transform:uppercase;opacity:.85}.att-stepper-card[data-variant=miss] .att-stepper-card-label{color:var(--tertiary);opacity:1}.att-stepper-card-controls{display:flex;align-items:center;justify-content:space-between;gap:4px}.att-stepper-card-btn{width:40px;height:40px;padding:0;display:grid;place-items:center;border:0;border-radius:20px;background:var(--step-accent);color:var(--step-on-accent);cursor:pointer;transition:border-radius .25s var(--motion-spring),transform .2s var(--motion-spring),opacity .2s ease,background-color .2s ease,filter .15s ease}@media(hover:hover){.att-stepper-card-btn:hover:not(:disabled){filter:brightness(1.08)}}.att-stepper-card-btn:active:not(:disabled){border-radius:12px;transform:scale(.92)}.att-stepper-card-btn:disabled{opacity:.32;cursor:default}.att-stepper-card-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}.att-stepper-card-val{min-width:2ch;font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums;text-align:center;color:var(--onSurface)}.att-sim-outcome{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:4px 2px 0}.att-sim-outcome-score{display:inline-flex;align-items:baseline;gap:6px}.att-sim-outcome-label{font-size:var(--fs-s);font-weight:500;color:var(--onSurfaceVariant)}.att-sim-projected-pct{font-size:var(--fs-l);font-weight:700;font-variant-numeric:tabular-nums;line-height:1}.att-sim-projected-ratio{font-size:var(--fs-xs);color:var(--onSurfaceVariant);font-variant-numeric:tabular-nums}.att-empty-held-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:20px 16px;text-align:center}.att-empty-held-card p{margin:0;font-size:var(--fs-s);color:var(--onSurfaceVariant)}.att-sheet-history-section{display:flex;flex-direction:column;gap:12px}.att-sheet-history-section .att-comp-box{display:flex;flex-direction:column;gap:12px;padding:0;background:transparent;border:0}.att-log-list{display:flex;flex-direction:column;gap:2px;width:100%}.att-log-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 16px;background:var(--surfaceContainerLow);border-radius:var(--r-xs);transition:background-color .15s var(--motion-standard)}.att-log-row:first-child{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.att-log-row:last-child{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.att-log-row:only-child{border-radius:var(--r-lg)}.att-log-row.row-absent{background:var(--rowAbsent)}.att-log-info{display:flex;align-items:center;gap:8px;min-width:0}.att-log-date{font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--onSurface)}.att-log-row.row-absent .att-log-date{font-weight:600}.att-log-type-tag{display:inline-flex;align-items:center;justify-content:center;padding:1px 6px;font-size:11px;font-weight:700;border-radius:var(--r-xs);background:var(--surfaceContainerHigh);color:var(--onSurfaceVariant);line-height:1.2}.att-log-row.row-absent .att-log-type-tag{background:color-mix(in srgb,var(--error) 15%,transparent);color:var(--onErrorContainer)}.dash-footer{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px var(--page-pad-x) var(--page-pb)}.dash-footer-tagline{font-size:var(--fs-xs);color:var(--onSurfaceVariant);opacity:.6;letter-spacing:.01em}.m3-connected-button-group{display:inline-flex;align-items:center;gap:2px}.m3-connected-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:0;border-radius:var(--r-xs);background:var(--surfaceContainer);color:var(--onSurfaceVariant);font-size:var(--fs-s);font-weight:500;text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-radius .35s var(--motion-spring),background-color .15s ease,color .15s ease}.m3-connected-btn:first-child{border-radius:18px var(--r-xs) var(--r-xs) 18px}.m3-connected-btn:last-child{border-radius:var(--r-xs) 18px 18px var(--r-xs)}.m3-connected-btn:only-child{border-radius:18px}.m3-connected-btn:hover{background:var(--surfaceContainerHigh);color:var(--onSurface)}.m3-connected-btn:active{border-radius:14px}.m3-connected-btn svg{flex-shrink:0;opacity:.75}.m3-connected-btn.logout-action:hover{background:var(--errorContainer);color:var(--onErrorContainer)}.m3-connected-btn.logout-action:hover svg{opacity:1}.app-footer{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:auto;padding:40px var(--page-pad-x) var(--page-pb)}.footer-label{font-size:var(--fs-s);color:var(--onSurfaceVariant);opacity:.6}.footer-gh{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 18px 0 14px;font-size:var(--fs-s);font-weight:500;color:var(--onSurfaceVariant);text-decoration:none;background:var(--surfaceContainer);border-radius:20px;transition:border-radius .3s var(--motion-spring),background-color .2s ease,color .2s ease}.footer-gh svg{flex-shrink:0;opacity:.7;transition:opacity .2s ease}.footer-arrow{font-size:11px;opacity:.4;transition:opacity .2s ease,transform .25s var(--motion-spring)}@media(hover:hover){.footer-gh:hover{color:var(--onSurface);background:var(--surfaceContainerHigh)}.footer-gh:hover svg{opacity:1}.footer-gh:hover .footer-arrow{opacity:.7;transform:translate(1px,-1px)}}.footer-gh:active{border-radius:12px}@media(max-width:380px){.m3-list-item{gap:10px;padding:8px 12px}.m3-leading-icon-circle{width:36px;height:36px}.sem-picker{max-width:112px}.m3-card-body{padding:8px 12px 20px}}@media(max-width:639px){.att-comp-box{padding:4px 0 0;background:none;border:0;border-radius:0}.marks-course-code{display:none}.marks-table{table-layout:fixed}.marks-table th,.marks-table td{padding-right:4px;padding-left:4px}.marks-table th:first-child{width:70%;padding-left:4px}.marks-table th:nth-child(2){width:30%}.marks-table th{font-size:12px}}@media(min-width:640px){.m3-card-body{padding:10px 20px 24px}.modal-backdrop,.att-sheet-backdrop{align-items:center;padding:24px}.att-sheet-card{max-width:540px;max-height:85vh;padding:24px 28px;border-radius:var(--r-xl);box-shadow:var(--shadow-3);animation:modalScaleIn .24s var(--motion-standard) backwards}.att-sheet-card.closing{animation:modalScaleOut .2s var(--motion-standard) forwards}.att-sheet-handle{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media(forced-colors:active){.segmented-pill.active,.chip-btn.active{outline:2px solid Highlight;outline-offset:-2px}.badge,.log-badge,.att-advice-inline,.att-sim-preview-badge{border:1px solid CanvasText}.att-stepper-card-btn{border:1px solid ButtonText}.att-sync-dot,.sync-pulse-dot{background:CanvasText}}.install-banner-space{height:calc(var(--install-banner-height) + max(16px,env(safe-area-inset-bottom)) + 16px)}.install-banner{position:fixed;z-index:50;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));max-width:440px;max-height:calc(100vh - 64px);max-height:calc(100dvh - 64px);margin:0 auto;padding:16px;overflow-y:auto;background:var(--surfaceContainerLow);color:var(--onSurface);border:1px solid var(--outlineVariant);border-radius:var(--r-lg);box-shadow:0 8px 32px #4a445924,var(--shadow);animation:installBannerEnter .24s var(--motion-standard) backwards}.install-banner[hidden],.install-banner-space[hidden],.install-banner-guide[hidden]{display:none}.install-banner-header{display:flex;align-items:flex-start;gap:12px}.install-banner-icon{flex-shrink:0;border-radius:var(--r-sm)}.install-banner-copy{flex:1;min-width:0}.install-banner h2{margin:0 0 4px;font-size:16px;font-weight:600;line-height:1.4}.install-banner p{margin:0;color:var(--onSurfaceVariant);font-size:13px;line-height:1.5}.install-banner-copy svg{width:16px;height:16px;vertical-align:-3px}.install-banner-dismiss{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--tap);height:var(--tap);margin:-8px -8px 0 0;padding:0;border:none;border-radius:50%;background:transparent;color:var(--onSurfaceVariant);cursor:pointer}.install-banner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:12px}.install-banner-primary,.install-banner-apk{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);border-radius:9999px;font-size:13px;font-weight:600;line-height:1.4;text-align:center}.install-banner-primary{padding:10px 18px;border:none;background:var(--primary);color:var(--onPrimary);cursor:pointer;transition:transform .15s var(--motion-spring)}.install-banner-primary:active:not(:disabled){transform:scale(.96)}.install-banner-primary:disabled{opacity:.7;cursor:progress}.install-banner-apk{flex-direction:column;padding:8px 4px;color:var(--primary);text-decoration:underline;text-underline-offset:3px}.install-banner-android-only{font-size:12px;font-weight:400}.install-banner-guide{margin-top:12px;padding-top:12px;border-top:1px solid var(--outlineVariant)}.install-banner-guide ol{display:flex;flex-direction:column;gap:12px;margin:0 0 12px;padding:0;list-style:none}.install-banner-guide li{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.5}.install-banner-step-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:var(--r-sm);background:var(--primaryContainer);color:var(--onPrimaryContainer)}.install-banner-guide>p:first-child:not(:only-child){margin-bottom:12px}.install-banner p.install-banner-error{margin-top:12px;color:var(--error)}@media(hover:hover){.install-banner-dismiss:hover{background:var(--surfaceContainerHigh)}.install-banner-apk:hover{color:var(--onPrimaryContainer)}}@keyframes installBannerEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}:root{--nav-h: 80px}.dash{padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 24px)}.tab-panel[hidden]{display:none}.tab-panel:not([hidden]){animation:tabFadeThrough .22s var(--motion-standard) backwards}@keyframes tabFadeThrough{0%{opacity:0;transform:scale(.99)}to{opacity:1;transform:none}}.page{display:flex;flex-direction:column}.app-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:var(--header-pt) var(--page-pad-x) 8px;background:var(--surface)}.app-bar-titles{display:flex;flex-direction:column;gap:2px;min-width:0}.app-bar-title{margin:0;font-size:28px;font-weight:700;line-height:1.1;letter-spacing:-.025em}.app-bar-sub{font-size:var(--fs-xs);color:var(--onSurfaceVariant);min-height:1.4em}.app-bar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.page-body{display:flex;flex-direction:column;gap:12px;padding:12px var(--page-pad-x) 0}.page-note{padding:20px 4px}.page-subhead{margin:12px 4px 0;font-size:var(--fs-m);font-weight:600;color:var(--onSurfaceVariant)}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.page-toolbar>.sem-picker:only-child{margin-left:auto}.att-page .page-toolbar{flex-wrap:wrap}.att-filter{flex:0 1 240px}.att-filter .segmented-pill{min-height:40px;font-size:var(--fs-s)}.sem-picker{min-height:40px;border-radius:var(--r-full);background:var(--surfaceContainer);border:0;flex-shrink:0}.chip-row{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;min-width:0;padding:4px 0}.chip-row::-webkit-scrollbar{display:none}.chip-row .chip-btn{flex-shrink:0;height:36px;padding:0 16px;white-space:nowrap}.nav-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);z-index:20;display:flex;justify-content:center;width:100%;height:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));padding:12px max(8px,env(safe-area-inset-right)) env(safe-area-inset-bottom,0px) max(8px,env(safe-area-inset-left));background:var(--surfaceContainer)}.nav-brand{display:none}.nav-item{flex:1;min-width:0;max-width:120px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;border:0;background:none;color:var(--onSurfaceVariant);cursor:pointer;-webkit-tap-highlight-color:transparent}.nav-indicator{position:relative;display:grid;place-items:center;width:64px;max-width:100%;height:32px;border-radius:var(--r-full)}.nav-indicator:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--secondaryContainer);transform:scaleX(.3);opacity:0;transition:transform .4s var(--motion-spring),opacity .15s linear}.nav-indicator svg{position:relative;transition:transform .3s var(--motion-spring)}.nav-label{font-size:12px;font-weight:600;line-height:16px;letter-spacing:.01em}.nav-item[aria-current=page]{color:var(--onSurface)}.nav-item[aria-current=page] .nav-indicator{color:var(--onSecondaryContainer)}.nav-item[aria-current=page] .nav-indicator:before{transform:none;opacity:1}.nav-item[aria-current=page] .nav-indicator svg{stroke-width:2.4}.nav-item:active .nav-indicator svg{transform:scale(.88)}.nav-item:focus-visible{outline:none}.nav-item:focus-visible .nav-indicator{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover){.nav-item:hover:not([aria-current=page]) .nav-indicator:before{opacity:.5;transform:none;background:var(--surfaceContainerHighest)}}.nav-badge{position:absolute;top:-2px;left:36px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--error);color:var(--onError);font-size:11px;font-weight:700;line-height:16px;text-align:center}body:has(.nav-bar) .install-banner{bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 12px)}@media(min-width:680px){.dashboard-shell{--sidebar-w: 200px;padding-left:var(--sidebar-w)}.dashboard-shell .dash{width:100%;padding-bottom:var(--page-pb)}.nav-bar{inset:0 auto 0 0;transform:none;flex-direction:column;justify-content:flex-start;gap:8px;width:var(--sidebar-w);height:100dvh;padding:var(--header-pt) 12px max(16px,env(safe-area-inset-bottom));overflow-y:auto;border-right:1px solid var(--outlineVariant);background:var(--surfaceContainerLow)}.nav-brand{display:block;padding:8px 12px 28px;color:var(--onSurface);font-size:22px;font-weight:700;letter-spacing:-.025em}.nav-item{flex:none;flex-direction:row;width:100%;max-width:none;min-height:52px;gap:12px;padding:10px 16px;border-radius:var(--r-full);text-align:left}.nav-indicator{flex:none;width:24px;height:32px}.nav-indicator:before{display:none}.nav-label{font-size:var(--fs-m);line-height:20px}.nav-item[aria-current=page]{background:var(--secondaryContainer);color:var(--onSecondaryContainer)}.nav-item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.nav-item:focus-visible .nav-indicator{outline:none}.nav-badge{left:16px}body:has(.nav-bar) .install-banner{left:216px;bottom:max(16px,env(safe-area-inset-bottom))}}@media(min-width:680px)and (hover:hover){.nav-item:hover:not([aria-current=page]){background:var(--surfaceContainerHigh)}}.att-row-pct{flex:none;font-size:24px;font-weight:700;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;text-align:end}.att-pct-sign{font-size:.55em;font-weight:600;margin-left:1px;opacity:.7}.score-list,.exam-list{display:flex;flex-direction:column;gap:var(--gap-list-rows);margin:0;padding:0;list-style:none}.score-card{--score-radius: var(--r-xs);background:var(--surfaceContainerLow);border-radius:var(--score-radius);overflow:hidden;transition:border-radius .3s var(--motion-spring)}.score-list>.score-card:first-child{--score-radius: var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.score-list>.score-card:last-child{--score-radius: var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.score-list>.score-card:only-child{--score-radius: var(--r-lg)}.score-list>.score-card:has(>.score-course>button.score-header:active){--score-radius: var(--r-md)}.score-course{border-radius:inherit;background:var(--surfaceContainerLow);transition:border-radius .3s var(--motion-spring),background .24s var(--motion-standard)}.score-course.is-open{background:color-mix(in srgb,var(--primary) 6%,var(--surfaceContainerLow))}.score-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:70px;padding:14px 18px;border-radius:inherit;width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;transition:border-radius .3s var(--motion-spring),background .18s var(--motion-standard)}button.score-header{cursor:pointer}button.score-header:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}@media(hover:hover){.score-course:not(.is-open)>button.score-header:hover{background:color-mix(in srgb,var(--primary) 6%,transparent)}}.exam-list>:first-child{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.exam-list>:last-child{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.exam-list>:only-child{border-radius:var(--r-lg)}.score-info{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.score-subject{font-size:16px;font-weight:600;line-height:1.35;letter-spacing:-.01em;text-wrap:pretty;overflow-wrap:anywhere}.score-value{flex:none;font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1;text-align:end}.score-value strong{font-size:24px;font-weight:700;letter-spacing:-.03em;color:var(--onSurface);transition:color .24s var(--motion-standard)}.score-value[data-band=good] strong{color:var(--success)}.score-value[data-band=neutral] strong{color:var(--onSurface)}.score-value[data-band=warning] strong{color:var(--warning)}.score-value[data-band=low] strong{color:var(--error)}.score-total{font-size:var(--fs-s);color:var(--onSurfaceVariant);margin-left:1px}.score-meta{display:flex;align-items:center;flex-wrap:wrap;row-gap:4px;font-size:.8125rem;line-height:1.35;color:var(--onSurfaceVariant)}.score-meta-sep{white-space:pre;opacity:.65}.score-meta-exams{display:inline-flex;align-items:center;flex-wrap:wrap}.score-meta-comma{white-space:pre}.score-meta-exam.is-new,.score-new-badge{display:inline-flex;align-items:center;padding:1px 6px;border-radius:var(--r-xs);background:var(--primaryContainer);color:var(--onPrimaryContainer);font-size:11px;font-weight:700;line-height:1.3;letter-spacing:.01em}.score-chevron{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;color:var(--outline);transform:rotate(90deg);transition:transform .28s var(--motion-spring),color .2s var(--motion-standard)}.score-chevron svg{width:14px;height:14px}.score-course.is-open .score-chevron{transform:rotate(-90deg);color:var(--primary)}.score-expansion{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .36s var(--motion-spring),visibility 0s linear .36s}.score-course.is-open .score-expansion{grid-template-rows:1fr;visibility:visible;transition-delay:0s}.score-expansion-inner{min-height:0;overflow:hidden;opacity:0;transform:translateY(-6px);transition:opacity .24s var(--motion-standard),transform .36s var(--motion-spring)}.score-course.is-open .score-expansion-inner{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.score-expansion{transition-delay:0s}}.score-breakdown{margin:0 18px;padding:2px 0 10px;border-top:1px solid var(--hairline);list-style:none}.score-exam{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:8px 0}.score-exam+.score-exam{border-top:1px solid var(--hairline)}.score-exam-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-s);font-weight:500;color:var(--onSurfaceVariant)}.score-exam .score-value strong{font-size:17px;font-weight:600;letter-spacing:-.01em}.exam-timeline{position:relative;list-style:none;margin:0;padding:0}.exam-timeline:before{content:"";position:absolute;left:9px;top:-24px;bottom:-24px;width:2px;background:linear-gradient(to bottom,transparent,var(--outlineVariant) 24px,var(--outlineVariant) calc(100% - 24px),transparent);opacity:.65}.exam-stop{position:relative;padding:0 0 10px 30px}.exam-stop:last-child{padding-bottom:0}.exam-future-group{padding-bottom:10px}.exam-future-group summary{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:44px;margin-left:30px;padding:8px 16px;border-radius:var(--r-lg);background:var(--surfaceContainerLow);color:var(--onSurfaceVariant);font-size:var(--fs-s);font-weight:600;list-style:none;cursor:pointer}.exam-future-group summary::-webkit-details-marker{display:none}.exam-future-group summary:before{content:"⋮";position:absolute;left:-30px;width:20px;text-align:center;background:var(--surface);color:var(--outline);font-size:20px;line-height:24px}.exam-future-group summary:hover{background:var(--surfaceContainer)}.exam-future-group summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.exam-future-count{color:var(--outline)}.exam-future-group summary svg{width:18px;height:18px}.exam-future-group details[open]>summary svg{transform:rotate(180deg)}.exam-future-list{list-style:none;padding:10px 0 0;margin:0}.exam-marker{position:absolute;z-index:1;left:0;top:26px;width:20px;height:20px;display:grid;place-items:center;border:2px solid var(--outlineVariant);border-radius:50%;background:var(--surface);color:var(--onSurfaceVariant)}.exam-marker svg{width:14px;height:14px}.is-past>.exam-marker{background:var(--successContainer);border-color:var(--success);color:var(--success)}.is-next>.exam-marker,.is-current>.exam-marker{border-color:var(--primary);background:var(--primary);box-shadow:0 0 0 4px var(--primaryContainer)}.is-next>.exam-marker:after{content:"";width:6px;height:6px;background:var(--onPrimary);border-radius:50%}.exam-marker-live{width:8px;height:8px;border:2px solid var(--onPrimary);border-radius:50%}.exam-stop.is-past .exam-card{color:var(--onSurfaceVariant)}.exam-stop.is-past .exam-date{opacity:.65}.exam-stop.is-past .exam-day:after{content:"";position:absolute;left:-4px;right:-4px;top:50%;height:2px;border-radius:2px;background:currentColor;transform:rotate(-45deg)}.exam-stop .exam-card{border-radius:var(--r-lg)}.exam-calendar{position:relative;margin-left:auto;align-self:center}.exam-calendar-button{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:10px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.exam-calendar-button svg{width:21px;height:21px}.exam-calendar-button:hover{background:color-mix(in srgb,currentColor 9%,transparent)}.exam-calendar-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.exam-calendar-button:disabled{opacity:.3;cursor:default}.exam-export{margin-left:auto;color:var(--primary)}.exam-calendar-options{position:absolute;bottom:calc(100% + 4px);right:0;z-index:10;display:flex;flex-direction:column;min-width:190px;padding:6px;border:1px solid var(--outlineVariant);border-radius:var(--r-md);background:var(--surfaceContainerHigh);color:var(--onSurface);box-shadow:0 6px 24px #0002}.exam-calendar-options a,.exam-calendar-options button{display:block;padding:12px;border:0;border-radius:var(--r-sm);background:none;color:inherit;font:inherit;font-size:var(--fs-s);text-align:left;text-decoration:none;cursor:pointer}.exam-calendar-options a:hover,.exam-calendar-options button:hover{background:var(--surfaceContainerHighest)}.page-toolbar:empty{display:none}.exam-card{display:flex;gap:16px;padding:16px 18px;background:var(--surfaceContainerLow);border-radius:var(--r-xs)}.exam-card.is-next{padding:20px;border-radius:var(--r-xl);background:var(--primaryContainer);color:var(--onPrimaryContainer)}.exam-date{flex:none;width:52px;display:flex;flex-direction:column;align-items:center;padding-top:2px;line-height:1.1}.exam-day{position:relative;font-size:28px;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.is-next .exam-day{font-size:40px}.exam-month{font-size:var(--fs-s);font-weight:600}.exam-weekday{font-size:var(--fs-xs);opacity:.7}.exam-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.exam-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.exam-subject{margin:0;font-size:16px;font-weight:600;line-height:1.3;text-wrap:pretty}.is-next .exam-subject{font-size:19px;font-weight:700}.exam-when{flex:none;padding:2px 10px;border-radius:var(--r-full);background:var(--tertiaryContainer);color:var(--onTertiaryContainer);font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.is-next .exam-when{background:var(--primary);color:var(--onPrimary)}.exam-time{font-size:var(--fs-s);opacity:.75}.exam-seat{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:6px}.exam-tag{display:inline-flex;align-items:baseline;gap:6px;padding:4px 12px;border-radius:var(--r-sm);background:var(--surfaceContainerHigh);font-size:var(--fs-m);font-weight:700;font-variant-numeric:tabular-nums}.is-next .exam-tag{background:color-mix(in srgb,var(--onPrimaryContainer) 10%,transparent)}.exam-tag-label{font-size:var(--fs-xs);font-weight:500;opacity:.7}@media(max-width:480px){.exam-future-group summary{margin-left:26px}.exam-future-group summary:before{left:-26px}.exam-stop{padding-left:26px}.exam-stop .exam-card{padding:14px 10px;gap:10px}.exam-stop .exam-date{width:38px}.exam-stop .is-next .exam-day{font-size:32px}.exam-stop .is-next .exam-subject{font-size:17px}.exam-head{flex-wrap:wrap}.exam-tag{padding:4px 8px}}.official-portal-entry{margin:0;border-radius:var(--r-lg);background:var(--surfaceContainerLow);overflow:hidden}.official-portal-open{display:flex;align-items:center;gap:16px;width:100%;padding:16px 20px;border:0;background:transparent;color:var(--onSurface);text-align:left;cursor:pointer}.official-portal-open:active{background:var(--surfaceContainerHigh)}.official-portal-open:disabled{cursor:progress;opacity:.65}.official-portal-icon{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--secondaryContainer);color:var(--onSecondaryContainer)}.official-portal-copy{flex:1;min-width:0}.official-portal-heading{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:16px;font-weight:600;letter-spacing:-.01em}.official-portal-badge{padding:2px 8px;border-radius:var(--r-full);background:var(--secondaryContainer);color:var(--onSecondaryContainer);font-size:var(--fs-xs);font-weight:500;white-space:nowrap}.official-portal-description{display:block;margin-top:3px;color:var(--onSurfaceVariant);font-size:var(--fs-s);line-height:1.4}.official-portal-hint{margin:0;padding:0 20px 16px;color:var(--onSurfaceVariant);font-size:var(--fs-xs);line-height:1.5}.official-portal-error{margin:0;padding:0 20px 16px;color:var(--error);font-size:var(--fs-s)}.profile{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:var(--r-xl);background:var(--surfaceContainerLow)}.profile-avatar{flex:none;display:grid;place-items:center;width:60px;height:60px;background:var(--tertiaryContainer);color:var(--onTertiaryContainer);font-size:26px;font-weight:700;border-radius:60% 40% 55% 45%/45% 55% 40% 60%}.profile-text{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.profile-name{margin:0;font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em;line-height:1.2;overflow-wrap:anywhere}.profile-sub{font-size:var(--fs-s);line-height:1.35;color:var(--onSurfaceVariant)}.profile-institute{margin-top:6px;max-width:100%}.discreet-switch{display:flex;flex:none;flex-direction:column;align-items:center;gap:5px;min-width:52px;min-height:var(--tap);padding:4px 0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--onSurfaceVariant);cursor:pointer}.discreet-switch-track{position:relative;width:52px;height:32px;border:2px solid var(--outline);border-radius:var(--r-full);background:var(--surfaceContainerHighest);transition:background-color .2s var(--motion-standard),border-color .2s var(--motion-standard)}.discreet-switch-thumb{position:absolute;top:2px;left:2px;display:grid;place-items:center;width:24px;height:24px;border-radius:var(--r-full);background:var(--outline);color:var(--onPrimary);scale:.6667;transition:translate .25s var(--motion-spring),scale .2s var(--motion-standard),background-color .2s var(--motion-standard)}.discreet-switch-thumb svg{opacity:0;transition:opacity .15s var(--motion-standard)}.discreet-switch[aria-checked=true] .discreet-switch-track{background:var(--primary);border-color:var(--primary)}.discreet-switch[aria-checked=true] .discreet-switch-thumb{translate:20px;scale:1;background:var(--onPrimary);color:var(--primary)}.discreet-switch[aria-checked=true] .discreet-switch-thumb svg{opacity:1}.discreet-switch:active .discreet-switch-thumb{scale:1.1667}.discreet-switch:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.discreet-switch-label{font-size:var(--fs-xs);font-weight:500;line-height:16px}@media(hover:hover){.discreet-switch:hover .discreet-switch-track{outline:6px solid var(--focusRing)}}@media(forced-colors:active){.discreet-switch-track{border-color:ButtonText}.discreet-switch-thumb{background:ButtonText}.discreet-switch[aria-checked=true] .discreet-switch-track{background:Highlight;border-color:Highlight}.discreet-switch[aria-checked=true] .discreet-switch-thumb{background:HighlightText;color:Highlight}}[data-discreet] :is(.att-red,.att-yellow,.att-green,.att-proj-up,.att-proj-down){color:var(--onSurface)}[data-discreet] .score-value[data-band] strong{color:var(--onSurface)}[data-discreet] :is(.log-badge,.att-advice-inline.bunk,.att-advice-inline.attend,.att-advice-inline.short,.att-log-row.row-absent .att-log-type-tag){background:var(--surfaceContainerHigh);color:var(--onSurfaceVariant)}[data-discreet] .att-log-row.row-absent{background:var(--surfaceContainerLow)}[data-discreet] :is(.chip-btn.chip-absent.active,.nav-badge){background:var(--onSurfaceVariant);color:var(--surface)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes skeletonPulse{0%,to{opacity:.9}50%{opacity:.45}}.m3-skeleton-list{display:flex;flex-direction:column;gap:var(--gap-list-rows);width:100%}.m3-skeleton-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:14px 18px;background:var(--surfaceContainerLow);border-radius:var(--r-xs);animation:skeletonPulse 1.5s var(--motion-standard) infinite}.m3-skeleton-row.is-compact{min-height:48px;padding:12px 16px}.m3-skeleton-row:first-of-type{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.m3-skeleton-row:last-of-type{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.m3-skeleton-row:only-of-type{border-radius:var(--r-lg)}.m3-skeleton-list.is-inline{gap:0}.m3-skeleton-list.is-inline .m3-skeleton-row{min-height:52px;padding:10px 0;background:transparent;border-radius:0}.m3-skeleton-list.is-inline .m3-skeleton-row+.m3-skeleton-row{border-top:1px solid var(--hairline)}.m3-skeleton-main{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.m3-skeleton-bar{display:block;height:12px;border-radius:var(--r-full);background:var(--surfaceContainerHighest)}.m3-skeleton-bar.is-title{height:14px}.m3-skeleton-bar.is-sub{height:10px;opacity:.7}.m3-skeleton-pill{flex:none;width:48px;height:22px;border-radius:var(--r-full);background:var(--surfaceContainerHighest)}.more-card-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.more-credits-pill{font-size:var(--fs-xs);color:var(--onSurfaceVariant);font-variant-numeric:tabular-nums}.more-credits-pill strong{color:var(--onSurface);font-weight:600}.more-data-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}.more-data-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 0}.more-data-row+.more-data-row{border-top:1px solid var(--hairline)}.more-data-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.more-data-title{font-size:15px;font-weight:600;line-height:1.3;color:var(--onSurface);text-wrap:pretty}.more-data-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:var(--fs-xs);color:var(--onSurfaceVariant)}.more-faculty-chip{display:inline-flex;align-items:center;gap:4px}.more-data-trailing-group{display:flex;align-items:center;gap:8px;flex:none}.more-data-trailing{flex:none;font-size:var(--fs-s);font-weight:600;font-variant-numeric:tabular-nums;color:var(--onSurfaceVariant)}.more-data-tag{flex:none;padding:3px 10px;border-radius:var(--r-full);background:var(--surfaceContainerHigh);color:var(--onSurfaceVariant);font-size:var(--fs-xs);font-weight:500}.more-preferences-group{display:flex;flex-direction:column;gap:var(--gap-list-rows)}.more-preference{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:68px;padding:10px 16px 10px 20px;border-radius:var(--r-xs);background:var(--surfaceContainerLow)}@media(max-width:360px){.more-preference{flex-wrap:wrap;padding:12px 16px}}.more-preferences-group>.more-preference:first-child{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.more-preferences-group>.more-preference:last-child{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.more-preferences-group>.more-preference:only-child{border-radius:var(--r-lg)}.more-preference-head{display:flex;align-items:center;gap:14px;min-width:0}.more-preference-icon{background:var(--surfaceContainerHigh);color:var(--onSurfaceVariant)}.more-preference h2{margin:0;font-size:16px;font-weight:600;line-height:1.3;letter-spacing:-.01em;white-space:nowrap}.more-preference-toggle{flex:none;width:auto}.more-preference-toggle .segmented-pill{flex:0 0 auto;min-height:36px;padding:0 12px;font-size:var(--fs-s);background:var(--surfaceContainerHigh)}.more-preference-toggle .segmented-pill.is-icon-pill{width:40px;min-width:40px;height:36px;min-height:36px;padding:0;line-height:1}.more-preference-toggle .segmented-pill.is-icon-pill svg{display:block;flex-shrink:0}.more-preference-toggle .segmented-pill:first-child{border-radius:18px var(--r-xs) var(--r-xs) 18px}.more-preference-toggle .segmented-pill:last-child{border-radius:var(--r-xs) 18px 18px var(--r-xs)}.more-preference-toggle .segmented-pill.active{border-radius:18px;background:var(--primary);color:var(--onPrimary)}.more-actions{display:flex;flex-direction:column;gap:var(--gap-list-rows)}.more-action{display:flex;align-items:center;gap:16px;min-height:68px;padding:12px 20px;border:0;border-radius:var(--r-xs);background:var(--surfaceContainerLow);color:var(--onSurface);font-size:16px;font-weight:600;letter-spacing:-.01em;text-decoration:none;cursor:pointer;transition:border-radius .3s var(--motion-spring),background-color .15s ease}.more-action:first-child{border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-xs)}.more-action:last-child{border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-lg)}.more-action:active{border-radius:var(--r-md);background:var(--surfaceContainerHigh)}@media(hover:hover){.more-action:hover{background:var(--surfaceContainer)}}.more-action-icon{width:44px;height:44px;border-radius:50%;background:var(--surfaceContainerHigh);color:var(--onSurfaceVariant);display:grid;place-items:center;flex-shrink:0}.more-action-label{flex:1;text-align:left}.more-action-description{display:block;margin-top:4px;color:var(--onSurfaceVariant);font-size:13px;font-weight:400;letter-spacing:normal}.more-action[role=status]{cursor:default}.more-action-trailing{color:var(--outline);font-size:14px;font-weight:500}.more-action.is-danger{color:var(--error)}.more-action.is-danger .more-action-icon{background:color-mix(in srgb,var(--errorContainer) 55%,var(--surfaceContainerLow));color:var(--onErrorContainer)}.more-tagline{margin:8px 0 0;text-align:center;font-size:var(--fs-xs);color:var(--onSurfaceVariant);opacity:.6}.academic-search-toggle{color:var(--onSurfaceVariant)}.academic-search{display:flex;align-items:center;gap:12px;padding:0 14px;border-radius:var(--r-lg);background:var(--surfaceContainer);color:var(--onSurfaceVariant)}.academic-search>svg{flex:none;width:20px;height:20px}.academic-search input{min-width:0;width:100%;min-height:48px;border:0;background:transparent;color:var(--onSurface);caret-color:var(--primary);font-size:16px}.academic-search input::-webkit-search-cancel-button,.academic-search input::-webkit-search-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:none}.academic-search input::placeholder{color:var(--onSurfaceVariant);opacity:1}.academic-search:focus-within{outline:2px solid var(--primary);outline-offset:2px}.academic-search input:focus-visible{outline:none}.academic-search-close{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--onSurfaceVariant);cursor:pointer}.academic-search-close svg{width:18px;height:18px}.academic-search-close:hover{background:color-mix(in srgb,currentColor 10%,transparent)}.academic-contribute a:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.academic-sem{position:relative;display:inline-flex;align-items:center;color:var(--onSurfaceVariant)}.academic-sem select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:10px 18px 10px 0;margin-block:-10px;min-height:44px;cursor:pointer}.academic-sem select:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.academic-sem svg{position:absolute;right:0;width:14px;height:14px;pointer-events:none}.month-grid{padding:4px 8px 12px;border-radius:var(--r-lg);background:var(--surfaceContainer)}.mg-head{display:flex;align-items:center;justify-content:space-between}.mg-title{font-weight:600;font-size:var(--fs-m)}.mg-title span{color:var(--onSurfaceVariant);font-weight:500}.mg-nav{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--onSurface);cursor:pointer;transition:background-color .2s,transform .3s var(--motion-spring)}.mg-nav svg{width:20px;height:20px}.mg-nav:hover:not(:disabled){background:color-mix(in srgb,currentColor 10%,transparent)}.mg-nav:active:not(:disabled){transform:scale(.88)}.mg-nav:disabled{opacity:.3;cursor:default}button.mg-day:focus-visible{outline:none}.mg-nav:focus-visible,.mg-day:focus-visible>span{outline:2px solid var(--primary);outline-offset:2px}.mg-grid{display:grid;grid-template-columns:repeat(7,1fr)}.mg-weekday{display:grid;place-items:center;height:32px;color:var(--onSurfaceVariant);font-size:var(--fs-xs);font-weight:600}.mg-day{--tone: var(--primary);position:relative;display:grid;place-items:center;height:40px;padding:0;border:0;background:none;color:var(--onSurface);font:inherit;font-size:var(--fs-s);font-variant-numeric:tabular-nums}button.mg-day{cursor:pointer}.mg-day>span{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;transition:transform .35s var(--motion-spring),box-shadow .2s}.tone-exam{--tone: var(--warning)}.tone-break{--tone: var(--success)}.tone-deadline{--tone: var(--error)}.tone-academic{--tone: var(--primary)}.mg-day.range:before{content:"";position:absolute;top:2px;right:0;bottom:2px;left:0;background:color-mix(in srgb,var(--tone) 24%,transparent)}.mg-day.range.s:before{left:50%}.mg-day.range.e:before{right:50%}.mg-day.range.rs:not(.s):before{left:4px;border-radius:18px 0 0 18px}.mg-day.range.re:not(.e):before{right:4px;border-radius:0 18px 18px 0}.mg-day.range.fade-l:before{-webkit-mask-image:linear-gradient(to left,#000 30%,transparent);mask-image:linear-gradient(to left,#000 30%,transparent)}.mg-day.range.fade-r:before{-webkit-mask-image:linear-gradient(to right,#000 30%,transparent);mask-image:linear-gradient(to right,#000 30%,transparent)}.mg-day.s>span,.mg-day.e>span{background:var(--tone);color:var(--surface);font-weight:700}.mg-day.is-today>span{box-shadow:inset 0 0 0 2px var(--onSurface);font-weight:700}.mg-day.is-selected>span{transform:scale(1.12);box-shadow:0 0 0 2px var(--surfaceContainer),0 0 0 4px var(--onSurface)}.mg-day.is-today.is-selected>span{box-shadow:inset 0 0 0 2px var(--onSurface),0 0 0 2px var(--surfaceContainer),0 0 0 4px var(--onSurface)}.mg-day:active:not(.is-selected)>span{transform:scale(.9)}.chip-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--tone, var(--primary))}.chip-btn.active .chip-dot{box-shadow:0 0 0 2px var(--onPrimary)}.academic-clear-day{min-height:36px;padding:0 14px;border:0;border-radius:var(--r-full);background:var(--surfaceContainer);color:var(--primary);font:inherit;font-size:var(--fs-s);font-weight:600;cursor:pointer}@media(prefers-reduced-motion:reduce){.mg-day>span,.mg-nav{transition:none}}.academic-filters{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-block:12px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.academic-filters::-webkit-scrollbar{display:none}.academic-filters .chip-btn{min-height:44px;display:inline-flex;align-items:center}.academic-schedule-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:12px 0 8px}.academic-schedule-heading .page-subhead{margin:0}.academic-schedule-heading>span{flex:none;color:var(--onSurfaceVariant);font-size:var(--fs-xs)}.academic-event{display:block;border-radius:var(--r-lg)}.academic-event-main{display:flex;align-items:flex-start;gap:12px}.academic-event-main .exam-body{overflow-wrap:anywhere}.academic-event.has-date-guidance .academic-event-dates{font-weight:600;font-size:16px}.academic-event:not(.is-next) .academic-event-state{color:var(--onSurfaceVariant);background:var(--surfaceContainerHighest)}.academic-event .exam-calendar{align-self:flex-start;margin-right:-8px}.academic-event-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:3px;font-size:var(--fs-xs);font-weight:600}.academic-category{color:var(--onSurfaceVariant)}.academic-category.category-exam{color:var(--warning)}.academic-category.category-break,.academic-category.category-holiday{color:var(--success)}.academic-category.category-deadline{color:var(--error)}.academic-category.category-academic{color:var(--primary)}.academic-event.is-next .academic-category{color:var(--onPrimaryContainer)}.academic-event.is-next .academic-category.category-exam{color:var(--onWarningContainer)}.academic-event.is-next .academic-category.category-break,.academic-event.is-next .academic-category.category-holiday{color:var(--onSuccessContainer)}.academic-event.is-next .academic-category.category-deadline{color:var(--onErrorContainer)}.academic-event.is-next .academic-category.category-academic{color:var(--onPrimaryContainer)}.academic-proposed{color:var(--onTertiaryContainer);background:var(--tertiaryContainer);padding:2px 7px;border-radius:var(--r-sm)}.academic-event-state{margin-left:auto;color:var(--onPrimaryContainer);background:color-mix(in srgb,var(--primary) 18%,transparent);padding:2px 8px;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:700}.academic-event-dates{margin:2px 0 0;font-size:var(--fs-s);line-height:1.5;font-variant-numeric:tabular-nums}.academic-meta-pill{color:var(--onSurfaceVariant);font-weight:500}.academic-event.is-next .academic-meta-pill{color:var(--onPrimaryContainer);opacity:.85}.academic-audience,.academic-event-note{margin:2px 0 0;font-size:var(--fs-xs);line-height:1.5;color:var(--onSurfaceVariant)}.academic-event.is-next .academic-audience,.academic-event.is-next .academic-event-note{color:var(--onPrimaryContainer)}.academic-timeline .is-past .exam-day:after{display:none}.academic-timeline .exam-future-group{margin-top:12px}.academic-guidance{margin-top:28px}.academic-guidance .academic-event+.academic-event{margin-top:10px}.academic-month-group,.academic-month-events,.academic-break-holidays ul{list-style:none;margin:0;padding:0}.academic-month-heading{margin:16px 0 12px 30px;font-size:var(--fs-s);font-weight:600;color:var(--onSurfaceVariant)}.academic-month-group:first-child .academic-month-heading{margin-top:4px}.academic-month-events>.exam-stop:last-child{padding-bottom:10px}.academic-break-holidays{margin-top:12px;padding-top:10px;border-top:1px solid var(--outlineVariant)}.academic-break-holidays>p{margin:0 0 4px;font-size:var(--fs-xs);color:var(--onSurfaceVariant)}.academic-break-holidays li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px}.academic-break-holidays li>div:first-child{min-width:0}.academic-break-holidays h5{margin:0;font-size:var(--fs-s);font-weight:600;overflow-wrap:anywhere}.academic-break-holidays li p{margin:2px 0 0;font-size:var(--fs-s);color:var(--onSurfaceVariant)}.academic-event.is-next .academic-break-holidays{border-color:color-mix(in srgb,var(--onPrimaryContainer) 25%,transparent)}.academic-event.is-next .academic-break-holidays p{color:var(--onPrimaryContainer)}.academic-empty{padding-block:12px}.academic-empty-actions{display:flex;flex-wrap:wrap;gap:8px}.academic-empty-actions button{min-height:44px;padding:8px 14px;border:1px solid var(--outlineVariant);border-radius:var(--r-full);background:transparent;color:var(--primary);font:inherit;font-size:var(--fs-s);cursor:pointer}.academic-empty-actions button:hover{background:var(--surfaceContainer)}.academic-contribute{margin-top:32px;padding:16px 0 24px;border-top:1px solid var(--outlineVariant);display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--onSurfaceVariant);font-size:var(--fs-xs)}.academic-contribute span{color:var(--onSurfaceVariant)}.academic-contribute a{display:inline-flex;align-items:center;gap:6px;color:var(--primary);text-decoration:underline;text-underline-offset:3px;font-weight:500}.academic-contribute a svg{width:16px;height:16px;flex-shrink:0;vertical-align:middle}@media(max-width:480px){.academic-calendar-page .app-bar-title{font-size:24px}.academic-event .exam-calendar{margin-right:-6px}.academic-event-main{gap:8px}}.target-fab{position:relative;z-index:0;flex:none;width:112px;height:40px;--spring: var(--motion-spring, cubic-bezier(.34, 1.56, .64, 1))}.target-fab[data-open]{width:176px}.target-fab-btn,.target-fab-options{position:absolute;left:0;top:0;height:40px;background:var(--surfaceContainer);color:var(--onSurfaceVariant);border-radius:24px}.target-fab-btn{border:0;width:112px;font:inherit;font-size:var(--fs-s);font-weight:500;cursor:pointer;transition:transform .35s var(--spring),border-radius .35s var(--spring)}.target-fab-btn:active{transform:scale(.94);border-radius:14px}.target-fab-options{z-index:5;display:grid;grid-template-columns:repeat(3,56px);padding:4px;height:48px;top:-4px;box-shadow:0 4px 16px #00000040;background:var(--surfaceContainerHigh);transform-origin:left center;animation:target-fab-in .5s var(--spring)}.target-fab-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:56px;border-radius:20px;background:var(--primary);transform:translate(calc(var(--i) * 56px));transition:transform .45s var(--spring)}.target-fab-opt{position:relative;border:0;background:transparent;color:inherit;font:inherit;font-size:var(--fs-s);font-weight:500;border-radius:20px;cursor:pointer;transition:color .2s,transform .3s var(--spring)}.target-fab-opt:active{transform:scale(.88)}.target-fab-opt.active{color:var(--onPrimary);font-weight:600}.target-fab-btn:focus-visible,.target-fab-opt:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.target-fab-options.is-closing{animation:target-fab-out .3s cubic-bezier(.4,0,.2,1) forwards}.target-fab-btn.is-entering{animation:target-fab-pop .45s var(--spring)}@keyframes target-fab-out{to{transform:scaleX(.45);opacity:0}}@keyframes target-fab-pop{0%{transform:scale(.8);opacity:0}to{transform:none;opacity:1}}@keyframes target-fab-in{0%{transform:scaleX(.4);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.target-fab-options,.target-fab-btn{animation:none!important}.target-fab-thumb,.target-fab-btn,.target-fab-opt{transition:none}}
