:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color:var(--text-dark, #333333);background-color:var(--page-gray, #f2f4f8);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}body{margin:0;background-color:var(--page-gray, #f2f4f8)}.portal-ai-assistant-root{--portal-ai-red: #a6192e;--portal-ai-red-dark: #7d1222;--portal-ai-red-brand: #a6192e;--portal-ai-red-accent: #b91c34;--portal-ai-red-meta: #c95662;--portal-ai-gold: #f2c300;--portal-ai-surface: #ffffff;--portal-ai-text: var(--text-dark, #333333);--portal-ai-muted: var(--portal-text-muted, #5c6578);--portal-ai-border: var(--border-gray, #e5e5e5);--portal-ai-shadow: 0 12px 40px rgba(28, 35, 51, .14), 0 4px 12px rgba(28, 35, 51, .08);--portal-ai-sidebar-width-max: 17rem;--portal-ai-chat-max-width: 42rem;--portal-ai-sidebar-pad-x: 1.125rem;--portal-ai-surface-sidebar: #eceef2;--portal-ai-surface-main: #ffffff;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;overflow:visible;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;gap:.75rem;padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1rem,env(safe-area-inset-bottom));padding-left:0;padding-top:0;pointer-events:none;font-size:var(--portal-body-font-size, .875rem);line-height:var(--portal-body-line-height, 1.45)}.portal-ai-assistant-root>*{pointer-events:auto}.portal-ai-assistant-dock{position:fixed;z-index:2;display:flex;flex-direction:row;align-items:flex-end;gap:8px;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));left:auto;top:auto;transform-origin:bottom right;cursor:default}.portal-ai-assistant-dock--cat-hidden{gap:0}.portal-ai-assistant-dock-hint{position:absolute;right:0;bottom:calc(100% + 10px);z-index:1;width:min(15.5rem,calc(100vw - 2rem));padding:.75rem .875rem;background:var(--portal-ai-surface);border:1px solid var(--portal-ai-border);border-radius:12px;box-shadow:var(--portal-ai-shadow);font-size:.8125rem;line-height:1.45;color:var(--portal-ai-text);animation:portal-ai-assistant-in .18s ease-out}.portal-ai-assistant-dock-hint__text{margin:0 0 .5rem}.portal-ai-assistant-dock-hint__link{color:var(--portal-ai-red);font-weight:600;text-decoration:underline}.portal-ai-assistant-dock-hint__link:hover{color:var(--portal-ai-red-dark)}.portal-ai-assistant-dock__cat-hit{display:flex;align-items:flex-end;justify-content:center;padding:0;margin:0;border:none;background:transparent;border-radius:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.portal-ai-assistant-dock--draggable .portal-ai-assistant-dock__cat-hit{cursor:grab;touch-action:none}.portal-ai-assistant-dock--draggable .portal-ai-assistant-dock__cat-hit:active{cursor:grabbing}.portal-ai-assistant-dock--draggable .portal-ai-assistant-launcher{cursor:grab;touch-action:none}.portal-ai-assistant-dock--draggable .portal-ai-assistant-launcher:active{cursor:grabbing}.portal-ai-assistant-dock--compact .portal-ai-assistant-launcher{width:2.4rem;height:2.4rem}.portal-ai-assistant-dock__cat-hit:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:3px}.portal-ai-assistant-pet{display:flex;align-items:center;justify-content:center;background:transparent;-webkit-user-select:none;user-select:none}.portal-ai-assistant-pet--loading{border-radius:12px;background:#a6192e0f}.portal-ai-assistant-welcome{display:flex;gap:.625rem;align-items:center;text-align:left}.portal-ai-assistant-welcome__lottie{flex-shrink:0;display:flex;align-items:center;justify-content:center}.portal-ai-assistant-welcome__lottie-placeholder{flex-shrink:0;border-radius:8px;background:#a6192e14}.portal-ai-assistant-welcome__title{margin:0 0 .3rem;font-size:.9375rem;font-weight:600;color:var(--portal-ai-text)}.portal-ai-assistant-welcome__p{margin:0 0 .25rem;font-size:.8125rem;line-height:1.45;color:var(--portal-ai-muted)}.portal-ai-assistant-welcome__p:last-child{margin-bottom:0}.portal-ai-assistant-welcome__coming-soon{margin:.15rem 0 0;font-size:.8125rem;line-height:1.45;font-weight:600;color:var(--portal-ai-red)}.portal-ai-assistant-coming-soon-badge{display:inline-flex;align-items:center;margin-left:.35rem;padding:.12rem .45rem;border-radius:999px;background:#f2c30038;color:var(--portal-ai-red-dark);font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;vertical-align:middle}.portal-ai-assistant-coming-soon-badge--minimized{margin-left:.4rem;font-size:.62rem}.portal-ai-assistant-panel--coming-soon .portal-ai-assistant-input:disabled{background:#f8f9fb;color:var(--portal-ai-muted);cursor:not-allowed}.portal-ai-assistant-panel--coming-soon .portal-ai-assistant-send:disabled{opacity:.55;cursor:not-allowed}.portal-ai-assistant-bubble--welcome{max-width:100%;padding:.75rem .85rem;background:#f4f5f8;border:1px solid rgba(15,23,42,.06)}.portal-ai-assistant-cat-context-menu{position:fixed;z-index:10050;min-width:11rem;padding:.3rem 0;margin:0;background:#fff;border:1px solid var(--portal-ai-border, #e5e5e5);border-radius:10px;box-shadow:0 8px 28px #1c233324,0 2px 10px #1c233314;font-size:var(--portal-body-font-size, .875rem);line-height:var(--portal-body-line-height, 1.45)}.portal-ai-assistant-cat-context-menu__item{display:block;width:100%;margin:0;padding:.5rem .9rem;border:none;background:none;text-align:left;font:inherit;color:var(--text-dark, #333333);cursor:pointer}.portal-ai-assistant-cat-context-menu__item:hover{background:#eceef2}.portal-ai-assistant-cat-context-menu__item:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:-2px}.portal-ai-assistant-launcher{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin:0;padding:0;border:none;border-radius:50%;background:linear-gradient(145deg,var(--portal-ai-red) 0%,var(--portal-ai-red-dark) 100%);color:#fff;cursor:pointer;box-shadow:var(--portal-ai-shadow),0 0 0 1px #0000000f,0 2px 10px #a6192e59;transition:transform .18s ease,box-shadow .18s ease}.portal-ai-assistant-launcher:hover{transform:translateY(-2px);box-shadow:0 16px 44px #1c23332e,0 6px 14px #1c23331a}.portal-ai-assistant-launcher:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:3px}.portal-ai-assistant-launcher__icon{display:flex;align-items:center;justify-content:center}.portal-ai-assistant-panel-wrap--sheet{width:min(28rem,calc(100vw - 1.5rem));max-height:min(36rem,calc(100dvh - var(--portal-header-height, 9rem) - 2rem));animation:portal-ai-assistant-in .22s ease-out}.portal-ai-assistant-panel-wrap--desktop{position:relative;display:block;max-height:none;animation:portal-ai-assistant-in .22s ease-out}.portal-ai-assistant-panel-wrap--desktop .portal-ai-assistant-panel{height:100%;max-height:none;min-height:0}.portal-ai-assistant-panel-wrap--desktop .portal-ai-assistant-messages,.portal-ai-assistant-panel-wrap--desktop .portal-ai-assistant-panel__main .portal-ai-assistant-messages{flex:1 1 auto;min-height:0;max-height:none}.portal-ai-assistant-resize{position:absolute;z-index:4;touch-action:none;box-sizing:border-box}.portal-ai-assistant-resize--e{top:0;right:0;width:6px;height:calc(100% - 14px);cursor:ew-resize}.portal-ai-assistant-resize--s{left:0;bottom:0;width:calc(100% - 14px);height:6px;cursor:ns-resize}.portal-ai-assistant-resize--se{right:0;bottom:0;width:14px;height:14px;cursor:nwse-resize}.portal-ai-assistant-resize--e:hover,.portal-ai-assistant-resize--s:hover,.portal-ai-assistant-resize--se:hover{background:#5c657814}.portal-ai-assistant-panel__header--draggable{cursor:move;touch-action:none}.portal-ai-assistant-minimized-float{pointer-events:none}.portal-ai-assistant-minimized-float .portal-ai-assistant-minimized{pointer-events:auto}.portal-ai-assistant-minimized--anchored{width:100%;max-width:none}@keyframes portal-ai-assistant-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.portal-ai-assistant-panel{display:flex;flex-direction:column;max-height:inherit;background:var(--portal-ai-surface);border:1px solid var(--portal-ai-border);border-radius:12px;box-shadow:var(--portal-ai-shadow);overflow:hidden}.portal-ai-assistant-panel__body{display:flex;flex:1 1 auto;min-height:0;position:relative}.portal-ai-assistant-panel__main{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;background:var(--portal-ai-surface-main)}.portal-ai-assistant-chat-shell{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0}.portal-ai-assistant-panel__main--drag-over .portal-ai-assistant-messages{background:#a6192e08;box-shadow:inset 0 0 0 2px #a6192e33}.portal-ai-assistant-panel__sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0 .35rem 0 0;padding:0;border:1px solid var(--portal-ai-border);border-radius:8px;background:#fff;color:var(--portal-ai-text);font-size:1rem;line-height:1;cursor:pointer;flex-shrink:0}.portal-ai-assistant-panel__sidebar-toggle:hover{background:#fafafa}.portal-ai-assistant-panel__sidebar-toggle:focus-visible{outline:2px solid var(--portal-ai-red);outline-offset:2px}.portal-ai-assistant-sidebar-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;margin:0;padding:0;border:none;background:#11182747;cursor:pointer}.portal-ai-assistant-sidebar{display:flex;flex-direction:column;flex:0 0 11.5rem;width:11.5rem;min-width:11.5rem;border-right:1px solid var(--portal-ai-border);background:var(--portal-ai-surface-sidebar);min-height:0}.portal-ai-assistant-sidebar--overlay{position:absolute;top:0;left:0;bottom:0;z-index:3;box-shadow:8px 0 24px #1c23331f}.portal-ai-assistant-sidebar__header{display:flex;align-items:center;gap:.35rem;padding:.55rem var(--portal-ai-sidebar-pad-x) .45rem}.portal-ai-assistant-panel--split .portal-ai-assistant-sidebar{flex:0 0 var(--portal-ai-sidebar-width-max);width:var(--portal-ai-sidebar-width-max);min-width:var(--portal-ai-sidebar-width-max);border-right:1px solid rgba(15,23,42,.08);--portal-ai-sidebar-pad-x: 1.35rem}.portal-ai-assistant-panel--split .portal-ai-assistant-sidebar__header{padding-top:.35rem;border-bottom:none}.portal-ai-assistant-sidebar__brand{padding:calc(.85rem + env(safe-area-inset-top,0px)) var(--portal-ai-sidebar-pad-x) .35rem}.portal-ai-assistant-sidebar__brand-heading{margin:0;font-size:inherit;font-weight:inherit;line-height:1.2}.portal-ai-assistant-panel--split .portal-ai-assistant-sidebar__chat-btn--active{background:#fff;border-left:none;padding-left:.65rem;border-radius:10px;color:var(--portal-ai-red-dark);font-weight:600;box-shadow:0 1px 4px #0f172a12}.portal-ai-assistant-panel__main-header{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;min-height:3.25rem;padding:calc(.45rem + env(safe-area-inset-top,0px)) 1.25rem .45rem;background:var(--portal-ai-surface-main);border-bottom:1px solid rgba(15,23,42,.06)}.portal-ai-assistant-panel--split .portal-ai-assistant-panel__body{flex:1 1 auto;min-height:0}.portal-ai-assistant-panel--split .portal-ai-assistant-chat-shell{width:100%;max-width:var(--portal-ai-chat-max-width);margin:0 auto;padding:0 1.25rem;box-sizing:border-box}.portal-ai-assistant-panel--split .portal-ai-assistant-messages{flex:1 1 auto;min-height:0;max-height:none;padding:.75rem .5rem .5rem 0;border-bottom:none;background:transparent}.portal-ai-assistant-messages--welcome-only{display:flex;flex-direction:column;min-height:0}.portal-ai-assistant-messages--welcome-only .portal-ai-assistant-msg-list{flex:1;justify-content:center;padding:1.5rem 0 2rem}.portal-ai-assistant-messages--welcome-only .portal-ai-assistant-msg--assistant{justify-content:center}.portal-ai-assistant-messages--welcome-only .portal-ai-assistant-bubble--welcome{width:min(100%,22rem);margin:0 auto;padding:1.25rem 1.15rem;border-radius:16px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 8px 32px #0f172a0f}.portal-ai-assistant-messages--welcome-only .portal-ai-assistant-welcome{flex-direction:column;align-items:center;text-align:center;gap:.85rem}.portal-ai-assistant-messages--welcome-only .portal-ai-assistant-welcome__text{max-width:18rem}.portal-ai-assistant-panel--split .portal-ai-assistant-bubble{max-width:min(100%,36rem)}.portal-ai-assistant-panel--split .portal-ai-assistant-input-stack{flex-shrink:0;padding:.75rem 0 calc(1.25rem + env(safe-area-inset-bottom,0px));border-top:none;background:transparent}.portal-ai-assistant-panel--split .portal-ai-assistant-compose{gap:.5rem;padding:.35rem .45rem .35rem .35rem;border:1px solid rgba(15,23,42,.1);border-radius:1.625rem;background:#fff;box-shadow:0 0 0 1px #fffc inset,0 4px 20px #0f172a12}.portal-ai-assistant-panel--split .portal-ai-assistant-input{height:42px;min-height:42px;max-height:42px;line-height:40px;border:none;background:transparent;box-shadow:none;padding:0 .5rem}.portal-ai-assistant-panel--split .portal-ai-assistant-input:focus{box-shadow:none}.portal-ai-assistant-panel--split .portal-ai-assistant-send:not(:disabled){background:var(--portal-ai-red);color:#fff}.portal-ai-assistant-panel--split .portal-ai-assistant-send:not(:disabled):hover{background:var(--portal-ai-red-dark)}.portal-ai-assistant-sidebar__new-btn{flex:1;min-width:0;display:inline-flex;align-items:center;gap:.4rem;margin:0;padding:.45rem .15rem;border:none;border-radius:8px;background:transparent;color:var(--portal-ai-red);font:inherit;font-size:.8125rem;font-weight:600;text-align:left;cursor:pointer;transition:background .12s ease,color .12s ease}.portal-ai-assistant-sidebar__new-icon{flex-shrink:0}.portal-ai-assistant-sidebar__new-btn:hover{background:#a6192e0f}.portal-ai-assistant-sidebar__new-btn:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px}.portal-ai-assistant-sidebar__close{flex-shrink:0}.portal-ai-assistant-sidebar__list{list-style:none;margin:0;padding:.35rem var(--portal-ai-sidebar-pad-x) .5rem;overflow-y:auto;flex:1 1 auto;min-height:0;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(15,23,42,.22) transparent}.portal-ai-assistant-sidebar__list::-webkit-scrollbar{width:8px}.portal-ai-assistant-sidebar__list::-webkit-scrollbar-thumb{border-radius:999px;background:#0f172a2e;border:2px solid transparent;background-clip:padding-box}.portal-ai-assistant-sidebar__item{display:flex;align-items:stretch;gap:.15rem;margin-bottom:.2rem}.portal-ai-assistant-sidebar__item:last-child{margin-bottom:0}.portal-ai-assistant-sidebar__chat-btn{flex:1;min-width:0;margin:0;padding:.45rem .5rem;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--portal-ai-text);font:inherit;font-size:.8125rem;line-height:1.35;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.portal-ai-assistant-sidebar__chat-btn:hover{background:#ffffffbf;border-color:#a6192e1f}.portal-ai-assistant-sidebar__chat-btn--active{background:#a6192e12;border-color:transparent;box-shadow:none;border-left:3px solid var(--portal-ai-red);padding-left:calc(.5rem - 3px);color:var(--portal-ai-red-dark);font-weight:600}.portal-ai-assistant-sidebar__chat-btn:focus-visible{outline:2px solid var(--portal-ai-red);outline-offset:1px}.portal-ai-assistant-sidebar__chat-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-ai-assistant-sidebar__delete-btn{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:var(--portal-ai-muted);font-size:1rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.portal-ai-assistant-sidebar__item:hover .portal-ai-assistant-sidebar__delete-btn,.portal-ai-assistant-sidebar__delete-btn:focus-visible{opacity:1}.portal-ai-assistant-sidebar__delete-btn:hover{background:#a6192e14;color:var(--portal-ai-red)}.portal-ai-assistant-sidebar__delete-btn:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:1px}.portal-ai-assistant-sidebar__footer,.portal-ai-assistant-sidebar__bottom,.portal-ai-assistant-attribution-footer--sidebar{flex-shrink:0}.portal-ai-assistant-sidebar__bottom{margin-top:auto;display:flex;flex-direction:column;overflow:visible}.portal-ai-assistant-attribution-footer--sidebar{margin-top:0}.portal-ai-assistant-sidebar__usage-cat{position:relative;flex-shrink:0;align-self:flex-start;padding:.15rem 0 .15rem calc(var(--portal-ai-sidebar-pad-x) - .35rem);overflow:visible;z-index:4}.portal-ai-assistant-sidebar__usage-cat-btn{display:block;margin:0;padding:.15rem;border:none;border-radius:12px;background:transparent;cursor:pointer;transition:background .12s ease,transform .12s ease;line-height:0}.portal-ai-assistant-sidebar__usage-cat-btn:hover{background:#a6192e0d}.portal-ai-assistant-sidebar__usage-cat-btn:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px}.portal-ai-assistant-sidebar__usage-panel{position:absolute;left:calc(100% + .35rem);bottom:0;z-index:6;width:13.5rem;padding:.85rem .95rem .9rem;border:1px solid rgba(15,23,42,.06);border-radius:16px;background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 12px 40px #0f172a24,0 0 0 .5px #0f172a0a}.portal-ai-assistant-sidebar__usage-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.portal-ai-assistant-sidebar__usage-title{margin:0;font-size:.8125rem;font-weight:600;letter-spacing:-.01em;color:var(--portal-ai-text)}.portal-ai-assistant-sidebar__usage-reset{margin:0;font-size:.5625rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--portal-ai-muted);white-space:nowrap}.portal-ai-assistant-sidebar__usage-date{margin:0;font-size:.625rem;font-weight:500;color:var(--portal-ai-muted);white-space:nowrap}.portal-ai-assistant-sidebar__usage-body{display:flex;flex-direction:column;align-items:center;gap:.7rem}.portal-ai-assistant-sidebar__usage-hero{display:flex;justify-content:center;width:100%}.portal-ai-assistant-sidebar__usage-remaining{margin:0;font-size:.75rem;font-weight:600;letter-spacing:-.01em;color:#34c759;text-align:center}.portal-ai-assistant-sidebar__usage-remaining--warn{color:#ff9500}.portal-ai-assistant-sidebar__usage-panel--tall{max-height:min(22rem,58vh);overflow-y:auto}.portal-ai-assistant-sidebar__usage-chats-block{width:100%}.portal-ai-assistant-sidebar__usage-queries{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;margin:0;padding:.55rem .65rem;border:none;border-radius:10px;background:#0f172a0a;cursor:pointer;font:inherit;text-align:left;transition:background .12s ease}.portal-ai-assistant-sidebar__usage-queries:hover:not(:disabled){background:#0f172a12}.portal-ai-assistant-sidebar__usage-queries:disabled{cursor:default;opacity:.85}.portal-ai-assistant-sidebar__usage-queries:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px}.portal-ai-assistant-sidebar__usage-queries-right{display:inline-flex;align-items:center;gap:.35rem}.portal-ai-assistant-sidebar__usage-chevron{display:inline-block;font-size:.875rem;line-height:1;color:var(--portal-ai-muted);transform:rotate(90deg);transition:transform .15s ease}.portal-ai-assistant-sidebar__usage-chevron--open{transform:rotate(-90deg)}.portal-ai-assistant-sidebar__usage-chat-list{list-style:none;margin:.35rem 0 0;padding:0;max-height:9rem;overflow-y:auto;border-radius:8px;background:#0f172a05}.portal-ai-assistant-sidebar__usage-chat-item{padding:.45rem .6rem;border-bottom:1px solid rgba(15,23,42,.05)}.portal-ai-assistant-sidebar__usage-chat-item:last-child{border-bottom:none}.portal-ai-assistant-sidebar__usage-chat-q{margin:0 0 .2rem;font-size:.625rem;line-height:1.35;color:var(--portal-ai-text)}.portal-ai-assistant-sidebar__usage-chat-cost{margin:0;font-size:.6875rem;font-weight:700;color:var(--portal-ai-red);font-variant-numeric:tabular-nums}.portal-ai-assistant-sidebar__usage-chat-tokens{margin:.25rem 0 0;font-size:.5625rem;line-height:1.35;color:var(--portal-ai-muted)}.portal-ai-assistant-sidebar__usage-advanced{display:grid;grid-template-columns:1fr 1fr;gap:.4rem .55rem;width:100%;margin:0;padding:.55rem .6rem;border-radius:10px;background:#0f172a08;font-size:.625rem}.portal-ai-assistant-sidebar__usage-advanced dt{margin:0;color:var(--portal-ai-muted);font-weight:500}.portal-ai-assistant-sidebar__usage-advanced dd{margin:.1rem 0 0;font-weight:700;color:var(--portal-ai-text);font-variant-numeric:tabular-nums}.portal-ai-assistant-sidebar__usage-advanced-btn{align-self:center;margin:0;padding:0;border:none;background:transparent;color:var(--portal-ai-muted);font:inherit;font-size:.5625rem;font-weight:500;letter-spacing:0;text-transform:none;cursor:pointer;opacity:.65;transition:opacity .12s ease,color .12s ease}.portal-ai-assistant-sidebar__usage-advanced-btn:hover{opacity:1;color:var(--portal-ai-text);text-decoration:underline;text-underline-offset:2px}.portal-ai-assistant-sidebar__usage-advanced-btn:focus-visible{opacity:1;outline:1px solid rgba(15,23,42,.2);outline-offset:2px;border-radius:2px}.portal-ai-assistant-sidebar__usage-queries-label{font-size:.6875rem;font-weight:500;color:var(--portal-ai-muted)}.portal-ai-assistant-sidebar__usage-queries-value{font-size:1.125rem;font-weight:700;line-height:1;color:var(--portal-ai-text);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.portal-ai-assistant-usage-ring{position:relative;display:flex;align-items:center;justify-content:center}.portal-ai-assistant-usage-ring--hero{flex-shrink:0}.portal-ai-assistant-usage-ring svg{display:block}.portal-ai-assistant-usage-ring__track{stroke:#0f172a14}.portal-ai-assistant-usage-ring__track--hero{stroke:#0f172a12}.portal-ai-assistant-usage-ring__fill{stroke:var(--portal-ai-gold);stroke-linecap:round;transition:stroke-dashoffset .45s cubic-bezier(.4,0,.2,1)}.portal-ai-assistant-usage-ring__fill--cost{stroke:#ff375f}.portal-ai-assistant-usage-ring__fill--warn{stroke:#ff9500}.portal-ai-assistant-usage-ring__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:.75rem;text-align:center;pointer-events:none}.portal-ai-assistant-usage-ring__spent{font-size:1.375rem;font-weight:700;line-height:1.05;letter-spacing:-.03em;color:var(--portal-ai-text);font-variant-numeric:tabular-nums}.portal-ai-assistant-usage-ring__caption{font-size:.5625rem;font-weight:500;line-height:1.25;color:var(--portal-ai-muted);max-width:5.5rem}.portal-ai-assistant-sidebar__usage-muted,.portal-ai-assistant-sidebar__usage-error{margin:0;font-size:.6875rem;line-height:1.4}.portal-ai-assistant-sidebar__usage-error{color:var(--portal-ai-red)}.portal-ai-assistant-attribution-footer{display:flex;align-items:center;justify-content:center;gap:.35rem;min-height:1.125rem;padding:.45rem .5rem .55rem}.portal-ai-assistant-attribution-footer--sidebar{position:relative;justify-content:flex-start;padding:.5rem var(--portal-ai-sidebar-pad-x) .6rem;background:transparent;border-top:1px solid rgba(15,23,42,.06)}.portal-ai-assistant-attribution-footer--sidebar .portal-ai-assistant-disclaimer-wrap{position:static}.portal-ai-assistant-attribution-footer--sidebar .portal-ai-assistant-disclaimer-popover{left:var(--portal-ai-sidebar-pad-x);right:var(--portal-ai-sidebar-pad-x);width:auto;max-width:none}.portal-ai-assistant-attribution-footer--sidebar .portal-ai-assistant-disclaimer-popover:after{left:.65rem;right:auto}.portal-ai-assistant-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .85rem;background:var(--portal-ai-surface-main);border-bottom:1px solid var(--portal-ai-border)}.portal-ai-assistant-panel__titles{min-width:0;display:flex;align-items:center}.portal-ai-assistant-panel__title{margin:0;font-size:inherit;font-weight:inherit;line-height:1.2;letter-spacing:normal}.portal-ai-assistant-panel__title-block{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.portal-ai-assistant-panel__subtitle{margin:.2rem 0 0;font-size:.75rem;font-weight:500;color:var(--portal-ai-muted);line-height:1.35}.portal-ai-assistant-brand-title{display:inline-flex;align-items:baseline;gap:0;white-space:nowrap;font-family:Fredoka,system-ui,-apple-system,Segoe UI,sans-serif;font-weight:600;font-size:inherit;letter-spacing:.015em;-webkit-font-smoothing:antialiased;color:var(--portal-ai-red-brand)}.portal-ai-assistant-brand-title--panel{font-size:1.0625rem;line-height:1.25}.portal-ai-assistant-brand-title--minimized{font-size:.875rem;line-height:1.25}.portal-ai-assistant-brand-title__mark,.portal-ai-assistant-brand-title__rest,.portal-ai-assistant-brand-title__version,.portal-ai-assistant-brand-title__sep{font-family:inherit}.portal-ai-assistant-brand-title__mark{margin-right:.28rem;font-family:Cinzel,ui-serif,Georgia,Times New Roman,serif;font-weight:700;letter-spacing:.08em;color:var(--portal-ai-red-dark)}.portal-ai-assistant-brand-title__rest{font-weight:600;letter-spacing:.01em;color:var(--portal-ai-red-accent)}.portal-ai-assistant-brand-title__version{display:inline-flex;align-items:baseline;gap:.28rem;margin-left:.35rem;font-weight:500;font-size:.82em;letter-spacing:.04em;color:var(--portal-ai-red-meta)}.portal-ai-assistant-brand-title__sep{font-weight:500;font-size:1.05em;line-height:1;color:var(--portal-ai-red-meta);opacity:.55}.portal-ai-assistant-panel__header-actions{display:flex;align-items:center;gap:.15rem;flex-shrink:0}.portal-ai-assistant-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0;padding:0;border:none;border-radius:8px;background:transparent;color:var(--portal-ai-red);cursor:pointer;transition:background .12s ease,color .12s ease,opacity .12s ease}.portal-ai-assistant-icon-btn:hover:not(:disabled){background:#a6192e14}.portal-ai-assistant-icon-btn:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px}.portal-ai-assistant-icon-btn:disabled{opacity:.4;cursor:not-allowed}.portal-ai-assistant-icon-btn--header{width:1.85rem;height:1.85rem}.portal-ai-assistant-icon-btn--compose{width:40px;height:40px;flex-shrink:0}.portal-ai-assistant-panel__toolbar{display:flex;justify-content:flex-end;padding:.3rem .75rem;background:#fff}.portal-ai-assistant-panel__toolbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem}.portal-ai-assistant-link-btn{margin:0;padding:.25rem .35rem;border:none;background:none;color:var(--portal-ai-red);font-size:.8125rem;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.portal-ai-assistant-link-btn:hover{color:var(--portal-ai-red-dark)}.portal-ai-assistant-link-btn:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px;border-radius:4px}.portal-ai-assistant-messages{flex:1;min-height:11rem;max-height:18rem;overflow-y:auto;padding:.65rem .75rem .5rem;border-bottom:1px solid var(--portal-ai-border);scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(15,23,42,.22) transparent}.portal-ai-assistant-messages::-webkit-scrollbar{width:8px}.portal-ai-assistant-messages::-webkit-scrollbar-thumb{border-radius:999px;background:#0f172a2e;border:2px solid transparent;background-clip:padding-box}.portal-ai-assistant-messages::-webkit-scrollbar-thumb:hover{background:#0f172a47;background-clip:padding-box}.portal-ai-assistant-msg-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.portal-ai-assistant-msg{display:flex}.portal-ai-assistant-msg--user{justify-content:flex-end}.portal-ai-assistant-msg--assistant{justify-content:flex-start}.portal-ai-assistant-bubble{max-width:92%;padding:.55rem .7rem;border-radius:12px;font-size:var(--portal-body-font-size, .875rem);line-height:var(--portal-body-line-height, 1.45);white-space:pre-wrap;word-break:break-word}.portal-ai-assistant-msg--user .portal-ai-assistant-bubble{background:var(--portal-ai-red);color:#fff;border-bottom-right-radius:4px}.portal-ai-assistant-msg--user .portal-ai-assistant-bubble--media{background:transparent;color:var(--portal-ai-text);padding:0;border-radius:0}.portal-ai-assistant-msg--user .portal-ai-assistant-bubble--media .portal-ai-assistant-message-text{display:inline-block;max-width:100%;margin-top:.4rem;padding:.55rem .7rem;border-radius:12px 12px 4px;background:var(--portal-ai-red);color:#fff}.portal-ai-assistant-msg--assistant .portal-ai-assistant-bubble{background:#f4f5f8;color:var(--portal-ai-text);border:1px solid #e8eaee;border-bottom-left-radius:4px;white-space:normal}.portal-ai-assistant-message-sources{display:flex;justify-content:flex-end;margin-top:.15rem}.portal-ai-assistant-message-sources__wrap{position:relative;max-width:100%}.portal-ai-assistant-message-sources__trigger{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .45rem;border:1px solid #d8dbe3;border-radius:999px;background:#fff;color:#5b6472;font-size:.6875rem;line-height:1.2;cursor:pointer}.portal-ai-assistant-message-sources__trigger:hover,.portal-ai-assistant-message-sources__trigger:focus-visible{border-color:#b8beca;color:#333;outline:none;box-shadow:0 0 0 2px #7a00191a}.portal-ai-assistant-message-sources__icon{font-size:.625rem;opacity:.85}.portal-ai-assistant-message-sources__popover{position:absolute;right:0;bottom:calc(100% + .4rem);z-index:6;width:min(17rem,calc(100vw - 2.5rem));padding:.55rem .65rem;border:1px solid var(--portal-ai-border);border-radius:8px;background:#fff;box-shadow:0 8px 24px #0f172a1f;text-align:left}.portal-ai-assistant-message-sources__popover:after{content:"";position:absolute;right:.55rem;bottom:-5px;width:8px;height:8px;background:#fff;border-right:1px solid var(--portal-ai-border);border-bottom:1px solid var(--portal-ai-border);transform:rotate(45deg)}.portal-ai-assistant-message-sources__heading{margin:0 0 .35rem;font-size:.6875rem;font-weight:600;color:#333}.portal-ai-assistant-message-sources__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.35rem}.portal-ai-assistant-message-sources__item{display:flex;align-items:center;gap:.45rem;min-width:0}.portal-ai-assistant-message-sources__provider-icon{flex-shrink:0;width:1.125rem;height:1.125rem;object-fit:contain;border-radius:999px}.portal-ai-assistant-message-sources__provider-icon--amu{background:#fff}.portal-ai-assistant-message-sources__provider-icon--supabase{border-radius:.25rem}.portal-ai-assistant-message-sources__label,.portal-ai-assistant-message-sources__link{flex:1;min-width:0;font-size:.6875rem;line-height:1.35;color:#333}.portal-ai-assistant-message-sources__link{text-decoration:none}.portal-ai-assistant-message-sources__link:hover,.portal-ai-assistant-message-sources__link:focus-visible{color:var(--portal-ai-red-dark);text-decoration:underline;outline:none}.portal-ai-assistant-sections{display:flex;flex-direction:column;gap:0}.portal-ai-assistant-section+.portal-ai-assistant-section{margin-top:.65rem;padding-top:.65rem;border-top:1px solid rgba(0,0,0,.06)}.portal-ai-assistant-section__header{display:flex;align-items:center;gap:.35rem;margin-bottom:.3rem}.portal-ai-assistant-section__emoji{font-size:.875rem;line-height:1;flex-shrink:0}.portal-ai-assistant-section__title{margin:0;font-size:.8125rem;font-weight:600;line-height:1.35;color:var(--portal-ai-red-dark)}.portal-ai-assistant-md{font-size:var(--portal-body-font-size, .875rem);line-height:var(--portal-body-line-height, 1.5);word-break:break-word;color:var(--portal-ai-text)}.portal-ai-assistant-md__heading,.portal-ai-assistant-md__subheading,.portal-ai-assistant-md__p{margin:0 0 .4rem}.portal-ai-assistant-md__heading,.portal-ai-assistant-md__subheading{font-weight:600;color:var(--portal-ai-red-dark)}.portal-ai-assistant-md__subheading{font-size:.8125rem}.portal-ai-assistant-md__p:last-child,.portal-ai-assistant-md__ul:last-child,.portal-ai-assistant-md__ol:last-child{margin-bottom:0}.portal-ai-assistant-md__strong{font-weight:600;color:var(--portal-ai-text)}.portal-ai-assistant-md__ul,.portal-ai-assistant-md__ol{margin:.15rem 0 .45rem;padding-left:1.15rem}.portal-ai-assistant-md__li{margin:.2rem 0}.portal-ai-assistant-md__li::marker{color:var(--portal-ai-red)}.portal-ai-assistant-md__link{color:var(--portal-ai-red);text-decoration:underline;text-underline-offset:2px}.portal-ai-assistant-md__link:hover{color:var(--portal-ai-red-dark)}.portal-ai-assistant-section__body .portal-ai-assistant-md__p:first-child,.portal-ai-assistant-section__body .portal-ai-assistant-md__ul:first-child,.portal-ai-assistant-section__body .portal-ai-assistant-md__ol:first-child{margin-top:0}.portal-ai-assistant-bubble--typing{display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-height:2.25rem;min-width:5.5rem}.portal-ai-assistant-thinking-seconds{font-size:.6875rem;font-variant-numeric:tabular-nums;color:var(--portal-ai-muted);white-space:nowrap}.portal-ai-assistant-thought-meta{margin:.1rem 0 0;align-self:flex-end;font-size:.6875rem;font-variant-numeric:tabular-nums;color:#8a93a3;line-height:1.3}.portal-ai-assistant-typing{display:inline-flex;gap:.3rem;padding:.15rem 0}.portal-ai-assistant-typing span{width:.35rem;height:.35rem;border-radius:50%;background:var(--portal-ai-muted);animation:portal-ai-assistant-dot 1s ease-in-out infinite}.portal-ai-assistant-typing span:nth-child(2){animation-delay:.15s}.portal-ai-assistant-typing span:nth-child(3){animation-delay:.3s}@keyframes portal-ai-assistant-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.portal-ai-assistant-input-stack{display:flex;flex-direction:column;padding:.55rem .75rem .65rem;background:var(--portal-ai-surface-main);border-top:1px solid var(--portal-ai-border);transition:background .15s ease,box-shadow .15s ease}.portal-ai-assistant-input-stack--drag-over{background:#a6192e0a;box-shadow:inset 0 0 0 2px #a6192e59}.portal-ai-assistant-attachments{min-width:0}.portal-ai-assistant-attachments__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.portal-ai-assistant-attachments__item{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;padding:.2rem .35rem .2rem .25rem;border:1px solid var(--portal-ai-border);border-radius:8px;background:#fff;font-size:.75rem;color:var(--portal-ai-text)}.portal-ai-assistant-attachments__thumb{width:1.75rem;height:1.75rem;border-radius:4px;object-fit:cover;flex-shrink:0}.portal-ai-assistant-attachments__doc{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;color:var(--portal-ai-muted);flex-shrink:0}.portal-ai-assistant-attachments__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:9rem}.portal-ai-assistant-attachments__status{flex-shrink:0;font-size:.6875rem;color:var(--portal-ai-muted)}.portal-ai-assistant-attachments__status--error{color:#b42318}.portal-ai-assistant-message-content{display:flex;flex-direction:column;gap:.45rem;min-width:0}.portal-ai-assistant-message-images{display:flex;flex-wrap:wrap;gap:.35rem}.portal-ai-assistant-message-image{margin:0;max-width:min(100%,220px)}.portal-ai-assistant-message-image img{display:block;width:100%;max-height:220px;object-fit:cover;border-radius:12px;border:1px solid rgba(15,23,42,.1);box-shadow:0 2px 8px #0f172a14}.portal-ai-assistant-message-image__placeholder{display:block;padding:.35rem .5rem;border-radius:8px;background:#0f172a0a;font-size:.75rem;color:var(--portal-ai-muted)}.portal-ai-assistant-message-text{margin:0;white-space:pre-wrap;word-break:break-word}.portal-ai-assistant-attachments__remove{display:flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:var(--portal-ai-muted);font-size:1rem;line-height:1;cursor:pointer;flex-shrink:0}.portal-ai-assistant-attachments__remove:hover:not(:disabled){background:#eceef2;color:var(--portal-ai-text)}.portal-ai-assistant-attachments__remove:disabled{opacity:.45;cursor:not-allowed}.portal-ai-assistant-attribution{margin:0;padding:0;font-size:.6875rem;font-weight:400;line-height:1.2;color:#8a8a8a}.portal-ai-assistant-disclaimer-wrap{position:relative;display:inline-flex;align-items:center}.portal-ai-assistant-disclaimer-trigger{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;margin:0;padding:0;border:1px solid #c8c8c8;border-radius:999px;background:#fff;color:#737373;font-size:.625rem;font-weight:700;font-style:italic;line-height:1;cursor:pointer}.portal-ai-assistant-disclaimer-trigger:hover,.portal-ai-assistant-disclaimer-trigger:focus-visible{border-color:#9a9a9a;color:#444;outline:none;box-shadow:0 0 0 2px #7a00191f}.portal-ai-assistant-disclaimer-popover{position:absolute;right:0;bottom:calc(100% + .45rem);z-index:5;width:min(16.5rem,calc(100vw - 2.5rem));padding:.55rem .65rem;border:1px solid var(--portal-ai-border);border-radius:8px;background:#fff;box-shadow:0 8px 24px #0f172a1f;font-size:.6875rem;line-height:1.45;color:#444;text-align:left}.portal-ai-assistant-disclaimer-popover:after{content:"";position:absolute;right:.35rem;bottom:-5px;width:8px;height:8px;background:#fff;border-right:1px solid var(--portal-ai-border);border-bottom:1px solid var(--portal-ai-border);transform:rotate(45deg)}.portal-ai-assistant-disclaimer{display:none}.portal-ai-assistant-compose{display:flex;align-items:center;gap:10px;padding:0;margin:0;background:transparent}.portal-ai-assistant-compose__leading{display:flex;flex-direction:row;align-items:center;gap:8px;flex-shrink:0}.portal-ai-assistant-upload-btn{color:var(--portal-ai-red)}.portal-ai-assistant-upload-btn:hover:not(:disabled){background:#a6192e14;color:var(--portal-ai-red-dark)}.portal-ai-assistant-upload-btn:disabled{opacity:.4;cursor:not-allowed}.portal-ai-assistant-upload-btn:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px}.portal-ai-assistant-input{flex:1;min-width:0;resize:none;box-sizing:border-box;margin:0;height:46px;min-height:46px;max-height:46px;padding:0 14px;border:1px solid var(--portal-ai-border);border-radius:10px;font:inherit;line-height:44px;color:var(--portal-ai-text);background:#fff;overflow-x:hidden;overflow-y:auto}.portal-ai-assistant-input::placeholder{color:var(--portal-ai-muted)}.portal-ai-assistant-input:focus{outline:none;border-color:var(--portal-ai-red);box-shadow:0 0 0 3px #a6192e1f}.portal-ai-assistant-input:disabled{opacity:.65;cursor:not-allowed}.portal-ai-assistant-send{color:var(--portal-ai-red)}.portal-ai-assistant-send:not(:disabled):hover{background:#a6192e1a}.portal-ai-assistant-send:not(:disabled):active{transform:scale(.96)}.portal-ai-assistant-send:not(:disabled){background:#a6192e14;color:var(--portal-ai-red)}.portal-ai-assistant-send:disabled{background:transparent;color:#a6192e59;opacity:1;cursor:not-allowed}.portal-ai-assistant-send:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px}.portal-ai-assistant-minimized{display:flex;align-items:center;gap:.35rem;width:min(22.5rem,calc(100vw - 1.5rem));padding:.35rem .35rem .35rem .5rem;background:var(--portal-ai-surface);border:1px solid var(--portal-ai-border);border-radius:999px;box-shadow:var(--portal-ai-shadow);animation:portal-ai-assistant-in .18s ease-out}.portal-ai-assistant-minimized__expand{flex:1;display:flex;flex-direction:column;align-items:flex-start;min-width:0;margin:0;padding:.35rem .65rem;border:none;border-radius:999px;background:transparent;cursor:pointer;text-align:left}.portal-ai-assistant-minimized__expand:focus-visible{outline:2px solid var(--portal-ai-gold);outline-offset:2px}.portal-ai-assistant-minimized__title{display:block;min-width:0}.portal-ai-assistant-minimized__hint{font-size:.75rem;color:var(--portal-ai-muted)}.portal-ai-assistant-minimized .portal-ai-assistant-minimized__close{flex-shrink:0;width:2rem;height:2rem;border:none;border-radius:50%;background:var(--amu-red);color:#fff;transition:background .12s ease,transform .12s ease,box-shadow .12s ease}.portal-ai-assistant-minimized .portal-ai-assistant-minimized__close:hover{background:var(--amu-red-dark);border-color:transparent}.portal-ai-assistant-minimized .portal-ai-assistant-minimized__close:active{transform:scale(.96);background:var(--amu-red-dark);box-shadow:inset 0 2px 6px #00000038}.portal-ai-assistant-minimized .portal-ai-assistant-minimized__close:focus-visible{outline:2px solid var(--amu-gold);outline-offset:2px}.portal-ai-assistant-minimized--draggable{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.portal-ai-assistant-minimized--draggable:active{cursor:grabbing}.portal-ai-assistant-panel-wrap--maximized{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:0!important;z-index:10001;animation:none}.portal-ai-assistant-panel-wrap--maximized .portal-ai-assistant-panel{height:100%;max-height:none;border-radius:0;border:none;box-shadow:none}.portal-ai-assistant-panel--maximized{height:100%}body.portal-ai-assistant--maximized{overflow:hidden}body.portal-ai-assistant--drag-resize{user-select:none;-webkit-user-select:none}@media (max-width: 480px){.portal-ai-assistant-panel-wrap--sheet{width:calc(100vw - max(1.5rem,env(safe-area-inset-left) + env(safe-area-inset-right)));max-width:calc(100vw - 1rem);max-height:min(88dvh,calc(100dvh - var(--portal-header-height, 9rem) - 1.25rem))}.portal-ai-assistant-messages{max-height:42vh}}.clinical-progress-rings{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.15rem}.clinical-progress-rings__head{display:flex;flex-direction:column;gap:.55rem}.clinical-progress-rings__head .portal-section-heading{margin:0;line-height:1.3}.clinical-progress-rings__lede{margin:.08rem 0 0;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;font-size:.75rem;line-height:1.35;color:var(--portal-text-muted, #5b6472)}.clinical-progress-rings__program-tag{flex-shrink:0;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1;padding:.18rem .42rem;border-radius:4px;border:1px solid transparent}.clinical-progress-rings__program-tag--mahm{color:#7a2430;background:#7a243014;border-color:#7a24302e}.clinical-progress-rings__program-tag--dahm{color:#5c4a12;background:#b48c141f;border-color:#b48c1447}.clinical-progress-rings__legacy-note{margin:0;padding:.5rem .65rem;border-radius:8px;background:#0f172a0a;font-size:.8125rem;line-height:1.4;color:var(--portal-text-muted, #5b6472)}.clinical-progress-rings__body{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.5rem 2rem;align-items:start;width:100%}.clinical-progress-rings__rings{display:flex;align-items:flex-start;gap:1.25rem;padding-top:.15rem}.clinical-progress-rings__metrics{display:grid;grid-template-columns:auto auto;gap:0 2.5rem;align-items:start;width:fit-content;max-width:100%;min-width:0}.clinical-progress-rings__summary-wrap,.clinical-progress-rings__levels-wrap{display:flex;flex-direction:column;min-width:0}.clinical-progress-rings__levels-wrap{padding-left:2.5rem;border-left:1px solid var(--portal-border-subtle, #e4e7ee)}.clinical-progress-rings__metric-heading{margin:0 0 .5rem;font-size:.625rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472)}.clinical-progress-rings__table{border-collapse:separate;border-spacing:0}.clinical-progress-rings__table th,.clinical-progress-rings__table td{padding:.42rem 0;vertical-align:middle;line-height:1.4}.clinical-progress-rings__table th{padding-right:.85rem;font-size:.6875rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase;text-align:left;color:var(--portal-text-muted, #5b6472)}.clinical-progress-rings__table td{font-size:.8125rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--portal-text, #1c2333);white-space:nowrap}.clinical-progress-rings__table--summary{width:auto;min-width:14.5rem}.clinical-progress-rings__table--summary th{width:auto;min-width:6.75rem;white-space:nowrap}.clinical-progress-rings--dahm .clinical-progress-rings__table--summary{min-width:16.5rem}.clinical-progress-rings--dahm .clinical-progress-rings__table--summary th{min-width:7.25rem}.clinical-progress-rings__table--levels{width:auto;min-width:22rem;table-layout:fixed}.clinical-progress-rings__table--levels th{width:4.75rem;white-space:nowrap}.clinical-progress-rings__table--levels td{width:6.5rem;padding-right:1.5rem}.clinical-progress-rings__table--levels td:last-child{padding-right:0}.clinical-progress-ring-stat{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem;width:92px}.clinical-progress-ring-stat__value{font-size:1.125rem;font-weight:700;line-height:1;color:var(--portal-ai-text, #1c2333);font-variant-numeric:tabular-nums}.clinical-progress-ring-stat__of{max-width:4.5rem;font-size:.5rem!important}.clinical-progress-ring-stat__label{margin:0;font-size:.625rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472);line-height:1.25}@media (max-width: 920px){.clinical-progress-rings__body{grid-template-columns:1fr;justify-items:center;gap:1.25rem}.clinical-progress-rings__metrics{grid-template-columns:1fr;gap:1rem;width:100%}.clinical-progress-rings__levels-wrap{padding-left:0;border-left:none;padding-top:.85rem;border-top:1px solid var(--portal-border-subtle, #e4e7ee)}.clinical-progress-rings__summary-wrap{width:100%}.clinical-progress-rings__table--summary,.clinical-progress-rings__table--levels{width:100%;min-width:0}}@media (max-width: 520px){.clinical-progress-rings__table--levels{table-layout:auto}.clinical-progress-rings__table--levels tbody tr{display:grid;grid-template-columns:4.75rem 1fr;gap:.35rem .75rem;margin-bottom:.5rem}.clinical-progress-rings__table--levels tbody tr:last-child{margin-bottom:0}.clinical-progress-rings__table--levels th,.clinical-progress-rings__table--levels td{display:block;width:auto!important;padding:.15rem 0;padding-right:0}}.clinical-progress-rings__didactic-departments--dahm{display:flex;flex-direction:column;gap:1rem;min-width:0}.clinical-progress-rings--dahm .clinical-progress-rings__metrics{align-items:flex-start}.admin-portal__main-body:has(.admin-ai-usage-page){display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.admin-ai-usage-page{--ai-usage-stat-w: 4.5rem;--ai-usage-stat-gap: 1.25rem;--ai-usage-stats-track: calc(var(--ai-usage-stat-w) * 3 + var(--ai-usage-stat-gap) * 2);display:flex;flex-direction:column;flex:1 1 auto;gap:1rem;min-height:0}.admin-ai-usage-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.25rem;min-width:0;flex-shrink:0}.admin-ai-usage-top__intro{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.25rem;min-width:0}.admin-ai-usage-top__title{margin:0;font-family:Cinzel,Times New Roman,Times,serif;font-size:1.25rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#a6192e}.admin-ai-assist-tabs{margin-top:.15rem;width:fit-content;max-width:100%}.admin-ai-usage-top__reset{margin:0;padding:.35rem .75rem;border:1px solid var(--portal-border, #e4e7ee);border-radius:999px;font-size:.8125rem;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--portal-text-muted, #5b6472);background:#fff}.admin-ai-usage-dashboard{padding:1.1rem 1.25rem 1.25rem;border:1px solid var(--portal-border, #e4e7ee);border-radius:14px;background:#fff;box-shadow:0 1px 2px #1018280a;flex-shrink:0}.admin-ai-usage-dashboard__filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem 1.15rem;align-items:end}@media (max-width: 960px){.admin-ai-usage-dashboard__filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.admin-ai-usage-dashboard__filters{grid-template-columns:1fr}}.admin-ai-usage-dashboard__divider{height:1px;margin:1rem 0 1.1rem;background:linear-gradient(90deg,rgba(122,0,25,.08),var(--portal-border, #e4e7ee) 18%,var(--portal-border, #e4e7ee) 82%,rgba(122,0,25,.08))}.admin-ai-usage-dashboard__overview{display:grid;grid-template-columns:minmax(0,1fr) var(--ai-usage-stats-track);gap:1rem 1.5rem;align-items:center}@media (max-width: 880px){.admin-ai-usage-dashboard__overview{grid-template-columns:1fr}}.admin-ai-usage-filter{display:flex;flex-direction:column;gap:.45rem;min-width:0}.admin-ai-usage-filter__label{font-size:.6875rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-filter .admin-input{width:100%;box-sizing:border-box}.admin-ai-usage-hero__main{display:flex;flex-wrap:wrap;align-items:center;gap:1.15rem 1.35rem;min-width:0}.admin-ai-usage-hero__copy{min-width:11rem}.admin-ai-usage-hero__headline{margin:0;font-size:1rem;font-weight:650;color:var(--portal-text, #1a1f2e)}.admin-ai-usage-hero__cap-note{margin:.35rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-hero__meta{margin:.65rem 0 0;font-size:.8125rem;line-height:1.45;font-variant-numeric:tabular-nums;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-hero__stats{display:grid;grid-template-columns:repeat(3,var(--ai-usage-stat-w));gap:var(--ai-usage-stat-gap);justify-items:center;justify-self:end}@media (max-width: 880px){.admin-ai-usage-hero__stats{justify-self:stretch;justify-content:space-around}}.admin-ai-usage-stat-ring{display:flex;flex-direction:column;align-items:center;gap:.45rem;width:var(--ai-usage-stat-w)}.admin-ai-usage-stat-ring__value{font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--portal-text, #1a1f2e)}.admin-ai-usage-stat-ring__label{margin:0;max-width:6.5rem;font-size:.6875rem;line-height:1.3;text-align:center;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-log__title{margin:0;font-size:.75rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-log{display:flex;flex-direction:column;flex:1 1 auto;gap:.75rem;min-height:0}.admin-ai-usage-log__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.admin-ai-usage-log__count{font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-table__nums{font-variant-numeric:tabular-nums;white-space:nowrap}.admin-ai-usage-source{display:inline-block;padding:.15rem .45rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.admin-ai-usage-source--student{background:#2563eb1a;color:#1d4ed8}.admin-ai-usage-source--staff{background:#7a001914;color:#7a0019}.admin-ai-usage-student-link{font-weight:600;color:inherit;text-decoration:none}.admin-ai-usage-student-link:hover{color:var(--amu-burgundy, #7a0019);text-decoration:underline}.admin-ai-usage-intent-badge{display:inline-block;padding:.12rem .4rem;border-radius:6px;background:#f0f2f7;font-size:.6875rem;text-transform:capitalize}.admin-ai-usage-table th,.admin-ai-usage-table td{font-size:.8125rem}.admin-ai-usage-table th:nth-child(n+6),.admin-ai-usage-table td:nth-child(n+6){text-align:right}.admin-ai-usage-table th:first-child,.admin-ai-usage-table td:first-child,.admin-ai-usage-table th:nth-child(2),.admin-ai-usage-table td:nth-child(2),.admin-ai-usage-table th:nth-child(3),.admin-ai-usage-table td:nth-child(3),.admin-ai-usage-table th:nth-child(4),.admin-ai-usage-table td:nth-child(4),.admin-ai-usage-table th:nth-child(5),.admin-ai-usage-table td:nth-child(5),.admin-ai-usage-table th:nth-child(8),.admin-ai-usage-table td:nth-child(8){text-align:left}.admin-ai-usage-student-list{display:flex;flex-direction:column;flex:1 1 auto;gap:.65rem;min-height:0}.admin-ai-usage-student-list>.admin-email-logs-table__empty{flex:1 1 auto;display:flex;align-items:center;justify-content:center;margin:0;min-height:8rem}.admin-ai-usage-student-group{border:1px solid var(--portal-border, #e4e7ee);border-radius:12px;background:#fff;overflow:hidden}.admin-ai-usage-student-group--open{border-color:#7a001938;box-shadow:0 2px 10px #7a00190d}.admin-ai-usage-activity-row{display:grid;grid-template-columns:auto minmax(7rem,10rem) auto minmax(0,1fr) var(--ai-usage-stats-track) auto;align-items:center;gap:.75rem 1rem;width:100%;padding:.9rem 1rem;border:0;background:transparent;text-align:left;cursor:pointer}.admin-ai-usage-activity-row:hover{background:#fafbfd}@media (max-width: 980px){.admin-ai-usage-activity-row{grid-template-columns:auto 1fr auto;grid-template-areas:"chevron name type" "meta meta meta" "ring ring ring" "when when when"}.admin-ai-usage-activity-row__chevron{grid-area:chevron}.admin-ai-usage-activity-row__name{grid-area:name}.admin-ai-usage-activity-row__type{grid-area:type;justify-self:end}.admin-ai-usage-activity-row__meta{grid-area:meta}.admin-ai-usage-activity-row__ring{grid-area:ring;justify-self:end}.admin-ai-usage-activity-row__when{grid-area:when;justify-self:start}}.admin-ai-usage-activity-row__chevron{width:1rem;font-size:.875rem;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-activity-row__name{font-size:.9375rem;font-weight:650;word-break:break-word}.admin-ai-usage-activity-row__type{white-space:nowrap}.admin-ai-usage-activity-row__meta{min-width:0}.admin-ai-usage-activity-row__meta-headline{margin:0;font-size:.75rem;font-weight:650;color:var(--portal-text, #1a1f2e)}.admin-ai-usage-activity-row__meta-cap,.admin-ai-usage-activity-row__meta-detail{margin:.18rem 0 0;font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--portal-text-muted, #5b6472)}.admin-ai-usage-activity-row__ring{display:grid;grid-template-columns:repeat(3,var(--ai-usage-stat-w));gap:var(--ai-usage-stat-gap);justify-items:end;align-items:center}.admin-ai-usage-activity-row__ring>*{grid-column:3}.admin-ai-usage-student-group__ring-spent{font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;color:var(--portal-text, #1a1f2e)}.admin-ai-usage-activity-row__when{justify-self:end;font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--portal-text-muted, #5b6472);white-space:nowrap}.admin-ai-usage-student-group__detail{border-top:1px solid var(--portal-border, #e4e7ee);background:#f9fafc;padding:.5rem .65rem .85rem}.admin-ai-usage-table--nested th,.admin-ai-usage-table--nested td{font-size:.75rem}.admin-ai-usage-table--nested th:nth-child(n+5),.admin-ai-usage-table--nested td:nth-child(n+5){text-align:right}.admin-ai-usage-log .admin-email-logs-footer{margin-top:auto;justify-content:flex-end;align-self:stretch;flex-shrink:0;padding-top:.35rem}.admin-ai-usage-log .admin-mass-email-pager-btn{min-width:5.75rem;box-sizing:border-box}.admin-ai-usage-log .admin-email-logs-footer__meta{min-width:2.5rem;text-align:center}@media (max-width: 720px){.admin-ai-usage-top__reset{width:100%;text-align:center}.admin-ai-usage-activity-row__when{white-space:normal}}.admin-ai-settings{display:flex;flex-direction:column;gap:1rem}.admin-ai-settings__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1.5rem}.admin-ai-settings__title{margin:0;font-size:1.125rem}.admin-ai-settings__meta{margin:0;font-size:.8125rem;color:var(--portal-text-muted, #5b6472)}.admin-ai-settings-card{display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem 1.35rem}.admin-ai-settings-split__grid{display:grid;grid-template-columns:minmax(11rem,16rem) minmax(0,1fr);gap:1.5rem 2rem;align-items:start}@media (max-width: 720px){.admin-ai-settings-split__grid{grid-template-columns:1fr}}.admin-ai-settings-usage__error{color:var(--portal-brand-red, #a6192e)}.admin-ai-settings-assistant__title{margin:0 0 .15rem;font-size:.8125rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472)}.admin-ai-settings-assistant .portal-settings-rows{gap:.65rem}.admin-ai-settings-usage{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.2rem}.admin-ai-settings-usage__label{margin:0 0 .25rem;width:100%;font-size:.8125rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472);text-align:left}.admin-ai-settings-usage__ring-wrap{display:flex;justify-content:center;padding:.15rem 0 .35rem}.admin-ai-settings-usage__remaining{margin:.1rem 0 0;font-size:.8125rem;font-weight:600;color:var(--portal-text, #1c2333)}.admin-ai-settings-usage__remaining--warn{color:var(--portal-brand-red, #a6192e)}.admin-ai-settings-usage__meta{margin:.15rem 0 0;max-width:14rem;font-size:.6875rem;line-height:1.35;color:var(--portal-text-muted, #5b6472)}.admin-ai-settings-platform-controls .portal-settings-rows{gap:.65rem}.admin-ai-settings-money-row{align-items:start}.admin-ai-settings-money-row__control{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;min-width:0}.admin-ai-settings-money-input{box-sizing:border-box;display:inline-flex;align-items:center;gap:.35rem;width:10.75rem;min-width:10.75rem;max-width:10.75rem;padding:.42rem .65rem;border:1px solid var(--portal-border-subtle, #e4e7ee);border-radius:8px;background:#fff;transition:border-color .12s ease,box-shadow .12s ease}.admin-ai-settings-money-input:focus-within{border-color:#a6192e73;box-shadow:0 0 0 3px #a6192e1a}.admin-ai-settings-money-input__prefix{flex:0 0 auto;font-size:.8125rem;font-weight:650;color:var(--portal-text-muted, #5b6472)}.admin-ai-settings-money-input__field{flex:1 1 auto;min-width:0;width:100%;margin:0;padding:0;border:none;background:transparent;font-size:.875rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--portal-text, #1c2333);text-align:right;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.admin-ai-settings-money-input__field::-webkit-outer-spin-button,.admin-ai-settings-money-input__field::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.admin-ai-settings-money-input__field:disabled{opacity:.55;cursor:not-allowed}.admin-ai-settings-money-row__unit{margin:0;padding-left:.05rem;font-size:.8125rem;line-height:1.35;color:var(--portal-text-muted, #5b6472)}.admin-ai-settings-platform__hint{margin:.15rem 0 0}.admin-ai-settings-save-btn{min-width:5.5rem;font-weight:600}.admin-ai-settings-actions{display:flex;justify-content:flex-start;margin-top:.35rem}.admin-ai-settings-card__section-title{margin:0;font-size:1rem}.admin-ai-settings-roles__hint{margin:0}.admin-ai-settings-roles{margin:0;padding:0;border:0}.admin-ai-settings-roles__legend{padding:0;font-weight:600}.admin-ai-settings-roles__list{list-style:none;margin:.75rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.5rem 1rem}.admin-ai-settings-role{display:flex;align-items:center;gap:.5rem;cursor:pointer}.admin-ai-settings-readonly{margin:0}:root{--amu-red: #8c1d2c;--amu-red-dark: #6e1622;--amu-gold: #f2c300;--page-gray: #f2f4f8;--amu-card: #ffffff;--border-gray: #e5e5e5;--text-dark: #333333;--amu-red-ring: rgba(140, 29, 44, .18);--portal-internal-main-content-max-width: 1600px;--portal-red-sidebar-pad-top: 1rem;--portal-red-sidebar-pad-bottom: 1.25rem;--portal-red-nav-gutter-y: .375rem;--portal-red-nav-gutter-x: .875rem;--portal-red-nav-link-pad-y: .5625rem;--portal-red-nav-link-pad-x: .75rem;--portal-red-nav-icon-size: 1.25rem;--portal-red-nav-icon-gap: .625rem;--portal-red-nav-item-gap: .125rem;--portal-red-nav-text-inset: calc(var(--portal-red-nav-gutter-x) + var(--portal-red-nav-link-pad-x))}html[data-portal-text-size=large]{font-size:112.5%}.portal-text-muted{color:var(--portal-text-muted, #5c6578)}.portal-shell{--portal-bg: var(--page-gray);--portal-surface: var(--amu-card);--portal-border: var(--border-gray);--portal-border-subtle: #e8e8e8;--portal-text: var(--text-dark);--portal-text-muted: #5c6578;--portal-text-faint: #7a8499;--portal-accent: var(--amu-red);--portal-accent-hover: var(--amu-red-dark);--portal-accent-soft: #f2e8ea;--portal-radius: 6px;--portal-shadow: 0 1px 2px rgba(28, 35, 51, .06);--portal-max: 56rem;--portal-module-max: 74rem;--portal-space-lede-bottom: 1.5rem;--portal-space-section: 1.75rem;--portal-space-main-bottom: 3rem;--portal-sidebar-width: 17.5rem;--portal-branding-bar-height: 4.5rem;--portal-portal-banner-height: 5rem;--portal-header-height: calc(var(--portal-branding-bar-height) + var(--portal-portal-banner-height));--portal-student-bar-bg: var(--amu-red);--portal-student-bar-min-height: 4.25rem;--portal-sidebar-bg: #ffffff;--portal-sidebar-text: #444444;--portal-sidebar-text-muted: #6b7280;--portal-sidebar-link-active: #a6192e;--portal-sidebar-row-hover: rgba(0, 0, 0, .05);--portal-sidebar-row-active: rgba(166, 25, 46, .08);--portal-main-canvas-bg: var(--page-gray);--portal-body-font-size: .875rem;--portal-body-line-height: 1.45;--portal-page-title-size: 1rem;min-height:100vh;background:var(--portal-bg);color:var(--portal-text)}.portal-shell--with-banner{--portal-portal-banner-height: 5rem;--portal-header-height: calc(var(--portal-branding-bar-height) + var(--portal-portal-banner-height))}.portal-shell--without-banner{--portal-portal-banner-height: 0rem;--portal-header-height: var(--portal-branding-bar-height)}.portal-shell--authenticated{display:flex;flex-direction:column;min-height:100vh;background:var(--portal-main-canvas-bg)}.portal-shell.portal-shell--dashboard-home.portal-shell--authenticated{min-height:100dvh;align-items:stretch}.portal-shell--dashboard-home .portal-main{flex:1 1 auto;align-self:stretch;width:100%;min-height:calc(100dvh - var(--portal-header-height) - env(safe-area-inset-top,0px));height:auto;display:flex;flex-direction:column}.portal-shell--dashboard-home .portal-main-content{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.portal-shell--dashboard-home .portal-main-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.portal-shell--dashboard-home .portal-dashboard{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.portal-shell--dashboard-home .portal-site-footer{flex-shrink:0;margin-top:.75rem}@media (min-width: 1025px){.portal-shell--dashboard-home .portal-dashboard-home-aside>.portal-dashboard-courses,.portal-shell--dashboard-home .portal-dashboard-home-primary>.portal-dashboard-sidebar-card{min-height:0;height:100%}.portal-shell--dashboard-home .portal-dashboard-courses-timetable-wrap{flex:1 1 auto;min-height:0}.portal-shell--dashboard-home .portal-dashboard-courses-timetable{flex:1 1 auto;height:100%}}.portal-app-header{position:fixed;top:0;left:0;right:0;z-index:40;box-sizing:border-box;display:flex;flex-direction:column;width:100%;padding-top:env(safe-area-inset-top,0px);background:var(--amu-card);border-bottom:1px solid var(--border-gray)}.portal-branding-bar{flex-shrink:0;box-sizing:border-box;width:100%;min-height:var(--portal-branding-bar-height);background:var(--portal-header-bg, var(--amu-gold));border-bottom:1px solid var(--portal-header-border, rgba(0, 0, 0, .06))}.portal-branding-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;box-sizing:border-box;min-width:0;min-height:var(--portal-branding-bar-height);padding:.5rem clamp(1.5rem,3vw,2rem)}.portal-shell--internal-module .portal-branding-bar-inner,.admin-portal .portal-branding-bar-inner{padding-top:.5rem;padding-bottom:.5rem;padding-left:max(env(safe-area-inset-left),var(--portal-red-nav-text-inset));padding-right:max(env(safe-area-inset-right),clamp(1.5rem,3vw,2rem))}.portal-branding-bar-start{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.portal-branding-bar-inner--student-topbar>.portal-branding-bar-center{display:flex;align-items:center;justify-content:center;min-width:0;flex:1 1 auto}.portal-branding-bar-inner--student-topbar>.portal-branding-bar-start{flex:0 0 auto}@media (min-width: 769px){.portal-branding-bar-inner--student-topbar>.portal-branding-bar-start{display:none}.portal-branding-bar-inner--student-topbar>.portal-branding-bar-center{flex:0 1 auto;justify-content:flex-start}.portal-branding-bar-inner--student-topbar>.portal-branding-bar-end{flex:0 0 auto;min-width:0}}.portal-branding-bar-menu-btn{display:none;align-items:center;justify-content:center;width:2.375rem;height:2.375rem;margin:0;padding:0;flex-shrink:0;border:1px solid rgba(0,0,0,.14);border-radius:var(--portal-radius);background:#ffffff59;color:#1a1a1a;cursor:pointer;transition:background .12s ease,border-color .12s ease}.portal-branding-bar-menu-btn:hover{background:#ffffff8c;border-color:#0003}.portal-branding-bar-menu-btn:focus-visible{outline:2px solid var(--amu-red-dark);outline-offset:2px}.portal-branding-bar-menu-icon{display:block;width:1.125rem;height:2px;background:currentColor;box-shadow:0 .3125rem 0 currentColor,0 .625rem 0 currentColor}.portal-branding-bar-logo-link{display:flex;align-items:center;flex-shrink:0;line-height:0;border-radius:var(--portal-radius);outline-offset:2px;text-decoration:none}.portal-branding-bar-logo-link:focus-visible{outline:2px solid var(--amu-red-dark)}.portal-branding-bar-logo{display:block;height:3rem;max-height:calc(var(--portal-branding-bar-height) - 1rem);width:auto;max-width:min(12.5rem,48vw);object-fit:contain;object-position:left center}.portal-branding-bar-end{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:.5rem .75rem;flex:0 1 auto;min-width:0}.portal-branding-bar-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:1.25rem;flex:1 1 auto;min-width:0;max-width:100%}.portal-user-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:1.25rem;min-width:0;max-width:100%}.portal-branding-bar-user-cluster{display:inline-flex;align-items:center;flex-wrap:nowrap;flex-shrink:0;min-width:0}.portal-branding-bar-user-cluster .portal-user-button{min-width:0}.portal-user-actions .portal-user-button,.portal-user-actions .portal-notification-bell__trigger,.portal-user-actions .portal-logout-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;align-self:center;min-height:1.5rem;vertical-align:middle}.portal-lang-toggle{display:inline-flex;align-items:center;justify-content:center;position:relative;z-index:2;width:32px;height:32px;margin:0;padding:0;border:none;background:transparent;color:#1a1a1a;cursor:pointer;flex-shrink:0;margin-right:.5rem}.portal-lang-toggle__icon{display:block;width:18px;height:18px;flex-shrink:0;background-color:transparent;background-image:url(/language.svg);background-repeat:no-repeat;background-position:center;background-size:contain;opacity:.88;transition:opacity .15s ease,filter .15s ease}.portal-lang-toggle:hover .portal-lang-toggle__icon{opacity:1}.portal-lang-toggle:focus-visible .portal-lang-toggle__icon{opacity:1}.portal-lang-toggle:focus-visible{outline:2px solid var(--amu-red-dark);outline-offset:3px;border-radius:2px}.portal-notification-bell{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.portal-notification-bell__trigger{flex-shrink:0;position:relative}.portal-notification-bell__label{flex-shrink:0}.portal-notification-bell__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.125rem;height:1.125rem;margin-left:.1rem;padding:0 .32rem;border-radius:999px;background:var(--amu-red, #8c1d2c);color:#fff;font-size:.625rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;flex-shrink:0}.portal-notification-bell__panel{position:absolute;top:calc(100% + .45rem);right:0;z-index:120;width:min(22rem,calc(100vw - 1.5rem));border:1px solid var(--portal-border-subtle, #e4e7ee);border-radius:12px;background:#fff;box-shadow:0 10px 28px #1a1f2e1f;overflow:hidden}.portal-notification-bell__panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;border-bottom:1px solid var(--portal-border-subtle, #e4e7ee);background:#fafbfd}.portal-notification-bell__panel-title{margin:0;font-size:.8125rem;font-weight:700;letter-spacing:.02em;color:var(--portal-text, #1a1f2e)}.portal-notification-bell__mark-all{margin:0;padding:0;border:0;background:transparent;font-size:.75rem;font-weight:600;color:var(--amu-red, #8c1d2c);cursor:pointer}.portal-notification-bell__mark-all:hover{text-decoration:underline}.portal-notification-bell__panel-body{max-height:min(24rem,60vh);overflow:auto}.portal-notification-bell__empty{margin:0;padding:1rem .9rem;font-size:.8125rem;color:var(--portal-text-muted, #5b6472)}.portal-notification-bell__list{list-style:none;margin:0;padding:0}.portal-notification-bell__item{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;width:100%;padding:.75rem .9rem;border:0;border-bottom:1px solid var(--portal-border-subtle, #e4e7ee);background:#fff;text-align:left;cursor:pointer}.portal-notification-bell__item:last-child{border-bottom:none}.portal-notification-bell__item:hover{background:#fafbfd}.portal-notification-bell__item--unread{background:#fff8f8}.portal-notification-bell__item-title{font-size:.8125rem;font-weight:650;line-height:1.3;color:var(--portal-text, #1a1f2e)}.portal-notification-bell__item-detail{font-size:.75rem;line-height:1.35;color:var(--portal-text-muted, #5b6472)}.portal-branding-bar-user-cluster .portal-notification-bell{margin:0}.portal-branding-bar__ai-dock-anchor{flex-shrink:0;width:7rem;min-width:7rem;min-height:2.5rem;height:2.5rem;pointer-events:none}.portal-user-button,.portal-logout-button{display:inline-flex;align-items:center;gap:.4375rem;margin:0;padding:0;min-width:0;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1.2;color:#1a1a1a;text-decoration:none;white-space:nowrap;background:none;border:none;border-bottom:1px solid transparent;padding-bottom:.05rem;cursor:pointer;box-sizing:border-box;transition:color .12s ease,border-color .12s ease,opacity .12s ease}.portal-logout-button{flex-shrink:0}.portal-user-button__label{min-width:0;max-width:min(14rem,100%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-user-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:17px;height:17px;color:currentColor}.portal-user-icon svg{display:block;width:100%;height:100%;flex-shrink:0}.portal-user-button:hover,.portal-logout-button:hover,.portal-notification-bell__trigger:hover{color:var(--amu-red-dark);border-bottom-color:#6e162273}.portal-user-button:focus-visible,.portal-logout-button:focus-visible,.portal-notification-bell__trigger:focus-visible{outline:2px solid var(--amu-red-dark);outline-offset:3px;border-radius:2px}.portal-portal-banner{flex-shrink:0;box-sizing:border-box;width:100%;min-height:var(--portal-portal-banner-height);background:#fff}.portal-portal-banner-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;box-sizing:border-box;min-height:var(--portal-portal-banner-height);padding:0 max(1rem,env(safe-area-inset-left)) 0 max(1rem,env(safe-area-inset-right))}.portal-portal-banner__ai-dock-anchor{grid-column:3;justify-self:end;align-self:center;width:7rem;min-height:3.25rem;height:3.25rem;pointer-events:none}.portal-myamu-mark{grid-column:2;justify-self:center;margin:0;line-height:1;font-size:clamp(1.45rem,2.9vw,1.75rem);letter-spacing:-.02em;display:flex;align-items:center;justify-content:center;gap:0}.portal-myamu-my{font-weight:700;color:var(--amu-red);margin-right:.02em}.portal-myamu-amu{font-family:Cinzel,Times New Roman,Times,serif;font-weight:600;color:#0f0f0f;letter-spacing:.04em}.portal-sidebar{position:fixed;top:var(--portal-header-height);left:0;z-index:20;box-sizing:border-box;width:var(--portal-sidebar-width);height:calc(100vh - var(--portal-header-height));height:calc(100dvh - var(--portal-header-height));padding:.75rem 0 1rem;background:var(--portal-sidebar-bg);border-right:1px solid var(--portal-border-subtle);display:flex;flex-direction:column;gap:.5rem}.portal-sidebar-nav{flex:1;overflow-y:auto;padding:.25rem .625rem 0}.portal-sidebar-nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.1875rem}.portal-sidebar-nav-divider{height:1px;margin:.625rem .5rem .75rem;background:var(--portal-border-subtle);list-style:none}.portal-sidebar-nav-signout{margin-top:.125rem}.portal-nav-link{display:flex;align-items:center;gap:.5rem;min-height:2rem;padding:.35rem .5rem;font-size:14px;font-weight:400;letter-spacing:.2px;line-height:1.35;color:var(--portal-sidebar-text);text-decoration:none;border-radius:var(--portal-radius);border:1px solid transparent;transition:background .12s ease,color .12s ease}.portal-sidebar .sidebar-item,.portal-sidebar .sidebar-item:hover{color:var(--portal-sidebar-text)}.portal-sidebar .sidebar-item.portal-nav-link--active{color:var(--portal-sidebar-link-active)}.portal-nav-link-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:currentColor}.portal-nav-link-label{min-width:0;line-height:1.35}.portal-nav-link-icon svg{display:block;width:100%;height:100%}.portal-nav-link:hover{background:var(--portal-sidebar-row-hover)}.portal-nav-link:focus-visible{outline:2px solid var(--portal-sidebar-link-active);outline-offset:2px}.portal-nav-link--active{background:var(--portal-sidebar-row-active);color:var(--portal-sidebar-link-active);border-color:transparent;font-weight:500}.portal-nav-link--disabled{cursor:not-allowed;opacity:.42;pointer-events:none}.portal-nav-link--signout{color:var(--portal-sidebar-text-muted)}.portal-nav-link--signout:hover{color:var(--portal-sidebar-text)}.portal-main{flex:1;margin-left:var(--portal-sidebar-width);padding-top:calc(var(--portal-header-height) + env(safe-area-inset-top,0px));min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:transparent}.portal-shell--no-sidebar .portal-main{margin-left:0}.portal-main-content{width:100%;max-width:1440px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px;box-sizing:border-box;flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.portal-shell--dashboard-home .portal-main-content{width:100%;max-width:1600px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;box-sizing:border-box;min-height:calc(100dvh - var(--portal-header-height) - env(safe-area-inset-top,0px))}.portal-shell--internal-module{--portal-sidebar-width: 15.75rem}.portal-shell--internal-module .portal-main{padding-left:0;box-sizing:border-box}.portal-shell--internal-module .portal-main-content{width:100%;max-width:var(--portal-internal-main-content-max-width);margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;box-sizing:border-box}.portal-shell--internal-module .portal-module-page{max-width:100%}@media (max-width: 768px){.portal-shell--internal-module .portal-main{padding-left:0}}.portal-shell--internal-module .portal-sidebar,.admin-portal .admin-sidebar{background:linear-gradient(180deg,#b01e33 0%,var(--amu-red) 32%,#7a1824 100%);border-right:1px solid rgba(0,0,0,.14);padding:var(--portal-red-sidebar-pad-top) 0 var(--portal-red-sidebar-pad-bottom)}.portal-shell--internal-module .portal-sidebar-nav,.admin-portal .admin-sidebar .portal-sidebar-nav{display:flex;flex-direction:column;flex:1;overflow-y:auto;margin:0;padding:var(--portal-red-nav-gutter-y) var(--portal-red-nav-gutter-x) 0}.portal-sidebar-nav-groups{display:flex;flex-direction:column;flex:1;min-height:0;gap:.875rem}.portal-sidebar-nav-group{display:flex;flex-direction:column;gap:.375rem}.portal-sidebar-nav-group--account{margin-top:auto;padding-top:.875rem;border-top:1px solid rgba(255,255,255,.14)}.portal-sidebar-nav-group-label{margin:0;padding:0 var(--portal-red-nav-link-pad-x);font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ffffff94}.portal-shell--internal-module .portal-sidebar-nav-list,.admin-portal .admin-sidebar .portal-sidebar-nav-list{gap:var(--portal-red-nav-item-gap)}.portal-shell--internal-module .portal-sidebar .portal-nav-link,.admin-portal .admin-sidebar .portal-nav-link{display:flex;align-items:center;gap:var(--portal-red-nav-icon-gap);font-size:.875rem;font-weight:500;line-height:1.4;letter-spacing:.01em;color:#ffffffeb;min-height:2.5rem;padding:var(--portal-red-nav-link-pad-y) var(--portal-red-nav-link-pad-x);border-radius:.5rem;border:none;box-sizing:border-box;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.portal-shell--internal-module .portal-sidebar .portal-nav-link-icon,.admin-portal .admin-sidebar .portal-nav-link-icon{width:var(--portal-red-nav-icon-size);height:var(--portal-red-nav-icon-size);opacity:1}.admin-portal .admin-sidebar .portal-nav-link-icon svg{stroke:currentColor}.portal-shell--internal-module .portal-sidebar .sidebar-item,.admin-portal .admin-sidebar .sidebar-item{color:#ffffffeb}.portal-shell--internal-module .portal-sidebar .sidebar-item:hover,.admin-portal .admin-sidebar .sidebar-item:hover{color:#fff}.portal-shell--internal-module .portal-sidebar .portal-nav-link:hover,.admin-portal .admin-sidebar .portal-nav-link:hover{background:#ffffff1a;color:#fff}.portal-shell--internal-module .portal-sidebar .portal-nav-link:focus-visible,.admin-portal .admin-sidebar .portal-nav-link:focus-visible{outline:2px solid rgba(255,255,255,.92);outline-offset:2px}.portal-shell--internal-module .portal-sidebar .portal-nav-link--active,.portal-shell--internal-module .portal-sidebar .sidebar-item.portal-nav-link--active,.admin-portal .admin-sidebar .portal-nav-link--active,.admin-portal .admin-sidebar .sidebar-item.portal-nav-link--active{background:#ffffff29;color:#fff;font-weight:600;box-shadow:inset 3px 0 0 var(--amu-gold),0 1px 2px #00000014}.portal-shell--internal-module .portal-sidebar .portal-nav-link--active .portal-nav-link-icon,.admin-portal .admin-sidebar .portal-nav-link--active .portal-nav-link-icon{opacity:1}.portal-shell--internal-module .portal-sidebar-drawer-close{color:#ffffffd9}.portal-shell--internal-module .portal-sidebar-drawer-close:hover{background:#ffffff14;color:#fff}.portal-shell--internal-module .portal-sidebar-drawer-close:focus-visible{outline:2px solid rgba(255,255,255,.9)}.portal-student-info-bar{flex-shrink:0;width:100%;box-sizing:border-box;background:var(--portal-student-bar-bg);color:#fff;border-bottom:1px solid rgba(0,0,0,.08)}.portal-student-info-bar-inner{width:100%;min-height:var(--portal-student-bar-min-height);padding:.875rem 0;box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.875rem 1.5rem}.portal-student-info-bar-identity{display:flex;align-items:center;gap:.875rem;min-width:0;flex:1 1 auto}.portal-student-info-bar-avatar{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;font-size:.9375rem;font-weight:600;letter-spacing:.02em;line-height:1;color:#fff;background:#ffffff24;border:2px solid rgba(255,255,255,.42)}.portal-student-info-bar-text{min-width:0;display:flex;flex-direction:column;gap:.125rem;justify-content:center}.portal-student-info-bar-name{margin:0;line-height:1.3;font-size:1rem;font-weight:600;letter-spacing:-.01em;color:#fff;overflow-wrap:anywhere;word-break:break-word}.portal-student-info-bar-balance{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;text-align:right;gap:.2rem}.portal-student-info-bar-balance-label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#ffffffc7}.portal-student-info-bar-balance-amount{font-size:1.375rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.15;color:#fff}@media (max-width: 768px){.portal-student-info-bar-inner{align-items:stretch;padding-top:.75rem;padding-bottom:.75rem;gap:.75rem 1rem}.portal-student-info-bar-name{font-size:.9375rem;line-height:1.35}.portal-student-info-bar-avatar{width:2.75rem;height:2.75rem;font-size:.875rem}.portal-student-info-bar-balance{width:100%;flex-direction:row;align-items:baseline;justify-content:space-between;text-align:left;padding-top:.5rem;margin-top:0;border-top:1px solid rgba(255,255,255,.14)}.portal-student-info-bar-balance-label{font-size:.625rem}.portal-student-info-bar-balance-amount{font-size:1.1875rem}}.portal-main-body{flex:1 1 auto;width:100%;min-width:0;padding:1rem 0 var(--portal-space-main-bottom);box-sizing:border-box}.portal-shell--authenticated .portal-main-content{flex:1 1 auto;min-height:calc(100dvh - var(--portal-header-height) - env(safe-area-inset-top,0px))}.portal-shell--authenticated .portal-main-body{font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);padding-bottom:.375rem}.portal-main-body:has(.portal-dashboard){padding-top:.625rem;padding-bottom:.25rem}@media (max-width: 768px){.portal-shell--authenticated{--portal-body-font-size: .8125rem;flex-direction:column;--portal-branding-bar-height: 4.5rem}.portal-shell--with-banner{--portal-portal-banner-height: 4.5rem;--portal-header-height: calc(var(--portal-branding-bar-height) + var(--portal-portal-banner-height))}.portal-shell--without-banner{--portal-portal-banner-height: 0rem;--portal-header-height: var(--portal-branding-bar-height)}.portal-sidebar--desktop{display:none!important}.portal-branding-bar-menu-btn{display:inline-flex}.portal-branding-bar-inner{padding-left:1rem;padding-right:1rem;align-items:center}.portal-shell--internal-module .portal-branding-bar-inner,.admin-portal .portal-branding-bar-inner{padding-left:max(env(safe-area-inset-left),var(--portal-red-nav-text-inset),1rem);padding-right:max(env(safe-area-inset-right),1rem)}.portal-branding-bar-inner--student-topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.35rem .5rem}.portal-branding-bar-inner--student-topbar>.portal-branding-bar-start{flex:0 0 auto;min-width:0}.portal-branding-bar-inner--student-topbar>.portal-branding-bar-center{grid-column:2;flex:unset;justify-content:center;justify-self:center;max-width:100%;overflow:hidden}.portal-branding-bar-inner--student-topbar>.portal-branding-bar-end{grid-column:3;flex:unset;min-width:0;overflow:hidden;justify-self:end;max-width:100%}.portal-branding-bar-inner--student-topbar .portal-branding-bar-logo-link{flex-shrink:1;min-width:0;max-width:100%}.portal-branding-bar-inner--student-topbar .portal-branding-bar-logo--student-wordmark{height:2.125rem;width:auto;max-height:calc(var(--portal-branding-bar-height) - 1rem);max-width:min(6.25rem,30vw);object-fit:contain;object-position:left center}.portal-branding-bar-inner--student-topbar .portal-branding-bar-actions{flex-shrink:1;min-width:0;max-width:100%;gap:.65rem .85rem}.portal-branding-bar-inner--student-topbar .portal-user-actions .portal-user-button{flex:0 1 auto;min-width:0;max-width:min(9rem,28vw)}.portal-branding-bar-start{flex:1;min-width:0}.portal-branding-bar-logo{height:2.375rem;max-height:calc(var(--portal-branding-bar-height) - 1rem);max-width:min(9.5rem,40vw)}.portal-branding-bar-end{gap:.35rem .5rem}.portal-branding-bar-actions{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:.65rem .85rem}.portal-branding-bar-user-cluster{gap:0}.portal-lang-toggle{margin-right:.35rem}.portal-user-button,.portal-logout-button{font-size:.75rem}.portal-user-button__label{max-width:min(9rem,28vw)}.portal-branding-bar-inner--student-topbar .portal-user-button__label{max-width:none;flex:1 1 auto;min-width:0}.portal-portal-banner-inner{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));min-height:var(--portal-portal-banner-height)}.portal-myamu-mark{font-size:clamp(1.3rem,5vw,1.55rem)}.portal-main{margin-left:0;min-height:unset}.portal-main-body{padding-top:.875rem}.portal-page-lede{font-size:.875rem;line-height:1.5}.portal-section-heading{font-size:.875rem}.portal-card{padding:1rem}.portal-row dt,.portal-row dd{min-width:0;overflow-wrap:break-word;word-break:break-word}.portal-row dd{font-size:.875rem}.portal-table th,.portal-table td{padding:.625rem .75rem;font-size:.8125rem}.portal-table th{font-size:.625rem}.portal-table td:first-child{word-break:break-word;overflow-wrap:anywhere}.portal-table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin-left:0;margin-right:0;max-width:100%}.portal-inline-note,.portal-note{font-size:.78125rem}}@media (max-width: 639px){.portal-branding-bar-inner--student-topbar .portal-logout-button__label,.portal-branding-bar-inner--student-topbar .portal-notification-bell__label{display:none}.portal-branding-bar-inner--student-topbar .portal-logout-button,.portal-branding-bar-inner--student-topbar .portal-notification-bell__trigger{border-bottom:none;padding:.4rem;min-width:2.5rem;min-height:2.5rem;justify-content:center}}.portal-nav-drawer{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none}.portal-nav-drawer--open{pointer-events:auto}.portal-nav-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;border:none;background:#1c233373;cursor:pointer;opacity:0;transition:opacity .2s ease}.portal-nav-drawer--open .portal-nav-drawer-backdrop{opacity:1}.portal-sidebar--drawer{position:absolute;left:0;top:0;bottom:0;height:auto;min-height:100dvh;width:var(--portal-sidebar-width);max-width:min(var(--portal-sidebar-width),92vw);box-sizing:border-box;transform:translate(-100%);transition:transform .22s ease;z-index:1;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:4px 0 24px #0000002e}.portal-nav-drawer--open .portal-sidebar--drawer{transform:translate(0)}.portal-sidebar-drawer-header{display:flex;align-items:center;justify-content:flex-end;padding:0 .625rem .25rem 1rem}.portal-sidebar-drawer-close{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;min-height:2.25rem;margin:0;padding:0 .25rem;border:none;border-radius:var(--portal-radius);background:transparent;color:var(--portal-sidebar-text-muted);font-size:1.5rem;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease}.portal-sidebar-drawer-close:hover{background:var(--portal-sidebar-row-hover);color:var(--portal-sidebar-text)}.portal-sidebar-drawer-close:focus-visible{outline:2px solid #6b9cc4;outline-offset:2px}@media (max-width: 768px){.portal-nav-drawer{display:block;height:100dvh;min-height:100dvh}}@media (min-width: 769px){.portal-nav-drawer{display:none!important}}.portal-header{background:var(--portal-surface);border-bottom:1px solid var(--portal-border-subtle);box-shadow:var(--portal-shadow)}.portal-header-inner{max-width:var(--portal-max);margin:0 auto;padding:.875rem 1.5rem;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1.5rem}.portal-brand{font-size:.9375rem;font-weight:600;letter-spacing:.01em;color:var(--portal-text)}.portal-header-tagline{font-size:.8125rem;color:var(--portal-text-muted)}.portal-body{max-width:var(--portal-max);margin:0 auto;padding:1.75rem 1.5rem 3rem}.portal-page{margin:0}.portal-module-page{max-width:min(var(--portal-module-max),100%);width:100%}.portal-module-header{margin-bottom:1.5rem}.portal-module-header--compact{margin-bottom:.75rem}.portal-page-title-row{--portal-page-title-arrow-size: 2rem;--portal-page-title-arrow-gap: .125rem;--portal-page-title-tab-text-inset: 1.15rem ;position:relative;display:block;margin-bottom:.75rem}.portal-module-header__title-row .portal-page-title-row{margin-bottom:0}.portal-page-title-row .portal-page-title{margin:0;padding-left:calc(var(--portal-page-title-arrow-size) + var(--portal-page-title-arrow-gap))}.portal-back-to-dashboard-link{position:absolute;top:50%;left:var(--portal-page-title-arrow-gap);transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--portal-page-title-arrow-size);height:var(--portal-page-title-arrow-size);margin:0;color:var(--portal-text-muted);text-decoration:none;border-radius:var(--portal-radius-sm, 6px);transition:color .12s ease,background-color .12s ease}.portal-clinical-module .portal-module-header .portal-page-title-row .portal-page-title,.portal-registration-module .portal-module-header .portal-page-title-row .portal-page-title,.portal-my-courses-module .portal-module-header .portal-page-title-row .portal-page-title,.portal-academics-module .portal-module-header .portal-page-title-row .portal-page-title,.portal-documents-module .portal-module-header .portal-page-title-row .portal-page-title,.portal-finances-module .portal-module-header:not(.portal-module-header--compact) .portal-page-title-row .portal-page-title{padding-left:var(--portal-page-title-tab-text-inset)}.portal-clinical-module .portal-module-header .portal-page-title-row .portal-back-to-dashboard-link,.portal-registration-module .portal-module-header .portal-page-title-row .portal-back-to-dashboard-link,.portal-my-courses-module .portal-module-header .portal-page-title-row .portal-back-to-dashboard-link,.portal-academics-module .portal-module-header .portal-page-title-row .portal-back-to-dashboard-link,.portal-documents-module .portal-module-header .portal-page-title-row .portal-back-to-dashboard-link,.portal-finances-module .portal-module-header:not(.portal-module-header--compact) .portal-page-title-row .portal-back-to-dashboard-link{left:calc(var(--portal-page-title-tab-text-inset) - var(--portal-page-title-arrow-size))}.portal-back-to-dashboard-link:hover{color:var(--portal-accent);background:#8c1d2c0f}.portal-back-to-dashboard-link:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-page-title{margin:0 0 .75rem;font-family:Cinzel,ui-serif,Georgia,serif;font-size:1.375rem;font-weight:600;letter-spacing:.5px;line-height:1.3;color:#a6192e}.portal-module-title{margin:0 0 .5rem;font-size:var(--portal-page-title-size);font-weight:500;letter-spacing:-.015em;line-height:1.3;color:var(--portal-text)}.portal-module-header>.portal-module-title:last-child{margin-bottom:0}.portal-module-subtitle{margin:0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted);max-width:52rem}.portal-tab-group,.admin-finance-page-tabs,.admin-students-page__tabs,.admin-finance-drawer__tabs,.admin-detail-tabs,.portal-timetable-lang-tabs,.portal-account-ledger__pay-segment{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin:0;padding:.2rem;list-style:none;box-sizing:border-box;background:color-mix(in srgb,var(--amu-card) 88%,var(--portal-border-subtle));border:1px solid var(--portal-border-subtle);border-radius:999px}.portal-tab-group>li{list-style:none;margin:0;padding:0}.portal-tab-group--sub{padding:.12rem;gap:.12rem}.portal-tab-group--sub .portal-tab{font-size:.8125rem;padding:.28rem .72rem}.portal-tab-group--sub .portal-tab--active,.portal-tab-group--sub button.portal-tab[aria-selected=true],.portal-tab-group--sub a.portal-tab[aria-current=page]{box-shadow:0 1px 2px #0f172a0f}button.portal-tab,a.portal-tab,.portal-tab,.admin-finance-page-tab,.admin-students-page__tab,.admin-finance-drawer__tab,.admin-detail-tab,.portal-timetable-lang-tab,.portal-account-ledger__pay-segment-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;margin:0;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--portal-text-muted);font-size:.875rem;font-weight:600;line-height:1.2;text-decoration:none;padding:.4rem .95rem;border-radius:999px;min-height:0;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.portal-tab:hover:not(.portal-tab--active):not([aria-current=page]),a.portal-tab:hover:not(.portal-tab--active):not([aria-current=page]),button.portal-tab:hover:not(.portal-tab--active):not([aria-selected=true]),.admin-finance-page-tab:hover:not(.admin-finance-page-tab--active),.admin-students-page__tab:hover:not(.admin-students-page__tab--active),.admin-finance-drawer__tab:hover:not(.admin-finance-drawer__tab--active),.admin-detail-tab:hover:not(.admin-detail-tab--active),.portal-timetable-lang-tab:hover:not([aria-selected=true]),.portal-account-ledger__pay-segment-btn:hover:not(.portal-account-ledger__pay-segment-btn--active){color:var(--text-dark)}.portal-tab:focus-visible,.admin-finance-page-tab:focus-visible,.admin-students-page__tab:focus-visible,.admin-finance-drawer__tab:focus-visible,.admin-detail-tab:focus-visible,.portal-timetable-lang-tab:focus-visible,.portal-account-ledger__pay-segment-btn:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-tab-group .portal-tab--active,.portal-tab-group a.portal-tab[aria-current=page],.portal-tab--active,.portal-tab.active,a.portal-tab.active,a.portal-tab[aria-current=page],button.portal-tab[aria-selected=true],.admin-finance-page-tab--active,.admin-students-page__tab--active,.admin-finance-drawer__tab--active,.admin-detail-tab--active,.portal-timetable-lang-tab[aria-selected=true],.portal-account-ledger__pay-segment-btn--active{background:var(--amu-card);color:var(--amu-red);box-shadow:var(--portal-shadow)}.portal-tab-group .portal-tab--active:hover,.portal-tab-group a.portal-tab[aria-current=page]:hover,.portal-tab--active:hover,.portal-tab.active:hover,a.portal-tab.active:hover,a.portal-tab[aria-current=page]:hover,button.portal-tab[aria-selected=true]:hover,.admin-finance-page-tab--active:hover,.admin-students-page__tab--active:hover,.admin-finance-drawer__tab--active:hover,.admin-detail-tab--active:hover,.portal-timetable-lang-tab[aria-selected=true]:hover,.portal-account-ledger__pay-segment-btn--active:hover{color:var(--amu-red-dark)}.portal-account-ledger__pay-segment{flex:0 0 auto;width:auto;min-width:0;align-items:center}.portal-account-ledger__pay-segment-btn{flex:0 0 auto;min-width:0;white-space:nowrap}.portal-timetable-lang-tabs{flex-shrink:0;align-items:center}.portal-timetable-lang-tab{letter-spacing:.02em;font-size:.8125rem}.admin-finance-drawer__tabs{padding:0 1.25rem .75rem;border-bottom:none}.admin-detail-tabs{margin-bottom:1.25rem}.admin-students-page__tabs{flex-wrap:wrap}.admin-courses-tablist{margin-bottom:1rem}.portal-profile-page .portal-profile-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:10rem;padding:2rem 1.25rem;text-align:center;box-sizing:border-box}.portal-profile-state__title{margin:0;font-size:1rem;font-weight:600;color:var(--portal-text)}.portal-profile-state__detail{margin:0;max-width:28rem;font-size:.875rem;line-height:1.5;color:var(--portal-text-muted)}.portal-profile-state--error .portal-profile-state__title{color:var(--amu-red-dark)}.portal-profile-state__actions{margin-top:.25rem;justify-content:center}.portal-profile-card.portal-stack{gap:0}.portal-profile-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;padding-bottom:1rem;margin-bottom:0}.portal-profile-hero__body{display:flex;align-items:center;gap:1.25rem;min-width:0;flex:1 1 18rem}.portal-profile-hero__photo-wrap{flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;gap:.375rem;width:6.5rem}.portal-profile-hero__photo{position:relative;width:100%;aspect-ratio:1 / 1;border-radius:var(--portal-radius);border:1px solid var(--portal-border);background:#f4f6f9;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.portal-profile-hero__photo-upload{display:block;cursor:pointer}.portal-profile-hero__photo-upload:focus-within .portal-profile-hero__photo{outline:2px solid rgba(139,0,21,.35);outline-offset:2px}.portal-profile-hero__photo-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:.35rem;background:#1a1f2e8c;color:#fff;font-size:.6875rem;font-weight:600;line-height:1.25;text-align:center;opacity:0;transition:opacity .15s ease;pointer-events:none}.portal-profile-hero__photo-upload:hover .portal-profile-hero__photo-overlay,.portal-profile-hero__photo-upload:focus-within .portal-profile-hero__photo-overlay,.portal-profile-hero__photo-upload--busy .portal-profile-hero__photo-overlay{opacity:1}.portal-profile-hero__photo .portal-profile-photo-image{width:100%;height:100%;object-fit:cover;border-radius:0}.portal-profile-hero__photo .portal-profile-photo-placeholder--initials{font-size:1.125rem}.portal-profile-hero__identity{min-width:0;padding:.125rem 0}.portal-profile-hero__name{margin:0;font-size:1.5rem;font-weight:700;line-height:1.2;color:var(--portal-text)}.portal-profile-hero__note{margin:0;font-size:.6875rem;line-height:1.35;color:var(--portal-text-muted);text-align:center}.portal-profile-hero__note--success{color:#166534}.portal-profile-hero__note--error{color:var(--amu-red-dark)}.portal-profile-hero__actions{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;flex:0 0 auto;align-self:flex-start;min-width:11.5rem}.portal-profile-hero__action-btn{gap:.5rem;width:100%;padding-inline:.875rem;white-space:nowrap}.portal-profile-hero__action-btn svg{flex-shrink:0;width:1rem;height:1rem}.portal-profile-banner{margin:0 0 1rem;padding:.625rem .875rem;border-radius:var(--portal-radius);font-size:.875rem;line-height:1.4}.portal-profile-banner--success{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}.portal-profile-banner--error{background:#fef2f2;color:var(--amu-red-dark);border:1px solid #fecaca}.portal-profile-body{display:flex;flex-direction:column;gap:1.75rem;padding:1.5rem 0 0}.portal-profile-section__title{margin:0 0 .75rem;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-muted)}.portal-profile-card .portal-profile-section__title,.portal-profile-card .portal-settings-section>.admin-settings-card__title,.portal-profile-card .portal-login-email-embedded>.portal-profile-section__title{margin:0 0 .75rem;font-size:.875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-accent)}.portal-profile-section__lede{display:flex;align-items:flex-start;gap:.4rem;margin:-.35rem 0 .85rem;font-size:.8125rem;line-height:1.5;color:var(--portal-text-muted)}.portal-profile-section__lede-icon{flex-shrink:0;width:.875rem;height:.875rem;margin-top:.15rem;color:var(--portal-accent)}.portal-profile-subsection-heading{grid-column:1 / -1;margin:.75rem 0 0;padding:.25rem 0;border-top:none}.portal-profile-subsection-heading span{display:block;font-size:.875rem;font-weight:600;color:var(--portal-text, #1a1f2e);letter-spacing:normal;text-transform:none}.portal-profile-subsection-heading:first-of-type{margin-top:0;padding-top:0}.portal-profile-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin:0}.portal-profile-field{display:grid;grid-template-columns:7.75rem minmax(0,1fr);gap:.375rem .875rem;align-items:start;padding:.625rem 0;border-bottom:1px solid var(--portal-border-subtle);min-width:0}.portal-profile-field--full{grid-column:1 / -1}.portal-profile-field dt{margin:0;padding-top:.125rem;font-size:.8125rem;font-weight:500;color:var(--portal-text-muted);line-height:1.35}.portal-profile-field dd{margin:0;min-width:0}.portal-profile-readonly{display:block;font-size:.9375rem;font-weight:500;line-height:1.45;color:var(--portal-text);word-break:break-word}.portal-profile-readonly--muted{color:var(--portal-text-faint);font-weight:400}.portal-profile-control{display:block;width:100%;max-width:100%;height:2.375rem;padding:0 .75rem;font-size:.875rem;font-family:inherit;font-weight:500;color:var(--portal-text);background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);box-sizing:border-box}.portal-profile-control:focus{outline:2px solid rgba(139,0,21,.25);outline-offset:1px;border-color:var(--portal-accent)}.portal-profile-field-note{margin:.35rem 0 0;font-size:.75rem;line-height:1.45;color:var(--portal-text-muted)}.portal-profile-photo-frame{width:100%;aspect-ratio:1 / 1;border:1px dashed var(--portal-border);border-radius:var(--portal-radius);background:#f9fafc;display:flex;align-items:center;justify-content:center;overflow:hidden}.portal-profile-photo-image{width:100%;height:100%;object-fit:cover}.portal-profile-photo-placeholder{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-profile-photo-placeholder--initials{font-size:1rem;color:var(--portal-text-muted)}.portal-profile-photo-upload-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.portal-profile-input,.portal-login-email-input{display:block;width:100%;max-width:100%;height:2.375rem;padding:0 .75rem;font-size:.875rem;font-family:inherit;font-weight:500;color:var(--portal-text);background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);box-sizing:border-box}.portal-login-email-card{margin-top:1rem}.portal-login-email-embedded{margin-top:1.75rem}.portal-profile-body>.portal-login-email-embedded{margin-top:0}.portal-login-email-embedded>.portal-profile-section__title,.portal-login-email-embedded>.portal-section-heading{margin-bottom:.5rem}.portal-login-email-embedded .portal-login-email-intro{margin-bottom:1rem}.portal-login-email-intro{margin:0;font-size:.875rem;line-height:1.5;color:var(--portal-text-muted)}.portal-login-email-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.portal-login-email-label{font-size:.875rem;font-weight:600;color:var(--portal-text, #1a1f2e);min-width:3.5rem}.portal-profile-card .portal-login-email-label{min-width:7.25rem}.portal-login-email-value{flex:1 1 auto;font-size:.9375rem;font-weight:500}.portal-profile-card .portal-login-email-value{flex:0 1 auto;min-width:0}.portal-login-email-edit{flex:0 0 auto;border:none;background:transparent;color:var(--amu-primary, #8b0015);font-size:1.125rem;line-height:1;cursor:pointer;padding:.25rem .5rem}.portal-profile-card .portal-login-email-edit{padding-inline:.25rem}.portal-login-email-edit:hover{opacity:.8}.portal-login-email-status{margin:.5rem 0 0;font-size:.8125rem;color:var(--text-muted, #555)}.portal-login-email-error{margin:.5rem 0 0;font-size:.8125rem;color:#b00020}.portal-login-email-form{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem;max-width:28rem}.portal-login-email-field{display:flex;flex-direction:column;gap:.35rem}.portal-login-email-input{width:100%}.portal-login-email-actions{display:flex;flex-wrap:wrap;gap:.5rem}.portal-btn--sm{min-height:2.125rem;padding:0 .875rem;font-size:.8125rem}.portal-login-email-state--error{color:#b00020;font-size:.875rem}select.portal-profile-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#687283 50%),linear-gradient(135deg,#687283 50%,transparent 50%);background-position:calc(100% - 16px) 52%,calc(100% - 11px) 52%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:2rem}.portal-profile-input:focus{outline:none;border-color:var(--amu-red);box-shadow:0 0 0 3px var(--amu-red-ring)}.portal-profile-input:disabled{background:#f8f8f8;color:var(--portal-text-muted)}.portal-profile-card .portal-profile-balance{font-size:var(--portal-body-font-size);font-weight:600;color:var(--portal-accent);font-variant-numeric:tabular-nums}.portal-digital-id-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:.875rem;padding-bottom:1.5rem;margin-bottom:.25rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-profile-intro{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem 1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-profile-intro__identity{min-width:0;flex:1 1 12rem}.portal-profile-intro__actions{display:flex;flex-wrap:wrap;gap:.5rem;flex:0 0 auto}#portal-digital-id-panel{padding-top:.25rem;padding-bottom:.25rem;border-bottom:1px solid var(--portal-border-subtle)}#portal-digital-id-panel .portal-digital-id-wrap{border-bottom:none;margin-bottom:0;padding-bottom:1.25rem}.portal-digital-id{position:relative;width:min(100%,26.5rem);border-radius:.75rem;overflow:hidden;background:#fff;border:1px solid #e2e4ea;box-shadow:none;isolation:isolate}.portal-digital-id__watermark{position:absolute;right:-.25rem;top:50%;transform:translateY(-50%);font-family:Cinzel,ui-serif,Georgia,serif;font-size:clamp(5rem,17vw,6.75rem);font-weight:700;letter-spacing:-.04em;line-height:1;color:#78809014;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0}.portal-digital-id__header,.portal-digital-id__body,.portal-digital-id__footer{position:relative;z-index:1}.portal-digital-id__header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.125rem .5rem}.portal-digital-id__brand{display:flex;align-items:center;gap:.75rem;min-width:0}.portal-digital-id__logo{flex:0 0 auto;width:3.25rem;height:3.25rem;object-fit:contain}.portal-digital-id__brand-text{min-width:0}.portal-digital-id__brand-mark{margin:0;font-family:Cinzel,ui-serif,Georgia,serif;font-size:1.375rem;font-weight:700;letter-spacing:.06em;color:var(--amu-red);line-height:1.05}.portal-digital-id__brand-name{margin:.15rem 0 0;font-size:.625rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-muted);line-height:1.25}.portal-digital-id__body{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem 1.125rem;padding:1rem 1.125rem 1.125rem}.portal-digital-id__photo-block{display:flex;flex-direction:column;align-items:center;gap:.45rem}.portal-digital-id__photo-frame{width:5.5rem;height:6.75rem;border-radius:.375rem;overflow:hidden;background:#f4f5f7;border:1px solid #dfe2e8;display:flex;align-items:center;justify-content:center}.portal-digital-id__photo{width:100%;height:100%;object-fit:cover}.portal-digital-id__photo-placeholder{font-size:1.25rem;font-weight:700;letter-spacing:.04em;color:var(--amu-red)}.portal-digital-id__photo-action{font-size:.6875rem;font-weight:600;color:var(--portal-accent);cursor:pointer;text-align:center;line-height:1.3}.portal-digital-id__photo-action:hover{text-decoration:underline}.portal-digital-id__identity{min-width:0;padding-top:.1rem}.portal-digital-id__label{margin:0;font-size:.625rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-digital-id__name{margin:.25rem 0 0;font-size:1.0625rem;font-weight:700;line-height:1.25;letter-spacing:.03em;text-transform:uppercase;color:var(--portal-text);word-break:break-word}.portal-digital-id__id{margin:.3rem 0 0;font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.05em;color:var(--amu-red)}.portal-digital-id__program-block{margin-top:.875rem;padding-top:0}.portal-digital-id__program-label{margin:0;font-size:.625rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-digital-id__program{margin:.25rem 0 0;font-size:.8125rem;font-weight:500;line-height:1.4;color:var(--portal-text)}.portal-digital-id__track{margin:.25rem 0 0;font-size:.75rem;color:var(--portal-text-muted)}.portal-digital-id__footer{position:relative;height:.4375rem}.portal-digital-id__footer-gold{display:block;height:.125rem;background:var(--amu-gold)}.portal-digital-id__footer-red{display:block;height:.3125rem;background:var(--amu-red)}.portal-digital-id__wallet-row{display:flex;flex-direction:column;align-items:flex-start;gap:.625rem;width:min(100%,26.5rem)}.portal-digital-id__wallet-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem}.portal-digital-id__wallet-badge-btn{display:inline-flex;align-items:center;padding:0;border:none;background:transparent;cursor:pointer;line-height:0}.portal-digital-id__wallet-badge-btn:hover{opacity:.88}.portal-digital-id__wallet-badge-btn:focus-visible{outline:2px solid var(--amu-red);outline-offset:2px;border-radius:.25rem}.portal-digital-id__wallet-badge{display:block;height:2rem;width:auto}.portal-digital-id__wallet-badge-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.portal-digital-id__wallet-note{margin:0;font-size:.8125rem;color:var(--portal-text-muted)}.portal-profile-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;padding-top:1.25rem;padding-bottom:1.25rem;margin-bottom:.25rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-profile-toolbar__notes{flex:1 1 12rem;min-width:0}.portal-profile-toolbar__actions{display:flex;flex-wrap:wrap;gap:.5rem;flex:0 0 auto}@media (max-width: 768px){.portal-digital-id__body{grid-template-columns:1fr;justify-items:start}.portal-digital-id__header{flex-direction:column;align-items:flex-start}.portal-profile-toolbar,.portal-profile-intro{flex-direction:column}.portal-profile-intro__actions{width:100%}.portal-profile-intro__actions .portal-btn{flex:1 1 auto}.portal-profile-hero{flex-direction:column;align-items:stretch}.portal-profile-hero__body{align-items:flex-start}.portal-profile-hero__actions{width:100%;min-width:0}.portal-profile-hero__actions .portal-btn{flex:none}.portal-profile-field-grid{grid-template-columns:1fr;gap:0}.portal-profile-field{grid-template-columns:6.5rem minmax(0,1fr)}.portal-profile-field--full{grid-column:auto}.portal-profile-page .portal-profile-state{min-height:8.5rem;padding:1.5rem 1rem}.portal-profile-state__detail{font-size:.8125rem}}.portal-clinical-module,.portal-documents-module,.portal-registration-module,.portal-finances-module,.portal-academics-module,.portal-my-courses-module{max-width:none;width:100%;margin:0;min-width:0;box-sizing:border-box}.portal-finances-nav,.portal-registration-nav,.portal-clinical-nav,.portal-documents-nav{margin-bottom:1.25rem}.portal-registration-section-nav{margin:.35rem 0 1.25rem;padding-bottom:.65rem;border-bottom:1px solid var(--portal-border-subtle, #d8dce3)}.portal-section-tab-group{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:stretch;gap:.5rem .75rem}.portal-section-tab{display:inline-flex;align-items:center;justify-content:center;min-height:2.625rem;padding:.5rem 1.125rem;font-size:.9375rem;font-weight:600;line-height:1.2;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:#f4f5f7;color:var(--portal-text);transition:background .12s ease,border-color .12s ease,color .12s ease}.portal-section-tab:hover{background:#eceef2;border-color:var(--portal-border);color:var(--portal-text)}.portal-section-tab:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-section-tab--active{background:var(--amu-card, #fff);border-color:var(--portal-accent, #c41e3a);color:var(--portal-accent-hover, #a01830);box-shadow:0 1px #1c23330f}.portal-section-tab--active:hover{background:var(--amu-card, #fff);border-color:var(--portal-accent, #c41e3a);color:var(--portal-accent-hover, #a01830)}.portal-module-header--registration{margin-bottom:1rem}.portal-module-header--registration .portal-module-header__title-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1.25rem}.portal-module-header--registration .portal-page-title-row .portal-page-title{margin-bottom:0}.portal-module-header--my-courses{margin-bottom:.5rem}.portal-module-header--my-courses .portal-module-header__title-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem}.portal-module-header--my-courses .portal-page-title-row .portal-page-title{margin-bottom:0}.portal-my-courses-module__current-term{margin:0}.portal-my-courses-page{display:flex;flex-direction:column;gap:0;margin:0;padding:0;min-width:0}.portal-my-courses-notices{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.portal-my-courses-notices .portal-registration-window-banner{margin:0}.portal-my-courses-surface{box-sizing:border-box;min-width:0;overflow:hidden;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);box-shadow:none}.portal-my-courses-notice{padding:.5rem 1rem;border-bottom:1px solid rgba(140,29,44,.12);background:#fff5f5}.portal-term-window-notice{display:flex;align-items:flex-start;gap:.65rem;padding:.65rem 1rem;border-bottom:1px solid rgba(140,29,44,.12)}.portal-term-window-notice--closed{background:#fff5f5;color:var(--amu-red)}.portal-term-window-notice--open{background:#f3fbf6;color:#1b6b3a}.portal-term-window-notice__icon{flex:0 0 auto;display:flex;align-items:center;justify-content:center;margin-top:.05rem}.portal-term-window-notice__content{min-width:0}.portal-term-window-notice__title{margin:0 0 .1rem;font-size:.8125rem;font-weight:700;line-height:1.3}.portal-term-window-notice__detail{margin:0;font-size:.8125rem;line-height:1.35;color:var(--portal-text-muted)}.portal-term-window-notice--closed .portal-term-window-notice__detail{color:var(--portal-text-muted)}.portal-term-window-notice--open .portal-term-window-notice__detail{color:#2d5a3d}.portal-term-window-notice--compact{align-items:center;gap:.5rem;padding:.45rem 1rem}.portal-term-window-notice--compact .portal-term-window-notice__icon--compact{flex:0 0 auto;display:flex;align-items:center;justify-content:center;opacity:.9}.portal-term-window-notice--compact .portal-term-window-notice__dot{flex:0 0 auto;width:.45rem;height:.45rem;border-radius:50%;background:currentColor;opacity:.85}.portal-term-window-notice--compact .portal-term-window-notice__inline{margin:0;min-width:0;font-size:.8125rem;line-height:1.35;color:inherit}.portal-term-window-notice--compact .portal-term-window-notice__inline-title{font-weight:650}.portal-term-window-notice--compact .portal-term-window-notice__inline-sep{margin:0 .35rem;opacity:.55}.portal-term-window-notice--compact .portal-term-window-notice__inline-detail{color:var(--portal-text-muted)}.portal-term-window-notice--open.portal-term-window-notice--compact .portal-term-window-notice__inline-detail{color:#2d5a3d}.portal-term-window-notice--closed.portal-term-window-notice--compact .portal-term-window-notice__inline-detail{color:var(--portal-text-muted)}.portal-my-courses-notice__title{margin:0 0 .1rem;font-size:.8125rem;font-weight:700;line-height:1.3;color:var(--amu-red)}.portal-my-courses-notice__detail{margin:0;font-size:.8125rem;line-height:1.35;color:var(--portal-text-muted)}.portal-my-courses-surface-message{margin:0;padding:.85rem 1rem;font-size:.875rem;line-height:1.4;color:var(--portal-text-muted)}.portal-my-courses-surface-message--error{color:var(--amu-red)}.portal-my-courses-list-card{box-sizing:border-box;min-width:0;overflow:hidden;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * 1.05);background:var(--amu-card, #fff)}.portal-my-courses-course-list{list-style:none;margin:0;padding:0}.portal-my-courses-course-card{display:grid;grid-template-columns:minmax(0,1fr) 17rem;grid-template-areas:"identity grade" "main actions";align-items:start;gap:.22rem 1.15rem;padding:.72rem 1.15rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-my-courses-course-card--expanded{padding-block:.82rem}.portal-my-courses-course-card:last-child{border-bottom:none}.portal-my-courses-course-card__main{grid-area:main;min-width:0}.portal-my-courses-course-card__identity{grid-area:identity;display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .55rem;min-width:0}.portal-my-courses-course-card__code{font-size:.8125rem;font-weight:700;line-height:1.2;color:var(--amu-red);font-variant-numeric:tabular-nums}.portal-my-courses-course-card__section{font-size:.6875rem;font-weight:600;line-height:1.2;color:var(--portal-text-muted)}.portal-my-courses-course-card__title{margin:0;font-size:.875rem;font-weight:600;line-height:1.3;color:var(--portal-text)}.portal-my-courses-course-card__track{font-size:.6875rem;font-weight:600;line-height:1.2;color:var(--portal-text-faint)}.portal-my-courses-course-card__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .85rem;margin:.55rem 0 0;padding:.55rem .65rem;border-radius:calc(var(--portal-radius) - 2px);background:#f8f9fb}.portal-my-courses-course-card__meta>div{min-width:0}.portal-my-courses-course-card__meta dt{margin:0 0 .08rem;font-size:.625rem;font-weight:600;line-height:1.15;letter-spacing:.05em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-my-courses-course-card__meta dd{margin:0;font-size:.8125rem;line-height:1.35;color:var(--portal-text)}.portal-my-courses-course-card__grade{grid-area:grade;display:flex;flex-direction:column;align-items:flex-end;justify-self:end;gap:.08rem;width:100%;text-align:right}.portal-my-courses-course-card__grade-label{font-size:.625rem;font-weight:600;line-height:1.15;letter-spacing:.05em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-my-courses-course-card__grade-value{font-size:.9375rem;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--portal-text)}.portal-my-courses-course-card__actions{grid-area:actions;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;justify-items:stretch;justify-self:end;align-self:start;gap:.35rem;width:100%;margin:0;padding:0;border-top:none}.portal-my-courses-course-card__feedback-slot{display:flex;align-items:center;justify-content:center;min-width:0}.portal-my-courses-course-card__feedback-slot .portal-text-muted{display:inline-flex;align-items:center;justify-content:center;min-height:1.75rem;width:100%}.portal-my-courses-course-card__actions .portal-btn--compact{box-sizing:border-box;width:100%;min-height:1.75rem;min-width:0;padding-inline:.45rem;justify-content:center;background:var(--portal-surface);box-shadow:none}.portal-my-courses-course-card__actions .portal-btn--secondary:hover:not(:disabled){background:#f4f5f7}.portal-my-courses-course-card__withdraw:disabled{opacity:.42;cursor:not-allowed;background:#f4f5f7}.portal-my-courses-timetable{display:flex;flex-direction:column;min-width:0}.portal-my-courses-timetable__toolbar{display:flex;justify-content:flex-end;padding:.55rem 1rem .5rem;border-bottom:1px solid var(--portal-border-subtle);background:#f4f5f7}.portal-my-courses-timetable__lang-tabs{margin:0}.portal-my-courses-timetable__body{min-width:0}.portal-my-courses-timetable__body .admin-timetable-wrap{margin:0;border:none;border-radius:0;background:transparent;box-shadow:none}.portal-my-courses-timetable__unplaced{padding:.65rem 1rem .75rem;border-top:1px solid var(--portal-border-subtle);background:#f4f5f7}.portal-my-courses-timetable__unplaced-title{margin:0 0 .2rem;font-size:.875rem;font-weight:700;color:var(--portal-text)}.portal-my-courses-timetable__unplaced-help{margin:0 0 .45rem;font-size:.8125rem;line-height:1.35;color:var(--portal-text-muted)}.portal-my-courses-timetable__unplaced-list{margin:0;padding-left:1rem;font-size:.8125rem;line-height:1.4;color:var(--portal-text)}@media (max-width: 900px){.portal-my-courses-course-card__meta{grid-template-columns:1fr}}@media (max-width: 560px){.portal-my-courses-course-card{grid-template-columns:1fr;grid-template-areas:"identity" "grade" "main" "actions";padding:.68rem .95rem}.portal-my-courses-course-card__grade{flex-direction:row;align-items:baseline;justify-self:start;gap:.35rem;width:auto}.portal-my-courses-course-card__actions{grid-template-columns:repeat(3,minmax(0,1fr));justify-self:stretch;width:100%}.portal-my-courses-notice,.portal-my-courses-surface-message,.portal-my-courses-timetable__toolbar,.portal-my-courses-timetable__unplaced{padding-left:.85rem;padding-right:.85rem}.portal-my-courses-timetable__toolbar{justify-content:stretch}.portal-my-courses-timetable__lang-tabs{width:100%}.portal-my-courses-timetable__lang-tabs .portal-tab{flex:1 1 0;justify-content:center}}.portal-registration-window-banner{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .625rem;margin:0 0 1rem;padding:.4375rem .75rem;border:1px solid var(--portal-border-subtle, #e8eaef);border-radius:8px;background:#fff}.portal-registration-window-banner--closed{border-color:#8c1d2c24;background:var(--portal-accent-soft, #f2e8ea)}.portal-registration-window-banner--closed .portal-registration-window-banner__icon,.portal-registration-window-banner--closed .portal-registration-window-banner__status{color:var(--portal-accent, #c41e3a)}.portal-registration-window-banner--open{border-color:#1b6b3a29;background:#f3fbf6}.portal-registration-window-banner--open .portal-registration-window-banner__icon,.portal-registration-window-banner--open .portal-registration-window-banner__status{color:#1b6b3a}.portal-registration-window-banner--open .portal-registration-window-banner__message{color:#2d5a3d}.portal-registration-window-banner--not_yet_open{border-color:#c9a2273d;background:#c9a2271f}.portal-registration-window-banner__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.375rem;height:1.375rem;border-radius:0;color:var(--portal-accent, #c41e3a);background:transparent;box-shadow:none;filter:none}.portal-registration-window-banner--not_yet_open .portal-registration-window-banner__icon{color:#9a7b1a;background:transparent}.portal-registration-window-banner__status{display:inline-flex;align-items:center;flex:0 0 auto;min-height:1.375rem;padding:.125rem .5rem;border-radius:4px;font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-accent, #c41e3a);background:transparent}.portal-registration-window-banner--not_yet_open .portal-registration-window-banner__status{color:#9a7b1a;background:transparent}.portal-registration-window-banner__message{margin:0;min-width:0;flex:1 1 12rem;font-size:.8125rem;line-height:1.4;color:var(--portal-text-muted, #5c6478)}.portal-registration-window-badge{display:inline-flex;align-items:center;min-height:1.75rem;padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;line-height:1.2;color:var(--portal-accent);background:var(--portal-accent-soft)}.portal-registration-layout-term{margin:0 0 1rem;padding:0;min-width:0}.portal-registration-layout-term--inline{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:.35rem .5rem;margin:0;text-align:right}.portal-registration-layout-term--inline .portal-registration-layout-term__status{margin:0}.portal-registration-layout-term__row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.portal-registration-layout-term__title{font-size:var(--portal-body-font-size);font-weight:600;color:var(--portal-text);margin:0;flex-shrink:0}.portal-registration-layout-term__select{min-width:min(100%,14rem);max-width:22rem;min-height:2.25rem;box-sizing:border-box}.portal-registration-layout-term__value{font-size:var(--portal-body-font-size);font-weight:700;color:var(--portal-text);line-height:var(--portal-body-line-height)}.portal-registration-layout-term__status{margin:0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height)}.portal-registration-layout-term__hint{margin:.4rem 0 0;font-size:.8125rem;line-height:1.4;max-width:36rem}.portal-registration-timetable-page{position:relative}.portal-registration-timetable-page .admin-scheduling-timetable-card .admin-timetable-wrap{margin-top:0;border:none;border-radius:0;background:transparent}.portal-registration-timetable-page .admin-scheduling-timetable-card__head{justify-content:flex-end;padding:.75rem 1rem .875rem}.portal-registration-timetable-page .admin-scheduling-timetable-card__body{padding:.75rem 1rem 1rem}.portal-registration-timetable-page .admin-scheduling-timetable-card__body .portal-text-muted{padding:.5rem 0}.portal-offered-timetable{position:relative}.portal-registration-plan-page .portal-registration-plan-stack{display:flex;flex-direction:column;gap:.75rem}.portal-registration-plan-details{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);overflow:hidden;background:var(--portal-surface);box-shadow:var(--portal-shadow)}.portal-registration-plan-details>summary{list-style:none}.portal-registration-plan-details>summary::-webkit-details-marker{display:none}.portal-registration-plan-details__summary{display:flex;align-items:center;gap:.5rem;padding:.65rem 1rem;font-size:.9375rem;font-weight:600;line-height:1.3;color:#fff;background:var(--portal-text, #1c2333);cursor:pointer;-webkit-user-select:none;user-select:none}.portal-registration-plan-details__summary:before{content:"−";display:inline-flex;width:1.25rem;height:1.25rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(255,255,255,.45);font-size:.8rem;line-height:1;font-weight:600}.portal-registration-plan-details:not([open]) .portal-registration-plan-details__summary:before{content:"+"}.portal-registration-plan-details__body{padding:1rem 1.25rem 1.25rem;border-top:1px solid var(--portal-border-subtle)}.portal-registration-plan-panel-title{font-size:1rem}.portal-class-plan-row-actions{position:relative;display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem}.portal-class-plan-checkout-inline{flex-shrink:0}.portal-class-plan-cards{display:flex;flex-direction:column;gap:1.125rem}.portal-class-plan-card{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);box-shadow:var(--portal-shadow);overflow:hidden}.portal-class-plan-card__header{padding:.85rem 1rem .65rem;border-bottom:1px solid var(--portal-border-subtle);background:linear-gradient(180deg,#f8f9fb 0%,var(--portal-surface) 100%)}.portal-class-plan-card__title{margin:0 0 .35rem;font-size:1rem;font-weight:700;line-height:1.35;color:var(--portal-accent, #8c1d2c)}.portal-class-plan-card__section-line{margin:0 0 .35rem;font-size:.9rem;font-weight:600;line-height:1.4;color:var(--portal-accent, #8c1d2c)}.portal-class-plan-card__meta{margin:0 0 .25rem;font-size:.8125rem}.portal-class-plan-card__final{margin:0;font-size:.8125rem}.portal-class-plan-card__table-wrap{margin:0}.portal-class-plan-detail-table{font-size:.8125rem}.portal-class-plan-detail-table thead th{background:#eceff3;color:var(--portal-text-muted);font-weight:600;font-size:.75rem;text-transform:none;letter-spacing:0;padding:.45rem .5rem}.portal-class-plan-detail-table tbody td{padding:.55rem .5rem;vertical-align:middle}.portal-class-plan-detail-table__col-change{width:3.25rem;text-align:center;white-space:nowrap}.portal-class-plan-change-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0;padding:0;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius-sm, 4px);background:#fff;color:var(--portal-accent, #8c1d2c);cursor:pointer}.portal-class-plan-change-btn:hover{border-color:var(--portal-accent, #8c1d2c);background:#fff8f9}.portal-class-plan-change-btn:focus-visible{outline:2px solid var(--portal-accent, #8c1d2c);outline-offset:2px}.portal-class-plan-status{display:inline-flex;align-items:center;padding:.2rem .45rem;border-radius:var(--portal-radius-sm, 4px);font-size:.75rem;font-weight:600;line-height:1.2}.portal-class-plan-status--plan{background:#fff6d8;color:#6b5500;border:1px solid #e8d48a}.portal-class-plan-status--enrolled{background:#e8f4ea;color:#1e4d2a;border:1px solid #a8d4b2}.portal-class-plan-info-badge{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:50%;border:1px solid var(--portal-accent, #8c1d2c);font-size:.7rem;font-weight:700;font-style:italic;color:var(--portal-accent, #8c1d2c);background:#fff}.portal-class-plan-options-backdrop{z-index:1260}.portal-class-plan-options-modal{max-width:min(32rem,100%);padding:0;overflow:hidden}.portal-class-plan-options-modal__header{display:flex;align-items:center;gap:.5rem;margin:0;padding:.55rem 1rem;background:linear-gradient(180deg,#d9eef9,#cce8f7);border-bottom:1px solid #7eb8d9;border-top:3px solid #1f5582}.portal-class-plan-options-modal__header-icon{display:flex;flex-shrink:0}.portal-class-plan-options-modal__header-title{margin:0;font-size:.95rem;font-weight:700;letter-spacing:.06em;color:var(--portal-text)}.portal-class-plan-options-modal__body{padding:1rem 1.25rem .25rem}.portal-class-plan-options-modal__lead{margin:0 0 .75rem;font-size:.9375rem;line-height:1.45;color:var(--portal-text)}.portal-class-plan-options-modal__section-label{margin:0 0 .25rem;font-size:.8125rem;font-weight:600}.portal-class-plan-options-modal__section-list{margin:0 0 .85rem;padding-left:1.25rem;font-size:.875rem;line-height:1.4}.portal-class-plan-options-modal__enroll-hint{margin:0 0 .25rem;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.portal-class-plan-options-modal__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;padding:.85rem 1.25rem 1rem;border-top:1px solid var(--portal-border-subtle);background:#fafbfc}.portal-class-plan-options-modal__footer-main{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.portal-registration-class-plan__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1rem}.portal-registration-class-plan__enrollment-note{flex:1 1 14rem;margin:0;font-size:.8125rem;line-height:1.45}.portal-offered-timetable__toast{position:fixed;bottom:1.5rem;left:50%;z-index:60;transform:translate(-50%);padding:.65rem 1.15rem;border-radius:var(--portal-radius, 6px);background:var(--portal-text, #1c2333);color:#fff;font-size:.875rem;line-height:1.35;box-shadow:0 6px 24px #1c23332e;pointer-events:none}.portal-offered-timetable__block.portal-offered-timetable__block--in-bin{border:2px solid var(--portal-accent, #c41e3a);background:linear-gradient(180deg,var(--portal-accent-soft, #f2e8ea),rgba(255,255,255,.92))}.portal-offered-timetable__badge{font-weight:600;font-size:.72em;margin-left:.15em}.portal-clinical-offered-timetable__legend{display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin-top:.35rem;font-size:.75rem;color:var(--portal-text-muted)}.portal-clinical-offered-timetable__legend-item{display:inline-flex;align-items:center;gap:.4rem}.portal-clinical-offered-timetable__legend-item:before{content:"";width:.65rem;height:.65rem;border-radius:.2rem;flex-shrink:0}.portal-clinical-offered-timetable__legend-item--occupied:before{background:color-mix(in srgb,var(--portal-accent, #8b1538) 14%,var(--amu-card, #fff));border:1px solid color-mix(in srgb,var(--portal-accent, #8b1538) 45%,transparent)}.portal-clinical-offered-timetable__legend-item--yours:before{background:color-mix(in srgb,#107c10 14%,var(--amu-card, #fff));border:1px solid color-mix(in srgb,#107c10 48%,transparent)}.portal-clinical-offered-timetable__legend-item--open:before{background:var(--amu-card, var(--portal-surface));border:1px solid var(--portal-border-subtle);box-shadow:0 1px 2px #0f172a14}.portal-clinical-offered-timetable__legend-item--full:before{background:color-mix(in srgb,var(--portal-text) 12%,white);border:1px solid color-mix(in srgb,var(--portal-text) 20%,transparent)}.portal-clinical-offered-timetable__calendar{margin-top:.55rem;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * 1.15);overflow:hidden;background:var(--amu-card, var(--portal-surface));box-shadow:0 1px 3px #0f172a0f}.portal-clinical-offered-timetable__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.portal-clinical-offered-timetable__inner{min-width:920px;padding:0}.portal-clinical-offered-timetable__grid.admin-timetable-v2{--admin-tt-slot: 46px;--admin-tt-line: color-mix(in srgb, var(--portal-text) 8%, transparent);min-width:0;border:none}.portal-clinical-offered-timetable__grid .admin-timetable-v2__head{background:color-mix(in srgb,var(--portal-text) 3%,var(--portal-surface))}.portal-clinical-offered-timetable__grid .admin-timetable-v2__day-head{padding:.65rem .25rem;font-size:.6875rem;letter-spacing:.06em;color:var(--portal-text-muted)}.portal-clinical-offered-timetable__grid .admin-timetable-v2__times{background:color-mix(in srgb,var(--portal-text) 2%,var(--portal-surface))}.portal-clinical-offered-timetable__grid .admin-timetable-v2__time-cell{color:var(--portal-text-muted)}.portal-clinical-offered-timetable__block{min-height:3rem;padding:.35rem .45rem .4rem;border-radius:.5rem;border-width:1px;border-style:solid;box-shadow:0 1px 2px #0f172a0f;gap:.08rem;transition:transform .14s ease,box-shadow .14s ease}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--open{background:var(--amu-card, var(--portal-surface));border-color:var(--portal-border-subtle);box-shadow:0 1px 2px #0f172a0f}.portal-clinical-offered-timetable__block:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 10px #0f172a1a;z-index:2}.portal-clinical-offered-timetable__block--enrolled{background:color-mix(in srgb,#107c10 14%,var(--amu-card, #fff));border-color:color-mix(in srgb,#107c10 32%,var(--portal-border-subtle))}.portal-clinical-offered-timetable__block--open{background:var(--amu-card, var(--portal-surface));border-color:var(--portal-border-subtle);box-shadow:0 1px 2px #0f172a0f}.portal-clinical-offered-timetable__block--full{background:color-mix(in srgb,var(--portal-text) 5%,var(--amu-card, #fff));border-color:color-mix(in srgb,var(--portal-text) 18%,var(--portal-border-subtle));opacity:.88}.portal-clinical-offered-timetable__block--enrolled .admin-timetable-v2__block-title{color:#0b5f0b}.portal-clinical-offered-timetable__block--open .admin-timetable-v2__block-title{color:var(--portal-text)}.portal-clinical-offered-timetable__block--open .portal-clinical-offered-timetable__block-status{background:color-mix(in srgb,var(--portal-text) 6%,transparent);color:var(--portal-text-muted)}.portal-clinical-offered-timetable__block--full .admin-timetable-v2__block-title{color:var(--portal-text-muted)}.portal-clinical-offered-timetable__block-status{display:inline-block;align-self:center;margin-bottom:.1rem;padding:.1rem .35rem;border-radius:999px;font-size:.5625rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;line-height:1.2}.portal-clinical-offered-timetable__block--enrolled .portal-clinical-offered-timetable__block-status{background:color-mix(in srgb,#107c10 18%,transparent);color:#0b5f0b}.portal-clinical-offered-timetable__block--full .portal-clinical-offered-timetable__block-status{background:color-mix(in srgb,var(--portal-text) 8%,transparent);color:var(--portal-text-muted)}.clinical-offered-slot-detail .clinical-enroll-modal__seat-grid{width:100%;max-width:none}.portal-clinical-schedule__page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1rem}.portal-clinical-schedule__page-head .portal-section-heading{margin:0;flex:1 1 auto;min-width:0}.portal-clinical-schedule__view-tabs{grid-column:1;grid-row:2;display:flex;align-items:center;flex-shrink:0;min-width:0;padding:0 1.05rem .55rem 1rem}.portal-clinical-schedule__view-tabs .portal-tab-group{max-width:100%;width:fit-content}.portal-clinical-schedule__timetable-toolbar{grid-column:2;grid-row:2;display:flex;align-items:center;flex-shrink:0;min-width:0;padding:0 1.05rem .55rem 1rem}.portal-clinical-schedule__timetable-toolbar .portal-clinical-offered-timetable__legend{margin-top:0}.portal-clinical-schedule__registered-empty{padding:.85rem .65rem;border:1px dashed var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * 1.05);text-align:center}.portal-clinical-schedule__registered-empty-title{margin:0 0 .35rem;color:var(--portal-text);font-weight:600}.portal-clinical-schedule__registered-empty-hint{margin:0;color:var(--portal-text-muted);font-size:.875rem}.portal-clinical-schedule__registered-empty-action{margin-top:.65rem}.portal-clinical-schedule__term-field{display:flex;align-items:center;min-width:0;flex-shrink:0}.portal-clinical-schedule__term-select{min-width:10.5rem;max-width:100%}.portal-clinical-schedule__shell--empty{margin-top:.75rem}.portal-clinical-schedule__shell{box-sizing:border-box;margin-top:.75rem;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * 1.05);background:var(--amu-card, #fff);overflow:hidden}.portal-clinical-schedule__layout{display:grid;grid-template-columns:minmax(0,30rem) minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr);min-height:24rem;max-height:min(75vh,44rem);align-items:stretch}.portal-clinical-schedule__slots-head,.portal-clinical-schedule__timetable-head{box-sizing:border-box;min-width:0;display:flex;align-items:center;flex-shrink:0;padding:1rem 1.05rem .15rem 1rem;background:var(--amu-card, #fff)}.portal-clinical-schedule__slots-head{grid-column:1;grid-row:1}.portal-clinical-schedule__timetable-head{grid-column:2;grid-row:1;justify-content:space-between}.portal-clinical-schedule__timetable-expand-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;margin:0;padding:0;font:inherit;color:var(--portal-text-muted);background:var(--amu-card, #fff);border:1px solid var(--portal-border-subtle);border-radius:.4rem;cursor:pointer;transition:color .14s ease,border-color .14s ease,background-color .14s ease}.portal-clinical-schedule__timetable-expand-btn:hover{color:var(--portal-text);border-color:color-mix(in srgb,var(--portal-text) 14%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-text) 2%,var(--amu-card, #fff))}.portal-clinical-schedule__timetable-expand-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--portal-accent),inset 0 0 0 4px var(--amu-red-ring)}.portal-clinical-schedule__timetable-expand-btn[aria-pressed=true]{color:var(--portal-accent, #8b1538);border-color:color-mix(in srgb,var(--portal-accent, #8b1538) 28%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-accent, #8b1538) 5%,var(--amu-card, #fff))}.portal-clinical-schedule__layout--timetable-expanded{grid-template-columns:minmax(0,1fr);max-height:min(82vh,50rem)}.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__slots-head,.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__view-tabs,.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__slots-col{display:none}.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__timetable-head,.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__timetable-toolbar,.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__timetable-col{grid-column:1}.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__timetable-head{grid-row:1}.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__timetable-toolbar{grid-row:2}.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__timetable-col{grid-row:3}.portal-clinical-schedule__layout--timetable-expanded .portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll{max-height:min(70vh,44rem);scrollbar-width:none}.portal-clinical-schedule__slots-col,.portal-clinical-schedule__timetable-col{box-sizing:border-box;min-width:0;min-height:0;padding:0 1.05rem 1.1rem 1rem}.portal-clinical-schedule__slots-col{grid-column:1;grid-row:3;display:flex;flex-direction:column;gap:.65rem;border-right:1px solid var(--portal-border-subtle);background:var(--amu-card, #fff);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.portal-clinical-schedule__timetable-col{grid-column:2;grid-row:3;display:flex;flex-direction:column;gap:.45rem;background:color-mix(in srgb,var(--portal-text) 1.5%,var(--portal-surface))}.portal-clinical-schedule__empty-note{margin:0;padding:.25rem 0 .15rem}.portal-clinical-schedule__panel-head{display:flex;align-items:center;justify-content:space-between;gap:.55rem;flex-shrink:0;position:sticky;top:0;z-index:2;padding-bottom:.15rem;background:var(--amu-card, #fff)}.portal-clinical-schedule__panel-title{margin:0;font-size:.9375rem;font-weight:600;letter-spacing:-.01em;color:var(--portal-text)}.portal-clinical-schedule__count-chip{flex-shrink:0;display:inline-flex;align-items:center;min-height:1.5rem;padding:.1rem .5rem;font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--portal-text-muted);border:1px solid var(--portal-border-subtle);border-radius:999px;background:color-mix(in srgb,var(--portal-text) 3%,var(--portal-surface))}.portal-clinical-schedule__slot-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.portal-clinical-schedule__slot-item{position:relative;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .95);background:var(--amu-card, #fff);transition:border-color .14s ease,box-shadow .14s ease}.portal-clinical-schedule__slot-item--expanded{z-index:1}.portal-clinical-schedule__slot-item--expanded,.portal-clinical-schedule__slot-item--selected{border-color:color-mix(in srgb,var(--portal-text) 18%,var(--portal-border-subtle));box-shadow:0 1px 3px #0f172a0f}.portal-clinical-schedule__slot-row{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:.65rem;width:100%;padding:.6rem .75rem;font:inherit;text-align:left;color:inherit;background:transparent;border:none;cursor:pointer;position:relative;z-index:1}.portal-clinical-schedule__slot-row:hover{background:color-mix(in srgb,var(--portal-text) 2%,var(--amu-card, #fff))}.portal-clinical-schedule__slot-row:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--portal-accent),inset 0 0 0 4px var(--amu-red-ring)}.portal-clinical-schedule__slot-item--expanded .portal-clinical-schedule__slot-row,.portal-clinical-schedule__slot-item--selected .portal-clinical-schedule__slot-row{background:color-mix(in srgb,var(--portal-text) 2.5%,var(--amu-card, #fff))}.portal-clinical-schedule__slot-main{display:flex;flex-direction:column;gap:.12rem;min-width:0}.portal-clinical-schedule__slot-title{font-size:.875rem;font-weight:700;letter-spacing:.01em;color:#6e1622;overflow-wrap:anywhere;word-break:break-word}.portal-clinical-schedule__slot-meta{font-size:.75rem;line-height:1.35;color:var(--portal-text-muted);overflow-wrap:anywhere;word-break:break-word}.portal-clinical-schedule__slot-aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.2rem;flex-shrink:0}.portal-clinical-schedule__badge{display:inline-flex;align-items:center;min-height:1.35rem;padding:.05rem .45rem;border-radius:999px;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;white-space:nowrap}.portal-clinical-schedule__badge--enrolled{color:#0b5f0b;background:color-mix(in srgb,#107c10 14%,var(--amu-card, #fff));border:1px solid color-mix(in srgb,#107c10 35%,transparent)}.portal-clinical-schedule__badge--open{color:#6e1622;background:color-mix(in srgb,var(--portal-accent, #8b1538) 8%,var(--amu-card, #fff));border:1px solid color-mix(in srgb,var(--portal-accent, #8b1538) 22%,transparent)}.portal-clinical-schedule__badge--full{color:var(--portal-text-muted);background:color-mix(in srgb,var(--portal-text) 6%,var(--amu-card, #fff));border:1px solid color-mix(in srgb,var(--portal-text) 14%,transparent)}.portal-clinical-schedule__slot-seats{font-size:.6875rem;font-variant-numeric:tabular-nums;color:var(--portal-text-muted);white-space:nowrap}.portal-clinical-schedule__slot-chevron{flex-shrink:0;color:var(--portal-text-muted);transition:transform .16s ease}.portal-clinical-schedule__slot-chevron--open{transform:rotate(180deg)}.portal-clinical-schedule__slot-detail{display:flex;flex-direction:column;max-height:min(48vh,28rem);min-height:0;border-top:1px solid var(--portal-border-subtle);background:color-mix(in srgb,var(--portal-text) 1.5%,var(--amu-card, #fff))}.portal-clinical-schedule__slot-detail-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:.65rem;padding:.75rem .85rem .5rem}.portal-clinical-schedule__slot-detail-status{margin:0}.portal-clinical-schedule__slot-detail-dl{padding-bottom:.15rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-clinical-schedule__slot-detail .clinical-enroll-modal__seat-picker{margin-top:.35rem;padding-top:0;border-top:none}.portal-clinical-schedule__slot-detail-error{margin:0}.portal-clinical-schedule__slot-detail-actions{display:flex;justify-content:flex-start;flex-shrink:0;padding:.55rem .85rem .75rem;border-top:1px solid var(--portal-border-subtle);background:var(--amu-card, #fff)}.portal-clinical-schedule__calendar{margin-top:0;flex:1 1 auto;min-height:0}.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll{max-height:min(62vh,36rem);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.portal-clinical-schedule__slots-col,.portal-clinical-schedule__slot-detail-scroll{scrollbar-width:none;-ms-overflow-style:none}.portal-clinical-schedule__slots-col::-webkit-scrollbar,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll::-webkit-scrollbar,.portal-clinical-schedule__slot-detail-scroll::-webkit-scrollbar{width:0;height:0}.portal-clinical-schedule__slots-col:hover,.portal-clinical-schedule__slots-col:focus-within,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:hover,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:focus-within,.portal-clinical-schedule__slot-detail-scroll:hover,.portal-clinical-schedule__slot-detail-scroll:focus-within{scrollbar-width:thin}.portal-clinical-schedule__slots-col:hover::-webkit-scrollbar,.portal-clinical-schedule__slots-col:focus-within::-webkit-scrollbar,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:hover::-webkit-scrollbar,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:focus-within::-webkit-scrollbar,.portal-clinical-schedule__slot-detail-scroll:hover::-webkit-scrollbar,.portal-clinical-schedule__slot-detail-scroll:focus-within::-webkit-scrollbar{width:8px;height:8px}.portal-clinical-schedule__slots-col:hover::-webkit-scrollbar-thumb,.portal-clinical-schedule__slots-col:focus-within::-webkit-scrollbar-thumb,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:hover::-webkit-scrollbar-thumb,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:focus-within::-webkit-scrollbar-thumb,.portal-clinical-schedule__slot-detail-scroll:hover::-webkit-scrollbar-thumb,.portal-clinical-schedule__slot-detail-scroll:focus-within::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--portal-text) 24%,transparent);border-radius:999px}.portal-clinical-schedule__slots-col:hover::-webkit-scrollbar-track,.portal-clinical-schedule__slots-col:focus-within::-webkit-scrollbar-track,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:hover::-webkit-scrollbar-track,.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll:focus-within::-webkit-scrollbar-track,.portal-clinical-schedule__slot-detail-scroll:hover::-webkit-scrollbar-track,.portal-clinical-schedule__slot-detail-scroll:focus-within::-webkit-scrollbar-track{background:transparent}.portal-clinical-offered-timetable__block--active{z-index:2;box-shadow:0 0 0 2px color-mix(in srgb,var(--portal-accent, #8b1538) 55%,transparent),0 4px 14px #0f172a1f}@media (max-width: 52rem){.portal-clinical-schedule__layout{grid-template-columns:minmax(0,1fr);grid-template-rows:none;min-height:0;max-height:none}.portal-clinical-schedule__slots-head{grid-column:1;grid-row:1}.portal-clinical-schedule__view-tabs{grid-column:1;grid-row:2}.portal-clinical-schedule__slots-col{grid-column:1;grid-row:3;border-right:none;border-bottom:1px solid var(--portal-border-subtle);max-height:min(55vh,32rem)}.portal-clinical-schedule__timetable-head{grid-column:1;grid-row:4}.portal-clinical-schedule__timetable-toolbar{grid-column:1;grid-row:5}.portal-clinical-schedule__timetable-col{grid-column:1;grid-row:6}.portal-clinical-schedule__calendar .portal-clinical-offered-timetable__scroll{max-height:none}}.admin-page .portal-clinical-offered-timetable--embedded{margin-top:0}.portal-offered-section-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1250;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box;background:#0006}.portal-offered-section-modal{box-sizing:border-box;width:100%;max-width:26rem;max-height:min(90vh,36rem);overflow:auto;padding:1.2rem 1.3rem;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:var(--amu-card);box-shadow:var(--portal-shadow)}.portal-offered-section-modal:has(.clinical-enroll-modal__seat-picker){max-width:36rem}.portal-offered-section-modal__title{margin:0 0 .85rem;font-size:1.05rem;font-weight:600;color:var(--portal-text)}.portal-offered-section-modal__dl{margin:0;font-size:.875rem}.portal-offered-section-modal__dl>div{display:grid;grid-template-columns:7.5rem 1fr;gap:.35rem .65rem;margin-bottom:.45rem}.portal-offered-section-modal__dl dt{margin:0;font-weight:600;color:var(--portal-text-muted)}.portal-offered-section-modal__dl dd{margin:0;color:var(--portal-text);word-break:break-word}.portal-offered-section-modal__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin-top:1.1rem}.portal-finance-payment-modal{max-width:34rem}.portal-finance-payment-modal__term{margin:-.25rem 0 .25rem;color:var(--portal-text-muted);font-size:.875rem}.portal-finance-payment-modal__field{display:flex;flex-direction:column;gap:.35rem;margin:.35rem 0}.portal-finance-payment-modal__field>span{font-size:.85rem;font-weight:600;color:var(--portal-text-muted)}.portal-finance-payment-modal__field>input{width:100%;min-height:2.2rem;padding:.45rem .65rem;border:1px solid var(--portal-border, #d4d4d8);border-radius:var(--portal-radius);background:var(--portal-surface, #fff);color:var(--portal-text);font:inherit;box-sizing:border-box}.portal-finance-payment-modal__field>input:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-finance-payment-modal__field>input[readonly]{background:#f8f9fb;color:var(--portal-text-muted)}.portal-finance-payment-modal__field .card-input-wrapper input{width:100%;min-height:2.2rem;padding:.45rem .65rem;border:1px solid var(--portal-border, #d4d4d8);border-radius:var(--portal-radius);background:var(--portal-surface, #fff);color:var(--portal-text);font:inherit;box-sizing:border-box}.portal-finance-payment-modal__field .card-input-wrapper input:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-finance-payment-modal__expiry-row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.portal-finance-payment-modal__error{color:var(--amu-red-dark)}.portal-my-timetable__block{pointer-events:none;cursor:default}.portal-my-timetable-unplaced{margin-top:1.25rem}.portal-my-timetable-unplaced__title{margin:0 0 .35rem;font-size:1rem;font-weight:600;color:var(--portal-text)}.portal-my-timetable-unplaced__list{margin:0;padding-left:1.25rem;font-size:.875rem;color:var(--portal-text);line-height:1.45}.portal-finances-outlet,.portal-registration-outlet,.portal-academics-outlet,.portal-clinical-outlet,.portal-documents-outlet,.portal-my-courses-outlet{min-width:0}.portal-documents-content{box-sizing:border-box;width:100%;max-width:none;margin:0;padding:0;min-width:0;background:transparent}.portal-documents-home{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;background:transparent}.portal-documents-home .portal-academics-portal-tabs{margin-bottom:.35rem}.portal-documents-home__panel{min-width:0}.portal-documents-home .portal-registration-form-sheet{max-width:72rem;width:100%;margin-inline:auto}.portal-registration-forms{display:flex;flex-direction:column;gap:1rem}.portal-registration-form-hint{margin:0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-registration-form-hint--warn{color:var(--portal-text)}.portal-registration-form-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem 1.25rem}.portal-registration-form-filters__field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.portal-registration-form-filters__field--term,.portal-registration-form-filters__field--term .portal-account-ledger__select{min-width:11rem}.portal-registration-form-filters__label{font-size:.8125rem;font-weight:500;color:var(--portal-text-muted)}.portal-registration-form-filters__actions{display:flex;align-items:center}.portal-registration-form-filters__actions .portal-btn{min-height:2.25rem}.portal-documents-home .portal-registration-form-filters .portal-account-ledger__select{box-sizing:border-box;min-height:2.25rem;padding-top:.3125rem;padding-bottom:.3125rem}.portal-registration-form-sheet{box-sizing:border-box;max-width:100%;margin:0 auto;padding:1.5rem 1.35rem 1.75rem;background:#fff;border:1px solid #d8dce3;border-radius:var(--portal-radius);font-family:Times New Roman,Times,ui-serif,Georgia,serif;font-size:.8125rem;line-height:1.45;color:#1a1a1a;overflow-x:auto}.portal-registration-form-sheet__masthead{text-align:center;margin-bottom:1rem}.portal-registration-form-sheet__school{margin:0 0 .35rem;font-size:.9375rem;font-weight:700;letter-spacing:.02em}.portal-registration-form-sheet__office,.portal-registration-form-sheet__contact{margin:.15rem 0;font-size:.75rem;line-height:1.4}.portal-registration-form-sheet__doc-title{margin:1rem 0;text-align:center;font-size:1.0625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.portal-registration-form-sheet__student-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem;margin-bottom:1.25rem}@media (max-width: 640px){.portal-registration-form-sheet__student-grid{grid-template-columns:1fr}}.portal-registration-form-sheet__dl{margin:0;display:flex;flex-direction:column;gap:.5rem}.portal-registration-form-sheet__dl>div{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:.35rem .5rem;align-items:baseline}.portal-registration-form-sheet__dl dt{margin:0;font-weight:600;font-size:.75rem}.portal-registration-form-sheet__dl dd{margin:0;font-size:.75rem;border-bottom:1px solid #bbb;min-height:1.25rem}.portal-registration-form-sheet__section{margin:1rem 0}.portal-registration-form-table-wrap{overflow-x:auto;margin:0}.portal-registration-form-table{width:100%;border-collapse:collapse;font-size:.6875rem;table-layout:fixed}.portal-registration-form-table th,.portal-registration-form-table td{border:1px solid #9a9a9a;padding:.28rem .35rem;vertical-align:top;word-wrap:break-word}.portal-registration-form-table th{font-weight:700;text-align:center;background:#f5f5f5}.portal-registration-form-table__empty td{height:1.35rem}.portal-registration-form-table tfoot th,.portal-registration-form-table tfoot td{font-weight:700;background:#fafafa}.portal-registration-form-sheet__confirm{margin:1.25rem 0;display:flex;flex-direction:column;gap:.75rem}.portal-registration-form-sheet__confirm p{margin:0;font-size:.75rem;text-align:justify}.portal-registration-form-sheet__check{display:flex;align-items:flex-start;gap:.5rem;font-size:.75rem;margin:0}.portal-registration-form-signatures{margin:1.25rem 0;display:flex;flex-direction:column;gap:.85rem}.portal-registration-form-signatures__row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem .75rem;font-size:.75rem}.portal-registration-form-signatures__line{flex:1 1 8rem;min-width:6rem;border-bottom:1px solid #333;min-height:1.1rem}.portal-registration-form-signatures__line--short{flex:0 1 5rem;min-width:4rem}.portal-registration-form-office{margin-top:1.5rem;padding-top:1rem;border-top:2px solid #333}.portal-registration-form-office__title{margin:0 0 .75rem;font-size:.8125rem;font-weight:700;letter-spacing:.06em}.portal-registration-form-office__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}@media (max-width: 720px){.portal-registration-form-office__grid{grid-template-columns:1fr}}.portal-registration-form-office__label{margin:0 0 .35rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em}.portal-registration-form-office__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.portal-registration-form-office__list li{display:flex;justify-content:space-between;gap:.75rem;font-size:.6875rem;border-bottom:1px dotted #aaa;padding-bottom:.2rem}.portal-registration-form-sheet__print-actions{margin-top:1.5rem;display:flex;justify-content:center}.portal-documents-agreements{min-width:0}.portal-documents-agreement-body__logo{display:block;margin:0 auto .5rem;max-height:2.625rem;width:auto;max-width:min(13.5rem,88%);object-fit:contain}.portal-documents-agreement-body__title{margin:0 0 1rem;font-size:.9375rem;font-weight:600;text-align:center}.portal-documents-agreement-body__para{margin:0 0 .85rem;font-size:var(--portal-body-font-size);line-height:1.55;color:var(--portal-text)}.portal-documents-agreement-body__success{margin:1rem 0 0;padding:.75rem 1rem;border-radius:var(--portal-radius);border:1px solid #b6d4c9;background:#f0faf4;color:#1e4d36;font-size:var(--portal-body-font-size)}.portal-documents-agreement-body__actions{margin-top:1.25rem;display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.portal-documents-agreement-body__check{display:flex;align-items:flex-start;gap:.5rem;font-size:var(--portal-body-font-size);line-height:1.45;color:var(--portal-text)}.portal-documents-agreement-body__submit{min-width:7rem}@media print{.portal-registration-form-sheet{border:1px solid #000;box-shadow:none;border-radius:0}.portal-registration-form-sheet__print-actions{display:none!important}}.portal-account-ledger__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--portal-space-3, .75rem)}.portal-account-ledger__toolbar .portal-section-heading{margin-bottom:0}.portal-account-ledger__toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--portal-space-3, .75rem)}.portal-account-ledger__pay-btn{white-space:nowrap}.portal-finances-overview__title{margin:0}.portal-finances-overview{margin:0;padding:0}.portal-account-ledger{display:flex;flex-direction:column;gap:.75rem;margin-bottom:var(--portal-space-section)}.portal-account-ledger__control-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.25rem;min-width:0}.portal-account-ledger__current-term{margin-left:auto}.portal-account-ledger__term-control--inline{margin-left:auto;display:flex;align-items:center}.portal-account-ledger__term-control--inline .portal-account-ledger__term-select{min-height:0;height:2.125rem;padding-top:.3125rem;padding-bottom:.3125rem}.portal-account-ledger__term-label{display:block;font-size:.8125rem;font-weight:500;color:var(--portal-text-muted)}.portal-account-ledger__term-control{margin:0;flex:0 0 auto}.portal-account-ledger__term-select{box-sizing:border-box;min-height:2.5rem;min-width:10.5rem;padding:.4375rem 2.25rem .4375rem .875rem;border:1px solid var(--portal-border-subtle);border-radius:8px;background:#fff;color:var(--portal-text);font:inherit;font-size:.875rem;font-weight:500;line-height:1.2;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.portal-account-ledger__term-select:hover:not(:disabled){border-color:var(--portal-border)}.portal-account-ledger__term-select:focus-visible{outline:2px solid var(--portal-accent, #c41e3a);outline-offset:2px}.portal-account-ledger__term-select:disabled{opacity:.55;cursor:not-allowed}.portal-account-ledger__ledger-panel{border:1px solid var(--portal-border-subtle);border-radius:10px;overflow:hidden;background:#fff}.portal-account-ledger__table-wrap{border:none;border-radius:0}.portal-account-ledger__ledger-panel .portal-account-ledger-cards{border-bottom:1px solid var(--portal-border-subtle)}.portal-account-ledger__summary-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.875rem 1rem;background:#fafbfc;border-top:1px solid var(--portal-border-subtle)}.portal-account-ledger__summary-bar-balance{display:flex;flex-wrap:wrap;align-items:baseline;gap:.375rem .625rem;min-width:0}.portal-account-ledger__summary-bar-label{font-size:.8125rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--portal-text-muted, #5c6478)}.portal-account-ledger__summary-bar-amount{font-size:1.125rem;font-weight:700;line-height:1.2;color:var(--portal-accent-hover, #a01830)}.portal-finance-entry-actions{border:1px solid var(--portal-border-subtle);box-shadow:0 2px 8px #18274b0a}.portal-finance-entry-actions__header{margin-bottom:.85rem}.portal-finance-entry-actions__header .portal-section-heading{margin:0}.portal-finance-entry-actions__subhead{margin:.4rem 0 0;color:var(--portal-text-muted);font-size:.86rem}.portal-finance-entry-actions__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.portal-finance-entry-actions__button{width:100%;border:1px solid color-mix(in srgb,var(--portal-border-subtle) 75%,#fff);border-radius:10px;background:#fff;color:color-mix(in srgb,var(--amu-red) 86%,var(--portal-text) 14%);font-size:.95rem;font-weight:500;line-height:1.2;padding:.9rem 1rem;min-height:2.9rem;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.portal-finance-entry-actions__button:hover{border-color:color-mix(in srgb,var(--amu-red) 38%,var(--portal-border-subtle));box-shadow:0 3px 10px #18274b14}.portal-finance-entry-actions__button:focus-visible{outline:none;border-color:var(--amu-red);box-shadow:0 0 0 3px var(--amu-red-ring)}.portal-table--ledger th,.portal-table--ledger td{padding:.6875rem .9rem;vertical-align:middle}.portal-table--ledger{table-layout:fixed}.portal-table--ledger-col-date{width:13%}.portal-table--ledger-col-type,.portal-table--ledger-col-code{width:11%}.portal-table--ledger-col-description{width:41%;text-align:center}.portal-table--ledger-col-charge,.portal-table--ledger-col-payment{width:12%}.portal-table--ledger-col-center,table.portal-table--ledger th.portal-table--ledger-col-center,table.portal-table--ledger td.portal-table--ledger-col-center{text-align:center}table.portal-table--ledger th.portal-table--ledger-col-money,table.portal-table--ledger td.portal-table--ledger-col-money{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.portal-table--ledger-description-main{line-height:1.35}.portal-table--ledger-description-subline{margin-top:.2rem;font-size:.75rem;color:var(--portal-text-muted);line-height:1.25}.portal-table--ledger tbody tr{background:#fff}.portal-table--ledger tbody tr+tr td{border-top:1px solid color-mix(in srgb,var(--portal-border-subtle) 82%,#fff)}.portal-table--ledger tfoot th,.portal-table--ledger tfoot td{border-bottom:none;background:#f8f9fb}.portal-table--ledger-summary-row th,.portal-table--ledger-summary-row td{padding-top:.72rem;padding-bottom:.72rem}.portal-table--ledger-summary-row:first-child th,.portal-table--ledger-summary-row:first-child td{border-top:1px solid color-mix(in srgb,var(--portal-border) 60%,#fff)}.portal-table--ledger-summary-label{text-align:center;color:var(--portal-text-muted);letter-spacing:.02em}.portal-table--ledger-summary-value{color:var(--portal-text);font-weight:650}.portal-table--ledger-summary-dash{color:var(--portal-text-faint)}.portal-table--ledger-summary-row--balance .portal-table--ledger-summary-label,.portal-table--ledger-summary-row--balance .portal-table--ledger-summary-value{font-weight:700;color:var(--portal-text)}.portal-table--ledger-summary-row--balance .portal-table--ledger-summary-value{font-size:.95rem}.portal-table--ledger-col-select{width:2.25rem}.portal-table--ledger-col-select input[type=checkbox]{width:.9375rem;height:.9375rem;accent-color:var(--portal-accent, #c41e3a);cursor:pointer}.portal-account-ledger__select-all{display:inline-flex;align-items:center;justify-content:center;margin:0;cursor:pointer}.portal-table--ledger-checkout-row th,.portal-table--ledger-checkout-row td{background:#fafbfc;border-top:1px solid var(--portal-border-subtle);vertical-align:middle}.portal-account-ledger__checkout-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.375rem;padding:.4375rem 1.125rem;border:1px solid rgba(140,29,44,.35);border-radius:8px;background:#fff;color:var(--portal-accent-hover, #a01830);font-family:inherit;font-size:.875rem;font-weight:600;line-height:1.2;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.portal-account-ledger__checkout-btn:hover:not(:disabled){background:var(--portal-accent-soft, #f2e8ea);border-color:#8c1d2c80;color:var(--portal-accent-hover, #a01830)}.portal-account-ledger__checkout-btn:disabled{opacity:.45;cursor:not-allowed}.portal-account-ledger__checkout-btn:focus-visible{outline:2px solid var(--portal-accent, #c41e3a);outline-offset:2px}.portal-account-ledger__checkout-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-top:.75rem}.portal-account-ledger__checkout-mobile{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;width:100%}.portal-account-ledger__checkout-mobile-total{display:flex;align-items:baseline;gap:.5rem;font-size:.8125rem;color:var(--portal-text-muted, #5c6478)}.portal-account-ledger__checkout-mobile-total strong{font-size:1rem;color:var(--portal-accent-hover, #a01830)}.portal-account-ledger__catalog-link{margin:0;padding:0;border:none;background:none;color:var(--portal-accent, #c41e3a);font-family:inherit;font-size:.8125rem;font-weight:500;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.portal-account-ledger__catalog-link:hover{color:var(--portal-accent-hover, #a01830)}.portal-account-ledger__clinic-action{margin-bottom:.25rem}.portal-account-ledger__clinic-button{max-width:16rem}.portal-account-ledger-card__select{display:inline-flex;align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.75rem;color:var(--portal-text-muted, #5c6478);cursor:pointer}.portal-account-ledger-card__select input[type=checkbox]{accent-color:var(--portal-accent, #c41e3a)}.portal-account-ledger__quarter-label{margin:0;min-width:0}.portal-account-ledger__select{font:inherit;padding:.35rem 2rem .35rem .5rem;border-radius:var(--portal-radius-sm, 6px);border:1px solid var(--portal-border, #d4d4d8);background-color:var(--portal-surface, #fff);color:var(--portal-text, #18181b);max-width:100%}.portal-account-ledger__select:focus-visible{outline:2px solid var(--portal-accent, #2563eb);outline-offset:2px}.portal-finance-payment-toast{position:fixed;right:1.25rem;bottom:1.25rem;z-index:1300;margin:0;padding:.65rem .85rem;border:1px solid rgba(10,111,78,.35);border-radius:var(--portal-radius);background:#e8f7ef;color:#0f5132;font-size:.85rem;box-shadow:var(--portal-shadow)}.portal-finance-checkout-page{display:flex;flex-direction:column;gap:1.25rem}.portal-finance-checkout-page__header{display:flex;flex-direction:column;gap:.35rem}.portal-finance-checkout-page__back-link{display:inline-flex;align-items:center;gap:.35rem;width:fit-content;color:var(--portal-text-muted);text-decoration:none;font-weight:600}.portal-finance-checkout-page__back-link:hover{color:var(--portal-text)}.portal-finance-checkout-page__back-link:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px;border-radius:var(--portal-radius-sm, 6px)}.portal-finance-checkout-page__title,.portal-finance-checkout-page__subtitle{margin-bottom:0}.portal-finance-payment-option{border:1px solid var(--portal-border-subtle);box-shadow:0 2px 8px #18274b0f}.portal-finance-payment-option__header{margin-bottom:.85rem}.portal-finance-payment-option__header .portal-section-heading{margin:0}.portal-finance-payment-option__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:.35rem}.portal-finance-payment-option__card{width:100%;text-align:center;border:1px solid var(--portal-border-subtle);background:#fff;border-radius:10px;padding:.75rem .8rem;min-height:3.1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.portal-finance-payment-option__card:hover{border-color:#8c1d2c4d;box-shadow:0 4px 12px #18274b14;background:color-mix(in srgb,var(--portal-accent-soft) 36%,#fff)}.portal-finance-payment-option__card:focus-visible{outline:none;border-color:var(--amu-red);box-shadow:0 0 0 3px var(--amu-red-ring)}.portal-finance-payment-option__card.is-selected{border-color:var(--amu-red);background:color-mix(in srgb,var(--amu-red-ring) 46%,#fff);box-shadow:0 0 0 2px var(--amu-red-ring)}.portal-finance-payment-option__card-content{display:flex;flex-direction:column;gap:.22rem;max-inline-size:33ch}.portal-finance-payment-option__card-title{font-size:.95rem;font-weight:600;line-height:1.25;letter-spacing:.01em;color:var(--portal-text);max-inline-size:24ch;margin:0}.portal-finance-payment-option__card-copy{font-size:.81rem;line-height:1.35;color:var(--portal-text-muted);max-inline-size:33ch;text-wrap:pretty}.portal-finance-installment-schedule{margin-top:.95rem;padding-top:.9rem;border-top:1px solid var(--portal-border-subtle);display:flex;flex-direction:column;gap:.75rem}.portal-finance-installment-schedule .portal-section-heading{margin:0;font-size:1rem}.portal-finance-installment-schedule__list{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.4rem;color:var(--portal-text)}.portal-finance-installment-plan__list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.portal-finance-installment-plan__item{border:1px solid var(--portal-border-subtle);border-radius:10px;background:#fff;padding:.65rem .75rem}.portal-finance-installment-plan__item-header{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;font-weight:600}.portal-finance-installment-plan__item-note{margin:.28rem 0 0;color:var(--portal-text-muted);font-size:.84rem}.portal-finance-payment-option__note{margin:.75rem 0 0;color:var(--portal-text-muted);font-size:.86rem;line-height:1.45}.portal-finance-billing-stack{display:flex;flex-direction:column;gap:1rem}.portal-finance-required-fees{margin-top:.75rem;display:flex;flex-direction:column;gap:.55rem}.portal-finance-required-fees__row{display:grid;grid-template-columns:minmax(8rem,1fr) auto auto auto;align-items:center;gap:.75rem;padding:.75rem .85rem;border:1px solid var(--portal-border-subtle);border-radius:10px;background:#fff}.portal-finance-required-fees__row>span:nth-child(2){font-weight:700}.portal-finance-required-fees__row>span:nth-child(3){color:var(--portal-text-muted);font-size:.85rem}.portal-finance-checkout-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:stretch}.portal-finance-checkout-layout__full{grid-column:1 / -1}.portal-finance-checkout-layout__col{display:flex;min-width:0}.portal-finance-checkout-card{border:1px solid var(--portal-border-subtle);box-shadow:0 2px 8px #18274b0f;width:100%;height:100%;display:flex;flex-direction:column}.portal-finance-checkout-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.portal-finance-checkout-card__header .portal-section-heading{margin:0}.portal-finance-checkout-summary{display:flex;flex-direction:column;gap:.75rem;margin:0}.portal-finance-checkout-summary__row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin:0;padding-bottom:.6rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-finance-checkout-summary__row dt{color:var(--portal-text-muted)}.portal-finance-checkout-summary__row dd{margin:0;font-weight:600}.portal-finance-checkout-summary__row--strong{border-bottom:0;padding-bottom:0}.portal-finance-checkout-summary__row--strong dd{color:var(--amu-red-dark)}.portal-finance-checkout-summary__note{margin:1rem 0 0;color:var(--portal-text-muted);font-size:.8125rem;line-height:1.45}.portal-finance-checkout-form{display:flex;flex-direction:column;gap:.85rem;height:100%}.portal-finance-checkout-form__field{display:flex;flex-direction:column;gap:.3rem}.portal-finance-checkout-form__field>span{font-size:.8rem;font-weight:600;color:var(--portal-text-muted)}.portal-finance-checkout-form__field input{width:100%;min-height:2.5rem;padding:.55rem .7rem;border:1px solid var(--portal-border, #d4d4d8);border-radius:var(--portal-radius);background:var(--portal-surface, #fff);color:var(--portal-text);font:inherit;box-sizing:border-box}.portal-finance-checkout-form__field input[readonly]{background:#f8f9fb;color:var(--portal-text-muted)}.portal-finance-checkout-form__field input:focus-visible{outline:2px solid var(--portal-accent);outline-offset:1px}.portal-finance-checkout-form__input-wrap{position:relative}.portal-finance-checkout-form__input-wrap--card-number input{padding-right:9.5rem}.portal-finance-checkout-form__input-wrap--cvv input{padding-right:3.25rem}.portal-finance-checkout-form__trailing-icons{position:absolute;right:.8125rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.625rem;pointer-events:none}.portal-finance-checkout-form__trailing-icons img{width:auto;height:1.625rem;object-fit:contain;display:block;border-radius:.12rem}.portal-finance-checkout-form__trailing-icon{position:absolute;right:.8125rem;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;pointer-events:none}.portal-finance-checkout-form__trailing-icon img{width:auto;height:1.25rem;object-fit:contain;display:block}.card-input-wrapper{position:relative}.card-number-input{padding-right:9.5rem}.card-number-input--network-detected{padding-right:3.25rem}.card-brand-icons{position:absolute;right:.8125rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.625rem;pointer-events:none}.card-brand-icons--placeholder img{opacity:.35}.card-brand-icons--detected img.card-brand-icons__active{opacity:1}.portal-finance-checkout-form__network-detected{margin:.35rem 0 0}.card-brand-icons img{height:1.625rem;width:auto;object-fit:contain;display:block;opacity:1}.cvv-input{padding-right:3.25rem}.cvv-icon{position:absolute;right:.8125rem;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;pointer-events:none}.cvv-icon img{height:1.25rem;width:auto;object-fit:contain;display:block;opacity:1}.portal-finance-checkout-form__input-wrap--cvv input::placeholder{color:#9ca3af;opacity:1}.portal-finance-checkout-form__triple{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:.75rem}.portal-finance-checkout-form__card-meta-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,1fr);gap:.75rem}.portal-finance-checkout-form__helper--flush{margin-top:-.15rem}.portal-finance-checkout-form__helper{margin:-.2rem 0 0;color:var(--portal-text-muted);font-size:.78rem}.portal-finance-checkout-form__trust,.portal-finance-checkout-form__secure-row{display:inline-flex;align-items:center;gap:.35rem;margin:0;color:var(--portal-text-muted);font-size:.78rem}.portal-finance-checkout-form__error{color:var(--amu-red-dark)}.portal-finance-checkout-form__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.portal-finance-checkout-form__btn{min-width:7rem}.portal-finance-checkout-page__success{border-color:#0a6f4e59;background:#e8f7ef;color:#0f5132}@media (max-width: 900px){.portal-finance-entry-actions__grid{grid-template-columns:1fr}.portal-finance-payment-option__cards{grid-template-columns:1fr;max-width:none}.portal-finance-required-fees__row{grid-template-columns:1fr;align-items:start}.portal-finance-checkout-layout{grid-template-columns:1fr}.portal-finance-checkout-layout__full{grid-column:auto}.portal-finance-checkout-form__actions{justify-content:stretch}.portal-finance-checkout-form__btn{flex:1 1 100%;min-height:2.8rem}}@media (max-width: 640px){.portal-finance-checkout-form__triple,.portal-finance-checkout-form__card-meta-row{grid-template-columns:1fr}.portal-finance-checkout-form__input-wrap--card-number input{padding-right:8.75rem}.portal-finance-checkout-form__trailing-icons{right:.75rem;gap:.5rem}.portal-finance-checkout-form__trailing-icons img{width:auto;height:1.5rem}.card-number-input{padding-right:8.75rem}.card-number-input--network-detected{padding-right:3rem}.card-brand-icons{right:.75rem;gap:.5rem}.card-brand-icons img{height:1.5rem}.cvv-input{padding-right:3rem}.cvv-icon{right:.75rem}.cvv-icon img{height:1.125rem}.portal-finance-checkout-card__header--form{flex-direction:column;align-items:flex-start}}.portal-documents-page-stack{display:flex;flex-direction:column;gap:var(--portal-space-section)}.portal-documents-page-stack>.portal-section-heading:first-child,.portal-documents-page-stack>.portal-page-lede:first-of-type{margin-bottom:0}.portal-documents-page-stack>.portal-page-lede{margin-bottom:0}.portal-documents-panel-stack{margin-bottom:0}.portal-documents-section-heading{margin:0 0 .875rem;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-documents-item-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}.portal-documents-item{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;padding:1rem 1.125rem;background:#fafbfc;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius)}.portal-documents-item--forms{align-items:center}.portal-documents-item-main{min-width:0;flex:1 1 12rem}.portal-documents-item-title{margin:0 0 .25rem;font-size:var(--portal-body-font-size);font-weight:600;line-height:1.35;color:var(--portal-text)}.portal-documents-item-meta{margin:0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-documents-item-category{font-weight:500;color:var(--portal-text)}.portal-documents-item-sep{margin:0 .25rem;color:var(--portal-text-faint)}.portal-documents-item-office{margin:.125rem 0 .25rem;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-documents-item-desc{margin:0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted);max-width:36rem}.portal-documents-handbook-hero{background:linear-gradient(135deg,#f8f9fb 0%,var(--portal-surface) 55%);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);padding:1.375rem 1.5rem}.portal-documents-handbook-hero-inner{max-width:40rem}.portal-documents-handbook-label{margin:0 0 .375rem;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-documents-handbook-title{margin:0 0 .25rem;font-size:var(--portal-page-title-size);font-weight:500;letter-spacing:-.02em;line-height:1.3;color:var(--portal-text)}.portal-documents-handbook-edition{margin:0 0 .75rem;font-size:.8125rem;color:var(--portal-text-muted)}.portal-documents-handbook-desc{margin:0 0 1.125rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-documents-handbook-actions{display:flex;flex-wrap:wrap;gap:.5rem .75rem}.portal-documents-quick-intro{margin:-.25rem 0 1rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-documents-quick-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.75rem}.portal-documents-quick-card{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;margin:0;padding:.875rem 1rem;text-align:left;font-family:inherit;font-size:inherit;color:inherit;text-decoration:none;background:#fafbfc;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);cursor:pointer;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.portal-documents-quick-card:hover{background:#f4f6f8;border-color:var(--portal-border);box-shadow:var(--portal-shadow)}.portal-documents-quick-card:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-documents-quick-title{font-size:var(--portal-body-font-size);font-weight:600;line-height:1.35;color:var(--portal-text)}.portal-documents-quick-desc{font-size:.75rem;line-height:1.45;color:var(--portal-text-muted)}.portal-documents-upload-row{align-items:center}.portal-documents-upload-detail{font-size:.875rem!important;font-weight:400!important;color:var(--portal-text-muted)!important;margin-top:.35rem!important}.portal-documents-upload-cta{padding:1.25rem 1.375rem;background:var(--portal-surface);border:1px dashed var(--portal-border);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow)}.portal-documents-upload-cta-title{margin:0 0 .5rem;font-size:var(--portal-body-font-size);font-weight:600;color:var(--portal-text)}.portal-documents-upload-cta-desc{margin:0 0 1rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted);max-width:40rem}.portal-documents-upload-cta-actions{display:flex;flex-wrap:wrap;gap:.5rem .75rem}.portal-documents-upload-cta-note{margin:1rem 0 0;font-size:.75rem;line-height:1.45;color:var(--portal-text-faint)}.portal-documents-quiz-page{display:flex;flex-direction:column;gap:1.75rem;width:100%;max-width:none;margin:0;padding:0;background:transparent;box-sizing:border-box}.portal-documents-quiz-page .portal-doc-quiz-entry-list>li{width:100%}.portal-documents-quiz-page .portal-doc-quiz-entry-card{width:100%;box-sizing:border-box;background:#f7f8fa;border:1px solid #e2e5ea}.portal-documents-quiz-page .portal-doc-quiz-entry-card:hover{background:#f0f2f5;border-color:#d5d9e0;box-shadow:none}.portal-documents-quiz-page .portal-doc-quiz-entry-list{gap:.875rem}.portal-documents-quiz-page .portal-doc-quiz-entry-card__row{flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;padding:1rem 1.25rem;min-height:0}.portal-documents-quiz-page .portal-doc-quiz-entry-card__text{flex:1 1 auto;min-width:0;padding-right:.75rem}.portal-documents-quiz-page .portal-doc-quiz-entry-card__title{margin:0 0 .25rem}.portal-documents-quiz-page .portal-doc-quiz-entry-card__desc{font-size:.8125rem;line-height:1.45}.portal-documents-quiz-page .portal-doc-quiz-entry-card__aside{flex-direction:row;align-items:center;align-self:center;gap:.625rem}.portal-documents-quiz-page .portal-doc-quiz-row__action{flex-shrink:0;min-height:2.25rem;padding:0 1rem;font-size:.8125rem;font-weight:600}.portal-documents-quiz-page-title{margin:0;font-family:Cinzel,ui-serif,Georgia,serif;font-size:clamp(1.5rem,3.2vw,2rem);font-weight:600;letter-spacing:.08em;line-height:1.2;color:#a6192e}.portal-documents-quiz-entry-toggle{margin:0}.portal-documents-quiz-entry-toggle .portal-academics-portal-tabs{margin-bottom:0}.portal-doc-quiz-entry-section{min-width:0}.portal-doc-quiz-entry-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem}.portal-doc-quiz-entry-card{position:relative;margin:0;padding:0;background:#fff;border:1px solid #e2e5ea;border-radius:var(--portal-radius);box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}.portal-doc-quiz-entry-card:hover{box-shadow:0 2px 10px #18181b0f}.portal-doc-quiz-entry-card__row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem 1.25rem;padding:1.35rem 1.4rem;box-sizing:border-box}.portal-doc-quiz-entry-card__text{flex:1 1 14rem;min-width:0;padding-right:.5rem}.portal-doc-quiz-entry-card__title{margin:0 0 .35rem;font-size:1.0625rem;font-weight:600;line-height:1.3;color:var(--portal-text)}.portal-doc-quiz-entry-card__desc{margin:0;font-size:var(--portal-body-font-size);line-height:1.45;color:var(--portal-text-muted)}.portal-doc-quiz-entry-card__aside{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;flex-shrink:0}.portal-doc-quiz-entry-card__completed{font-size:.6875rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#2f6f44;white-space:nowrap}.portal-doc-quiz-entry-card__expand{border-top:1px solid var(--portal-border-subtle)}.portal-doc-quiz-expand-form{background:#fff;padding:0}.portal-doc-quiz-expand-form__inner{padding:1.75rem 1.5rem 2rem;box-sizing:border-box}.portal-doc-quiz-form-cert__text{margin:0 0 1rem;font-size:.75rem;line-height:1.55;color:var(--portal-text-muted);max-width:52rem}.portal-doc-quiz-question--bar-only .portal-doc-quiz-option-row__mark{display:none}.portal-doc-quiz-question--bar-only .portal-doc-quiz-option-row__label{gap:0;padding:.75rem 1rem}.portal-doc-quiz-submit-btn{min-width:8rem}@media (max-width: 640px){.portal-documents-quiz-page{gap:1.35rem}.portal-doc-quiz-entry-card__row{flex-direction:column;align-items:stretch;padding:1.15rem 1.15rem 1.2rem}.portal-doc-quiz-entry-card__text{padding-right:0}.portal-doc-quiz-entry-card__aside{align-items:stretch}.portal-doc-quiz-entry-card__aside .portal-tab{width:100%;justify-content:center}.portal-doc-quiz-entry-card__completed{align-self:flex-end}.portal-doc-quiz-expand-form__inner{padding:1.35rem 1.1rem 1.65rem}.portal-documents-quiz-page .portal-doc-quiz-entry-card__row{flex-direction:column;align-items:stretch;padding:1rem 1.125rem}.portal-documents-quiz-page .portal-doc-quiz-entry-card__text{padding-right:0}.portal-documents-quiz-page .portal-doc-quiz-entry-card__aside{flex-direction:column;align-items:stretch;align-self:stretch}.portal-documents-quiz-page .portal-doc-quiz-row__action{width:100%;justify-content:center}.portal-documents-quiz-page .portal-doc-quiz-entry-card__completed{align-self:flex-end}}.portal-documents-home-stack{display:flex;flex-direction:column;gap:2rem}.portal-documents-training-stack{display:flex;flex-direction:column;gap:1.125rem}.portal-documents-training-page-title{margin:0;font-family:Cinzel,ui-serif,Georgia,serif;font-size:clamp(1.35rem,2.8vw,1.625rem);font-weight:600;letter-spacing:.06em;line-height:1.25;color:#a6192e}.portal-doc-quiz-tab{gap:.375rem}.portal-doc-quiz-tab__label{display:inline-flex;align-items:center}.portal-doc-quiz-tab__done{display:inline-flex;align-items:center;gap:.25rem;margin-left:.125rem;font-weight:500;color:var(--portal-text-muted);letter-spacing:.02em}.portal-doc-quiz-tab__dot{width:.375rem;height:.375rem;border-radius:50%;background:#5a9f6f;flex-shrink:0}.portal-doc-quiz-tab__done-text{font-size:.6875rem}.portal-doc-quiz-panels{min-width:0}.portal-doc-quiz-card.portal-card{margin:0;padding:1.25rem 1.35rem 1.5rem;border:1px solid var(--portal-border-subtle);box-shadow:none}.portal-doc-quiz-card__title{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--portal-text)}.portal-doc-quiz-card__desc{margin:0 0 1.25rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted);max-width:48rem}.portal-doc-quiz-questions{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.75rem}.portal-doc-quiz-question{margin:0;padding:0;border:none;min-width:0}.portal-doc-quiz-question--incorrect{padding:.5rem 0 .5rem .75rem;border-left:3px solid #c53030;border-radius:0 var(--portal-radius) var(--portal-radius) 0}.portal-doc-quiz-question--incorrect .portal-doc-quiz-question__legend{color:#9b2c2c}.portal-doc-quiz-option-row__label--incorrect-selected{border-color:#c53030!important;background:#fff5f5!important}.portal-doc-quiz-question__legend{margin:0 0 .75rem;padding:0;font-size:var(--portal-body-font-size);font-weight:500;line-height:1.45;color:var(--portal-text)}.portal-doc-quiz-question__num{font-weight:600}.portal-doc-quiz-question__options{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.portal-doc-quiz-option-row{margin:0}.portal-doc-quiz-option-row__label{display:flex;align-items:flex-start;gap:.625rem;padding:.625rem .75rem;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:#fafbfc;cursor:pointer;line-height:1.45;font-size:var(--portal-body-font-size);color:var(--portal-text);transition:border-color .12s ease,background .12s ease;min-height:2.75rem;box-sizing:border-box}.portal-doc-quiz-option-row__label:hover{border-color:var(--portal-border);background:#fff}.portal-doc-quiz-option-row__label--selected{border-color:#a6192e59;background:#fff8f9}.portal-doc-quiz-option-row__input:focus-visible+.portal-doc-quiz-option-row__label{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-doc-quiz-option-row__mark{flex-shrink:0;width:1rem;height:1rem;margin-top:.125rem;border-radius:50%;border:2px solid #b8c0cc;background:#fff;position:relative;box-sizing:border-box}.portal-doc-quiz-option-row__label--selected .portal-doc-quiz-option-row__mark{border-color:#a6192e}.portal-doc-quiz-option-row__label--selected .portal-doc-quiz-option-row__mark:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:#a6192e}.portal-doc-quiz-option-row__text{flex:1;min-width:0;overflow-wrap:anywhere}.portal-doc-quiz-cert{margin-top:.25rem;padding-top:1.5rem;border-top:1px solid var(--portal-border-subtle)}.portal-doc-quiz-cert__text{margin:0 0 1rem;font-size:.8125rem;line-height:1.5;color:var(--portal-text-muted);max-width:52rem}.portal-doc-quiz-cert__check-row{display:flex;align-items:flex-start;gap:.625rem}.portal-doc-quiz-cert__checkbox{width:1.125rem;height:1.125rem;margin:.15rem 0 0;flex-shrink:0;accent-color:var(--portal-accent);cursor:pointer}.portal-doc-quiz-cert__checkbox:disabled{cursor:not-allowed;opacity:.6}.portal-doc-quiz-cert__label{font-size:var(--portal-body-font-size);line-height:1.45;color:var(--portal-text);cursor:pointer}.portal-doc-quiz-hint{margin:1rem 0 0;font-size:.8125rem;color:var(--portal-text-muted)}.portal-doc-quiz-success{margin:1rem 0 0;font-size:var(--portal-body-font-size);font-weight:500;color:#2f6f44}.portal-doc-quiz-actions{margin-top:1.25rem}@media (max-width: 640px){.portal-doc-quiz-card.portal-card{padding:1rem 1rem 1.25rem}.portal-doc-quiz-questions{gap:1.25rem}}.portal-btn:disabled{opacity:.55;cursor:not-allowed}.portal-btn--primary:disabled:hover{background:var(--portal-accent);border-color:var(--portal-accent)}.portal-btn--secondary:disabled:hover{background:var(--portal-surface);border-color:var(--portal-border)}.portal-status--missing{background:#fdecec;color:#8b1e1e}.portal-clinical-page-stack{gap:1.25rem}.portal-clinical-list-offset{margin-top:.75rem}.portal-clinical-list-offset-sm{margin-top:.5rem}.portal-clinical-meta-line{font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted);margin-top:.25rem}.portal-clinical-meta-line--flush{margin-top:.35rem}.portal-clinical-actions-tight{margin-top:.75rem;padding-top:0;border-top:none}.portal-clinical-preview-note{margin-bottom:0;margin-top:.75rem;font-size:.75rem}.portal-clinical-action-row{align-items:center}.portal-clinical-inline-actions{flex-shrink:0;margin:0}.portal-clinical-hours-row{flex-direction:column;align-items:stretch;gap:.5rem}.portal-clinical-hours-info{width:100%;min-width:0}.portal-clinical-hours-bar{margin-top:.5rem;max-width:100%}.portal-clinical-compliance-item{align-items:flex-start}.portal-registration-status-value.portal-clinical-compliance-detail{font-size:.875rem;font-weight:400;color:var(--portal-text-muted);margin-top:.35rem}.portal-table--clinical-schedule td:nth-child(4){min-width:10rem}.portal-table-wrap--clinical-progress{max-width:100%;margin-bottom:0}table.portal-table.portal-table--clinical-progress{table-layout:fixed;width:100%;font-size:var(--portal-body-font-size)}table.portal-table.portal-table--clinical-progress th,table.portal-table.portal-table--clinical-progress td{padding:.8125rem 1rem;vertical-align:middle}table.portal-table.portal-table--clinical-progress th:nth-child(1),table.portal-table.portal-table--clinical-progress td:nth-child(1){text-align:left}table.portal-table.portal-table--clinical-progress th:nth-child(2),table.portal-table.portal-table--clinical-progress th:nth-child(3),table.portal-table.portal-table--clinical-progress th:nth-child(4),table.portal-table.portal-table--clinical-progress td:nth-child(2),table.portal-table.portal-table--clinical-progress td:nth-child(3),table.portal-table.portal-table--clinical-progress td:nth-child(4){text-align:center}table.portal-table.portal-table--clinical-progress th{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--portal-text-faint)}table.portal-table.portal-table--clinical-progress td:nth-child(4){min-width:0}table.portal-table.portal-table--clinical-progress tbody tr:nth-child(2n){background:color-mix(in srgb,var(--portal-surface) 96%,var(--portal-border-subtle))}table.portal-table.portal-table--clinical-progress tbody tr:hover{background:color-mix(in srgb,var(--portal-accent-soft) 55%,var(--portal-surface))}.portal-clinical-exam-readiness .portal-grid-2{margin-bottom:0}.portal-status--expiring{background:#f8f0e4;color:#7a4a12}.portal-academics-transcript-section .portal-section-heading{margin-bottom:.5rem}.portal-academics-transcript-desc{margin-top:0}.portal-academics-transcript-actions{margin-top:1rem}.portal-academics-summary-block{margin-top:var(--portal-space-section)}.portal-table--grades th:nth-child(4),.portal-table--grades td:nth-child(4){text-align:right;font-variant-numeric:tabular-nums}table.portal-academics-portal-grades-table.portal-table--grades th,table.portal-academics-portal-grades-table.portal-table--grades td{text-align:center;font-variant-numeric:tabular-nums;vertical-align:middle}.portal-academics-course-title-cell{max-width:22rem;text-align:center}.portal-academics-course-title__en,.portal-academics-course-title__zh{display:block;line-height:1.35}.portal-academics-course-title__zh{margin-top:.2rem;font-size:.8125rem;color:var(--portal-text-muted)}.portal-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:var(--portal-space-section)}@media (max-width: 520px){.portal-grid-2{grid-template-columns:1fr}}.portal-academics-progress-card{margin-bottom:var(--portal-space-section)}.portal-academics-progress-track{height:.5rem;margin-top:.75rem;border-radius:999px;background:#e8eaee;overflow:hidden}.portal-academics-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--portal-accent-hover),var(--portal-accent));min-width:4px;transition:width .25s ease}.portal-academics-progress-caption{margin-top:.75rem}.portal-academics-enrollment-actions{margin-bottom:var(--portal-space-section)}.portal-academics-portal-tabs{margin-bottom:1.25rem}.portal-academics-sections-tabs .portal-academics-portal-tabs{margin-bottom:.45rem}.portal-academics-empty-state{padding:1.25rem 1.35rem}.portal-academics-empty-state__title{margin:0 0 .35rem;font-size:1.05rem;font-weight:600;color:var(--portal-text)}.portal-academics-empty-state__text{margin:0;font-size:var(--portal-body-font-size);line-height:1.45;color:var(--portal-text-muted)}.portal-academics-term-heading{margin:0 0 .5rem;font-size:1rem;font-weight:600;letter-spacing:.02em;color:var(--portal-text)}.portal-academics-program-progress-outer{margin-bottom:1.25rem}.portal-academics-program-progress{padding:1rem 1.1rem 1.15rem}.portal-academics-program-progress--loading{padding:1rem 1.1rem}.portal-academics-program-progress__heading{margin:0 0 1rem;font-size:1.05rem;font-weight:600;color:var(--portal-text)}.portal-academics-program-progress--paged .portal-academics-program-progress__heading{margin:0}.portal-academics-program-progress__pager-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem}.portal-academics-program-progress__pager{display:flex;align-items:center;gap:.35rem}.portal-academics-program-progress__pager-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--portal-border-subtle, #e8e8e8);border-radius:999px;background:var(--portal-surface, #fff);color:var(--portal-text-muted);font-size:1.1rem;line-height:1;cursor:pointer}.portal-academics-program-progress__pager-btn:hover:not(:disabled){color:var(--portal-text);border-color:var(--portal-border, #d8dce3)}.portal-academics-program-progress__pager-btn:disabled{opacity:.35;cursor:not-allowed}.portal-academics-program-progress__pager-tabs{display:inline-flex;align-items:stretch;gap:.15rem;padding:.15rem;border-radius:999px;background:#f3f4f6}.portal-academics-program-progress__pager-tab{min-height:1.75rem;padding:.2rem .85rem;border:none;border-radius:999px;background:transparent;color:var(--portal-text-muted);font-size:.8125rem;font-weight:600;cursor:pointer}.portal-academics-program-progress__pager-tab:hover{color:var(--portal-text)}.portal-academics-program-progress__pager-tab--active{background:#fff;color:var(--portal-text);box-shadow:0 1px 2px #0000000f}.portal-academics-program-progress__page{min-width:0}.portal-academics-program-progress__catalog-note{margin:0 0 .65rem}.portal-academics-program-progress__grid{display:grid;grid-template-columns:minmax(11rem,1fr) minmax(0,2.2fr);gap:1.25rem 1.5rem;align-items:start}@media (max-width: 720px){.portal-academics-program-progress__grid{grid-template-columns:1fr}}.portal-academics-program-progress__chart-wrap{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem}.portal-academics-program-progress__tooltip{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;max-width:min(16rem,92vw);padding:.5rem .65rem;border-radius:6px;font-size:.8125rem;line-height:1.35;text-align:center;color:var(--portal-text, #1c2333);background:var(--portal-surface-elevated, #fff);border:1px solid var(--portal-border-subtle, #e8e8e8);box-shadow:0 4px 14px #0000001f;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .12s ease,visibility .12s ease}.portal-academics-program-progress__tooltip--visible{opacity:1;visibility:visible}.portal-academics-program-progress__svg{position:relative;z-index:1;width:10.5rem;height:10.5rem;max-width:100%}.portal-academics-program-progress__slice--interactive{cursor:pointer}.portal-academics-program-progress__slice--remaining{fill:var(--portal-border-subtle, #e8e8e8)}.portal-academics-program-progress__slice--completed{fill:var(--portal-accent, #a6192e)}.portal-academics-program-progress__slice--in-progress{fill:var(--portal-progress-in-progress, #6b7f9e)}.portal-academics-program-progress__pct{font-size:13px;font-weight:700;fill:var(--portal-text, #1c2333);pointer-events:none}.portal-academics-program-progress__chart-label{margin:0;text-align:center}.portal-academics-program-progress__legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;font-size:.8125rem;color:var(--portal-text-muted);text-align:left;width:100%;max-width:14rem}.portal-academics-program-progress__legend li{display:flex;align-items:center;gap:.45rem}.portal-academics-program-progress__swatch{width:.65rem;height:.65rem;border-radius:2px;flex-shrink:0}.portal-academics-program-progress__swatch--completed{background:var(--portal-accent, #a6192e)}.portal-academics-program-progress__swatch--in-progress{background:var(--portal-progress-in-progress, #6b7f9e)}.portal-academics-program-progress__swatch--remaining{background:var(--portal-border-subtle, #e8e8e8)}.portal-academics-program-progress__caption{margin:.25rem 0 0;text-align:center;max-width:20rem}.portal-academics-program-progress__subheading{margin:0 0 .65rem;font-size:.9375rem;font-weight:600;color:var(--portal-text)}.portal-academics-program-progress-table th,.portal-academics-program-progress-table td{font-size:.8125rem}.portal-academics-program-progress-table th[scope=row]{font-weight:500;text-align:left}.portal-academics-program-progress__footnote{margin:.65rem 0 0}.portal-academics-registration-history-card{padding:1rem 1.1rem 1.15rem}.portal-academics-registration-history-card .portal-academics-program-progress__heading{margin:0}.portal-academics-registration-history-card__term{display:inline-flex;align-items:center;gap:.5rem;margin:0;min-width:0}.portal-academics-registration-history-card__term-label{font-size:.75rem;font-weight:600;color:var(--portal-text-muted, #5b6472);white-space:nowrap}.portal-academics-registration-history-card__term-select{font:inherit;font-size:.8125rem;padding:.35rem 2rem .35rem .55rem;border-radius:var(--portal-radius-sm, 6px);border:1px solid var(--portal-border, #d4d4d8);background-color:var(--portal-surface, #fff);color:var(--portal-text, #18181b);max-width:100%}.portal-academics-registration-history-card__term-select:focus-visible{outline:2px solid var(--portal-accent, #2563eb);outline-offset:2px}.portal-academics-registration-history-card__table-wrap{min-width:0}.portal-academics-registration-history-card .portal-table-wrap{margin:0}.portal-academics-registration-history-card table.portal-academics-registration-history-table th{font-size:.6875rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472);padding-top:.55rem;padding-bottom:.55rem}.portal-academics-registration-history-card table.portal-academics-registration-history-table td{font-size:.8125rem;padding-top:.5rem;padding-bottom:.5rem}.portal-academics-registration-history-card__empty{padding:.35rem 0 .15rem}.portal-academics-registration-history-card__empty-title{margin:0 0 .35rem;font-size:.9375rem;font-weight:600;color:var(--portal-text, #1c2333)}.portal-academics-registration-history-card__empty-text{margin:0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted, #5b6472)}.portal-clinical-my-schedule-card__alert{margin:0 0 .75rem}.portal-clinical-my-schedule-card__error{padding:0;background:transparent;border:0}.portal-clinical-my-schedule-card table.portal-clinical-my-schedule-table th{font-size:.6875rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase;color:var(--portal-text-muted, #5b6472);padding-top:.55rem;padding-bottom:.55rem}.portal-clinical-my-schedule-card table.portal-clinical-my-schedule-table td{font-size:.8125rem;padding-top:.5rem;padding-bottom:.5rem}.portal-academics-registration-history>*+*{margin-top:1.5rem}.portal-academics-registration-history-term{display:flex;flex-direction:column;gap:.9rem}table.portal-academics-registration-history-table.portal-academics-portal-grades-table{table-layout:fixed;width:100%;box-sizing:border-box}table.portal-academics-registration-history-table.portal-academics-portal-grades-table th:nth-child(1),table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(1),table.portal-academics-registration-history-table.portal-academics-portal-grades-table th:nth-child(2),table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(2),table.portal-academics-registration-history-table.portal-academics-portal-grades-table th:nth-child(3),table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(3),table.portal-academics-registration-history-table.portal-academics-portal-grades-table th:nth-child(4),table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(4),table.portal-academics-registration-history-table.portal-academics-portal-grades-table th:nth-child(5),table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(5),table.portal-academics-registration-history-table.portal-academics-portal-grades-table th:nth-child(6),table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(6),table.portal-academics-registration-history-table.portal-academics-portal-grades-table th:nth-child(7),table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(7){width:calc(100% / 7);box-sizing:border-box;text-align:center;vertical-align:middle;word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:manual;hyphens:manual}table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(7) .portal-academics-feedback-actions{justify-content:center;max-width:100%}table.portal-academics-registration-history-table.portal-academics-portal-grades-table td:nth-child(7) .portal-btn{max-width:100%;box-sizing:border-box;white-space:normal}table.portal-academics-registration-history-table.portal-academics-portal-grades-table .portal-academics-course-title-cell{max-width:100%;text-align:center}.portal-academics-feedback-placeholder{font-size:.8125rem;font-style:italic;color:var(--portal-text-muted);line-height:1.35}.portal-course-feedback-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#0f172a73}.portal-course-feedback-modal{box-sizing:border-box;width:min(760px,calc(100vw - 48px));max-width:760px;max-height:min(92vh,56rem);overflow:auto;padding:1.75rem 2rem 1.65rem;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:var(--portal-surface);box-shadow:var(--portal-shadow),0 16px 40px #0f172a1f}.portal-course-feedback-modal--student-eval{--cfb-rating-btn: 2.125rem;--cfb-rating-gap: .45rem;--cfb-rating-cols: calc(5 * var(--cfb-rating-btn) + 4 * var(--cfb-rating-gap));width:min(520px,calc(100vw - 32px));max-width:520px;max-height:min(90vh,42rem);margin:auto;overflow-x:hidden;overflow-y:auto;padding:1.05rem 1.35rem 1.15rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__body-inner{box-sizing:border-box;width:100%;max-width:none;margin-left:auto;margin-right:auto}.portal-course-feedback-modal__header{margin:0;padding:0 0 .85rem;text-align:center}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__header{padding-bottom:.55rem}.portal-course-feedback-modal__header-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:700;letter-spacing:-.01em;color:var(--amu-red);line-height:1.25}.portal-course-feedback-modal__header-course{margin:0 0 .25rem;font-size:.9375rem;font-weight:600;color:var(--portal-text);line-height:1.4;word-wrap:break-word}.portal-course-feedback-modal__header-term{margin:0;font-size:.8125rem;line-height:1.4}.portal-course-feedback-modal__section-divider{height:0;margin:0 0 .95rem;border:0;border-top:1px solid var(--portal-border-subtle);box-shadow:0 1px #f2c30059}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__section-divider{margin-bottom:.55rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__header-title{margin-bottom:.3rem;font-size:1.0625rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__header-course{margin-bottom:0;font-size:.875rem;line-height:1.35}.portal-course-feedback-modal__feedback-block{display:flex;flex-direction:column;align-items:stretch;margin-bottom:1.2rem}.portal-course-feedback-modal__feedback-block--overall{padding-top:.35rem;margin-top:.15rem;border-top:1px dashed var(--portal-border-subtle)}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__feedback-block{display:grid;grid-template-columns:minmax(0,1fr) var(--cfb-rating-cols);gap:.45rem .75rem;align-items:center;margin-bottom:0;padding:.6rem .75rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__feedback-block--overall{padding-top:.6rem;margin-top:0;border-top:none;border-bottom:none;background:#f2c30014}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__question{margin:0;font-size:.8125rem;font-weight:500;line-height:1.4}.portal-course-feedback-modal__question{margin:0 0 .3rem;font-size:.875rem;font-weight:600;line-height:1.45;color:var(--portal-text);max-width:100%;text-align:left}.portal-course-feedback-modal__rating-scale{display:flex;flex-direction:column;align-items:flex-start;margin:0;width:100%}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__rating-scale{align-items:stretch;width:var(--cfb-rating-cols);justify-self:end}.portal-course-feedback-modal__rating-scale-row{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:18px}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__rating-scale-row{display:grid;grid-template-columns:repeat(5,var(--cfb-rating-btn));gap:var(--cfb-rating-gap);margin-top:0;width:100%}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__eval-sheet{margin-bottom:.75rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__eval-grid{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);overflow:hidden;background:var(--portal-surface)}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__eval-grid-head{display:grid;grid-template-columns:minmax(0,1fr) var(--cfb-rating-cols);gap:.75rem;align-items:center;padding:.45rem .75rem;background:var(--page-gray);border-bottom:1px solid var(--portal-border-subtle)}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__eval-grid-cols{display:grid;grid-template-columns:repeat(5,var(--cfb-rating-btn));gap:var(--cfb-rating-gap);justify-self:end;width:var(--cfb-rating-cols)}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__eval-grid-col-label{display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;line-height:1;color:var(--portal-text-muted);font-variant-numeric:tabular-nums}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__rating-option{width:100%}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__rating-option-face{min-height:2rem;padding:.25rem .35rem;font-size:.8125rem}.portal-course-feedback-modal__rating-option{position:relative;flex:0 0 auto;width:2.75rem;margin:0;cursor:pointer;border-radius:999px;-webkit-user-select:none;user-select:none}.portal-course-feedback-modal__rating-option-face{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:2.5rem;padding:.4rem .55rem;font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1;color:var(--portal-text);background:var(--page-gray);border:1px solid var(--portal-border-subtle);border-radius:999px;transition:background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease,transform .12s ease}.portal-course-feedback-modal__rating-option:hover .portal-course-feedback-modal__rating-option-face{background:var(--portal-accent-soft);border-color:#8c1d2c38;transform:translateY(-1px)}.portal-course-feedback-modal__rating-option--selected .portal-course-feedback-modal__rating-option-face{color:#fff;background:var(--amu-red);border-color:var(--amu-red-dark);box-shadow:0 1px 2px #6e162229}.portal-course-feedback-modal__rating-option--selected:hover .portal-course-feedback-modal__rating-option-face{background:var(--amu-red-dark);border-color:var(--amu-red-dark)}.portal-course-feedback-modal__rating-option:has(input:focus-visible) .portal-course-feedback-modal__rating-option-face{outline:2px solid var(--amu-red);outline-offset:2px}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__rating-legend-once{margin:0 0 .65rem;padding:.4rem .65rem;font-size:.75rem;line-height:1.4;text-align:center;color:var(--portal-text-muted);background:var(--page-gray);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius)}.portal-course-feedback-modal__rating-legend-once{display:block;width:100%;margin:0 0 16px 4px;padding:0;font-size:13px;line-height:1.5;text-align:left;letter-spacing:normal;color:#6b7280;background:none;border:none;border-radius:0;box-shadow:none}.portal-course-feedback-modal__comment-block{margin:.15rem 0 .4rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__comment-block{margin-top:0;margin-bottom:.35rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__comment-label{margin-bottom:.3rem;font-size:.8125rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__comment-textarea{min-height:3.25rem;padding:.45rem .55rem;font-size:.8125rem;line-height:1.4}.portal-course-feedback-modal__comment-label{display:block;margin-bottom:.4rem;font-size:.8125rem;font-weight:600;color:var(--portal-text)}.portal-course-feedback-modal__comment-textarea{box-sizing:border-box;width:100%;min-height:4.75rem;padding:.55rem .65rem;font:inherit;font-size:.875rem;line-height:1.45;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);color:var(--portal-text);resize:vertical}.portal-course-feedback-modal__comment-textarea::placeholder{color:var(--portal-text-faint)}.portal-course-feedback-modal__comment-textarea:focus{outline:none;border-color:#8c1d2c73;box-shadow:0 0 0 3px var(--amu-red-ring)}.portal-course-feedback-modal__actions{display:flex;flex-wrap:wrap;gap:.5rem .65rem;justify-content:flex-end;margin-top:1rem;padding-top:.1rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__body-inner .portal-course-feedback-modal__actions{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--portal-border-subtle);gap:.4rem .5rem}.portal-course-feedback-modal__readonly-dl{margin:0 0 .5rem;padding:0;font-size:.875rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__readonly-dl{margin-bottom:.4rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__readonly-row{margin-bottom:.55rem}.portal-course-feedback-modal__readonly-row{display:grid;grid-template-columns:minmax(0,65%) minmax(0,35%);gap:.5rem 1rem;align-items:baseline;margin-bottom:.65rem}.portal-course-feedback-modal__readonly-label{margin:0;padding-right:.25rem;font-weight:600;color:var(--portal-text-muted);line-height:1.45}.portal-course-feedback-modal__readonly-value{margin:0;justify-self:end;max-width:100%;text-align:right;white-space:nowrap;color:var(--portal-text);font-weight:500;font-variant-numeric:tabular-nums;line-height:1.45}.portal-course-feedback-modal__readonly-row--multiline .portal-course-feedback-modal__readonly-value{white-space:normal;word-wrap:break-word;overflow-wrap:break-word;font-variant-numeric:normal;font-weight:400}.portal-course-feedback-modal__readonly-row--summary-first{margin-top:.75rem;padding-top:.6rem;border-top:1px dashed var(--portal-border-subtle)}.portal-course-feedback-modal__submitted-row{display:flex;flex-wrap:nowrap;align-items:baseline;gap:.35rem .5rem;margin-top:.65rem;padding-top:.55rem;border-top:1px dashed var(--portal-border-subtle)}.portal-course-feedback-modal__submitted-label{flex:0 0 auto;font-size:.875rem;font-weight:600;line-height:1.45;color:var(--portal-text-muted)}.portal-course-feedback-modal__submitted-value{flex:1 1 auto;min-width:0;font-size:.875rem;font-weight:500;line-height:1.45;color:var(--portal-text);white-space:nowrap;word-break:normal;overflow-wrap:normal}@media (max-width: 520px){.portal-course-feedback-modal{padding:1.35rem 1.25rem 1.25rem}.portal-course-feedback-modal--student-eval{width:min(520px,calc(100vw - 24px));padding:.9rem 1rem 1rem;--cfb-rating-btn: 1.95rem;--cfb-rating-gap: .35rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__eval-grid-head{padding:.35rem .55rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__feedback-block{padding:.5rem .55rem;gap:.35rem .5rem}.portal-course-feedback-modal--student-eval .portal-course-feedback-modal__rating-scale-row{gap:var(--cfb-rating-gap)}.portal-course-feedback-modal__rating-scale-row{flex-wrap:wrap;justify-content:flex-start;row-gap:.5rem;column-gap:18px}.portal-course-feedback-modal__readonly-row{grid-template-columns:1fr;gap:.2rem 0}.portal-course-feedback-modal__readonly-value{justify-self:start;text-align:left}.portal-course-feedback-modal__submitted-row{align-items:baseline}.portal-course-feedback-modal__submitted-value{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}}.portal-course-feedback-modal__readonly-dl>div:not(.portal-course-feedback-modal__readonly-row){display:grid;grid-template-columns:minmax(0,1fr) min-content;gap:.35rem .75rem;margin-bottom:.4rem;align-items:start}.portal-course-feedback-modal__readonly-dl>div:not(.portal-course-feedback-modal__readonly-row) dt{margin:0;font-weight:600;color:var(--portal-text-muted)}.portal-course-feedback-modal__readonly-dl>div:not(.portal-course-feedback-modal__readonly-row) dd{margin:0;color:var(--portal-text)}.portal-course-feedback-modal__title{margin:0 0 .35rem;font-size:1.05rem;font-weight:600;color:var(--portal-text)}.portal-course-feedback-modal__meta{margin:0 0 1rem;font-size:.8125rem;color:var(--portal-text-muted);line-height:1.4}.portal-course-feedback-modal__field{margin-bottom:.85rem}.portal-course-feedback-modal__field label{display:block;margin-bottom:.3rem;font-size:.8125rem;font-weight:600;color:var(--portal-text)}.portal-course-feedback-modal__field select,.portal-course-feedback-modal__field textarea{box-sizing:border-box;width:100%;padding:.45rem .5rem;font:inherit;font-size:.875rem;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .85);background:var(--portal-surface);color:var(--portal-text)}.portal-course-feedback-modal__field textarea{min-height:5rem;resize:vertical}.portal-academics-feedback-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem}.portal-btn.portal-btn--link{padding:.15rem .35rem;min-height:0;font-size:.8125rem;font-weight:600;color:var(--portal-accent, #2563eb);background:transparent;border:none;text-decoration:underline;cursor:pointer}.portal-btn.portal-btn--link:hover{opacity:.88}.portal-academics-term-toolbar{justify-content:flex-start;align-items:center;width:100%}.portal-academics-quarter-term-summary{box-sizing:border-box;max-width:22rem;padding:.65rem .85rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface)}.portal-academics-quarter-term-summary__title{margin:0 0 .4rem;font-size:var(--portal-body-font-size);font-weight:600;letter-spacing:.02em;line-height:1.3;color:var(--portal-text)}.portal-academics-quarter-term-summary__dl{margin:0;display:flex;flex-direction:column;gap:.2rem}.portal-academics-quarter-term-summary__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.5rem 1rem;font-size:var(--portal-body-font-size);line-height:1.35}.portal-academics-quarter-term-summary__row dt{margin:0;font-weight:500;color:var(--portal-text-muted)}.portal-academics-quarter-term-summary__row dd{margin:0;font-weight:500;font-variant-numeric:tabular-nums;color:var(--portal-text);text-align:right;white-space:nowrap}@media (max-width: 768px){.portal-academics-quarter-term-summary{max-width:none;padding:.6rem .75rem}.portal-academics-quarter-term-summary__title,.portal-academics-quarter-term-summary__row{font-size:.78125rem}}.portal-academics-transcript-preview__actions{margin-bottom:1rem}.portal-academics-transcript-sheet{max-width:none;width:100%;padding:1.5rem 1.75rem;border:1px solid var(--portal-border);border-radius:var(--portal-radius);background:var(--portal-surface);box-shadow:var(--portal-shadow);box-sizing:border-box}.portal-academics-transcript-sheet__masthead{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:2px solid var(--portal-text)}.portal-academics-transcript-sheet__masthead-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.portal-academics-transcript-sheet__logo{display:block;height:3.25rem;width:auto;max-width:min(14rem,100%);margin:0 0 .75rem;object-fit:contain;object-position:center}.portal-academics-transcript-sheet__school,.portal-academics-transcript-sheet__title{margin:0;font-size:1rem;line-height:1.3;color:var(--portal-text)}.portal-academics-transcript-sheet__school{font-weight:700;letter-spacing:.06em}.portal-academics-transcript-sheet__title{margin-top:.35rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.portal-academics-transcript-sheet__meta{margin:0 0 1rem;display:grid;gap:.35rem 1rem}.portal-academics-transcript-sheet__meta-row{display:grid;grid-template-columns:9rem 1fr;gap:.5rem 1rem;font-size:.8125rem;line-height:1.4}.portal-academics-transcript-sheet__meta-row dt{margin:0;font-weight:600;color:var(--portal-text-muted)}.portal-academics-transcript-sheet__meta-row dd{margin:0;color:var(--portal-text)}.portal-academics-transcript-sheet__terms{display:flex;flex-direction:column;gap:1.25rem}.portal-academics-transcript-sheet__term-heading{margin:0 0 .5rem;font-size:.875rem;font-weight:700;letter-spacing:.02em}.portal-academics-transcript-sheet__table{font-size:.8125rem}table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table{table-layout:fixed;width:100%;box-sizing:border-box}table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table th:nth-child(1),table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table td:nth-child(1){width:11%}table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table th:nth-child(2),table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table td:nth-child(2){width:47%;max-width:none;word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:manual;hyphens:manual}table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table th:nth-child(3),table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table td:nth-child(3){width:13%}table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table th:nth-child(4),table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table td:nth-child(4){width:14%}table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table th:nth-child(5),table.portal-academics-transcript-sheet__table.portal-academics-portal-grades-table td:nth-child(5){width:15%}.portal-academics-transcript-sheet__cumulative{margin-top:1.125rem;padding-top:.65rem;border-top:2px solid var(--portal-text)}.portal-academics-transcript-sheet__cumulative-heading{margin:0 0 .45rem;font-size:.8125rem;font-weight:700;letter-spacing:.04em;line-height:1.3;color:var(--portal-text)}.portal-academics-transcript-sheet__cumulative-dl{margin:0;display:flex;flex-direction:column;gap:.2rem}.portal-academics-transcript-sheet__cumulative-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.75rem 1.25rem;font-size:.8125rem;line-height:1.35}.portal-academics-transcript-sheet__cumulative-row dt{margin:0;font-weight:600;color:var(--portal-text-muted)}.portal-academics-transcript-sheet__cumulative-row dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums;color:var(--portal-text);text-align:right;white-space:nowrap}@media (max-width: 520px){.portal-academics-transcript-sheet__meta-row{grid-template-columns:1fr}.portal-academics-transcript-sheet__meta-row dt{margin-bottom:-.2rem}}@media print{@page{size:letter;margin:12mm}html,body{background:#fff!important}.portal-academics-print-hide,.portal-shell--authenticated .portal-app-header,.portal-shell--authenticated .portal-sidebar--desktop,.portal-shell--authenticated .portal-nav-drawer,.portal-shell--authenticated .portal-student-info-bar{display:none!important}.portal-shell--authenticated .portal-main{margin-left:0!important;padding-top:0!important;min-height:0!important}.portal-shell--authenticated .portal-main-content{max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}.portal-shell--authenticated .portal-main-body{padding:0!important}.portal-shell--authenticated{background:#fff!important}.admin-students-page--enrollment .admin-students-page__print-header{display:block;margin-bottom:1rem}.admin-students-page--enrollment .portal-table-wrap{box-shadow:none!important;border-color:#bbb!important}.admin-students-page--enrollment .portal-table th,.admin-students-page--enrollment .portal-table td{font-size:.8rem}.portal-academics-module:has(.portal-academics-transcript-sheet){max-width:none!important;margin:0!important;padding:0!important}.portal-academics-module:has(.portal-academics-transcript-sheet) .portal-academics-outlet{margin:0!important;padding:0!important;min-height:0!important}main.portal-page.portal-stack:has(.portal-academics-transcript-sheet){gap:0!important;margin:0!important;padding:0!important}.portal-academics-transcript-preview.portal-stack{gap:0!important;margin-bottom:0!important}.portal-academics-transcript-preview>*:not(.portal-academics-transcript-sheet){display:none!important}.portal-academics-transcript-sheet{box-shadow:none!important;border:none!important;border-radius:0!important;max-width:none;width:100%;padding:0}.portal-academics-transcript-sheet__terms .portal-table-wrap{box-shadow:none!important;border:1px solid #bbb!important;border-radius:0!important;margin-bottom:.65rem!important;background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.portal-academics-transcript-sheet__terms .portal-academics-transcript-sheet__term-block:last-child .portal-table-wrap{margin-bottom:0!important}.portal-academics-transcript-sheet__cumulative{margin-top:.85rem!important;padding-top:.5rem!important;page-break-inside:avoid}.portal-page{max-width:none!important}}.portal-registration-term-panel .portal-module-panel-heading{margin-bottom:.75rem}.portal-registration-term-status{margin:0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height)}.portal-registration-term-field{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;max-width:22rem}.portal-registration-term-label{font-size:var(--portal-body-font-size);font-weight:500;color:var(--portal-text)}.portal-registration-term-select{width:100%;min-height:2.25rem;box-sizing:border-box}.portal-registration-term-display{margin:0;font-size:1.0625rem;font-weight:700;color:var(--portal-text);line-height:1.4}.portal-registration-term-hint{margin:.625rem 0 0;font-size:.8125rem;line-height:1.4}.portal-registration-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15.5rem,1fr));gap:.875rem;margin:0;padding:0;list-style:none}.portal-registration-action-card{display:flex;flex-direction:column;align-items:flex-start;gap:.375rem;margin:0;padding:1.125rem 1.25rem;text-decoration:none;color:inherit;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);transition:background .12s ease,border-color .12s ease,box-shadow .12s ease;min-height:5.5rem;position:relative}.portal-registration-action-card:hover{background:#f8f9fb;border-color:var(--portal-border);box-shadow:0 2px 6px #1c233314}.portal-registration-action-card:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-registration-action-title{margin:0;padding-right:1.5rem;font-size:var(--portal-body-font-size);font-weight:600;letter-spacing:-.01em;line-height:1.35;color:var(--portal-text)}.portal-registration-action-desc{margin:0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-registration-action-arrow{position:absolute;top:1.125rem;right:1rem;font-size:1rem;font-weight:500;color:var(--portal-text-faint);line-height:1;transition:color .12s ease,transform .12s ease}.portal-registration-action-card:hover .portal-registration-action-arrow{color:var(--portal-accent);transform:translate(2px)}.portal-registration-placeholder{min-height:10rem;display:flex;align-items:center;justify-content:center;padding:1.25rem 1.5rem;text-align:center;font-size:.875rem;line-height:1.5;color:var(--portal-text-muted);background:#fafbfc;border:1px dashed var(--portal-border-subtle);border-radius:var(--portal-radius)}.portal-registration-search{display:flex;flex-wrap:wrap;gap:.625rem;align-items:stretch}.portal-registration-search-input{flex:1 1 12rem;min-width:0;height:2.5rem;box-sizing:border-box;padding:0 .875rem;font-size:.875rem;font-family:inherit;line-height:1.25;color:var(--portal-text);background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius)}.portal-registration-search-input::placeholder{color:var(--portal-text-faint)}.portal-registration-search-input:focus{outline:none;border-color:var(--portal-accent);box-shadow:0 0 0 3px var(--amu-red-ring)}.portal-plan-catalog-search__form{margin:0}.portal-plan-catalog-search__by-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem 1rem}.portal-plan-catalog-search__by-label{flex:0 0 auto;min-width:5.5rem;padding-top:.55rem;font-size:.875rem;font-weight:600;color:var(--portal-text-muted)}.portal-plan-catalog-search__stack{flex:1 1 18rem;min-width:0;display:flex;flex-direction:column;gap:.5rem}.portal-plan-catalog-combobox{position:relative;width:100%}.portal-plan-catalog-combobox__input{width:100%;box-sizing:border-box}.portal-plan-catalog-combobox__list{position:absolute;left:0;right:0;top:calc(100% + 2px);z-index:40;margin:0;padding:.25rem 0;list-style:none;max-height:min(14rem,42vh);overflow-y:auto;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow)}.portal-plan-catalog-combobox__option{display:block;width:100%;margin:0;padding:.45rem .75rem;text-align:left;font:inherit;font-size:.8125rem;line-height:1.35;color:var(--portal-text);background:none;border:none;cursor:pointer;word-break:break-word}.portal-plan-catalog-combobox__option:hover,.portal-plan-catalog-combobox__option:focus-visible{background:#eef5fb;outline:none}.portal-plan-catalog-combobox__option-code{font-weight:600}.portal-plan-catalog-combobox__option-meta{color:var(--portal-text-muted);font-weight:400}.portal-plan-catalog-combobox__empty{position:absolute;left:0;right:0;top:calc(100% + 2px);z-index:40;margin:0;padding:.5rem .75rem;font-size:.8125rem;color:var(--portal-text-muted);background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius)}.portal-plan-catalog-search__go-wrap{display:flex;justify-content:flex-end}.portal-plan-search-results{margin-top:1rem}.portal-registration-course-list{list-style:none;margin:.625rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.portal-registration-course-list-empty{margin-top:.625rem;padding:1.25rem .75rem;text-align:center;color:var(--portal-text-muted);border:1px dashed var(--portal-border-subtle);border-radius:var(--portal-radius)}.portal-registration-course-list__item{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);box-shadow:none;overflow:hidden}.portal-registration-course-list__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;margin:0;padding:.625rem .875rem;text-align:left;font:inherit;color:inherit;background:#fff;border:none;cursor:pointer}.portal-registration-course-list__header:hover{background:#fafbfc}.portal-registration-course-list__header:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--portal-accent),inset 0 0 0 4px var(--amu-red-ring)}.portal-registration-course-list__header--open{border-bottom:1px solid var(--portal-border-subtle);background:#f8f9fb}.portal-registration-course-list__header-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .625rem;min-width:0;flex:1 1 auto}.portal-registration-course-list__code{flex-shrink:0;font-size:.875rem;font-weight:700;letter-spacing:.02em;color:#6e1622}.portal-registration-course-list__titles{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;min-width:0}.portal-registration-course-list__title{font-size:.875rem;font-weight:600;color:var(--portal-text)}.portal-registration-course-list__title-alt{font-size:.8125rem;color:var(--portal-text-muted)}.portal-registration-course-list__meta{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .35rem;font-size:.75rem;color:var(--portal-text-muted)}.portal-registration-course-list__toggle{flex-shrink:0;font-size:.75rem;font-weight:600;color:#6e1622;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.portal-registration-course-list__panel{padding:.625rem .875rem .75rem;background:#fff}.portal-registration-course-list__details{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.5rem .875rem;margin:0 0 .625rem;padding:.5rem .625rem;border-radius:calc(var(--portal-radius) - 2px);background:#f8f9fb}.portal-registration-course-list__details>div{display:flex;flex-direction:column;gap:.1rem;min-width:0}.portal-registration-course-list__details dt{margin:0;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6e1622}.portal-registration-course-list__details dd{margin:0;font-size:.8125rem;color:var(--portal-text)}.portal-registration-course-list__sections-table{font-size:.8125rem}.portal-registration-course-list__sections-table th,.portal-registration-course-list__sections-table td{vertical-align:middle;padding:.4rem .5rem}.portal-registration-course-list__action-cell{white-space:nowrap}.portal-registration-course-list__action-cell .portal-btn--compact{min-height:1.75rem;padding:.2rem .55rem;font-size:.75rem}.portal-registration-course-list__status{display:inline-block;padding:.15rem .4rem;border-radius:999px;font-size:.6875rem;font-weight:600}.portal-registration-course-list__status--enrolled{background:#e8f5e9;color:#2e7d32}.portal-registration-course-list__status--bin{background:#fff3e0;color:#e65100}.portal-registration-course-list__status--closed{background:var(--portal-accent-soft);color:var(--portal-accent)}.portal-plan-search-results--empty{margin-top:1rem}.portal-registration-results-placeholder{min-height:14rem;margin-top:1rem}.portal-course-catalog{margin-top:1rem}.portal-course-catalog-groups{display:flex;flex-direction:column;gap:.5rem}.portal-course-catalog-group{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);box-shadow:var(--portal-shadow);overflow:hidden}.portal-course-catalog-group-header,.course-group-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;width:100%;margin:0;padding:.875rem 1rem;text-align:left;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1.3;color:var(--portal-text);background:#f8f9fb;border:none;border-bottom:1px solid var(--portal-border-subtle);cursor:pointer}.portal-course-catalog-group-header:hover,.course-group-header:hover{background:#f0f2f6}.portal-course-catalog-group-header:focus-visible,.course-group-header:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--portal-accent),inset 0 0 0 4px var(--amu-red-ring)}.portal-course-catalog-group-chevron{flex-shrink:0;width:1.25rem;font-size:.65rem;color:var(--portal-text-muted)}.portal-course-catalog-group-titles{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .75rem;flex:1 1 auto;min-width:0}.portal-course-catalog-group-prefix,.course-group-prefix{flex:0 0 2.875rem;width:2.875rem;box-sizing:border-box;font-size:inherit;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#6e1622}.portal-course-catalog-group-label,.course-group-title{font-size:inherit;font-weight:500;color:var(--portal-text-muted)}.portal-course-catalog-group-count{flex-shrink:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--portal-text-faint)}.portal-course-catalog-group-body{padding:0}.portal-course-search-col-expand{width:2.5rem;padding-left:.5rem!important;padding-right:.25rem!important;vertical-align:middle}.portal-course-search-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;min-height:2rem;margin:0;padding:0;font:inherit;color:var(--portal-text-muted);background:transparent;border:none;border-radius:var(--portal-radius);cursor:pointer}.portal-course-search-expand-btn:hover{color:var(--portal-text);background:#6e16220f}.portal-course-search-expand-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--portal-accent),0 0 0 4px var(--amu-red-ring)}.portal-course-search-expand-btn:disabled{opacity:.35;cursor:not-allowed}.portal-course-search-expand-btn .portal-course-catalog-group-chevron{width:auto}.portal-course-search-detail-row td{border-bottom:1px solid var(--portal-border-subtle)}.portal-course-search-sections-cell{padding:.75rem 1rem 1rem!important;background:#f3f4f7;text-align:left!important;vertical-align:top!important}.portal-course-search-sections-panel{max-width:100%}.portal-course-search-sections-status{margin:0;padding:.35rem 0 .15rem;font-size:.8125rem;color:var(--portal-text-muted)}.portal-course-search-sections-table-wrap{margin-top:.35rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);overflow:hidden}.portal-course-search-sections-table-wrap--schedule{margin-top:.25rem}.portal-course-search-sections-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.portal-table--course-sections{font-size:.8125rem}.portal-table--course-sections th,.portal-table--course-sections td{padding:.625rem .75rem}.portal-table--course-sections th{font-size:.625rem}.portal-table--course-section-schedule{width:100%;min-width:52rem;border-collapse:collapse;table-layout:auto}.portal-table--course-section-schedule thead th{white-space:nowrap;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-faint);background:#6e16220a;border-bottom:1px solid var(--portal-border-subtle)}.portal-table--course-section-schedule tbody td{font-size:.8125rem;color:var(--portal-text);border-bottom:1px solid var(--portal-border-subtle);vertical-align:middle}.portal-table--course-section-schedule tbody tr:last-child td{border-bottom:none}.portal-table--course-bin{min-width:58rem}.portal-course-bin-page .portal-course-bin-lede{margin-top:.35rem;margin-bottom:0;max-width:40rem}.portal-course-bin-card-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1.25rem}.portal-course-bin-card-header-text{flex:1;min-width:min(100%,12rem)}.portal-course-bin-card-header-actions{flex-shrink:0;align-self:flex-start}.portal-course-bin-course-cell{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:0;max-width:14rem}.portal-course-bin-course-code{font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:var(--portal-text)}.portal-course-bin-course-title{font-size:.75rem;line-height:1.35;color:var(--portal-text-muted)}.portal-course-section-schedule-col-action{width:1%;text-align:right;white-space:nowrap;padding-left:1rem!important}.portal-btn.portal-btn--course-search-bin{min-height:auto;padding:.12rem .4rem;font-size:.6875rem;font-weight:500;line-height:1.35;letter-spacing:.02em;color:#6e1622;background:transparent;border:1px solid rgba(110,22,34,.38);border-radius:3px;box-shadow:none}.portal-btn.portal-btn--course-search-bin:hover{background:#6e162212;border-color:#6e16228c;color:#6e1622}.portal-btn.portal-btn--course-search-bin:focus-visible{outline:2px solid #6e1622;outline-offset:1px}.portal-table-wrap--nested{margin-bottom:0;border:none;border-radius:0;box-shadow:none}.portal-table-wrap--nested .portal-table tr:last-child td{border-bottom:none}.portal-registration-status-list{display:flex;flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none}.portal-registration-status-item{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem 1.25rem;padding:1rem 1.125rem;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow)}.portal-registration-status-label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint);margin:0 0 .25rem}.portal-registration-status-value{margin:0;font-size:var(--portal-body-font-size);font-weight:500;line-height:1.35;color:var(--portal-text)}.portal-registration-status-note{margin:.25rem 0 0;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted);max-width:28rem}.portal-registration-status-badge{flex-shrink:0;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;border:1px solid var(--portal-border-subtle);background:var(--portal-accent-soft);color:var(--portal-accent)}.portal-registration-status-badge--neutral{background:#f0f2f5;color:var(--portal-text-muted);border-color:var(--portal-border-subtle)}.portal-text-link{color:var(--portal-accent);font-weight:500;text-decoration:underline;text-underline-offset:2px}.portal-text-link:hover{color:var(--portal-accent-hover)}.portal-inline-note--flush{margin-bottom:0}.portal-module-panel{background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);padding:1.375rem 1.5rem}.portal-module-panel-heading{margin:0 0 1rem;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--portal-text-faint)}.portal-module-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.portal-module-list-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;padding:.75rem 0;border-bottom:1px solid var(--portal-border-subtle);font-size:var(--portal-body-font-size);line-height:1.4;color:var(--portal-text)}.portal-module-list-item:first-child{padding-top:0}.portal-module-list-item:last-child{border-bottom:none;padding-bottom:0}.portal-module-list-label{font-weight:500}.portal-module-list-badge{flex-shrink:0;font-size:.625rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--portal-text-faint);padding:.2rem .45rem;border-radius:3px;background:#f0f2f5;border:1px solid var(--portal-border-subtle)}@media (max-width: 768px){.portal-page-title{font-size:1.25rem}.portal-module-title{font-size:.9375rem}.portal-module-subtitle{font-size:var(--portal-body-font-size)}.portal-module-panel{padding:1rem 1.125rem}}.portal-page-lede{margin:0 0 var(--portal-space-lede-bottom);max-width:42rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-section-heading{margin:0 0 .375rem;font-size:var(--portal-body-font-size);font-weight:600;color:var(--portal-text);letter-spacing:-.01em;line-height:1.35}.portal-section-heading--brand{color:var(--amu-red-dark)}.portal-inline-note{margin:0 0 var(--portal-space-section);max-width:42rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-plan-terms{margin:0 0 var(--portal-space-section);padding:1rem 1.125rem;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow)}.portal-plan-terms-list{margin:.5rem 0 0;padding-left:1.25rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted)}.portal-plan-terms-list li{margin-bottom:.35rem}.portal-plan-terms-list li:last-child{margin-bottom:0}.portal-card{background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);padding:1.125rem 1.25rem}.portal-card-label{margin:0 0 .25rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--portal-text-faint)}.portal-card-value{margin:0;font-size:var(--portal-body-font-size);font-weight:500;color:var(--portal-text);line-height:1.35}.portal-card-note{margin:.5rem 0 0;font-size:var(--portal-body-font-size);color:var(--portal-text-muted);line-height:var(--portal-body-line-height)}.portal-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:var(--portal-space-section)}@media (max-width: 960px){.portal-grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.portal-grid-4{grid-template-columns:1fr}}.portal-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.portal-actions--spaced{margin-top:var(--portal-space-section);padding-top:1.5rem;border-top:1px solid var(--portal-border-subtle)}.portal-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.375rem;padding:0 1.125rem;font-size:.875rem;font-weight:600;font-family:inherit;line-height:1.2;text-decoration:none;border-radius:var(--portal-radius);border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.portal-btn:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-profile-hero__actions .portal-btn.portal-profile-hero__action-btn{justify-content:flex-start;text-align:left}.portal-btn--primary{background:var(--portal-accent);color:#fff;border-color:var(--portal-accent)}.portal-btn--primary:hover{background:var(--portal-accent-hover);border-color:var(--portal-accent-hover);color:#fff}.portal-btn--secondary{background:var(--portal-surface);color:var(--portal-accent);border-color:var(--portal-border)}.portal-btn--secondary:hover{background:var(--portal-accent-soft);border-color:#c5ced9;color:var(--portal-accent-hover)}.portal-btn.portal-btn--admin-danger{color:var(--amu-red);border-color:#8c1d2c6b;background:var(--portal-surface)}.portal-btn.portal-btn--admin-danger:hover:not(:disabled){background:var(--amu-red-ring);border-color:var(--amu-red);color:var(--amu-red-dark)}.portal-btn.portal-btn--admin-danger:disabled{opacity:.55}.portal-stack{display:flex;flex-direction:column;gap:1rem;margin-bottom:var(--portal-space-section)}.portal-stack>.portal-section-heading:first-child{margin-bottom:0}.portal-stack.portal-account-summary{margin-bottom:var(--portal-space-section)}.portal-account-summary .portal-row:has(+.portal-payment-total){border-bottom:none}.portal-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1.5rem;padding-bottom:.875rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-row:last-child{padding-bottom:0;border-bottom:none}.portal-row dt{margin:0;font-size:var(--portal-body-font-size);color:var(--portal-text-muted);font-weight:500}.portal-row dd{margin:0;font-size:var(--portal-body-font-size);font-weight:500;color:var(--portal-text);text-align:right}.portal-payment-total{margin-top:.25rem;padding-top:1rem;border-top:2px solid var(--portal-border)}.portal-payment-total dt,.portal-payment-total dd{font-size:1rem}.portal-payment-total dd{color:var(--portal-accent)}.portal-account-summary__balance dd{font-size:1.125rem;font-weight:700}.portal-account-summary .portal-account-summary__divider{margin-top:.25rem;padding-top:.75rem;border-top:2px solid var(--portal-border-subtle)}.portal-table-cell-capitalize{text-transform:capitalize}.portal-row--fee-warning dd{color:var(--amu-red);font-weight:500}.portal-table-wrap{overflow-x:auto;margin-bottom:var(--portal-space-section);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);box-shadow:var(--portal-shadow)}.portal-table{width:100%;border-collapse:collapse;font-size:var(--portal-body-font-size)}.portal-table th,.portal-table td{padding:.8125rem 1rem;text-align:left;vertical-align:middle;border-bottom:1px solid var(--portal-border-subtle)}.portal-table th{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--portal-text-faint);background:#f8f9fb}.portal-table--courses th:nth-child(2),.portal-table--courses td:nth-child(2),.portal-table--courses th:nth-child(3),.portal-table--courses td:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}.portal-table--courses tfoot tr{border-top:2px solid var(--portal-border);font-weight:600}.portal-table--courses tfoot th,.portal-table--courses tfoot td{background:#f8f9fb;border-bottom:none}.portal-table tr:last-child td{border-bottom:none}.portal-table td:last-child,.portal-table th:last-child{text-align:right}.portal-data-table th,.portal-data-table td,.portal-table.portal-data-table th,.portal-table.portal-data-table td,.portal-course-catalog .portal-table-wrap .portal-table.portal-table--courses th,.portal-course-catalog .portal-table-wrap .portal-table.portal-table--courses td{text-align:center;vertical-align:middle}.portal-data-table th,.portal-table.portal-data-table th,.portal-course-catalog .portal-table-wrap .portal-table.portal-table--courses th{font-weight:600;letter-spacing:.5px}.portal-table--plan th:nth-child(3),.portal-table--plan td:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}.portal-table--activity th:nth-child(3),.portal-table--activity th:nth-child(4),.portal-table--activity td:nth-child(3),.portal-table--activity td:nth-child(4){text-align:right;font-variant-numeric:tabular-nums}.portal-table--activity td:nth-child(3),.portal-table--activity td:nth-child(4){color:var(--portal-text-muted)}.portal-table--activity td:nth-child(5){font-variant-numeric:tabular-nums;font-weight:600;color:var(--portal-text)}.portal-table--statements th:nth-child(4),.portal-table--statements td:nth-child(4),.portal-table--statements th:nth-child(5),.portal-table--statements td:nth-child(5){text-align:right;white-space:nowrap;vertical-align:middle}.portal-table--statements td:nth-child(2){color:var(--portal-text)}.portal-btn--compact{min-height:2rem;padding:.3rem .65rem;font-size:.8125rem}.portal-btn--tiny{min-height:1.75rem;padding:.2rem .45rem;font-size:.75rem}.portal-statements-badge{display:inline-block;margin-left:.35rem;padding:.12rem .4rem;font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;border-radius:3px}.portal-statements-badge--new{background:var(--portal-accent-soft);color:var(--portal-accent)}.portal-statements-badge--updated{background:#eef0f3;color:var(--portal-text-muted)}.portal-status{display:inline-block;padding:.2rem .5rem;font-size:.75rem;font-weight:600;border-radius:4px;background:var(--portal-accent-soft);color:var(--portal-accent)}.portal-status--paid{background:#e6f0e8;color:#1e5a2f}.portal-status--due{background:#f5efe6;color:#6b4a1a}.portal-status--scheduled{background:#e8eef6;color:#1e4a6e}.portal-status--upcoming{background:#eef0f3;color:#4a5568}.portal-status--pending{background:#f3f4f6;color:#5c6578}.portal-note{margin:0 0 var(--portal-space-section);padding:1rem 1.125rem;font-size:var(--portal-body-font-size);line-height:var(--portal-body-line-height);color:var(--portal-text-muted);background:#f8f9fb;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);border-left:3px solid var(--portal-accent)}.portal-note strong{color:var(--portal-text);font-weight:600}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.portal-shell--login{display:flex;flex-direction:column;min-height:100vh;background:#f2c300;--portal-login-column-width: 420px}.portal-login-body{flex:1;display:flex;align-items:center;justify-content:center;padding:clamp(1.25rem,4vw,2rem) clamp(1rem,4vw,1.25rem)}.portal-login-stack{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:var(--portal-login-column-width);gap:22px}.portal-login-logo{display:block;width:100%;height:auto;margin:0;object-fit:contain;flex-shrink:0}.portal-login-card{width:100%;box-sizing:border-box;margin:0;padding:32px 40px;background:var(--amu-card);border:1px solid var(--border-gray);border-radius:10px;border-top:4px solid var(--amu-red);box-shadow:0 4px 24px #1c233314,0 1px 3px #1c23330f}.portal-login-card-institution{margin:-12px 0 22px;padding:0;font-size:14px;font-weight:500;line-height:1.35;text-align:center;color:#666}.portal-login-card-title{margin:0 0 1.125rem;padding:0;font-family:Cinzel,Times New Roman,Times,serif;font-size:17px;font-weight:600;letter-spacing:.3px;line-height:1.25;text-align:center;color:var(--text-dark);white-space:nowrap;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.portal-login-card-intro{margin:0 0 1.125rem;font-size:.875rem;line-height:1.5;text-align:center;color:#666}.portal-login-back-link-wrap{margin:1rem 0 0;text-align:center}.portal-login-mode-switch{display:flex;justify-content:center;margin:12px 0 0}.portal-login-mode-alt{margin:0;padding:0;border:none;background:none;font-family:inherit;font-size:12px;font-weight:500;line-height:1.45;color:#888;cursor:pointer;transition:color .15s ease}.portal-login-mode-alt:hover{color:var(--amu-red);text-decoration:underline}.portal-login-mode-alt:focus-visible{outline:2px solid rgba(139,0,21,.35);outline-offset:2px;border-radius:2px}.portal-login-secondary-btn{width:100%;min-height:2.375rem;padding:0 .875rem;border:1px solid #cccccc;border-radius:6px;background:var(--amu-card);font-family:inherit;font-size:.875rem;font-weight:600;color:var(--text-dark);cursor:pointer}.portal-login-secondary-btn:hover:not(:disabled){border-color:#999}.portal-login-secondary-btn:disabled{opacity:.6;cursor:not-allowed}.portal-login-notice{margin:0 0 .75rem;font-size:.875rem;line-height:1.4;color:#2e7d32}.portal-login-error{margin:0 0 .75rem;font-size:.875rem;line-height:1.4;color:#6e1622}@media (max-width: 520px){.portal-login-card-title{font-size:clamp(13px,3.4vw,17px)}}@media (max-width: 480px){.portal-login-card-title{white-space:normal;font-size:clamp(13px,3.8vw,16px);line-height:1.3;overflow-wrap:break-word}}.portal-login-fields{display:flex;flex-direction:column;gap:16px}.portal-login-field{display:flex;flex-direction:column;gap:6px}.portal-login-label{font-size:13px;font-weight:500;color:#555}.portal-login-input{width:100%;height:42px;box-sizing:border-box;padding:0 12px;font-size:14px;font-family:inherit;line-height:1.25;color:var(--text-dark);background:var(--amu-card);border:1px solid #cccccc;border-radius:6px}.portal-login-password-wrap{position:relative;width:100%}.portal-login-input.portal-login-input--with-toggle{padding-right:40px}.portal-login-password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;margin:0;color:#555;background:transparent;border:none;border-radius:4px;cursor:pointer}.portal-login-password-toggle:focus-visible{outline:2px solid var(--amu-red);outline-offset:2px}.portal-login-input:focus{outline:none;border-color:var(--amu-red);box-shadow:0 0 0 3px var(--amu-red-ring)}.portal-login-submit{width:100%;height:44px;margin-top:22px;padding:0 16px;font-size:15px;font-weight:600;font-family:inherit;line-height:1.2;color:#fff;cursor:pointer;background:var(--amu-red);border:none;border-radius:6px}.portal-login-submit:hover{background:var(--amu-red-dark)}.portal-login-submit:focus-visible{outline:2px solid var(--amu-red);outline-offset:2px}.portal-login-help-links{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:.5rem .65rem;margin:14px 0 0;font-size:13px;line-height:1.45;white-space:nowrap}@media (max-width: 360px){.portal-login-help-links{flex-wrap:wrap;white-space:normal;row-gap:.35rem}}.portal-login-help-link{color:var(--amu-red);text-decoration:none}.portal-login-help-link:hover{text-decoration:underline}.portal-login-help-link:focus-visible{outline:2px solid var(--amu-red);outline-offset:2px;border-radius:2px}.portal-login-help-sep{color:#c4c4c4;font-weight:400;-webkit-user-select:none;user-select:none}.portal-site-footer{flex-shrink:0;margin-top:auto;padding:.375rem 0 max(.75rem,env(safe-area-inset-bottom,0px));text-align:center}.portal-site-footer__nav{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.125rem 0;line-height:1.5}.portal-site-footer__nav-item{display:inline-flex;align-items:center}.portal-site-footer__sep{margin:0 .5rem;color:var(--portal-accent-soft);-webkit-user-select:none;user-select:none}.portal-site-footer__link{font-size:.75rem;font-weight:500;color:var(--portal-accent);text-decoration:none;border-radius:3px}.portal-site-footer__link:hover{color:var(--portal-accent-hover);text-decoration:underline}.portal-site-footer__link:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-site-footer__copyright{margin:.35rem 0 0;font-size:.6875rem;line-height:1.5;color:var(--portal-text-faint)}.portal-login-footer__nav{margin-bottom:.15rem}.portal-login-footer__nav .portal-site-footer__link{font-size:.8125rem}.portal-shell--login .portal-login-body{padding-bottom:clamp(1.5rem,5vw,2.75rem)}.portal-login-footer{flex-shrink:0;width:100%;box-sizing:border-box;padding:clamp(.35rem,1.5vw,.65rem) clamp(1rem,4vw,1.5rem) max(1.25rem,calc(.65rem + env(safe-area-inset-bottom,0px)));text-align:center}.portal-login-footer__inner{max-width:22rem;margin:0 auto}.portal-login-footer__powered{margin:0;font-size:.8125rem;font-weight:600;letter-spacing:.03em;line-height:1.5;color:var(--amu-red)}.portal-login-footer__accent{width:2.75rem;height:2px;margin:.6rem auto 0;background:var(--amu-gold);border-radius:1px;opacity:.92}.portal-login-footer__copyright{margin:.55rem 0 0;font-size:.8125rem;font-weight:500;line-height:1.55;color:var(--text-dark)}.portal-login-footer__detail{margin:.4rem 0 0;font-size:.8125rem;font-weight:400;line-height:1.55;color:#4d4d4d}.portal-login-footer__tel{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;color:inherit;text-decoration:none;border-radius:4px}.portal-login-footer__tel:hover{color:var(--amu-red);text-decoration:underline}.portal-login-footer__tel:focus-visible{outline:2px solid var(--amu-red);outline-offset:2px}.portal-login-footer__tel-icon{flex-shrink:0;opacity:.9}.portal-dashboard{display:flex;flex-direction:column;flex:1 1 auto;width:100%;max-width:none;margin:0;box-sizing:border-box;min-width:0;min-height:0}.portal-shell--dashboard-home .portal-dashboard{flex:1 1 auto;min-height:0}.portal-dashboard-hero{display:flex;flex-direction:column;align-items:flex-start;gap:.375rem;width:100%;box-sizing:border-box;flex-shrink:0;margin-bottom:1.125rem;padding:.25rem 0 .75rem;border-bottom:1px solid var(--portal-border-subtle)}.portal-dashboard-hero__title-row{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:.5rem;width:100%;min-width:0}.portal-dashboard-hero-title{margin:0;min-width:0;flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:.35em .5em;line-height:1.2;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:clamp(1.375rem,2.35vw,1.875rem);font-weight:700}@media (max-width: 480px){.portal-dashboard-hero__title-row{align-items:center}}.portal-dashboard-hero-welcome{color:#6e1622;font-weight:700}.portal-dashboard-hero-name{color:#1f2937;font-weight:700;letter-spacing:-.015em}.portal-dashboard-hero-date{margin:0;display:block;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:clamp(.875rem,1.2vw,1rem);font-weight:500;line-height:1.35;letter-spacing:-.01em;color:#6b7280;text-align:left}.portal-dashboard-current-term-card{margin:0;padding:1rem;max-width:none;display:flex;flex-direction:column;min-height:0}.portal-dashboard-current-term-card--muted{opacity:.92}.portal-dashboard-current-term-card__title{margin:0 0 .5rem;font-family:Cinzel,Times New Roman,Times,serif;font-size:1rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--amu-red-dark)}.portal-dashboard-current-term-card__dl{margin:0;display:grid;grid-template-rows:repeat(4,minmax(0,auto));gap:0;flex:0 0 auto;min-height:0}.portal-dashboard-current-term-card__row{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(0,auto);gap:.5rem .75rem;align-items:center;font-size:.9375rem;line-height:var(--portal-dashboard-sidebar-row-line-height, 1.45);min-height:0;min-block-size:var(--portal-dashboard-sidebar-row-min-height, 3rem);padding:var(--portal-dashboard-sidebar-row-py, .75rem) 0;border-bottom:1px solid color-mix(in srgb,var(--portal-border-subtle) 80%,transparent)}.portal-dashboard-current-term-card__row dt{margin:0;font-weight:600;color:var(--amu-red-dark)}.portal-dashboard-current-term-card__row dd{margin:0;color:#1f2937;text-align:right;font-weight:500}.portal-dashboard-current-term-card__row:last-child{border-bottom:none}@media (max-width: 480px){.portal-dashboard-current-term-card__row{grid-template-columns:1fr;gap:.15rem}}.portal-dashboard-home-grid{display:grid;flex:1 1 auto;width:100%;grid-template-columns:minmax(16.75rem,18.5rem) minmax(0,1fr);gap:1rem;align-items:stretch;min-height:0}.portal-shell--dashboard-home .portal-dashboard-home-grid{flex:1 1 auto;min-height:0}.portal-dashboard-home-stack{display:flex;flex-direction:column;gap:1.5rem}.portal-dashboard-home-primary,.portal-dashboard-home-aside{display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;align-self:stretch;height:auto}.portal-dashboard-home-primary{gap:1rem}@media (min-width: 1025px){.portal-dashboard{min-height:0}.portal-dashboard-home-grid{gap:1.125rem;align-items:stretch;min-height:0}.portal-dashboard-home-primary{display:flex;gap:1.125rem;min-height:0;height:100%}.portal-dashboard-home-aside{height:100%;min-height:0}.portal-dashboard-home-primary>.portal-dashboard-sidebar-card,.portal-dashboard-home-primary>.portal-dashboard-current-term-card,.portal-dashboard-home-primary>.portal-dashboard-services,.portal-dashboard-home-aside>.portal-dashboard-courses{min-height:0;height:100%}.portal-dashboard-current-term-card__dl{grid-template-rows:repeat(4,minmax(0,auto));flex:0 0 auto}.portal-dashboard-hero{margin-bottom:.875rem;padding-top:.15rem;padding-bottom:.55rem}}.portal-dashboard-home-primary>.portal-dashboard-services{order:1;width:100%;flex:0 0 auto;height:auto;box-sizing:border-box}.portal-dashboard-home-primary>.portal-dashboard-current-term-card{order:2;width:100%;flex:0 0 auto;height:auto;box-sizing:border-box}.portal-dashboard-home-aside>.portal-dashboard-courses{width:100%;height:100%;flex:1 1 auto;min-height:0;box-sizing:border-box}.portal-dashboard-home-primary>.portal-dashboard-sidebar-card{width:100%;height:100%;min-height:0;box-sizing:border-box}.portal-dashboard-home-primary>.portal-dashboard-secondary-card,.portal-dashboard-home-aside>.portal-dashboard-secondary-card{width:100%;height:100%;flex:1 1 auto;min-height:0}.portal-dashboard-card-panel-title{margin:0;font-family:Cinzel,Times New Roman,Times,serif;font-size:1rem;font-weight:700;letter-spacing:.05em;line-height:1.25;text-transform:uppercase;color:#6e1622}.portal-dashboard-section-lede{margin:.4rem 0 0;font-size:.8125rem;line-height:1.5;color:var(--portal-text-muted);max-width:36rem}.portal-dashboard-services{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;padding:0;overflow:hidden;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow)}.portal-dashboard-sidebar-card{--portal-dashboard-sidebar-row-py: .55rem;--portal-dashboard-sidebar-row-line-height: 1.35;--portal-dashboard-sidebar-row-min-height: 2.5rem;display:flex;flex-direction:column;width:100%;min-height:0;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);padding:.75rem .875rem;gap:.75rem}.portal-dashboard-sidebar-section{display:flex;flex-direction:column;min-height:0}@media (min-width: 1025px){.portal-dashboard-sidebar-card .portal-dashboard-sidebar-section:first-of-type{flex:1 1 auto}.portal-dashboard-sidebar-card .portal-dashboard-sidebar-section:last-of-type{flex:0 0 auto}}.portal-dashboard-sidebar-section .portal-dashboard-card-panel-title{margin:0 0 .5rem;font-size:1rem;letter-spacing:.05em;color:var(--amu-red-dark)}.portal-dashboard-sidebar-section .portal-dashboard-service-list{padding:.125rem 0 0}.portal-dashboard-sidebar-divider{height:1px;width:100%;background:color-mix(in srgb,var(--portal-border-subtle) 85%,transparent)}.portal-dashboard-card-panel-head{flex-shrink:0;box-sizing:border-box;min-height:2.875rem;height:2.875rem;padding:0 .875rem;margin:0;display:flex;align-items:center;border-bottom:none;background:linear-gradient(180deg,#fbfbfc 0%,var(--portal-surface) 100%);text-align:left}.portal-dashboard-services-head{justify-content:flex-start}.portal-dashboard-courses-head{justify-content:space-between;gap:.75rem 1rem;flex-wrap:nowrap;min-width:0}.portal-dashboard-courses-head-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:0;min-width:0;height:1.75rem;margin-right:.125rem}.portal-dashboard-courses-head-actions__rule{flex:0 0 auto;width:1px;height:.875rem;margin:0 .75rem;background:color-mix(in srgb,var(--portal-border-subtle) 90%,#9ca3af)}.portal-dashboard-courses-head-action{margin:0;box-sizing:border-box;display:inline-flex;align-items:center;gap:.375rem;height:1.75rem;padding:0;flex-shrink:0;font-family:inherit;font-size:.8125rem;font-weight:500;line-height:1;letter-spacing:-.01em;border:none;background:transparent;cursor:pointer;white-space:nowrap;transition:color .15s ease,opacity .15s ease}.portal-dashboard-courses-head-action:focus-visible{outline:2px solid var(--amu-red-ring);outline-offset:3px;border-radius:4px}.portal-dashboard-courses-head-action:disabled{opacity:.42;cursor:not-allowed}.portal-dashboard-courses-head-action--gcal{color:#6b7280}.portal-dashboard-courses-head-action--gcal:hover:not(:disabled){color:#374151}.portal-dashboard-courses-head-action--export{color:#6b7280;font-weight:600}.portal-dashboard-courses-head-action--export:hover:not(:disabled){color:#374151}.portal-dashboard-courses-head-action--export .portal-dashboard-courses-head-action__icon{color:var(--amu-red)}.portal-dashboard-courses-head-action--export:hover:not(:disabled) .portal-dashboard-courses-head-action__icon{color:var(--amu-red-dark)}.portal-dashboard-courses-head-action__icon{width:.9375rem;height:.9375rem;flex-shrink:0;display:block}.portal-dashboard-courses-head-action__gcal-mark{height:1.125rem;width:auto;max-width:7.5rem;object-fit:contain;object-position:left center;display:block;flex-shrink:0}.portal-dashboard-courses-head-term{flex:0 1 auto;min-width:0}.portal-dashboard-courses-head-term-select{min-width:7.5rem;max-width:11rem;padding:.28rem .5rem;font-size:.8125rem;line-height:1.3}.portal-dashboard-gcal-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1.25rem;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#0f172a73}.portal-dashboard-gcal-modal{box-sizing:border-box;width:min(420px,calc(100vw - 2.5rem));max-height:min(85vh,32rem);overflow:auto;padding:1.15rem 1.25rem 1.25rem;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:var(--portal-surface);box-shadow:var(--portal-shadow),0 12px 32px #0f172a1a}.portal-dashboard-gcal-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.portal-dashboard-gcal-modal__title{margin:0;font-size:.9375rem;font-weight:700;line-height:1.35;color:var(--portal-text);letter-spacing:-.01em}.portal-dashboard-gcal-modal__close{flex-shrink:0;margin:-.2rem -.15rem 0 0;padding:.15rem .45rem;font:inherit;font-size:1.35rem;line-height:1;color:var(--portal-text-muted);background:none;border:none;border-radius:4px;cursor:pointer}.portal-dashboard-gcal-modal__close:hover{color:var(--portal-text)}.portal-dashboard-gcal-modal__close:focus-visible{outline:2px solid var(--amu-red-dark);outline-offset:2px}.portal-dashboard-gcal-modal__lede{margin:0 0 .85rem;font-size:.75rem;line-height:1.45;color:var(--portal-text-muted)}.portal-dashboard-gcal-modal__list{margin:0;padding:0;list-style:none}.portal-dashboard-gcal-modal__row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem .75rem;padding:.55rem 0;border-top:1px solid color-mix(in srgb,var(--portal-border-subtle) 80%,transparent);font-size:.8125rem;line-height:1.4}.portal-dashboard-gcal-modal__row:first-child{border-top:none;padding-top:0}.portal-dashboard-gcal-modal__course{flex:1 1 10rem;min-width:0;color:var(--portal-text)}.portal-dashboard-gcal-modal__action{flex-shrink:0;font-size:.75rem}.portal-dashboard-gcal-block-link.portal-text-link{margin-top:.125rem;max-width:100%;font-size:.5625rem;font-weight:500;line-height:1.2;text-decoration:none;opacity:.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-dashboard-courses-timetable-block:has(.portal-dashboard-gcal-block-link):hover .portal-dashboard-gcal-block-link{opacity:1;text-decoration:underline;text-underline-offset:2px}.portal-dashboard-gcal-block-link--mobile.portal-text-link{flex-basis:100%;margin-top:.125rem;font-size:.6875rem;opacity:.85;white-space:normal}.portal-dashboard-courses-week-panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;padding:0}.portal-dashboard-courses-week-status{margin:.5rem .875rem .25rem;font-size:.8125rem;line-height:1.45;flex-shrink:0;min-height:1.1875rem}.portal-dashboard-card-panel-divider{flex-shrink:0;height:0;margin:0;padding:0;border:0;border-top:1px solid var(--portal-border-subtle)}.portal-dashboard-courses-term-bar{flex-shrink:0;padding:.625rem 1rem .75rem;border-bottom:1px solid var(--portal-border-subtle);background:var(--portal-surface)}.portal-dashboard-courses-term-select-wrap{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.portal-dashboard-courses-term-select{min-width:10rem;max-width:100%}.portal-dashboard-courses-week-empty{margin-top:.75rem;padding:1rem 1.125rem;border-radius:var(--portal-radius-md, 8px);border:1px solid var(--portal-border, rgba(0, 0, 0, .08));background:var(--portal-surface-subtle, rgba(0, 0, 0, .03))}.portal-dashboard-courses-week-empty-title{margin:0 0 .375rem;font-size:.9375rem;font-weight:600;color:var(--portal-text)}.portal-dashboard-courses-week-empty-text{margin:0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.portal-dashboard-courses-loading{padding:1.25rem 1.5rem 1.5rem;font-size:.875rem;color:var(--portal-text-muted)}.portal-dashboard-courses-week-placeholder{margin:0 0 .75rem;padding:0 1.5rem;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.portal-timetable-lang-head{display:flex;justify-content:flex-end;align-items:flex-end;flex-wrap:wrap;gap:.5rem;margin:0 0 .35rem;min-height:0}.portal-offered-timetable__title-row{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:.75rem 1rem;margin:0 0 .25rem;min-width:0}.portal-offered-timetable__title-row .portal-section-heading{margin:0}.portal-offered-timetable__schedule-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:0 0 .75rem;padding:.5rem .75rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius-sm, 6px);background:#00000008}.portal-offered-timetable__schedule-filters-label{flex-shrink:0;font-size:.8125rem;font-weight:600;color:var(--portal-text-muted)}.portal-offered-timetable__schedule-filter-options{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1.25rem}.portal-offered-timetable__schedule-filter-item{display:inline-flex;align-items:center;gap:.35rem;font-size:.8125rem;cursor:pointer;-webkit-user-select:none;user-select:none}.portal-offered-timetable__schedule-filter-item input{margin:0;cursor:pointer}.portal-dashboard-service-list{list-style:none;margin:0;padding:.375rem 0;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;gap:0;justify-content:flex-start}.portal-dashboard-service-list>li{width:100%}.portal-dashboard-service-tile{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:100%;box-sizing:border-box;min-height:0;min-block-size:var(--portal-dashboard-sidebar-row-min-height, 3rem);margin:0;padding:var(--portal-dashboard-sidebar-row-py, .75rem) .75rem;text-decoration:none;color:#333;background:transparent;border:none;border-left:3px solid transparent;border-radius:0;box-shadow:none;transition:background .12s ease,color .12s ease,border-color .12s ease}.portal-dashboard-service-tile-leading{display:flex;align-items:center;flex:1 1 auto;min-width:0;gap:.75rem}.portal-dashboard-service-tile:hover{background:#f5f5f5}.portal-dashboard-service-tile[aria-current=page]{background:#f9eaea;border-left-color:#a6192e;color:#a6192e}.portal-dashboard-service-tile[aria-current=page]:hover{background:#f5e0e0}.portal-dashboard-service-tile[aria-current=page] .portal-dashboard-service-tile-arrow{color:#a6192e}.portal-dashboard-service-tile:focus-visible{outline:2px solid color-mix(in srgb,#a6192e 55%,transparent);outline-offset:2px}.portal-dashboard-service-tile:active{background:#f0f0f0}.portal-dashboard-service-tile[aria-current=page]:active{background:#f3e0e0}.portal-dashboard-service-tile-icon{display:flex;align-items:center;justify-content:flex-start;flex-shrink:0;width:1.5rem;border-radius:0;background:transparent;box-shadow:none}.portal-dashboard-service-icon-root{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:currentColor;transform:translateY(.0625rem)}.portal-dashboard-service-tile .portal-dashboard-service-icon-root{color:#a6192e}.portal-dashboard-service-icon-root svg{display:block;width:100%;height:100%}.portal-dashboard-service-tile-body{display:flex;flex-direction:column;min-width:0;justify-content:center;flex:0 1 auto}.portal-dashboard-service-tile-title{font-family:inherit;font-size:1.0625rem;font-weight:600;letter-spacing:-.015em;line-height:1.3;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-dashboard-service-tile-arrow{flex-shrink:0;display:flex;align-items:center;align-self:stretch;margin-left:.75rem;font-size:1rem;line-height:1.25;color:#999;transition:color .12s ease,transform .12s ease}.portal-dashboard-service-tile:hover .portal-dashboard-service-tile-arrow{color:#666;transform:translate(1px)}.portal-dashboard-courses{display:flex;flex-direction:column;width:100%;height:100%;box-sizing:border-box;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);padding:0;overflow:hidden}.portal-dashboard-courses-timetable-wrap{display:flex;flex-direction:column;flex:1 1 auto;width:100%;min-height:0;align-items:stretch;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.75rem .875rem 1rem}@media (max-width: 699px){.portal-dashboard-courses-timetable-wrap{overflow-x:visible;padding-left:1.125rem;padding-right:1.125rem}}.portal-dashboard-courses-timetable-mobile{display:none;border:1px solid color-mix(in srgb,var(--portal-border-subtle) 90%,var(--portal-surface));border-radius:.375rem;background:var(--portal-surface);padding:1rem 1.125rem 1.25rem}.portal-dashboard-courses-timetable-mobile-day+.portal-dashboard-courses-timetable-mobile-day{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid color-mix(in srgb,var(--portal-border-subtle) 88%,transparent)}.portal-dashboard-courses-timetable-mobile-day-title{margin:0 0 .625rem;font-size:.9375rem;font-weight:700;line-height:1.3;color:var(--portal-text);letter-spacing:-.01em}.portal-dashboard-courses-timetable-mobile-slots{margin:0;padding:0;list-style:none}.portal-dashboard-courses-timetable-mobile-slot{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;padding:.5rem 0;font-size:.875rem;line-height:1.45;color:var(--portal-text);border-bottom:1px solid color-mix(in srgb,var(--portal-border-subtle) 70%,transparent)}.portal-dashboard-courses-timetable-mobile-slot:last-child{border-bottom:none;padding-bottom:0}.portal-dashboard-courses-timetable-mobile-time{flex:0 0 auto;font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--portal-text-muted)}.portal-dashboard-courses-timetable-mobile-course{flex:1 1 auto;min-width:0;width:100%;overflow-wrap:anywhere}.portal-dashboard-courses-timetable-mobile-code{font-weight:700;font-variant-numeric:tabular-nums;color:var(--portal-accent)}.portal-dashboard-courses-timetable-mobile-title{font-weight:500;color:var(--portal-text)}.portal-dashboard-courses-timetable-mobile-empty{margin:0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}@media (max-width: 699px){.portal-dashboard-courses-timetable-mobile{display:block}.portal-dashboard-courses-timetable--grid{display:none!important}}@media (min-width: 700px){.portal-dashboard-courses-timetable-mobile{display:none!important}}.portal-dashboard-courses-timetable{--portal-timetable-hour-bands: 14;--portal-timetable-hour-row-min: 1.75rem;--portal-timetable-dayhead-height: 1.875rem;--portal-timetable-track-height: calc(100% - var(--portal-timetable-dayhead-height));--portal-timetable-time-col: 3.625rem;--portal-timetable-day-min: 6.25rem;--portal-timetable-day-count: 7;width:100%;height:100%;min-width:calc(var(--portal-timetable-time-col) + (var(--portal-timetable-day-count) * var(--portal-timetable-day-min)));max-height:none;min-height:calc(var(--portal-timetable-dayhead-height) + (var(--portal-timetable-hour-bands) * var(--portal-timetable-hour-row-min)));flex:1 1 auto;align-self:stretch;display:grid;grid-template-columns:var(--portal-timetable-time-col) repeat(7,minmax(0,1fr));grid-template-rows:var(--portal-timetable-dayhead-height) minmax(0,1fr);gap:0;border:1px solid color-mix(in srgb,var(--portal-border-subtle) 90%,var(--portal-surface));border-radius:.375rem;overflow:hidden;background:var(--portal-surface)}.portal-dashboard-courses-timetable--grid{min-block-size:100%}.portal-dashboard-courses-timetable-corner{grid-column:1;grid-row:1;background:#f4f5f8;border-right:1px solid color-mix(in srgb,var(--portal-border-subtle) 85%,transparent);border-bottom:1px solid color-mix(in srgb,var(--portal-border-subtle) 85%,transparent)}.portal-dashboard-courses-timetable-dayhead{min-width:0;padding:0 .375rem;height:var(--portal-timetable-dayhead-height);display:flex;align-items:center;justify-content:center;font-size:.5625rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--portal-text-muted);background:#f4f5f8;border-right:1px solid color-mix(in srgb,var(--portal-border-subtle) 85%,transparent);border-bottom:1px solid color-mix(in srgb,var(--portal-border-subtle) 85%,transparent)}.portal-dashboard-courses-timetable-dayhead:last-of-type{border-right:none}.portal-dashboard-courses-timetable-timecol{grid-column:1;grid-row:2;display:grid;grid-template-rows:repeat(var(--portal-timetable-hour-bands),minmax(0,1fr));align-content:stretch;align-items:start;padding:0 .375rem 0 .25rem;border-right:1px solid color-mix(in srgb,var(--portal-border-subtle) 85%,transparent);background:#fafbfc;height:100%;min-height:0}.portal-dashboard-courses-timetable-time-label{align-self:start;display:block;padding-top:0;font-size:.625rem;font-weight:500;line-height:1.2;color:var(--portal-text-faint);font-variant-numeric:tabular-nums}.portal-dashboard-courses-timetable-daycol{min-width:0;height:100%;min-height:0;border-right:1px solid color-mix(in srgb,var(--portal-border-subtle) 85%,transparent);background:#fafbfc}.portal-dashboard-courses-timetable-daycol:last-child{border-right:none}.portal-dashboard-courses-timetable-track{position:relative;min-width:0;height:100%;min-height:0;background-color:#fafbfc;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(100% / var(--portal-timetable-hour-bands) - 1px),color-mix(in srgb,var(--portal-border-subtle) 75%,transparent) calc(100% / var(--portal-timetable-hour-bands) - 1px),color-mix(in srgb,var(--portal-border-subtle) 75%,transparent) calc(100% / var(--portal-timetable-hour-bands)));background-size:100% 100%}.portal-dashboard-courses-timetable-block{position:absolute;left:.1875rem;right:.1875rem;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;padding:0;border-radius:.25rem;border:1px solid color-mix(in srgb,var(--portal-border-subtle) 80%,#94a3b8);background:#fff;box-shadow:0 1px #0f172a0a;overflow:hidden;z-index:1;min-width:0}.portal-dashboard-courses-timetable-block--interactive{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;font:inherit;color:inherit;text-align:inherit;cursor:pointer}.portal-dashboard-courses-timetable-block--interactive:hover{border-color:color-mix(in srgb,var(--portal-accent) 45%,var(--portal-border-subtle));box-shadow:0 1px 2px #0f172a14}.portal-dashboard-courses-timetable-block--interactive:focus-visible{outline:2px solid color-mix(in srgb,var(--portal-accent) 70%,transparent);outline-offset:1px}.portal-dashboard-courses-timetable-block--short .portal-timetable-block-content{padding:3px 4px;justify-content:flex-start;gap:1px}.portal-dashboard-courses-timetable-block--short .portal-timetable-block-code{font-size:12px;line-height:1.15}.portal-dashboard-courses-timetable-block--short .portal-timetable-block-title{font-size:11px;-webkit-line-clamp:1}.portal-dashboard-courses-timetable-block--short .portal-timetable-block-time{font-size:10px}.portal-dashboard-courses-timetable-block--short .portal-dashboard-gcal-block-link{display:none}.portal-dashboard-courses-timetable-mobile-slot-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem;width:100%;margin:0;padding:0;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.portal-dashboard-courses-timetable-mobile-slot-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--portal-accent) 70%,transparent);outline-offset:2px;border-radius:.25rem}.portal-timetable-block-content{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:0;min-width:0;height:100%;text-align:center;padding:4px}.portal-timetable-block-code{font-weight:600;font-size:12px;font-variant-numeric:tabular-nums;color:var(--portal-accent);line-height:1.2}.portal-timetable-block-title{font-size:11px;opacity:.85;line-height:1.2;color:var(--portal-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word;word-break:break-word}.portal-timetable-block-time{font-size:10px;opacity:.7;color:var(--portal-text-muted);line-height:1.2}@media (max-width: 1199px) and (min-width: 700px){.portal-dashboard-courses-timetable{--portal-timetable-time-col: 2.625rem;--portal-timetable-day-min: 4.75rem;--portal-timetable-hour-row-min: 1.8rem}.portal-dashboard-courses-timetable-dayhead{padding-left:.25rem;padding-right:.25rem;font-size:.53125rem}.portal-dashboard-courses-timetable-timecol{padding-right:.25rem;padding-left:.125rem}.portal-dashboard-courses-timetable-time-label{font-size:.5625rem}.portal-timetable-block-code{font-size:11px}.portal-timetable-block-title{font-size:10px}.portal-timetable-block-time{font-size:9px}}@media (min-width: 1025px){.portal-dashboard-courses-week-panel{gap:.25rem}.portal-dashboard-courses-week-status{margin-left:.875rem;margin-right:.875rem}.portal-dashboard-courses-timetable-wrap{padding-left:.875rem;padding-right:.875rem;padding-bottom:1rem}}@media (min-width: 1200px){.portal-timetable-block-code{font-size:13px}.portal-timetable-block-title{font-size:12px}.portal-timetable-block-time{font-size:11px}}.portal-dashboard-secondary-card{display:flex;flex-direction:column;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);overflow:hidden}.portal-dashboard-secondary-card-head{flex-shrink:0;padding:.875rem 1.125rem .75rem;border-bottom:1px solid var(--portal-border-subtle);background:linear-gradient(180deg,#fbfbfc 0%,var(--portal-surface) 100%)}.portal-dashboard-secondary-card-head .portal-dashboard-card-panel-title{font-size:1rem}.portal-dashboard-dates-list{list-style:none;margin:0;padding:.625rem 1.125rem .875rem;display:flex;flex-direction:column;gap:.5rem}.portal-dashboard-dates-item{display:grid;grid-template-columns:4.25rem minmax(0,1fr);gap:.625rem;align-items:baseline;font-size:.8125rem;line-height:1.35}.portal-dashboard-dates-when{font-weight:600;font-variant-numeric:tabular-nums;color:var(--portal-accent);white-space:nowrap}.portal-dashboard-dates-label{color:var(--portal-text);font-weight:500}.portal-dashboard-account-dl{margin:0;padding:.625rem 1.125rem 0;display:flex;flex-direction:column;gap:.4375rem;flex:1 1 auto;min-height:0}.portal-dashboard-account-row{display:grid;grid-template-columns:minmax(0,7.5rem) minmax(0,1fr);gap:.5rem .75rem;align-items:baseline;font-size:.8125rem;line-height:1.35}.portal-dashboard-account-row dt{margin:0;font-weight:600;color:var(--portal-text-muted)}.portal-dashboard-account-row dd{margin:0;font-weight:500;color:var(--portal-text);font-variant-numeric:tabular-nums;text-align:right}.portal-dashboard-account-footer{flex-shrink:0;padding:.625rem 1.125rem .75rem;margin-top:auto;border-top:1px solid var(--portal-border-subtle);background:#fafbfc}.portal-dashboard-account-link{font-size:.8125rem;font-weight:600}@media (max-width: 1024px){.portal-dashboard-home-grid{grid-template-columns:1fr}}@media (max-width: 640px){.portal-dashboard-home-grid,.portal-dashboard-home-primary{gap:.875rem}.portal-dashboard-home-primary,.portal-dashboard-home-aside{height:auto}.portal-dashboard-home-primary>.portal-dashboard-current-term-card,.portal-dashboard-home-primary>.portal-dashboard-services,.portal-dashboard-home-primary>.portal-dashboard-sidebar-card,.portal-dashboard-home-aside>.portal-dashboard-courses{min-height:0;height:auto;flex:0 0 auto}.portal-dashboard-current-term-card{padding:.95rem 1rem}.portal-dashboard-sidebar-card{padding:.95rem 1rem;gap:.875rem}.portal-dashboard-current-term-card__dl{gap:0}.portal-dashboard-current-term-card__row{min-block-size:2.75rem;padding:.625rem 0}.portal-dashboard-current-term-card__row dd{text-align:right}.portal-dashboard-service-list{padding:.25rem 0}.portal-dashboard-sidebar-section .portal-dashboard-service-list{padding-top:.125rem}.portal-dashboard-service-tile{min-height:2.5rem;padding:.55rem .75rem}.portal-dashboard-courses-week-panel{padding-bottom:0}.portal-dashboard-courses-week-status{margin:.5rem .875rem .625rem}.portal-dashboard-courses-timetable-wrap{padding:.625rem .875rem .875rem}.portal-dashboard-courses-timetable-mobile{padding:.875rem .9375rem 1rem}.portal-dashboard-courses-timetable-mobile-day+.portal-dashboard-courses-timetable-mobile-day{margin-top:1rem;padding-top:1rem}.portal-dashboard-courses-timetable-mobile-slot{padding:.625rem 0;gap:.5rem .625rem}.portal-dashboard-gcal-block-link--mobile.portal-text-link{margin-top:.25rem}}@media (max-width: 768px){.portal-dashboard-hero{gap:.3125rem;margin-bottom:.875rem;padding-top:.125rem;padding-bottom:.625rem}.portal-dashboard-service-tile{padding:var(--portal-dashboard-sidebar-row-py, .75rem) .75rem}}@media (max-width: 520px){.portal-dashboard-service-tile{padding:var(--portal-dashboard-sidebar-row-py, .75rem) .75rem}}.portal-shell.portal-shell--authenticated{--portal-header-bg: #f2c300;--portal-header-fg: #1a1a1a;--portal-header-border: rgba(0, 0, 0, .06);--portal-sidebar-bg: #8c1d2c;--portal-sidebar-fg: rgba(255, 255, 255, .92);--portal-sidebar-fg-strong: #ffffff;--portal-sidebar-hover-bg: rgba(255, 255, 255, .1);--portal-sidebar-active-bg: rgba(255, 255, 255, .16);--portal-sidebar-active-bar: #f2c300;--portal-sidebar-border: rgba(0, 0, 0, .14);--portal-sidebar-divider: rgba(255, 255, 255, .14);--portal-sidebar-focus-outline: rgba(255, 255, 255, .92);--portal-tab-active-fg: var(--amu-red);--portal-tab-active-bg: var(--amu-card);--portal-tab-active-hover-fg: var(--amu-red-dark)}.portal-shell.portal-shell--authenticated[data-portal-theme=crimson]{--portal-header-bg: #ffffff;--portal-header-fg: #8c1d2c;--portal-header-border: #e8e8e8;--portal-sidebar-bg: #8c1d2c;--portal-sidebar-fg: rgba(255, 255, 255, .92);--portal-sidebar-fg-strong: #ffffff;--portal-sidebar-hover-bg: rgba(255, 255, 255, .1);--portal-sidebar-active-bg: rgba(255, 255, 255, .16);--portal-sidebar-active-bar: #ffffff;--portal-sidebar-border: rgba(0, 0, 0, .12);--portal-sidebar-divider: rgba(255, 255, 255, .14);--portal-sidebar-focus-outline: rgba(255, 255, 255, .92);--amu-gold: #8c1d2c;--page-gray: #f5f6f8}.portal-shell.portal-shell--authenticated.portal-shell--dashboard-home[data-portal-theme=crimson] .portal-portal-banner{background:#8c1d2c;box-shadow:inset 0 -1px #40081247}.portal-shell.portal-shell--authenticated.portal-shell--dashboard-home[data-portal-theme=crimson] .portal-myamu-my{color:#fff}.portal-shell.portal-shell--authenticated.portal-shell--dashboard-home[data-portal-theme=crimson] .portal-myamu-amu{color:#f2c300}.portal-shell.portal-shell--authenticated[data-portal-theme=ivory]{--portal-header-bg: #f5f0e8;--portal-header-fg: #1a1a1a;--portal-header-border: #e4ddd2;--portal-sidebar-bg: #efe9e0;--portal-sidebar-fg: rgba(45, 40, 36, .88);--portal-sidebar-fg-strong: #1a1a1a;--portal-sidebar-hover-bg: rgba(140, 29, 44, .08);--portal-sidebar-active-bg: rgba(140, 29, 44, .12);--portal-sidebar-active-bar: #8c1d2c;--portal-sidebar-border: #e0d8cc;--portal-sidebar-divider: rgba(45, 40, 36, .12);--portal-sidebar-focus-outline: var(--amu-red);--amu-gold: #8c1d2c;--page-gray: #f7f5f1}.portal-shell.portal-shell--authenticated[data-portal-theme=mist]{--portal-header-bg: #e8eaee;--portal-header-fg: #1a1a1a;--portal-header-border: #d5d8de;--portal-sidebar-bg: #dde0e5;--portal-sidebar-fg: rgba(45, 48, 54, .88);--portal-sidebar-fg-strong: #1a1a1a;--portal-sidebar-hover-bg: rgba(0, 0, 0, .05);--portal-sidebar-active-bg: #ffffff;--portal-sidebar-active-bar: #8c1d2c;--portal-sidebar-border: #d0d3d9;--portal-sidebar-divider: rgba(45, 48, 54, .1);--portal-sidebar-focus-outline: var(--amu-red);--amu-gold: #8c1d2c;--page-gray: #f5f6f8}.portal-shell.portal-shell--authenticated .portal-logout-button,.portal-shell.portal-shell--authenticated .portal-user-button,.portal-shell.portal-shell--authenticated .portal-notification-bell__trigger{color:var(--portal-header-fg)}.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar{background:var(--portal-sidebar-bg);border-right:1px solid var(--portal-sidebar-border);color:var(--portal-sidebar-fg-strong)}.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar .portal-nav-link,.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar .sidebar-item{color:var(--portal-sidebar-fg)}.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar .sidebar-item:hover,.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar .portal-nav-link:hover{background:var(--portal-sidebar-hover-bg);color:var(--portal-sidebar-fg-strong)}.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar .portal-nav-link:focus-visible{outline:2px solid var(--portal-sidebar-focus-outline);outline-offset:2px}.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar .portal-nav-link--active,.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar .sidebar-item.portal-nav-link--active{background:var(--portal-sidebar-active-bg);color:var(--portal-sidebar-fg-strong);box-shadow:inset 3px 0 0 var(--portal-sidebar-active-bar),0 1px 2px #0000000f}.portal-shell.portal-shell--authenticated.portal-shell--internal-module .portal-sidebar-nav-group--account{border-top-color:var(--portal-sidebar-divider)}.portal-shell.portal-shell--authenticated .portal-tab-group .portal-tab--active,.portal-shell.portal-shell--authenticated .portal-tab-group a.portal-tab[aria-current=page],.portal-shell.portal-shell--authenticated .portal-tab--active,.portal-shell.portal-shell--authenticated .portal-tab.active,.portal-shell.portal-shell--authenticated a.portal-tab.active,.portal-shell.portal-shell--authenticated a.portal-tab[aria-current=page],.portal-shell.portal-shell--authenticated button.portal-tab[aria-selected=true],.portal-shell.portal-shell--authenticated .portal-section-tab--active,.portal-shell.portal-shell--authenticated .portal-timetable-lang-tab[aria-selected=true],.portal-shell.portal-shell--authenticated .portal-account-ledger__pay-segment-btn--active{background:var(--portal-tab-active-bg);color:var(--portal-tab-active-fg)}.portal-shell.portal-shell--authenticated .portal-tab-group .portal-tab--active:hover,.portal-shell.portal-shell--authenticated .portal-tab--active:hover,.portal-shell.portal-shell--authenticated button.portal-tab[aria-selected=true]:hover,.portal-shell.portal-shell--authenticated .portal-section-tab--active:hover,.portal-shell.portal-shell--authenticated .portal-timetable-lang-tab[aria-selected=true]:hover,.portal-shell.portal-shell--authenticated .portal-account-ledger__pay-segment-btn--active:hover{color:var(--portal-tab-active-hover-fg);background:var(--portal-tab-active-bg)}.admin-portal{--admin-header-bg: #ffffff;--admin-header-fg: #8c1d2c;--admin-header-border: #e8e8e8;--admin-sidebar-bg: #8c1d2c;--admin-sidebar-fg: rgba(255, 255, 255, .92);--admin-sidebar-fg-strong: #ffffff;--admin-sidebar-hover-bg: rgba(255, 255, 255, .1);--admin-sidebar-active-bg: rgba(255, 255, 255, .16);--admin-sidebar-active-bar: #ffffff;--admin-sidebar-border: rgba(0, 0, 0, .12);--admin-sidebar-divider: rgba(255, 255, 255, .14);--admin-sidebar-focus-outline: rgba(255, 255, 255, .92);--admin-tab-active-fg: var(--amu-red);--admin-tab-active-bg: var(--amu-card);--admin-tab-active-hover-fg: var(--amu-red-dark);--amu-gold: #8c1d2c;--page-gray: #f5f6f8;--portal-bg: var(--page-gray);--portal-surface: var(--amu-card);--portal-border: var(--border-gray);--portal-border-subtle: #e8e8e8;--portal-text: var(--text-dark);--portal-text-muted: #5c6578;--portal-text-faint: #7a8499;--portal-accent: var(--amu-red);--portal-accent-hover: var(--amu-red-dark);--portal-accent-soft: #f2e8ea;--portal-radius: 6px;--portal-shadow: 0 1px 2px rgba(28, 35, 51, .06);--portal-body-font-size: .875rem;--portal-space-section: 1.75rem;--portal-page-title-arrow-size: 2rem;--portal-page-title-arrow-gap: .125rem;--admin-sidebar-width: 210px;--admin-content-max-width: 1440px;--portal-branding-bar-height: 4.5rem;--admin-header-height: var(--portal-branding-bar-height);display:flex;min-height:100vh;font-size:var(--portal-body-font-size);line-height:1.45;color:var(--portal-text);background:var(--page-gray)}.admin-portal[data-admin-theme=heritage]{--admin-header-bg: #f2c300;--admin-header-fg: #1a1a1a;--admin-header-border: var(--border-gray);--admin-sidebar-bg: #8c1d2c;--admin-sidebar-fg: rgba(255, 255, 255, .92);--admin-sidebar-fg-strong: #ffffff;--admin-sidebar-hover-bg: rgba(255, 255, 255, .1);--admin-sidebar-active-bg: rgba(255, 255, 255, .16);--admin-sidebar-active-bar: #f2c300;--admin-sidebar-border: rgba(0, 0, 0, .14);--admin-sidebar-divider: rgba(255, 255, 255, .14);--admin-sidebar-focus-outline: rgba(255, 255, 255, .92);--admin-tab-active-fg: var(--amu-red);--admin-tab-active-bg: var(--amu-card);--admin-tab-active-hover-fg: var(--amu-red-dark);--amu-gold: #f2c300;--page-gray: #f2f4f8}.admin-portal[data-admin-theme=ivory]{--admin-header-bg: #f5f0e8;--admin-header-fg: #1a1a1a;--admin-header-border: #e4ddd2;--admin-sidebar-bg: #efe9e0;--admin-sidebar-fg: rgba(45, 40, 36, .88);--admin-sidebar-fg-strong: #1a1a1a;--admin-sidebar-hover-bg: rgba(140, 29, 44, .08);--admin-sidebar-active-bg: rgba(140, 29, 44, .12);--admin-sidebar-active-bar: #8c1d2c;--admin-sidebar-border: #e0d8cc;--admin-sidebar-divider: rgba(45, 40, 36, .12);--admin-sidebar-focus-outline: var(--amu-red);--admin-tab-active-fg: #8c1d2c;--admin-tab-active-bg: #fffaf6;--admin-tab-active-hover-fg: #6e1622;--amu-gold: #8c1d2c;--page-gray: #f7f5f1}.admin-portal[data-admin-theme=mist]{--admin-header-bg: #e8eaee;--admin-header-fg: #1a1a1a;--admin-header-border: #d5d8de;--admin-sidebar-bg: #dde0e5;--admin-sidebar-fg: rgba(45, 48, 54, .88);--admin-sidebar-fg-strong: #1a1a1a;--admin-sidebar-hover-bg: rgba(0, 0, 0, .05);--admin-sidebar-active-bg: #ffffff;--admin-sidebar-active-bar: #8c1d2c;--admin-sidebar-border: #d0d3d9;--admin-sidebar-divider: rgba(45, 48, 54, .1);--admin-sidebar-focus-outline: var(--amu-red);--admin-tab-active-fg: #8c1d2c;--admin-tab-active-bg: #ffffff;--admin-tab-active-hover-fg: #6e1622;--amu-gold: #8c1d2c;--page-gray: #f5f6f8}.admin-portal__frame{flex:1;min-width:0;display:flex;flex-direction:column;margin-left:var(--admin-sidebar-width);padding-top:var(--admin-header-height);box-sizing:border-box}.admin-app-header{border-bottom:1px solid var(--admin-header-border)}.admin-portal .portal-branding-bar{background:var(--admin-header-bg)}.admin-portal__branding-title{font-family:Cinzel,Times New Roman,Times,serif;font-size:clamp(.9375rem,1.35vw,1.0625rem);font-weight:600;letter-spacing:.03em;line-height:1.2;color:var(--admin-header-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.admin-portal .portal-logout-button{color:var(--admin-header-fg)}.admin-portal .portal-logout-button:hover{color:var(--portal-accent-hover);border-bottom-color:#6e162273}.admin-portal .admin-sidebar{position:fixed;top:var(--admin-header-height);left:0;z-index:20;box-sizing:border-box;width:var(--admin-sidebar-width);height:calc(100vh - var(--admin-header-height));height:calc(100dvh - var(--admin-header-height));color:var(--admin-sidebar-fg-strong);display:flex;flex-direction:column;background:var(--admin-sidebar-bg);border-right:1px solid var(--admin-sidebar-border);padding:var(--portal-red-sidebar-pad-top) 0 var(--portal-red-sidebar-pad-bottom)}.admin-portal .admin-sidebar .portal-nav-link,.admin-portal .admin-sidebar .sidebar-item{color:var(--admin-sidebar-fg)}.admin-portal .admin-sidebar .sidebar-item:hover,.admin-portal .admin-sidebar .portal-nav-link:hover{background:var(--admin-sidebar-hover-bg);color:var(--admin-sidebar-fg-strong)}.admin-portal .admin-sidebar .portal-nav-link:focus-visible{outline:2px solid var(--admin-sidebar-focus-outline);outline-offset:2px}.admin-portal .admin-sidebar .portal-nav-link--active,.admin-portal .admin-sidebar .sidebar-item.portal-nav-link--active{background:var(--admin-sidebar-active-bg);color:var(--admin-sidebar-fg-strong);box-shadow:inset 3px 0 0 var(--admin-sidebar-active-bar),0 1px 2px #0000000f}.admin-portal .admin-sidebar .portal-sidebar-nav-group--account{border-top-color:var(--admin-sidebar-divider)}.admin-portal .portal-tab-group .portal-tab--active,.admin-portal .portal-tab-group a.portal-tab[aria-current=page],.admin-portal .portal-tab--active,.admin-portal .portal-tab.active,.admin-portal a.portal-tab.active,.admin-portal a.portal-tab[aria-current=page],.admin-portal button.portal-tab[aria-selected=true],.admin-portal .admin-finance-page-tab--active,.admin-portal .admin-students-page__tab--active,.admin-portal .admin-finance-drawer__tab--active,.admin-portal .admin-detail-tab--active,.admin-portal .portal-timetable-lang-tab[aria-selected=true],.admin-portal .portal-account-ledger__pay-segment-btn--active{background:var(--admin-tab-active-bg);color:var(--admin-tab-active-fg)}.admin-portal .portal-tab-group .portal-tab--active:hover,.admin-portal .portal-tab-group a.portal-tab[aria-current=page]:hover,.admin-portal .portal-tab--active:hover,.admin-portal .portal-tab.active:hover,.admin-portal a.portal-tab.active:hover,.admin-portal a.portal-tab[aria-current=page]:hover,.admin-portal button.portal-tab[aria-selected=true]:hover,.admin-portal .admin-finance-page-tab--active:hover,.admin-portal .admin-students-page__tab--active:hover,.admin-portal .admin-finance-drawer__tab--active:hover,.admin-portal .admin-detail-tab--active:hover,.admin-portal .portal-timetable-lang-tab[aria-selected=true]:hover,.admin-portal .portal-account-ledger__pay-segment-btn--active:hover{color:var(--admin-tab-active-hover-fg);background:var(--admin-tab-active-bg)}.admin-portal__main{flex:1;min-width:0;display:flex;flex-direction:column;padding:clamp(1.25rem,2vw,1.75rem) 0 0;background:var(--page-gray);min-height:calc(100dvh - var(--admin-header-height));box-sizing:border-box}.admin-portal__main-content{width:100%;max-width:min(var(--admin-content-max-width),100%);margin-left:auto;margin-right:auto;padding-left:clamp(1.5rem,2.5vw,2rem);padding-right:clamp(1.5rem,2.5vw,2rem);box-sizing:border-box;flex:1 1 auto;display:flex;flex-direction:column;min-width:0;min-height:calc(100dvh - var(--admin-header-height))}.admin-portal__main-body{flex:1 1 auto;min-width:0;padding-bottom:.375rem}.admin-page{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.admin-page__title{margin:0 0 .35rem;font-family:Cinzel,Times New Roman,Times,serif;font-size:1.25rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#a6192e}.admin-page__title--inline{margin:0;flex:1;min-width:0}.admin-page__lede{margin:0 0 1.5rem;font-size:.875rem}.admin-page__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin-bottom:1.25rem}.admin-back-link{display:inline-flex;align-items:center;gap:0;margin:0 0 .35rem;padding:0;border:0;background:transparent;text-decoration:none;cursor:pointer;border-radius:var(--portal-radius-sm, 6px);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:.875rem;font-weight:600;line-height:1;color:var(--portal-text-muted, #5c6578);transition:color .12s ease}.admin-back-link__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--portal-page-title-arrow-size, 2rem);height:var(--portal-page-title-arrow-size, 2rem);margin-left:calc(-1 * var(--portal-page-title-arrow-gap, .125rem));color:inherit}.admin-back-link__icon svg{display:block}.admin-back-link__label{color:inherit}.admin-back-link:hover{color:var(--portal-accent, #8c1d2c)}.admin-back-link:focus-visible{outline:2px solid var(--portal-accent, #8c1d2c);outline-offset:2px}.admin-page-title-row{--portal-page-title-arrow-size: 2rem;--portal-page-title-arrow-gap: .125rem;position:relative;display:block;flex:1;min-width:0}.admin-page-title-row .admin-page__title--inline{margin:0;padding-left:calc(var(--portal-page-title-arrow-size) + var(--portal-page-title-arrow-gap))}.admin-page-title-row .admin-back-link--icon-only{position:absolute;top:50%;left:var(--portal-page-title-arrow-gap);transform:translateY(-50%);margin:0}.admin-back-link--icon-only .admin-back-link__icon{margin-left:0}.admin-page__toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .75rem;margin-left:auto}.admin-students-page__toolbar{align-items:flex-start;row-gap:.85rem}.admin-students-page__toolbar .admin-students-page__heading{flex:1 1 auto;min-width:0}.admin-students-page__primary-cta{margin-left:auto;display:flex;align-items:center}.admin-students-page__toolbar .admin-page__toolbar-actions{flex-basis:100%;margin-left:0;justify-content:flex-start}.admin-students-page__controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;flex-basis:100%;width:100%}.admin-students-page__filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;flex:1 1 18rem;min-width:0}.admin-students-page__filter-select{width:auto;min-width:8rem;max-width:10rem;flex:1 1 8rem}.admin-students-page__filter-btn{min-height:2.375rem;padding-inline:.85rem;white-space:nowrap;flex:0 0 auto}.admin-students-page__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;align-items:stretch;flex:0 1 auto;min-width:0;margin-left:auto}.admin-students-page__actions-group{display:inline-flex;flex-wrap:nowrap;align-items:stretch;gap:.5rem;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin}.admin-students-page__action-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto;min-width:0;padding-inline:.75rem;white-space:nowrap}.admin-students-roster-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12.5rem),1fr));gap:.75rem;flex-basis:100%;width:100%}.admin-students-stat-card{padding:1rem 1.15rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);min-width:0}.admin-students-stat-card__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .5rem;margin-bottom:.55rem}.admin-students-stat-card__label-row{display:flex;align-items:center;gap:.55rem;min-width:0}.admin-students-stat-card__icon{display:inline-flex;align-items:center;justify-content:center;color:var(--amu-red);flex-shrink:0}.admin-students-stat-card__label{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--amu-red-dark);overflow-wrap:anywhere}.admin-students-stat-card__meta{font-size:.6875rem;font-weight:600;line-height:1.3;color:var(--portal-text-faint);flex-shrink:0}.admin-students-stat-card__value{margin:0;font-size:1.55rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-dark)}.admin-students-page__add-btn{display:inline-flex;align-items:center;gap:.35rem}.admin-students-page__add-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:700;line-height:1}.admin-students-page__search{position:relative;display:flex;align-items:center;flex:1 1 10rem;min-width:10rem}.admin-students-page__search-icon{position:absolute;left:.75rem;color:var(--portal-text-faint);pointer-events:none}.admin-students-page__search .admin-input--search{padding-left:2.25rem;width:100%;min-width:0;max-width:none}.admin-students-page__heading{display:flex;flex-direction:column;gap:.75rem}.bulk-email-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;background:#0f111a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);overflow-y:auto}.bulk-email-modal{box-sizing:border-box;width:min(720px,calc(100vw - 48px));max-height:min(90vh,56rem);display:flex;flex-direction:column;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:var(--portal-surface, #fff);box-shadow:0 20px 60px #0f111a59;overflow:hidden}.bulk-email-modal__header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid var(--portal-border-subtle);background:var(--amu-card, #f4f5f8)}.bulk-email-modal__title{margin:0;font-size:1rem;font-weight:600;color:var(--portal-text)}.bulk-email-modal__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;font-size:1.5rem;line-height:1;width:2rem;height:2rem;border-radius:999px;cursor:pointer;color:var(--portal-text-muted)}.bulk-email-modal__close:hover:not(:disabled){background:#0000000f;color:var(--portal-text)}.bulk-email-modal__close:disabled{cursor:not-allowed;opacity:.5}.bulk-email-modal__form{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.25rem 1.1rem;overflow-y:auto;flex:1 1 auto}.bulk-email-modal__field{display:flex;flex-direction:column;gap:.35rem}.bulk-email-modal__row-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.85rem;padding-bottom:.7rem;border-bottom:1px dashed var(--portal-border-subtle)}@media (max-width: 600px){.bulk-email-modal__row-2{grid-template-columns:1fr}}.bulk-email-modal__select{font:inherit;width:100%;box-sizing:border-box;border:1px solid var(--portal-border-subtle);border-radius:.5rem;padding:.5rem .65rem;background:var(--portal-surface, #fff);color:var(--portal-text);transition:border-color .12s ease,box-shadow .12s ease}.bulk-email-modal__select:focus{outline:none;border-color:var(--amu-red, #970000);box-shadow:0 0 0 3px #97000026}.bulk-email-modal__hint--error{color:#b91c1c}.bulk-email-modal__hint code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.85em;background:#0000000d;padding:0 .25rem;border-radius:.25rem}.bulk-email-modal__field--recipients{padding-bottom:.7rem;border-bottom:1px dashed var(--portal-border-subtle)}.bulk-email-modal__field--body{flex:1 1 auto;min-height:0}.bulk-email-modal__field-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--portal-text-muted)}.bulk-email-modal__count{font-weight:500;text-transform:none;letter-spacing:0;color:var(--portal-text)}.bulk-email-modal__chips{display:flex;flex-wrap:wrap;gap:.35rem;max-height:6.5rem;overflow-y:auto;padding:.15rem 0}.bulk-email-modal__chip{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;background:#97000014;color:var(--amu-red, #970000);font-size:.8125rem;font-weight:500;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.bulk-email-modal__chip--overflow{background:#0000000f;color:var(--portal-text)}.bulk-email-modal__hint{margin:0;font-size:.75rem;color:var(--portal-text-muted)}.bulk-email-modal__subject,.bulk-email-modal__body{font:inherit;width:100%;box-sizing:border-box;border:1px solid var(--portal-border-subtle);border-radius:.5rem;padding:.55rem .7rem;background:var(--portal-surface, #fff);color:var(--portal-text);transition:border-color .12s ease,box-shadow .12s ease}.bulk-email-modal__subject:focus,.bulk-email-modal__body:focus{outline:none;border-color:var(--amu-red, #970000);box-shadow:0 0 0 3px #97000026}.bulk-email-modal__body{min-height:12rem;resize:vertical;font-family:inherit;line-height:1.5}.bulk-email-modal__char-count{margin:.15rem 0 0;font-size:.7rem;color:var(--portal-text-muted);align-self:flex-end}.bulk-email-modal__alert{margin:0;padding:.6rem .75rem;border-radius:.5rem;font-size:.875rem;line-height:1.4}.bulk-email-modal__alert--error{background:#dc262614;border:1px solid rgba(220,38,38,.25);color:#b91c1c}.bulk-email-modal__alert--success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#15803d}.bulk-email-modal__alert--warn{background:#eab3081f;border:1px solid rgba(234,179,8,.35);color:#92400e}.bulk-email-modal__actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.4rem;border-top:1px solid var(--portal-border-subtle);margin-top:.25rem;padding-block:.75rem .1rem}@media (max-width: 600px){.bulk-email-modal{width:100vw;max-height:100vh;border-radius:0}.bulk-email-modal-backdrop{padding:0}}.admin-students-page__print-header{display:none}.admin-students-page__print-title{margin:0 0 .35rem;font-size:1.25rem}.admin-students-page__print-meta{margin:0 0 1rem;font-size:.875rem;color:var(--portal-text-muted)}.admin-page__toolbar-actions--wrap{justify-content:flex-end}.admin-page__toolbar--courses-open{justify-content:space-between;align-items:flex-end}.admin-page__toolbar--courses-open .admin-input--search{flex:1;min-width:12rem;max-width:26rem}.admin-page__toolbar-actions--open-term{margin-left:auto;flex-shrink:0}.admin-courses-term-field{display:flex;align-items:center;gap:.5rem}.admin-courses-term-field__label{font-size:.875rem;color:var(--text-dark);white-space:nowrap}.admin-courses-feedback{margin:0 0 1rem;font-size:.875rem}.admin-courses-feedback--error{color:#a4000f}.admin-input{height:2.375rem;padding:0 .75rem;font-size:.875rem;font-family:inherit;color:var(--text-dark);background:var(--amu-card);border:1px solid #cccccc;border-radius:var(--portal-radius)}.admin-input:focus{outline:none;border-color:var(--amu-red);box-shadow:0 0 0 3px var(--amu-red-ring)}.admin-input--search{min-width:min(100%,280px);width:280px}.admin-input--wide{min-width:min(100%,320px);width:320px}.admin-page__subtitle{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--text-dark)}.admin-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.admin-field--inline{flex-direction:row;align-items:center;gap:.5rem}.admin-field--inline .admin-field__label{margin:0;white-space:nowrap}.admin-field__label{margin:0;font-size:.8125rem;font-weight:600;color:var(--portal-text-muted)}.admin-form-section{margin-top:2rem;padding:1.25rem 1.25rem 1.5rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:10px;box-shadow:var(--portal-shadow)}.admin-form-hint{margin:0 0 1rem;font-size:.8125rem;max-width:48rem}.admin-code{font-size:.8125em;padding:.1em .35em;border-radius:4px;background:var(--page-gray)}.admin-form-message{margin:0 0 1rem;font-size:.875rem;color:var(--amu-red)}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem;margin-bottom:1.25rem}@media (max-width: 640px){.admin-form-grid{grid-template-columns:1fr}.admin-field--span-2{grid-column:auto}}.admin-field--span-2{grid-column:span 2}.admin-textarea{height:auto;min-height:4rem;padding-top:.5rem;padding-bottom:.5rem;resize:vertical}.admin-form-actions{display:flex;flex-wrap:wrap;gap:.5rem .65rem}.admin-inline-actions{display:flex;flex-wrap:wrap;gap:.35rem}.admin-course-picker{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem 1rem}.admin-course-picker__search{align-items:flex-end}.admin-course-sections-page__header{margin-bottom:.85rem}.admin-course-sections-page__heading{flex:1;min-width:min(100%,20rem)}.admin-course-sections-page__lede{margin:.35rem 0 0;max-width:38rem;font-size:.875rem;line-height:1.5;color:var(--portal-text-muted)}.admin-course-sections-page__count{color:var(--portal-text-faint);font-weight:500}.admin-course-sections-page__nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem;padding-bottom:0;border-bottom:none}.admin-course-sections-tablist{margin:0}.admin-course-sections-page__timetable-link{font-size:.8125rem;font-weight:600;color:var(--portal-text-muted);text-decoration:none;white-space:nowrap}.admin-course-sections-page__timetable-link:hover{color:var(--portal-text);text-decoration:underline}.admin-course-sections-offerings{margin-top:0;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);overflow:hidden}.admin-course-sections-offerings__bar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 1.5rem;padding:1rem 1.25rem;background:#fafbfc;border-bottom:1px solid var(--portal-border-subtle)}.admin-course-sections-offerings__filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.85rem 1.25rem;flex:1 1 20rem;min-width:0}.admin-course-sections-offerings__filter{display:flex;flex-direction:column;gap:.3rem;min-width:0}.admin-course-sections-offerings__filter--grow{flex:1 1 14rem;max-width:24rem}.admin-course-sections-offerings__filter-label{font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-muted)}.admin-course-sections-offerings__filter .admin-input{width:100%;min-width:0}.admin-course-sections-offerings__filter .admin-input--search{width:100%;max-width:none}.admin-course-sections-offerings__body{min-height:8rem}.admin-course-sections-offerings__message{margin:0;padding:2.5rem 1.25rem;text-align:center;font-size:.9375rem;color:var(--portal-text-muted)}.admin-course-sections-offerings__message--error{color:var(--amu-red)}.admin-course-sections-offerings__table{width:100%;border-collapse:collapse}.admin-course-sections-offerings__table thead th{padding:.65rem 1.25rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-muted);text-align:left;border-bottom:1px solid color-mix(in srgb,var(--amu-red) 8%,var(--portal-border-subtle));background:transparent}.admin-course-sections-offerings__table tbody td{padding:.9rem 1.25rem;vertical-align:middle;border-bottom:1px solid color-mix(in srgb,var(--portal-border-subtle) 80%,transparent)}.admin-course-sections-offerings__table tbody tr:last-child td{border-bottom:none}.admin-course-sections-offerings__table tbody tr:hover{background:color-mix(in srgb,var(--amu-red) 2%,var(--amu-card))}.admin-course-sections-offerings__course{min-width:12rem}.admin-course-sections-offerings__code{display:block;font-weight:700;font-size:.9375rem;color:var(--amu-red, #8c1d2c)}.admin-course-sections-offerings__title{display:block;margin-top:.2rem;font-size:.8125rem;line-height:1.35;color:var(--portal-text-muted);max-width:22rem}.admin-course-sections-offerings__schedule,.admin-course-sections-offerings__instructor{min-width:10rem;max-width:18rem;font-size:.8125rem;line-height:1.45;color:var(--portal-text);vertical-align:top}.admin-course-sections-offerings__num{width:4.5rem;text-align:center;font-variant-numeric:tabular-nums;color:var(--portal-text);font-size:.875rem}.admin-course-sections-offerings__action{width:1%;white-space:nowrap;text-align:right;padding-right:1.5rem}.admin-course-sections-offerings__link{font-size:.8125rem;font-weight:600;color:var(--amu-red, #8c1d2c);text-decoration:none}.admin-course-sections-offerings__link:hover{text-decoration:underline}@media (max-width: 760px){.admin-course-sections-offerings__bar{flex-direction:column;align-items:stretch}.admin-course-sections-offerings__filter--grow{max-width:none}.admin-course-sections-offerings__table thead{display:none}.admin-course-sections-offerings__table tbody tr{display:block;padding:.85rem 1rem;border-bottom:1px solid color-mix(in srgb,var(--portal-border-subtle) 80%,transparent)}.admin-course-sections-offerings__table tbody tr:last-child{border-bottom:none}.admin-course-sections-offerings__table tbody td{display:block;padding:.15rem 0;border:none;text-align:left}.admin-course-sections-offerings__action{padding-top:.5rem;text-align:left}}.admin-course-sections-page__alert{margin:0 0 .85rem;padding:.65rem .85rem;font-size:.8125rem;line-height:1.4;color:#b91c1c;background:color-mix(in srgb,#dc2626 8%,var(--amu-card));border:1px solid color-mix(in srgb,#dc2626 22%,var(--portal-border));border-radius:var(--portal-radius)}.admin-course-sections-explorer{display:flex;flex-direction:column;gap:0;margin-bottom:1rem;padding:0;overflow:hidden}.admin-course-sections-explorer__controls{display:grid;grid-template-columns:minmax(9.5rem,.75fr) minmax(0,1.5fr) minmax(11rem,1fr);gap:.75rem 1rem;align-items:end;padding:.95rem 1rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-course-sections-explorer__summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.875rem 1rem;background:#f7f8fa}.admin-course-sections-explorer__scope{min-width:0;flex:1 1 12rem}.admin-course-sections-explorer__actions{flex:0 0 auto}.admin-course-sections-explorer__code{margin:0;font-size:.9375rem;font-weight:700;letter-spacing:.03em;color:var(--amu-red);line-height:1.2}.admin-course-sections-explorer__title{margin:.2rem 0 0;min-width:0;font-size:.9375rem;font-weight:600;line-height:1.35;color:var(--portal-text)}.admin-course-sections-explorer__meta{margin:.25rem 0 0;font-size:.8125rem;color:var(--portal-text-muted)}.admin-course-sections-explorer__placeholder{margin:0;font-size:.875rem;color:var(--portal-text-muted)}.admin-course-sections-explorer__field{min-width:0}.admin-course-sections-explorer__field .admin-input{width:100%;box-sizing:border-box}.admin-course-sections-explorer__field--course .admin-input--wide,.admin-course-sections-explorer__field--search .admin-input--search{width:100%;min-width:0}.admin-course-sections-empty{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.35rem 1.25rem;margin-bottom:1rem}.admin-course-sections-empty__title{margin:0;font-size:.9375rem;font-weight:600;color:var(--portal-text)}.admin-course-sections-empty__detail{margin:0 0 .35rem;font-size:.875rem;color:var(--portal-text-muted)}.admin-course-sections-group__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;margin-left:.4rem;padding:0 .35rem;font-size:.6875rem;font-weight:700;color:var(--portal-text-muted);background:#eef2f7;border-radius:999px;vertical-align:middle}.admin-course-sections-group__empty{margin:0;padding:.75rem .85rem;font-size:.8125rem;color:var(--portal-text-muted);background:#f8fafc;border:1px dashed var(--portal-border-subtle);border-radius:var(--portal-radius)}.admin-course-sections-group__list{display:flex;flex-direction:column;gap:.65rem}.admin-course-section-card{display:flex;flex-direction:column;gap:.65rem;padding:.9rem 1rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) + 2px);box-shadow:var(--portal-shadow)}.admin-course-section-card__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem 1rem}.admin-course-section-card__code-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.admin-course-section-card__code{font-size:.9375rem;font-weight:700;color:var(--portal-text)}.admin-course-section-card__track{display:inline-flex;padding:.15rem .45rem;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:999px}.admin-course-section-card__track--en{color:#1d4ed8;background:color-mix(in srgb,#2563eb 12%,var(--amu-card))}.admin-course-section-card__track--cn{color:#b45309;background:color-mix(in srgb,#d97706 12%,var(--amu-card))}.admin-course-section-card__title{margin:.2rem 0 0;font-size:.9375rem;font-weight:600;color:var(--portal-text)}.admin-course-section-card__enrolled{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1}.admin-course-section-card__enrolled-count{font-size:1.125rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--portal-text)}.admin-course-section-card__enrolled-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--portal-text-faint)}.admin-course-section-card__schedule{margin:0;font-size:.875rem;font-weight:500;color:var(--portal-text)}.admin-course-section-card__meta,.admin-course-section-card__prereq{margin:0;font-size:.8125rem;color:var(--portal-text-muted)}.admin-course-section-card__notes{margin:0;font-size:.8125rem;line-height:1.4;color:var(--portal-text-muted);font-style:italic}.admin-course-section-card__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.15rem .75rem;padding-top:.15rem;border-top:1px solid var(--portal-border-subtle)}.admin-course-section-card__action{min-height:0;padding:.2rem .1rem;font-family:inherit;font-size:.8125rem;font-weight:600;color:var(--portal-text-muted);background:transparent;border:none;cursor:pointer}.admin-course-section-card__action:hover:not(:disabled){color:var(--portal-text);text-decoration:underline}.admin-course-section-card__action--danger{color:#b91c1c}.admin-course-section-card__action--danger:hover:not(:disabled){color:#991b1b}.admin-course-section-card__action:disabled{opacity:.55;cursor:not-allowed}.admin-course-section-form-panel{--csf-label: .75rem;--csf-text: .8125rem;--csf-title: 1.125rem;--csf-section: .6875rem;--csf-control-h: 2.375rem;--csf-radius: 8px;--csf-gap-label: .375rem;--csf-gap-field: 1.125rem;--csf-gap-panel: 1.25rem;--csf-pad-x: 1.75rem;--csf-pad-y: 1.375rem;margin-bottom:1.35rem;padding:0;overflow:hidden;border-top:3px solid var(--amu-gold);box-shadow:0 2px 14px #8c1d2c0d;font-size:var(--csf-text);line-height:1.45}.admin-course-section-form__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:var(--csf-pad-y) var(--csf-pad-x) calc(var(--csf-pad-y) - .15rem);border-bottom:1px solid var(--portal-border-subtle);background:linear-gradient(180deg,color-mix(in srgb,var(--portal-accent-soft) 45%,var(--amu-card)) 0%,var(--amu-card) 100%)}.admin-course-section-form__header-main{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem .875rem;min-width:0}.admin-course-section-form__title{margin:0;font-size:var(--csf-title);font-weight:650;letter-spacing:-.015em;line-height:1.25;color:var(--amu-red-dark)}.admin-course-section-form__context{display:flex;flex-wrap:wrap;gap:.375rem}.admin-course-section-form__context-chip{display:inline-flex;align-items:center;min-height:1.625rem;padding:.15rem .625rem;font-size:.6875rem;font-weight:650;letter-spacing:.02em;color:var(--portal-text-muted);background:var(--portal-accent-soft);border:1px solid color-mix(in srgb,var(--amu-red) 10%,var(--portal-border-subtle));border-radius:999px}.admin-course-section-form__context-chip--course{color:var(--amu-red-dark);background:color-mix(in srgb,var(--portal-accent-soft) 75%,var(--amu-card));border-color:color-mix(in srgb,var(--amu-red) 18%,var(--portal-border-subtle))}.admin-course-section-form__context-hint{margin:0;font-size:var(--csf-text);color:var(--portal-text-muted)}.admin-course-section-form__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.875rem;height:1.875rem;margin:.05rem -.15rem 0 0;padding:0;font-family:inherit;font-size:1.25rem;line-height:1;font-weight:400;color:var(--portal-text-faint);background:transparent;border:none;border-radius:var(--csf-radius);cursor:pointer;transition:background .15s ease,color .15s ease}.admin-course-section-form__close:hover:not(:disabled){color:var(--amu-red-dark);background:var(--portal-accent-soft)}.admin-course-section-form__close:disabled{opacity:.5;cursor:not-allowed}.admin-course-section-form__error{margin:0;padding:.625rem var(--csf-pad-x);font-size:var(--csf-text);line-height:1.45;color:var(--amu-red-dark);background:var(--portal-accent-soft);border-bottom:1px solid color-mix(in srgb,var(--amu-red) 15%,var(--portal-border))}.admin-course-section-form__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.28fr) minmax(0,1fr);gap:0;align-items:stretch}.admin-course-section-form__panel{display:flex;flex-direction:column;gap:var(--csf-gap-panel);min-width:0;min-height:100%;padding:var(--csf-pad-y) var(--csf-pad-x) calc(var(--csf-pad-y) + .125rem)}.admin-course-section-form__panel+.admin-course-section-form__panel{border-left:1px solid var(--portal-border-subtle)}.admin-course-section-form__panel-title{display:flex;align-items:center;gap:.4375rem;margin:0;flex-shrink:0;font-size:var(--csf-section);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--amu-red-dark)}.admin-course-section-form__panel-body{flex:1;display:flex;flex-direction:column;gap:var(--csf-gap-panel);min-height:0}.admin-course-section-form__panel-body .admin-course-section-form__textarea{flex:1;min-height:5.25rem}.admin-course-section-form__times{display:flex;flex-direction:column;gap:0;padding-top:var(--csf-gap-panel);border-top:1px solid var(--portal-border-subtle)}.admin-course-section-form__times .admin-course-section-form__time-slot:first-child{padding-bottom:0}.admin-course-section-form__time-separator{display:flex;align-items:center;gap:.625rem;margin:.625rem 0;font-size:.6875rem;font-weight:650;letter-spacing:.08em;text-transform:lowercase;color:var(--portal-text-faint)}.admin-course-section-form__time-separator:before,.admin-course-section-form__time-separator:after{content:"";flex:1;height:1px;background:var(--portal-border-subtle)}.admin-course-section-form__time-slot{min-width:0}.admin-course-section-form__time-slot .admin-field{margin:0;display:flex;flex-direction:column;gap:var(--csf-gap-label)}.admin-course-section-form__time-slot .admin-field__label{font-size:var(--csf-label);font-weight:600;letter-spacing:.015em;color:var(--portal-text-muted)}.admin-course-section-form__time-slot .admin-time12h--stacked{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.admin-course-section-form__time-slot .admin-time12h__cell{display:flex;flex-direction:column;gap:.3125rem;min-width:0;margin:0}.admin-course-section-form__time-slot .admin-time12h__cell-label{font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-course-section-form__time-slot .admin-time12h__select{width:100%;min-width:0;min-height:var(--csf-control-h);padding:.4375rem .5rem;font-size:var(--csf-text);line-height:1.35;text-align:center;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--csf-radius);transition:border-color .15s ease,box-shadow .15s ease}.admin-course-section-form__time-slot .admin-time12h__select--hour,.admin-course-section-form__time-slot .admin-time12h__select--minute,.admin-course-section-form__time-slot .admin-time12h__select--ap{min-width:0}.admin-course-section-form__time-slot .admin-time12h__select:focus{border-color:var(--amu-red);box-shadow:0 0 0 3px var(--amu-red-ring);outline:none}.admin-course-section-form__panel-title:before{content:"";flex-shrink:0;width:3px;height:.8125rem;border-radius:999px;background:linear-gradient(180deg,var(--amu-gold) 0%,var(--amu-red) 100%)}.admin-course-section-form__row{display:grid;gap:var(--csf-gap-field)}.admin-course-section-form__row--2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-course-section-form__field{display:flex;flex-direction:column;gap:var(--csf-gap-label);min-width:0}.admin-course-section-form__field>span,.admin-course-section-form__field-label{font-size:var(--csf-label);font-weight:600;letter-spacing:.015em;color:var(--portal-text-muted)}.admin-course-section-form__input,.admin-course-section-form__textarea{box-sizing:border-box;width:100%;min-height:var(--csf-control-h);padding:.4375rem .6875rem;font-size:var(--csf-text);line-height:1.35;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--csf-radius);transition:border-color .15s ease,box-shadow .15s ease}.admin-course-section-form__input:focus,.admin-course-section-form__textarea:focus{border-color:var(--amu-red);box-shadow:0 0 0 3px var(--amu-red-ring);outline:none}.admin-course-section-form__textarea{min-height:5.25rem;padding-top:.5625rem;resize:vertical;line-height:1.5}.admin-course-section-form__track-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.admin-course-section-form__track-option{min-height:var(--csf-control-h);padding:.4375rem .5rem;font-family:inherit;font-size:var(--csf-text);font-weight:600;letter-spacing:.01em;line-height:1.2;white-space:nowrap;color:var(--portal-text-muted);text-align:center;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--csf-radius);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.admin-course-section-form__track-option:hover:not(:disabled){border-color:color-mix(in srgb,var(--amu-red) 22%,var(--portal-border-subtle));color:var(--portal-text);background:color-mix(in srgb,var(--portal-accent-soft) 35%,var(--amu-card))}.admin-course-section-form__track-option--active.admin-course-section-form__track-option--en{color:var(--amu-red-dark);background:var(--portal-accent-soft);border-color:color-mix(in srgb,var(--amu-red) 28%,var(--portal-border-subtle));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--amu-red) 8%,transparent)}.admin-course-section-form__track-option--active.admin-course-section-form__track-option--cn{color:#6b4e00;background:color-mix(in srgb,var(--amu-gold) 18%,var(--amu-card));border-color:color-mix(in srgb,var(--amu-gold) 45%,var(--portal-border-subtle));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--amu-gold) 12%,transparent)}.admin-course-section-form__track-option:focus-visible{outline:none;box-shadow:0 0 0 3px var(--amu-red-ring)}.admin-course-section-form__track-option:disabled{opacity:.55;cursor:not-allowed}.admin-course-section-form__weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4375rem}.admin-course-section-form__weekday{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:var(--csf-control-h);padding:0 .125rem;font-family:inherit;font-size:.6875rem;font-weight:650;letter-spacing:.02em;line-height:1.15;color:var(--portal-text-muted);text-align:center;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--csf-radius);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.admin-course-section-form__weekday:hover:not(:disabled):not(.admin-course-section-form__weekday--active){border-color:color-mix(in srgb,var(--amu-red) 18%,var(--portal-border-subtle));color:var(--portal-text);background:color-mix(in srgb,var(--portal-accent-soft) 40%,var(--amu-card))}.admin-course-section-form__weekday--active{color:var(--amu-red-dark);font-weight:700;background:var(--portal-accent-soft);border-color:color-mix(in srgb,var(--amu-red) 26%,var(--portal-border-subtle));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--amu-red) 6%,transparent)}.admin-course-section-form__weekday:focus-visible{outline:none;box-shadow:0 0 0 3px var(--amu-red-ring)}.admin-course-section-form__weekday:disabled{opacity:.55;cursor:not-allowed}.admin-course-section-form__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.625rem;padding:.875rem var(--csf-pad-x) 1.0625rem;border-top:1px solid var(--portal-border-subtle);background:color-mix(in srgb,var(--portal-accent-soft) 22%,var(--amu-card))}.admin-course-section-form__footer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto}.admin-course-section-form__footer .portal-btn--compact{min-height:var(--csf-control-h);padding:.4375rem 1.0625rem;font-size:var(--csf-text);font-weight:600;letter-spacing:.01em;border-radius:var(--csf-radius)}@media (max-width: 960px){.admin-course-section-form-panel{--csf-pad-x: 1.375rem}.admin-course-section-form__grid{grid-template-columns:minmax(0,1fr)}.admin-course-section-form__panel+.admin-course-section-form__panel{border-left:none;border-top:1px solid var(--portal-border-subtle)}}@media (max-width: 540px){.admin-course-section-form-panel{--csf-pad-x: 1.125rem;--csf-gap-panel: 1.0625rem}.admin-course-section-form__row--2{grid-template-columns:minmax(0,1fr)}.admin-course-section-form__weekday{font-size:.625rem;letter-spacing:.03em}.admin-course-section-form__track-toggle{grid-template-columns:minmax(0,1fr)}}.admin-courses-page__header{margin-bottom:.85rem}.admin-courses-page__heading{flex:1;min-width:min(100%,20rem)}.admin-courses-page__lede{margin:.35rem 0 0;max-width:44rem;font-size:.875rem;line-height:1.45;color:var(--portal-text-muted)}.admin-courses-page__count{color:var(--portal-text-faint);font-weight:500}.admin-course-catalog-panel__toolbar,.admin-course-catalog-panel__search-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1rem;margin-bottom:.85rem}.admin-course-catalog-panel__total{margin:0;font-size:.8125rem;color:var(--portal-text-muted);white-space:nowrap}.admin-course-catalog-panel__search{flex:1 1 16rem;min-width:min(100%,16rem);display:flex;flex-direction:column;gap:.25rem}.admin-course-catalog-panel__search-label{font-size:.6875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-course-catalog-panel__search-input{width:100%;box-sizing:border-box}.admin-course-catalog-panel__range{margin:0;font-size:.8125rem;color:var(--portal-text-muted)}.admin-course-catalog-panel__alert{margin:0 0 .85rem;padding:.65rem .85rem;font-size:.8125rem;color:#b91c1c;background:color-mix(in srgb,#dc2626 8%,var(--amu-card));border:1px solid color-mix(in srgb,#dc2626 22%,var(--portal-border));border-radius:var(--portal-radius)}.admin-course-catalog-panel__empty{padding:1.25rem 1.15rem}.admin-course-catalog-panel__empty-title{margin:0;font-size:.9375rem;font-weight:600}.admin-course-catalog-panel__empty-detail{margin:.35rem 0 0;font-size:.875rem;color:var(--portal-text-muted)}.admin-course-catalog-panel__empty-inline{margin:.5rem 0 0;font-size:.875rem;color:var(--portal-text-muted)}.admin-course-catalog-panel__section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem;margin-bottom:.65rem}.admin-course-catalog-panel__section-title{margin:0;font-size:.9375rem;font-weight:650;color:var(--portal-text)}.admin-course-catalog-layout{display:grid;grid-template-columns:minmax(11rem,14rem) minmax(0,1fr);gap:1rem 1.25rem;align-items:start}.admin-course-catalog-nav{position:sticky;top:.75rem}.admin-course-catalog-nav__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.admin-course-catalog-nav__item{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;align-items:center;gap:.35rem .5rem;width:100%;padding:.45rem .55rem;font-family:inherit;text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--portal-radius);cursor:pointer;transition:background .12s ease,border-color .12s ease}.admin-course-catalog-nav__item:hover{background:#f8fafc;border-color:var(--portal-border-subtle)}.admin-course-catalog-nav__item--active{background:#f1f5f9;border-color:#e2e8f0}.admin-course-catalog-nav__code{font-size:.75rem;font-weight:700;letter-spacing:.03em;color:var(--portal-text-muted)}.admin-course-catalog-nav__item--active .admin-course-catalog-nav__code{color:var(--portal-text)}.admin-course-catalog-nav__label{font-size:.75rem;font-weight:500;line-height:1.25;color:var(--portal-text-muted)}.admin-course-catalog-nav__item--active .admin-course-catalog-nav__label{color:var(--portal-text);font-weight:600}.admin-course-catalog-nav__count{font-size:.6875rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--portal-text-faint)}.admin-course-catalog-main{min-width:0}.admin-course-catalog-card--compact .admin-course-catalog-card__main{display:grid;grid-template-columns:4.25rem minmax(0,1fr) auto auto;gap:.65rem .85rem;align-items:start}.admin-course-catalog-card--compact .admin-course-catalog-card__footer{margin-top:.35rem;padding-top:.35rem;border-top:1px solid var(--portal-border-subtle)}.admin-course-catalog-card--compact .admin-course-catalog-card__text{min-width:0}.admin-course-catalog-card--compact .admin-course-catalog-card__title{margin:0;font-size:.875rem}.admin-course-catalog-card--compact .admin-course-catalog-card__subtitle{margin:.1rem 0 0;font-size:.75rem}.admin-course-catalog-card--compact .admin-course-catalog-card__code{font-size:.8125rem;font-weight:700;padding-top:.05rem}.admin-course-catalog-card--compact .admin-course-catalog-card__credits,.admin-course-catalog-card--compact .admin-course-catalog-card__category{align-self:start;margin-top:.05rem}.admin-course-catalog-panel__list{display:flex;flex-direction:column;gap:.65rem}.admin-course-catalog-card{display:flex;flex-direction:column;gap:.55rem;padding:.9rem 1rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) + 2px);box-shadow:var(--portal-shadow)}.admin-course-catalog-card__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.65rem 1rem}.admin-course-catalog-card__code{display:inline-block;font-size:.8125rem;font-weight:700;letter-spacing:.02em;color:var(--portal-text-muted)}.admin-course-catalog-card__title{margin:.15rem 0 0;font-size:.9375rem;font-weight:650;color:var(--portal-text)}.admin-course-catalog-card__subtitle{margin:.12rem 0 0;font-size:.8125rem;color:var(--portal-text-muted)}.admin-course-catalog-card__meta{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.admin-course-catalog-card__credits,.admin-course-catalog-card__category{display:inline-flex;padding:.18rem .5rem;font-size:.75rem;font-weight:650;border-radius:999px}.admin-course-catalog-card__credits{color:#334155;background:#e2e8f0}.admin-course-catalog-card__category{color:#475569;background:#f1f5f9}.admin-course-catalog-card__footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem .85rem;padding-top:.15rem;border-top:1px solid var(--portal-border-subtle)}.admin-course-catalog-card__action{font-size:.8125rem;font-weight:600;color:var(--portal-text-muted);text-decoration:none;background:transparent;border:none;padding:.2rem .1rem;cursor:pointer}.admin-course-catalog-card__action:hover{color:var(--portal-text);text-decoration:underline}.admin-course-catalog-panel__pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.65rem 1rem;margin-top:1rem}.admin-course-catalog-panel__page-btn{min-height:2rem;padding:.3rem .75rem;font-family:inherit;font-size:.8125rem;font-weight:600;color:var(--portal-text);background:var(--amu-card);border:1px solid var(--portal-border);border-radius:var(--portal-radius);cursor:pointer}.admin-course-catalog-panel__page-btn:hover:not(:disabled){background:#fafbfc;border-color:#c5ced9}.admin-course-catalog-panel__page-btn:disabled{opacity:.5;cursor:not-allowed}.admin-course-catalog-panel__page-status{font-size:.8125rem;color:var(--portal-text-muted)}@media (max-width: 640px){.admin-course-catalog-panel__toolbar,.admin-course-catalog-panel__search-row{flex-direction:column;align-items:stretch}.admin-course-catalog-layout{grid-template-columns:1fr}.admin-course-catalog-nav{position:static}.admin-course-catalog-nav__list{flex-direction:row;flex-wrap:wrap;gap:.35rem}.admin-course-catalog-nav__item{width:auto;grid-template-columns:auto auto}.admin-course-catalog-nav__label{display:none}.admin-course-catalog-card--compact .admin-course-catalog-card__main{grid-template-columns:4rem minmax(0,1fr)}.admin-course-catalog-card--compact .admin-course-catalog-card__credits,.admin-course-catalog-card--compact .admin-course-catalog-card__category{grid-column:2}}@media (max-width: 1100px){.admin-course-sections-explorer__controls{grid-template-columns:1fr 1fr}.admin-course-sections-explorer__field--search{grid-column:1 / -1}}@media (max-width: 768px){.admin-course-sections-explorer__controls{grid-template-columns:1fr}.admin-course-sections-explorer__summary{align-items:flex-start}.admin-course-sections-explorer__actions{width:100%}.admin-course-sections-explorer__actions .admin-academic-terms-page__add-btn{width:100%;justify-content:center}.admin-course-section-form__row--3,.admin-course-section-form__row--2{grid-template-columns:1fr}.admin-course-sections-page__header{flex-direction:column}}.admin-page__toolbar.admin-course-sections-toolbar{display:grid;grid-template-columns:minmax(0,1fr);row-gap:.85rem;align-items:start}.admin-course-sections-toolbar__row{display:grid;align-items:center;column-gap:1rem;row-gap:.65rem;min-height:2.75rem;box-sizing:border-box}.admin-course-sections-toolbar__row--title{grid-template-columns:minmax(0,1fr) auto}.admin-course-sections-toolbar__title.admin-page__title--inline{min-width:0}.admin-course-sections-toolbar__group{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .75rem}.admin-course-sections-toolbar__group--primary{justify-content:flex-end}.admin-course-sections-toolbar__field.admin-field--inline{align-items:center;gap:.5rem}.admin-course-sections-toolbar__field{min-width:0}.admin-course-sections-toolbar__label{flex-shrink:0;align-self:center}.admin-course-sections-toolbar__timetable{flex-shrink:0;align-self:center;white-space:nowrap;box-sizing:border-box;min-height:2.375rem;display:inline-flex;align-items:center}.admin-course-sections-toolbar__term{flex-shrink:0}.admin-course-sections-toolbar__term .admin-input{box-sizing:border-box;min-width:19rem;width:19rem;max-width:100%}.admin-course-sections-toolbar__row--filters{grid-template-columns:minmax(0,1fr) auto auto;justify-items:start;column-gap:.75rem}.admin-course-sections-toolbar__row--filters>.admin-course-sections-toolbar__course{justify-self:end}.admin-course-sections-toolbar__row--filters>.admin-course-sections-toolbar__credits{justify-self:end}.admin-course-sections-toolbar__credits .admin-course-sections-toolbar__credits-input{box-sizing:border-box;min-width:3.25rem;width:4.25rem;max-width:100%;cursor:default}.admin-course-sections-toolbar__search .admin-input.admin-input--search{box-sizing:border-box;min-width:20rem;width:20rem;max-width:100%}.admin-course-sections-toolbar__course .admin-input.admin-input--wide{box-sizing:border-box;min-width:22rem;width:22rem;max-width:100%}@media (max-width: 1023px){.admin-page__toolbar.admin-course-sections-toolbar{row-gap:.75rem}.admin-course-sections-toolbar__row--title{grid-template-columns:1fr;align-items:start}.admin-course-sections-toolbar__group--primary{justify-content:flex-start}.admin-course-sections-toolbar__row--filters{grid-template-columns:1fr;justify-items:stretch;min-height:0}.admin-course-sections-toolbar__row--filters>.admin-course-sections-toolbar__course,.admin-course-sections-toolbar__row--filters>.admin-course-sections-toolbar__credits{justify-self:stretch}.admin-course-sections-toolbar__term .admin-input,.admin-course-sections-toolbar__course .admin-input.admin-input--wide,.admin-course-sections-toolbar__search .admin-input.admin-input--search{width:100%;min-width:0}}.admin-course-sections-list{display:flex;flex-direction:column;gap:1.35rem;margin-bottom:var(--portal-space-section)}.admin-course-sections-list .portal-table-wrap{margin-bottom:0;max-width:100%;overflow-x:auto;overflow-y:hidden}.admin-course-sections-list__state-wrap{margin-bottom:var(--portal-space-section)}.admin-course-sections-list__state{margin:0;padding:1rem 1.25rem;font-size:.875rem;color:var(--portal-text-muted)}.admin-course-sections-group__title{margin:0 0 .5rem;font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-muted)}.admin-course-sections-page .admin-course-sections-table{table-layout:fixed;width:100%;min-width:900px;max-width:none}.admin-course-sections-page .admin-course-sections-table th,.admin-course-sections-page .admin-course-sections-table td{text-align:center;vertical-align:middle;padding:10px 12px;overflow:hidden;text-overflow:ellipsis}.admin-course-sections-page .admin-course-sections-table thead th{white-space:nowrap;line-height:1.2;overflow:hidden;text-overflow:ellipsis;letter-spacing:.05em}.admin-course-sections-page .admin-course-sections-table .admin-course-sections-table__header-label{display:block;width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-course-sections-page .admin-course-sections-table .admin-course-sections-table__header-label--mobile{display:none}.admin-course-sections-page .admin-course-sections-table th:last-child,.admin-course-sections-page .admin-course-sections-table td:last-child{text-align:center}.admin-course-sections-page .admin-course-sections-table th:nth-child(1),.admin-course-sections-page .admin-course-sections-table td:nth-child(1){width:5rem;white-space:nowrap}.admin-course-sections-page .admin-course-sections-table th:nth-child(2),.admin-course-sections-page .admin-course-sections-table td:nth-child(2){width:12.5rem;word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.admin-course-sections-page .admin-course-sections-table th:nth-child(3),.admin-course-sections-page .admin-course-sections-table td:nth-child(3){width:140px;min-width:140px}.admin-course-sections-page .admin-course-sections-table th:nth-child(4),.admin-course-sections-page .admin-course-sections-table td:nth-child(4){width:70px;font-variant-numeric:tabular-nums}.admin-course-sections-page .admin-course-sections-table th:nth-child(5),.admin-course-sections-page .admin-course-sections-table td:nth-child(5){width:110px;min-width:110px;white-space:nowrap;line-height:1.25}.admin-course-sections-page .admin-course-sections-table th:nth-child(6),.admin-course-sections-page .admin-course-sections-table td:nth-child(6){width:6.25rem;white-space:normal;font-variant-numeric:tabular-nums}.admin-course-sections-page .admin-course-sections-table th:nth-child(7),.admin-course-sections-page .admin-course-sections-table td:nth-child(7),.admin-course-sections-page .admin-course-sections-table th:nth-child(8),.admin-course-sections-page .admin-course-sections-table td:nth-child(8){width:5.625rem;white-space:normal;font-variant-numeric:tabular-nums}.admin-course-sections-page .admin-course-sections-table th:nth-child(9),.admin-course-sections-page .admin-course-sections-table td:nth-child(9){width:6.25rem;white-space:normal;line-height:1.25;word-break:normal;overflow-wrap:break-word}.admin-course-sections-page .admin-course-sections-table th:nth-child(10),.admin-course-sections-page .admin-course-sections-table td:nth-child(10){width:5rem;word-break:break-word;overflow-wrap:break-word}.admin-course-sections-page .admin-course-sections-table th:nth-child(11),.admin-course-sections-page .admin-course-sections-table td:nth-child(11){width:8.125rem;font-variant-numeric:tabular-nums}.admin-course-sections-page .admin-course-sections-table th:nth-child(11){white-space:nowrap}.admin-course-sections-page .admin-course-sections-table th:nth-child(12),.admin-course-sections-page .admin-course-sections-table td:nth-child(12){width:5.625rem}.admin-course-sections-page .admin-course-sections-table th:nth-child(12){white-space:nowrap}.admin-course-sections-page .admin-course-sections-table th:nth-child(13),.admin-course-sections-page .admin-course-sections-table td:nth-child(13){width:8.125rem}.admin-course-sections-page .admin-course-sections-table th:nth-child(14),.admin-course-sections-page .admin-course-sections-table td:nth-child(14){width:6.25rem}.admin-course-sections-page .admin-course-sections-table th:nth-child(15),.admin-course-sections-page .admin-course-sections-table td:nth-child(15){width:8.25rem;min-width:8.25rem}.admin-course-sections-page .admin-course-sections-table td.admin-course-sections-table__notes{font-size:.8125rem;color:var(--portal-text-muted);word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.admin-course-sections-page .admin-course-sections-table td.admin-course-sections-table__empty-row{text-align:center;color:var(--portal-text-muted);font-size:.875rem;padding-top:1rem;padding-bottom:1rem}.admin-course-sections-page .admin-course-sections-table__reg-none{font-size:.8125rem;color:var(--portal-text-muted)}.admin-course-sections-page .admin-course-sections-table__reg-open{font-size:.8125rem;font-weight:600;color:var(--portal-text)}.admin-course-sections-page .admin-course-sections-table td.admin-course-sections-table__actions{padding-top:.6rem;padding-bottom:.6rem}.admin-course-sections-page .admin-course-sections-table__action-stack{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;min-width:8.25rem;width:fit-content;max-width:100%;margin-inline:auto}.admin-course-sections-page .admin-course-sections-table__action-stack .portal-btn{width:100%;box-sizing:border-box}.admin-course-section-roster{max-width:56rem}.admin-course-section-roster__panel{background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);overflow:hidden}.admin-course-section-roster__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;padding:.65rem .85rem;border-bottom:1px solid var(--portal-border-subtle);background:#fafafa}.admin-course-section-roster__toolbar-start{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;min-width:0;flex:1 1 16rem}.admin-course-section-roster__toolbar-end{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem .85rem;flex:0 1 auto}.admin-course-section-roster__back{font-size:.8125rem;font-weight:600;color:var(--portal-text-muted);text-decoration:none;white-space:nowrap}.admin-course-section-roster__back:hover{color:var(--portal-text);text-decoration:underline}.admin-course-section-roster__course{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;min-width:0}.admin-course-section-roster__course-code{font-size:.875rem;font-weight:700;color:var(--portal-text);letter-spacing:.01em}.admin-course-section-roster__course-title{font-size:.875rem;color:var(--portal-text)}.admin-course-section-roster__meta{font-size:.8125rem;color:var(--portal-text-muted)}.admin-course-section-roster__meta:before{content:"·";margin-right:.5rem;color:var(--portal-text-faint)}.admin-course-section-roster__stats{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .45rem;font-size:.75rem;color:var(--portal-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.admin-course-section-roster__stats span[aria-hidden=true]{color:var(--portal-text-faint)}.admin-course-section-roster__toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .65rem}.admin-course-section-roster__link{margin:0;padding:0;border:none;background:transparent;font:inherit;font-size:.8125rem;font-weight:500;color:var(--portal-text);cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:2px}.admin-course-section-roster__link:hover:not(:disabled){text-decoration-color:currentColor}.admin-course-section-roster__link:disabled{opacity:.4;cursor:not-allowed}.admin-course-section-roster__link--save{font-weight:600}.admin-course-section-roster__link--muted{color:var(--portal-text-muted)}.admin-course-section-roster__banner{margin:0;padding:.45rem .85rem;font-size:.8125rem;color:var(--portal-text-muted);border-bottom:1px solid var(--portal-border-subtle);background:#fafafa}.admin-course-section-roster__banner--error{color:#b45309;background:#fffbeb}.admin-course-section-roster__body{min-height:4rem}.admin-course-section-roster__message{margin:0;padding:1.5rem .85rem;text-align:center;font-size:.875rem;color:var(--portal-text-muted)}.admin-course-section-roster__message--error{padding:.85rem 0;text-align:left;color:#b45309}.admin-course-section-roster__table{width:100%;border-collapse:collapse}.admin-course-section-roster__table thead th{padding:.45rem .85rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-align:left;color:var(--portal-text-faint);border-bottom:1px solid var(--portal-border-subtle);background:#fafafa}.admin-course-section-roster__table tbody td{padding:.5rem .85rem;vertical-align:middle;font-size:.875rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-course-section-roster__table tbody tr:last-child td{border-bottom:none}.admin-course-section-roster__student-name{display:block;font-weight:600;font-size:.875rem;line-height:1.3}.admin-course-section-roster__student-id{display:block;margin-top:.1rem;font-size:.75rem;color:var(--portal-text-muted);font-variant-numeric:tabular-nums}.admin-course-section-roster__grade-cell{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem}.admin-course-section-roster__grade-select{min-width:4.25rem;width:auto;padding:.3rem .45rem;font-size:.8125rem}.admin-course-section-roster__row-action{width:1%;white-space:nowrap;text-align:right}.admin-course-section-roster__muted{color:var(--portal-text-faint)}@media (max-width: 720px){.admin-course-section-roster__toolbar{flex-direction:column;align-items:stretch}.admin-course-section-roster__toolbar-end{justify-content:space-between}.admin-course-section-roster__course{flex-direction:column;align-items:flex-start;gap:.15rem}.admin-course-section-roster__meta:before{content:none;margin:0}}.admin-field--weekdays{margin:0;padding:0;border:none;min-width:0}.admin-field--weekdays .admin-field__label{padding:0}.admin-weekday-checkboxes{display:flex;flex-wrap:wrap;gap:.35rem .85rem;padding:.5rem .65rem;border:1px solid #cccccc;border-radius:var(--portal-radius);background:var(--amu-card)}.admin-weekday-checkboxes__item{display:inline-flex;align-items:center;gap:.35rem;font-size:.8125rem;cursor:pointer;-webkit-user-select:none;user-select:none}.admin-weekday-checkboxes__item input{margin:0}.admin-timetable-wrap{overflow-x:auto;margin-top:.5rem;border:1px solid var(--portal-border-subtle);border-radius:8px;background:var(--amu-card)}.admin-scheduling-timetable-card .admin-timetable-wrap{margin-top:0;border:none;border-radius:0;background:transparent}.admin-scheduling-timetable-page__toolbar{margin-bottom:1rem}.admin-scheduling-timetable-card{background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:8px;overflow:hidden}.admin-scheduling-timetable-card__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.875rem 1rem 0;border-bottom:1px solid var(--portal-border-subtle);background:#fafbfc}.admin-scheduling-timetable-tabs{margin:0}.admin-scheduling-timetable-card__body{padding:0}.admin-scheduling-timetable-card__body .portal-text-muted{margin:0;padding:1.25rem 1rem}.admin-scheduling-timetable-card .admin-timetable-wrap{border-radius:0}.admin-timetable{width:100%;border-collapse:collapse;font-size:.75rem;table-layout:fixed}.admin-timetable th,.admin-timetable td{border:1px solid var(--portal-border-subtle);padding:.35rem .4rem;vertical-align:top}.admin-timetable th{background:var(--page-gray);font-weight:600;text-align:center}.admin-timetable__time{width:5.5rem;white-space:nowrap;font-weight:600;background:var(--page-gray)}.admin-timetable__cell{min-height:3.25rem;background:var(--amu-card)}.admin-timetable__blocks{display:flex;flex-direction:column;gap:.35rem}.admin-timetable__block{padding:.35rem .45rem;border-radius:6px;background:#8b00000f;border:1px solid rgba(139,0,0,.18);line-height:1.35}.admin-timetable__block-title{font-weight:700;color:var(--text-dark)}.admin-timetable__block-meta{font-size:.7rem;color:var(--portal-text-muted)}.admin-timetable-v2{--admin-tt-slot: 52px;--admin-tt-line: rgba(28, 35, 51, .07);--admin-tt-weekend-bg: #f9fafb;display:flex;flex-direction:column;min-width:720px;font-size:.8125rem}.admin-timetable-v2__head{display:grid;grid-template-columns:4.75rem repeat(var(--admin-tt-day-count, 7),minmax(0,1fr));border-bottom:1px solid var(--admin-tt-line);background:#f8f9fb}.admin-timetable-v2__corner{border-right:1px solid var(--admin-tt-line)}.admin-timetable-v2__day-head{padding:.7rem .35rem;font-size:.6875rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;text-align:center;color:var(--portal-text-faint);border-left:1px solid var(--admin-tt-line)}.admin-timetable-v2__head .admin-timetable-v2__day-head:nth-child(7),.admin-timetable-v2__head .admin-timetable-v2__day-head:nth-child(8){color:var(--portal-text-muted);background:var(--admin-tt-weekend-bg)}.admin-timetable-v2__main{display:grid;grid-template-columns:4.75rem repeat(var(--admin-tt-day-count, 7),minmax(0,1fr))}.admin-timetable-v2__times{display:flex;flex-direction:column;flex-shrink:0;border-right:1px solid var(--admin-tt-line);background:#f8f9fb}.admin-timetable-v2__time-cell{box-sizing:border-box;height:var(--admin-tt-slot);padding:.35rem .5rem 0;font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;color:var(--portal-text-faint);border-top:1px solid transparent}.admin-timetable-v2__time-cell:first-child{border-top:none}.admin-timetable-v2__day-col{border-left:1px solid var(--admin-tt-line);background:#fff}.admin-timetable-v2__day-col:nth-child(7),.admin-timetable-v2__day-col:nth-child(8){background:var(--admin-tt-weekend-bg)}.admin-timetable-v2__day-track{position:relative;box-sizing:border-box;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--admin-tt-slot) - 1px),var(--admin-tt-line) calc(var(--admin-tt-slot) - 1px),var(--admin-tt-line) var(--admin-tt-slot))}.admin-timetable-v2__block{position:absolute;box-sizing:border-box;margin:0;padding:.4rem .45rem;border:1px solid rgba(140,29,44,.16);border-radius:4px;background:#fff8f9;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:.1rem;min-height:0;overflow:hidden;font:inherit;color:inherit;line-height:1.3}.admin-timetable-v2__block:hover{background:#fceef0;border-color:#8c1d2c47}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block{border-radius:.5rem;box-shadow:0 1px 2px #0f172a0f;text-align:center;align-items:center}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block .admin-timetable-v2__block-title,.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block .admin-timetable-v2__block-meta{width:100%;text-align:center}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--enrolled{background:color-mix(in srgb,#107c10 14%,var(--amu-card, #fff));border-color:color-mix(in srgb,#107c10 32%,var(--portal-border-subtle))}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--enrolled:hover{background:color-mix(in srgb,#107c10 18%,var(--amu-card, #fff));border-color:color-mix(in srgb,#107c10 38%,var(--portal-border-subtle))}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--open{background:var(--amu-card, var(--portal-surface));border-color:var(--portal-border-subtle)}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--open:hover{background:var(--amu-card, var(--portal-surface));border-color:color-mix(in srgb,var(--portal-text) 24%,var(--portal-border-subtle))}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--full{background:color-mix(in srgb,var(--portal-text) 5%,var(--amu-card, #fff));border-color:color-mix(in srgb,var(--portal-text) 18%,var(--portal-border-subtle));opacity:.88}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--full:hover{background:color-mix(in srgb,var(--portal-text) 7%,var(--amu-card, #fff))}.admin-timetable-v2__block:focus-visible{outline:2px solid var(--amu-red);outline-offset:0;z-index:3}.admin-timetable-v2__block-title,.admin-timetable-v2__block-code{font-size:.75rem;font-weight:600;letter-spacing:.01em;color:var(--amu-red-dark)}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--enrolled .admin-timetable-v2__block-title{color:#0b5f0b}.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--open .admin-timetable-v2__block-title,.portal-clinical-offered-timetable__grid .admin-timetable-v2__block.portal-clinical-offered-timetable__block--full .admin-timetable-v2__block-title{color:var(--portal-text)}.admin-timetable-v2__block-subtitle{font-size:.6875rem;font-weight:400;line-height:1.35;color:var(--portal-text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.admin-timetable-v2__block-meta{font-size:.625rem;font-weight:400;color:var(--portal-text-faint)}.admin-time12h{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.admin-time12h__sep{font-weight:600;color:var(--portal-text-muted);-webkit-user-select:none;user-select:none}.admin-time12h__select{width:auto;min-width:3.25rem}.admin-time12h__select--ap{min-width:4.25rem}.admin-time12h__select--hour{min-width:4rem}.admin-time12h__select--minute{min-width:4.25rem}.admin-time12h__preview{flex-basis:100%;margin-left:.1rem;font-size:.8125rem;font-weight:500;color:var(--portal-text-muted)}.admin-section-detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1250;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box;background:#0006}.admin-section-detail-modal{box-sizing:border-box;width:100%;max-width:26rem;max-height:min(90vh,34rem);overflow:auto;padding:1.2rem 1.3rem;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:var(--amu-card);box-shadow:var(--portal-shadow)}.admin-section-detail-modal--form-wide{max-width:min(42rem,100%);max-height:min(92vh,46rem)}.admin-section-detail-modal--academic-term-form{max-width:min(52rem,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:visible;padding:.95rem 1.15rem 1rem}.admin-section-detail-modal--academic-term-form .admin-section-detail-modal__title{margin-bottom:.2rem;font-size:1rem}.admin-academic-term-form{display:flex;flex-direction:column;gap:.65rem}.admin-academic-term-form__meta{margin-bottom:.55rem;font-size:.75rem;line-height:1.35}.admin-academic-term-form__sections{display:flex;flex-direction:column;gap:.55rem}.admin-academic-term-form__section{display:flex;flex-direction:column;gap:.45rem}.admin-academic-term-form__section+.admin-academic-term-form__section{padding-top:.55rem;border-top:1px solid var(--portal-border-subtle)}.admin-academic-term-form__section-title{margin:0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-academic-term-form__row{display:grid;gap:.45rem .65rem}.admin-academic-term-form__row--1{grid-template-columns:minmax(0,1fr)}.admin-academic-term-form__row--2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-academic-term-form__row--3{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-academic-term-form__row--4{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-academic-term-form__field{min-width:0}.admin-academic-term-form__field>label{display:block;margin-bottom:.2rem;font-size:.75rem;font-weight:600;color:var(--portal-text)}.admin-academic-term-form__input{box-sizing:border-box;width:100%;min-height:2rem;padding:.3rem .45rem;font-size:.8125rem}.admin-academic-term-form__section--options{gap:.35rem}.admin-academic-term-form__options{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem}.admin-academic-term-form__checkbox{display:inline-flex;align-items:center;gap:.4rem;font-size:.8125rem;font-weight:500;color:var(--portal-text);cursor:pointer}.admin-academic-term-form__checkbox input{width:auto;margin:0}.admin-academic-term-form__actions{margin-top:.15rem;padding-top:.65rem;border-top:1px solid var(--portal-border-subtle)}.admin-academic-term-form .admin-courses-feedback--error{margin:0;font-size:.8125rem}@media (max-width: 720px){.admin-academic-term-form__row--4,.admin-academic-term-form__row--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.admin-section-detail-modal--academic-term-form{max-width:calc(100vw - 1rem);padding:.85rem .9rem}.admin-academic-term-form__row--4,.admin-academic-term-form__row--3,.admin-academic-term-form__row--2{grid-template-columns:minmax(0,1fr)}}.admin-academic-terms-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.admin-academic-terms-page__toolbar{align-items:flex-start}.admin-academic-terms-page__heading{flex:1;min-width:min(100%,28rem)}.admin-academic-terms-page__lede{margin:.35rem 0 0;max-width:42rem;font-size:.875rem;line-height:1.45;color:var(--portal-text-muted)}.admin-academic-terms-page__count{color:var(--portal-text-faint);font-weight:500}.admin-academic-terms-page__add-btn{display:inline-flex;align-items:center;gap:.4rem;min-height:2.125rem;padding:.35rem .85rem;font-family:inherit;font-size:.875rem;font-weight:600;line-height:1.2;color:var(--portal-text);background:var(--amu-card);border:1px solid var(--portal-border);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow);cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.admin-academic-terms-page__add-btn:hover:not(:disabled){background:#fafbfc;border-color:#c5ced9;box-shadow:0 1px 3px #1c233314}.admin-academic-terms-page__add-btn:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.admin-academic-terms-page__add-btn:disabled{opacity:.55;cursor:not-allowed}.admin-academic-terms-page__add-icon{display:inline-flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;font-size:1rem;font-weight:500;line-height:1;color:var(--portal-text-muted)}.admin-academic-terms-page__save-btn{color:#fff;background:#334155;border-color:#334155}.admin-academic-terms-page__save-btn:hover:not(:disabled){background:#1e293b;border-color:#1e293b;color:#fff}.admin-academic-terms-page__alert{margin:0 0 .85rem;padding:.65rem .85rem;font-size:.8125rem;line-height:1.4;color:#b91c1c;background:color-mix(in srgb,#dc2626 8%,var(--amu-card));border:1px solid color-mix(in srgb,#dc2626 22%,var(--portal-border));border-radius:var(--portal-radius)}.admin-academic-terms-list{display:flex;flex-direction:column;gap:.85rem}.admin-academic-terms-empty{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.35rem 1.25rem}.admin-academic-terms-empty__title{margin:0;font-size:.9375rem;font-weight:600;color:var(--portal-text)}.admin-academic-terms-empty__detail{margin:0 0 .35rem;max-width:32rem;font-size:.875rem;line-height:1.45;color:var(--portal-text-muted)}.admin-academic-term-card{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.15rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) + 2px);box-shadow:var(--portal-shadow)}.admin-academic-term-card__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.65rem 1rem}.admin-academic-term-card__master{flex-shrink:0;margin-left:auto}.admin-academic-term-card__identity{min-width:0}.admin-academic-term-card__title{margin:0;font-family:inherit;font-size:1.0625rem;font-weight:650;letter-spacing:-.01em;color:var(--portal-text)}.admin-academic-term-card__meta{margin:.2rem 0 0;font-size:.8125rem;color:var(--portal-text-muted)}.admin-academic-term-card--portal-default{border-color:color-mix(in srgb,#14b8a6 35%,var(--portal-border-subtle));box-shadow:var(--portal-shadow),0 0 0 1px color-mix(in srgb,#14b8a6 12%,transparent)}.admin-academic-term-master{display:inline-flex;align-items:center;justify-content:flex-end;gap:.55rem;width:9.25rem;padding:0;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1.2;color:var(--portal-text-muted);background:transparent;border:none;cursor:default;white-space:nowrap}.admin-academic-term-master--off{cursor:pointer;color:var(--portal-text)}.admin-academic-term-master--off:hover:not(:disabled){color:#0f766e}.admin-academic-term-master--off:disabled{opacity:.55;cursor:not-allowed}.admin-academic-term-master--on{color:#0f766e}.admin-academic-term-master__track{position:relative;display:block;flex-shrink:0;width:2.25rem;height:1.25rem;border-radius:999px;background:#cbd5e1;transition:background .15s ease}.admin-academic-term-master--on .admin-academic-term-master__track{background:#14b8a6}.admin-academic-term-master--off:hover:not(:disabled) .admin-academic-term-master__track{background:#94a3b8}.admin-academic-term-master__thumb{position:absolute;top:2px;left:2px;width:calc(1.25rem - 4px);height:calc(1.25rem - 4px);border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a2e;transition:transform .15s ease}.admin-academic-term-master--on .admin-academic-term-master__thumb{transform:translate(1rem)}.admin-academic-term-master__label{flex:1 1 auto;text-align:right;letter-spacing:.01em}.admin-academic-term-master--off:focus-visible{outline:2px solid var(--portal-accent);outline-offset:3px;border-radius:4px}.admin-academic-term-card__schedule{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--portal-border-subtle)}.admin-academic-term-card__schedule-row{display:grid;grid-template-columns:6.75rem minmax(0,1fr);column-gap:1rem;align-items:baseline}.admin-academic-term-card__schedule-row--section-start{margin-top:.15rem;padding-top:.65rem;border-top:1px solid var(--portal-border-subtle)}.admin-academic-term-card__schedule-label{font-size:.8125rem;font-weight:600;line-height:1.35;color:var(--portal-text-muted)}.admin-academic-term-card__schedule-value{font-size:.8125rem;font-weight:500;line-height:1.35;color:var(--portal-text);font-variant-numeric:tabular-nums}.admin-academic-term-card__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .85rem;padding-top:.15rem;border-top:1px solid var(--portal-border-subtle)}.admin-academic-term-card__action{min-height:0;padding:.2rem .35rem;font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1.3;background:transparent;border:none;cursor:pointer;transition:color .15s ease,opacity .15s ease}.admin-academic-term-card__action--edit{color:var(--portal-text-muted);margin-left:auto}.admin-academic-term-card__action--delete{color:#b91c1c}.admin-academic-term-card__action--delete:hover:not(:disabled){color:#991b1b;text-decoration:underline}.admin-academic-term-card__action--edit:hover:not(:disabled){color:var(--portal-text);text-decoration:underline}.admin-academic-term-card__action:disabled{opacity:.55;cursor:not-allowed}.admin-academic-term-card__action:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px;border-radius:2px}.admin-academic-terms-table-wrap{overflow-x:auto}.admin-academic-terms-table{min-width:920px}.admin-academic-terms__checkbox-label{display:flex;align-items:center;gap:.45rem;font-size:.8125rem;font-weight:600;color:var(--portal-text);cursor:pointer}.admin-academic-terms__checkbox-label input{width:auto;margin:0}@media (max-width: 640px){.admin-academic-terms-page__toolbar{flex-direction:column;align-items:stretch}.admin-academic-terms-page__toolbar .admin-page__toolbar-actions{margin-left:0}.admin-academic-term-card__schedule-row{grid-template-columns:5.5rem minmax(0,1fr);column-gap:.75rem}.admin-academic-term-card__header{flex-direction:column;align-items:stretch}.admin-academic-term-card__master{margin-left:0}.admin-academic-term-master{width:100%;justify-content:flex-start}.admin-academic-term-master__label{flex:0 1 auto;text-align:left}}.admin-section-detail-modal__title{margin:0 0 .35rem;font-size:1.05rem;font-weight:600;color:var(--portal-text)}.admin-section-detail-modal__meta{margin:0 0 .85rem;font-size:.8125rem;color:var(--portal-text-muted);line-height:1.4}.admin-section-detail-modal__dl{margin:0;font-size:.875rem}.admin-section-detail-modal__dl>div{display:grid;grid-template-columns:7.5rem 1fr;gap:.35rem .65rem;margin-bottom:.45rem}.admin-section-detail-modal__dl dt{margin:0;font-weight:600;color:var(--portal-text-muted)}.admin-section-detail-modal__dl dd{margin:0;color:var(--portal-text);word-break:break-word}.admin-section-detail-modal__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin-top:1.1rem}.admin-section-detail-modal--course-section{display:flex;flex-direction:column;max-width:min(28rem,100%);max-height:min(90vh,36rem);padding:0;overflow:hidden;border-radius:8px;border-color:#8c1d2c1f;box-shadow:none}.admin-course-section-detail__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;padding:1rem 1rem .875rem;background:#fff8f9;border-bottom:1px solid rgba(140,29,44,.1)}.admin-course-section-detail__head-text{min-width:0}.admin-course-section-detail__code{margin:0 0 .25rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--amu-red-dark)}.admin-course-section-detail__title{margin:0;font-size:1.0625rem;font-weight:600;line-height:1.35;color:var(--text-dark);word-break:break-word}.admin-course-section-detail__subtitle{margin:.25rem 0 0;font-size:.8125rem;line-height:1.4;color:var(--portal-text-muted)}.admin-course-section-detail__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0;padding:0;border:1px solid rgba(140,29,44,.16);border-radius:4px;background:#fff;color:var(--amu-red-dark);font-size:1.25rem;line-height:1;cursor:pointer}.admin-course-section-detail__close:hover{background:#fceef0;border-color:#8c1d2c47}.admin-course-section-detail__close:focus-visible{outline:2px solid var(--amu-red);outline-offset:0}.admin-course-section-detail__body{flex:1;min-height:0;padding:1rem;overflow:auto}.admin-course-section-detail__chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.admin-course-section-detail__chip{display:inline-flex;align-items:center;padding:.2rem .5rem;border:1px solid rgba(140,29,44,.14);border-radius:4px;background:#fff8f9;font-size:.6875rem;font-weight:600;line-height:1.3;color:var(--amu-red-dark)}.admin-course-section-detail__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem}.admin-course-section-detail__item{display:flex;flex-direction:column;gap:.2rem;min-width:0}.admin-course-section-detail__item--wide{grid-column:1 / -1}.admin-course-section-detail__label{font-size:.625rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-course-section-detail__value{font-size:.8125rem;line-height:1.4;color:var(--portal-text);word-break:break-word}.admin-course-section-detail__error{margin:.75rem 0 0}.admin-course-section-detail__foot{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;padding:.85rem 1rem;border-top:1px solid var(--portal-border-subtle);background:#fafbfc}@media (max-width: 480px){.admin-course-section-detail__grid{grid-template-columns:minmax(0,1fr)}}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:.5rem}.admin-dashboard-card{display:flex;flex-direction:column;padding:1.5rem 1.35rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:10px;border-top:4px solid var(--amu-red);box-shadow:var(--portal-shadow)}.admin-dashboard-card__title{margin:0 0 .5rem;font-size:1rem;font-weight:700;color:var(--text-dark)}.admin-dashboard-card__body{margin:0 0 1.25rem;flex:1;font-size:.875rem;line-height:1.5;color:var(--portal-text-muted)}.admin-dashboard-card__cta{align-self:flex-start}.admin-table-wrap{margin-bottom:0}.admin-table-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;align-items:center}.admin-students-table--center th,.admin-students-table--center td{text-align:center;vertical-align:middle}.admin-student-name-link{display:inline-block;max-width:100%;font-weight:600;color:var(--portal-accent);text-decoration:none;border-bottom:1px solid transparent;transition:color .12s ease,border-color .12s ease}.admin-student-name-link:hover{color:var(--portal-accent-hover);border-bottom-color:#8c1d2c59}.admin-student-name-link:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px;border-radius:2px}.admin-detail-field-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.75rem}.admin-detail-field-label{font-size:.8125rem;font-weight:600;color:var(--portal-text)}.admin-detail-quarter-select{min-width:min(100%,220px);width:auto;max-width:100%}.admin-detail-empty{margin:0;padding:.75rem 0 0;text-align:left;color:var(--portal-text-muted)}.admin-student-courses-panel{gap:1.25rem}.admin-student-courses-panel__history{gap:1rem;padding:1.15rem 1.25rem 1.25rem}.admin-student-courses-panel__history-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1.5rem}.admin-student-courses-panel__meta{display:flex;flex-wrap:wrap;gap:.65rem 1.25rem;margin:0}.admin-student-courses-panel__meta-item{display:flex;align-items:baseline;gap:.4rem;margin:0}.admin-student-courses-panel__meta-item dt{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-student-courses-panel__meta-item dd{margin:0;font-size:.8125rem;font-weight:600;color:var(--portal-text);font-variant-numeric:tabular-nums}.admin-clinical-history{display:flex;flex-direction:column;gap:0;padding:1.25rem 1.35rem 1.35rem}.admin-clinical-history__title{margin-bottom:1rem}.admin-clinical-history__section+.admin-clinical-history__section{margin-top:1.35rem;padding-top:1.35rem;border-top:1px solid var(--portal-border-subtle)}.admin-clinical-history__subsection-title{margin:0 0 .75rem;font-size:.6875rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--amu-red-dark)}.admin-clinical-history__table-wrap{overflow-x:auto;border:1px solid var(--portal-border-subtle);border-radius:.65rem;background:var(--amu-card)}.admin-clinical-history__table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.8125rem}.admin-clinical-history__col-code{width:14%}.admin-clinical-history__col-title{width:32%}.admin-clinical-history__col-term{width:20%}.admin-clinical-history__col-metric{width:14%}.admin-clinical-history__col-grade{width:10%}.admin-clinical-history__table thead th{padding:.6rem .85rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:left;color:var(--portal-text-faint);background:#f7f8fa;border-bottom:1px solid var(--portal-border-subtle);vertical-align:middle}.admin-clinical-history__table tbody td{padding:.65rem .85rem;border-bottom:1px solid #eef0f3;vertical-align:middle;line-height:1.4}.admin-clinical-history__table tbody tr:last-child td{border-bottom:none}.admin-clinical-history__table tbody tr:hover td{background:#fafbfc}.admin-clinical-history__cell-code{font-size:.75rem;font-weight:600;letter-spacing:.03em;color:var(--portal-text-muted);white-space:nowrap}.admin-clinical-history__cell-title{font-weight:500;color:var(--portal-text);word-break:break-word}.admin-clinical-history__cell-term,.admin-clinical-history__cell-metric,.admin-clinical-history__cell-grade{text-align:center;color:var(--portal-text-muted)}.admin-clinical-history__cell-grade{font-weight:600;color:var(--portal-text)}.admin-clinical-history__table thead th.admin-clinical-history__th-center{text-align:center}.admin-doc-compliance{gap:1.25rem}.admin-doc-compliance__card{display:flex;flex-direction:column;gap:1rem;padding:1.25rem 1.35rem 1.35rem}.admin-doc-compliance__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1.25rem}.admin-doc-compliance__title{margin:0 0 .35rem}.admin-doc-compliance__toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1rem;padding-top:.15rem}.admin-doc-compliance__term-row{margin-bottom:0;flex:1 1 14rem}.admin-doc-compliance__term-select{min-width:min(100%,240px)}.admin-doc-compliance__reset-all{flex-shrink:0}.admin-doc-compliance-alert{margin:0;padding:.65rem .85rem;border:1px solid var(--portal-border-subtle);border-left:3px solid #c53030;border-radius:.45rem;background:#fff5f5;color:#742a2a;font-size:.875rem}.admin-doc-compliance__state{margin:0}.admin-doc-compliance__table-wrap{overflow-x:auto;border:1px solid var(--portal-border-subtle);border-radius:.65rem;background:var(--amu-card)}.admin-doc-compliance__table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-doc-compliance__table thead th{padding:.55rem .85rem;text-align:left;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--portal-text-muted);background:color-mix(in srgb,var(--portal-border-subtle) 35%,var(--amu-card));border-bottom:1px solid var(--portal-border-subtle)}.admin-doc-compliance__table tbody td{padding:.75rem .85rem;vertical-align:middle;border-bottom:1px solid var(--portal-border-subtle)}.admin-doc-compliance__table tbody tr:last-child td{border-bottom:none}.admin-doc-compliance__req-name{font-weight:650;color:var(--portal-text);line-height:1.3}.admin-doc-compliance__req-kind{margin-top:.15rem;font-size:.75rem;color:var(--portal-text-muted)}.admin-doc-compliance__badge{display:inline-flex;align-items:center;padding:.22rem .55rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.admin-doc-compliance__badge--complete{background:#1665341f;color:#166534}.admin-doc-compliance__badge--pending{background:#b453091f;color:#b45309}.admin-doc-compliance__details{color:var(--portal-text-muted);min-width:10rem}.admin-doc-compliance__action{text-align:right;white-space:nowrap}.admin-doc-compliance__reset-btn{font-size:.8125rem;padding:.35rem .65rem}.admin-doc-compliance__sr-action{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 720px){.admin-doc-compliance__table thead{display:none}.admin-doc-compliance__table tbody tr{display:block;padding:.65rem .85rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-doc-compliance__table tbody tr:last-child{border-bottom:none}.admin-doc-compliance__table tbody td{display:block;padding:.2rem 0;border-bottom:none;text-align:left}.admin-doc-compliance__action{padding-top:.45rem}}.admin-settings-card{max-width:42rem;padding:1.25rem 1.35rem 1.35rem;box-shadow:none}.admin-settings-stack{display:flex;flex-direction:column;gap:1.25rem;max-width:42rem}.admin-settings-stack .admin-theme-picker,.admin-settings-stack .portal-theme-picker{max-width:none}.admin-theme-picker__grid,.portal-theme-picker__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;width:100%}.admin-theme-picker__card,.portal-theme-picker__card{display:flex;flex-direction:column;gap:.65rem;margin:0;padding:.65rem;text-align:left;font:inherit;color:inherit;background:#fafbfc;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);cursor:pointer;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.admin-theme-picker__card:hover,.portal-theme-picker__card:hover{border-color:#8c1d2c47;background:#fff}.admin-theme-picker__card:focus-visible,.portal-theme-picker__card:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.admin-theme-picker__card--active,.portal-theme-picker__card--active{border-color:var(--portal-accent);background:#fff;box-shadow:0 0 0 1px var(--portal-accent)}.portal-theme-picker__card--active{border-color:var(--portal-border-subtle);box-shadow:none}.admin-theme-picker__preview,.portal-theme-picker__preview{display:flex;flex-direction:column;overflow:hidden;border-radius:4px;border:1px solid rgba(0,0,0,.06);height:4.25rem}.admin-theme-picker__preview-header,.portal-theme-picker__preview-header{flex:0 0 .85rem}.admin-theme-picker__preview-body,.portal-theme-picker__preview-body{flex:1;display:flex;min-height:0}.admin-theme-picker__preview-sidebar,.portal-theme-picker__preview-sidebar{flex:0 0 28%}.admin-theme-picker__preview-canvas,.portal-theme-picker__preview-canvas{flex:1;display:flex;align-items:flex-start;padding:.45rem;background:#f2f4f8}.admin-theme-picker__preview-accent,.portal-theme-picker__preview-accent{width:1.75rem;height:.4rem;border-radius:2px}.admin-theme-picker__meta,.portal-theme-picker__meta{display:flex;flex-direction:column;gap:.15rem;min-width:0}.portal-theme-picker__name-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.portal-theme-picker__check{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;color:var(--amu-card);background:var(--portal-accent);border:1px solid var(--portal-accent);border-radius:999px}.portal-theme-picker__check svg{width:.75rem;height:.75rem;stroke-width:2.5}.admin-theme-picker__name,.portal-theme-picker__name{font-size:.875rem;font-weight:600;color:var(--portal-text)}.admin-theme-picker__desc,.portal-theme-picker__desc{font-size:.75rem;line-height:1.35;color:var(--portal-text-muted)}@media (max-width: 520px){.admin-theme-picker__grid,.portal-theme-picker__grid{grid-template-columns:1fr}}.admin-settings-card--login-email{padding:1.25rem 1.35rem 1.35rem}.admin-settings-card--login-email .portal-login-email-embedded{margin:0}.admin-verified-email-list{list-style:none;margin:0 0 .85rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.admin-verified-email-empty{font-size:.8125rem;color:var(--portal-text-faint)}.admin-verified-email-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem .75rem;padding:.55rem .7rem;background:#fafbfc;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius)}.admin-verified-email-row__main{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0}.admin-verified-email-row__edit{display:inline-flex;align-items:center;justify-content:center;padding:.15rem;color:var(--amu-red-dark)}.admin-verified-email-row__edit:disabled{opacity:.45;cursor:not-allowed}.admin-verified-email-row__address{font-size:.875rem;font-weight:500;color:var(--portal-text);word-break:break-all}.admin-verified-email-row__badge{display:inline-flex;align-items:center;padding:.1rem .45rem;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--amu-red-dark);background:var(--portal-accent-soft);border-radius:999px}.admin-verified-email-row__actions{display:inline-flex;align-items:center;gap:.55rem}.admin-verified-email-official-note{margin-top:.75rem}.admin-settings-card--login-email .portal-login-email-actions .portal-btn--primary{background:var(--amu-card);color:var(--amu-red-dark);border-color:#8c1d2c52;box-shadow:var(--portal-shadow);font-weight:600}.admin-settings-card--login-email .portal-login-email-actions .portal-btn--primary:hover:not(:disabled){background:var(--portal-accent-soft);border-color:#8c1d2c7a;color:var(--amu-red-dark)}.admin-settings-card--login-email .portal-login-email-actions .portal-btn--secondary{color:var(--portal-text-muted);border-color:var(--portal-border)}.admin-settings-card--login-email .portal-login-email-actions .portal-btn--secondary:hover:not(:disabled){background:#fafbfc;color:var(--portal-text)}.admin-settings-card__title{margin:0 0 1rem;font-family:inherit;font-size:.9375rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--amu-red-dark)}.admin-portal__main-content:has(.admin-mass-email-page){display:flex;flex-direction:column;min-height:0}.admin-portal__main:has(.admin-mass-email-page){padding-bottom:clamp(1.25rem,2vw,1.75rem)}.admin-mass-email-page{display:flex;flex-direction:column;flex:1;min-height:0;padding-bottom:0}.admin-mass-email-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem 1.5rem;flex-shrink:0;margin-bottom:1rem}.admin-mass-email-header__intro{flex:1;min-width:min(100%,18rem);display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.25rem}.admin-mass-email-page-tabs{margin-top:.15rem}.admin-mass-email-header__title{margin:0 0 .35rem;font-family:Cinzel,Times New Roman,Times,serif;font-size:1.25rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#a6192e}.admin-mass-email-header__lede{margin:0;max-width:36rem;font-size:.875rem;line-height:1.5;color:var(--portal-text-muted)}.admin-mass-email-header__stats{display:flex;gap:.625rem}.admin-mass-email-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:5.5rem;padding:.625rem 1rem;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:8px;box-shadow:var(--portal-shadow)}.admin-mass-email-stat__value{font-size:1.125rem;font-weight:700;line-height:1.2;color:var(--portal-text);font-variant-numeric:tabular-nums}.admin-mass-email-stat__label{margin-top:.15rem;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-mass-email-panel{--admin-mass-email-bar-height: 3rem;--admin-mass-email-label-col: 4.75rem;--admin-mass-email-head-h: 2.875rem;--admin-mass-email-subhead-h: 3.25rem;--admin-mass-email-data-row-h: 3.25rem;--admin-mass-email-page-rows: 12;--admin-mass-email-table-min-h: calc( var(--admin-mass-email-subhead-h) + (var(--admin-mass-email-page-rows) * var(--admin-mass-email-data-row-h)) );display:grid;grid-template-columns:minmax(0,27rem) minmax(0,1fr);grid-template-rows:minmax(0,1fr);flex:1;min-height:calc(var(--admin-mass-email-head-h) + var(--admin-mass-email-table-min-h) + var(--admin-mass-email-bar-height));align-items:stretch;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:10px;box-shadow:var(--portal-shadow);overflow:hidden}.admin-mass-email-compose{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;align-self:stretch;padding:0;border-right:1px solid var(--portal-border-subtle);background:transparent}.admin-mass-email-compose__section{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;gap:0;padding:0;overflow:auto}.admin-mass-email-compose__heading,.admin-mass-email-roster__title{margin:0;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--amu-red-dark)}.admin-mass-email-compose__heading{font-size:.6875rem}.admin-mass-email-roster__title{font-size:.8125rem}.admin-mass-email-meta__row{display:grid;grid-template-columns:var(--admin-mass-email-label-col, 4.75rem) minmax(0,1fr);gap:.5rem .75rem;align-items:center;box-sizing:border-box;min-height:var(--admin-mass-email-head-h);padding:0 1.125rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-mass-email-meta__key{font-size:.8125rem;font-weight:600;letter-spacing:0;text-transform:none;white-space:nowrap;color:var(--amu-red-dark)}.admin-mass-email-meta__value{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0}.admin-mass-email-meta__row--bcc{position:relative;align-items:center;height:var(--admin-mass-email-subhead-h);min-height:var(--admin-mass-email-subhead-h);max-height:var(--admin-mass-email-subhead-h);padding-top:0;padding-bottom:0;overflow:visible}.admin-mass-email-meta__row--bcc-expanded{align-items:start;height:auto;min-height:var(--admin-mass-email-subhead-h);max-height:none;padding-top:.55rem;padding-bottom:.55rem}.admin-mass-email-meta__row--bcc .admin-mass-email-meta__key{padding-top:0;display:inline-flex;align-items:center}.admin-mass-email-meta__row--bcc-expanded .admin-mass-email-meta__key{padding-top:.2rem}.admin-mass-email-recipient-field{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:.15rem 1.1rem .15rem 0;font:inherit;font-size:.8125rem;font-weight:600;line-height:1.2;color:var(--amu-red-dark);background:linear-gradient(45deg,transparent 50%,var(--amu-red-dark) 50%) calc(100% - .35rem) 55% / .28rem .28rem no-repeat,linear-gradient(135deg,var(--amu-red-dark) 50%,transparent 50%) calc(100% - .15rem) 55% / .28rem .28rem no-repeat,transparent;border:1px solid transparent;border-radius:6px;cursor:pointer}.admin-mass-email-recipient-field:hover:not(:disabled),.admin-mass-email-recipient-field:focus-visible{color:var(--amu-red);background-color:#f5f6f8;border-color:#e8eaef;outline:none;background-image:linear-gradient(45deg,transparent 50%,var(--amu-red) 50%) calc(100% - .35rem) 55% / .28rem .28rem no-repeat,linear-gradient(135deg,var(--amu-red) 50%,transparent 50%) calc(100% - .15rem) 55% / .28rem .28rem no-repeat}.admin-mass-email-recipient-field:disabled{opacity:.55;cursor:not-allowed}.admin-mass-email-meta__value--bcc{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:.25rem;min-width:0;width:100%}.admin-mass-email-bcc-row{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.4rem;min-width:0;width:100%}.admin-mass-email-meta__row--bcc-expanded .admin-mass-email-bcc-row{flex-wrap:wrap;align-items:flex-start}.admin-mass-email-bcc-list{display:flex;flex-wrap:nowrap;align-items:center;gap:.35rem;flex:1 1 auto;min-width:0;max-width:none;overflow-x:auto;overflow-y:hidden;padding:.05rem 0;scrollbar-width:thin;cursor:text}.admin-mass-email-bcc-list--expanded{flex:1 0 100%;flex-wrap:wrap;overflow-x:hidden;overflow-y:auto;max-height:7.5rem;order:-1;margin-bottom:.15rem;cursor:default}.admin-mass-email-external-input{flex:1 1 auto;width:auto;min-width:8rem;max-width:none;height:1.875rem;min-height:1.875rem;padding:0 .55rem;font-size:.8125rem}.admin-mass-email-external-input--compact{flex:0 1 6.5rem;min-width:4.5rem;max-width:8rem}.admin-mass-email-external-error{position:absolute;left:calc(var(--admin-mass-email-label-col, 4.75rem) + .75rem + 1.125rem);top:calc(100% - .05rem);z-index:2;margin:0;padding:.15rem .35rem;font-size:.6875rem;line-height:1.2;color:#b42318;background:#fff;border-radius:4px;pointer-events:none}.admin-mass-email-bcc-row .admin-mass-email-link-btn{flex:0 0 auto;white-space:nowrap}.admin-mass-email-bcc-expand{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.75rem;height:1.75rem;margin:0;padding:0;color:var(--amu-red-dark);background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer}.admin-mass-email-bcc-expand:hover:not(:disabled),.admin-mass-email-bcc-expand:focus-visible{background:#f5f6f8;border-color:#e8eaef;outline:none}.admin-mass-email-bcc-expand:disabled{opacity:.45;cursor:not-allowed}.admin-mass-email-attachments{min-width:0}.admin-mass-email-attachments--above-bar{flex-shrink:0;padding:0 1.125rem .75rem}.admin-mass-email-attachments__head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.admin-mass-email-attachments__input{display:none}.admin-mass-email-attach-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;min-height:2rem;padding:0;font:inherit;color:var(--portal-text-muted);background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.admin-mass-email-attach-btn:hover:not(:disabled){color:var(--amu-red-dark);background:#f5f6f8;border-color:#e8eaef}.admin-mass-email-attach-btn:disabled{opacity:.45;cursor:not-allowed}.admin-mass-email-ai-wrap{position:relative;flex:0 0 auto}.admin-mass-email-subject-row{display:flex;align-items:center;gap:.35rem;min-width:0}.admin-mass-email-field--subject{height:var(--admin-mass-email-data-row-h);min-height:var(--admin-mass-email-data-row-h);max-height:var(--admin-mass-email-data-row-h);overflow:visible}.admin-mass-email-subject-row .admin-mass-email-field__input{flex:1 1 auto;min-width:0}.admin-mass-email-ai-trigger{display:inline-flex;align-items:center;justify-content:center;gap:.2rem;width:auto;height:auto;max-height:calc(var(--admin-mass-email-data-row-h) - .25rem);min-height:0;padding:0 .15rem 0 0;font:inherit;color:var(--portal-text-muted);background:transparent;border:1px solid transparent;border-radius:8px;box-shadow:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.admin-mass-email-ai-trigger__label{font-size:.625rem;font-weight:600;letter-spacing:.02em;line-height:1.1;white-space:nowrap;color:var(--portal-text-muted)}.admin-mass-email-ai-trigger:hover:not(:disabled),.admin-mass-email-ai-trigger:focus-visible,.admin-mass-email-ai-trigger[aria-expanded=true]{color:var(--amu-red-dark);background:#f5f6f8;border-color:#e8eaef;box-shadow:none;outline:none}.admin-mass-email-ai-trigger:hover:not(:disabled) .admin-mass-email-ai-trigger__label,.admin-mass-email-ai-trigger:focus-visible .admin-mass-email-ai-trigger__label,.admin-mass-email-ai-trigger[aria-expanded=true] .admin-mass-email-ai-trigger__label{color:var(--amu-red-dark)}.admin-mass-email-ai-trigger:disabled{opacity:.45;cursor:not-allowed}.admin-mass-email-ai-popover{position:fixed;z-index:1200;display:flex;flex-direction:column;gap:.35rem;box-sizing:border-box;width:420px;height:292px;padding:.75rem 1rem .4rem;overflow:hidden;resize:none;background:linear-gradient(165deg,#fff8fb,#fff 42%,#f7f8fc);border:1px solid rgba(140,29,44,.12);border-radius:16px;box-shadow:0 12px 32px #28183024,0 2px 8px #8c1d2c0f}.admin-mass-email-ai-popover--preview{height:460px;max-height:calc(100vh - 24px);padding-bottom:.55rem}.admin-mass-email-ai-popover__glow{position:absolute;top:-2.5rem;right:-1.5rem;width:9rem;height:9rem;border-radius:50%;background:radial-gradient(circle,rgba(168,120,255,.22) 0%,rgba(140,29,44,.08) 45%,transparent 70%);pointer-events:none}.admin-mass-email-ai-popover__header{position:relative;z-index:1;display:flex;align-items:center;flex:0 0 auto;gap:.35rem}.admin-mass-email-ai-popover__icon{flex:0 0 auto;margin:-.1rem 0 0 -.1rem}.admin-mass-email-ai-popover__titles{min-width:0;padding-top:0}.admin-mass-email-ai-popover__title{margin:0;font-size:.9375rem;font-weight:700;letter-spacing:.01em;color:var(--amu-red-dark)}.admin-mass-email-ai-popover__subtitle{margin:.1rem 0 0;font-size:.6875rem;font-weight:400;line-height:1.35;color:#9aa3b2}.admin-mass-email-ai-popover__preview{position:relative;z-index:1;display:flex;flex-direction:column;gap:.4rem;flex:1 1 auto;min-height:0;padding:.55rem .7rem;overflow:hidden;background:#ffffffb8;border:1px solid rgba(140,29,44,.1);border-radius:12px}.admin-mass-email-ai-popover__preview-row{display:flex;flex-direction:column;gap:.15rem;min-width:0}.admin-mass-email-ai-popover__preview-row--body{flex:1 1 auto;min-height:0;overflow:hidden}.admin-mass-email-ai-popover__preview-label{font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#504048b8}.admin-mass-email-ai-popover__preview-subject{margin:0;font-size:.8125rem;font-weight:600;line-height:1.35;color:var(--portal-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-mass-email-ai-popover__preview-body{margin:0;flex:1 1 auto;min-height:0;overflow:auto;font-size:.75rem;line-height:1.45;color:#282024e0;white-space:pre-wrap;word-break:break-word}.admin-mass-email-ai-popover__field{position:relative;z-index:1;display:block;flex:1 1 auto;min-height:0;margin:0}.admin-mass-email-ai-popover--preview .admin-mass-email-ai-popover__field{flex:0 0 auto;height:4.75rem}.admin-mass-email-ai-popover__input{display:block;width:100%;height:100%;min-height:0;box-sizing:border-box;padding:.7rem .85rem;font:inherit;font-size:.875rem;line-height:1.45;color:var(--portal-text);resize:none;background:#ffffffeb!important;border:1px solid rgba(140,29,44,.14)!important;border-radius:12px!important;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.admin-mass-email-ai-popover__input::placeholder{color:#9aa3b2;opacity:1}.admin-mass-email-ai-popover__input:focus{border-color:#8c1d2c59!important;box-shadow:0 0 0 3px #8c1d2c14}.admin-mass-email-ai-popover__input:disabled{opacity:.65;cursor:not-allowed}.admin-mass-email-ai-popover__error{position:relative;z-index:1;margin:.45rem 0 0;font-size:.8125rem;line-height:1.4;color:#b42318}.admin-mass-email-ai-popover__footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;gap:.75rem;min-height:0;margin:0;padding:0}.admin-mass-email-ai-popover--preview .admin-mass-email-ai-popover__footer{gap:.5rem}.admin-mass-email-ai-popover__cat{display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto;width:7.5rem;height:5.25rem;margin:0;overflow:visible;pointer-events:none}.admin-mass-email-ai-popover--preview .admin-mass-email-ai-popover__cat{width:5.5rem;height:3.75rem}.admin-mass-email-ai-popover__cat-placeholder{display:block;width:7.5rem;height:5.25rem}.admin-mass-email-ai-popover--preview .admin-mass-email-ai-popover__cat-placeholder{width:5.5rem;height:3.75rem}.admin-mass-email-ai-popover__actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.4rem;flex:0 0 auto;min-width:0}.admin-mass-email-ai-apply-btn{display:inline-flex;align-items:center;justify-content:center;height:2rem;min-height:2rem;margin:0;padding:0 .7rem;font:inherit;font-size:.8125rem;font-weight:600;line-height:1;color:#504048e6;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}.admin-mass-email-ai-apply-btn:hover:not(:disabled){color:var(--amu-red-dark);background:#ffffffb3;border-color:#8c1d2c24}.admin-mass-email-ai-apply-btn:disabled{opacity:.45;cursor:not-allowed}.admin-mass-email-ai-draft-btn{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;flex:0 0 auto;align-self:center;height:2rem;min-height:2rem;margin:0;padding:0 .7rem 0 .35rem;font:inherit;font-size:.8125rem;font-weight:600;line-height:1;color:var(--amu-red-dark);background:#fff;border:1px solid rgba(140,29,44,.2);border-radius:8px;cursor:pointer;white-space:nowrap;box-shadow:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.admin-mass-email-ai-draft-btn:hover:not(:disabled){color:var(--amu-red);background:#fafbfc;border-color:#8c1d2c59;box-shadow:none}.admin-mass-email-ai-draft-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.admin-mass-email-attachments__hint{margin:.35rem 0 0;font-size:.6875rem;color:var(--portal-text-faint)}.admin-mass-email-attachment-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem}.admin-mass-email-attachment-item{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;padding:.4rem .5rem;font-size:.8125rem;background:#f7f8fa;border:1px solid var(--portal-border-subtle);border-radius:6px}.admin-mass-email-attachment-item__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--portal-text)}.admin-mass-email-attachment-item__size{font-size:.6875rem;color:var(--portal-text-faint);font-variant-numeric:tabular-nums}.admin-mass-email-attachment-item__remove{padding:0;font:inherit;font-size:.6875rem;font-weight:600;color:var(--portal-text-muted);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.admin-mass-email-attachment-item__remove:hover:not(:disabled){color:var(--amu-red)}.admin-mass-email-inline-filter{display:inline-flex;align-items:center;flex:0 0 var(--admin-mass-email-tool-w, 8.75rem);width:var(--admin-mass-email-tool-w, 8.75rem);min-width:var(--admin-mass-email-tool-w, 8.75rem);margin:0}.admin-mass-email-inline-filter__select{box-sizing:border-box;width:100%;height:var(--admin-mass-email-tool-h, 1.875rem);padding:0 1.6rem 0 .55rem;font:inherit;font-size:.75rem;font-weight:500;color:var(--portal-text);background-color:var(--portal-surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;border:1px solid #d4d8df;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.admin-mass-email-inline-filter__select:hover{border-color:#c8ced8}.admin-mass-email-inline-filter__select:focus{outline:none;border-color:#8c1d2c73;box-shadow:0 0 0 3px var(--amu-red-ring)}.admin-mass-email-meta__muted{font-size:.8125rem;color:var(--portal-text-faint)}.admin-mass-email-meta__error{font-size:.8125rem;color:var(--amu-red);line-height:1.4}.admin-mass-email-from-email{font-size:.8125rem;font-weight:500;color:var(--portal-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-mass-email-from-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;max-width:100%;min-width:0;height:auto;margin:0;padding:0 1.1rem 0 0;font:inherit;font-size:.8125rem;font-weight:500;line-height:1.4;color:var(--portal-text);background:linear-gradient(45deg,transparent 50%,var(--portal-text-muted) 50%) calc(100% - .15rem) 55% / .28rem .28rem no-repeat,linear-gradient(135deg,var(--portal-text-muted) 50%,transparent 50%) calc(100% + .05rem) 55% / .28rem .28rem no-repeat,transparent;border:none;border-radius:0;box-shadow:none;cursor:pointer}.admin-mass-email-from-select:focus,.admin-mass-email-from-select:focus-visible{outline:none}.admin-mass-email-chip{display:inline-flex;align-items:center;max-width:100%;padding:.2rem .55rem;font-size:.8125rem;font-weight:500;color:var(--portal-text);background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:999px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-mass-email-chip.admin-mass-email-chip--recipient{display:inline-flex;align-items:center;gap:.25rem;flex:0 0 auto;width:auto;max-width:12rem;min-width:0;padding:.2rem .3rem .2rem .55rem;overflow:hidden;white-space:nowrap;border-radius:999px}.admin-mass-email-bcc-list--expanded .admin-mass-email-chip.admin-mass-email-chip--recipient{max-width:100%}.admin-mass-email-chip.admin-mass-email-chip--external{max-width:14rem}.admin-mass-email-bcc-list--expanded .admin-mass-email-chip.admin-mass-email-chip--external{max-width:100%}.admin-mass-email-chip__label{display:block;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-mass-email-chip__remove{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.1rem;height:1.1rem;padding:0;margin-left:.05rem;font-size:.95rem;line-height:1;color:var(--portal-text-muted);background:transparent;border:none;border-radius:999px;cursor:pointer}.admin-mass-email-chip__remove:hover{color:var(--amu-red);background:#8c1d2c14}.admin-mass-email-chip--verified{color:var(--amu-red-dark);background:var(--portal-accent-soft);border-color:#8c1d2c2e}.admin-mass-email-link{color:var(--amu-red);font-weight:600;text-decoration:none}.admin-mass-email-link:hover{text-decoration:underline}.admin-mass-email-link-btn{padding:0;font:inherit;font-size:.75rem;font-weight:600;color:var(--portal-text-muted);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.admin-mass-email-link-btn:hover{color:var(--amu-red)}.admin-mass-email-field{display:grid;grid-template-columns:var(--admin-mass-email-label-col, 4.75rem) minmax(0,1fr);gap:.5rem .75rem;align-items:center;box-sizing:border-box;height:var(--admin-mass-email-data-row-h);min-height:var(--admin-mass-email-data-row-h);margin:0;padding:0 1.125rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-mass-email-field--body{flex:1 1 auto;height:auto;min-height:0;max-height:none;display:flex;flex-direction:column;grid-template-columns:none;padding:.75rem 1.125rem .5rem;border-bottom:none}.admin-mass-email-field__label{font-size:.8125rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--portal-text-muted)}.admin-mass-email-field__input,.admin-mass-email-field__textarea{width:100%;box-sizing:border-box;font-family:inherit;font-size:.875rem;color:var(--portal-text);background:transparent;border:none;border-radius:0;transition:box-shadow .15s ease}.admin-mass-email-field__input{height:2rem;padding:0}.admin-mass-email-field__textarea{flex:1;min-height:10rem;padding:0;line-height:1.55;resize:none}.admin-mass-email-field__input:focus,.admin-mass-email-field__textarea:focus{outline:none;box-shadow:none}.admin-mass-email-field__input:disabled,.admin-mass-email-field__textarea:disabled{opacity:.65;cursor:not-allowed;background:transparent}.admin-mass-email-field__count{margin:0;font-size:.6875rem;color:var(--portal-text-faint);font-variant-numeric:tabular-nums;white-space:nowrap}.admin-mass-email-banner{margin:.75rem 0 0;padding:.625rem .75rem;font-size:.8125rem;line-height:1.45;border-radius:8px}.admin-mass-email-banner--error{color:#8b1a1a;background:#fef2f2;border:1px solid #f5c6c6}.admin-mass-email-banner--success{color:#1f5f3a;background:#eef8f2;border:1px solid #b8dfc8}.admin-mass-email-compose__alerts{flex-shrink:0;padding:0 1.125rem .75rem}.admin-mass-email-compose__alerts .admin-mass-email-banner{margin-top:0}.admin-mass-email-compose__alerts .admin-mass-email-banner+.admin-mass-email-banner{margin-top:.5rem}.admin-mass-email-compose__toolbar{flex:0 0 auto;display:flex;flex-direction:row;align-items:center;gap:.625rem;margin-top:auto;height:var(--admin-mass-email-bar-height);min-height:var(--admin-mass-email-bar-height);max-height:var(--admin-mass-email-bar-height);padding:0 1.125rem;border-top:1px solid var(--portal-border-subtle);background:#fafbfc;box-sizing:border-box}.admin-mass-email-compose__toolbar .admin-mass-email-field__count{margin-right:auto}.admin-mass-email-compose__hint{margin:0;font-size:.75rem;line-height:1.45;color:var(--portal-text-faint)}.admin-mass-email-send-btn{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:4.5rem;height:2rem;min-height:2rem;padding:0 .875rem;font:inherit;font-size:.8125rem;font-weight:600;line-height:1;color:var(--amu-red-dark);background:#fff;border:1px solid var(--portal-border-subtle);border-radius:8px;box-shadow:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.admin-mass-email-send-btn:hover:not(:disabled){color:var(--amu-red);background:#fafbfc;border-color:#d8dce4}.admin-mass-email-send-btn:disabled{opacity:.45;cursor:not-allowed}.admin-mass-email-roster{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;align-self:stretch;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none;overflow:hidden}.admin-mass-email-roster__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;flex-shrink:0;box-sizing:border-box;height:var(--admin-mass-email-head-h);min-height:var(--admin-mass-email-head-h);padding:0 1.25rem;background:transparent;border-bottom:1px solid var(--portal-border-subtle)}.admin-mass-email-roster__subtitle{margin:.25rem 0 0;font-size:.8125rem;color:var(--portal-text-muted)}.admin-mass-email-roster__tools{--admin-mass-email-tool-w: 8.75rem;--admin-mass-email-tool-h: 1.875rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.admin-mass-email-search{position:relative;display:flex;align-items:center;flex:0 0 var(--admin-mass-email-tool-w);width:var(--admin-mass-email-tool-w);min-width:var(--admin-mass-email-tool-w)}.admin-mass-email-search__icon{position:absolute;left:.55rem;color:var(--portal-text-faint);pointer-events:none}.admin-mass-email-search__input{box-sizing:border-box;width:100%;height:var(--admin-mass-email-tool-h);padding:0 .55rem 0 1.85rem;font:inherit;font-size:.75rem;color:var(--portal-text);background:var(--portal-surface);border:1px solid #d4d8df;border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease}.admin-mass-email-search__input::placeholder{color:var(--portal-text-faint)}.admin-mass-email-search__input:focus{outline:none;border-color:#8c1d2c73;box-shadow:0 0 0 3px var(--amu-red-ring)}.admin-mass-email-roster__body{display:flex;flex-direction:column;flex:1 1 auto;min-height:var(--admin-mass-email-table-min-h);padding:0;overflow:hidden}.admin-mass-email-roster__body>.admin-mass-email-banner{flex-shrink:0;margin:.875rem 1.25rem 0}.admin-mass-email-table-wrap{flex:1 1 auto;min-height:var(--admin-mass-email-table-min-h);overflow:auto;border:none;border-radius:0;background:transparent}.admin-mass-email-table{width:100%;border-collapse:collapse;font-size:.8125rem}.admin-mass-email-table thead{position:sticky;top:0;z-index:1;background:#fafbfc}.admin-mass-email-table th{box-sizing:border-box;height:var(--admin-mass-email-subhead-h);padding:0 1.25rem;font-size:.6875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-align:left;vertical-align:middle;color:var(--portal-text-faint);border-bottom:1px solid var(--portal-border-subtle);background:#fafbfc}.admin-mass-email-table td{box-sizing:border-box;height:var(--admin-mass-email-data-row-h);padding:0 1.25rem;vertical-align:middle;border-bottom:1px solid #eef0f3}.admin-mass-email-table tbody tr:last-child td{border-bottom:none}.admin-mass-email-table tbody tr:hover:not(.admin-mass-email-table__row--disabled){background:#f7f8fa}.admin-mass-email-table__row--selected{background:#fdf8f9}.admin-mass-email-table__row--selected:hover{background:#f9f0f2!important}.admin-mass-email-table__row--disabled{opacity:.55}.admin-mass-email-table__check{width:3rem;padding-left:1.25rem!important;padding-right:.5rem!important}.admin-mass-email-checkbox{width:1rem;height:1rem;margin:0;accent-color:var(--amu-red);cursor:pointer}.admin-mass-email-checkbox:disabled{cursor:not-allowed}.admin-mass-email-table__id{display:block;font-size:.6875rem;font-weight:600;letter-spacing:.03em;color:var(--portal-text-faint)}.admin-mass-email-table__name{display:block;margin-top:.05rem;font-weight:500;color:var(--portal-text)}.admin-mass-email-table__email{color:var(--portal-text-muted);word-break:break-word}.admin-mass-email-table__program{display:inline-block;padding:.18rem .42rem;font-size:.625rem;font-weight:700;letter-spacing:.04em;line-height:1;text-transform:uppercase;color:var(--portal-text-muted);background:#f0f2f5;border:1px solid transparent;border-radius:4px}.admin-mass-email-table__program--mahm{color:#7a2430;background:#7a243014;border-color:#7a24302e}.admin-mass-email-table__program--dahm{color:#5c4a12;background:#b48c141f;border-color:#b48c1447}.admin-mass-email-table__empty{padding:2rem 1rem!important;text-align:center;color:var(--portal-text-muted)}.admin-mass-email-roster__footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;flex:0 0 auto;margin-top:auto;height:var(--admin-mass-email-bar-height);min-height:var(--admin-mass-email-bar-height);max-height:var(--admin-mass-email-bar-height);padding:0 1.25rem;border-top:1px solid var(--portal-border-subtle);background:#fafbfc;box-sizing:border-box}.admin-mass-email-roster__pagination.admin-finance-pagination{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex:0 0 auto;margin:0 0 0 auto;padding:0}.admin-mass-email-roster__range{margin:0;font-size:.75rem;color:var(--portal-text-faint);font-variant-numeric:tabular-nums;white-space:nowrap}.admin-mass-email-roster__pagination .admin-finance-pagination__nav-btn{min-width:4.75rem;height:1.875rem;font-size:.75rem}.admin-mass-email-roster__pagination .admin-finance-pagination__page--current{font-size:.8125rem}.admin-mass-email-roster__selected{flex:0 1 auto;font-size:.75rem;font-weight:600;color:var(--portal-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.admin-mass-email-roster__footer-spacer{flex:1 1 auto;min-width:0}.admin-mass-email-roster__selected strong{color:var(--amu-red-dark);font-weight:700}.admin-mass-email-pager-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:0 .875rem;font:inherit;font-size:.8125rem;font-weight:600;color:var(--portal-text);background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:6px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.admin-mass-email-pager-btn:hover:not(:disabled){background:#fafbfc;border-color:#c8ced8}.admin-mass-email-pager-btn:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 1024px){.admin-portal__main-content:has(.admin-mass-email-page){display:block}.admin-mass-email-page{flex:none;min-height:auto;padding-bottom:2rem}.admin-mass-email-panel{grid-template-columns:1fr;flex:none;min-height:auto}.admin-mass-email-compose{border-right:none;border-bottom:1px solid var(--portal-border-subtle);height:auto}.admin-mass-email-roster{display:flex;flex-direction:column;height:auto;min-height:calc(var(--admin-mass-email-head-h) + var(--admin-mass-email-table-min-h) + var(--admin-mass-email-bar-height))}.admin-mass-email-roster__body{flex:1 1 auto;min-height:var(--admin-mass-email-table-min-h)}.admin-mass-email-roster__footer{margin-top:auto}.admin-mass-email-compose__section{overflow:visible}.admin-mass-email-field__textarea{flex:none;min-height:11rem;resize:vertical}.admin-mass-email-table-wrap{flex:1 1 auto;min-height:var(--admin-mass-email-table-min-h);max-height:none}}@media (max-width: 640px){.admin-mass-email-header__stats{width:100%}.admin-mass-email-stat{flex:1}.admin-mass-email-roster__head{flex-direction:column;align-items:stretch;height:auto;min-height:var(--admin-mass-email-head-h);padding-top:.75rem;padding-bottom:.75rem}.admin-mass-email-roster__tools{flex-direction:column;align-items:stretch}.admin-mass-email-search,.admin-mass-email-inline-filter,.admin-mass-email-inline-filter__select{width:100%;min-width:0;max-width:none;flex:1 1 auto}.admin-mass-email-roster__footer{flex-wrap:wrap;height:auto;max-height:none;min-height:var(--admin-mass-email-bar-height);padding-top:.65rem;padding-bottom:.65rem}.admin-mass-email-roster__pagination.admin-finance-pagination{width:100%;margin-left:0;justify-content:space-between}}.admin-email-logs-panel{padding-bottom:.5rem}.admin-email-logs-panel__head{display:flex;justify-content:flex-end;margin-bottom:.75rem}.admin-email-logs-panel__count{font-size:.8125rem;color:var(--portal-text-faint);font-variant-numeric:tabular-nums}.admin-email-logs-page{padding-bottom:2rem}.admin-email-logs-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1.25rem}.admin-email-logs-header__title{margin:0;font-family:Cinzel,Times New Roman,Times,serif;font-size:1.25rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#a6192e}.admin-email-logs-header__count{font-size:.8125rem;color:var(--portal-text-faint);font-variant-numeric:tabular-nums}.admin-email-logs-table-wrap{overflow:auto;background:var(--portal-surface);border:1px solid var(--portal-border-subtle);border-radius:10px;box-shadow:var(--portal-shadow)}.admin-email-logs-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.8125rem}.admin-email-logs-table__col--when{width:12%}.admin-email-logs-table__col--type{width:7%}.admin-email-logs-table__col--sender{width:10%}.admin-email-logs-table__col--from{width:16%}.admin-email-logs-table__col--subject{width:12%}.admin-email-logs-table__col--recipients{width:7%}.admin-email-logs-table__col--attachments{width:24%}.admin-email-logs-table__col--status{width:12%}.admin-email-logs-table thead{background:#f7f8fa}.admin-email-logs-table th{padding:.625rem .75rem;font-size:.6875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-align:left;color:var(--portal-text-faint);border-bottom:1px solid var(--portal-border-subtle);vertical-align:bottom}.admin-email-logs-table th:nth-child(6),.admin-email-logs-table td:nth-child(6){text-align:center}.admin-email-logs-table th:nth-child(8),.admin-email-logs-table td:nth-child(8){text-align:center}.admin-email-logs-table td{padding:.75rem;vertical-align:top;border-bottom:1px solid #eef0f3;overflow-wrap:anywhere}.admin-email-logs-table tbody tr:last-child td{border-bottom:none}.admin-email-logs-table tbody tr:hover{background:#fafbfc}.admin-email-logs-table__empty{padding:2rem 1rem!important;text-align:center;color:var(--portal-text-muted)}.admin-email-logs-table__when{white-space:nowrap;color:var(--portal-text-muted);font-variant-numeric:tabular-nums}.admin-email-logs-table__kind{display:inline-block;padding:.15rem .45rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;color:var(--portal-text-muted);background:#f0f2f5;border-radius:4px;white-space:nowrap}.admin-email-logs-table__sender,.admin-email-logs-table__from,.admin-email-logs-table__subject{color:var(--portal-text);line-height:1.45}.admin-email-logs-table__count{font-variant-numeric:tabular-nums;color:var(--portal-text);text-align:center}.admin-email-logs-table__attachments{min-width:0}.admin-email-logs-table__muted{color:var(--portal-text-faint)}.admin-email-logs-attachments{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.admin-email-logs-attachments--names-only{gap:.25rem}.admin-email-logs-attachment-link{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .4rem;max-width:100%;padding:0;font:inherit;font-size:.8125rem;font-weight:600;color:var(--amu-red-dark);text-align:left;background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px;word-break:break-word}.admin-email-logs-attachment-link:hover:not(:disabled){color:var(--amu-red)}.admin-email-logs-attachment-link:disabled{opacity:.6;cursor:wait}.admin-email-logs-attachment-link__size{font-size:.6875rem;font-weight:500;color:var(--portal-text-faint);text-decoration:none}.admin-email-logs-attachment-name{display:block;font-size:.8125rem;color:var(--portal-text-muted);word-break:break-word}.admin-email-logs-attachments__note,.admin-email-logs-attachments__error{font-size:.6875rem;color:var(--portal-text-faint)}.admin-email-logs-attachments__error{color:var(--amu-red)}.admin-email-logs-table__status{display:inline-block;padding:.15rem .5rem;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;white-space:nowrap}.admin-email-logs-table__status--ok{color:#1f5f3a;background:#eef8f2}.admin-email-logs-table__status--fail{color:#8b1a1a;background:#fef2f2}.admin-email-logs-footer{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:.875rem}.admin-email-logs-footer__meta{font-size:.8125rem;color:var(--portal-text-muted);font-variant-numeric:tabular-nums}.admin-settings-card__note{margin:1rem 0 0}.admin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem;margin:0}.admin-settings-field{margin:0;min-width:0}.admin-settings-field--full{grid-column:1 / -1}.admin-settings-field__label{margin:0 0 .25rem;font-size:.75rem;font-weight:600;color:var(--portal-text-muted)}.admin-settings-field__value{margin:0;font-size:.9375rem;line-height:1.45;color:var(--portal-text);overflow-wrap:anywhere}.portal-locale-picker{margin-top:1.25rem}.admin-settings-stack>.portal-locale-picker{margin-top:0}.portal-profile-card .portal-locale-picker{border:none;box-shadow:none;padding:0;background:transparent}.portal-profile-card .portal-theme-picker{width:100%;max-width:42rem;box-sizing:border-box;margin:1.75rem 0 .75rem;padding:1rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:color-mix(in srgb,var(--amu-card) 86%,var(--portal-bg))}.portal-profile-card .portal-theme-picker__card{gap:.5rem;padding:.6rem}.portal-profile-card .portal-theme-picker__preview{height:3.5rem}.portal-profile-preferences-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;width:100%;max-width:42rem}.portal-profile-preferences-grid__item,.portal-profile-card .portal-profile-preferences-grid>.portal-settings-section{min-width:0;padding:1rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:color-mix(in srgb,var(--amu-card) 86%,var(--portal-bg))}.portal-profile-preferences-grid .portal-settings-section{width:100%;max-width:none;margin:0}.portal-profile-preferences-grid__item>.portal-settings-section{height:100%}.portal-profile-preferences-grid .portal-settings-row{grid-template-columns:1fr;align-items:stretch;row-gap:.35rem}.portal-profile-preferences-grid .portal-settings-row__control.portal-settings-row__control--balanced{width:100%;max-width:none}@media (max-width: 700px){.portal-profile-preferences-grid{grid-template-columns:1fr}}.admin-settings-language__lede{margin:0 0 1rem}.portal-settings-rows{display:flex;flex-direction:column;gap:.75rem}.portal-settings-row{display:grid;grid-template-columns:7.25rem minmax(0,1fr);align-items:center;column-gap:1.25rem;row-gap:.5rem}.portal-settings-row__label{font-size:.875rem;font-weight:600;color:var(--portal-text, #1a1f2e)}.portal-settings-row__control{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:.25rem;width:fit-content;max-width:100%}.portal-settings-row__control.portal-settings-row__control--balanced{display:flex;flex-wrap:nowrap;width:min(21rem,100%);min-width:0;max-width:21rem;box-sizing:border-box}.portal-settings-row__control.portal-settings-row__control--balanced .portal-tab{flex:1 1 0;min-width:0;justify-content:center;padding-left:.7rem;padding-right:.7rem;min-height:2.25rem;white-space:nowrap;font-size:.8125rem}@media (max-width: 560px){.portal-settings-row{grid-template-columns:1fr}.portal-settings-row__control,.portal-settings-row__control.portal-settings-row__control--balanced{width:100%;min-width:0;max-width:100%}}.admin-settings-language-options{max-width:100%}.admin-settings-language-options .portal-tab{gap:.45rem}.admin-settings-language-options .portal-tab:disabled{opacity:.55;cursor:wait}.admin-locale-badge{display:inline-flex;flex-shrink:0;line-height:0}.admin-locale-badge__flag{display:block;width:1.35rem;height:auto;border-radius:2px;box-shadow:0 0 0 1px color-mix(in srgb,var(--portal-border-subtle) 75%,transparent)}.admin-settings-language__status{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.85rem;min-height:1.25rem;font-size:.8125rem;line-height:1.4}.admin-settings-language__status-note{color:var(--portal-text-muted)}.admin-settings-language__status-success{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:999px;background:color-mix(in srgb,#1b6b3a 10%,transparent);color:#1b6b3a;font-weight:600}.admin-settings-language__status-success:before{content:"✓";font-size:.75rem;line-height:1}.admin-settings-language__status-error{color:var(--amu-red-dark);font-weight:600}@media (max-width: 640px){.admin-settings-grid{grid-template-columns:1fr}}.admin-loa-editor{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--portal-border-subtle)}.admin-loa-editor__toggle{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem}.admin-loa-editor__grid{margin-top:.75rem}.admin-loa-editor__helper{margin:0}.admin-loa-editor__error{margin:0;color:#a4000f}.admin-student-profile-layout{display:grid;grid-template-columns:minmax(11rem,12rem) minmax(0,1fr);align-items:start;gap:1rem 1.25rem}.admin-student-profile-photo-card{margin:0}.admin-student-profile-details{min-width:0}.admin-student-edit-form{width:100%;max-width:100%}.admin-student-edit-form .admin-student-profile-photo-card{width:12rem;max-width:min(100%,12rem);align-self:flex-start;flex:0 0 auto}.admin-student-edit-form .admin-student-profile-photo-card .portal-profile-photo-frame{width:100%;min-height:12rem;max-height:12rem;overflow:hidden}.admin-student-edit-control{width:100%;max-width:100%}select.admin-student-edit-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#687283 50%),linear-gradient(135deg,#687283 50%,transparent 50%);background-position:calc(100% - 16px) 52%,calc(100% - 11px) 52%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:2rem}.admin-student-create-form{width:100%;max-width:42rem}.admin-student-create-form__body{border:none;margin:0;padding:0}.admin-student-create-form .portal-profile-section{margin-bottom:1.35rem}.admin-student-create-form .portal-profile-section:last-child{margin-bottom:0}.admin-student-create-form .admin-form-grid{margin-bottom:0}.admin-student-create-preview{display:flex;flex-direction:column;gap:.35rem;padding:.85rem 1rem;margin-bottom:1.35rem;background:color-mix(in srgb,var(--portal-accent-soft) 55%,var(--amu-card));border:1px solid color-mix(in srgb,var(--amu-red) 14%,var(--portal-border-subtle));border-radius:var(--portal-radius)}.admin-student-create-preview--error{background:color-mix(in srgb,#dc2626 6%,var(--amu-card));border-color:color-mix(in srgb,#dc2626 18%,var(--portal-border-subtle))}.admin-student-create-preview__main{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .85rem}.admin-student-create-preview__label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--amu-red-dark)}.admin-student-create-preview__value{font-size:1.125rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-dark)}.admin-student-create-preview__value--muted{font-size:.9375rem;font-weight:500;color:var(--portal-text-muted)}.admin-student-create-preview--error .admin-student-create-preview__value{font-size:.875rem;font-weight:600;color:var(--amu-red)}.admin-student-create-preview__hint{margin:0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.admin-student-create-password-panel{display:flex;flex-direction:column;gap:.75rem;padding:.9rem 1rem;background:var(--page-gray);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius)}.admin-student-create-password-panel__rule{margin:0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.admin-student-create-password-panel__preview{display:flex;flex-wrap:wrap;align-items:baseline;gap:.45rem .75rem}.admin-student-create-password-panel__preview-label{font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-student-create-password-panel__preview-value{font-size:.875rem;font-weight:600;color:var(--text-dark);word-break:break-all}.admin-student-create-password-panel__toggle{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.8125rem;color:var(--portal-text);cursor:pointer}.admin-student-create-field-error{font-size:.8125rem;color:var(--amu-red)}.admin-student-create-blockers{margin:1rem 0 0;padding:.75rem .9rem;background:color-mix(in srgb,var(--amu-red) 5%,var(--amu-card));border:1px solid color-mix(in srgb,var(--amu-red) 12%,var(--portal-border-subtle));border-radius:var(--portal-radius)}.admin-student-create-blockers__title{margin:0 0 .35rem;font-size:.8125rem;font-weight:600;color:var(--portal-text-muted)}.admin-student-create-blockers__list{margin:0;padding-left:1.1rem;font-size:.8125rem;line-height:1.5;color:var(--portal-text-muted)}.admin-student-create-form__actions{margin-top:1.25rem;padding-top:1.15rem;border-top:1px solid var(--portal-border-subtle)}@media (max-width: 768px){.admin-student-profile-layout{grid-template-columns:1fr}.admin-student-profile-photo-card{max-width:13rem}}.admin-registration-history-table th,.admin-registration-history-table td{font-size:.8125rem}.admin-finance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem}.admin-page__toolbar--finance{flex-direction:column;align-items:stretch;gap:.85rem}.admin-finance-page-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;width:100%}.admin-finance-page-controls__field{display:flex;flex-direction:column;gap:.25rem;min-width:10.5rem}.admin-finance-page-controls__field .admin-input[type=date]{min-width:11rem}.admin-finance-page-controls__actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-finance-page-controls__search{position:relative;display:flex;align-items:center;width:100%;min-width:0}.admin-finance-page-controls__field--balance-filter{min-width:0;flex:0 0 auto}.admin-finance-student-id-cell{font-family:inherit}.admin-finance-page-controls__search-icon{position:absolute;left:.65rem;color:var(--portal-text-faint);pointer-events:none}.admin-finance-page-controls__search .admin-input--search{width:100%;min-width:0;max-width:none;padding-left:2rem;box-sizing:border-box}.admin-finance-page__summary-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-bottom:.5rem;align-items:center}.admin-finance-page__summary-toolbar .admin-finance-page-controls__field--quarter{grid-column:1;min-width:0;width:100%}.admin-finance-page__summary-toolbar .admin-finance-page-controls__field--quarter .admin-input{width:100%;box-sizing:border-box}.admin-finance-page__summary-toolbar .admin-finance-page-controls__search{grid-column:4}.admin-table-wrap--refreshing{opacity:.65;pointer-events:none;transition:opacity .15s ease}.admin-finance-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-top:1rem;padding:0 .25rem}.admin-finance-pagination__meta{margin:0;font-size:.875rem}.admin-finance-pagination__controls{display:inline-flex;align-items:center;gap:.5rem}.admin-finance-pagination__nav-btn{display:inline-flex;align-items:center;justify-content:center;min-width:5.25rem;height:2rem;margin:0;padding:0 .75rem;font:inherit;font-size:.8125rem;font-weight:600;line-height:1;color:var(--amu-red-dark, #8c1d2c);background:#fff;border:1px solid var(--portal-border-subtle, #e8eaef);border-radius:8px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.admin-finance-pagination__nav-btn:hover:not(:disabled){border-color:#d8dce4;background:#fafbfc;color:var(--amu-red, #a52838)}.admin-finance-pagination__nav-btn:disabled{opacity:.45;cursor:not-allowed}.admin-finance-pagination__pages{display:inline-flex;align-items:center;gap:.5rem}.admin-finance-pagination__page{display:inline-flex;align-items:center;justify-content:center;min-width:0;height:auto;margin:0;padding:0;font:inherit;font-size:.875rem;font-weight:500;line-height:1;color:var(--portal-text-muted, #6b7280);background:transparent;border:none;border-radius:0;cursor:pointer;transition:color .15s ease}.admin-finance-pagination__page:hover:not(:disabled){color:var(--amu-red-dark, #8c1d2c)}.admin-finance-pagination__page--current{color:var(--amu-red-dark, #8c1d2c);font-weight:600;cursor:default}.admin-finance-pagination__page:disabled{opacity:.45;cursor:not-allowed}.admin-finance-pagination__ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:0;color:var(--portal-text-muted, #6b7280);font-size:.875rem;-webkit-user-select:none;user-select:none}.admin-finance-banner{margin:0 0 .75rem;font-size:.875rem}.admin-finance-banner--warn{color:#b45309}.admin-finance-expand__quarter-label{margin:0 .5rem 0 0;align-self:center}.admin-finance-actions-col,.admin-finance-actions-cell{width:1%;white-space:nowrap;vertical-align:middle}.admin-finance-ledger-actions{display:inline-flex;flex-wrap:wrap;gap:.35rem}.admin-finance-ledger-actions-muted{color:var(--portal-text-muted);font-size:.9375rem}.admin-finance-receipt-status{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .45rem;border-radius:999px;font-size:.6875rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;max-width:min(100%,11rem);overflow:hidden;text-overflow:ellipsis}.admin-finance-receipt-status--sent{background:color-mix(in srgb,#16a34a 14%,var(--amu-card));color:#15803d}.admin-finance-receipt-status--failed{background:color-mix(in srgb,#dc2626 14%,var(--amu-card));color:#b91c1c}.admin-finance-receipt-status--skipped{background:color-mix(in srgb,#d97706 14%,var(--amu-card));color:#b45309}.admin-finance-receipt-status--pending{background:color-mix(in srgb,#2563eb 14%,var(--amu-card));color:#1d4ed8}.admin-finance-receipt-status--none{background:color-mix(in srgb,var(--portal-text-muted) 12%,var(--amu-card));color:var(--portal-text-muted)}.admin-finance-expand-row .admin-finance-expand-cell{padding:0;vertical-align:top;background:color-mix(in srgb,var(--amu-card) 92%,var(--portal-border-subtle));border-top:none}.admin-finance-expand{padding:1rem 1.25rem 1.25rem;box-sizing:border-box;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.admin-finance-expand .portal-table-wrap{max-width:100%;min-width:0}.admin-finance-expand__toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin-bottom:1rem}.admin-finance-totals__label{text-align:right}.admin-finance-page__heading{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;width:100%}.admin-finance-quarter-summary-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.admin-finance-page__summary{margin-bottom:.75rem}.admin-finance-page__bucket-grid{gap:.5rem}.admin-finance-page__bucket-card{display:flex;flex-direction:column;height:100%;min-height:0;min-width:0;padding:.65rem .75rem;background:var(--amu-card);box-shadow:none}.admin-finance-quarter-summary-bar__item{display:flex;flex-direction:column;gap:.2rem;padding:.85rem 1rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow)}.admin-finance-quarter-summary-bar__label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-finance-quarter-summary-bar__item strong{font-size:1.05rem;font-variant-numeric:tabular-nums;color:var(--text-dark)}.admin-finance-status-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}.admin-finance-status-chips--inline{margin-bottom:0}.admin-finance-roster-scope{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.75rem}.admin-finance-roster-scope__label{font-size:.8125rem;font-weight:600}.admin-finance-status-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--portal-border-subtle);background:var(--amu-card);color:var(--portal-text-muted);font:inherit;font-size:.8125rem;font-weight:600;padding:.35rem .75rem;border-radius:999px;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.admin-finance-status-chip:hover:not(:disabled){color:var(--text-dark);border-color:color-mix(in srgb,var(--portal-border-subtle) 50%,var(--text-dark))}.admin-finance-status-chip--active{background:color-mix(in srgb,var(--amu-primary) 12%,var(--amu-card));border-color:color-mix(in srgb,var(--amu-primary) 35%,var(--portal-border-subtle));color:var(--text-dark)}.admin-finance-status-chip:disabled{opacity:.55;cursor:not-allowed}.admin-finance-skeleton-line{display:block;height:.875rem;width:min(100%,12rem);border-radius:4px;background:linear-gradient(90deg,color-mix(in srgb,var(--portal-border-subtle) 70%,transparent) 25%,color-mix(in srgb,var(--portal-border-subtle) 35%,transparent),color-mix(in srgb,var(--portal-border-subtle) 70%,transparent) 75%);background-size:200% 100%;animation:admin-finance-skeleton-shimmer 1.2s ease-in-out infinite}.admin-finance-table-loading-hint{margin:.75rem 1rem 1rem;font-size:.8125rem}@keyframes admin-finance-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.admin-finance-table-hint{margin:.65rem 0 0;font-size:.8125rem}.admin-finance-roster-toolbar-wrap{margin:0 0 .65rem}.admin-finance-roster-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.5rem .65rem;padding:.55rem .75rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:color-mix(in srgb,var(--portal-surface, #fff) 92%,var(--portal-border-subtle))}.admin-finance-roster-toolbar__filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .65rem;flex:1 1 auto;min-width:0}.admin-finance-roster-toolbar__end{display:inline-flex;align-items:center;margin-left:auto;flex-shrink:0}.admin-finance-roster-toolbar__group{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.admin-finance-roster-toolbar__group--sort{flex-wrap:wrap}.admin-finance-roster-toolbar__divider{width:1px;align-self:stretch;min-height:1.75rem;background:var(--portal-border-subtle);flex-shrink:0}.admin-finance-roster-toolbar__field{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.admin-finance-roster-toolbar__label{font-size:.8125rem;font-weight:600;color:var(--portal-text-muted);white-space:nowrap}.admin-finance-roster-toolbar__select{min-width:8.75rem}.admin-finance-roster-toolbar__select--sort{min-width:7.75rem}.admin-finance-roster-toolbar__sort{display:inline-flex;align-items:center;gap:.35rem}.admin-finance-roster-toolbar__sort-icons{display:inline-flex;flex-direction:column;flex-shrink:0;border:1px solid var(--portal-border-subtle);border-radius:.25rem;overflow:hidden;background:var(--portal-surface, #fff)}.admin-finance-roster-toolbar__sort-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:1.375rem;height:1.125rem;padding:0;margin:0;border:none;background:transparent;color:var(--portal-text-muted);cursor:pointer;line-height:1}.admin-finance-roster-toolbar__sort-icon-btn:not(:last-child){border-bottom:1px solid var(--portal-border-subtle)}.admin-finance-roster-toolbar__sort-icon-btn:hover:not(:disabled){background:color-mix(in srgb,var(--portal-border-subtle) 35%,transparent);color:var(--portal-text)}.admin-finance-roster-toolbar__sort-icon-btn:focus-visible{outline:2px solid var(--amu-primary);outline-offset:1px;z-index:1}.admin-finance-roster-toolbar__sort-icon-btn:disabled{opacity:.45;cursor:not-allowed}.admin-finance-roster-toolbar__sort-icon-btn--active{color:var(--amu-primary);background:color-mix(in srgb,var(--amu-primary) 10%,white)}.admin-finance-roster-toolbar__sort-caption{font-size:.75rem;font-weight:500;color:var(--portal-text-muted);white-space:nowrap;line-height:1.2}.admin-finance-roster-toolbar__toggle{display:inline-flex;align-items:center;gap:.45rem;cursor:pointer;-webkit-user-select:none;user-select:none;margin:0}.admin-finance-roster-toolbar__checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:.95rem;height:.95rem;margin:0;flex-shrink:0;cursor:pointer;border:1.5px solid var(--portal-border-subtle);border-radius:.2rem;background:var(--portal-surface, #fff)}.admin-finance-roster-toolbar__checkbox:checked{background-color:var(--amu-primary, #8b0015);border-color:var(--amu-primary, #8b0015);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2 6l3 3 5-5'/%3E%3C/svg%3E");background-size:.7rem;background-position:center;background-repeat:no-repeat}.admin-finance-roster-toolbar__checkbox:focus-visible{outline:2px solid var(--amu-primary, #8b0015);outline-offset:2px}.admin-finance-roster-toolbar__toggle-label{font-size:.8125rem;font-weight:500;color:var(--portal-text);white-space:nowrap}.admin-finance-roster-toolbar__toggle:has(.admin-finance-roster-toolbar__checkbox:disabled){opacity:.45;cursor:not-allowed}.admin-finance-roster-toolbar__export-btn{display:inline-flex;align-items:center;gap:.35rem;min-height:2.375rem;white-space:nowrap}.admin-finance-banner--error{color:var(--amu-primary);margin:0 0 .65rem}.admin-finance-table-wrap{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);overflow:hidden;box-shadow:var(--portal-shadow)}.admin-finance-table{table-layout:fixed;width:100%}.admin-finance-table__col-student{width:26%}.admin-finance-table__col-receipt,.admin-finance-table__col-status{width:11%}.admin-finance-table__col-money{width:17.33%}.admin-finance-table thead th{padding:.65rem .75rem;vertical-align:middle}.admin-finance-table tbody td{padding:.7rem .75rem;vertical-align:middle}.admin-finance-table th.admin-finance-table__head-student,.admin-finance-table td.admin-finance-table__cell-student{text-align:left;padding-left:1rem;padding-right:.75rem;overflow:hidden}.admin-finance-table th.admin-finance-table__head-receipt,.admin-finance-table td.admin-finance-table__cell-receipt{text-align:center;padding-left:.35rem;padding-right:.35rem}.admin-finance-table th.admin-finance-table__head-receipt{white-space:nowrap;letter-spacing:.04em}.admin-finance-table td.admin-finance-table__cell-receipt{vertical-align:middle}.admin-finance-table td.admin-finance-table__cell-receipt .admin-finance-receipt-mail-btn{display:inline-flex;vertical-align:middle;box-shadow:none;filter:none}.admin-finance-receipt-mail-btn svg{display:block;filter:none}.admin-finance-receipt-mail-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:.35rem;background:transparent;cursor:pointer;line-height:0;box-shadow:none;filter:none;transition:color .15s ease,opacity .15s ease}.admin-finance-receipt-mail-btn:disabled{cursor:default;opacity:.45}.admin-finance-receipt-mail-btn:not(:disabled):hover{filter:none;box-shadow:none}.admin-finance-receipt-mail-btn--busy{opacity:.75}.admin-finance-receipt-mail-btn__spinner{animation:admin-finance-receipt-spin .8s linear infinite}@keyframes admin-finance-receipt-spin{to{transform:rotate(360deg)}}.admin-finance-receipt-mail-btn--inactive{color:color-mix(in srgb,var(--portal-text-muted) 68%,transparent)}.admin-finance-receipt-mail-btn--sent{color:#16a34a;background:transparent;border:none}.admin-finance-receipt-mail-btn--failed{color:#b91c1c;background:transparent}.admin-finance-receipt-mail-btn--skipped{color:#b45309;background:transparent}.admin-finance-receipt-mail-btn--pending{color:#1d4ed8;background:transparent}.admin-finance-receipt-mail-btn--none{color:var(--portal-text-muted);background:transparent}.admin-finance-receipt-mail-btn--actionable{color:#64748b;background:transparent;border:none;cursor:pointer}.admin-finance-receipt-mail-btn--actionable:not(:disabled):hover{color:#8c1d2c;background:transparent;border:none;box-shadow:none}.admin-finance-table th.admin-finance-table__head-status,.admin-finance-table td.admin-finance-table__cell-status{text-align:center;padding-left:.5rem;padding-right:.5rem}.admin-finance-table-status-badge{font-size:.6875rem;font-weight:600;padding:.18rem .45rem;letter-spacing:0;text-transform:none;min-width:2.85rem;width:auto;max-width:100%;justify-content:center;box-sizing:border-box}.admin-finance-table th.admin-finance-table__head-money,.admin-finance-table td.admin-finance-table__cell-money{text-align:right;padding-left:.5rem;padding-right:1rem;font-variant-numeric:tabular-nums}.admin-finance-table th.admin-table-numeric,.admin-finance-table td.admin-table-numeric{text-align:right;font-variant-numeric:tabular-nums}.admin-finance-table tbody tr.admin-finance-table-row{cursor:default}.admin-finance-table tbody tr.admin-finance-table-row:hover{background:color-mix(in srgb,var(--amu-primary) 3%,var(--amu-card))}.admin-finance-table-row--selected{background:color-mix(in srgb,var(--amu-primary) 8%,var(--amu-card))}.admin-finance-table-row--selected .admin-student-name-link,.admin-finance-table-row--selected .admin-student-name-link:hover{border-bottom-color:transparent}.admin-finance-table-student{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;min-width:0;max-width:100%}.admin-finance-table-student .admin-student-name-link{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-finance-table-student__id{font-size:.8125rem;line-height:1.25}.admin-finance-table .admin-student-name-link{cursor:pointer}.admin-finance-table .admin-student-name-link:hover,.admin-finance-table tbody tr.admin-finance-table-row:hover .admin-student-name-link{border-bottom-color:transparent}.admin-finance-table .admin-student-name-link:focus-visible{outline:2px solid color-mix(in srgb,var(--amu-primary) 55%,transparent);outline-offset:2px;border-radius:2px}.admin-finance-page{--admin-finance-amount-owes: #9a3412}.admin-finance-balance{font-weight:600;font-variant-numeric:tabular-nums}.admin-finance-balance--owes,.admin-finance-amount--owes{color:var(--admin-finance-amount-owes);font-weight:700}.admin-finance-status-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.admin-finance-status-badge--with-icon{gap:.3rem}.admin-finance-status-badge--paid{background:color-mix(in srgb,#16a34a 14%,var(--amu-card));color:#15803d}.admin-finance-status-badge--owes{background:color-mix(in srgb,#d97706 14%,var(--amu-card));color:#b45309}.admin-finance-status-badge--overdue{background:color-mix(in srgb,#dc2626 14%,var(--amu-card));color:#b91c1c}.admin-finance-status-badge--credit{background:color-mix(in srgb,#2563eb 14%,var(--amu-card));color:#1d4ed8}.admin-finance-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#0f172a59;display:flex;justify-content:flex-end}.admin-finance-drawer{width:min(42rem,100vw);height:100%;background:var(--amu-card);border-left:1px solid var(--portal-border-subtle);box-shadow:-8px 0 24px #0f172a1f;display:flex;flex-direction:column;animation:admin-finance-drawer-in .2s ease}@keyframes admin-finance-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.admin-finance-drawer__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;padding:1.1rem 1.25rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-finance-drawer__title{margin:0;font-size:1.15rem;font-weight:700;color:var(--text-dark)}.admin-finance-drawer__meta{margin:.25rem 0 0;font-size:.875rem}.admin-finance-drawer__header-actions{display:inline-flex;flex-wrap:wrap;gap:.5rem}.admin-finance-drawer__body{flex:1;min-height:0;overflow:auto;padding:1rem 1.25rem 1.25rem}.admin-finance-drawer-summary__status-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1rem}.admin-finance-drawer-summary__net{margin:0;font-size:.9375rem}.admin-finance-bucket-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.admin-finance-bucket-grid.admin-finance-page__bucket-grid,.admin-finance-bucket-grid.admin-finance-student-panel__bucket-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;margin-bottom:0}.admin-finance-bucket-grid.admin-finance-page__bucket-grid .admin-finance-bucket-card{padding:.65rem .75rem;box-shadow:none}.admin-finance-bucket-card{padding:.65rem .75rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:color-mix(in srgb,var(--amu-card) 96%,var(--portal-border-subtle));min-width:0}.admin-finance-bucket-card__label{margin:0 0 .25rem;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--amu-primary, #8b0015)}.admin-finance-bucket-card__amount{margin:0;font-size:.9375rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-dark)}.admin-finance-bucket-card--total .admin-finance-bucket-card__total-rows,.admin-finance-bucket-card .admin-finance-bucket-card__total-rows{display:flex;flex-direction:column;gap:.2rem}.admin-finance-bucket-card__total-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin:0}.admin-finance-bucket-card__total-key{font-size:.75rem;font-weight:500;color:var(--portal-text-muted)}.admin-finance-bucket-card__amount--total{font-size:.9375rem}.admin-finance-bucket-card--total .admin-finance-bucket-card__breakdown{margin:.35rem 0 0;font-size:.75rem;line-height:1.3}.admin-finance-drawer-summary__hint{margin:0;font-size:.875rem}.admin-finance-drawer-ledger{padding:0;max-width:100%;overflow-x:auto}.admin-finance-drawer-ledger .admin-finance-expand__toolbar{margin-bottom:.85rem}.admin-finance-student-detail-page{display:grid;gap:1rem}.admin-finance-student-detail-page__toolbar{margin-bottom:0}.admin-finance-student-panel{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--amu-card);box-shadow:var(--portal-shadow);overflow:hidden}.admin-finance-student-panel__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.25rem;padding:1.15rem 1.25rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-finance-student-panel__header-main{min-width:0;flex:1 1 14rem}.admin-finance-student-panel__header-summary{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .65rem;margin-top:.35rem}.admin-finance-student-panel__meta{margin:.35rem 0 0;font-size:.875rem}.admin-finance-student-panel__header-right{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;min-width:min(100%,19.75rem)}.admin-finance-student-panel__header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem;width:100%;max-width:19.75rem}.admin-finance-student-panel__action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;margin:0;min-height:2.05rem;padding:.36rem .5rem;border:1px solid color-mix(in srgb,var(--amu-red) 28%,var(--portal-border-subtle));border-radius:var(--portal-radius);background:var(--amu-card);color:var(--amu-red);font-family:inherit;font-size:.78rem;font-weight:600;line-height:1.15;white-space:nowrap;text-decoration:none;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.admin-finance-student-panel__action-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--amu-red) 45%,var(--portal-border-subtle));background:color-mix(in srgb,var(--amu-red) 6%,var(--amu-card));color:var(--amu-red-dark)}.admin-finance-student-panel__action-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--amu-red) 55%,transparent);outline-offset:2px}.admin-finance-student-panel__action-btn:disabled{opacity:.55;cursor:not-allowed}.admin-finance-student-panel__action-btn--link{color:var(--amu-red)}.admin-finance-student-panel__action-btn--link:hover{color:var(--amu-red-dark)}.admin-finance-student-panel__title{margin:0;font-size:1.35rem;font-weight:700;color:var(--text-dark)}.admin-finance-student-panel__net-balance{margin:0;font-size:.8125rem;color:var(--portal-text-muted);white-space:nowrap}.admin-finance-student-panel__net-balance strong{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-dark)}.admin-finance-student-panel__export-error{margin:0;padding:.55rem 1.25rem;border-bottom:1px solid var(--portal-border-subtle)}.admin-finance-student-panel__body{padding:1rem 1.25rem 1.25rem}.admin-finance-student-panel__summary{margin-bottom:1.25rem}.admin-finance-student-panel__bucket-grid{align-items:stretch;margin-bottom:0}.admin-finance-student-panel__bucket-card{display:flex;flex-direction:column;height:100%;min-height:6.75rem;min-width:0}.admin-finance-bucket-card__breakdown{margin:.35rem 0 0;font-size:.8125rem;line-height:1.35}.admin-finance-student-panel__ledger{min-width:0}.admin-finance-student-panel__ledger .admin-finance-expand{padding:0}.admin-finance-ledger-modal{max-width:min(40rem,calc(100vw - 2rem));max-height:min(92vh,44rem);padding:0;overflow:hidden;display:flex;flex-direction:column}.admin-finance-mail-preview-modal{max-width:min(56rem,calc(100vw - 2rem));max-height:min(92vh,52rem);padding:0;overflow:hidden;display:flex;flex-direction:column}.admin-finance-mail-preview__body{flex:1 1 auto;min-height:0;padding:0 1.2rem 1rem;display:flex;flex-direction:column}.admin-finance-mail-preview__frame{flex:1 1 auto;width:100%;min-height:min(62vh,36rem);border:1px solid var(--portal-border-subtle);border-radius:.55rem;background:#fff}.admin-finance-mail-preview__loading{flex:1 1 auto;min-height:min(40vh,20rem);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;color:var(--portal-text-muted);font-size:.875rem}.admin-finance-mail-preview__sent{display:flex;align-items:center;gap:.45rem;margin:.75rem 1.2rem 0;padding:.55rem .75rem;border-radius:.5rem;background:color-mix(in srgb,#15803d 10%,var(--amu-card));border:1px solid color-mix(in srgb,#15803d 28%,var(--portal-border-subtle));color:#166534;font-size:.875rem;font-weight:600}.admin-finance-ledger-modal__header{display:flex;align-items:flex-start;gap:.75rem;padding:1.1rem 1.2rem .85rem;border-bottom:1px solid var(--portal-border-subtle);background:color-mix(in srgb,var(--amu-card) 94%,var(--portal-border-subtle))}.admin-finance-ledger-modal__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2.1rem;height:2.1rem;border-radius:.55rem;border:1px solid color-mix(in srgb,var(--amu-red) 24%,var(--portal-border-subtle));background:color-mix(in srgb,var(--amu-red) 7%,var(--amu-card));color:var(--amu-red)}.admin-finance-ledger-modal__heading{min-width:0}.admin-finance-ledger-modal__title{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-dark)}.admin-finance-ledger-modal__subtitle{margin:.3rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.admin-finance-ledger-modal__error{margin:.75rem 1.2rem 0}.admin-finance-ledger-modal__body{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.2rem;overflow:auto}.admin-finance-ledger-modal__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem .85rem}.admin-finance-ledger-modal__field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.admin-finance-ledger-modal__label{font-size:.8125rem;font-weight:600;color:var(--text-dark)}.admin-finance-ledger-modal__field-hint{margin:0;font-size:.75rem;line-height:1.35}.admin-finance-ledger-modal__legend{display:flex;flex-direction:column;gap:.15rem;margin:0 0 .45rem;padding:0;border:0;font-size:.8125rem;font-weight:600;color:var(--text-dark)}.admin-finance-ledger-modal__legend-note{font-size:.75rem;font-weight:400;line-height:1.35}.admin-finance-ledger-modal__choice-grid{margin:0;padding:0;border:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.admin-finance-ledger-modal__choice-grid--payment{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-finance-ledger-modal__choice{position:relative;display:flex;flex-direction:column;gap:.12rem;padding:.55rem .6rem;border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--amu-card);cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.admin-finance-ledger-modal__choice:hover{border-color:color-mix(in srgb,var(--amu-red) 30%,var(--portal-border-subtle))}.admin-finance-ledger-modal__choice--active{border-color:color-mix(in srgb,var(--amu-red) 45%,var(--portal-border-subtle));background:color-mix(in srgb,var(--amu-red) 5%,var(--amu-card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--amu-red) 18%,transparent)}.admin-finance-ledger-modal__choice-input{position:absolute;opacity:0;pointer-events:none}.admin-finance-ledger-modal__choice-title{font-size:.8125rem;font-weight:700;color:var(--text-dark)}.admin-finance-ledger-modal__choice-meta{font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--amu-red)}.admin-finance-ledger-modal__choice-hint{font-size:.75rem;line-height:1.35;color:var(--portal-text-muted)}.admin-finance-ledger-modal__actions{display:flex;justify-content:flex-end;gap:.5rem;padding:.85rem 1.2rem 1rem;border-top:1px solid var(--portal-border-subtle);background:color-mix(in srgb,var(--amu-card) 96%,var(--portal-border-subtle))}.admin-finance-ledger-modal__btn{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;margin:0;padding:.42rem .85rem;border-radius:var(--portal-radius);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.admin-finance-ledger-modal__btn--ghost{border:1px solid var(--portal-border-subtle);background:var(--amu-card);color:var(--portal-text-muted)}.admin-finance-ledger-modal__btn--ghost:hover:not(:disabled){border-color:var(--portal-border-subtle);color:var(--text-dark)}.admin-finance-ledger-modal__btn--submit{border:1px solid color-mix(in srgb,var(--amu-red) 35%,var(--portal-border-subtle));background:var(--amu-card);color:var(--amu-red)}.admin-finance-ledger-modal__btn--submit:hover:not(:disabled){border-color:color-mix(in srgb,var(--amu-red) 50%,var(--portal-border-subtle));background:color-mix(in srgb,var(--amu-red) 6%,var(--amu-card));color:var(--amu-red-dark)}.admin-finance-ledger-modal__btn:focus-visible{outline:2px solid color-mix(in srgb,var(--amu-red) 55%,transparent);outline-offset:2px}.admin-finance-ledger-modal__btn:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 720px){.admin-finance-ledger-modal__row,.admin-finance-ledger-modal__choice-grid,.admin-finance-ledger-modal__choice-grid--payment{grid-template-columns:1fr}}.admin-finance-late-fee--inline{display:contents}.admin-finance-late-fee__heading{display:flex;flex-direction:column;gap:.15rem;min-width:0}.admin-finance-late-fee__hint{font-size:.8125rem;line-height:1.35}.admin-finance-late-fee__hint a{color:var(--amu-primary);text-decoration:underline;text-underline-offset:2px}.admin-finance-late-fee__actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-finance-late-fee__preview{margin:.5rem 0 0}.admin-finance-late-fee__feedback{margin:.35rem 0 0}.admin-finance-late-fee__feedback--full{flex:1 0 100%;width:100%;order:99}.admin-finance-roster-toolbar__group--late-fee{align-items:flex-start;gap:.5rem .75rem}@media (min-width: 900px){.admin-finance-roster-toolbar__group--late-fee{flex-direction:row;align-items:center}.admin-finance-late-fee__heading{flex:1 1 auto}}.admin-finance-quarter-panel{display:grid;gap:1rem}.admin-finance-quarter-card{padding:1.15rem 1.25rem}.admin-finance-quarter-card__title{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:var(--text-dark)}.admin-finance-quarter-card__lead{margin:0 0 .85rem;font-size:.9375rem}.admin-finance-quarter-card__note{margin:0 0 .85rem}.admin-finance-quarter-card__form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem}.admin-finance-quarter-card__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.admin-finance-quarter-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:0}.admin-finance-quarter-preview>div{display:flex;flex-direction:column;gap:.15rem}.admin-finance-quarter-preview dt{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--portal-text-faint)}.admin-finance-quarter-preview dd{margin:0;font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums}.admin-form-message--success{color:#15803d}@media (max-width: 720px){.admin-finance-quarter-summary-bar{grid-template-columns:1fr}.admin-finance-bucket-grid:not(.admin-finance-page__bucket-grid):not(.admin-finance-student-panel__bucket-grid){grid-template-columns:1fr}.admin-finance-student-panel__bucket-card{min-height:6.25rem;padding:.7rem .65rem}.admin-finance-bucket-card__amount{font-size:1rem}.admin-finance-bucket-card__breakdown{font-size:.75rem}.admin-finance-student-panel__header{flex-direction:column;align-items:stretch}.admin-finance-student-panel__header-right{width:100%;min-width:0;justify-content:flex-start}.admin-finance-student-panel__header-actions{max-width:none}.admin-finance-drawer{width:100vw}}.admin-table-numeric{text-align:right;font-variant-numeric:tabular-nums}.admin-stat-card{padding:1.15rem 1.25rem;background:var(--amu-card);border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);box-shadow:var(--portal-shadow)}.admin-stat-card__label{margin:0 0 .35rem;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-stat-card__value{margin:0;font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-dark)}.admin-stat-card__note{margin:.35rem 0 0;font-size:.75rem;color:var(--portal-text-faint)}@media (max-width: 1100px){.admin-dashboard-grid,.admin-finance-summary{grid-template-columns:1fr}}@media (max-width: 1023px){.admin-portal{flex-direction:column;--portal-branding-bar-height: 4.5rem;overflow-x:clip}.admin-portal__frame{margin-left:0;padding-top:0;min-width:0}.admin-portal__main-content{padding-left:20px;padding-right:20px}.admin-portal .admin-sidebar{position:relative;top:auto;left:auto;width:100%;height:auto;min-height:0;margin-top:var(--admin-header-height);border-right:none;border-bottom:1px solid rgba(0,0,0,.12);padding:.6rem .65rem .65rem}.admin-portal .admin-sidebar .portal-sidebar-nav{overflow:visible}.admin-portal .admin-sidebar .portal-sidebar-nav-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,9.5rem),1fr));gap:.35rem .45rem}.admin-portal .admin-sidebar .portal-sidebar-nav-list li{min-width:0}.admin-portal .admin-sidebar .portal-nav-link{justify-content:center;text-align:center;font-size:.8125rem;font-weight:400;padding:.4rem .45rem;white-space:normal;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.admin-portal .admin-sidebar .portal-nav-link--active,.admin-portal .admin-sidebar .sidebar-item.portal-nav-link--active{font-weight:600;box-shadow:inset 0 -2px #ffffff8c;background:#ffffff1f}.admin-portal .portal-branding-bar-start{flex:1;min-width:0;gap:.5rem}.admin-portal .portal-branding-bar-logo{height:2.375rem;max-height:calc(var(--portal-branding-bar-height) - 1rem);max-width:min(9.5rem,40vw)}.admin-portal__branding-title{font-size:clamp(.7rem,2.2vw,.875rem);letter-spacing:.025em}.admin-portal .portal-branding-bar-inner{padding-left:max(env(safe-area-inset-left),1rem);padding-right:max(env(safe-area-inset-right),1rem)}.admin-finance-page-controls{flex-direction:column;align-items:stretch;gap:.65rem}.admin-finance-page-controls__field{width:100%;min-width:0}.admin-finance-page-controls__field--balance-filter{width:100%}.admin-finance-page-controls__field .admin-input{width:100%;box-sizing:border-box}.admin-page__toolbar .admin-field--inline{flex-direction:column;align-items:stretch;width:100%;min-width:0}.admin-page__toolbar .admin-field--inline .admin-field__label{white-space:normal}.admin-page__toolbar .admin-field--inline .admin-input{width:100%;box-sizing:border-box}}@media (max-width: 479px){.admin-portal .admin-sidebar .portal-sidebar-nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 767px){.admin-portal__main-content{padding-left:16px;padding-right:16px}.admin-page__toolbar{flex-direction:column;align-items:stretch}.admin-page__toolbar-actions{margin-left:0;width:100%;justify-content:flex-start}.admin-page .admin-input--search{width:100%;min-width:0;max-width:none}.admin-page__title{font-size:clamp(1.375rem,4.6vw,1.5rem);margin-bottom:.6rem}.admin-page__title--inline{width:100%;margin-bottom:.45rem}.admin-detail-tabs{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;justify-content:flex-start;gap:.3rem;scrollbar-width:thin}.admin-detail-tab{flex:0 0 auto;white-space:nowrap}.admin-page .portal-tab-group.admin-courses-tablist{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;gap:.4rem;padding-bottom:.15rem;scrollbar-width:thin}.admin-page .portal-tab-group.admin-courses-tablist .portal-tab{flex:0 0 auto;white-space:nowrap}.admin-students-page__tabs{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;gap:.4rem;padding-bottom:.15rem;scrollbar-width:thin}.admin-students-page__tab{flex:0 0 auto;white-space:nowrap}.admin-students-page__controls{align-items:stretch}.admin-students-page__filters{flex:1 1 100%;width:100%}.admin-students-page__search{flex:1 1 100%;min-width:0}.admin-students-page__filter-select{flex:1 1 calc(50% - .25rem);width:auto;min-width:0}.admin-students-page__search .admin-input--search{width:100%;min-width:0}.admin-students-page__actions{flex:1 1 100%;width:100%;margin-left:0;justify-content:flex-start}.admin-students-page__actions-group{width:100%;justify-content:flex-start}.admin-page .portal-timetable-lang-tabs{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;gap:.4rem;scrollbar-width:thin}.admin-page .portal-timetable-lang-tab{flex:0 0 auto;white-space:nowrap}.admin-page .portal-table-wrap{max-width:100%}.admin-page .portal-table th,.admin-page .portal-table td{padding:.5rem .55rem;font-size:.8125rem}.admin-page .portal-table td{overflow-wrap:anywhere;word-break:break-word}.admin-page .portal-table-wrap .portal-btn--compact{padding:.28rem .5rem;font-size:.75rem}.admin-page .portal-table-wrap--clinical-progress{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}}@media (max-width: 479px){.admin-portal__main-content{padding-left:12px;padding-right:12px}}.admin-clinical-toolbar__actions{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-end;gap:.65rem .75rem;width:100%;min-width:0}.admin-clinical-toolbar__term-field{margin-right:auto;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;min-width:0}.admin-clinical-toolbar__term-field .admin-input{min-width:14rem;max-width:100%}@media (max-width: 767px){.admin-clinical-toolbar__actions{flex-direction:column;align-items:stretch;justify-content:flex-start}.admin-clinical-toolbar__term-field{margin-right:0;width:100%;flex-direction:column;align-items:stretch}.admin-clinical-toolbar__term-field .admin-input{min-width:0;width:100%;box-sizing:border-box}.admin-clinical-toolbar__actions>.portal-btn{width:100%;max-width:16rem;align-self:flex-start}}.admin-clinical-slots-table{min-width:0}.admin-clinical-slot-list{display:flex;flex-direction:column;gap:.75rem;margin-top:.25rem}.admin-clinical-slot-list--empty{padding:1.25rem}.admin-clinical-slot-list__empty{margin:0;color:var(--portal-text-muted)}.admin-clinical-slot-list__items{display:flex;flex-direction:column;gap:.85rem;margin:0;padding:0;list-style:none}.admin-clinical-slot-card{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}.admin-clinical-slot-card__top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.85rem 1.25rem;padding:1.1rem 1.25rem 1rem}.admin-clinical-slot-card__info{flex:1 1 14rem;min-width:0}.admin-clinical-slot-card__schedule-main{margin:0;font-size:1rem;font-weight:700;line-height:1.35;color:var(--portal-text)}.admin-clinical-slot-card__schedule-meta{margin:.35rem 0 0;font-size:.875rem;line-height:1.45;color:var(--portal-text-muted)}.admin-clinical-slot-card__active-count{font-variant-numeric:tabular-nums}.admin-clinical-slot-card__actions{display:flex;flex-wrap:wrap;gap:.45rem;flex-shrink:0}.admin-clinical-slot-card__enrollment{padding:.75rem 1.25rem 1rem;border-top:1px solid var(--portal-border-subtle);background:color-mix(in srgb,var(--portal-text) 2.5%,var(--portal-surface))}.admin-clinical-slot-card__enrollment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;align-items:stretch}.clinical-slot-enrollment-meter{display:flex;flex-direction:column;gap:.35rem;min-width:0;padding:.4rem .45rem;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .75);background:color-mix(in srgb,var(--portal-text) 2%,var(--portal-surface))}.clinical-slot-enrollment-meter--tile{box-sizing:border-box;padding:.55rem .65rem .65rem;background:var(--amu-card, var(--portal-surface))}.clinical-slot-enrollment-meter--tile .clinical-slot-enrollment-meter__header{margin-bottom:.4rem}.clinical-slot-enrollment-meter--tile .clinical-slot-enrollment-meter__label,.clinical-slot-enrollment-meter--tile .clinical-slot-enrollment-meter__count{font-size:.75rem}.clinical-slot-enrollment-meter--tile .clinical-slot-enrollment-meter__grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:.28rem;width:100%;max-width:6.5rem;margin:0 auto;flex:none}.clinical-slot-enrollment-meter--tile .clinical-slot-enrollment-meter__seat{width:100%;height:auto;aspect-ratio:1;min-width:0}.clinical-slot-enrollment-meter--picker{box-sizing:border-box;min-width:0;padding:.65rem .7rem .75rem;background:var(--amu-card, var(--portal-surface));transition:border-color .15s ease,box-shadow .15s ease}.clinical-slot-enrollment-meter--picker .clinical-slot-enrollment-meter__header{margin-bottom:.45rem}.clinical-slot-enrollment-meter--picker .clinical-slot-enrollment-meter__label{font-size:.75rem;line-height:1.25}.clinical-slot-enrollment-meter--picker .clinical-slot-enrollment-meter__count{font-size:.75rem}.clinical-slot-enrollment-meter--picker .clinical-slot-enrollment-meter__grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:.32rem;width:100%;max-width:7.25rem;margin:0 auto;flex:none}.clinical-slot-enrollment-meter--picker .clinical-slot-enrollment-meter__seat{width:100%;height:auto;aspect-ratio:1;min-width:0}.clinical-slot-enrollment-meter--picker.clinical-slot-enrollment-meter--selected{border-color:color-mix(in srgb,#107c10 50%,var(--portal-border-subtle));box-shadow:0 0 0 1px color-mix(in srgb,#107c10 22%,transparent)}.clinical-slot-enrollment-meter--picker.clinical-slot-enrollment-meter--interactive{cursor:pointer}.clinical-slot-enrollment-meter--picker.clinical-slot-enrollment-meter--interactive:focus-within{border-color:color-mix(in srgb,var(--portal-accent, #8b1538) 45%,var(--portal-border-subtle))}.clinical-slot-enrollment-meter--picker.clinical-slot-enrollment-meter--unavailable{opacity:.72}.clinical-slot-enrollment-meter__status{margin:.15rem 0 0;font-size:.75rem;line-height:1.35;color:var(--portal-text-muted);text-align:center}.clinical-enroll-modal__seat-picker{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--portal-border-subtle)}.clinical-enroll-modal__seat-picker-field,.clinical-enroll-modal__seat-picker-panel{border:none;margin:0;padding:0;min-width:0}.clinical-enroll-modal__seat-picker-legend{display:block;width:100%;margin-bottom:.35rem;font-size:.875rem;font-weight:600;color:var(--portal-text)}.clinical-enroll-modal__seat-picker-hint{margin:0 0 .55rem}.clinical-enroll-modal__seat-legend{display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin:0 0 .65rem;font-size:.75rem;color:var(--portal-text-muted)}.clinical-enroll-modal__seat-legend-item{display:inline-flex;align-items:center;gap:.35rem}.clinical-enroll-modal__seat-legend-swatch{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:calc(var(--portal-radius) * .55)}.clinical-enroll-modal__seat-legend-swatch--occupied{border:1px solid color-mix(in srgb,var(--portal-accent, #8b1538) 45%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-accent, #8b1538) 12%,var(--portal-surface));color:var(--portal-accent, #8b1538)}.clinical-enroll-modal__seat-legend-swatch--available{border:1px solid var(--portal-border-subtle);background:var(--amu-card, var(--portal-surface));color:var(--portal-text-muted);box-shadow:0 1px 3px #0f172a1f}.clinical-enroll-modal__seat-legend-swatch--selected,.clinical-enroll-modal__seat-legend-swatch--mine{border:1px solid color-mix(in srgb,#107c10 45%,var(--portal-border-subtle));background:color-mix(in srgb,#107c10 14%,var(--portal-surface));color:#107c10;box-shadow:none}.clinical-enroll-modal__seat-grid--picker{gap:.65rem;margin-top:0}.clinical-enroll-modal__seat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin-top:.15rem}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five{grid-template-columns:repeat(6,minmax(0,1fr));gap:.55rem;width:100%}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five>*{grid-column:span 2;min-width:0}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five .clinical-slot-enrollment-meter{box-sizing:border-box;padding:.55rem .6rem .65rem}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five .clinical-slot-enrollment-meter__header{margin-bottom:.4rem}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five .clinical-slot-enrollment-meter__label,.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five .clinical-slot-enrollment-meter__count{font-size:.75rem}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five .clinical-slot-enrollment-meter__label{white-space:nowrap;overflow-wrap:normal}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five .clinical-slot-enrollment-meter__grid{grid-template-columns:repeat(3,1.55rem);grid-template-rows:repeat(2,1.55rem);gap:.28rem;width:auto;max-width:none;margin:0 auto;justify-content:center}.clinical-enroll-modal__seat-grid.clinical-enroll-modal__seat-grid--five .clinical-slot-enrollment-meter__seat{width:1.55rem;height:1.55rem;aspect-ratio:auto}.clinical-enroll-modal__seat-readonly .clinical-slot-enrollment-meter__seat--open{box-shadow:none}.clinical-enroll-modal__seat-legend-swatch--readonly-open{border:1px solid var(--portal-border-subtle);background:var(--amu-card, var(--portal-surface));color:var(--portal-text-muted);box-shadow:none}.clinical-slot-enrollment-meter--choice{flex:1;min-width:0;padding:0;border:none;border-radius:0;background:transparent}.clinical-slot-enrollment-meter--choice .clinical-slot-enrollment-meter__header{margin-bottom:.2rem}.clinical-slot-enrollment-meter--choice .clinical-slot-enrollment-meter__grid{justify-content:flex-start;margin:0;grid-template-columns:repeat(3,1.55rem);grid-template-rows:repeat(2,1.55rem);gap:.22rem}.clinical-slot-enrollment-meter--choice .clinical-slot-enrollment-meter__seat{width:1.55rem;height:1.55rem}.clinical-enroll-modal__seat-summary{margin:0}.clinical-enroll-modal__choices{border:none;margin:.65rem 0 0;padding:0}.clinical-enroll-modal__choices-legend{font-size:.8125rem;font-weight:600;margin-bottom:.25rem;color:var(--portal-text)}.clinical-enroll-modal__choices-hint{margin:0 0 .45rem}.clinical-enroll-modal__choice-list{display:flex;flex-direction:column;gap:.4rem}.clinical-enroll-seat-choice{display:flex;align-items:flex-start;gap:.55rem;padding:.5rem .55rem;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .75);background:var(--amu-card, var(--portal-surface));cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.clinical-enroll-seat-choice--selected{border-color:color-mix(in srgb,var(--portal-accent, #8b1538) 55%,var(--portal-border-subtle));box-shadow:0 0 0 1px color-mix(in srgb,var(--portal-accent, #8b1538) 18%,transparent)}.clinical-enroll-seat-choice--disabled{cursor:not-allowed;opacity:.55}.clinical-enroll-seat-choice__radio{flex-shrink:0;margin-top:.2rem}.clinical-enroll-seat-choice__unavailable{display:flex;flex-direction:column;gap:.15rem;min-width:0}.clinical-enroll-seat-choice__label{font-size:.8125rem;font-weight:600;color:var(--portal-text)}.clinical-enroll-seat-choice__status{font-size:.75rem;color:var(--portal-text-muted)}@media (min-width: 52rem){.clinical-enroll-modal__seat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.clinical-slot-enrollment-meter__header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.35rem .5rem;min-height:1rem;margin-bottom:.3rem}.clinical-slot-enrollment-meter__label{min-width:0;font-size:.6875rem;font-weight:700;letter-spacing:.02em;line-height:1.25;color:var(--portal-text);overflow-wrap:anywhere}.clinical-slot-enrollment-meter__count{flex-shrink:0;font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.25;white-space:nowrap;color:var(--portal-text-muted)}.clinical-slot-enrollment-meter__grid{display:grid;grid-template-columns:repeat(3,1.95rem);grid-template-rows:repeat(2,1.95rem);gap:.32rem;justify-content:center;align-content:center;flex:1;margin:0 auto}.clinical-slot-enrollment-meter__seat{display:inline-flex;align-items:center;justify-content:center;width:1.95rem;height:1.95rem;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .55);background:var(--amu-card, var(--portal-surface));color:var(--portal-text-faint)}.clinical-slot-enrollment-meter__seat--occupied,.clinical-slot-enrollment-meter__seat--enrolled{border-color:color-mix(in srgb,var(--portal-accent, #8b1538) 45%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-accent, #8b1538) 12%,var(--amu-card, var(--portal-surface)));color:var(--portal-accent, #8b1538);box-shadow:none}.clinical-slot-enrollment-meter__seat--mine,.clinical-slot-enrollment-meter__seat--selected{border-color:color-mix(in srgb,#107c10 48%,var(--portal-border-subtle));background:color-mix(in srgb,#107c10 14%,var(--amu-card, var(--portal-surface)));color:#107c10;box-shadow:none}.clinical-slot-enrollment-meter__seat--open{color:var(--portal-text-muted);box-shadow:0 1px 3px #0f172a1a}.clinical-slot-enrollment-meter__seat--pickable{padding:0;cursor:pointer;font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .15s ease,box-shadow .15s ease,transform .12s ease}.clinical-slot-enrollment-meter__seat--pickable:hover{border-color:color-mix(in srgb,#107c10 35%,var(--portal-border-subtle));box-shadow:0 2px 6px #0f172a24;transform:translateY(-1px)}.clinical-slot-enrollment-meter__seat--pickable:focus-visible{outline:2px solid color-mix(in srgb,#107c10 55%,transparent);outline-offset:1px}.clinical-slot-enrollment-meter__seat--off{opacity:.22}@media (min-width: 40rem){.admin-clinical-slot-card__enrollment-grid{gap:.65rem}}@media (max-width: 39.99rem){.admin-clinical-slot-card__enrollment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 24rem){.admin-clinical-slot-card__enrollment-grid{grid-template-columns:minmax(0,1fr)}}@media (min-width: 52rem){.admin-clinical-slot-card__actions{flex-wrap:nowrap}}@media (max-width: 32rem){.admin-clinical-slot-card__top{flex-direction:column}.admin-clinical-slot-card__actions{width:100%}.admin-clinical-slot-card__actions .portal-btn{flex:1 1 auto}}.admin-section-detail-modal--clinical-slot{max-width:min(31rem,calc(100vw - 2rem));max-height:min(92vh,42rem);padding:.95rem 1.05rem .9rem;box-shadow:none}.admin-section-detail-modal--clinical-slot .admin-section-detail-modal__title{margin:0 0 .75rem;font-size:1rem;line-height:1.25}.admin-clinical-slot-form{display:flex;flex-direction:column;gap:.7rem}.admin-clinical-slot-form__section{display:flex;flex-direction:column;gap:.5rem}.admin-clinical-slot-form__section+.admin-clinical-slot-form__section{padding-top:.7rem;border-top:1px solid var(--portal-border-subtle)}.admin-clinical-slot-form__section-head{display:flex;align-items:baseline;justify-content:space-between;gap:.65rem}.admin-clinical-slot-form__section-title{margin:0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-clinical-slot-form__section-note{font-size:.6875rem;line-height:1.3;color:var(--portal-text-muted);white-space:nowrap}.admin-clinical-slot-form__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:.55rem;row-gap:.5rem}.admin-clinical-slot-form__field--full{grid-column:1 / -1}.admin-clinical-slot-form__field--half{grid-column:span 3}.admin-clinical-slot-form__field--third{grid-column:span 2}.admin-clinical-slot-form__field{min-width:0;display:flex;flex-direction:column}.admin-clinical-slot-form__field>label{display:block;margin-bottom:.25rem;min-height:1.125rem;font-size:.75rem;font-weight:600;line-height:1.125rem;color:var(--portal-text)}.admin-section-detail-modal--clinical-slot .admin-clinical-slot-form__input{box-sizing:border-box;width:100%;height:2.125rem;min-height:2.125rem;padding-top:0;padding-bottom:0;line-height:1.2}.admin-clinical-slot-form__capacity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;align-items:stretch}.admin-clinical-slot-form__inline-error,.admin-clinical-slot-form__error{margin:.45rem 0 0;font-size:.8125rem;line-height:1.35;color:var(--portal-danger, #b42318)}.admin-clinical-slot-form__actions{display:flex;justify-content:flex-end;align-items:center;gap:.45rem;margin-top:.75rem;padding-top:.7rem;border-top:1px solid var(--portal-border-subtle)}.admin-clinical-slot-form__actions .portal-btn{box-sizing:border-box;width:5.25rem;min-width:5.25rem;height:2.125rem;min-height:2.125rem;padding:0 .75rem;font-size:.8125rem;line-height:1}.clinical-slot-capacity{box-sizing:border-box;display:flex;flex-direction:column;min-width:0;min-height:7.5rem;padding:.45rem .45rem .55rem;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .75);background:color-mix(in srgb,var(--portal-text) 2.5%,var(--portal-surface))}.clinical-slot-capacity__header{display:flex;align-items:center;justify-content:space-between;gap:.35rem;min-height:1rem;margin-bottom:.35rem}.clinical-slot-capacity__label{font-size:.6875rem;font-weight:700;letter-spacing:.02em;line-height:1;color:var(--portal-text)}.clinical-slot-capacity__count{flex-shrink:0;font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1;color:var(--portal-text-muted)}.clinical-slot-capacity__grid{display:grid;grid-template-columns:repeat(3,1.95rem);grid-template-rows:repeat(2,1.95rem);gap:.32rem;justify-content:center;align-content:center;flex:1;margin:0 auto}.clinical-slot-capacity__seat{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:1.95rem;height:1.95rem;padding:0;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .55);background:var(--amu-card, var(--portal-surface));color:var(--portal-text-faint);cursor:pointer;transition:color .12s ease,border-color .12s ease,background-color .12s ease}.clinical-slot-capacity__seat:hover:not(:disabled){border-color:var(--portal-border);color:var(--portal-text-muted)}.clinical-slot-capacity__seat:focus-visible{outline:2px solid var(--portal-accent, #8b1538);outline-offset:1px}.clinical-slot-capacity__seat--filled{border-color:color-mix(in srgb,var(--portal-accent, #8b1538) 40%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-accent, #8b1538) 10%,var(--amu-card, var(--portal-surface)));color:var(--portal-accent, #8b1538)}.clinical-slot-capacity__seat:disabled{opacity:.55;cursor:not-allowed}@media (max-width: 40rem){.admin-clinical-slot-form__capacity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 28rem){.admin-clinical-slot-form__grid{grid-template-columns:minmax(0,1fr)}.admin-clinical-slot-form__field--full,.admin-clinical-slot-form__field--half,.admin-clinical-slot-form__field--third{grid-column:1 / -1}.admin-clinical-slot-form__capacity-grid{grid-template-columns:minmax(0,1fr)}.admin-clinical-slot-form__section-head{flex-direction:column;align-items:flex-start;gap:.15rem}.admin-clinical-slot-form__section-note{white-space:normal}}.portal-main-body:has(.portal-clinical-exam-registration){display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.portal-clinical-module:has(.portal-clinical-exam-registration){display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.portal-clinical-module:has(.portal-clinical-exam-registration) .portal-clinical-outlet{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.portal-clinical-exam-registration{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.portal-clinical-exam-registration__shell{box-sizing:border-box;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * 1.05);background:var(--amu-card, #fff);overflow:hidden}.portal-clinical-exam-registration__layout{display:grid;grid-template-columns:minmax(0,22rem) minmax(0,1fr);flex:1 1 auto;min-height:min(calc(100dvh - var(--portal-header-height, 3.5rem) - 11rem),44rem);align-items:stretch}.portal-clinical-exam-registration__form-col,.portal-clinical-exam-registration__history-col{box-sizing:border-box;min-width:0;min-height:0;padding:1rem 1.05rem 1.1rem}.portal-clinical-exam-registration__form-col{display:flex;flex-direction:column;gap:.75rem;border-right:1px solid var(--portal-border-subtle);background:var(--amu-card, #fff)}.portal-clinical-exam-registration__history-col{display:flex;flex-direction:column;gap:.65rem;background:color-mix(in srgb,var(--portal-text) 1.5%,var(--portal-surface))}.portal-clinical-exam-registration__form-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.portal-clinical-exam-registration__panel-title{margin:0;font-size:.9375rem;font-weight:600;letter-spacing:-.01em;color:var(--portal-text)}.portal-clinical-exam-registration__note{margin:-.15rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.portal-clinical-exam-registration__submit-block{display:flex;flex-direction:column;gap:.45rem;margin-top:auto;padding-top:.15rem}.portal-clinical-exam-registration__fine-print{margin:0;font-size:.75rem;line-height:1.4;color:var(--portal-text-faint)}.portal-clinical-exam-registration__fee-chip{flex-shrink:0;display:inline-flex;align-items:center;min-height:1.625rem;padding:.15rem .55rem;font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--portal-text-muted);border:1px solid var(--portal-border-subtle);border-radius:999px;background:color-mix(in srgb,var(--portal-text) 3%,var(--portal-surface))}.portal-clinical-exam-registration__field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.portal-clinical-exam-registration__picker{margin:0;padding:0;border:0;min-width:0}.portal-clinical-exam-registration__options{display:flex;flex-direction:column;gap:.45rem;margin-top:.35rem}.portal-clinical-exam-registration__option{box-sizing:border-box;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;width:100%;min-height:2.5rem;padding:.5rem .65rem;font:inherit;text-align:left;color:var(--portal-text);background:var(--amu-card, #fff);border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .85);cursor:pointer;transition:border-color .14s ease,background-color .14s ease}.portal-clinical-exam-registration__option:hover{border-color:color-mix(in srgb,var(--portal-text) 12%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-text) 1.5%,var(--amu-card, #fff))}.portal-clinical-exam-registration__option:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--portal-accent),inset 0 0 0 4px var(--amu-red-ring, rgba(196, 30, 58, .18))}.portal-clinical-exam-registration__option--selected{border-color:color-mix(in srgb,var(--portal-text) 18%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-text) 2.5%,var(--amu-card, #fff));box-shadow:0 1px 3px #0f172a0f}.portal-clinical-exam-registration__option-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:1.35rem;padding:0 .35rem;font-size:.6875rem;font-weight:600;letter-spacing:.03em;font-variant-numeric:tabular-nums;color:var(--portal-text-muted);border:1px solid var(--portal-border-subtle);border-radius:.35rem;background:color-mix(in srgb,var(--portal-text) 3.5%,var(--portal-surface))}.portal-clinical-exam-registration__option--selected .portal-clinical-exam-registration__option-badge{color:var(--portal-text);border-color:color-mix(in srgb,var(--portal-text) 14%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-text) 5%,var(--portal-surface))}.portal-clinical-exam-registration__option-radio{box-sizing:border-box;flex-shrink:0;width:.9375rem;height:.9375rem;border:1.5px solid color-mix(in srgb,var(--portal-text) 18%,var(--portal-border-subtle));border-radius:50%;background:var(--amu-card, #fff);transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.portal-clinical-exam-registration__option--selected .portal-clinical-exam-registration__option-radio{border-color:var(--portal-accent, #8b1538);background:var(--portal-accent, #8b1538);box-shadow:inset 0 0 0 2px var(--amu-card, #fff)}.portal-clinical-exam-registration__option-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.08rem}.portal-clinical-exam-registration__option-title{font-size:.8125rem;line-height:1.35;color:var(--portal-text-muted)}.portal-clinical-exam-registration__option--selected .portal-clinical-exam-registration__option-title{color:var(--portal-text);font-weight:600}.portal-clinical-exam-registration__label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;color:var(--portal-text-faint)}.portal-clinical-exam-registration__select-wrap{position:relative;display:block}.portal-clinical-exam-registration__select-wrap:after{content:"";position:absolute;top:50%;right:.9rem;width:.42rem;height:.42rem;border-right:1.5px solid var(--portal-text-faint);border-bottom:1.5px solid var(--portal-text-faint);transform:translateY(-62%) rotate(45deg);pointer-events:none}.portal-clinical-exam-registration__select{box-sizing:border-box;width:100%;min-height:2.5rem;padding:.45rem 2.35rem .45rem .75rem;font:inherit;font-size:.875rem;line-height:1.3;color:var(--portal-text);background:var(--amu-card, #fff);border:1px solid color-mix(in srgb,var(--portal-border-subtle) 92%,var(--portal-text));border-radius:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease}.portal-clinical-exam-registration__select:hover:not(:disabled){border-color:var(--portal-border, #c5ced9)}.portal-clinical-exam-registration__select:focus-visible{outline:none;border-color:var(--portal-accent, #8b1538);box-shadow:0 0 0 3px color-mix(in srgb,var(--portal-accent, #8b1538) 14%,transparent)}.portal-clinical-exam-registration__select:disabled{opacity:.62;cursor:not-allowed}.portal-clinical-exam-registration__submit{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;width:100%;min-height:2.375rem;margin-top:0;padding:.45rem .95rem;font:inherit;font-size:.8125rem;font-weight:600;line-height:1;color:var(--portal-accent, #8b1538);background:var(--amu-card, #fff);border:1px solid color-mix(in srgb,var(--portal-accent, #8b1538) 28%,var(--portal-border-subtle));border-radius:999px;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.portal-clinical-exam-registration__submit:hover:not(:disabled){color:var(--portal-accent-hover, #6f102c);border-color:color-mix(in srgb,var(--portal-accent, #8b1538) 42%,var(--portal-border-subtle));background:color-mix(in srgb,var(--portal-accent, #8b1538) 5%,var(--amu-card, #fff))}.portal-clinical-exam-registration__submit:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--portal-accent, #8b1538) 16%,transparent)}.portal-clinical-exam-registration__submit:disabled{opacity:.5;cursor:not-allowed}.portal-clinical-exam-registration__error{margin:0;font-size:.8125rem;line-height:1.35;color:var(--portal-danger, #a4000f)}.portal-clinical-exam-registration__state{margin:0;flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;font-size:.875rem;line-height:1.45;text-align:center;color:var(--portal-text-muted)}.portal-clinical-exam-registration__state--empty{border:1px dashed color-mix(in srgb,var(--portal-border-subtle) 88%,transparent);border-radius:calc(var(--portal-radius) * .85);background:var(--amu-card, #fff)}.portal-clinical-exam-registration__table-shell{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--portal-border-subtle);border-radius:calc(var(--portal-radius) * .85);background:var(--amu-card, #fff)}.portal-clinical-exam-registration__table{width:100%;border-collapse:collapse;font-size:.8125rem;line-height:1.4}.portal-clinical-exam-registration__table thead th{padding:.55rem .75rem;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-align:left;color:var(--portal-text-faint);background:color-mix(in srgb,var(--portal-text) 3.5%,var(--portal-surface));border-bottom:1px solid var(--portal-border-subtle)}.portal-clinical-exam-registration__table tbody td{padding:.7rem .75rem;vertical-align:top;color:var(--portal-text);border-bottom:1px solid color-mix(in srgb,var(--portal-border-subtle) 70%,transparent)}.portal-clinical-exam-registration__table tbody tr:last-child td{border-bottom:none}.portal-clinical-exam-registration__table tbody tr:hover td{background:color-mix(in srgb,var(--portal-accent, #8b1538) 2.5%,var(--amu-card, #fff))}.portal-clinical-exam-registration__exam-code{display:block;font-size:.8125rem;font-weight:600;color:var(--portal-text)}.portal-clinical-exam-registration__exam-name{display:block;margin-top:.12rem;font-size:.75rem;color:var(--portal-text-muted)}.portal-clinical-exam-registration__date,.portal-clinical-exam-registration__fee{font-variant-numeric:tabular-nums;color:var(--portal-text-muted);white-space:nowrap}.portal-clinical-exam-registration__fee{font-weight:600;color:var(--portal-text)}.portal-clinical-exam-registration__status{display:inline-flex;align-items:center;min-height:1.4rem;padding:.1rem .5rem;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;border:1px solid var(--portal-border-subtle);color:var(--portal-text-muted);background:var(--amu-card, #fff)}.portal-clinical-exam-registration__status--requested{color:var(--portal-text);border-color:color-mix(in srgb,var(--portal-accent, #8b1538) 20%,var(--portal-border-subtle))}.portal-clinical-exam-registration__status--scheduled,.portal-clinical-exam-registration__status--completed{color:#176944;border-color:color-mix(in srgb,#176944 28%,var(--portal-border-subtle));background:color-mix(in srgb,#176944 8%,var(--amu-card, #fff))}.portal-clinical-exam-registration__status--cancelled{color:var(--portal-text-faint)}@media (max-width: 52rem){.portal-clinical-exam-registration__layout{grid-template-columns:minmax(0,1fr);min-height:calc(100dvh - var(--portal-header-height, 3.5rem) - 10rem)}.portal-clinical-exam-registration__form-col{border-right:none;border-bottom:1px solid var(--portal-border-subtle)}.portal-clinical-exam-registration__submit-block{margin-top:.35rem}}.admin-section-detail-modal--clinical-exam-assign{max-width:min(28rem,calc(100vw - 2rem));max-height:min(92vh,42rem);padding:.95rem 1.05rem .9rem;box-shadow:none}.admin-section-detail-modal--clinical-exam-assign .admin-section-detail-modal__title{margin:0 0 .55rem;font-size:1rem;line-height:1.25}.admin-clinical-exam-assign-form{display:flex;flex-direction:column;gap:.65rem}.admin-clinical-exam-assign-form__meta{display:flex;flex-wrap:wrap;gap:.35rem .45rem;margin:0 0 .65rem;font-size:.75rem;line-height:1.35;color:var(--portal-text-muted)}.admin-clinical-exam-assign-form__meta>span{display:inline-flex;align-items:center;min-height:1.375rem;padding:.1rem .45rem;border:1px solid var(--portal-border-subtle);border-radius:999px;background:color-mix(in srgb,var(--portal-text) 2.5%,var(--portal-surface))}.admin-clinical-exam-assign-form__section{display:flex;flex-direction:column;gap:.45rem}.admin-clinical-exam-assign-form__section+.admin-clinical-exam-assign-form__section{padding-top:.65rem;border-top:1px solid var(--portal-border-subtle)}.admin-clinical-exam-assign-form__section-title{margin:0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint)}.admin-clinical-exam-assign-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .55rem}.admin-clinical-exam-assign-form__field{min-width:0;display:flex;flex-direction:column}.admin-clinical-exam-assign-form__field--full{width:100%}.admin-clinical-exam-assign-form__field>label{display:block;margin-bottom:.25rem;min-height:1.125rem;font-size:.75rem;font-weight:600;line-height:1.125rem;color:var(--portal-text)}.admin-section-detail-modal--clinical-exam-assign .admin-clinical-exam-assign-form__input{box-sizing:border-box;width:100%;height:2.125rem;min-height:2.125rem;padding-top:0;padding-bottom:0;line-height:1.2}.admin-clinical-exam-assign-form__textarea{height:auto;min-height:4.75rem;padding:.5rem .75rem;line-height:1.4;resize:vertical}.admin-clinical-exam-assign-form__error{margin:.15rem 0 0;font-size:.8125rem;line-height:1.35;color:var(--portal-danger, #b42318)}.admin-clinical-exam-assign-form__actions{display:flex;justify-content:flex-end;align-items:center;gap:.45rem;margin-top:.35rem;padding-top:.7rem;border-top:1px solid var(--portal-border-subtle)}.admin-clinical-exam-assign-form__actions .portal-btn{box-sizing:border-box;min-width:5.25rem;height:2.125rem;min-height:2.125rem;padding:0 .75rem;font-size:.8125rem;line-height:1}@media (max-width: 32rem){.admin-clinical-exam-assign-form__grid{grid-template-columns:1fr}}.admin-clinical-exam-table{min-width:46rem}.admin-clinical-slot-roster-table-wrap{margin-top:.75rem;max-height:50vh;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.portal-offline-ribbon{margin:0 0 .75rem;padding:.5rem .75rem;border-radius:var(--portal-radius);border:1px solid #d6b88a;background:#fff8e6;color:#5c4518;font-size:.8125rem;line-height:1.45;text-align:center}.portal-pwa-install{box-sizing:border-box;width:100%;max-width:36rem;margin-top:.75rem;padding:.65rem .85rem;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:linear-gradient(180deg,#fffdfb,#faf7f2)}.portal-pwa-install--android{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.portal-pwa-install__lede{margin:0;font-size:.8125rem;line-height:1.45;color:var(--portal-text-muted)}.portal-pwa-install__btn{min-height:2.5rem;width:100%;max-width:16rem}.portal-pwa-install--ios{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:.5rem .75rem}.portal-pwa-install__text{margin:0;flex:1 1 auto;min-width:0;font-size:.8125rem;line-height:1.45;color:var(--portal-text)}.portal-pwa-install__dismiss{flex-shrink:0;margin:0;padding:.35rem .55rem;font:inherit;font-size:.75rem;font-weight:600;line-height:1.2;color:var(--portal-accent-hover);background:transparent;border:1px solid rgba(140,29,44,.35);border-radius:var(--portal-radius-sm, 6px);cursor:pointer}.portal-pwa-install__dismiss:hover{background:var(--portal-accent-soft)}.portal-pwa-install__dismiss:focus-visible{outline:2px solid var(--portal-accent);outline-offset:2px}.portal-account-ledger-cards{margin-bottom:var(--portal-space-section)}.portal-account-ledger-cards__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}.portal-account-ledger-card{border:1px solid var(--portal-border-subtle);border-radius:var(--portal-radius);background:var(--portal-surface);box-shadow:var(--portal-shadow);padding:.75rem .875rem}.portal-account-ledger-card__dl{margin:0;display:flex;flex-direction:column;gap:.35rem}.portal-account-ledger-card__row{display:grid;grid-template-columns:minmax(5rem,7.5rem) minmax(0,1fr);gap:.25rem .65rem;align-items:baseline;font-size:.8125rem;line-height:1.4}.portal-account-ledger-card__row--block{align-items:start}.portal-account-ledger-card__row--money dd{font-variant-numeric:tabular-nums;font-weight:600;text-align:right}.portal-account-ledger-card__row dt{margin:0;font-weight:600;color:var(--portal-text-muted);font-size:.6875rem;letter-spacing:.04em;text-transform:uppercase}.portal-account-ledger-card__row dd{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;color:var(--portal-text)}.portal-account-ledger-cards__footer{margin-top:.75rem;padding:.75rem .875rem;border-radius:var(--portal-radius);border:1px solid var(--portal-border-subtle);background:#f8f9fb;display:flex;flex-direction:column;gap:.35rem}.portal-account-ledger-cards__footer-row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.8125rem;color:var(--portal-text)}.portal-account-ledger-cards__footer-row--strong{font-weight:700;padding-top:.35rem;margin-top:.15rem;border-top:1px solid var(--portal-border-subtle);font-variant-numeric:tabular-nums}@media (max-width: 768px){.portal-account-ledger__control-bar{flex-wrap:wrap}.portal-account-ledger__term-control--inline{margin-left:0;width:100%}.portal-account-ledger__term-control--inline .portal-account-ledger__term-select{width:100%;height:2.5rem}.portal-account-ledger__term-control,.portal-account-ledger__term-select{width:100%;max-width:none}.portal-account-ledger__control-bar{flex-direction:column;align-items:stretch}.portal-account-ledger__current-term{margin-left:0;justify-content:flex-start;text-align:left}.portal-account-ledger__pay-segment{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.portal-account-ledger__pay-segment-btn{font-size:.8125rem;padding:.4375rem .625rem;white-space:normal;text-align:center}.portal-account-ledger__summary-bar{flex-direction:column;align-items:stretch}.portal-account-ledger__checkout-btn{align-self:flex-end;width:auto;min-width:7rem}.portal-account-ledger__toolbar{flex-direction:column;align-items:stretch}.portal-account-ledger__toolbar-actions{flex-direction:column;align-items:stretch;justify-content:flex-start}.portal-account-ledger__pay-btn{width:100%;min-height:2.5rem;white-space:normal;text-align:center}.portal-account-ledger__quarter-label,.portal-account-ledger__select{width:100%;max-width:none}.portal-account-ledger__select{min-height:2.5rem;padding:.45rem 2rem .45rem .65rem;font-size:1rem;line-height:1.25}.portal-registration-nav .portal-tab-group--registration-sub{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;gap:.5rem;padding-bottom:.15rem;margin-right:-.25rem;scrollbar-width:thin}.portal-registration-nav .portal-tab-group--registration-sub>li{flex:0 0 auto}.portal-registration-nav .portal-tab-group--registration-sub .portal-tab{min-height:2.5rem;white-space:nowrap}.portal-registration-nav-bin-count{display:inline-flex;align-items:center;justify-content:center;min-inline-size:1.25rem;margin-inline-start:.35rem;padding:0 .35rem;border-radius:999px;background:var(--portal-brand-red, #7a1f2b);color:#fff;font-size:.75rem;font-weight:700;line-height:1.4}.portal-registration-section-nav .portal-section-tab-group{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.portal-registration-section-nav .portal-section-tab{width:100%;min-height:2.75rem}.portal-registration-layout-term__row,.portal-module-header--registration .portal-module-header__title-row{flex-direction:column;align-items:stretch}.portal-registration-layout-term--inline{justify-content:flex-start;text-align:left}.portal-registration-layout-term__select{width:100%;max-width:none;min-height:2.5rem;font-size:1rem}.portal-registration-search{flex-direction:column;align-items:stretch}.portal-registration-search-input{width:100%;min-height:2.5rem;font-size:1rem}.portal-registration-search .portal-btn{width:100%;min-height:2.5rem}.portal-course-catalog-group-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem .65rem}.portal-course-catalog-group-titles{flex-direction:column;align-items:flex-start;gap:.15rem}.portal-course-catalog-group-count{justify-self:end;text-align:right;max-width:44%;line-height:1.25}.portal-dashboard-card-panel-head{height:auto;min-height:3.25rem;padding-top:.65rem;padding-bottom:.65rem;flex-wrap:wrap;align-items:flex-start;row-gap:.5rem}.portal-dashboard-courses-head{flex-direction:column;align-items:stretch;gap:.5rem}.portal-dashboard-courses-head-actions{width:auto;height:auto;flex-wrap:wrap;justify-content:flex-start;row-gap:.5rem}.portal-dashboard-courses-head-term,.portal-dashboard-courses-head-term-select{width:100%;max-width:none}.portal-dashboard-courses-head-term-select{min-height:2.5rem;font-size:1rem}.portal-dashboard-courses-head-action{min-height:2rem}.portal-dashboard-courses-timetable-wrap{overflow-x:visible;-webkit-overflow-scrolling:auto;overscroll-behavior-x:auto;padding:.875rem 1rem 1rem}.portal-dashboard-courses-timetable--grid{min-width:34rem}.portal-dashboard-hero{margin-bottom:1rem;padding-bottom:.65rem}.portal-dashboard-hero-title{font-size:clamp(1.2rem,5vw,1.5rem)}.portal-dashboard-current-term-card{max-width:none;padding:.85rem 1rem}.portal-dashboard-sidebar-card{padding:.85rem 1rem}.portal-dashboard-service-tile{min-height:3.25rem;align-items:center}.portal-main-content,.portal-shell--internal-module .portal-main-content{padding-left:max(.875rem,env(safe-area-inset-left,0px));padding-right:max(.875rem,env(safe-area-inset-right,0px))}.portal-main-body{padding-bottom:max(var(--portal-space-main-bottom),calc(env(safe-area-inset-bottom,0px) + 4.5rem))}.portal-shell--dashboard-home .portal-main-body{padding-bottom:max(.5rem,calc(env(safe-area-inset-bottom,0px) + .25rem))}.portal-branding-bar-inner{padding-left:max(1rem,env(safe-area-inset-left,0px));padding-right:max(1rem,env(safe-area-inset-right,0px))}.portal-actions{flex-direction:column;align-items:stretch}.portal-actions .portal-btn{width:100%;min-height:2.5rem;white-space:normal}}.admin-course-sections-page .portal-table-wrap{overflow-x:auto;max-width:100%;min-width:0}.admin-course-sections-page .admin-course-sections-list .portal-table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.admin-course-sections-page .admin-course-sections-table{table-layout:fixed;width:100%;min-width:900px}.admin-course-sections-page .admin-course-sections-table th,.admin-course-sections-page .admin-course-sections-table td{text-align:center;vertical-align:middle;white-space:nowrap;line-height:1.25;padding:10px 12px;overflow:hidden;text-overflow:ellipsis}@media (max-width: 900px){.admin-course-sections-page .admin-course-sections-table th{letter-spacing:.05em}.admin-course-sections-page .admin-course-sections-table .admin-course-sections-table__header-label--desktop{display:none}.admin-course-sections-page .admin-course-sections-table .admin-course-sections-table__header-label--mobile{display:block}}.portal-store-page__header{margin-bottom:1.5rem}.portal-store-page__error{margin:0 0 1rem;color:var(--portal-accent-hover, #a01830)}.portal-store-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,272px);gap:1.5rem;align-items:start}.portal-store-catalog{display:flex;flex-direction:column;gap:1rem;min-width:0}.portal-store-pagination{display:flex;justify-content:flex-end;margin-top:.25rem}.portal-store-pagination__pages{display:inline-flex;align-items:center;gap:.375rem}.portal-store-pagination__page{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;margin:0;padding:0 .5rem;border:1px solid var(--portal-border-subtle, #e8eaef);border-radius:8px;background:#fff;color:var(--portal-text, #1c2333);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.portal-store-pagination__page:hover:not(.portal-store-pagination__page--active){border-color:#d8dce4;background:#fafbfc}.portal-store-pagination__page--active{border-color:#8c1d2c59;background:var(--portal-accent-soft, #f2e8ea);color:var(--portal-accent, #c41e3a)}.portal-store-pagination__page:focus-visible{outline:2px solid var(--portal-accent, #c41e3a);outline-offset:2px}.portal-store-catalog__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.875rem}.portal-store-product{position:relative;display:flex;flex-direction:column;gap:.5rem;min-height:100%;padding:1rem;border:1px solid var(--portal-border-subtle, #e8eaef);border-radius:12px;background:#fff;box-shadow:0 1px 2px #14182808;transition:border-color .16s ease,box-shadow .16s ease}.portal-store-product:hover{border-color:#d8dce4;box-shadow:0 6px 18px #1418280f}.portal-store-product--in-cart{border-color:#8c1d2c38;background:linear-gradient(180deg,#fff,#fdfafb)}.portal-store-product__top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.portal-store-product__icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:10px;background:#f4f5f7;color:var(--portal-text-muted, #5c6478)}.portal-store-product__icon-wrap .portal-store-product__icon{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;padding:0;border:none;border-radius:0;background:transparent;color:inherit;box-shadow:none}.portal-store-product--in-cart .portal-store-product__icon-wrap{background:var(--portal-accent-soft, #f2e8ea);color:var(--portal-accent, #c41e3a)}.portal-store-product__added-badge{display:inline-flex;align-items:center;justify-content:center;width:1.375rem;height:1.375rem;border-radius:999px;background:var(--portal-accent-soft, #f2e8ea);color:var(--portal-accent, #c41e3a);font-size:.6875rem;font-weight:700;line-height:1}.portal-store-product__title{margin:0;font-size:.875rem;font-weight:650;line-height:1.35;color:var(--portal-text, #1c2333)}.portal-store-product__desc{margin:0;flex:1;font-size:.75rem;line-height:1.45;color:var(--portal-text-muted, #5c6478);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.portal-store-product__footer{display:flex;align-items:center;justify-content:space-between;gap:.625rem;margin-top:.25rem;padding-top:.625rem;border-top:1px solid var(--portal-border-subtle, #eef0f4)}.portal-store-product__price{margin:0;font-size:.9375rem;font-weight:700;letter-spacing:-.01em;color:var(--portal-text, #1c2333);white-space:nowrap}.portal-store-product__add{display:inline-flex;align-items:center;justify-content:center;min-width:5.5rem;min-height:2rem;margin:0;padding:.375rem .75rem;border:1px solid var(--portal-border-subtle, #d8dce4);border-radius:999px;background:#fff;color:var(--portal-text, #1c2333);font-family:inherit;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.portal-store-product__add:hover:not(:disabled):not(.portal-store-product__add--in-cart){border-color:#8c1d2c59;background:var(--portal-accent-soft, #f2e8ea);color:var(--portal-accent, #c41e3a)}.portal-store-product__add:focus-visible{outline:2px solid var(--portal-accent, #c41e3a);outline-offset:2px}.portal-store-product__add--in-cart,.portal-store-product__add:disabled.portal-store-product__add--in-cart{border-color:transparent;background:transparent;color:var(--portal-text-muted, #5c6478);cursor:default}.portal-store-product__qty-controls{display:inline-flex;align-items:center;gap:0;border:1px solid var(--portal-border-subtle, #e2e6ee);border-radius:999px;overflow:hidden;background:#fff}.portal-store-product__qty-btn{display:inline-flex;align-items:center;justify-content:center;width:1.625rem;height:1.625rem;padding:0;border:none;background:transparent;color:var(--portal-text, #1c2333);font-size:.9375rem;line-height:1;cursor:pointer}.portal-store-product__qty-btn:hover:not(:disabled){background:#f4f5f7}.portal-store-product__qty-btn:disabled{opacity:.4;cursor:not-allowed}.portal-store-product__qty-value{display:inline-flex;align-items:center;justify-content:center;min-width:1.375rem;height:1.625rem;padding:0 .2rem;font-size:.75rem;font-weight:600;border-left:1px solid var(--portal-border-subtle, #e2e6ee);border-right:1px solid var(--portal-border-subtle, #e2e6ee)}.portal-store-cart{position:sticky;top:.75rem;display:flex;flex-direction:column;max-height:calc(100vh - 6rem);border:1px solid var(--portal-border-subtle, #e8eaef);border-radius:12px;background:#fff;box-shadow:0 4px 20px #1418280f;overflow:hidden}.portal-store-cart__header{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;border-bottom:1px solid var(--portal-border-subtle, #eef0f4)}.portal-store-cart__title{margin:0;flex:1;min-width:0;font-size:.875rem;font-weight:700;color:var(--portal-text, #1c2333)}.portal-store-cart__header-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;background:var(--portal-accent, #c41e3a);color:#fff;font-size:.6875rem;font-weight:700}.portal-store-cart__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center}.portal-store-cart__empty p{margin:0;font-size:.8125rem;line-height:1.5;color:var(--portal-text-muted, #5c6478)}.portal-store-cart__body{display:flex;flex:1;flex-direction:column;min-height:0}.portal-store-cart__list{list-style:none;margin:0;padding:.375rem 0;overflow-y:auto}.portal-store-cart__item{padding:.625rem 1rem;border-bottom:1px solid var(--portal-border-subtle, #eef0f4)}.portal-store-cart__item:last-child{border-bottom:none}.portal-store-cart__item-main{display:flex;flex-direction:column;gap:.5rem}.portal-store-cart__item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.portal-store-cart__item-name{font-size:.8125rem;font-weight:600;line-height:1.35;color:var(--portal-text, #1c2333)}.portal-store-cart__item-price{font-size:.8125rem;font-weight:700;color:var(--portal-text, #1c2333);white-space:nowrap}.portal-store-cart__item-bottom{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.portal-store-cart__qty{display:inline-flex;align-items:center;gap:.5rem}.portal-store-cart__qty-label{font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--portal-text-muted, #5c6478)}.portal-store-cart__qty-fixed{font-size:.75rem;color:var(--portal-text-muted, #5c6478)}.portal-store-cart__remove{margin:0;padding:0;border:none;background:transparent;color:var(--portal-text-muted, #5c6478);font-family:inherit;font-size:.75rem;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.portal-store-cart__remove:hover{color:var(--portal-accent, #c41e3a)}.portal-store-cart__remove:focus-visible{outline:2px solid var(--portal-accent, #c41e3a);outline-offset:2px;border-radius:2px}.portal-store-cart__footer{margin-top:auto;padding:.875rem 1rem 1rem;border-top:1px solid var(--portal-border-subtle, #eef0f4);background:#fafbfc}.portal-store-cart__subtotal{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;font-size:.8125rem;color:var(--portal-text-muted, #5c6478)}.portal-store-cart__subtotal strong{font-size:1rem;font-weight:700;color:var(--portal-text, #1c2333)}.portal-store-cart__checkout{display:flex;align-items:center;justify-content:center;width:100%;min-height:2.5rem;margin:0;padding:.5rem 1rem;border:none;border-radius:999px;background:var(--portal-accent, #c41e3a);color:#fff;font-family:inherit;font-size:.8125rem;font-weight:700;cursor:pointer;transition:background .15s ease}.portal-store-cart__checkout:disabled{opacity:.55;cursor:not-allowed}.portal-store-cart__checkout:hover:not(:disabled){background:var(--portal-accent-hover, #a01830)}.portal-store-cart__checkout:focus-visible{outline:2px solid var(--portal-accent, #c41e3a);outline-offset:2px}@media (max-width: 1100px){.portal-store-catalog__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.portal-store-layout{grid-template-columns:1fr}.portal-store-cart{position:static;max-height:none}}@media (max-width: 520px){.portal-store-catalog__grid{grid-template-columns:1fr}.portal-store-product__footer{flex-direction:column;align-items:stretch}.portal-store-product__add{width:100%}}.admin-feedback-page__header{margin-bottom:1rem}.admin-feedback-page__toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:1rem}.admin-feedback-page__term{flex:0 0 auto;min-width:11rem}.admin-feedback-page__term .admin-input{width:100%}.admin-feedback-page__search{flex:1 1 16rem;min-width:12rem}.admin-feedback-page__search .admin-input--search{width:100%;max-width:28rem}.admin-feedback-page__placeholder{margin:2rem 0}.admin-feedback-page__panel{background:#fff;border:1px solid rgba(140,29,44,.12);border-radius:.5rem;padding:0;overflow:hidden}.admin-feedback-page__panel .portal-table-wrap{border:0;border-radius:0}.admin-feedback-page__panel .admin-feedback-page__placeholder{padding:2rem 1.25rem;margin:0}.admin-feedback-page__table th,.admin-feedback-page__table td{vertical-align:middle}.admin-feedback-page__course-code{display:block;font-weight:700;color:var(--portal-accent, #8c1d2c)}.admin-feedback-page__course-title{display:block;margin-top:.125rem;font-size:.8125rem;color:var(--text-muted, #6b7280);max-width:18rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-feedback-page__actions-col{width:1%;white-space:nowrap;text-align:right}.admin-feedback-page__detail-bar{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:flex-start;padding:1rem 1.125rem;border-bottom:1px solid rgba(140,29,44,.1);background:#8c1d2c08}.admin-feedback-page__text-btn{border:0;background:transparent;padding:0;font:inherit;font-size:.875rem;font-weight:600;color:var(--portal-accent, #8c1d2c);cursor:pointer}.admin-feedback-page__text-btn:hover,.admin-feedback-page__text-btn:focus-visible{text-decoration:underline}.admin-feedback-page__detail-main{flex:1 1 12rem;min-width:0}.admin-feedback-page__detail-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-dark, #1f2937)}.admin-feedback-page__detail-sub{margin:.25rem 0 0;font-size:.875rem;color:var(--text-muted, #6b7280)}.admin-feedback-page__detail-side{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.75rem}.admin-feedback-page__detail-stats{margin:0;font-size:.875rem;color:var(--text-muted, #6b7280);white-space:nowrap}.admin-feedback-page__student-name{display:block;font-weight:600}.admin-feedback-page__student-id{display:block;margin-top:.125rem;font-size:.8125rem;color:var(--text-muted, #6b7280)}.admin-feedback-page__badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600}.admin-feedback-page__badge--submitted{background:#1665341f;color:#166534}.admin-feedback-page__badge--pending{background:#b453091f;color:#b45309}.admin-feedback-page__badge--na{background:#6b72801f;color:#6b7280}@media (max-width: 720px){.admin-feedback-page__detail-side{width:100%;margin-left:0;justify-content:space-between}.admin-feedback-page__search .admin-input--search{max-width:none}}.admin-graduation-progress__hero-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.admin-graduation-progress__badge{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;font-size:.8125rem;font-weight:600;white-space:nowrap}.admin-graduation-progress__badge--met{background:#1665341f;color:#166534}.admin-graduation-progress__badge--pending{background:#b453091f;color:#b45309}.admin-graduation-progress__badge--legacy{background:#2563eb1f;color:#1d4ed8}.admin-graduation-progress__legacy-note{padding:.75rem 1rem;border-radius:.5rem;background:#2563eb14;border:1px solid rgba(37,99,235,.2);font-size:.875rem;line-height:1.45}.admin-graduation-progress__summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.admin-graduation-progress__metric{display:flex;flex-direction:column;gap:.35rem}.admin-graduation-progress__metric-label{font-size:.8125rem;color:var(--portal-muted, #6b7280)}.admin-graduation-progress__bar{display:flex;width:100%;height:.5rem;border-radius:999px;overflow:hidden;background:#6b728026}.admin-graduation-progress__bar-earned{display:block;height:100%;background:#166534}.admin-graduation-progress__bar-inprogress{display:block;height:100%;background:#2563eb}.admin-graduation-progress__progress-cell{min-width:10rem}.admin-graduation-progress__blockers{padding:.75rem 1rem;border-radius:.5rem;background:#b4530914;border:1px solid rgba(180,83,9,.2)}.admin-graduation-progress__blockers-title{margin:0 0 .35rem;font-weight:600}.admin-graduation-progress__blockers ul{margin:0;padding-left:1.25rem}.admin-graduation-progress__warn{color:#b45309}.admin-scheduling-hub__header{margin-bottom:1rem}.admin-scheduling-hub__title-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem}.admin-scheduling-hub__title-row .admin-page__title--inline{margin:0}.admin-scheduling-term-select{display:inline-flex;align-items:center;gap:.5rem}.admin-scheduling-term-select__label{font-size:.875rem;font-weight:600;color:var(--portal-text-muted, #64748b);white-space:nowrap}.admin-scheduling-term-select__input{min-width:11rem}.admin-scheduling-hub__lede{margin:.5rem 0 0;max-width:42rem;color:var(--portal-text-muted, #64748b);line-height:1.5}.admin-scheduling-hub-tablist{margin-bottom:1.25rem}.admin-scheduling-hub-tab{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-height:3rem}.admin-scheduling-hub-tab__label{font-size:.9375rem;font-weight:600}.admin-scheduling-hub-tab__hint{font-size:.75rem;font-weight:400;opacity:.75}.admin-scheduling-hub__editor{margin-bottom:1.5rem}.admin-scheduling-hub__editor-lede{margin:0 0 .75rem;font-weight:600}.admin-scheduling-offerings__bar{margin-bottom:1rem}.admin-scheduling-offerings__filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end}.admin-scheduling-offerings__filter{display:flex;flex-direction:column;gap:.35rem}.admin-scheduling-offerings__filter--grow{flex:1 1 12rem}.admin-scheduling-offerings__filter-label{font-size:.8125rem;font-weight:600}.admin-scheduling-offerings__scope{margin:.75rem 0 0;font-size:.875rem}.admin-scheduling-offerings__message{padding:1rem 0;color:var(--portal-text-muted, #64748b)}.admin-scheduling-offerings__message--error{color:#b91c1c}.admin-scheduling-offerings__empty{padding:1rem .75rem;color:var(--portal-text-muted, #64748b)}.admin-scheduling-offerings__table{width:100%;border-collapse:collapse;table-layout:fixed}.admin-scheduling-offerings__col-num{width:5rem}.admin-scheduling-offerings__col-action{width:9.75rem}.admin-scheduling-offerings__table th,.admin-scheduling-offerings__table td{padding:.65rem .75rem;border-bottom:1px solid var(--portal-border, #e2e8f0);text-align:left;vertical-align:middle}.admin-scheduling-offerings__add-row td{padding-top:0;padding-bottom:.65rem;border-bottom:none}.admin-scheduling-offerings__add-row+tr td{border-top:1px solid var(--portal-border, #e2e8f0)}.admin-scheduling-offerings__code{display:block;font-weight:700}.admin-scheduling-offerings__title{display:block;font-size:.875rem;color:var(--portal-text-muted, #64748b)}.admin-scheduling-offerings__track{font-size:.8125rem;color:var(--portal-text-muted, #64748b)}.admin-scheduling-offerings__num{text-align:center;white-space:nowrap}.admin-scheduling-offerings__action{padding:.65rem 0;text-align:right;white-space:nowrap;vertical-align:middle}.admin-scheduling-offerings__table th.admin-scheduling-offerings__action{font-weight:600}.admin-scheduling-offerings__action-slot{display:flex;justify-content:flex-end;width:100%}.admin-scheduling-offerings__section-btn{display:inline-flex;justify-content:center;width:9.75rem;max-width:100%;box-sizing:border-box}.admin-scheduling-catalog__lede,.admin-scheduling-timetable-panel__lede{margin:0 0 1rem;color:var(--portal-text-muted, #64748b)}.admin-section-workspace__header{margin-bottom:1rem}.admin-section-workspace__breadcrumb{margin:0 0 .35rem;font-size:.8125rem;color:var(--portal-text-muted, #64748b)}.admin-section-workspace__subtitle{margin:.35rem 0 0;color:var(--portal-text-muted, #64748b)}.admin-section-workspace__error{color:#b91c1c}.admin-section-workspace-tablist{margin-bottom:1rem}.admin-section-workspace-info{padding:1.25rem}.admin-section-workspace-info__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.admin-section-workspace-info__title{margin:0;font-size:1.125rem}.admin-section-workspace-info__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.85rem 1.25rem;margin:0}.admin-section-workspace-info__grid dt{font-size:.75rem;font-weight:600;color:var(--portal-text-muted, #64748b)}.admin-section-workspace-info__grid dd{margin:.15rem 0 0;font-size:.9375rem}.admin-section-workspace-info__wide{grid-column:1 / -1}.admin-section-workspace-info__hint{margin:1rem 0 0;font-size:.875rem}.admin-section-workspace-panel__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.admin-section-workspace-panel__stats{margin:0;font-size:.9375rem}.admin-section-workspace-panel__actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-section-workspace-panel__table{width:100%;border-collapse:collapse}.admin-section-workspace-panel__table th,.admin-section-workspace-panel__table td{padding:.55rem .65rem;border-bottom:1px solid var(--portal-border, #e2e8f0);text-align:left;vertical-align:top}.admin-section-workspace-panel__student-name{display:block;font-weight:600}.admin-section-workspace-panel__student-id{display:block;font-size:.8125rem;color:var(--portal-text-muted, #64748b)}.admin-section-workspace-panel__error{color:#b91c1c;margin:0 0 .75rem}.admin-section-workspace-panel__message,.admin-section-workspace-panel__hint{margin:.75rem 0 0}.portal-nav-link-sublabel{display:block;font-size:.6875rem;font-weight:400;opacity:.72;margin-top:.1rem}.admin-sidebar .portal-nav-link-label{white-space:nowrap}.admin-course-sections-page--embedded,.admin-course-sections-page--embedded .admin-course-sections-explorer{margin-top:0}.admin-course-sections-page--workspace-edit .admin-course-section-form-panel{border-top:none;box-shadow:none}.admin-course-sections-page--workspace-edit .admin-course-section-form__header{background:var(--portal-surface)}.admin-course-sections-page--workspace-edit .admin-course-section-form__panel-title:before{display:none}.portal-requests-section__summary,.portal-requests-section__notice{margin-top:.75rem}.portal-requests-section__form{margin-top:1rem}.portal-requests-section__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem}.portal-requests-section__field{display:flex;flex-direction:column;gap:.35rem}.portal-requests-section__field--full{grid-column:1 / -1}.portal-requests-section__label{font-size:.875rem;font-weight:600;color:var(--portal-text-muted, #5c6578)}.portal-requests-section__field .portal-account-ledger__select{width:100%}.portal-requests-section__textarea{width:100%;min-height:5.5rem;padding:.65rem .75rem;border:1px solid var(--portal-border, #d8dee8);border-radius:var(--portal-radius-sm, 6px);font:inherit;resize:vertical}.portal-requests-section__active-loa{margin-top:.75rem;padding:1rem;background:#fff8eb;border:1px solid #f0d7a4}.portal-requests-section__active-loa-title{margin:0 0 .35rem;font-weight:700;color:#9a6700}.portal-requests-section__submitted{margin-top:.75rem;gap:.75rem}.portal-requests-section__form-heading{margin:0;font-size:1rem;font-weight:700;color:var(--portal-text, #1a2233)}.portal-requests-section__error{margin:0;color:#a4000f}@media (max-width: 640px){.portal-requests-section__grid{grid-template-columns:1fr}}.portal-requests-section__history{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.portal-requests-section__history-item{padding:.85rem 1rem;border:1px solid var(--portal-border, #d8dee8);border-radius:var(--portal-radius-md, 10px);background:var(--portal-surface, #fff)}.portal-requests-section__history-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.portal-requests-section__status{font-size:.8125rem;font-weight:600}.portal-requests-section__status--pending{color:#9a6700}.portal-requests-section__status--approved{color:#067647}.portal-requests-section__status--rejected{color:#b42318}.admin-loa-requests{margin-top:1rem}.admin-loa-requests__heading{margin:0;font-size:1rem}.admin-loa-requests__item{padding:1rem}.admin-loa-panel{gap:1rem}.admin-loa-panel__section{display:flex;flex-direction:column;gap:.75rem}.admin-loa-panel__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem}.admin-loa-panel__title{margin:0;color:var(--portal-accent, #8c1d2c)}.admin-loa-panel__lede,.admin-loa-panel__empty{margin:0}.admin-loa-panel__status{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.02em;white-space:nowrap}.admin-loa-panel__status--none{color:#5c6578;background:#f3f5f8;border:1px solid #d8dee8}.admin-loa-panel__status--active,.admin-loa-panel__status--pending{color:#9a6700;background:#fff8eb;border:1px solid #f0d7a4}.admin-loa-panel__facts{margin:0}.admin-loa-panel__toolbar{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.15rem}.admin-loa-panel__request-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.admin-loa-panel__request{display:flex;flex-direction:column;gap:.75rem;width:100%;padding:.85rem 0;border-top:1px solid var(--portal-border-subtle, #e8ecf1)}.admin-loa-panel__request:first-child{border-top:none;padding-top:0}.admin-loa-panel__request-heading{margin:0;font-size:var(--portal-body-font-size, .875rem);font-weight:600;color:var(--portal-text, #1a2233)}.admin-loa-panel__form-actions{margin-top:.25rem}.admin-faculty-page .admin-page__title{margin-bottom:1.25rem}.admin-faculty-panel{display:flex;flex-direction:column;gap:.75rem}.admin-faculty-banner{margin:0;padding:.65rem .9rem;border-radius:var(--portal-radius-sm, 6px);font-size:.8125rem;font-weight:500}.admin-faculty-banner--error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.admin-faculty-banner--success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.admin-faculty-card{--admin-faculty-gutter: 1.25rem;padding:0;overflow:visible}.admin-faculty-card__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.95rem var(--admin-faculty-gutter);border-bottom:1px solid var(--portal-border-subtle, #e8ecf1);background:linear-gradient(180deg,#fcfcfd,#f8f9fb)}.admin-faculty-add-btn{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0}.admin-add-faculty-form{display:flex;flex-direction:column;gap:.9rem}.admin-add-faculty-modal{width:min(100%,34rem)}.admin-add-faculty-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem .9rem}.admin-add-faculty-form__grid .admin-field{min-width:0}.admin-add-faculty-form__grid .admin-input,.admin-add-faculty-form__grid .admin-password-input{width:100%}.admin-add-faculty-form__hint{margin:0}.admin-add-faculty-form__error{margin:0;font-size:.8125rem;color:#991b1b}.admin-add-faculty-form__actions{margin-top:.15rem}.admin-password-input{position:relative;width:100%}.admin-password-input__field{width:100%;padding-right:2.5rem}.admin-password-input__toggle{position:absolute;top:50%;right:.35rem;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:6px;background:transparent;color:var(--portal-text-muted, #5c6578);cursor:pointer}.admin-password-input__toggle:hover:not(:disabled){color:var(--text-dark, #1a2233);background:#f3f4f6}.admin-password-input__toggle:focus-visible{outline:2px solid var(--amu-red-dark);outline-offset:2px}.admin-password-input__toggle:disabled{cursor:not-allowed;opacity:.6}@media (max-width: 640px){.admin-add-faculty-form__grid{grid-template-columns:minmax(0,1fr)}}.admin-faculty-card__count{margin:0;font-size:.8125rem;font-weight:600;letter-spacing:.01em;color:var(--portal-text-muted, #5c6578)}.admin-faculty-card__official-hint{margin:.25rem 0 0;font-size:.75rem;line-height:1.4;color:var(--portal-text-faint)}.admin-faculty-table__col-official{width:8.5rem}.admin-faculty-official-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--portal-text-muted);cursor:pointer}.admin-faculty-official-toggle input{margin:0}.admin-faculty-empty{padding:2.5rem 1.25rem;text-align:center;font-size:.875rem;color:var(--portal-text-muted, #5c6578)}.admin-faculty-list{list-style:none;margin:0;padding:0}.admin-faculty-table-wrap{overflow-x:auto}.admin-faculty-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.875rem}.admin-faculty-table__col-avatar{width:4.25rem}.admin-faculty-table__col-name{width:12%}.admin-faculty-table__col-email{width:34%}.admin-faculty-table__col-username{width:16%}.admin-faculty-table__col-role{width:12rem}.admin-faculty-table thead{background:#f8f9fb}.admin-faculty-table th{padding:.7rem 1rem;text-align:left;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-text-faint, #7a8494);border-bottom:1px solid var(--portal-border-subtle, #e8ecf1);white-space:nowrap}.admin-faculty-table th:first-child,.admin-faculty-table td:first-child{padding-left:var(--admin-faculty-gutter)}.admin-faculty-table th:last-child,.admin-faculty-table td:last-child{padding-right:var(--admin-faculty-gutter)}.admin-faculty-table th:last-child,.admin-faculty-table .admin-faculty-member__role{text-align:right}.admin-faculty-table th:last-child{padding-left:.75rem}.admin-faculty-table__avatar-head{padding-right:0}.admin-faculty-table td{padding:.85rem 1rem;vertical-align:middle;border-bottom:1px solid var(--portal-border-subtle, #e8ecf1)}.admin-faculty-table tbody tr:last-child td{border-bottom:none}.admin-faculty-table tbody tr:hover{background:#fafbfc}.admin-faculty-member__avatar-cell{width:4.25rem;padding-right:.5rem}.admin-faculty-member{transition:background .12s ease}.admin-faculty-member__avatar{display:inline-flex;align-items:center;justify-content:center;width:2.625rem;height:2.625rem;border-radius:999px;font-size:.8125rem;font-weight:700;letter-spacing:.03em;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;flex-shrink:0}.admin-faculty-member__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;color:var(--text-dark, #1a2233)}.admin-faculty-member__email,.admin-faculty-member__username{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;color:var(--portal-text-muted, #5c6578)}.admin-faculty-member__role{padding-top:.85rem;padding-bottom:.85rem;padding-right:var(--admin-faculty-gutter);padding-left:.75rem;overflow:visible;vertical-align:middle}.admin-faculty-table .admin-role-menu{display:inline-block;width:10.25rem;max-width:100%;vertical-align:middle;text-align:left}.admin-faculty-table .admin-role-menu .admin-role-badge{width:100%;box-sizing:border-box}.admin-role-badge{display:inline-grid;grid-template-columns:1rem minmax(0,1fr) .875rem;align-items:center;gap:.35rem;width:10.25rem;max-width:100%;height:2.125rem;padding:0 .55rem;box-sizing:border-box;border-radius:999px;border:1px solid var(--admin-role-accent-border, #e2e8f0);background:var(--admin-role-accent-soft, #f8fafc);color:var(--admin-role-accent, #475569);font-size:.8125rem;font-weight:600;line-height:1.2;white-space:nowrap}.admin-role-badge__label{min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:center}.admin-role-badge__chevron{flex-shrink:0;opacity:.72}.admin-role-badge__chevron--spin{animation:admin-faculty-spin .8s linear infinite}.admin-role-badge--trigger{cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.admin-role-badge--trigger:hover:not(:disabled){box-shadow:0 1px 3px #0f172a14}.admin-role-badge--trigger:focus-visible{outline:2px solid var(--amu-red-dark);outline-offset:2px}.admin-role-badge--trigger:disabled{cursor:wait;opacity:.75}.admin-role-badge--readonly{cursor:default;grid-template-columns:1rem minmax(0,1fr) .875rem;column-gap:.35rem;padding:0 .55rem}.admin-role-badge__chevron-spacer{display:block;width:.875rem;height:.875rem;flex-shrink:0}.admin-role-menu--readonly{pointer-events:none}.admin-role-menu{position:relative;width:10.25rem;max-width:100%}.admin-role-menu--open .admin-role-badge--trigger{box-shadow:0 0 0 3px color-mix(in srgb,var(--admin-role-accent, #8c1d2c) 14%,transparent)}.admin-role-menu__list{position:absolute;top:calc(100% + .35rem);right:0;z-index:30;min-width:11.5rem;margin:0;padding:.35rem;list-style:none;background:#fff;border:1px solid var(--portal-border-subtle, #e8ecf1);border-radius:10px;box-shadow:0 10px 24px #0f172a1a,0 2px 6px #0f172a0a}.admin-role-menu__list--portal{position:fixed;top:auto;right:auto;min-width:0;max-width:calc(100vw - 1.5rem);box-sizing:border-box}.admin-role-menu__option{display:flex;align-items:center;gap:.55rem;width:100%;padding:.55rem .65rem;border:none;border-radius:8px;background:transparent;color:var(--text-dark, #1a2233);font:inherit;font-size:.8125rem;font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease}.admin-role-menu__option:hover{background:#f8fafc}.admin-role-menu__option--active{background:var(--admin-role-accent-soft, #f8fafc)}.admin-role-menu__option-icon{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:999px;color:var(--admin-role-accent, #475569);background:color-mix(in srgb,var(--admin-role-accent-soft, #f8fafc) 88%,#fff);flex-shrink:0}.admin-role-menu__option-label{flex:1;min-width:0}.admin-role-menu__option-check{flex-shrink:0;color:var(--admin-role-accent, #475569)}@keyframes admin-faculty-spin{to{transform:rotate(360deg)}}@media (max-width: 900px){.admin-faculty-table__col-email,.admin-faculty-table__col-username,.admin-faculty-table th:nth-child(3),.admin-faculty-table th:nth-child(4),.admin-faculty-table td:nth-child(3),.admin-faculty-table td:nth-child(4){display:none}.admin-faculty-table__col-role{width:11.5rem}}@media (max-width: 720px){.admin-faculty-table .admin-role-menu,.admin-faculty-table .admin-role-badge{max-width:100%}}
