@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap";@import"https://fonts.googleapis.com/css2?family=Cairo:wght@400;600;700;800&display=swap";:root{--font-main: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-secondary: "Lora", serif;--font-data: "JetBrains Mono", monospace;--font-display: "Space Grotesk", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bridge-teal: #004369;--warm-sand: #eae0d5;--dusty-sage: #8daa91;--gold-accent: #d4a373;--slate-ui: #2c3335;--primary-color: #002147;--secondary-color: #172554;--tertiary-color: #fe624e;--quaternary-color: #3d1500;--accent-color: #b22b1d;--neutral-color: #fbf9fa;--tint-color: #f1f5f9;--footer-color: #e7e8e9;--soft-color: #adb5bd;--muted-color: #495857;--text-color: #64748b;--foundation-color: #191c1d;--success-color: #16a34a;--success-light: #dcfce7;--success-text: #14532d;--warning-color: #d97706;--warning-light: #fef3c7;--warning-text: #78350f;--error-color: #dc2626;--error-light: #fee2e2;--error-text: #7f1d1d;--info-color: #0284c7;--info-light: #e0f2fe;--info-text: #0c4a6e;--gradient-visual-soul: linear-gradient(135deg, #001a38 0%, #0a0c0d 100%);--card-accent-line: #b22b1d;--surface-low: #ffffffcc;--surface-high: #f8f9fa;--shadow-soft: 0 2px 8px rgba(0, 0, 0, .04);--anim-fast: .2s cubic-bezier(.4, 0, .2, 1);--anim-standard: .4s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--tint-color)}::-webkit-scrollbar-thumb{background:var(--soft-color);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--muted-color)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;font-family:var(--font-display)}p{margin:0;line-height:1.5;font-family:var(--font-secondary)}body{margin:0;font-family:var(--font-main);background-color:var(--neutral-color);color:var(--foundation-color)}.btn{font-family:var(--font-main);display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;font-family:sans-serif;font-weight:600;font-size:16px;border:none;cursor:pointer;transition:all .2s ease;text-decoration:none;min-width:140px}.btn-primary{background-color:var(--primary-color);color:var(--neutral-color)}.btn-primary:hover{filter:brightness(1.2)}.btn-secondary{background-color:var(--tint-color);color:var(--muted-color)}.btn-secondary:hover{background-color:var(--soft-color);color:var(--foundation-color)}.btn-inverted{background-color:var(--foundation-color);color:var(--neutral-color)}.btn-inverted:hover{background-color:var(--foundation-color)}.btn-outlined{background-color:transparent;color:var(--muted-color);border:1px solid var(--soft-color)}.btn-outlined:hover{background-color:var(--tint-color);border-color:var(--muted-color)}.visual-card{padding:2rem;border-radius:8px;max-width:350px;display:flex;flex-direction:column;gap:1rem;overflow:hidden}.visual-card.dark{background:var(--gradient-visual-soul);color:var(--neutral-color);border-bottom:2px dotted var(--primary-color)}.visual-card.white{background-color:var(--surface-low);box-shadow:var(--shadow-soft);color:var(--foundation-color)}.visual-card .card-header{display:flex;align-items:center;gap:1rem}.visual-card .card-header .card-title{font-size:.75rem;color:var(--soft-color);text-transform:uppercase;margin-right:auto}.visual-card .card-header .Perf{font-size:.75rem;font-weight:700;display:inline-flex;width:fit-content;margin:0;border-radius:4px;padding:4px 8px}.visual-card .card-header .Perf.positive{background:#2f902826;color:#0f9b2d}.visual-card.white .card-header .Perf.positive{background:#1f03;color:#0f9b2db3}.visual-card.white .card-header .Perf.negative{background:#f003;color:#9b0f0fb3}.visual-card .card-header .Perf.negative{background:#ff000026;color:#9b0f0f}.visual-card .card-icon{width:30px;height:30px;color:var(--muted-color)}.visual-card .card-value{font-size:3.5rem;margin-top:20px;font-weight:900}.visual-card .card-description{font-size:.875rem;color:var(--text-color)}.visual-card .card-footer{display:flex;align-items:center;gap:1rem;margin-top:auto}.visual-card .card-footer p{font-size:.75rem;color:var(--soft-color)}.accent-line{width:80px;height:4px;background-color:var(--accent-color);margin-bottom:.5rem}.card-footer{display:flex;align-items:center;gap:1rem;margin-top:1rem}.tabular-nums{font-variant-numeric:tabular-nums}.app-main{display:flex;min-height:100dvh;position:relative;overflow-x:hidden}.app-footer{position:absolute;bottom:0;width:100%;background-color:var(--neutral-color);box-shadow:var(--shadow-soft);text-align:center;padding:1rem;font-size:14px}.app-routes{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;width:100%;transition:margin-left var(--anim-standard)}.page-cont{position:relative}@media(min-width:769px){.app-routes.app-routes-shifted{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width))}}:root{--sidebar-width: 250px;--sidebar-title-size: 1.05rem;--sidebar-item-font-size: .82rem}.sidebar-toggle-btn{position:fixed;top:20px;left:10px;width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:var(--primary-color);color:#fff;cursor:pointer;line-height:1;box-shadow:0 6px 16px #0000002e;transition:left .4s ease,background-color .2s ease;z-index:101!important}.sidebar-toggle-btn:hover{background:var(--secondary-color)}.sidebar-toggle-btn svg{width:18px;height:18px}.sidebar-toggle-btn.open{left:calc(var(--sidebar-width) - 30px)}.sidebar{position:fixed;top:0;display:flex;flex-direction:column;justify-content:space-between;left:0;width:var(--sidebar-width);height:100dvh;background-color:var(--tint-color);padding:20px 0 18px;transform:translate(-100%);transition:transform var(--anim-standard);z-index:100!important}.sidebar.sidebar-open{transform:translate(0)}.sidebar-top{display:flex;flex-direction:column;min-height:0;flex:1 1 auto;overflow:hidden}.sidebar-header{display:flex;align-items:center;padding:0 56px 0 16px;justify-content:flex-start;margin-bottom:40px;gap:12px}.sidebar-header h2{font-size:var(--sidebar-title-size);line-height:1.25;color:var(--secondary-color);-webkit-user-select:none;user-select:none;max-width:15ch}.sidebar .logo-image{width:40px;height:40px;flex:0 0 40px}.sidebar-nav{display:flex;flex-direction:column;gap:4px;min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding-bottom:12px;scrollbar-gutter:stable;direction:rtl}.sidebar-item{padding:14px 40px;text-transform:uppercase;display:flex;align-items:center;gap:10px;direction:ltr}.sidebar-item .sideItemIcon{margin-right:8px;display:inline-flex;align-items:center;opacity:.7;width:28px;height:28px;fill:none}.sidebar-item .sideItemIcon--outline{fill:none}.sidebar-item a{color:var(--text-color);text-decoration:none;font-size:var(--sidebar-item-font-size);font-weight:700;text-transform:uppercase;letter-spacing:.03em;border-radius:0;border-right:4px solid transparent;display:inline-flex;align-items:center;width:100%;transition:.2s ease}.sidebar-item.active{background-color:var(--neutral-color);color:var(--foundation-color);border-right:4px solid var(--primary-color)}.sidebar-item.active a{color:var(--primary-color)}.sidebar-item.active .sideItemIcon{color:var(--primary-color);opacity:1}.sidebar-item:hover a{color:var(--primary-color);filter:brightness(1.5)}.sidebar-footer{margin:0 16px;display:flex;flex-direction:column;align-items:center;gap:12px}.sidebar-divider{height:1px;background-color:var(--soft-color);margin:12px 10px;opacity:.2}.info-container{padding:12px 0;border-radius:8px;display:flex;align-items:center;gap:10px}.logout-btn{width:100%;background-color:var(--primary-color);color:#fff;border:none;padding:10px;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.logout-btn:hover{background-color:var(--secondary-color)}.user-info{display:flex;flex-direction:column;gap:2px}.user-info p{font-size:.9rem;color:var(--muted-color);line-height:1.2}.user-info .welcome-message{font-weight:700;font-family:var(--font-display);color:var(--primary-color)}.user-info .user-role{color:var(--text-color);text-transform:uppercase;letter-spacing:.02em;font-size:.75rem}.user-image{width:40px;height:40px;border-radius:6px}@media(max-width:980px){:root{--sidebar-width: min(42vw, 230px);--sidebar-title-size: .98rem;--sidebar-item-font-size: .78rem}.sidebar{padding:16px 0 14px}.sidebar-header{align-items:center;padding:0 48px 0 14px;margin-bottom:26px}.sidebar-item{padding:12px 20px}.sidebar-footer{margin:0 12px;align-items:stretch}.user-info p{font-size:.82rem}.user-info .user-role{font-size:.68rem;letter-spacing:.03em}.logout-btn{font-size:.82rem;padding:9px}}@media(max-width:640px){:root{--sidebar-width: min(84vw, 300px);--sidebar-title-size: .9rem;--sidebar-item-font-size: .76rem}.sidebar-toggle-btn{top:14px;left:8px;width:22px;height:22px}.sidebar-toggle-btn svg{width:14px;height:14px}.sidebar-toggle-btn.open{left:calc(var(--sidebar-width) - 11px)}.sidebar{padding:14px 0 12px}.sidebar-header{align-items:center;padding:0 42px 0 12px;margin-bottom:18px;gap:8px}.sidebar .logo-image{width:34px;height:34px;flex:0 0 34px}.sidebar-item{padding:10px 14px;gap:8px}.sidebar-item .sideItemIcon{margin-right:4px}.sidebar-item a{letter-spacing:.02em}.sidebar-footer{margin:0 10px;gap:10px;align-items:stretch}.info-container{padding:8px 0;gap:8px}.user-image{width:34px;height:34px}.user-info p{font-size:.8rem}.user-info .user-role{font-size:.64rem}.logout-btn{font-size:.8rem;padding:8px}}@media(max-width:420px){:root{--sidebar-width: min(90vw, 300px);--sidebar-title-size: .84rem;--sidebar-item-font-size: .72rem}.sidebar-item{padding:10px 12px}.sidebar-toggle-btn.open{left:calc(var(--sidebar-width) - 10px)}}.navbar{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:14px;padding:0 18px 10px 48px;background-color:var(--neutral-color);color:var(--foundation-color);transition:padding var(--anim-fast);overflow:visible!important;z-index:99!important}.nav-pages{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.navbar-title{font-size:1.7rem;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;color:var(--primary-color);margin:0}.navbar-page-btn{background:transparent;border:none;color:var(--muted-color);font-family:var(--font-main);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;opacity:.7;position:relative;white-space:nowrap;transition:transform var(--anim-fast),color var(--anim-fast),border-color var(--anim-fast),background-color var(--anim-fast),box-shadow var(--anim-fast)}.navbar-page-btn:hover{color:var(--primary-color);transform:translateY(-1px)}.navbar-page-btn.active{position:relative;opacity:1;color:var(--primary-color)}.navbar-actions{margin-left:auto;display:flex;flex:0 0 auto;align-items:center;gap:10px;min-width:0}.navbar-search{width:clamp(160px,25vw,280px);height:34px;padding:0 12px;border:1px solid var(--soft-color);border-radius:10px;background-color:var(--surface-high);color:var(--muted-color);transition:.2s ease}.navbar-search:focus{outline:none;border-color:#00214759;background:var(--neutral-color)}.navbar-icons{display:flex;align-items:center;gap:8px}.navbar-icon-btn{width:34px;height:34px;padding:0;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted-color);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color var(--anim-fast),background-color var(--anim-fast),border-color var(--anim-fast)}.navbar-badge-container{margin-top:6px;display:inline-flex;align-items:center;gap:4px;padding:0 6px;border-radius:10px;background-color:transparent;color:var(--muted-color);cursor:pointer;transition:color var(--anim-fast),background-color var(--anim-fast),border-color var(--anim-fast)}.navbar-badge-container:hover{background-color:#0021470f;border-color:#adb5bd99;color:var(--primary-color)}.navbar-badge-container .badge{font-size:.65rem;font-weight:600;color:var(--muted-color)}.navbar-badge-container .navbar-icon-btn{width:18px;height:18px}.navbar-icon-btn svg{width:18px;height:18px}.navbar-icon-btn:hover{background-color:#0021470f;border-color:#adb5bd99;color:var(--primary-color)}.notif-dropdown{position:absolute;top:45px;right:0;width:320px;background:#fff;border-radius:12px;box-shadow:0 10px 25px #00000026;border:1px solid var(--border-color, #eee);box-shadow:0 15px 45px #00000040;border:1px solid #ddd;display:flex;flex-direction:column;overflow:hidden;z-index:99999!important}.notif-dropdown-header{padding:12px 16px;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;background:#fafafa}.notif-dropdown-header-actions{display:flex;gap:8px}.notif-dropdown-header-actions .notif-mark-all-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.875rem;font-weight:600;background:var(--primary-color);color:var(--neutral-color);transition:.2s;border-radius:8px}.notif-dropdown-header-actions .notif-mark-all-btn:hover{background-color:var(--surface-high);color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.notif-dropdown-header-actions .notif-close-btn{display:inline-flex;align-items:center;background:var(--primary-color);color:var(--neutral-color);font-size:1.1rem;cursor:pointer;transition:color var(--anim-fast);border-radius:8px}.notif-dropdown-header-actions .notif-close-btn:hover{background-color:var(--surface-high);color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.notif-dropdown-title{font-weight:600;font-size:.95rem;color:#333}.notif-dropdown-body{max-height:380px;overflow-y:auto}.notif-item{width:100%;display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border:none;background:none;cursor:pointer;text-align:left;transition:.2s;border-bottom:1px solid #f9f9f9}.notif-item:hover{background:#f5f8ff}.notif-item.unread{background:#f0f4ff}.notif-item-title{margin:0;font-size:.88rem;color:#444;line-height:1.4}.notif-item-time{font-size:.75rem;color:#888;display:block;margin-top:4px}.notif-type-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}.notif-unread-dot{width:6px;height:6px;background:var(--primary-color);border-radius:50%;margin-left:auto;align-self:center}.notif-dropdown-footer{padding:10px;text-align:center;border-top:1px solid #f0f0f0}.notif-view-all-btn{width:100%;padding:8px;background:none;border:none;color:var(--primary-color);font-weight:500;font-size:.85rem;cursor:pointer}.notif-view-all-btn:hover{text-decoration:underline}.notif-empty{padding:40px 20px;text-align:center;color:#999;display:flex;flex-direction:column;align-items:center;gap:8px}@media(max-width:980px){.navbar{min-height:58px;padding:5px 14px 5px 44px;gap:10px}.navbar-title{font-size:1.2rem}.nav-pages{gap:6px;scrollbar-width:none}.nav-pages::-webkit-scrollbar{display:none}.navbar-page-btn{height:32px;padding:0 11px;font-size:.71rem}.navbar-search{width:clamp(130px,30vw,200px);height:32px}}@media(max-width:640px){.navbar{min-height:56px;padding:5px 10px 5px 42px}.navbar-title{font-size:.98rem;line-height:1.1}.navbar-search{display:none}.navbar-page-btn{height:30px;padding:0 10px;font-size:.67rem}.navbar-icons{gap:6px}.navbar-icon-btn{width:30px;height:30px;border-radius:8px}}@media(max-width:460px){.navbar{min-height:52px;gap:8px;padding:5px 8px 5px 40px}.nav-pages{gap:4px;padding-bottom:0}.navbar-page-btn{height:28px;padding:0 8px;font-size:.62rem;letter-spacing:.04em}.navbar-actions{margin-left:auto;gap:4px}.navbar-icons{gap:4px}.navbar-icon-btn{width:28px;height:28px;border-radius:7px}.navbar-icon-btn svg{width:16px;height:16px}}#overview{display:flex;flex-direction:column;margin-top:30px;margin-bottom:80px;width:100%;min-width:0;gap:.4rem}.section{background:linear-gradient(180deg,#fff,#f1f5f9b8);border:1px solid rgba(173,181,189,.35);border-radius:16px;padding:1rem 1.05rem;box-shadow:0 10px 24px #09283f1a}.section-title{font-size:.84rem;color:var(--primary-color);text-transform:uppercase;letter-spacing:.11em}.section-subtitle{font-size:.8rem;color:var(--text-color);margin-top:.3rem}.overview-header{display:flex;align-items:stretch;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-radius:18px;padding:1rem 1.05rem;margin-bottom:1.5rem;background:var(--gradient-visual-soul);border:1px solid rgba(173,181,189,.35);box-shadow:0 16px 30px #0a1c2e38}.overview-header>div{display:flex;flex-direction:column;gap:.28rem;background-color:#ffffff1f;padding:.76rem .85rem;border-radius:12px;border:1px solid rgba(255,255,255,.24);min-height:72px;justify-content:center;flex:1 1 220px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.overview-header>div h1{font-size:.72rem;color:#f1f5f9eb;text-transform:uppercase;letter-spacing:.08em;margin:0}.overview-header>div p{font-size:.8rem;font-weight:700;color:var(--neutral-color);margin:0}.appeal-status{display:flex;flex-direction:column;gap:.5rem;background-color:#ffffff1a;border-radius:12px;min-height:104px}.appeal-status-title{margin-bottom:.2rem}.appeals{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:.75rem}.appeals>div{background:#ffffff29;padding:.55rem .65rem;border-radius:8px;border:1px solid rgba(255,255,255,.28);min-height:68px;display:flex;flex-direction:column;justify-content:center;gap:.2rem}.appeals h2{font-size:.74rem;color:#f1f5f9e6;text-transform:uppercase;margin:0}.appeals p{font-size:.75rem;font-weight:600;color:var(--neutral-color);margin:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.appeal-pill{display:inline-flex;align-items:center;justify-content:center;padding:.12rem .48rem;border-radius:999px;font-size:.67rem;font-weight:700;letter-spacing:.01em;background:#ffffff29;border:1px solid rgba(255,255,255,.34);color:#fff;white-space:nowrap}.appeal-pill.open{background:#22c55e2e;border-color:#86efac7a}.appeal-pill.closed{background:#ef44442b;border-color:#fca5a580}.appeal-pill.not-started{background:#f59e0b33;border-color:#fcd34d85}.appeal-totals{display:flex;gap:1rem;margin-top:.75rem;border:1px solid rgba(173,181,189,.35);border-radius:12px;box-shadow:0 8px 18px #0f355d1a;padding:.7rem .8rem;background:linear-gradient(180deg,#fffffff5,#f1f5f9c7)}.midTerm-total{position:relative;flex:1}.midTerm-total:after{content:"";width:1px;position:absolute;top:12%;bottom:12%;right:-.5rem;background:#adb5bd80;z-index:1}.final-total,.midTerm-total{background:transparent;padding:.45rem .5rem;border-radius:8px;border:none;min-height:68px;display:flex;flex-direction:column;justify-content:center;gap:.2rem}.final-total{flex:1}.final-total h1,.midTerm-total h1{font-size:.72rem;color:var(--text-color);text-transform:uppercase;letter-spacing:.08em;margin:0}.final-total h2,.midTerm-total h2{font-size:1.18rem;font-weight:600;color:var(--primary-color);margin:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.rate-change.positive{font-size:.67rem;font-weight:700;color:#11783f;background:#22c55e2e;border:1px solid rgba(134,239,172,.48);padding:.12rem .48rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.rate-change.negative{font-size:.67rem;font-weight:700;color:#ad2a2a;background:#ef44442b;border:1px solid rgba(252,165,165,.5);padding:.12rem .48rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.overview-cards{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:1rem;align-items:stretch}.overview-cards .visual-card{max-width:none;width:100%;border:1px solid rgba(173,181,189,.33);box-shadow:0 12px 24px #0a1e3417}.overview-kpi-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(4,minmax(200px,1fr));gap:1rem}.overview-kpi-grid .mini-metric-card{border:1px solid rgba(173,181,189,.3);box-shadow:0 8px 18px #0a1e3414;border-radius:14px}@media(max-width:1024px){.overview-header{gap:.8rem}.overview-header>div{flex:1 1 100%}.appeals{grid-template-columns:1fr}.appeal-totals{flex-direction:column;gap:.65rem}.midTerm-total:after{display:none}.overview-cards{grid-template-columns:repeat(2,minmax(240px,1fr))}.overview-kpi-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media(max-width:640px){#overview{margin-top:20px;margin-bottom:64px}.section{padding:.88rem .92rem}.overview-cards,.overview-kpi-grid{grid-template-columns:1fr}}.mini-metric-card,.ring-progress-card{height:100%;border-radius:12px;border:1px solid #e0e8f0;box-shadow:0 2px 8px #0a21330f;padding:1.1rem 1.2rem;background:linear-gradient(135deg,#fff,#f9fafb);transition:box-shadow .2s ease,border-color .2s ease}.mini-metric-card{display:grid;align-content:stretch;gap:.4rem}.mini-metric-card.has-trend,.appeal-kpi-card.has-trend{display:grid;grid-template-columns:minmax(0,1fr) 40px;column-gap:.6rem;align-items:stretch}.kpi-card-main-col{min-width:0;display:grid}.mini-metric-card.has-trend .kpi-card-main-col{grid-template-rows:auto auto 1fr;gap:.3rem}.appeal-kpi-card.has-trend .kpi-card-main-col{grid-template-rows:auto 1fr auto;gap:.7rem}.kpi-card-trend-col{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;padding-left:.42rem;border-left:1px solid rgba(23,53,79,.16)}.mini-metric-card:hover{border-color:#d0dae8;box-shadow:0 4px 12px #0a213314}.mini-metric-card.warn{background:linear-gradient(135deg,#fffbf7,#fef9f5);border-color:#f5e0d0}.mini-metric-card.warn:hover{border-color:#ead8c0;box-shadow:0 4px 12px #aa502914}.mini-metric-card.cool{background:linear-gradient(135deg,#f7fbff,#f5f9fc);border-color:#d8e8f5}.mini-metric-label{margin:0 0 .15rem;font-size:.615rem;text-transform:uppercase;letter-spacing:.08em;color:#7a8fa3;font-weight:600;line-height:1.2}.mini-metric-value{margin:0;font-size:clamp(1.25rem,2.2vw,1.55rem);color:#0a2133;line-height:1.1;font-weight:700;letter-spacing:-.01em}.mini-metric-description{margin:.22rem 0 0;font-size:.71rem;line-height:1.4;color:#5a7289;font-weight:500}.kpi-trend-separator{width:1px;height:42%;min-height:20px;background:#17354f42}.kpi-trend-icon{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;box-shadow:0 2px 6px #0a213314}.kpi-trend-icon svg{width:13.5px;height:13.5px;stroke-width:2.4}.kpi-trend-icon.up{color:#1f6a45;background:#1f8b571f;border-color:#1f8b5747}.kpi-trend-icon.down{color:#9f1f15;background:#b22b1d1f;border-color:#b22b1d4d}.kpi-trend-icon.same{color:#4f6a7f;background:#60717c1f;border-color:#60717c3d}.ring-progress-card{display:grid;gap:.65rem;align-content:stretch}.ring-progress-title{margin:0 0 .1rem;font-size:.615rem;text-transform:uppercase;letter-spacing:.08em;color:#7a8fa3;font-weight:600;line-height:1.2}.ring-progress-body{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.9rem}.ring-svg{width:60px;height:60px;flex-shrink:0}.ring-track,.ring-fill{fill:none;stroke-width:7}.ring-track{stroke:#e8eff7}.ring-fill{stroke:#1f7aa6;stroke-linecap:round;transform:rotate(-90deg);transform-origin:42px 42px;transition:stroke-dashoffset .3s ease}.ring-progress-value{margin:0;font-size:clamp(1.3rem,2.3vw,1.65rem);color:#0a2133;line-height:1.1;font-weight:700;letter-spacing:-.01em}.ring-progress-note{margin:.2rem 0 0;font-size:.7rem;line-height:1.4;color:#5a7289;font-weight:500}.appeal-kpi-card{display:block;padding:.92rem .95rem .88rem;border-radius:18px;border:1px solid rgba(20,55,85,.14);background:linear-gradient(165deg,#fff,#f4f8fc 92%);box-shadow:0 14px 26px #08223614;min-height:190px;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.appeal-kpi-card:after{content:"";position:absolute;right:-34px;top:-34px;width:96px;height:96px;border-radius:50%;background:#17354f14}.appeal-kpi-card:hover{transform:translateY(-2px);box-shadow:0 18px 30px #0822361f}.appeal-kpi-card.positive{border-color:#1f8b573d}.appeal-kpi-card.warning{border-color:#c27a083d}.appeal-kpi-card.danger{border-color:#b22b1d42}.appeal-kpi-top{position:relative;z-index:1;display:flex;align-items:center}.appeal-kpi-label{margin:0;display:inline-flex;align-items:center;min-height:28px;padding:.25rem .58rem;border-radius:999px;background:#17354f1a;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.085em;color:#24435d}.appeal-kpi-main{position:relative;z-index:1;display:grid;align-content:start;gap:.5rem;padding:.2rem .2rem .1rem 0}.appeal-kpi-value{margin:0;font-size:clamp(1.45rem,2.55vw,2.05rem);line-height:1;color:#102d45;font-weight:800;letter-spacing:-.02em;display:inline-flex;align-items:baseline;gap:.22rem}.appeal-kpi-suffix{font-size:.78rem;font-weight:700;color:#536f85}.appeal-kpi-card.danger .appeal-kpi-value{color:#9f1f15}.appeal-kpi-description{margin:0;font-size:.79rem;line-height:1.5;color:#4f6a7f}.appeal-kpi-bottom{position:relative;z-index:1;border-top:1px dashed rgba(23,53,79,.2);padding-top:.46rem}@media(max-width:720px){.mini-metric-card.has-trend,.appeal-kpi-card.has-trend{grid-template-columns:minmax(0,1fr) 36px;column-gap:.45rem}.kpi-card-trend-col{padding-left:.34rem}}.appeal-kpi-footer{margin:0;font-size:.735rem;line-height:1.45;font-weight:700;color:#1f4563}.appeal-kpi-card.warning .appeal-kpi-footer{color:#8b5a06}.appeal-kpi-card.positive .appeal-kpi-footer{color:#1f6a45}.appeal-kpi-card.danger .appeal-kpi-footer{color:#9f1f15}.appeal-kpi-card.positive .appeal-kpi-label{background:#1f8b571f;color:#1f6a45}.appeal-kpi-card.warning .appeal-kpi-label{background:#c27a0824;color:#8b5a06}.appeal-kpi-card.danger .appeal-kpi-label{background:#b22b1d24;color:#9f1f15}.section{margin-top:40px}.charts{display:flex;flex-direction:column;gap:1rem}.charts .section{background:#fff;border:1px solid #dce7f2;border-radius:18px;padding:1rem 1.1rem;box-shadow:0 8px 20px #09283f14;min-width:0;display:flex;flex-direction:column;gap:.5rem}.charts .section-title{font-size:.92rem;color:#17354f;text-transform:uppercase;letter-spacing:.08em;margin:0}.charts .section-subtitle{font-size:.75rem;color:#6c757d;margin-top:.25rem;margin-bottom:0}.charts-error-box{align-items:flex-start}.charts-error-message{margin:0;font-size:.85rem;color:#b22b1d;background:#b22b1d14;border:1px solid rgba(178,43,29,.2);border-radius:10px;padding:.6rem .75rem}.charts .chart-wrapper{position:relative;width:100%;height:300px;min-height:300px;margin-top:.5rem}.charts .chart-wrapper canvas{display:block;width:100%!important;height:100%!important}.insights{display:flex;flex-direction:column;gap:.85rem;margin-top:1rem;padding:1rem;border:1px solid #e6eef7;border-radius:14px;background:linear-gradient(180deg,#f8fbfff2,#fffffffa)}.insights-title{font-size:.75rem;color:#17354f;text-transform:uppercase;letter-spacing:.08em;margin:0}.insights-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.insight-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#385066;line-height:1.5;padding:.7rem .8rem;border:1px solid #e5edf6;border-radius:12px;background:#fff;box-shadow:0 4px 12px #09283f0d}.insight-item-content{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.insight-text{display:inline}.insight-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;flex:0 0 26px}.insight-icon svg{width:13px;height:13px}.insight-icon.positive{background-color:#28a74526;color:#28a745}.insight-icon.negative{background-color:#dc354526;color:#dc3545}.insight-icon.neutral{background-color:#6c757d26;color:#6c757d}.insight-percent{display:inline-flex;align-items:center;justify-content:center;padding:.1rem .45rem;margin:0 .2rem;border-radius:999px;background:#1f77b41f;color:#145a86;font-weight:700;letter-spacing:.01em;white-space:nowrap}.insight-item.positive .insight-percent{background:#28a7451f;color:#1a8037}.insight-item.negative .insight-percent{background:#dc35451f;color:#ad2331}.insight-item strong{color:#17354f;font-weight:700}.row1{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:1rem;align-items:stretch}.row3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:1rem;align-items:stretch}.row1 .big,.row1 .small,.row3 .big,.row3 .small{min-width:0;height:100%}.row3 .small{order:1}.row3 .big{order:2}.row1 .section{height:100%}.appeal-breakdown-title{display:inline-flex;align-items:center;gap:.45rem;font-weight:800;letter-spacing:.01em;color:#0f304a;padding-bottom:3px;position:relative;margin-bottom:10px}.appeal-breakdown-title:after{content:"";display:inline-block;width:50%;height:3px;background:#17354f26;border-radius:4px;bottom:1px;position:absolute}.appeal-breakdown{display:flex;flex-direction:column;margin:.55rem 0 0;padding:.4rem .7rem;border-radius:10px;background:#17354f17;border:1px solid rgba(23,53,79,.15)}.appeal-breakdown span{display:inline-flex;align-items:center;gap:.75rem;font-size:.875rem;color:#385066}@media(max-width:1024px){.row1,.row3{grid-template-columns:1fr;align-items:stretch}.charts .chart-wrapper{height:260px;min-height:260px}}.chart-container{display:flex;flex-direction:column;gap:1rem;padding:1.1rem;border:1px solid rgba(23,53,79,.12);border-radius:20px;background:#fff;box-shadow:0 12px 28px #09283f0f}.chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.chart-heading{display:flex;flex-direction:column;gap:.25rem}.chart-title{font-size:1.05rem;color:#17354f;letter-spacing:.01em}.chart-subtitle{margin:0;font-size:.875rem;color:#61768a}.chart-meta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}.chart-count{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:.35rem .75rem;border-radius:999px;background:#17354f14;color:#17354f;font-size:.78rem;font-weight:700;letter-spacing:.02em}.chart-reset{min-height:32px;border:1px solid rgba(178,43,29,.22);border-radius:999px;padding:.35rem .8rem;background:#b22b1d14;color:#8a1f15;font-size:.78rem;font-weight:700;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.chart-reset:hover{transform:translateY(-1px);background:#b22b1d1f;border-color:#b22b1d4d}.chart-toggle{min-height:32px;border:1px solid rgba(23,53,79,.2);border-radius:999px;padding:.35rem .8rem;background:#17354f14;color:#17354f;font-size:.78rem;font-weight:700;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.chart-toggle:hover{transform:translateY(-1px);background:#17354f21;border-color:#17354f4d}.chart-filters{display:flex;flex-direction:column;gap:.85rem;padding:.95rem;border:1px solid rgba(23,53,79,.09);border-radius:16px;background:#f8fbfff2;overflow:hidden}.chart-filters-main{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.85rem}.chart-filters-date{flex:1 1 100%;width:100%}.chart-filter-group,.chart-field{display:flex;flex-direction:column;gap:.45rem}.chart-filters-main .chart-field{flex:1 1 220px;min-width:220px}.chart-filters-date .chart-field,.chart-filters-date .chart-filter-group{min-width:0;width:100%;flex:1 1 auto}.chart-filter-label,.chart-field-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#496175}.chart-date-range{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.chart-field input,.chart-field select{width:100%;min-height:42px;border:1px solid rgba(23,53,79,.16);border-radius:12px;padding:.65rem .8rem;background:#fff;color:#17354f;font-size:.92rem;outline:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.chart-field input:focus,.chart-field select:focus{border-color:#00436973;box-shadow:0 0 0 3px #0043691f}.chart-body{position:relative;min-height:320px;border-radius:16px;overflow:hidden}.chart-body canvas{display:block;width:100%!important;height:100%!important}.chart-empty{display:flex;align-items:center;justify-content:center;min-height:320px;border:1px dashed rgba(23,53,79,.18);border-radius:16px;background:#ffffffb3;color:#61768a;font-size:.95rem;text-align:center}@media(max-width:720px){.chart-container{padding:.9rem;border-radius:16px}.chart-header{flex-direction:column}.chart-meta{justify-content:flex-start}.chart-filters,.chart-filters-main{flex-direction:column}.chart-filters-main .chart-field,.chart-filters-date .chart-field,.chart-filters-date .chart-filter-group{min-width:0;width:100%;flex:1 1 auto}.chart-date-range{grid-template-columns:1fr}.chart-body,.chart-empty{min-height:280px}}.chart-multi-control{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:.5rem}.chart-add-button{min-height:42px;border:1px solid rgba(0,67,105,.2);border-radius:12px;background:#00436914;color:#0f4d74;font-size:1.15rem;font-weight:700;cursor:pointer;transition:background-color .18s ease,border-color .18s ease}.chart-add-button:hover{background:#00436924;border-color:#00436952}.chart-selected-list{display:flex;flex-wrap:wrap;gap:.4rem}.chart-selected-item{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(23,53,79,.2);border-radius:999px;padding:.2rem .55rem;background:#17354f14;color:#17354f;font-size:.75rem;font-weight:700;cursor:pointer}.chart-selected-item span{font-size:.8rem;opacity:.7}.appeals-page{margin-top:30px;margin-bottom:80px;width:100%;display:flex;flex-direction:column;gap:1rem}.appeals-page .info{display:flex;flex-direction:column;gap:.25rem}.appeals-page .info h1{margin:0;color:#153a56;font-size:clamp(1.45rem,2.3vw,2rem);letter-spacing:-.01em}.appeals-page .info p{margin:0;font-size:.9rem;color:#5f7284}.appeals-top-header{display:flex;justify-content:space-between;gap:1rem;align-items:stretch;flex-wrap:wrap}.appeals-status-panel{min-width:250px;padding:.8rem 1rem;border-radius:14px;border:1px solid rgba(21,58,86,.16);display:flex;flex-direction:column;gap:.65rem}.appeals-status-panel h2{margin:0;color:#153a56;font-size:.78rem;text-transform:uppercase;letter-spacing:.09em}.appeals-status-items{display:grid;gap:.45rem}.appeals-status-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.appeals-status-item:first-child{padding-bottom:1rem;margin-bottom:.5rem;border-bottom:1px solid rgba(21,58,86,.12)}.appeals-status-label{color:#4d6478;font-size:.85rem;font-weight:600}.appeals-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:100px;min-height:28px;padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid transparent}.appeals-status-badge.is-open{color:#0f5b34;background:#2cb36f29;border-color:#21885459}.appeals-status-badge.is-closed{color:#5f6f7c;background:#60717c24;border-color:#60717c4d}.appeals-status-badge.is-not-started{color:#8a4b00;background:#df922a29;border-color:#df922a57}.filterHeader{padding:1rem;border-radius:16px;border:1px solid rgba(173,181,189,.35);background:linear-gradient(180deg,#fffffff5,#f1f5f9e6);box-shadow:0 10px 24px #09283f14;display:flex;flex-direction:column;gap:.9rem}.appeals-filter-bar{display:flex;flex-wrap:wrap;align-items:end;gap:.85rem}.appeals-date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;padding-top:.9rem;border-top:1px solid rgba(173,181,189,.25)}.appeals-filter-field{display:flex;flex-direction:column;gap:.4rem;min-width:190px;flex:1 1 190px}.appeals-filter-field span{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#496175}.appeals-filter-field input,.appeals-filter-field select{min-height:42px;padding:.65rem .8rem;border-radius:12px;border:1px solid rgba(23,53,79,.16);background:#fff;color:#17354f;font-size:.92rem;outline:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.appeals-filter-field input:focus,.appeals-filter-field select:focus{border-color:#00436973;box-shadow:0 0 0 3px #0043691f}.appeals-filter-actions{display:flex;align-items:center;gap:.65rem;margin-left:auto;flex-wrap:wrap}.appeals-filter-count{display:inline-flex;align-items:center;min-height:32px;padding:.35rem .75rem;border-radius:999px;background:#17354f14;color:#17354f;font-size:.78rem;font-weight:700}.appeals-filter-reset{min-height:32px;padding:.35rem .8rem;border-radius:999px;border:1px solid rgba(178,43,29,.22);background:#b22b1d14;color:#8a1f15;font-size:.78rem;font-weight:700;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.appeals-filter-reset:hover:not(:disabled){transform:translateY(-1px);background:#b22b1d1f;border-color:#b22b1d4d}.appeals-filter-reset:disabled{opacity:.55;cursor:not-allowed}.appeals-page .section{background:linear-gradient(180deg,#fff,#f1f5f9b8);border:1px solid rgba(173,181,189,.35);border-radius:16px;padding:1rem 1.05rem;box-shadow:0 10px 24px #09283f1a;display:flex;flex-direction:column;gap:.9rem}.appeals-kpi-section{display:grid;gap:1.05rem}.appeals-kpi-heading{display:flex;flex-direction:column;gap:.2rem}.appeals-kpi-heading h2{margin:0;color:#153a56;font-size:.95rem;text-transform:uppercase;letter-spacing:.1em}.appeals-kpi-heading p{margin:0;font-size:.88rem;color:#5f7284}.appeals-kpi-heading--risk h2{color:#8f2218}.appeals-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.95rem;padding:.25rem;border-radius:18px}.appeals-page .section-title{font-size:.84rem;color:var(--primary-color);text-transform:uppercase;letter-spacing:.11em;margin:0}.appeals-page .section-subtitle{font-size:.8rem;color:var(--text-color);margin:0}.appeals-chart-shell{margin-top:.25rem}.appeals-error{margin:0;font-size:.9rem;color:#b22b1d;background:#b22b1d14;border:1px solid rgba(178,43,29,.2);border-radius:12px;padding:.7rem .85rem}.appeals-contrast-section{display:flex;gap:1rem;align-items:stretch;padding:0;background:transparent;border:none;box-shadow:none}.first-chart{max-height:500px}.appeals-first-col{flex:1 1 auto;min-width:0;display:grid;gap:1rem}.appeals-second-col{flex:0 0 360px;min-width:300px;display:flex;margin-top:0;position:relative}.AppealsByCourse{width:100%;height:100%;background:#f8fafc;border:1px solid rgba(23,53,79,.12);border-radius:14px;padding:1rem;display:flex;flex-direction:column;gap:.62rem;background:var(--gradient-visual-soul)}.backgroundSVG{position:absolute;top:50%;right:2.5rem;transform:translateY(-50%);opacity:.78;z-index:0;pointer-events:none}.backgroundSVG svg{width:15.5rem;height:15.5rem;color:#ffffff08}.AppealsByCourse h1{margin:0 0 .25rem;font-size:1rem;color:#fff;letter-spacing:.03em;text-transform:uppercase}.AppealsByCourse label{font-size:.74rem;color:#fff;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.AppealsByCourse select,.AppealsByCourse input{min-height:40px;border-radius:10px;border:1px solid rgba(23,53,79,.2);background:#fff;color:#17354f;font-size:.88rem;padding:.55rem .75rem;outline:none}.AppealsByCourse select:focus,.AppealsByCourse input:focus{border-color:#00436973;box-shadow:0 0 0 3px #0043691f}.course-combo{position:relative;display:grid;align-items:center}.course-combo input{padding-right:3.35rem}.course-combo-separator{position:absolute;right:2.5rem;top:7px;bottom:7px;width:1px;background:#17354f33;pointer-events:none}.course-combo-trigger{position:absolute;right:.4rem;width:1.9rem;height:1.9rem;border-radius:8px;border:none;background:#17354f14;color:#28435a;font-weight:800;line-height:1;pointer-events:none}.course-combo-native{position:absolute;top:0;right:0;bottom:0;width:2.5rem;opacity:0;cursor:pointer}.course-search-btn{margin-top:auto;min-height:38px;background:var(--accent-color);color:#fff;border:none;font-size:.83rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:background-color .18s ease,transform .18s ease}.course-search-btn:hover:not(:disabled){transform:translateY(-1px);background:#fff;color:#17354f}.course-search-btn:disabled{opacity:.6;cursor:not-allowed}.appeals-contrast-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem}.appeals-insight-card{background:#f8fafc;border:1px solid rgba(23,53,79,.12);border-radius:14px;padding:1rem;display:grid;gap:.95rem;min-height:200px}.appeals-insight-head{display:flex;justify-content:space-between;align-items:center;gap:.7rem}.appeals-insight-head h3{margin:0;font-size:.98rem;text-transform:uppercase;letter-spacing:.09em;color:#27384a}.appeals-insight-badge{border-radius:999px;padding:.28rem .64rem;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#2e4458;background:#17354f14}.appeals-insight-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.appeals-insight-values p{margin:0;font-size:.72rem;font-weight:700;color:#475e73;letter-spacing:.05em}.appeals-insight-values strong{display:inline-block;margin-top:.28rem;font-size:clamp(1.65rem,2.6vw,2.1rem);line-height:1;letter-spacing:-.02em;color:#0f2f4a}.appeals-insight-values .is-muted strong{color:#7a8796}.appeals-progress-wrap{display:grid;gap:.42rem}.appeals-progress-label{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.appeals-progress-label span{font-size:.73rem;font-weight:700;color:#41566a}.appeals-progress-label .is-up{color:#0f5b34}.appeals-progress-label .is-down{color:#a4291f}.appeals-progress-track{width:100%;height:8px;border-radius:999px;background:#17354f24;overflow:hidden}.appeals-progress-fill{height:100%;border-radius:inherit}.appeals-progress-fill.is-up{background:#2cb36f}.appeals-progress-fill.is-down{background:#d9534f}.appeals-bottom-grid{display:grid;grid-template-columns:1fr 1.45fr;gap:.95rem}.appeals-status-weight-card,.appeals-temporal-card{background:#f8fafc;border:1px solid rgba(23,53,79,.12);border-radius:14px;padding:1rem}.appeals-status-weight-card h3,.appeals-temporal-head h3{margin:0 0 .85rem;font-size:1rem;text-transform:uppercase;letter-spacing:.09em;color:#27384a}.appeals-status-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.6rem;padding:.42rem 0}.appeals-status-percent{min-width:48px;min-height:48px;border-radius:14px;border:2px solid rgba(23,53,79,.18);display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:800;color:#1f354b}.appeals-status-row.approved .appeals-status-percent{border-color:#203656}.appeals-status-row.rejected .appeals-status-percent{border-color:#ef6a5c}.appeals-status-row.pending .appeals-status-percent{border-color:#d2d7dd}.appeals-status-copy h4{margin:0;font-size:1rem;color:#24384d}.appeals-status-copy p{margin:.15rem 0 0;font-size:.79rem;color:#63798c}.appeals-temporal-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.appeals-temporal-head span{font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#314a60}.appeals-temporal-chart{height:190px}.appeals-empty-note{margin:0;font-size:.82rem;color:#63798c}@media(min-width:1081px)and (max-width:1320px){.appeals-contrast-section{gap:.85rem}.appeals-second-col{flex:0 0 320px;min-width:280px}.appeals-contrast-grid,.appeals-bottom-grid{grid-template-columns:1fr}.appeals-temporal-chart{height:180px}}@media(max-width:720px){.appeals-top-header{flex-direction:column}.appeals-status-panel{width:100%;min-width:0}.appeals-filter-bar{flex-direction:column;align-items:stretch}.appeals-date-row{grid-template-columns:1fr}.appeals-filter-actions{margin-left:0;justify-content:flex-start}.appeals-filter-field{min-width:0}.appeals-kpi-grid{grid-template-columns:1fr;padding:0;background:transparent}.appeals-contrast-grid,.appeals-bottom-grid{grid-template-columns:1fr}.appeals-contrast-section{flex-direction:column;gap:.75rem}.appeals-first-col,.appeals-second-col{flex:1 1 auto;min-width:0}.AppealsByCourse{padding:.88rem}.AppealsByCourse h1{font-size:.92rem}.AppealsByCourse label{font-size:.69rem}.AppealsByCourse select,.AppealsByCourse input{min-height:38px;font-size:.84rem;padding:.5rem .65rem}.course-combo input{padding-right:3rem}.course-combo-separator{right:2.3rem}.course-combo-trigger{right:.28rem;width:1.75rem;height:1.75rem}.course-combo-native{width:2.3rem}.course-search-btn{min-height:36px;font-size:.78rem}.appeals-status-weight-card,.appeals-temporal-card,.appeals-insight-card{padding:.85rem}.appeals-temporal-chart{height:170px}}@media(min-width:721px)and (max-width:1080px){.appeals-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appeals-contrast-section{flex-direction:column;gap:.85rem}.appeals-contrast-grid,.appeals-bottom-grid{grid-template-columns:1fr}.appeals-second-col{flex:1 1 auto;min-width:0}.AppealsByCourse{padding:.95rem}.AppealsByCourse select,.AppealsByCourse input{min-height:39px}.appeals-temporal-chart{height:180px}}.appeals-section{margin-top:32px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 1px 4px #17354f0f}.appeals-section-header{margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid rgba(23,53,79,.08)}.appeals-section-header h2{margin:0 0 4px;font-size:1.15rem;color:#17354f}.appeals-section-header p{margin:0;color:#7d8796;font-size:.85rem}.appeals-two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.appeals-two-col-grid>*{min-height:340px}@media(max-width:1024px){.appeals-two-col-grid{grid-template-columns:1fr}}.search-appeal-page{display:flex;flex-direction:column;gap:24px;padding:24px;background:linear-gradient(180deg,#f7f9fc,#eef2f7);min-height:100%;color:#17354f}.search-appeal-header{display:flex;align-items:flex-start;gap:16px;padding:18px 22px;background:#fff;border-radius:14px;box-shadow:0 1px 4px #17354f0f}.btn-back{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#f0f3f8;color:#17354f;border:1px solid rgba(23,53,79,.08);border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease;white-space:nowrap}.btn-back:hover{background:#e3e9f1;transform:translate(-2px)}.search-appeal-titles{display:flex;flex-direction:column;gap:2px;flex:1}.search-appeal-eyebrow{text-transform:uppercase;font-size:.7rem;font-weight:700;letter-spacing:.08em;color:#7d8796}.search-appeal-titles h2{margin:0;font-size:1.35rem;color:#17354f}.search-appeal-titles p{margin:0;font-size:.85rem;color:#7d8796}.search-appeal-kpi-section{display:flex;flex-direction:column;gap:18px;padding:18px 22px;background:#fff;border-radius:14px;box-shadow:0 1px 4px #17354f0f}.search-appeal-session-section{display:flex;flex-direction:column;gap:14px;padding:18px 22px;background:#fff;border-radius:14px;box-shadow:0 1px 4px #17354f0f}.session-section-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid rgba(23,53,79,.08)}.session-section-header h3{margin:0;font-size:1.05rem;font-weight:600;color:#17354f}.session-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#7d8796}.appeals-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.appeals-kpi-grid .appeal-kpi-card,.appeals-kpi-grid .mini-metric-card{height:100%}.search-appeal-charts-section{display:flex;flex-direction:column;gap:18px;padding:18px 22px;background:#fff;border-radius:14px;box-shadow:0 1px 4px #17354f0f}.charts-section-header{padding-bottom:12px;border-bottom:1px solid rgba(23,53,79,.08)}.charts-section-header h3{margin:0;font-size:1.05rem;font-weight:600;color:#17354f}.charts-grid-row{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.charts-grid-row .appeals-chart-shell{min-height:380px}.appeals-chart-shell.full-width{grid-column:1 / -1;min-height:320px}@media(max-width:1600px){.charts-grid-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:1200px){.search-appeal-page{padding:16px;gap:16px}.charts-grid-row{grid-template-columns:1fr}.appeals-chart-shell{min-height:320px}.search-appeal-header{flex-direction:column}.appeals-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.search-appeal-page{padding:12px;gap:12px}.appeals-kpi-grid{grid-template-columns:1fr}.search-appeal-header{flex-direction:column}.appeals-chart-shell{min-height:280px}}.surveys-page{display:grid;gap:1rem;margin-top:30px;margin-bottom:80px}.surveys-title{position:relative;margin:0;font-size:clamp(1.45rem,2.3vw,2rem);color:var(--primary-color);letter-spacing:-.01em}.surveys-subtitle{margin-top:.25rem;font-size:.9rem;color:var(--text-color)}.surveys-subtitle span{font-weight:600;color:var(--secondary-color)}.course-picker-btn{position:absolute;right:20px;top:20px;display:inline-flex;align-items:center;gap:6px;padding:.5rem .75rem;font-size:.9rem;background-color:var(--primary-color);color:var(--neutral-color);border:none;border-radius:8px;box-shadow:0 1px color-mix(in srgb,var(--foundation-color) 30%,transparent);cursor:pointer;transition:.3s ease}.course-picker-btn:hover{background:var(--tint-color);color:var(--foundation-color);box-shadow:0 1px 5px color-mix(in srgb,var(--foundation-color) 30%,transparent)}.course-picker-overlay{position:fixed;inset:0;z-index:100;background:color-mix(in srgb,var(--primary-color) 45%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}.course-picker-modal{width:100%;max-width:400px;background:var(--neutral-color);border:1px solid var(--soft-color);border-radius:14px;padding:1.25rem;box-shadow:0 18px 40px color-mix(in srgb,var(--secondary-color) 14%,transparent);z-index:500!important}.course-picker-header h2{margin-bottom:.5rem;font-size:1.25rem;color:var(--foundation-color);font-weight:600}.course-picker-search{display:flex;justify-content:space-around;align-items:center}.course-picker-search input{width:100%;padding:.6rem .75rem;border-radius:10px;border:1px solid var(--soft-color);background:var(--neutral-color);color:var(--secondary-color)}.course-picker-search input::placeholder{color:var(--text-color)}.course-picker-search-btn{margin-left:.75rem;padding:.55rem .9rem;background:var(--secondary-color);color:var(--neutral-color);border:1px solid var(--secondary-color);border-radius:10px;box-shadow:0 1px 2px color-mix(in srgb,var(--secondary-color) 12%,transparent);cursor:pointer;transition:.3s ease}.course-picker-search-btn:hover{background:var(--primary-color);border-color:var(--primary-color)}.course-picker-search-results{display:grid;gap:.55rem;margin-top:.85rem;padding:.8rem;border:1px solid var(--soft-color);border-radius:12px;background:var(--neutral-color)}.course-picker-search-summary,.course-picker-search-empty{margin:0;font-size:.82rem;color:var(--text-color)}.course-picker-results-list{display:grid;gap:.5rem;max-height:180px;overflow:auto;padding-right:.15rem}.course-picker-result-item{width:100%;display:grid;gap:.2rem;text-align:left;padding:.7rem .75rem;border-radius:10px;border:1px solid var(--soft-color);background:var(--neutral-color);color:var(--secondary-color);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.course-picker-result-item:hover{border-color:var(--secondary-color);box-shadow:0 8px 18px color-mix(in srgb,var(--secondary-color) 10%,transparent);transform:translateY(-1px)}.course-picker-result-item strong{font-size:.9rem;font-weight:700}.course-picker-result-item span{font-size:.78rem;color:var(--text-color)}.course-picker-filters{display:flex;justify-content:center;align-items:center;border-top:1px solid var(--soft-color);border-bottom:1px solid var(--soft-color);border-radius:10px;padding:.75rem;margin-top:1rem;margin-bottom:.75rem}.course-picker-filters span{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-color);text-align:center}.course-picker-fields{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.course-picker-field-group{position:relative;display:grid;gap:.45rem}.course-picker-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.72rem .9rem;border-radius:12px;border:1px solid var(--soft-color);background:linear-gradient(180deg,var(--neutral-color) 0%,var(--tint-color) 100%);color:var(--secondary-color);font-size:.9rem;cursor:pointer;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--secondary-color) 4%,transparent);transition:.2s ease}.course-picker-dropdown-trigger:hover{border-color:var(--soft-color)}.course-picker-dropdown-trigger:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--secondary-color) 12%,transparent)}.course-picker-dropdown-trigger.is-disabled{opacity:.55;cursor:not-allowed}.course-picker-dropdown-trigger.is-disabled:hover{border-color:var(--soft-color)}.course-picker-dropdown-caret{font-size:.8rem;color:var(--text-color)}.course-picker-dropdown-menu{position:absolute;z-index:5;top:calc(100% + .45rem);left:0;right:0;display:grid;gap:.25rem;max-height:220px;overflow:auto;padding:.45rem;border:1px solid var(--soft-color);border-radius:12px;background:var(--neutral-color);box-shadow:0 14px 28px color-mix(in srgb,var(--secondary-color) 12%,transparent)}.course-picker-dropdown-item{width:100%;border:none;background:transparent;color:var(--foundation-color);text-align:left;padding:.6rem .7rem;border-radius:10px;cursor:pointer;transition:background-color .18s ease,color .18s ease}.course-picker-dropdown-item:hover{background:var(--secondary-color);color:var(--neutral-color)}.course-picker-dropdown-item.is-selected{background:color-mix(in srgb,var(--secondary-color) 78%,transparent);color:var(--neutral-color)}.course-picker-dropdown-empty{padding:.6rem .7rem;font-size:.85rem;color:var(--text-color)}.course-picker-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem}.course-picker-cancel{color:var(--muted-color);background:var(--neutral-color);border:1px solid var(--soft-color);padding:.45rem .8rem;border-radius:10px;cursor:pointer;transition:.3s ease}.course-picker-cancel:hover{background:var(--tint-color);border-color:var(--tint-color)}.course-picker-apply{background:var(--secondary-color);color:var(--neutral-color);border:1px solid var(--secondary-color);padding:.45rem .8rem;border-radius:10px;cursor:pointer;transition:.3s ease}.course-picker-apply:hover{background:var(--primary-color);border-color:var(--primary-color)}.course-detail-view{display:flex;flex-direction:column;gap:1.1rem;padding:1.2rem;border-radius:14px;border:1px solid var(--soft-color);background:linear-gradient(180deg,var(--neutral-color) 0%,var(--tint-color) 100%);box-shadow:0 2px 10px color-mix(in srgb,var(--secondary-color) 6%,transparent)}.course-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem;flex-wrap:wrap}.course-detail-kicker{font-size:.75rem;color:var(--text-color);text-transform:uppercase;letter-spacing:.12em;font-weight:700}.section-heading{margin:0;color:var(--secondary-color);font-size:1.1rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.section-note{margin:.2rem 0 0;color:var(--text-color);font-size:.88rem;text-transform:none;line-height:1.5}.course-back-btn{display:inline-flex;align-items:center;gap:6px;padding:.55rem .9rem;font-size:.85rem;background:var(--secondary-color);color:var(--neutral-color);border:1px solid var(--secondary-color);border-radius:10px;box-shadow:0 1px 2px color-mix(in srgb,var(--secondary-color) 12%,transparent);cursor:pointer;transition:.3s ease}.course-back-btn:hover{background:var(--primary-color);border-color:var(--primary-color)}.course-detail-grid{display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.course-detail-grid--2{display:grid;gap:.9rem;grid-template-columns:repeat(2,1fr)}.course-detail-card{padding:1rem;border-radius:12px;border:1px solid var(--soft-color);background:var(--neutral-color);box-shadow:0 2px 8px color-mix(in srgb,var(--secondary-color) 5%,transparent);display:grid;gap:.55rem}.course-detail-card h3{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-color)}.course-detail-card p,.course-detail-card li{margin:0;color:var(--muted-color);font-size:.9rem;line-height:1.55}.course-detail-card ul{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}.course-detail-comments{display:grid;gap:.75rem;border-top:1px solid var(--soft-color);padding-top:1rem}.course-comment-card{padding:1rem;border-radius:12px;border:3px solid transparent;background:var(--neutral-color);box-shadow:0 2px 8px color-mix(in srgb,var(--secondary-color) 5%,transparent);display:grid;gap:.55rem;transition:.3s ease}.course-comment-card:hover{transform:translateY(-1px);border-top:3px solid var(--secondary-color);background:var(--tint-color);box-shadow:0 4px 12px color-mix(in srgb,var(--secondary-color) 10%,transparent)}.comment-icon{color:var(--accent-color)}.course-comment-card h3{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-color)}.course-comment-card p{margin:0;color:var(--muted-color);font-size:.9rem;line-height:1.55}.course-comment-card .comment-date{font-size:.75rem;color:var(--text-color);text-align:right}.comment-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.course-stars{display:inline-flex;align-items:center;gap:.12rem}.course-star{position:relative;display:inline-block;font-size:1.02rem;line-height:1;color:var(--soft-color)}.course-star.full{color:var(--warning-color)}.course-star.half:before{content:"★";position:absolute;left:0;top:0;width:50%;overflow:hidden;color:var(--warning-color)}.course-performance-card{padding:1rem 1rem .95rem;border-radius:14px;border:1px solid var(--soft-color);border-left:4px solid var(--secondary-color);background:var(--neutral-color);box-shadow:0 2px 8px color-mix(in srgb,var(--secondary-color) 5%,transparent);display:grid;gap:.85rem}.course-performance-kicker{margin:0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-color);font-weight:700}.course-performance-title{margin:0;font-size:2rem;line-height:1.05;letter-spacing:-.03em;color:var(--foundation-color);font-weight:500;max-width:8ch}.overall-score-ring{position:relative;display:grid;place-items:center;gap:.3rem;padding:.35rem 0 .15rem}.overall-score-ring .ring-svg{width:170px;height:170px}.overall-score-ring .ring-track,.overall-score-ring .ring-fill{fill:none;stroke-width:7}.ring-track{position:relative;stroke:var(--soft-color)}.ring-fill{position:absolute;top:10px;left:0}.overall-score-ring .ring-track{stroke:var(--soft-color)}.overall-score-ring .ring-fill{stroke:var(--foundation-color);transform:rotate(-90deg);transform-origin:50px 50px}.ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.ring-center strong{font-size:2.15rem;line-height:1;color:var(--foundation-color);font-weight:700}.ring-center span{font-size:.72rem;margin-top:.15rem;color:var(--accent-color);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.course-performance-summary{display:grid;gap:.55rem;padding-top:.35rem}.course-performance-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.85rem;color:var(--muted-color)}.course-performance-row strong{color:var(--foundation-color);font-weight:700}.support-metrics-card{padding:1rem;border-radius:12px;border:1px solid var(--soft-color);background:var(--neutral-color);box-shadow:0 2px 8px color-mix(in srgb,var(--secondary-color) 5%,transparent);display:grid;gap:.85rem}.support-metrics-card h3{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-color)}.support-metrics-list{display:grid;gap:.9rem}.support-metric-row{display:grid;gap:.35rem}.support-metric-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.88rem;color:var(--foundation-color)}.support-metric-header strong{font-size:.9rem;color:var(--secondary-color)}.support-metric-track{width:100%;height:10px;border-radius:999px;background:var(--soft-color);overflow:hidden}.support-metric-fill{height:100%;border-radius:inherit;transition:width .3s ease}.support-metric-fill.cool{background:var(--secondary-color)}.support-metric-fill.accent{background:var(--accent-color)}.error-message{margin:0;color:var(--error-text);background:var(--error-light);border:1px solid var(--error-color);border-radius:10px;padding:.6rem .75rem;font-size:.9rem}.top-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:0}.surveys-page .visual-card{max-width:100%}.faculty-satisfaction{display:grid;gap:.75rem;border-radius:16px;padding:.95rem;border:1px solid var(--soft-color);background:radial-gradient(circle at top right,color-mix(in srgb,var(--primary-color) 8%,transparent),transparent 35%),linear-gradient(180deg,var(--neutral-color) 0%,var(--tint-color) 100%);box-shadow:0 10px 24px color-mix(in srgb,var(--secondary-color) 8%,transparent)}.satisfaction-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem;border-radius:16px;padding:.95rem;border:1px solid var(--soft-color);background:radial-gradient(circle at top right,color-mix(in srgb,var(--primary-color) 8%,transparent),transparent 35%),linear-gradient(180deg,var(--neutral-color) 0%,var(--tint-color) 100%);box-shadow:0 10px 24px color-mix(in srgb,var(--secondary-color) 8%,transparent)}.faculty-satisfaction .section-heading{margin:0;color:var(--primary-color);font-size:1.02rem;text-transform:uppercase;letter-spacing:.07em}.faculty-satisfaction .section-note{margin:-.25rem 0 .2rem;font-size:.82rem;color:var(--text-color)}.faculty-satisfaction .chart-container{padding:.9rem;border-radius:14px}.satisfaction-trend-section{display:grid;gap:.85rem;border-radius:16px;padding:.95rem;border:1px solid var(--soft-color);background:var(--surface-high);box-shadow:var(--shadow-soft)}.satisfaction-trend-section>h2{margin:0;color:var(--primary-color);font-size:1.02rem;text-transform:uppercase;letter-spacing:.07em}.satisfaction-trend-section>p{margin:-.35rem 0 0;font-size:.88rem;color:var(--text-color);line-height:1.6}.satisfaction-trend-section .filters-section{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;padding:.85rem;border-radius:14px;border:1px solid var(--soft-color);background:var(--neutral-color)}.satisfaction-trend-section .filter-item{display:grid;gap:.35rem;min-width:180px;flex:1 1 180px}.satisfaction-trend-section .filter-item label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-color);font-weight:700}.satisfaction-trend-section .filter-item select{width:100%;padding:.65rem .75rem;border-radius:12px;border:1px solid var(--soft-color);background:var(--surface-high);color:var(--foundation-color);font-size:.9rem;box-shadow:none}.satisfaction-trend-section .filter-item select:focus{outline:none;border-color:var(--primary-color)}.satisfaction-trend-section .clear-filters-btn{margin-left:auto;padding:.62rem .9rem;border-radius:12px;border:1px solid var(--soft-color);background:var(--tint-color);color:var(--muted-color);cursor:pointer;transition:.3s ease;font-size:.9rem;white-space:nowrap}.satisfaction-trend-section .clear-filters-btn:hover{background:var(--soft-color)}.satisfaction-trend-section .chart-section{display:grid;gap:.75rem;padding:.9rem;border-radius:14px;border:1px solid var(--soft-color);background:var(--neutral-color);box-shadow:none}.satisfaction-trend-section .chart-section h3{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted-color)}.satisfaction-trend-section .chart-section>p{margin:-.35rem 0 0;font-size:.85rem;color:var(--text-color)}.satisfaction-trend-section .chart-wrapper{position:relative;width:100%;height:320px;min-height:320px}.satisfaction-trend-section .chart-wrapper canvas{display:block;width:100%!important;height:100%!important}.satisfaction-trend-section .table-section{display:grid;gap:.65rem;margin-top:.35rem}.satisfaction-trend-section .table-section a.export-link{justify-self:end;font-size:.85rem;color:var(--primary-color);text-decoration:none;font-weight:700}.satisfaction-trend-section .table-section a.export-link:hover{text-decoration:underline}.semester-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:12px;border:1px solid var(--soft-color)}.semester-table thead th{text-align:left;padding:.75rem .8rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-color);background:var(--tint-color);border-bottom:1px solid var(--soft-color)}.semester-table tbody td{padding:.75rem .8rem;font-size:.9rem;color:var(--foundation-color);border-bottom:1px solid var(--tint-color)}.semester-table tbody tr:last-child td{border-bottom:none}.semester-table tbody tr:hover td{background:var(--tint-color)}.semester-table td.gap-positive{color:var(--bridge-teal);font-weight:700}.semester-table td.gap-negative{color:var(--accent-color);font-weight:700}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.22rem .55rem;border-radius:999px;border:1px solid var(--soft-color);font-size:.78rem;font-weight:800;letter-spacing:.02em;white-space:nowrap}.status-badge.status-met{background:var(--info-light);color:var(--info-text)}.status-badge.status-improving{background:var(--warning-light);color:var(--warning-text)}.status-badge.status-not-met{background:var(--error-light);color:var(--error-text)}@media(max-width:760px){.surveys-page{gap:.85rem}.faculty-satisfaction,.satisfaction-trend-section{padding:.8rem}.satisfaction-trend-section .filters-section{padding:.75rem}.satisfaction-trend-section .filter-item{min-width:100%}.satisfaction-trend-section .clear-filters-btn{width:100%;margin-left:0}.satisfaction-trend-section .chart-wrapper{height:280px;min-height:280px}}.header{display:flex;align-items:flex-start;flex-direction:column;gap:10px;--small-font-size: 14px;--header-font-size: 24px}.header:after{content:"";display:block;width:70px;height:2px;background-color:var(--accent-color)}.header h4{font-size:var(--small-font-size);font-weight:500;text-transform:uppercase;color:var(--accent-color)}.header h2{font-size:var(--header-font-size);font-weight:600;color:var(--primary-color)}.pagificationContainer{width:100%;display:flex;flex-direction:column;gap:16px}.pagification{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--soft-color)}.pageInfoSection{display:flex;align-items:center;gap:16px}.pageInfo{color:var(--muted-color);font-size:.86rem;font-weight:600}.rowsPerPageControl{display:flex;align-items:center;gap:8px}.rowsPerPageControl label{color:var(--muted-color);font-weight:600;font-size:.86rem}.rowsPerPageControl select{border:1px solid var(--soft-color);border-radius:6px;padding:6px 10px;background:var(--neutral-color);color:var(--foundation-color);font-weight:600;cursor:pointer;font-size:.86rem}.pageControls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.pageBtn{min-width:34px;height:34px;border:1px solid var(--soft-color);border-radius:8px;background:var(--neutral-color);color:var(--foundation-color);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--anim-fast);font-family:var(--font-main);font-weight:600;padding:0 10px}.pageBtn:hover:not(:disabled){border-color:var(--primary-color);filter:brightness(1.1);color:#fff;background:var(--foundation-color)}.pageBtn:disabled{opacity:.5;cursor:not-allowed}.numberBtn.active{background:var(--primary-color);border-color:var(--primary-color);color:var(--neutral-color)}.jumpBtn{min-width:44px;font-size:.8rem}.ellipsis{color:var(--muted-color);font-weight:700;letter-spacing:.08em;padding:0 2px}@media(max-width:760px){.pagification{flex-direction:column;align-items:flex-start}.pageInfoSection{width:100%;flex-direction:column;align-items:flex-start;gap:8px}.pageControls{width:100%;justify-content:flex-start}}.export{display:flex;align-items:center;justify-content:center;background:#ddd;padding:10px 20px}.export-btn-area{display:flex;align-items:center;justify-content:center;gap:20px;cursor:pointer;border:none;background:none;color:inherit}.export-btn-area svg{width:20px;height:20px}.export-btn-area:focus-visible{outline:1px solid #5f5c5c;outline-offset:2px}.export .format-select-wrap{position:relative;width:20px;height:20px}.format-menu-toggle{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:none;background:none;cursor:pointer;padding:0;color:var(--muted-color)}.format-menu-toggle:focus-visible{outline:1px solid #5f5c5c;outline-offset:2px}.format-menu-toggle svg{position:absolute;top:50%;left:50%;pointer-events:none;transform:translate(-50%,-50%)}.format-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:92px;background:#fff;border:1px solid #b9b9b9;border-radius:6px;padding:4px;z-index:15}.format-menu-item{width:100%;border:none;background:none;text-align:left;padding:6px 8px;border-radius:4px;cursor:pointer;color:#222}.format-menu-item:hover{background:#efefef}.format-menu-item.active{background:#e1e1e1;font-weight:600}.export .separator{width:1px;height:20px;background:#5f5c5c;margin:0 10px}.ap-page{min-height:100vh;background-color:var(--neutral-color);font-family:var(--font-main);color:var(--foundation-color)}.ap-page--loading,.ap-page--error{display:flex;align-items:center;justify-content:center;padding:4rem;color:var(--muted-color);font-family:var(--font-main)}.ap-header{padding:40px 48px 36px}.ap-header__eyebrow{font-family:var(--font-main);font-size:.68rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--accent-color);margin-bottom:14px}.ap-header__row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.ap-header__title{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3rem);font-weight:700;line-height:1.1;color:var(--primary-color);letter-spacing:-.5px}.ap-header__import-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;border:1.5px solid var(--footer-color);background-color:var(--surface-low);font-family:var(--font-main);font-size:.86rem;font-weight:600;color:var(--foundation-color);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-soft);transition:border-color var(--anim-fast),color var(--anim-fast),background-color var(--anim-fast),transform var(--anim-fast)}.ap-header__import-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background-color:var(--error-light)}.ap-header__import-btn:active{transform:scale(.97)}.ap-body{display:grid;grid-template-columns:1fr 360px;gap:24px;padding:0 48px 48px;align-items:start}.ap-right{display:flex;flex-direction:column;gap:20px}@media(max-width:900px){.ap-body{grid-template-columns:1fr;padding:0 20px 40px}.ap-header{padding:28px 20px 24px}}.session-form-card{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:16px;box-shadow:var(--shadow-soft);padding:28px}.session-form-card__top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.session-form-card__title-row{display:flex;align-items:center;gap:10px}.session-form-card__icon-wrap{width:34px;height:34px;border-radius:8px;background-color:var(--error-light);display:flex;align-items:center;justify-content:center;color:var(--accent-color);flex-shrink:0}.session-form-card__title{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--primary-color);letter-spacing:-.2px}.toggle-wrap{display:flex;align-items:center;gap:10px;cursor:pointer;flex-shrink:0}.toggle-input{display:none}.toggle-track{position:relative;width:42px;height:24px;border-radius:999px;background-color:var(--soft-color);transition:background-color var(--anim-fast);flex-shrink:0}.toggle-input:checked~.toggle-track{background-color:var(--accent-color)}.toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background-color:var(--neutral-color);box-shadow:0 1px 4px #00000040;transition:transform var(--anim-fast)}.toggle-input:checked~.toggle-track .toggle-thumb{transform:translate(18px)}.toggle-label{font-family:var(--font-main);font-size:.65rem;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--muted-color);line-height:1.3}.field-group{display:flex;flex-direction:column}.field-label{display:block;font-family:var(--font-main);font-size:.65rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted-color);margin-bottom:8px}.field-input{width:100%;box-sizing:border-box;background-color:var(--tint-color);border:1px solid var(--footer-color);border-radius:8px;padding:9px 12px;font-family:var(--font-main);font-size:.875rem;color:var(--foundation-color);outline:none;transition:border-color var(--anim-fast),box-shadow var(--anim-fast)}.field-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #b22b1d1a}.status-stepper{display:flex;align-items:center;gap:0;flex-wrap:wrap;row-gap:8px}.status-stepper__line{flex:1;height:2px;background-color:var(--footer-color);min-width:10px;transition:background-color var(--anim-fast)}.status-stepper__line--done{background-color:var(--accent-color)}.status-stepper__step{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:none;cursor:pointer;padding:0 4px}.status-stepper__dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--footer-color);background-color:var(--neutral-color);transition:all var(--anim-fast)}.status-stepper__step--past .status-stepper__dot{background-color:var(--accent-color);border-color:var(--accent-color)}.status-stepper__step--active .status-stepper__dot{background-color:var(--accent-color);border-color:var(--accent-color);box-shadow:0 0 0 3px #b22b1d33}.status-stepper__label{font-family:var(--font-main);font-size:.6rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--muted-color);transition:color var(--anim-fast)}.status-stepper__step--active .status-stepper__label{color:var(--accent-color)}.session-type-pills{display:flex;gap:8px}.session-type-pill{padding:8px 22px;border-radius:8px;border:1.5px solid var(--footer-color);background-color:var(--tint-color);font-family:var(--font-main);font-size:.82rem;font-weight:600;color:var(--muted-color);cursor:pointer;transition:all var(--anim-fast)}.session-type-pill:hover{background-color:var(--foundation-color);border-color:var(--foundation-color);color:var(--accent-color)}.session-type-pill--active{background-color:var(--accent-color);border-color:var(--accent-color);color:var(--neutral-color)}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.controls-row{display:grid;grid-template-columns:auto 1fr;gap:28px;margin-bottom:24px;align-items:start}.counter{display:inline-flex;align-items:center;border:1px solid var(--footer-color);border-radius:8px;overflow:hidden;width:fit-content}.counter__btn{background-color:var(--tint-color);border:none;padding:8px 14px;cursor:pointer;color:var(--muted-color);display:flex;align-items:center;transition:background-color var(--anim-fast),color var(--anim-fast)}.counter__btn:hover{background-color:var(--soft-color);color:var(--foundation-color)}.counter__value{min-width:36px;text-align:center;font-family:var(--font-data);font-size:.95rem;font-weight:600;color:var(--primary-color);border-left:1px solid var(--footer-color);border-right:1px solid var(--footer-color);padding:8px 4px}.level-pills{display:flex;gap:8px;flex-wrap:wrap}.level-pill{padding:6px 14px;border-radius:999px;border:1.5px solid var(--footer-color);background-color:var(--tint-color);font-family:var(--font-main);font-size:.75rem;font-weight:600;color:var(--muted-color);cursor:pointer;transition:all var(--anim-fast)}.level-pill:hover{border-color:var(--accent-color);color:var(--accent-color)}.level-pill--active{background-color:var(--accent-color);border-color:var(--accent-color);color:var(--neutral-color)}.level-pill--active:hover{background-color:var(--foundation-color);border-color:var(--foundation-color);color:var(--neutral-color)}.capacity-panel{background-color:var(--tint-color);border:1px solid var(--footer-color);border-radius:12px;padding:16px;margin-bottom:20px}.capacity-panel__title{display:flex;align-items:center;gap:6px;font-family:var(--font-main);font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted-color);margin-bottom:12px}.capacity-panel__rows{display:flex;flex-direction:column;gap:8px}.capacity-panel__row{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-main);font-size:.82rem;color:var(--foundation-color)}.capacity-panel__row span{color:var(--muted-color)}.capacity-panel__row strong{font-weight:600;color:var(--primary-color)}.capacity-panel__val--muted{color:var(--muted-color)!important}.capacity-panel__val--accent{color:var(--accent-color)!important}.capacity-panel__val--warn{color:#e67e22!important}.capacity-warnings{margin-top:12px;display:flex;flex-direction:column;gap:6px}.capacity-warning{display:flex;align-items:flex-start;gap:6px;font-family:var(--font-main);font-size:.76rem;color:#e67e22;background-color:#e67e2214;border-radius:6px;padding:8px 10px}.exempt-section{border-top:1px solid var(--footer-color);padding-top:20px;margin-top:4px;margin-bottom:20px}.exempt-tabs{display:flex;gap:4px;margin-bottom:16px;background-color:var(--tint-color);border-radius:8px;padding:4px;width:fit-content}.exempt-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:6px;border:none;background:none;font-family:var(--font-main);font-size:.8rem;font-weight:600;color:var(--muted-color);cursor:pointer;transition:all var(--anim-fast)}.exempt-tab:hover{color:var(--primary-color)}.exempt-tab--active{background-color:var(--neutral-color);color:var(--primary-color);box-shadow:0 1px 4px #00000014}.exempt-tab__badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background-color:var(--accent-color);color:var(--neutral-color);font-size:.65rem;font-weight:700}.exempt-selector{display:flex;flex-direction:column;gap:10px}.exempt-selector__chips{display:flex;flex-wrap:wrap;gap:6px}.exempt-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background-color:var(--error-light);color:var(--error-text);font-family:var(--font-main);font-size:.75rem;font-weight:600}.exempt-chip__remove{background:none;border:none;cursor:pointer;color:var(--accent-color);display:flex;align-items:center;padding:1px;opacity:.7;transition:opacity var(--anim-fast)}.exempt-chip__remove:hover{opacity:1}.exempt-selector__search{margin-bottom:0}.exempt-selector__list{max-height:200px;overflow-y:auto;border:1px solid var(--footer-color);border-radius:8px;display:flex;flex-direction:column}.exempt-selector__empty{padding:12px 14px;font-size:.8rem;color:var(--soft-color);font-family:var(--font-main)}.exempt-selector__row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;border:none;border-bottom:1px solid var(--footer-color);background:none;font-family:var(--font-main);font-size:.85rem;color:var(--foundation-color);cursor:pointer;text-align:left;transition:background-color var(--anim-fast)}.exempt-selector__row:last-child{border-bottom:none}.exempt-selector__row:hover{background-color:var(--tint-color)}.exempt-selector__row--active{background-color:var(--error-light);color:var(--error-text)}.exempt-selector__row-label{flex:1}.exempt-selector__check{color:var(--accent-color);flex-shrink:0}.exempt-selector__plus{color:var(--soft-color);flex-shrink:0}.validation-errors{background-color:var(--error-light);border:1px solid rgba(178,43,29,.2);border-radius:10px;padding:14px;margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.validation-error{display:flex;align-items:center;gap:6px;font-family:var(--font-main);font-size:.78rem;color:var(--accent-color)}.publish-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background-color:var(--accent-color);color:var(--neutral-color);border:none;border-radius:10px;padding:13px;font-family:var(--font-main);font-size:.88rem;font-weight:700;cursor:pointer;letter-spacing:.3px;margin-top:4px;transition:filter var(--anim-fast),transform var(--anim-fast)}.publish-btn:hover{filter:brightness(1.12)}.publish-btn:active{transform:scale(.98)}.publish-success{display:flex;align-items:center;gap:8px;background-color:#22a65a1a;color:#1f8a48;border:1px solid rgba(34,166,90,.2);border-radius:10px;padding:13px 16px;font-family:var(--font-main);font-size:.85rem;font-weight:600;margin-top:4px}.modal-overlay{position:fixed;inset:0;background-color:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:18px;width:min(520px,92vw);box-shadow:0 24px 60px #00000040;overflow:hidden}.modal__header{display:flex;align-items:center;gap:10px;padding:20px 24px 16px;border-bottom:1px solid var(--footer-color);color:var(--primary-color)}.modal__header h3{flex:1;font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--primary-color)}.modal__close{background:none;border:none;cursor:pointer;color:var(--muted-color);display:flex;padding:4px;transition:color var(--anim-fast)}.modal__close:hover{color:var(--foundation-color)}.modal__body{padding:20px 24px}.modal__rows{display:flex;flex-direction:column;gap:10px}.modal__row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background-color:var(--tint-color);border-radius:8px}.modal__row-key{font-family:var(--font-main);font-size:.78rem;color:var(--muted-color)}.modal__row-val{font-family:var(--font-main);font-size:.82rem;font-weight:600;color:var(--primary-color)}.modal__footer{display:flex;gap:10px;padding:16px 24px 20px;border-top:1px solid var(--footer-color)}.modal__btn{flex:1;padding:11px;border-radius:8px;border:none;font-family:var(--font-main);font-size:.86rem;font-weight:600;cursor:pointer;transition:all var(--anim-fast)}.modal__btn--ghost{background-color:var(--tint-color);border:1px solid var(--footer-color);color:var(--muted-color)}.modal__btn--ghost:hover{background-color:var(--soft-color);color:var(--foundation-color)}.modal__btn--primary{background-color:var(--accent-color);color:var(--neutral-color)}.modal__btn--primary:hover{filter:brightness(1.12)}.modal__btn--primary:disabled{opacity:.5;cursor:not-allowed}.import-modal{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:20px;width:min(680px,94vw);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 28px 70px #00000047;overflow:hidden}.import-modal--large{width:min(1100px,98vw);max-height:96vh}.import-modal__header{display:flex;align-items:center;justify-content:space-between;padding:22px 26px 18px;border-bottom:1px solid var(--footer-color);flex-shrink:0}.import-modal__header-left{display:flex;align-items:center;gap:14px}.import-modal__icon-wrap{width:40px;height:40px;border-radius:10px;background:var(--gradient-visual-soul);display:flex;align-items:center;justify-content:center;color:var(--neutral-color);flex-shrink:0}.import-modal__title{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--primary-color);letter-spacing:-.2px;margin-bottom:2px}.import-modal__subtitle{font-family:var(--font-main);font-size:.72rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted-color)}.import-modal__body{overflow-y:auto;padding:26px;flex:1}.import-instructions{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px}.import-row-delete{background:none;border:none;cursor:pointer;color:var(--muted-color);padding:6px;border-radius:6px;transition:background-color var(--anim-fast),color var(--anim-fast)}.import-row-delete:hover{background-color:var(--tint-color);color:var(--error-text)}.instructions-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--border-color)}.instructions-header h4{margin:0;font-size:.95rem;font-weight:700;color:var(--primary-color)}.instructions-content{display:flex;flex-direction:column;gap:16px}.instructions-intro{font-size:.85rem;color:var(--primary-color);margin:0;font-weight:600}.instructions-table{display:flex;flex-direction:column;gap:0;border:1px solid var(--border-color);border-radius:6px;overflow:hidden;font-size:.8rem}.instr-row{display:grid;grid-template-columns:1fr .8fr 1.5fr .9fr;gap:1px;background-color:var(--border-color);border:none}.instr-row--header{background-color:var(--background-secondary)}.instr-row--header .instr-col{background-color:var(--background-secondary);font-weight:700;color:var(--muted-color);text-transform:uppercase;letter-spacing:.3px}.instr-col{padding:10px 12px;background-color:#fff;color:var(--primary-color);line-height:1.4}.instr-col--name{font-weight:600;color:var(--accent-color)}.instr-col--type{font-family:monospace;font-size:.75rem;color:#666}.instr-col--desc{font-size:.78rem;color:var(--muted-color)}.instr-col--ex{font-family:monospace;font-size:.75rem;color:#2196f3;background-color:#2196f314;border-radius:2px;padding:4px 6px!important}.instructions-notes{background-color:#2196f314;border-left:3px solid #2196f3;padding:12px 14px;border-radius:4px}.instructions-notes h5{margin:0 0 8px;font-size:.82rem;font-weight:700;color:var(--primary-color)}.instructions-notes ul{margin:0;padding-left:18px}.instructions-notes li{font-size:.78rem;color:var(--primary-color);margin-bottom:4px;line-height:1.4}.instructions-notes strong{font-weight:700;color:var(--foundation-color)}.import-actions{display:flex;gap:10px;margin-top:12px}.import-files-list{background:#fff;border-radius:8px;padding:16px;border:1px solid var(--border-color)}.import-files-title{margin:0 0 12px;font-size:.85rem;font-weight:700;color:var(--primary-color)}.import-file-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background-color:var(--background-secondary);border-radius:6px;margin-bottom:8px;border-left:3px solid var(--accent-color)}.import-file-icon{color:var(--accent-color);flex-shrink:0}.import-file-details{flex:1}.import-file-name{margin:0;font-size:.85rem;font-weight:600;color:var(--primary-color)}.import-file-size{margin:2px 0 0;font-size:.75rem;color:var(--muted-color)}.import-file-remove{width:24px;height:24px;border:none;background-color:#f443361a;color:#f44336;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.import-file-remove:hover{background-color:#f44336;color:#fff}.import-error{color:#f44336;font-size:.8rem;margin-top:8px}.import-pipeline-idle__sub{font-family:var(--font-main);font-size:.83rem;color:var(--muted-color);line-height:1.6;margin-bottom:18px}.import-pipeline-idle__error{display:flex;align-items:center;gap:6px;color:var(--accent-color);font-family:var(--font-main);font-size:.76rem;margin-top:12px}.import-pipeline-idle__preview-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background-color:var(--accent-color);color:var(--neutral-color);border:none;border-radius:8px;padding:12px;font-family:var(--font-main);font-size:.86rem;font-weight:600;cursor:pointer;margin-top:16px;transition:filter var(--anim-fast),transform var(--anim-fast)}.import-pipeline-idle__preview-btn:hover{filter:brightness(1.12)}.import-pipeline-idle__preview-btn:active{transform:scale(.98)}.import-pipeline-preview{display:flex;flex-direction:column;gap:0}.import-pipeline-done{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;gap:12px}.import-pipeline-done__icon{width:72px;height:72px;border-radius:50%;background-color:#22a65a1f;display:flex;align-items:center;justify-content:center;color:#22a65a;margin-bottom:8px}.import-pipeline-done__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--primary-color);letter-spacing:-.3px}.import-pipeline-done__sub{font-family:var(--font-main);font-size:.86rem;color:var(--muted-color)}.import-pipeline-done__actions{display:flex;gap:10px;margin-top:12px;width:100%;max-width:340px}.drop-zone{border:1.5px dashed var(--footer-color);border-radius:14px;padding:40px 24px;text-align:center;cursor:pointer;outline:none;background-color:var(--tint-color);transition:border-color var(--anim-fast),background-color var(--anim-fast)}.drop-zone:hover,.drop-zone:focus{border-color:var(--accent-color);background-color:var(--error-light)}.drop-zone--over{border-color:var(--accent-color);background-color:var(--error-light)}.drop-zone__icon{display:block;margin:0 auto 12px;color:var(--muted-color);transition:color var(--anim-fast)}.drop-zone:hover .drop-zone__icon,.drop-zone--over .drop-zone__icon{color:var(--accent-color)}.drop-zone__text{font-family:var(--font-main);font-size:.82rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--foundation-color);margin-bottom:4px}.drop-zone__sub{font-family:var(--font-main);font-size:.67rem;letter-spacing:.8px;text-transform:uppercase;color:var(--muted-color)}.file-list{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-direction:column;gap:8px}.file-list__item{display:flex;align-items:center;gap:10px;padding:10px 14px;background-color:var(--tint-color);border:1px solid var(--footer-color);border-radius:10px}.file-list__icon{flex-shrink:0}.file-list__icon--pending{color:var(--muted-color)}.file-list__icon--uploading{color:var(--accent-color)}.file-list__icon--done{color:#22a65a}.file-list__icon--error{color:var(--accent-color)}.file-list__info{flex:1;min-width:0}.file-list__row{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.file-list__name{font-family:var(--font-main);font-size:.82rem;color:var(--foundation-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;padding-right:8px}.file-list__size{font-family:var(--font-data);font-size:.7rem;color:var(--muted-color);flex-shrink:0}.file-list__track{height:3px;background-color:var(--footer-color);border-radius:2px;overflow:hidden}.file-list__fill{height:100%;border-radius:2px;transition:width .3s ease}.file-list__fill--pending{width:0!important}.file-list__fill--uploading{background-color:var(--accent-color)}.file-list__fill--done{background-color:#22a65a}.file-list__fill--error{background-color:var(--accent-color)}.file-list__remove{background:none;border:none;cursor:pointer;color:var(--muted-color);display:flex;align-items:center;padding:2px;flex-shrink:0;transition:color var(--anim-fast)}.file-list__remove:hover{color:var(--accent-color)}.import-meta{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}.import-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-family:var(--font-main);font-size:.72rem;font-weight:700}.import-badge--total{background-color:var(--tint-color);color:var(--muted-color)}.import-badge--error{background-color:var(--error-light);color:var(--accent-color)}.import-badge--ok{background-color:#22a65a1a;color:#1f8a48}.import-meta__hint{font-family:var(--font-main);font-size:.72rem;color:var(--muted-color);font-style:italic}.import-table-wrap{overflow-x:auto;border:1px solid var(--footer-color);border-radius:10px;max-height:320px;overflow-y:auto}.import-table{width:100%;border-collapse:collapse;font-family:var(--font-main);font-size:.8rem}.import-table thead th{position:sticky;top:0;background-color:var(--tint-color);padding:10px 12px;text-align:left;font-size:.65rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--muted-color);border-bottom:1px solid var(--footer-color);white-space:nowrap}.import-table tbody td{padding:9px 12px;border-bottom:1px solid var(--footer-color);color:var(--foundation-color);vertical-align:middle;cursor:pointer;transition:background-color var(--anim-fast)}.import-table tbody td:hover{background-color:var(--tint-color)}.import-table__row--error td{background-color:#b22b1d0a}.import-table__num{color:var(--muted-color);font-size:.72rem;min-width:28px;cursor:default}.import-table__empty{color:var(--soft-color);font-style:italic}.import-table__edit{border:1px solid var(--accent-color);border-radius:4px;padding:3px 6px;font-family:var(--font-main);font-size:.8rem;color:var(--foundation-color);background-color:var(--neutral-color);outline:none;width:100%;box-sizing:border-box}.import-table__more{font-family:var(--font-main);font-size:.75rem;color:var(--muted-color);padding:10px 12px;border-top:1px solid var(--footer-color)}.import-row-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:600;white-space:nowrap}.import-row-badge--error{background-color:var(--error-light);color:var(--accent-color)}.import-row-badge--ok{background-color:#22a65a1a;color:#1f8a48}.import-actions{display:flex;gap:10px;margin-top:18px}.import-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;border-radius:8px;font-family:var(--font-main);font-size:.84rem;font-weight:600;cursor:pointer;transition:all var(--anim-fast);border:none}.import-btn--ghost{background-color:var(--tint-color);border:1px solid var(--footer-color);color:var(--muted-color)}.import-btn--ghost:hover{background-color:var(--soft-color);color:var(--foundation-color)}.import-btn--primary{background-color:var(--accent-color);color:var(--neutral-color)}.import-btn--primary:hover{filter:brightness(1.1)}.import-btn--primary:disabled{opacity:.45;cursor:not-allowed;filter:none}.stat-card{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:16px;box-shadow:var(--shadow-soft);padding:24px}.stat-card__label{font-family:var(--font-main);font-size:.65rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-color);margin-bottom:6px}.stat-card__headline{display:flex;align-items:baseline;gap:10px}.stat-card__big{font-family:var(--font-display);font-size:2.8rem;font-weight:700;color:var(--primary-color);letter-spacing:-1px;line-height:1}.stat-card__delta{font-family:var(--font-main);font-size:.82rem;font-weight:700}.stat-card__delta--up{color:var(--accent-color)}.stat-card__delta--down{color:var(--info-color)}.stat-card__metrics,.stat-card__history{display:grid;gap:12px;margin-top:16px}.stat-card__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card__history{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card__metric,.stat-card__history-item{background-color:var(--tint-color);border:1px solid var(--footer-color);border-radius:12px;padding:14px 16px}.stat-card__metric-label,.stat-card__history-label{display:block;font-family:var(--font-main);font-size:.64rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted-color);margin-bottom:8px}.stat-card__metric-value,.stat-card__history-value{display:block;font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--primary-color);line-height:1.1}@media(max-width:900px){.stat-card__metrics,.stat-card__history{grid-template-columns:1fr}}.analytics-section{padding:0 48px 40px}.analytics-section__header{margin-bottom:18px}.analytics-section__eyebrow{font-family:var(--font-main);font-size:.68rem;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent-color);margin-bottom:6px}.analytics-section__title{font-family:var(--font-display);font-size:clamp(1.35rem,2vw,1.8rem);color:var(--primary-color);line-height:1.1}.analytics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media(max-width:1100px){.analytics-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.analytics-grid{grid-template-columns:1fr 1fr}}.analytics-card{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:0 0 14px 14px;padding:18px 16px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.analytics-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.analytics-card--blue:before{background-color:#3b82f6}.analytics-card--green:before{background-color:#22a65a}.analytics-card--red:before{background-color:var(--accent-color)}.analytics-card--accent:before{background-color:#f59e0b}.analytics-card--purple:before{background-color:#8b5cf6}.analytics-card--gold:before{background-color:#d97706}.analytics-card--teal:before{background-color:#0d9488}.analytics-card--slate:before{background-color:#64748b}.analytics-card__icon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;background-color:var(--tint-color);color:var(--muted-color)}.analytics-card__val{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--primary-color);letter-spacing:-.5px;line-height:1;margin-bottom:6px}.analytics-card__label{font-family:var(--font-main);font-size:.68rem;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--muted-color)}.session-history-section{padding:0 48px 56px}.session-history-section__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px;flex-wrap:wrap}.session-history-section__eyebrow{font-family:var(--font-main);font-size:.68rem;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent-color);margin-bottom:8px}.session-history-section__title{font-family:var(--font-display);font-size:clamp(1.35rem,2vw,1.8rem);color:var(--primary-color);line-height:1.1}.session-history-section__actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex-shrink:0}.session-history-section__subtitle{font-family:var(--font-main);font-size:.88rem;color:var(--muted-color);text-align:right;max-width:320px}.session-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:1200px){.session-cards-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.session-cards-grid{grid-template-columns:1fr}}.session-card{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:14px;padding:18px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:14px;transition:box-shadow var(--anim-fast),transform var(--anim-fast)}.session-card:hover{box-shadow:0 8px 28px #0000001a;transform:translateY(-2px)}.session-card__header{display:flex;align-items:flex-start;justify-content:space-between}.session-card__meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.session-card__status{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-family:var(--font-main);font-size:.68rem;font-weight:700;letter-spacing:.4px}.session-card__status--open{background-color:#22a65a1f;color:#1f8a48}.session-card__status--closed{background-color:#78828c24;color:var(--muted-color)}.session-card__status--archived{background-color:#64748b1f;color:#64748b}.session-card__status--scheduled{background-color:#3b82f61f;color:#2563eb}.session-card__status--draft{background-color:#f59e0b1f;color:#b45309}.session-card__type-badge{display:inline-flex;padding:3px 10px;border-radius:999px;font-family:var(--font-main);font-size:.68rem;font-weight:600;background-color:var(--tint-color);color:var(--muted-color);border:1px solid var(--footer-color)}.session-card__body{display:flex;flex-direction:column;gap:6px}.session-card__semester{font-family:var(--font-display);font-size:.96rem;font-weight:600;color:var(--primary-color);letter-spacing:-.2px}.session-card__dates{display:flex;align-items:center;gap:6px;font-family:var(--font-main);font-size:.75rem;color:var(--muted-color)}.session-card__dates-sep{color:var(--soft-color)}.session-card__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.session-card__stat{display:flex;flex-direction:column;align-items:center;padding:10px 4px;background-color:var(--tint-color);border-radius:8px;border:1px solid var(--footer-color)}.session-card__stat-val{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--primary-color);line-height:1;margin-bottom:4px}.session-card__stat-val--green{color:#22a65a}.session-card__stat-val--red{color:var(--accent-color)}.session-card__stat-val--accent{color:#f59e0b}.session-card__stat-label{font-family:var(--font-main);font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted-color)}.session-card__footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.session-card__bar-wrap{flex:1;display:flex;flex-direction:column;gap:4px}.session-card__bar{height:4px;background-color:var(--footer-color);border-radius:2px;overflow:hidden}.session-card__bar-fill{height:100%;background-color:#22a65a;border-radius:2px;transition:width .6s ease}.session-card__bar-label{font-family:var(--font-main);font-size:.65rem;color:var(--muted-color)}.session-card__resolution{display:flex;align-items:center;gap:4px;font-family:var(--font-main);font-size:.7rem;color:var(--muted-color);white-space:nowrap}.session-actions{position:relative}.session-actions__trigger{background:none;border:none;cursor:pointer;color:var(--muted-color);display:flex;align-items:center;padding:4px;border-radius:6px;transition:background-color var(--anim-fast),color var(--anim-fast)}.session-actions__trigger:hover{background-color:var(--tint-color);color:var(--foundation-color)}.session-actions__menu{position:absolute;top:calc(100% + 4px);right:0;background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:10px;box-shadow:0 8px 24px #00000024;min-width:180px;z-index:50;overflow:hidden}.session-actions__item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;border:none;background:none;font-family:var(--font-main);font-size:.82rem;color:var(--foundation-color);cursor:pointer;text-align:left;transition:background-color var(--anim-fast);border-bottom:1px solid var(--footer-color)}.session-actions__item:last-child{border-bottom:none}.session-actions__item:hover{background-color:var(--tint-color)}@media(max-width:900px){.analytics-section,.session-history-section{padding:0 20px 40px}.session-history-section__header{flex-direction:column}.session-history-section__actions{align-items:flex-start;width:100%}.session-history-section__subtitle{text-align:left;max-width:100%}.controls-row{grid-template-columns:1fr}.ap-header__row{align-items:flex-start;flex-direction:column}}.appeals-search-section{padding:40px 48px;border-top:1px solid var(--border-color)}.appeals-search-header{margin-bottom:24px}.appeals-search-eyebrow{font-family:var(--font-main);font-size:.68rem;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent-color);margin-bottom:8px}.appeals-search-title{font-family:var(--font-display);font-size:clamp(1.35rem,2vw,1.8rem);color:var(--primary-color);line-height:1.1}.appeals-search-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;padding:16px;background-color:var(--background-secondary);border-radius:8px}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group--full{grid-column:1 / -1}.filter-label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--muted-color);letter-spacing:.5px}.filter-select,.filter-input{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;font-family:var(--font-main);color:var(--primary-color);background-color:#fff}.filter-select:focus,.filter-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1)}.appeals-loading,.appeals-empty{text-align:center;padding:40px 20px;color:var(--muted-color);font-size:.95rem}.appeals-table{width:100%;border-collapse:collapse;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.appeals-table table{width:100%;border-collapse:collapse}.appeals-table thead{background-color:var(--background-secondary);border-bottom:1px solid var(--border-color)}.appeals-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:var(--muted-color)}.appeals-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s ease}.appeals-table tbody tr:hover{background-color:var(--background-secondary)}.appeals-table td{padding:12px 16px;font-size:.9rem;color:var(--primary-color)}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-badge--pending{background-color:#ff980026;color:#ff9800}.status-badge--in_progress{background-color:#2196f326;color:#2196f3}.status-badge--approved{background-color:#4caf5026;color:#4caf50}.status-badge--rejected{background-color:#f4433626;color:#f44336}.appeals-action-btn{padding:6px 12px;border:1px solid var(--border-color);border-radius:4px;background-color:#fff;color:var(--primary-color);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.appeals-action-btn:hover{background-color:var(--accent-color);color:#fff;border-color:var(--accent-color)}.survey-page{min-height:100vh;background-color:var(--neutral-color);font-family:var(--font-main);color:var(--foundation-color);padding:0}.survey-page__header{padding:40px 48px 32px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}.survey-page__eyebrow{font-family:var(--font-main);font-size:.68rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--accent-color);margin:0 0 14px}.survey-page__title{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3rem);font-weight:700;line-height:1.1;margin:0 0 10px;color:var(--primary-color);letter-spacing:-.5px}.survey-page__subtitle{margin:0;color:var(--muted-color);max-width:720px;font-family:var(--font-secondary)}.survey-primary-btn,.survey-secondary-btn,.survey-danger-btn,.survey-icon-btn,.survey-toggle,.survey-select,.survey-search input,.survey-field input,.survey-field textarea,.survey-field select,.survey-selector input{font:inherit;font-family:var(--font-main)}.survey-primary-btn,.survey-secondary-btn,.survey-danger-btn{border-radius:10px;padding:10px 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.86rem;font-weight:600;cursor:pointer;transition:filter var(--anim-fast),transform var(--anim-fast),background-color var(--anim-fast),border-color var(--anim-fast),color var(--anim-fast);border:none}.survey-primary-btn{background-color:var(--accent-color);color:var(--neutral-color)}.survey-primary-btn:hover{filter:brightness(1.12)}.survey-primary-btn:active{transform:scale(.98)}.survey-primary-btn:disabled,.survey-secondary-btn:disabled,.survey-danger-btn:disabled{opacity:.5;cursor:not-allowed;filter:none;transform:none}.survey-secondary-btn{background-color:var(--tint-color);border:1px solid var(--footer-color);color:var(--muted-color)}.survey-secondary-btn:hover{background-color:var(--soft-color);color:var(--foundation-color)}.survey-danger-btn{background-color:var(--error-light);border:1px solid rgba(178,43,29,.2);color:var(--accent-color)}.survey-danger-btn:hover{background-color:var(--accent-color);color:var(--neutral-color)}.survey-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0 48px 24px}.survey-stat-card{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:16px;padding:24px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow-soft)}.survey-stat-card__icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background-color:var(--info-light);color:var(--info-color);flex-shrink:0}.survey-stat-card__icon--green{background-color:var(--success-light);color:var(--success-text)}.survey-stat-card__icon--amber{background-color:var(--warning-light);color:var(--warning-text)}.survey-stat-card__icon--purple{background-color:#6d49c61a;color:#6d49c6}.survey-stat-card__label{font-family:var(--font-main);font-size:.65rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-color);margin:0 0 6px}.survey-stat-card h3{font-family:var(--font-display);margin:0;font-size:2rem;font-weight:700;color:var(--primary-color);line-height:1}.survey-workspace{display:grid;grid-template-columns:360px 1fr;gap:24px;padding:0 48px 48px;align-items:start}.survey-sidebar,.survey-main{background-color:var(--surface-low);border-radius:16px;border:1px solid var(--footer-color);box-shadow:var(--shadow-soft)}.survey-sidebar{padding:18px;height:calc(100vh - 260px);min-height:680px;overflow:hidden;display:flex;flex-direction:column}.survey-main{padding:28px;min-height:680px}.survey-toolbar{display:grid;gap:12px;margin-bottom:16px}.survey-search{display:flex;align-items:center;gap:10px;background-color:var(--tint-color);border:1px solid var(--footer-color);border-radius:10px;padding:0 12px;transition:border-color var(--anim-fast),box-shadow var(--anim-fast)}.survey-search:focus-within{box-shadow:1px 2px 0 0 var(--accent-color)}.survey-search input,.survey-select,.survey-field input,.survey-field textarea,.survey-field select,.survey-selector input{width:100%;box-sizing:border-box;background-color:var(--tint-color);border:1px solid var(--footer-color);border-radius:8px;padding:9px 12px;color:var(--foundation-color);outline:none;transition:border-color var(--anim-fast),box-shadow var(--anim-fast)}.survey-search input{border:none;background:transparent;padding:9px 0}.survey-select:focus,.survey-field input:focus,.survey-field textarea:focus,.survey-field select:focus,.survey-selector input:focus{border-color:var(--accent-color)}.survey-list{overflow:auto;display:grid;gap:12px;padding-right:4px}.survey-list-item{border:1px solid var(--footer-color);background-color:var(--surface-low);border-radius:14px;padding:16px;text-align:left;cursor:pointer;box-shadow:var(--shadow-soft);transition:box-shadow var(--anim-fast),transform var(--anim-fast),border-color var(--anim-fast),background-color var(--anim-fast)}.survey-list-item:hover{box-shadow:0 8px 28px #0000001a;transform:translateY(-2px)}.survey-list-item--active{border-color:var(--accent-color);background-color:#b22b1d0f}.survey-list-item__top{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:12px}.survey-list-item__top h3{margin:0;font-size:16px;line-height:1.35;color:var(--foundation-color)}.survey-list-item__meta,.survey-list-item__dates{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--text-color)}.survey-list-item__meta{margin-bottom:10px}.survey-status{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-family:var(--font-main);font-size:.68rem;font-weight:700;letter-spacing:.4px;text-transform:capitalize;white-space:nowrap}.survey-status--draft{background-color:var(--warning-light);color:var(--warning-text)}.survey-status--published{background-color:var(--success-light);color:var(--success-text)}.survey-status--closed{background-color:#78828c24;color:var(--muted-color)}.survey-status--archived{background-color:#64748b1f;color:var(--muted-color)}.survey-alert{border-radius:10px;padding:14px 16px;margin-bottom:18px;font-weight:600;font-family:var(--font-main)}.survey-alert--error{background-color:var(--error-light);color:var(--accent-color);border:1px solid rgba(178,43,29,.2)}.survey-alert--success{background-color:var(--success-light);color:var(--success-text);border:1px solid var(--success-color)}.survey-blank-state{min-height:520px;display:grid;place-items:center;text-align:center;color:var(--text-color)}.survey-blank-state__icon{width:64px;height:64px;margin:0 auto 14px;border-radius:18px;display:grid;place-items:center;background:var(--info-light);color:var(--info-color)}.survey-editor,.survey-details{display:grid;gap:20px}.survey-editor__header,.survey-details__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.survey-editor__actions,.survey-details__actions{display:flex;gap:10px;flex-wrap:wrap}.survey-section-eyebrow{margin:0 0 8px;font-family:var(--font-main);font-size:.65rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted-color)}.survey-editor__header h2,.survey-details__header h2{margin:0;font-size:30px;color:var(--primary-color)}.survey-details__desc{margin:8px 0 0;color:var(--text-color);max-width:760px}.survey-form-grid,.survey-detail-sections{display:grid;gap:18px}.survey-panel{border:1px solid var(--footer-color);border-radius:16px;padding:20px;background-color:var(--surface-low);box-shadow:var(--shadow-soft)}.survey-panel__title{margin:0 0 16px;font-size:20px;color:var(--primary-color)}.survey-panel__topline{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.survey-field{display:grid;gap:8px;margin-bottom:16px}.survey-field label{font-size:13px;font-weight:700;color:var(--text-color)}.survey-field textarea{resize:vertical;max-height:200px;min-height:80px}.survey-form-row{display:grid;grid-template-columns:180px 1fr 1fr;gap:16px}.survey-form-row--question{grid-template-columns:180px 180px 140px}.survey-assignments-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.survey-selector{border:1px solid var(--footer-color);border-radius:16px;padding:14px;background-color:var(--surface-low);box-shadow:var(--shadow-soft)}.survey-selector__header{display:flex;align-items:center;gap:8px;color:var(--primary-color);font-weight:700;margin-bottom:12px}.search-diff{font-weight:500!important;background-color:var(--tint-color)!important;border-radius:6px!important;border:2px solid var(--footer-color)!important}.survey-selector__list{border-top:3px solid var(--footer-color);border-radius:4px;padding-top:16px;margin-top:12px;max-height:250px;overflow:auto;display:grid;gap:8px}.survey-selector__item{width:100%;border:1px solid var(--footer-color);background-color:var(--tint-color);border-radius:12px;padding:12px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;cursor:pointer;color:var(--primary-color);transition:background-color var(--anim-fast),border-color var(--anim-fast),color var(--anim-fast)}.survey-selector__item:hover{background-color:var(--soft-color)}.survey-selector__item--active{background-color:#b22b1d0f;border-color:var(--accent-color);color:var(--primary-color)}.survey-selector__item--partial{background-color:#b22b1d08;border-style:dashed;border-color:#b22b1d73}.survey-questions{display:grid;gap:16px}.survey-question-card{border:1px solid var(--footer-color);border-radius:16px;background-color:var(--surface-low);padding:18px;box-shadow:var(--shadow-soft)}.survey-question-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.survey-question-card__header h4{margin:0;color:var(--foundation-color)}.survey-icon-btn{width:36px;height:36px;border:1px solid var(--footer-color);border-radius:8px;display:grid;place-items:center;background-color:var(--tint-color);color:var(--muted-color);cursor:pointer;transition:background-color var(--anim-fast),color var(--anim-fast),transform var(--anim-fast),border-color var(--anim-fast)}.survey-icon-btn:hover{background-color:var(--soft-color);color:var(--foundation-color)}.survey-icon-btn:active{transform:scale(.97)}.survey-icon-btn--danger{background-color:var(--error-light);border-color:#b22b1d33;color:var(--accent-color)}.survey-icon-btn--danger:hover{background-color:var(--accent-color);border-color:var(--accent-color);color:var(--neutral-color)}.survey-modal__header .survey-icon-btn{background:transparent;border:none;width:auto;height:auto;padding:4px}.survey-modal__header .survey-icon-btn:hover{background:transparent;color:var(--foundation-color)}.survey-toggle{border:none;border-radius:12px;padding:12px 14px;background:var(--tint-color);color:var(--text-color);font-weight:700;cursor:pointer}.survey-toggle--active{background:var(--success-light);color:var(--success-text)}.survey-empty,.survey-empty-inline,.survey-muted{color:var(--muted-color)}.survey-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.survey-info-card{border:1px solid var(--footer-color);background-color:var(--surface-low);border-radius:16px;padding:16px;box-shadow:var(--shadow-soft)}.survey-info-card span{display:block;font-size:12px;color:var(--text-color);margin-bottom:6px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.survey-info-card strong{color:var(--primary-color);font-size:15px}.survey-chip-list{display:flex;flex-wrap:wrap;gap:10px}.survey-chip-with-qr{position:relative;display:inline-flex;align-items:center;gap:8px}.qr-toggle-btn{border:none;background:transparent;color:var(--primary-color);font-weight:700;cursor:pointer}.qr-popover{position:absolute;top:42px;left:0;background:var(--surface-low);border:1px solid var(--footer-color);padding:10px;border-radius:8px;box-shadow:var(--shadow-soft);z-index:40;display:grid;place-items:center}.qr-caption{font-size:12px;color:var(--muted-color);margin-top:6px}.survey-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:var(--info-light);color:var(--info-color);border-radius:999px;font-size:13px;font-weight:600}.survey-chip__label{display:inline-flex;align-items:center}.survey-chip__remove{width:18px;height:18px;border:none;border-radius:999px;display:inline-grid;place-items:center;padding:0;background:#00000014;color:inherit;cursor:pointer;transition:background-color var(--anim-fast),transform var(--anim-fast),opacity var(--anim-fast)}.survey-chip__remove:hover{background:#00000024}.survey-chip__remove:active{transform:scale(.94)}.survey-question-preview-list{display:grid;gap:14px}.survey-question-preview{border:1px solid var(--footer-color);border-radius:16px;padding:16px;background-color:var(--surface-low);box-shadow:var(--shadow-soft)}.survey-question-preview__top{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.survey-question-preview__index,.survey-question-preview__type,.survey-question-preview__required{font-size:12px;font-weight:700;border-radius:999px;padding:5px 10px}.survey-question-preview__index{background:var(--info-light);color:var(--info-color)}.survey-question-preview__type{background:#6d49c61a;color:#6d49c6;text-transform:capitalize}.survey-question-preview__required{background:var(--warning-light);color:var(--warning-color)}.survey-question-preview__section{margin:0 0 6px;color:var(--text-color);font-size:13px;font-weight:700}.survey-question-preview h4{margin:0;color:var(--foundation-color);font-size:17px}.survey-modal-overlay{position:fixed;inset:0;background-color:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.survey-modal{background-color:var(--surface-low);border:1px solid var(--footer-color);border-radius:18px;width:min(520px,92vw);box-shadow:0 24px 60px #00000040;overflow:hidden}.survey-modal__header{display:flex;align-items:center;gap:10px;padding:20px 24px 16px;border-bottom:1px solid var(--footer-color)}.survey-modal__header h3{flex:1;margin:0;font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--primary-color)}.survey-modal__text{padding:18px 24px;margin:0;font-family:var(--font-main);color:var(--muted-color);line-height:1.6}.survey-modal__actions{display:flex;gap:10px;padding:16px 24px 20px;border-top:1px solid var(--footer-color)}.survey-modal__actions .survey-secondary-btn,.survey-modal__actions .survey-danger-btn{flex:1}@media(max-width:1280px){.survey-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.survey-workspace{grid-template-columns:320px 1fr}.survey-form-row,.survey-form-row--question,.survey-info-grid{grid-template-columns:1fr 1fr}}@media(max-width:900px){.survey-page__header{padding:28px 20px 24px}.survey-stats{padding:0 20px 20px}.survey-workspace{padding:0 20px 40px}.survey-page__header,.survey-editor__header,.survey-details__header,.survey-panel__topline{flex-direction:column;align-items:stretch}.survey-workspace,.survey-assignments-grid,.survey-form-row,.survey-form-row--question,.survey-info-grid,.survey-stats{grid-template-columns:1fr}.survey-sidebar{height:auto;min-height:320px}}.ManageUsers{width:100%;margin:0;align-self:stretch;text-align:left}.ManageUsers .mngHeader{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:none;margin-inline:0;margin-bottom:20px;text-align:left}.ManageUsers .title{display:flex;flex-direction:column;gap:4px}.ManageUsers .title span{color:var(--accent-color);font-size:14px;font-weight:700;letter-spacing:.06em}.ManageUsers .title h1{margin:0;font-size:clamp(1.5rem,2vw,2rem);line-height:1.2;color:var(--foundation-color)}.ManageUsers .end{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.ManageUsers .end .export{min-height:40px;border-radius:6px}.ManageUsers .addUser{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:4px 16px;border:0;border-radius:6px;background:var(--primary-color);color:var(--neutral-color);font-family:var(--font-main);font-size:.95rem;font-weight:600;cursor:pointer;transition:filter var(--anim-fast)}.ManageUsers .addUser:hover{filter:brightness(1.08)}.ManageUsers .addUser svg{width:18px;height:18px}.contentMng{display:flex;flex-direction:column;gap:20px;margin-top:60px}.contentMng .filters{display:flex;gap:16px;flex-wrap:wrap}.contentMng .filters .searchUsers{flex:1;min-width:200px;max-width:400px;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:#e0dfdf}.contentMng .filters .searchUsers input{flex:1;border:none;background:transparent;outline:none;font-size:.95rem}.contentMng .filters .searchUsers svg{width:16px;height:16px;color:var(--text-color)}.contentMng .filters .filter{display:flex;align-items:center;gap:8px}.contentMng .filters .filter select{padding:4px 6px;border:1px solid var(--border-color);border-radius:6px;background:#e0dfdf;font-size:.95rem}.contentMng .filters .filter h3{font-size:.95rem;color:var(--text-color)}.contentMng .Users{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;margin:60px 0;align-items:start}.contentMng .Users .userTable{width:100%;overflow-x:auto}.contentMng .Users .userTable table{width:100%;border-collapse:collapse;background:var(--neutral-color);min-width:760px}.contentMng .Users .userTable th,.contentMng .Users .userTable td{text-align:left;padding:12px;border-bottom:1px solid #d9dde2;font-size:.9rem}.contentMng .Users .userTable th{color:var(--muted-color);font-weight:700;background:#f3f5f7}.contentMng .Users .userTable .editBtn,.contentMng .Users .userTable .deleteBtn{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:6px;padding:6px 10px;font-family:var(--font-main);cursor:pointer}.contentMng .Users .userTable .editBtn{background:#e7eefc;color:#204c92}.contentMng .Users .userTable .deleteBtn{background:#fde8e8;color:#9f1d1d}.contentMng .Users .userTable .editBtn svg,.contentMng .Users .userTable .deleteBtn svg{width:14px;height:14px}.contentMng .Users .BulkImport{border:1px solid #e5e8ed;border-radius:12px;background:#f8fafc;padding:30px 18px 18px;box-shadow:0 2px 10px #0f172a0a;display:flex;flex-direction:column;gap:10px;position:relative}.contentMng .Users .BulkImport .background-svg{position:absolute;top:20px;right:-40px;opacity:.1;width:100%;height:200px;display:flex;align-items:center;justify-content:center;color:var(--primary-color);transition:opacity .4s ease-in-out}.contentMng .Users .BulkImport:hover .background-svg{opacity:.25}.contentMng .Users .BulkImport .background-svg svg{width:200px;height:200px}.dragArea svg{width:40px;height:40px;color:var(--primary-color)}.contentMng .Users .BulkImport:hover .dragArea svg{animation:bounce 3s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.contentMng .Users .BulkImport h2{margin:0;font-size:1.1rem;font-weight:700;color:var(--foundation-color)}.contentMng .Users .BulkImport>p{margin:0;color:var(--muted-color);font-size:.88rem;line-height:1.45}.contentMng .Users .BulkImport .dragDropImport{margin-top:8px;display:flex;flex-direction:column;gap:10px}.contentMng .Users .BulkImport .dragArea{position:relative;min-height:170px;border:2px dashed #d6dbe3;border-radius:12px;background:#f2f4f8;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:16px;transition:border-color var(--anim-fast),background-color var(--anim-fast)}.contentMng .Users .BulkImport .dragArea:hover{border-color:#b8c2d1;background:#edf2f7}.contentMng .Users .BulkImport .dragArea p{margin:0;color:#2b3a50;font-weight:600;font-size:.9rem}.contentMng .Users .BulkImport .dragArea .fileFormatNote{color:#7b8594;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.contentMng .Users .BulkImport .dragArea input[type=file]{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.contentMng .Users .BulkImport .importNote{margin:0;color:#7b8594;font-size:.78rem;line-height:1.4}.contentMng .Users .BulkImport .importExamples{margin-top:6px;padding:14px;border:1px solid #dbe3ee;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:10px}.contentMng .Users .BulkImport .importExamples h3{margin:0;color:var(--foundation-color);font-size:.9rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.contentMng .Users .BulkImport .importExamples ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.contentMng .Users .BulkImport .importExamples li{margin:0}.contentMng .Users .BulkImport .importExamples a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #dbe3ee;border-radius:10px;background:#f8fafc;color:#204c92;text-decoration:none;font-size:.88rem;font-weight:600;line-height:1.35;transition:background-color var(--anim-fast),border-color var(--anim-fast),transform var(--anim-fast),color var(--anim-fast)}.contentMng .Users .BulkImport .importExamples a:after{content:"Download";flex:0 0 auto;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#7b8594}.contentMng .Users .BulkImport .importExamples a:hover{background:#edf4ff;border-color:#b9cdf5;color:#163f7d;transform:translateY(-1px)}.contentMng .Users .BulkImport .importExamples a:hover:after{color:#204c92}@media(max-width:820px){.ManageUsers .mngHeader{flex-direction:column;align-items:flex-start}.ManageUsers .end{width:100%;justify-content:flex-start}.contentMng .Users{grid-template-columns:1fr}}.userModalOverlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:200000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .18s ease-out}.userModal{background:var(--neutral-color);border-radius:14px;width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040;overflow:hidden;animation:slideUp .22s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.userModalHeader{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:var(--primary-color);color:var(--neutral-color);flex-shrink:0}.userModalHeader h2{margin:0;font-size:1.15rem;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--neutral-color)}.userModalHeader .closeBtn{background:transparent;border:0;color:#fff;cursor:pointer;padding:6px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease}.userModalHeader .closeBtn:hover{background:#ffffff26}.userModalBody{padding:22px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:18px;flex:1 1 auto}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.formField{display:flex;flex-direction:column;gap:6px;min-width:0}.formField label{font-size:.85rem;font-weight:600;color:var(--muted-color);font-family:var(--font-main);display:flex;align-items:center;gap:6px}.formField label small{font-weight:400;color:var(--text-color);font-size:.72rem;font-style:italic}.formField .req{color:var(--accent-color);font-weight:700}.formField input,.formField select{padding:10px 12px;border:1px solid #d6dbe3;border-radius:8px;background:var(--surface-high);font-size:.92rem;font-family:var(--font-main);color:var(--foundation-color);transition:border-color var(--anim-fast),background var(--anim-fast),box-shadow var(--anim-fast);width:100%}.formField input::placeholder{color:var(--soft-color)}.formField input:focus,.formField select:focus{outline:none;border-color:var(--primary-color);background:#fff;box-shadow:0 0 0 3px #0021471f}.formField input:disabled,.formField select:disabled{background:#ececec;color:var(--soft-color);cursor:not-allowed}.formField .err,.formField .ok{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;font-weight:600;font-family:var(--font-main)}.formField .err{color:var(--accent-color)}.formField .ok{color:#15803d}.roleSection{border:1px dashed #c8d0db;border-radius:12px;padding:18px;background:var(--tint-color);display:flex;flex-direction:column;gap:14px}.roleSection h3{margin:0;font-size:.78rem;color:var(--primary-color);text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-display);font-weight:700;padding-bottom:6px;border-bottom:1px solid #d8dee6}.comboRow{display:flex;gap:8px;align-items:stretch}.comboRow input{flex:1 1 auto;min-width:0;padding:10px 12px;border:1px solid #d6dbe3;border-radius:8px;background:#fff;font-size:.92rem;font-family:var(--font-main);transition:border-color var(--anim-fast),box-shadow var(--anim-fast)}.comboRow input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0021471f}.comboRow input:disabled{background:#ececec;color:var(--soft-color);cursor:not-allowed}.selectPicker{margin-top:8px}.selectPicker select{width:100%;border:1px solid #d6dbe3;border-radius:8px;padding:8px 10px;font-family:var(--font-main);font-size:.92rem;background:#fff}.selectPicker select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0021470f}.addChipBtn{background:var(--primary-color);color:var(--neutral-color);border:0;padding:0 16px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-main);font-weight:600;font-size:.85rem;transition:filter var(--anim-fast),background var(--anim-fast);flex-shrink:0}.addChipBtn:hover:not(:disabled){filter:brightness(1.15)}.addChipBtn:disabled{background:var(--soft-color);cursor:not-allowed}.chips{display:flex;flex-wrap:wrap;gap:6px;min-height:0}.chips:empty{display:none}.chip{display:inline-flex;align-items:center;gap:6px;background:#e7eefc;color:#204c92;padding:5px 6px 5px 12px;border-radius:16px;font-size:.82rem;font-weight:600;font-family:var(--font-data);border:1px solid #d3def7}.chip.chip-managed{background:#fff5e6;color:#92520c;border-color:#f3d9b1}.chip button{background:transparent;border:0;color:inherit;opacity:.7;cursor:pointer;padding:2px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background var(--anim-fast),opacity var(--anim-fast)}.chip button:hover{opacity:1;background:#c0392b26;color:var(--accent-color)}.userModalFooter{display:flex;justify-content:flex-end;gap:10px;padding-top:16px;border-top:1px solid #e5e8ed;margin-top:4px;flex-shrink:0}.btnSecondary,.btnPrimary{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:8px;font-family:var(--font-main);font-weight:600;font-size:.9rem;cursor:pointer;border:0;transition:filter var(--anim-fast),background var(--anim-fast),color var(--anim-fast)}.btnSecondary{background:var(--tint-color);color:var(--muted-color);border:1px solid #dfe3ea}.btnSecondary:hover{background:var(--soft-color);color:var(--foundation-color)}.btnPrimary{background:var(--primary-color);color:var(--neutral-color)}.btnPrimary:hover{filter:brightness(1.2)}.formField .hint{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;color:var(--text-color);font-style:italic}.facultyNotice{display:inline-flex;align-items:flex-start;gap:6px;background:var(--warning-color);color:var(--quaternary-color);padding:8px 12px;border-radius:8px;font-size:.82rem;font-weight:500;border:1px solid #f5d6b1}.contentMng .Users .userTable .noDean{color:var(--accent-color);font-style:italic;font-size:.85rem}@media(max-width:640px){.formGrid{grid-template-columns:1fr}.userModal{max-height:95vh}.userModalHeader,.userModalBody{padding-left:16px;padding-right:16px}.comboRow{flex-direction:column}.addChipBtn{padding:10px 16px;justify-content:center}}.idp{--idp-bg: #f7f9fc;--idp-surface: #ffffff;--idp-border: #e3e8ef;--idp-border-2: #d3dae3;--idp-text: #1a2435;--idp-muted: #5b6573;--idp-primary: #2563eb;--idp-primary-2: #1d4ed8;--idp-accent: #3b82f6;--idp-ok: #16a34a;--idp-warn: #d97706;--idp-bad: #dc2626;--idp-dup: #9f1239;--idp-ok-bg: #ecfdf5;--idp-warn-bg: #fffbeb;--idp-bad-bg: #fef2f2;--idp-dup-bg: #fff1f2;--idp-radius: 12px;--idp-radius-sm: 8px;--idp-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 4px 12px rgba(15, 23, 42, .06);position:relative;width:100%;display:flex;flex-direction:column;gap:18px;margin-bottom:50px;color:var(--idp-text);font-family:inherit}.idp__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--idp-surface);border:1px solid var(--idp-border);border-radius:var(--idp-radius);padding:20px 22px;box-shadow:var(--idp-shadow)}.idp__heading h1{margin:6px 0 4px;font-size:clamp(1.4rem,2.2vw,1.85rem);letter-spacing:-.01em}.idp__heading p{margin:0;color:var(--idp-muted);line-height:1.5;max-width:60ch}.idp__kicker{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--idp-primary);background:#2563eb14;padding:4px 10px;border-radius:999px}.idp__header-actions{display:flex;gap:10px}#idp-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.idp__upload{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:var(--idp-radius-sm);background:var(--idp-primary);color:#fff;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s,transform .05s;box-shadow:0 1px 2px #2563eb4d}.idp__upload:hover{background:var(--idp-primary-2)}.idp__upload:active{transform:translateY(1px)}.idp__schema{background:var(--idp-surface);border:1px solid var(--idp-border);border-radius:var(--idp-radius);padding:14px 18px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--idp-shadow)}.idp__schema-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.idp__schema-row h3{margin:0;font-size:1rem;color:var(--idp-text)}.idp__schema-stats{display:flex;flex-wrap:wrap;gap:6px}.idp__pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:700;border:1px solid transparent}.idp__pill--ok{color:var(--idp-ok);background:var(--idp-ok-bg);border-color:#bbf7d0}.idp__pill--warn{color:var(--idp-warn);background:var(--idp-warn-bg);border-color:#fde68a}.idp__pill--bad{color:var(--idp-bad);background:var(--idp-bad-bg);border-color:#fecaca}.idp__schema-msg{border-radius:var(--idp-radius-sm);padding:10px 12px;font-size:.88rem;line-height:1.5}.idp__schema-msg--bad{background:var(--idp-bad-bg);color:#7f1d1d;border:1px solid #fecaca}.idp__schema-msg--warn{background:var(--idp-warn-bg);color:#78350f;border:1px solid #fde68a}.idp__meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.idp__meta-card{background:var(--idp-surface);border:1px solid var(--idp-border);border-radius:var(--idp-radius);padding:12px 14px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--idp-shadow)}.idp__meta-label{color:var(--idp-muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.idp__meta-value{color:var(--idp-text);font-size:1rem;font-weight:600;word-break:break-word}.idp__stats{display:flex;flex-wrap:wrap;gap:6px}.idp__stat{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:.78rem;font-weight:700}.idp__stat--ok{color:var(--idp-ok);background:var(--idp-ok-bg)}.idp__stat--warn{color:var(--idp-warn);background:var(--idp-warn-bg)}.idp__stat--bad{color:var(--idp-bad);background:var(--idp-bad-bg)}.idp__stat--dup{color:var(--idp-dup);background:var(--idp-dup-bg)}.idp__alert{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--idp-radius);font-weight:500;border:1px solid transparent}.idp__alert--error{background:var(--idp-bad-bg);border-color:#fecaca;color:#991b1b}.idp__alert--neutral{background:#f1f5f9;border-color:#e2e8f0;color:#334155}.idp__issues{background:var(--idp-bad-bg);border:1px solid #fecaca;border-radius:var(--idp-radius);overflow:hidden}.idp__issues-head{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;background:transparent;border:0;cursor:pointer;color:#991b1b;font-weight:600;text-align:left}.idp__issues-head:hover{background:#dc26260d}.idp__issues-head span{flex:1}.idp__chev{transition:transform .2s}.idp__chev.is-open{transform:rotate(180deg)}.idp__issues-list{list-style:none;margin:0;padding:0 14px 14px;display:flex;flex-direction:column;gap:8px}.idp__issues-list>li{background:#fff;border:1px solid #fecaca;border-radius:var(--idp-radius-sm);padding:10px 12px}.idp__issues-list ul{margin:6px 0 0;padding-left:18px;color:#7f1d1d;font-size:.88rem;line-height:1.5}.idp__rowtag{display:inline-block;background:var(--idp-bad);color:#fff;font-size:.7rem;font-weight:700;padding:2px 10px;border-radius:999px;letter-spacing:.04em}.idp__toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.idp__btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:1px solid transparent;border-radius:var(--idp-radius-sm);font-weight:600;font-size:.88rem;cursor:pointer;background:transparent;transition:background .15s,border-color .15s,color .15s,transform .05s}.idp__btn:disabled{opacity:.55;cursor:not-allowed}.idp__btn:not(:disabled):active{transform:translateY(1px)}.idp__btn--primary{background:var(--idp-primary);color:#fff;box-shadow:0 1px 2px #2563eb4d}.idp__btn--primary:hover:not(:disabled){background:var(--idp-primary-2)}.idp__btn--danger{background:var(--idp-bad);color:#fff}.idp__btn--danger:hover:not(:disabled){background:#b91c1c}.idp__btn--ghost{background:var(--idp-surface);color:var(--idp-text);border-color:var(--idp-border-2)}.idp__btn--ghost:hover:not(:disabled){border-color:var(--idp-primary);color:var(--idp-primary)}.idp__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--idp-radius-sm);background:var(--idp-surface);border:1px solid var(--idp-border-2);color:var(--idp-muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.idp__icon-btn:hover{border-color:var(--idp-primary);color:var(--idp-primary)}.idp__icon-btn--danger{border-color:#fecaca;background:var(--idp-bad-bg);color:var(--idp-bad)}.idp__icon-btn--danger:hover{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.idp__table-wrap{width:100%;overflow-x:auto;background:var(--idp-surface);border:1px solid var(--idp-border);border-radius:var(--idp-radius);box-shadow:var(--idp-shadow)}.idp__table{width:100%;min-width:960px;border-collapse:separate;border-spacing:0;background:var(--idp-surface)}.idp__table thead th{position:sticky;top:0;z-index:1;background:#f1f5f9;border-bottom:2px solid var(--idp-border-2);border-right:1px solid var(--idp-border);padding:10px;text-align:left;font-size:.78rem;font-weight:700;color:var(--idp-muted);text-transform:uppercase;letter-spacing:.05em;vertical-align:top}.idp__table thead th:last-child{border-right:none}.idp__table tbody td{padding:8px 10px;border-bottom:1px solid var(--idp-border);border-right:1px solid var(--idp-border);vertical-align:middle}.idp__table tbody td:last-child{border-right:none}.idp__table tbody tr:last-child td{border-bottom:none}.idp__table tbody tr:nth-child(2n):not(.idp__row--invalid):not(.idp__row--dup) td{background:#fafbfd}.idp__th-index,.idp__td-index{width:56px;text-align:center;color:var(--idp-muted);font-weight:600;font-variant-numeric:tabular-nums}.idp__th-issues,.idp__td-issues{width:88px;text-align:center}.idp__th-actions,.idp__td-actions{width:80px;text-align:center}.idp__col-editor{display:flex;flex-direction:column;gap:6px;min-width:180px;text-transform:none;letter-spacing:0}.idp__col-raw{font-size:.85rem;font-weight:700;color:var(--idp-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.idp__col-mapping{height:32px;padding:0 8px;border:1px solid var(--idp-border-2);border-radius:6px;background:var(--idp-surface);color:var(--idp-text);font-size:.82rem;font-weight:500}.idp__col-mapping:focus{outline:none;border-color:var(--idp-primary);box-shadow:0 0 0 3px #2563eb26}.idp__th-col.is-extra{background:#fff7ed}.idp__th-col.is-extra .idp__col-raw{color:var(--idp-warn)}.idp__th-col.is-dup{background:var(--idp-bad-bg)}.idp__th-col.is-dup .idp__col-raw{color:var(--idp-bad)}.idp__col-warn{font-size:.7rem;font-weight:700;color:var(--idp-bad);text-transform:uppercase;letter-spacing:.05em}.idp__cell{width:100%;height:34px;padding:0 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--idp-text);font-size:.88rem;transition:background .15s,border-color .15s,box-shadow .15s}.idp__cell:hover{background:#f8fafc}.idp__cell:focus{outline:none;background:var(--idp-surface);border-color:var(--idp-primary);box-shadow:0 0 0 3px #2563eb26}.idp__row--invalid td{background:var(--idp-bad-bg)!important}.idp__row--dup td{background:var(--idp-dup-bg)!important}.idp__row--dup .idp__cell{color:#7f1d1d}.idp__row--dup .idp__cell:focus{background:#fff}.idp__badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:.74rem;font-weight:700;border:1px solid transparent;white-space:nowrap}.idp__badge--ok{background:var(--idp-ok-bg);color:var(--idp-ok);border-color:#bbf7d0}.idp__badge--warn{background:var(--idp-warn-bg);color:var(--idp-warn);border-color:#fde68a}.idp__badge--bad{background:var(--idp-bad-bg);color:var(--idp-bad);border-color:#fecaca;cursor:help}.idp__badge--dup{background:var(--idp-dup-bg);color:var(--idp-dup);border-color:#fecdd3;cursor:help}.idp__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--idp-surface);border:1px solid var(--idp-border);border-radius:var(--idp-radius);padding:14px 18px;box-shadow:var(--idp-shadow)}.idp__footer-hint{margin:0;display:inline-flex;align-items:center;gap:6px;color:var(--idp-warn);font-size:.85rem;font-weight:600}.idp__footer-actions{display:flex;gap:10px;margin-left:auto}.idp-modal__backdrop{position:fixed;inset:0;z-index:1000;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px;animation:idp-fade .18s ease-out}.idp-modal{background:var(--idp-surface);border-radius:14px;width:100%;max-width:460px;box-shadow:0 24px 60px #0f172a59;overflow:hidden;animation:idp-pop .22s ease-out}@keyframes idp-fade{0%{opacity:0}to{opacity:1}}@keyframes idp-pop{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.idp-modal__head{display:flex;align-items:center;gap:12px;padding:18px 20px 12px;border-bottom:1px solid var(--idp-border)}.idp-modal__head h2{margin:0;font-size:1.1rem;flex:1;color:var(--idp-text)}.idp-modal__icon{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.idp-modal__icon.is-success{background:var(--idp-ok-bg);color:var(--idp-ok)}.idp-modal__icon.is-danger{background:var(--idp-bad-bg);color:var(--idp-bad)}.idp-modal__close{width:32px;height:32px;border-radius:8px;border:1px solid var(--idp-border-2);background:var(--idp-surface);color:var(--idp-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s}.idp-modal__close:hover{border-color:var(--idp-primary);color:var(--idp-primary)}.idp-modal__body{padding:16px 20px;font-size:.94rem;color:var(--idp-text);line-height:1.55}.idp-modal__body p{margin:0 0 8px}.idp-modal__body p:last-child{margin-bottom:0}.idp-modal__muted{color:var(--idp-muted);font-size:.85rem}.idp-modal__foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;background:#f8fafc;border-top:1px solid var(--idp-border)}.idp-drop{position:fixed;inset:0;z-index:999;background:#2563eb2e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px;pointer-events:none;animation:idp-fade .15s ease-out}.idp-drop__card{background:var(--idp-surface);border:2px dashed var(--idp-primary);border-radius:16px;padding:40px 48px;text-align:center;box-shadow:0 24px 60px #0f172a40;animation:idp-pop .2s ease-out}.idp-drop__card svg{color:var(--idp-primary);margin-bottom:12px}.idp-drop__card h2{margin:8px 0 6px;color:var(--idp-text);font-size:1.4rem}.idp-drop__card p{margin:0;color:var(--idp-muted)}@media(max-width:980px){.idp__meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.idp__header{padding:16px}.idp__meta{grid-template-columns:1fr}.idp__footer{flex-direction:column;align-items:stretch}.idp__footer-actions{margin-left:0;flex-direction:column-reverse}.idp__footer-actions .idp__btn{width:100%;justify-content:center}.idp-modal__foot{flex-direction:column-reverse}.idp-modal__foot .idp__btn{width:100%;justify-content:center}}.FacultyManagement{width:100%;padding:10px 40px 40px;text-align:left}.FacultyManagement .faculty-header{margin-bottom:24px}.FacultyManagement .faculty-layout{display:flex;flex-direction:column;gap:20px}.FacultyManagement .faculty-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.FacultyManagement .summary-card{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid #e6e9ee;border-radius:18px;background:#fff;box-shadow:0 10px 30px #1018280f}.FacultyManagement .summary-card svg{width:22px;height:22px;color:var(--primary-color);flex-shrink:0}.FacultyManagement .summary-card--primary{border-color:#b22b1d2e;box-shadow:0 10px 30px #b22b1d14}.FacultyManagement .summary-card span{display:block;color:#667085;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.FacultyManagement .summary-card strong{display:block;margin-top:4px;color:var(--foundation-color);font-size:1.45rem;line-height:1}.FacultyManagement .faculty-content{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;align-items:start}.FacultyManagement .faculty-panel{border:1px solid #e3e7ee;border-radius:20px;background:#fff;box-shadow:0 18px 45px #0f172a0f}.FacultyManagement .faculty-panel--form{position:sticky;top:18px;padding:22px;background:#fff}.FacultyManagement .panel-title p,.FacultyManagement .panel-title h2,.FacultyManagement .faculty-note,.FacultyManagement .faculty-card__courses p,.FacultyManagement .faculty-card__courses span,.FacultyManagement .faculty-count{margin:0}.FacultyManagement .panel-title p{color:var(--accent-color);font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.FacultyManagement .panel-title h2{margin-top:6px;color:var(--foundation-color);font-size:1.35rem}.FacultyManagement .faculty-form{display:flex;flex-direction:column;gap:10px;margin-top:18px}.FacultyManagement .faculty-form label{color:var(--foundation-color);font-size:.92rem;font-weight:700}.FacultyManagement .faculty-form input,.FacultyManagement .faculty-search{width:100%}.FacultyManagement .faculty-form input,.FacultyManagement .faculty-search input{border:1px solid #d7dde5;border-radius:12px;background:#f8fafc;color:var(--foundation-color);font-family:var(--font-main);font-size:.96rem;outline:none;transition:border-color var(--anim-fast),box-shadow var(--anim-fast),background-color var(--anim-fast)}.FacultyManagement .faculty-form input{padding:12px 14px}.FacultyManagement .faculty-search input{padding:11px 14px 11px 36px;background:transparent;border:none}.FacultyManagement .faculty-form input:focus,.FacultyManagement .faculty-search:focus-within{border-color:#b22b1d73;box-shadow:0 0 0 4px #b22b1d14;background:#fff}.FacultyManagement .faculty-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:4px;padding:12px 16px;border:0;border-radius:12px;background:var(--primary-color);color:#fff;font-family:var(--font-main);font-size:.95rem;font-weight:700;cursor:pointer;transition:transform var(--anim-fast),filter var(--anim-fast)}.FacultyManagement .faculty-submit:hover{transform:translateY(-1px);filter:brightness(1.04)}.FacultyManagement .faculty-submit:disabled{cursor:progress;opacity:.75;transform:none}.FacultyManagement .faculty-note{margin-top:14px;color:#667085;font-size:.9rem;line-height:1.5}.FacultyManagement .faculty-panel--list{padding:20px}.FacultyManagement .faculty-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.FacultyManagement .faculty-search{position:relative;display:flex;align-items:center;max-width:420px;border:1px solid #d7dde5;border-radius:14px;background:#f8fafc}.FacultyManagement .faculty-search svg{position:absolute;left:14px;color:#667085;z-index:1}.FacultyManagement .faculty-count{color:#667085;font-size:.92rem;font-weight:700}.FacultyManagement .faculty-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.FacultyManagement .faculty-card,.FacultyManagement .faculty-empty{border:1px solid #e4e8ef;border-radius:18px;background:#fff;box-shadow:0 10px 24px #0f172a0d}.FacultyManagement .faculty-card{padding:18px}.FacultyManagement .faculty-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.FacultyManagement .faculty-card__actions{display:inline-flex;align-items:center;gap:10px}.FacultyManagement .faculty-card__head span{display:inline-block;color:var(--accent-color);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.FacultyManagement .faculty-card__head h3{margin:6px 0 0;color:var(--foundation-color);font-size:1.05rem}.FacultyManagement .faculty-card__head svg{width:20px;height:20px;color:#b22b1df2}.FacultyManagement .faculty-delete{border:1px solid #f0c9c4;border-radius:999px;padding:7px 12px;background:#fff5f4;color:#9f1d1d;font-family:var(--font-main);font-size:.78rem;font-weight:800;cursor:pointer;transition:background-color var(--anim-fast),border-color var(--anim-fast),color var(--anim-fast)}.FacultyManagement .faculty-delete:hover{background:#ffe7e4;border-color:#e8aca3}.FacultyManagement .faculty-delete:disabled{cursor:progress;opacity:.7}.FacultyManagement .faculty-card__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.FacultyManagement .faculty-card__stats div{padding:12px;border-radius:14px;background:#f6f8fb}.FacultyManagement .faculty-card__stats strong{display:block;color:var(--foundation-color);font-size:1.15rem}.FacultyManagement .faculty-card__stats span{display:block;margin-top:4px;color:#667085;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.FacultyManagement .faculty-card__courses{margin-top:14px;padding-top:14px;border-top:1px solid #e6ebf2}.FacultyManagement .faculty-card__courses span{color:#667085;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.FacultyManagement .faculty-card__courses p{margin-top:8px;color:var(--foundation-color);font-size:.92rem;line-height:1.5}.FacultyManagement .faculty-empty{grid-column:1 / -1;padding:32px 18px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.FacultyManagement .faculty-empty svg{width:28px;height:28px;color:var(--primary-color)}.FacultyManagement .faculty-empty h3{margin:0;color:var(--foundation-color)}.FacultyManagement .faculty-empty p{margin:0;color:#667085}@media(max-width:1100px){.FacultyManagement .faculty-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.FacultyManagement .faculty-content{grid-template-columns:1fr}.FacultyManagement .faculty-panel--form{position:static}}@media(max-width:720px){.FacultyManagement{padding-inline:18px}.FacultyManagement .faculty-summary,.FacultyManagement .faculty-grid{grid-template-columns:1fr}.FacultyManagement .faculty-toolbar{flex-direction:column;align-items:stretch}}.ManageCourses{padding:20px}.ManageCourses .mngHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px}.ManageCourses .title span{font-size:12px;color:#64748b;letter-spacing:.12em;font-weight:700}.ManageCourses .title h1{margin:4px 0 0;font-size:24px;color:#0f172a}.ManageCourses .end .addCourse{background:var(--primary-color);color:#fff;border:none;padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:700}.ManageCourses .end .addCourse:hover{background:var(--foundation-color);transition:background-color .15s ease}.ManageCourses .contentMng{background:#fff;padding:18px;border-radius:14px;box-shadow:0 10px 30px #0f172a14}.ManageCourses .filtersRow{margin-bottom:14px}.ManageCourses .filtersRow input{width:min(100%,420px);padding:10px 12px;border:1px solid #d8dee9;border-radius:10px}.ManageCourses .courseTable table{width:100%;border-collapse:collapse}.ManageCourses .courseTable th,.ManageCourses .courseTable td{text-align:left;padding:12px 10px;border-bottom:1px solid #e5e7eb;vertical-align:top}.ManageCourses .courseTable tbody tr{cursor:pointer;transition:background-color .15s ease}.ManageCourses .courseTable tbody tr:hover{background:#f8fafc}.ManageCourses .courseTable tbody tr.isSelected{background:#eff6ff}.ManageCourses .courseTable td button{margin-right:8px;padding:7px 10px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;cursor:pointer;font-weight:600}.ManageCourses .courseTable td .editBtn{background:#e0f2fe;border-color:#bae6fd}.ManageCourses .courseTable td .deleteBtn{background:#fee2e2;border-color:#fecaca}.ManageCourses .courseStatsPanel{margin-top:18px;border:1px solid #e2e8f0;border-radius:14px;padding:16px;background:#f8fafc}.ManageCourses .emptyStats{color:#475569;font-size:14px}.ManageCourses .statsHead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.ManageCourses .statsHead h3{margin:0;font-size:18px;color:#0f172a}.ManageCourses .statsHead p{margin:4px 0 0;color:#64748b}.ManageCourses .secondaryBtn{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:10px;padding:8px 12px;cursor:pointer;font-weight:600}.ManageCourses .statsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.ManageCourses .statsCard{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px}.ManageCourses .statsCard strong{font-size:22px;color:#0f172a}.ManageCourses .statsCard span{color:#64748b;font-size:13px}.ManageCourses .statsCard.highlight{border-color:#60a5fa;box-shadow:0 0 0 1px #60a5fa2e inset}.ManageCourses .courseSemesterPicker{display:flex;flex-wrap:wrap;gap:10px}.ManageCourses .courseSemesterPicker select{min-width:160px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff}.ManageCourses .semesterAddBtn{border:1px solid #1d4ed8;background:#1d4ed8;color:#fff;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700}.ManageCourses .semesterSelectedList{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.ManageCourses .semesterChip{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:600}.ManageCourses .semesterChip.active{background:#1d4ed8;color:#fff;border-color:#1d4ed8}@media(max-width:900px){.ManageCourses .mngHeader,.ManageCourses .statsHead{flex-direction:column;align-items:flex-start}.ManageCourses .courseTable{overflow-x:auto}}.GradesPage{min-height:100%;padding:24px 28px 32px;background:var(--neutral-color);color:var(--foundation-color);font-family:var(--font-main)}.gradesHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.gradesEyebrow{margin:0 0 8px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-color);font-family:var(--font-main)}.GradesPage h1{margin:0;font-size:clamp(1.9rem,3.5vw,2.4rem);line-height:1.1;color:var(--primary-color);font-family:var(--font-display)}.gradesSubtitle{margin-top:.45rem;color:var(--text-color);font-size:.95rem;max-width:52rem}.gradesPanel{background:var(--surface-low);border:1px solid var(--footer-color);border-radius:16px;box-shadow:var(--shadow-soft);overflow:hidden}.GradesPage .filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:16px;border-bottom:1px solid var(--tint-color);background:var(--neutral-color)}.GradesPage .filters input,.GradesPage .filters select{min-height:40px;padding:.65rem .9rem;border:1px solid var(--soft-color);border-radius:10px;background:var(--surface-high);color:var(--foundation-color);font-family:var(--font-main);font-size:.9rem;transition:border-color var(--anim-fast),box-shadow var(--anim-fast),background var(--anim-fast)}.GradesPage .filters input:focus,.GradesPage .filters select:focus{outline:none;border-color:var(--primary-color);background:var(--neutral-color);box-shadow:0 0 0 3px var(--info-light)}.gradesSearchInput{flex:1 1 240px;min-width:220px}.gradesSearchBtn,.gradesActionBtn{border:none;border-radius:10px;cursor:pointer;font-family:var(--font-main);font-weight:600;transition:transform var(--anim-fast),background-color var(--anim-fast),filter var(--anim-fast),box-shadow var(--anim-fast)}.gradesSearchBtn{min-height:40px;padding:.65rem 1rem;background:var(--primary-color);color:var(--neutral-color);box-shadow:var(--shadow-soft)}.gradesSearchBtn:hover{background:var(--secondary-color);transform:translateY(-1px)}.gradesTableShell{overflow-x:auto}.GradesPage table,.gradesTable{width:100%;border-collapse:collapse}.GradesPage thead{background:var(--tint-color)}.GradesPage th,.GradesPage td{padding:12px 16px;border-bottom:1px solid var(--tint-color);text-align:left;font-size:.92rem;vertical-align:middle}.GradesPage th{color:var(--primary-color);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.GradesPage tbody tr:hover{background:var(--tint-color)}.gradesEmptyState{text-align:center;color:var(--text-color);padding:20px 16px}.gradesActionBtn{padding:.55rem .9rem;background:var(--accent-color);color:var(--neutral-color);box-shadow:var(--shadow-soft)}.gradesActionBtn:hover{filter:brightness(1.05);transform:translateY(-1px)}.ManageCourses ul{list-style:none;padding:0;margin:0}.ManageCourses ul li{margin-bottom:8px}.ManageCourses ul li button{min-height:38px;padding:.55rem .9rem;border-radius:10px;border:1px solid var(--soft-color);background:var(--surface-high);color:var(--foundation-color);cursor:pointer;font-family:var(--font-main);transition:border-color var(--anim-fast),background-color var(--anim-fast),box-shadow var(--anim-fast),transform var(--anim-fast)}.ManageCourses ul li button:hover{border-color:var(--primary-color);background:var(--neutral-color);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.ManageCourses .studentsTable{width:100%;border-collapse:collapse;margin-top:12px}.ManageCourses th,.ManageCourses td{padding:10px 12px;border-bottom:1px solid var(--tint-color)}.ManageCourses .assignBtn,.ManageCourses .dangerBtn{min-height:36px;padding:.5rem .85rem;border-radius:10px;border:none;color:var(--neutral-color);cursor:pointer;font-family:var(--font-main);font-weight:600;box-shadow:var(--shadow-soft);transition:filter var(--anim-fast),transform var(--anim-fast)}.ManageCourses .assignBtn{background:var(--primary-color)}.ManageCourses .dangerBtn{background:var(--accent-color);margin-left:6px}.ManageCourses .assignBtn:hover,.ManageCourses .dangerBtn:hover{filter:brightness(1.05);transform:translateY(-1px)}@media(max-width:768px){.GradesPage{padding:18px}.gradesHeader{align-items:flex-start;flex-direction:column}.GradesPage .filters{padding:14px}.GradesPage th,.GradesPage td{padding:10px 12px}}.support-tickets{width:100%;min-width:0;padding:18px;background:#fff;border-radius:6px;box-sizing:border-box}.support-tickets h2{margin:0 0 14px;font-size:20px}.support-tickets .toolbar{display:flex;gap:10px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.support-tickets .search{min-width:260px;max-width:420px;flex:1 1 260px;padding:8px 10px;border-radius:6px;border:1px solid #ddd}.support-tickets .toolbar select{padding:8px 10px;border-radius:6px;border:1px solid #ddd;min-width:140px}.support-tickets .toolbar button{padding:8px 12px;border-radius:6px;border:0;background:#1976d2;color:#fff;cursor:pointer}.support-tickets .toolbar button[disabled]{opacity:.6;cursor:default}.support-tickets .search[disabled],.support-tickets .toolbar select[disabled]{opacity:.6;cursor:not-allowed;background:#f5f5f5}.btn[disabled]{opacity:.6;cursor:not-allowed;pointer-events:none}.tickets-table td select[disabled]{opacity:.6;cursor:not-allowed;background:#f5f5f5}.tickets-table td button[disabled]{opacity:.6;cursor:not-allowed;pointer-events:none}textarea[disabled]{opacity:.6;cursor:not-allowed;background:#f5f5f5}.support-tickets .btn-danger{background:#d32f2f}.btn{padding:8px 12px;border-radius:6px;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.btn:focus{outline:2px solid rgba(25,118,210,.18)}.btn-primary{background:#1976d2;color:#fff}.btn-secondary{background:#6c757d;color:#fff}.btn-outline{background:transparent;color:#1976d2;border:1px solid #1976d2}.btn-danger{background:#d32f2f;color:#fff}.btn-toggle{background:transparent;border:1px solid #cfd8dc;color:#37474f;padding:6px 10px;border-radius:999px;font-size:13px}.btn-toggle.active{background:#1976d2;color:#fff;border-color:#1976d2}.tickets-table td button.btn{padding:6px 10px;font-size:13px}.tickets-table td button.btn-outline{border-color:#1976d2}.tickets-table{width:100%;min-width:1160px;border-collapse:collapse;background:#fff}.support-tickets .tickets-table-wrap{width:100%;max-width:100%;overflow-x:auto}.tickets-table thead th{text-align:left;padding:10px 12px;background:#fafafa;border-bottom:1px solid #eee}.tickets-table td{padding:10px 12px;vertical-align:top;border-bottom:1px solid #f3f3f3}.tickets-table tbody tr:nth-child(odd){background:#fff}.tickets-table tbody tr:nth-child(2n){background:#fbfbfb}.tickets-table td .priority-cell{display:flex;gap:8px;align-items:center}.priority-badge,.status-badge{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;color:#fff;text-transform:capitalize}.priority-badge.low{background:#6c757d}.priority-badge.medium{background:#f6a623;color:#111}.priority-badge.high{background:#d32f2f}.status-badge.open{background:#1976d2}.status-badge.in-progress{background:#0288d1}.status-badge.resolved{background:#2e7d32}.tickets-table td select{padding:6px 8px;border-radius:6px;border:1px solid #ddd}.tickets-table td .muted{color:#666;font-size:13px}.tickets-table td[style]{max-width:360px;word-break:break-word}.modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2000;padding:24px}.modal{background:#fff;border-radius:8px;padding:20px;width:100%;max-width:720px;box-shadow:0 8px 36px #0000002e}.modal h4{margin:0 0 8px}.modal .notice{background:#fff8e1;border:1px solid #ffe0a3;padding:10px;margin:8px 0 12px;border-radius:6px}.modal textarea{width:100%;min-height:160px;padding:10px;border-radius:6px;border:1px solid #ddd;resize:vertical}.modal .actions{margin-top:12px;display:flex;gap:10px;justify-content:flex-end}@media(max-width:720px){.support-tickets{padding:12px}.support-tickets .search{min-width:160px}.tickets-table{min-width:980px}.tickets-table td[style]{max-width:160px}}.admin-header{display:flex;flex-direction:column;margin-bottom:20px}.admin-header p{font-size:16px;font-weight:700;text-transform:uppercase;font-family:var(--font-family);color:var(--accent-color);margin-bottom:10px}.admin-header h1{font-size:32px;font-weight:700;text-transform:uppercase;font-family:var(--font-family);margin:0}.heading{display:flex;justify-content:space-between;align-items:center}.heading .description{margin-top:10px;font-size:12px;color:var(--text-color)}.systemOnline{display:flex;align-items:center;margin-top:20px;box-shadow:0 2px 4px #0000001a;padding:10px;background-color:var(--background-color)}.systemOnline .indicator{width:10px;height:10px;border-radius:50%;background-color:green;margin-right:10px}.systemOnline .indicator.offline{background-color:red}.systemOnline span{font-size:14px;color:var(--text-color);text-transform:uppercase}.logs-section{margin-top:20px;display:flex;align-items:flex-start;gap:20px}.logsContainer{flex:1 1 0;min-width:0}.logsHeader{display:flex;align-items:center;padding:20px;border-bottom:1px solid var(--border-color);background-color:#001532;color:#fff;gap:10px;border-radius:18px 18px 0 0}.logsHeader div{padding:2px 6px;cursor:pointer;border-radius:50%;filter:brightness(.8)}.logsHeader div:hover{opacity:.8}.logsHeader .active{filter:brightness(1.2)}.logsHeader .errors{background-color:#ff4d4f}.logsHeader .Security{background-color:#faad14}.logsHeader .App{background-color:#27c83f}.logsContent{padding:20px 20px 40px;background-color:#020617;box-shadow:0 2px 4px #0000001a;min-height:200px;display:flex;flex-direction:column;gap:15px;max-height:500px;overflow-y:auto}.logEntry{border-radius:8px;background-color:var(--background-color);color:var(--text-color);font-family:var(--font-secondary);font-size:16px;display:inline-block}.logEntry>*{display:inline-block;margin-right:8px}.logEntry .time{color:#5089d2;margin-right:4px;font-family:Space Mono,monospace}.logEntry .logType{font-weight:700;text-transform:uppercase;padding:3px 8px;border-radius:4px;font-size:12px;font-family:var(--font-main)}.logEntry .logType.error{color:#eb3d5c}.logEntry .logType.security{color:#faad14}.logEntry .logType.info{color:#27c83f}.logsFooter{display:flex;align-items:center;padding:20px;border-bottom:1px solid var(--border-color);background-color:#001532;color:#fff;gap:10px;border-radius:0 0 18px 18px}.logsFooter p{margin:0}.logsFooter .loadMoreBtn{margin-left:auto}.terminalStatsBar{display:flex;gap:20px;padding:12px 20px;background-color:#0a0e27;border:1px solid #1a2d4a;font-family:Space Mono,Courier New,monospace;font-size:12px}.terminalStat{display:flex;align-items:center;gap:6px;font-weight:700;text-transform:uppercase}.terminalStat.errorStat{color:#ff6b6b}.terminalStat.securityStat{color:#ffd93d}.terminalStat.infoStat{color:#6bcf7f}.terminalStat.totalStat{color:#a78bfa}.loadMoreBtn{padding:6px 12px;background:linear-gradient(135deg,#2a4a7a,#1a3a5a);color:#64b5f6;border:1px solid #2a6aa0;border-radius:4px;cursor:pointer;font-family:Space Mono,Courier New,monospace;font-size:11px;font-weight:700;display:flex;align-items:center;gap:6px;transition:all .3s ease;text-transform:uppercase}.loadMoreBtn:hover:not(:disabled){background:linear-gradient(135deg,#3a5a8a,#2a4a7a);border-color:#3a7ab0;box-shadow:0 0 10px #2a6aa04d}.loadMoreBtn:disabled{opacity:.5;cursor:not-allowed}.SystemHealth{display:flex;flex-direction:column;gap:20px;margin-top:0;background-color:#f3f4f5;padding:20px;box-shadow:0 2px 6px #0000001a;border-radius:8px;width:min(360px,100%);flex:0 0 min(360px,100%)}.SystemHealth .healthHeader{display:flex;align-items:center;position:relative;gap:10px}.SystemHealth .healthHeader .title{display:flex;flex-direction:column}.SystemHealth .healthHeader .title h2{font-size:18px;margin:0;color:var(--muted-color)}.SystemHealth .healthHeader .title p{font-size:18px;color:var(--foundation-color);font-weight:700;margin:0}.SystemHealth .healthHeader .iconCont{position:absolute;right:20px;top:20px;width:20px}.SystemHealth .healthHeader .iconCont svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.SystemHealth .healthHeader .iconCont .statusIcon{fill:var(--accent-color);color:#f3f4f5}.SystemHealth .healthHeader .iconCont .checkIcon{color:#f3f4f5}.SystemHealth>div{border-top:1px solid #cccccc;padding-top:10px}.SystemHealth>div:first-child{margin-top:0;border-top:none}.SystemHealth>div p{font-size:14px;color:var(--text-color);margin:0}.SystemHealth>div p span{font-weight:700;color:var(--accent-color)}.statusIndicator{padding:2px 6px;border-radius:4px;font-size:12px;font-family:var(--font-main);color:#fff}.statusIndicator.OK{background-color:#27c83f}.statusIndicator.error{background-color:#eb3d5c}@media(max-width:1024px){.logs-section{flex-direction:column;gap:16px}.SystemHealth{width:100%;flex:1 1 auto}}.fileImportsSection{margin-top:30px;background-color:#f3f4f5;border-radius:12px;box-shadow:0 2px 6px #0000001a;overflow:hidden}.fileImportsHeader{display:flex;align-items:center;gap:10px;padding:18px 20px;background-color:#001532;color:#fff}.fileImportsHeader h2{font-size:16px;margin:0;text-transform:uppercase;font-family:var(--font-family);flex:1}.fileImportsHeader .importsCount{font-size:12px;background-color:var(--accent-color, #5089D2);padding:3px 10px;border-radius:12px;color:#fff}.fileImportsTable{display:flex;flex-direction:column}.fileImportsTableHead,.fileImportRow{display:grid;grid-template-columns:2fr 1.2fr 1.5fr .8fr;align-items:center;gap:12px;padding:12px 20px}.fileImportsTableHead{background-color:#e8eaee;font-weight:700;font-size:12px;text-transform:uppercase;color:var(--muted-color, #555);border-bottom:1px solid #cccccc}.fileImportsTableHead>div{display:flex;align-items:center;gap:6px}.fileImportRow{border-bottom:1px solid #e0e0e0;font-size:14px;color:var(--text-color);transition:background-color .15s ease}.fileImportRow:hover{background-color:#eaf1fb}.fileImportRow:last-child{border-bottom:none}.fileImportRow .fileLink{display:inline-flex;align-items:center;gap:6px;color:#5089d2;text-decoration:none;font-weight:600;font-family:Space Mono,monospace;word-break:break-all}.fileImportRow .fileLink:hover{text-decoration:underline;color:#001532}.fileImportRow .col-date{font-family:Space Mono,monospace;font-size:13px;color:#555}.fileImportRow .col-size{font-size:12px;color:#777}.noImports{padding:20px;text-align:center;color:#888;font-style:italic}@media(max-width:768px){.fileImportsTableHead{display:none}.fileImportRow{grid-template-columns:1fr;gap:4px;padding:14px 20px}.fileImportRow .col-user:before{content:"By: ";font-weight:700}.fileImportRow .col-date:before{content:"On: ";font-weight:700}.fileImportRow .col-size:before{content:"Size: ";font-weight:700}}.student-verification-page{min-height:100dvh;padding:92px clamp(16px,3vw,34px) 32px;background:radial-gradient(circle at top left,rgba(17,35,59,.14),transparent 36%),radial-gradient(circle at top right,rgba(35,76,124,.12),transparent 32%),linear-gradient(180deg,#f8fbff,#edf3f9);color:#10213a}.student-verification-header{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:22px}.student-verification-title h1{margin:0;font-family:var(--font-display);font-size:clamp(2rem,3vw,3rem);letter-spacing:-.04em}.student-verification-title p{margin:10px 0 0;color:#5b687a;max-width:70ch;line-height:1.6}.student-verification-stats{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px}.student-verification-stat{padding:14px 16px;border-radius:18px;background:#ffffffe6;border:1px solid rgba(203,213,225,.8);box-shadow:0 16px 32px #11233b14}.student-verification-stat span{display:block;font-size:.82rem;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.student-verification-stat strong{display:block;margin-top:6px;font-size:1.25rem;color:#11233b}.student-verification-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.student-verification-search,.student-verification-filter{min-height:48px;border-radius:16px;border:1px solid #cbd5e1;background:#ffffffeb;padding:0 16px;color:#0f172a}.student-verification-search{flex:1 1 280px}.student-verification-filter{flex:0 0 220px}.student-verification-card{border-radius:26px;overflow:hidden;border:1px solid rgba(203,213,225,.8);background:#fffffff0;box-shadow:0 24px 54px #11233b14}.student-verification-table{width:100%;border-collapse:collapse}.student-verification-table th,.student-verification-table td{padding:16px 18px;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:top}.student-verification-table th{background:#f8fafc;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.student-verification-table tbody tr:hover{background:#11233b08}.student-verification-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#11233b14;color:#11233b;font-size:.84rem;font-weight:700}.student-verification-actions{display:flex;flex-wrap:wrap;gap:8px}.student-verification-btn{min-height:40px;border:0;border-radius:14px;padding:0 14px;font-weight:700;cursor:pointer}.student-verification-btn:disabled{cursor:wait;opacity:.75;box-shadow:none}.student-verification-spinner{animation:student-verification-spin .9s linear infinite}@keyframes student-verification-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.student-verification-btn.primary{background:linear-gradient(135deg,#11233b,#234c7c);color:#fff}.student-verification-btn.success{background:#0f766e;color:#fff}.student-verification-btn.danger{background:#b91c1c;color:#fff}.student-verification-btn.ghost{background:#e2e8f0;color:#11233b}.student-verification-empty{padding:48px 24px;text-align:center;color:#64748b}.student-verification-modal-backdrop{position:fixed;inset:0;z-index:50;background:#0f172a7a;display:grid;place-items:center;padding:20px}.student-verification-modal{width:min(100%,680px);border-radius:24px;background:#fff;border:1px solid rgba(203,213,225,.9);box-shadow:0 30px 80px #070e1c47;padding:24px}.student-verification-modal h2{margin:0;font-family:var(--font-display);color:#11233b}.student-verification-modal p{margin:10px 0 0;color:#5b687a;line-height:1.6}.student-verification-modal textarea{width:100%;min-height:160px;margin-top:18px;resize:vertical;border:1px solid #cbd5e1;border-radius:18px;padding:14px 16px;font:inherit}.student-verification-modal textarea:focus{outline:none;border-color:#11233b;box-shadow:0 0 0 4px #11233b1f}.student-verification-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px;flex-wrap:wrap}.student-verification-link{color:#11233b;font-weight:700;text-decoration:none}.student-verification-link:hover{text-decoration:underline}@media(max-width:900px){.student-verification-table{display:block;overflow-x:auto}.student-verification-stats{grid-template-columns:1fr}}.login-page{--nav-height: 64px;--text-on-light: var(--foundation-color);--text-on-dark: var(--neutral-color);--text-muted-on-light: var(--muted-color);--fs-logo: .92rem;--fs-info-title: 1.28rem;--fs-info-body: .9rem;--fs-form-title: 1.34rem;--fs-form-body: .88rem;--info-panel-height: calc(100dvh - var(--nav-height));--panel-side-padding: 24px;--panel-top-padding: 36px;--panel-bottom-padding: 20px;min-height:100dvh;height:100dvh;width:100%;margin:0;overflow-x:hidden;overflow-y:auto}.login-navbar{position:fixed;top:0;left:0;width:100%;height:var(--nav-height);display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 24px 8px 18px;background:var(--neutral-color);border-bottom:1px solid var(--tint-color);z-index:30}.logo{display:flex;align-items:center;gap:.65rem;flex:0 0 auto;min-width:0;margin:0}.logo-image{width:44px;height:44px;display:block;flex:0 0 44px;object-fit:contain}.logo h1{margin:0;font-size:var(--fs-logo);font-weight:700;line-height:1.2;white-space:nowrap;color:var(--primary-color)}.support-link{color:var(--text-on-light);text-decoration:none;font-size:.96rem;font-weight:600}.support-link:hover{text-decoration:underline}.login-container{display:flex;height:calc(100dvh - var(--nav-height));width:100%;margin:0;margin-top:var(--nav-height);padding:0;overflow:hidden}.info-panel{position:relative;display:flex;align-items:center;justify-content:space-between;width:60%;height:var(--info-panel-height);min-height:var(--info-panel-height);max-height:var(--info-panel-height);margin:0;padding:0;overflow:hidden}.info-panel:before{content:"";position:absolute;inset:0;background:url(/assets/MSA_Building-CN6A4N6w.jpg) no-repeat center center / cover;filter:brightness(.6);z-index:-2}.background-gradient{position:absolute;inset:0;background:var(--gradient-visual-soul);opacity:.7;z-index:-1}.info-panel_content{display:flex;flex-direction:column;justify-content:flex-start;flex:0 1 auto;max-width:680px;width:min(100%,680px);margin:0 auto;color:var(--text-on-dark);padding:var(--panel-top-padding) var(--panel-side-padding) var(--panel-bottom-padding);gap:10px}.title-badge{padding:3px 12px;width:fit-content;background:#19191da6;gap:6px;display:flex;align-items:flex-start;margin-bottom:8px}.title-badge h2{color:#fbf9fa80;font-size:.9rem;align-self:flex-start;font-weight:700;line-height:1.3}.info-slide{display:flex;flex-direction:column;width:100%;min-height:0;gap:8px}.info-icon{display:inline-flex;align-items:center;justify-content:center;margin-bottom:2px}.info-panel_content h3{margin:0;min-height:0;max-height:none;overflow:visible;font-size:var(--fs-info-title);font-weight:700;font-family:var(--font-display);line-height:1.2}.info-panel_content p{margin:0;max-width:60ch;min-height:0;max-height:none;font-family:var(--font-main);font-size:var(--fs-info-body);line-height:1.5;overflow:visible;padding-right:0;color:#fbf9faeb}.previous,.next{cursor:pointer;padding:8px;color:var(--text-on-dark);opacity:.6;transition:all .2s ease}.previous:hover,.next:hover{opacity:1}.changeInfo{display:flex;gap:8px;margin-top:10px}.bar{width:30px;height:4px;background:#ccc;cursor:pointer;transition:.3s}.bar.current{width:40px;background:var(--accent-color)}.login-panel{width:40%;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:40px var(--panel-side-padding) 16px;background:var(--neutral-color);color:var(--text-on-light)}.login-panel form{width:min(100%,380px);padding:0;background:var(--neutral-color);display:flex;flex-direction:column;gap:6px}.login-header{width:min(100%,380px);display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:20px}.form-links{display:flex;justify-content:flex-end;margin-top:-2px}.forgot-password{border:0;background:transparent;padding:0;cursor:pointer;font-size:.9rem;color:var(--primary-color);text-decoration:none;font-weight:500}.login-register-row{display:flex;justify-content:center;margin-top:6px}.login-register-link{border:0;background:transparent;padding:0;cursor:pointer;font-size:.95rem;color:var(--primary-color);text-decoration:underline;text-underline-offset:3px;font-weight:700}.login-register-link:hover{opacity:.85}.input-group{width:100%;height:42px;display:flex;align-items:center;border:1px solid #d6d9df;border-radius:6px;background:#eef0f3;overflow:hidden}.password-toggle{width:40px;min-width:40px;height:100%;border:0;background:transparent;color:#616977;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.login-panel input{width:100%;height:100%;padding:0 12px 0 0;border:0;border-radius:0;font-size:var(--fs-form-body);color:var(--text-on-light);background:transparent;transition:border-color .2s ease}.input-group:focus-within{border-color:var(--primary-color);background:#f5f7fa}.Header{width:min(100%,380px);display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:20px}.Header h1{margin:0;color:#0f1b31;font-size:var(--fs-form-title);line-height:1.1}.Header p{margin:0;color:#4a5362;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:600}.Portal-Options{width:min(100%,380px);display:grid;grid-template-columns:1fr 1fr;background:#e4e6ea;border-radius:6px;padding:3px;margin-bottom:26px}@media(min-width:1200px){.login-page{--fs-logo: .88rem;--fs-info-title: 1.2rem;--fs-info-body: .84rem;--fs-form-title: 1.28rem;--fs-form-body: .82rem;--panel-side-padding: 20px;--panel-top-padding: 26px;--panel-bottom-padding: 16px}.info-panel{width:54%}.login-panel{width:46%;padding-top:28px;padding-bottom:18px}.info-panel_content{max-width:620px;width:min(100%,620px)}.Header,.Portal-Options,.login-panel form,.forgot-form{margin-inline:auto}}@media(min-width:1600px){.login-page{--fs-logo: .86rem;--fs-info-title: 1.15rem;--fs-info-body: .9rem;--fs-form-title: 1.27rem;--fs-form-body: .85rem}.info-panel{width:52%}.login-panel{width:48%}}.Portal-Options .btn{min-width:0;width:100%;height:38px;padding:0 10px;border:0;border-radius:5px;font-size:var(--fs-form-body);font-weight:600;color:#3b4250;background:transparent;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.Portal-Options .btn.is-active{background:#f7f8fa;color:#111827;box-shadow:0 1px 2px #00000014}.Portal-Options .btn:not(.is-active):hover{background:#f7f8fa8c}.login-panel label{margin-top:10px;margin-bottom:-4px;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#4a5362}.submit-div{margin-top:10px;position:relative;display:flex;align-items:center}.submit-div button{width:100%;height:46px;border:0;border-radius:6px;padding:0 46px 0 20px;font-size:var(--fs-form-body);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-on-dark);background:var(--primary-color);cursor:pointer}.submit-div svg{position:absolute;right:16px;width:17px;height:17px;pointer-events:none;color:var(--text-on-dark)}.forgot-form{width:min(100%,380px);display:grid;gap:12px}.forgot-description{color:#4a5362;font-size:var(--fs-form-body);line-height:1.5;margin-bottom:2px}.back-to-login{margin-top:6px;width:fit-content;border:0;background:transparent;color:var(--primary-color);display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-weight:600;padding:0}.back-to-login svg{width:15px;height:15px}.back-to-login:hover{text-decoration:underline}@media(max-width:980px){.login-page{--nav-height: 56px;--fs-logo: .9rem;--fs-info-title: 1.32rem;--fs-info-body: .88rem;--fs-form-title: 1.4rem;--fs-form-body: .87rem;--panel-side-padding: 18px;--panel-top-padding: 22px;--panel-bottom-padding: 16px;--info-panel-height: 290px;height:auto}.login-container{flex-direction:column;height:auto;min-height:calc(100dvh - var(--nav-height));overflow:visible}.info-panel{width:100%;height:var(--info-panel-height);min-height:var(--info-panel-height);max-height:var(--info-panel-height)}.info-panel_content{width:100%;max-width:none}.info-panel_content h3{margin:0}.login-panel{width:100%;height:auto;min-height:calc(100dvh - var(--nav-height) - var(--info-panel-height));padding:22px var(--panel-side-padding) 18px}}@media(max-width:640px){.login-page{--nav-height: 52px;--fs-logo: .88rem;--fs-info-title: 1.18rem;--fs-info-body: .86rem;--fs-form-title: 1.26rem;--fs-form-body: .86rem;--panel-side-padding: 14px;--panel-top-padding: 14px;--panel-bottom-padding: 12px;--info-panel-height: 280px;height:auto}.login-navbar{padding:6px 10px}.logo-image{width:30px;height:30px;flex-basis:30px}.logo h1{font-size:var(--fs-logo)}.support-link{font-size:.85rem}.info-panel{height:var(--info-panel-height);min-height:var(--info-panel-height);max-height:var(--info-panel-height)}.info-panel_content{padding:var(--panel-top-padding) var(--panel-side-padding) var(--panel-bottom-padding)}.previous,.next{padding:5px}.login-panel{height:auto;min-height:calc(100dvh - var(--nav-height) - var(--info-panel-height));justify-content:center;align-items:center;padding:20px var(--panel-side-padding)}.Header{margin-bottom:12px}.login-panel form{width:100%;max-width:330px;padding:0}.Portal-Options{margin-bottom:16px}}.login-header h1{margin:0;color:#0f1b31;font-size:var(--fs-form-title);line-height:1.1}.login-header p{margin:0;color:#4a5362;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:600}.portal-options{width:min(100%,380px);display:grid;grid-template-columns:1fr 1fr;background:#e4e6ea;border-radius:6px;padding:3px;margin-bottom:26px}.portal-options .btn{min-width:0;width:100%;height:38px;padding:0 10px;border:0;border-radius:5px;font-size:var(--fs-form-body);font-weight:600;color:#3b4250;background:transparent;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.portal-options .btn.is-active{background:#f7f8fa;color:#111827;box-shadow:0 1px 2px #00000014}.portal-options .btn:not(.is-active):hover{background:#f7f8fa8c}.login-panel label{margin-top:8px;margin-bottom:4px;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#4a5362}.input-group{width:100%;height:42px;display:flex;align-items:center;border:1px solid #d6d9df;border-radius:6px;background:#eef0f3;overflow:hidden;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.input-group:focus-within{border-color:var(--primary-color);background:#f5f7fa;box-shadow:0 0 0 3px #0050b41f}.input-icon{width:40px;min-width:40px;display:inline-flex;align-items:center;justify-content:center;color:#616977;font-weight:600}.input-icon svg{width:15px;height:15px}.login-panel input{width:100%;height:100%;padding:0 12px 0 0;border:0;border-radius:0;font-size:var(--fs-form-body);color:var(--text-on-light);background:transparent}.login-panel input::placeholder{color:#9aa2b1}.login-panel input:focus{outline:none}.password-toggle{width:40px;min-width:40px;height:100%;border:0;background:transparent;color:#616977;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s ease}.password-toggle:hover{color:#3f4754}.password-toggle:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px}.password-toggle svg{width:16px;height:16px}.form-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px;margin-bottom:4px}.remember-me{display:inline-flex;align-items:center;gap:8px;margin:0!important;font-size:.82rem!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;color:#4a5362;cursor:pointer;-webkit-user-select:none;user-select:none}.remember-me input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--primary-color);cursor:pointer}.forgot-password{border:0;background:transparent;padding:0;cursor:pointer;font-size:.85rem;color:var(--primary-color);font-weight:500}.forgot-password:hover{text-decoration:underline}.submit-btn{margin-top:10px;position:relative;width:100%;height:46px;border:0;border-radius:6px;padding:0 46px 0 20px;font-size:var(--fs-form-body);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-on-dark);background:var(--primary-color);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,opacity .2s ease}.submit-btn:hover:not(:disabled){filter:brightness(1.05)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.submit-btn svg{position:absolute;right:16px;width:17px;height:17px;pointer-events:none}@media(min-width:1200px){.login-header,.portal-options,.login-panel form,.forgot-form{margin-inline:auto}}@media(max-width:640px){.login-panel form{width:100%;max-width:380px}.login-header,.portal-options{max-width:380px}.login-header{margin-bottom:12px}.portal-options{margin-bottom:16px}}.student-auth-page{min-height:100dvh;background:#f4f7fb;color:#0f172a;margin-bottom:60px}.student-auth-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:28px;padding:96px clamp(18px,3vw,36px) 32px;min-height:100dvh;align-items:center}.student-auth-hero,.student-auth-card,.student-auth-status{border-radius:28px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 30px 80px #070e1c2e}.student-auth-hero{position:relative;overflow:hidden;padding:clamp(28px,4vw,56px);color:#f8fbff;background:#11233b url(/assets/MSA_Building-CN6A4N6w.jpg) center/cover no-repeat;background-blend-mode:multiply;min-height:100%}.student-auth-hero:after{content:"";position:absolute;inset:auto -18% -20% auto;width:260px;height:260px;border-radius:999px;background:#ffffff14;pointer-events:none}.student-auth-hero>*{position:relative;z-index:1}.student-auth-eyebrow{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin:0 0 16px;padding:8px 14px;border-radius:999px;background:#ffffff1f;color:#d9e6f6;font-size:.84rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.student-auth-hero h1{margin:0;max-width:12ch;font-family:var(--font-display);font-size:clamp(2.6rem,5vw,4.8rem);line-height:.98;letter-spacing:-.04em}.student-auth-hero p{max-width:60ch;margin:18px 0 0;color:#f6f9ffe0;font-size:1rem;line-height:1.7}.student-auth-steps{display:grid;gap:14px;margin:30px 0 0;padding:0;list-style:none}.student-auth-step{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.student-auth-step .step-index{flex:0 0 auto;width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff29;font-weight:800}.student-auth-step h3{margin:0;font-size:1rem}.student-auth-step p{margin:4px 0 0;font-size:.9rem;color:#f6f9ffc2}.student-auth-card,.student-auth-status{background:#ffffffeb;border:1px solid rgba(226,232,240,.9)}.student-auth-card{padding:clamp(26px,3vw,38px)}.student-auth-card h2,.student-auth-status h2{margin:0;font-family:var(--font-display);font-size:clamp(1.7rem,2.2vw,2.2rem);color:#11233b}.student-auth-card p,.student-auth-status p{margin:10px 0 0;color:#4b5563;line-height:1.6}.student-auth-form{display:grid;gap:14px;margin-top:24px}.student-auth-field{display:grid;gap:8px}.student-auth-field label{font-size:.92rem;font-weight:700;color:#1f2937}.student-auth-input,.student-auth-file-button,.student-auth-textarea{width:100%;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc;color:#0f172a;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.student-auth-input,.student-auth-textarea{padding:14px 16px;font-size:.98rem}.student-auth-input:focus,.student-auth-textarea:focus,.student-auth-file-button:focus-within{outline:none;border-color:#11233b;box-shadow:0 0 0 4px #11233b1f}.student-auth-input:hover,.student-auth-textarea:hover,.student-auth-file-button:hover{transform:translateY(-1px)}.student-auth-file-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.student-auth-file-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 18px;cursor:pointer;font-weight:700}.student-auth-file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.student-auth-file-name{font-size:.92rem;color:#475569}.student-auth-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}.student-auth-primary,.student-auth-secondary{min-height:50px;border:0;border-radius:16px;padding:0 18px;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.student-auth-primary{background:#11233b;color:#fff;box-shadow:0 16px 28px #11233b2e}.student-auth-secondary{background:#e2e8f0;color:#11233b}.student-auth-footer{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px;flex-wrap:wrap}.student-auth-footer .student-auth-link{font-size:.95rem}.student-auth-primary:hover,.student-auth-secondary:hover{transform:translateY(-1px)}.student-auth-note{margin-top:8px;font-size:.9rem;color:#64748b}.student-auth-link-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.student-auth-link{border:0;background:transparent;color:#11233b;font-weight:700;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px}.student-auth-status{display:grid;place-items:center;min-height:60dvh;padding:clamp(28px,5vw,56px);text-align:center}.student-auth-status .status-icon{width:72px;height:72px;border-radius:24px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:20px;background:#11233b1a;color:#11233b}.student-auth-status .status-icon.error{color:#b91c1c;background:#b91c1c14}.student-auth-status .status-icon.success{color:#047857;background:#0478571a}.student-auth-status .status-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:28px}.student-auth-muted{color:#64748b;font-size:.92rem}@media(max-width:980px){.student-auth-shell{grid-template-columns:1fr}.student-auth-hero{min-height:auto}}@media(max-width:640px){.student-auth-shell{padding-top:84px;padding-bottom:24px}.student-auth-card,.student-auth-status{border-radius:22px}}.notfound-page{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden;background:url(/assets/MSA_Campus-CpGOF69I.jpg) no-repeat center center / cover}.notfound-page:before{content:"";position:absolute;inset:0;background:var(--gradient-visual-soul);opacity:.7}.notfound-card{position:relative;z-index:1;width:min(100%,560px);text-align:center;padding:8px 10px}.notfound-label{margin:0;color:#f8fafce6;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.notfound-title{margin:10px 0 8px;color:#f8fafc;font-size:clamp(1.8rem,3.5vw,2.6rem);line-height:1.1;text-shadow:0 2px 10px rgba(2,6,23,.35)}.notfound-text{margin:0 0 22px;color:#f1f5f9e6;line-height:1.6}.notfound-link{display:inline-flex;align-items:center;justify-content:center;min-width:180px;height:42px;border-radius:8px;text-decoration:none;background:#f8fafceb;color:#001a38;font-weight:700;transition:transform .2s ease,filter .2s ease}.notfound-link:hover{transform:translateY(-1px);filter:brightness(1.08)}@media(max-width:640px){.notfound-page{padding:16px}.notfound-card{padding:24px 16px}.notfound-title{font-size:clamp(1.55rem,8vw,2rem)}}.student-home{display:grid;gap:2rem;padding:3rem 2rem 2rem;font-family:var(--font-main)}.student-home .head{font-weight:600;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.student-home .head h1{margin:0;font-size:clamp(1.8rem,3vw,2.4rem);font-family:var(--font-main);font-weight:700;color:var(--primary-color);letter-spacing:-.02em}.student-home .head p{margin:.5rem 0 0;font-size:1rem;color:var(--text-color);line-height:1.6;opacity:.8}.number-status{display:flex;justify-content:space-between;gap:1.25rem;margin:0 2rem}.number-status>div{padding:1.5rem;border-radius:12px;border:1px solid rgba(0,33,71,.08);background:var(--neutral-color);box-shadow:var(--shadow-soft);display:grid;gap:.5rem;transition:.2s ease}.number-status>div:hover{transform:translateY(-5px);box-shadow:0 4px 12px #0021471a}.number-status p{margin:0;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-color)}.number-status h2{margin:0;font-size:2.2rem;font-weight:700;color:var(--primary-color);font-family:var(--font-display)}.box{width:100%;border-top:4px solid var(--bridge-teal)!important;transition:border-top-color .2s ease,transform .2s ease,box-shadow .2s ease}.box{border-top-color:var(--bridge-teal)!important}.pending-box:hover{border-top-color:var(--info-color)!important}.survey-box:hover{border-top-color:var(--success-color)!important}.notification-box:hover{border-top-color:var(--warning-color)!important}.pending-box .box-icon{color:var(--info-color)}.survey-box .box-icon{color:var(--success-color)}.notification-box .box-icon{color:var(--warning-color)}.quick-actions{display:grid;gap:1.25rem;padding:2rem;border-radius:16px;border:1px solid rgba(0,33,71,.08);background:var(--surface-high);box-shadow:var(--shadow-soft)}.quick-actions h3{margin:0;font-size:1.2rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.05em}.actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.actions-grid>div{padding:1.5rem;border-radius:12px;background:var(--neutral-color);border:1px solid rgba(0,33,71,.08);border-left:4px solid transparent;display:grid;gap:.5rem;align-content:start;transition:.2s ease}.appeal-action{border-left-color:var(--tertiary-color)}.survey-action{border-left-color:var(--bridge-teal)}.notification-action{border-left-color:var(--primary-color)}.actions-grid>div:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0021471a}.actions-grid h4{margin:0;font-size:1rem;font-weight:700;color:var(--primary-color)}.actions-grid p{margin:0;font-size:.85rem;color:var(--text-color);line-height:1.5}.actions-grid button{margin-top:.75rem;padding:.6rem 1rem;font-size:.85rem;font-weight:600;font-family:var(--font-main);background:var(--primary-color);color:var(--neutral-color);border:none;border-radius:8px;cursor:pointer;transition:.2s ease}.actions-grid button:hover{background:var(--secondary-color);transform:translateY(-1px)}.dashboard-footer{display:grid;grid-template-columns:1.5fr 1fr;gap:1.25rem;margin-bottom:2rem}.upcoming-deadlines{padding:1.5rem;border-radius:12px;border:1px solid rgba(0,33,71,.08);background:var(--neutral-color);box-shadow:var(--shadow-soft);display:grid;gap:1rem}.upcoming-deadlines .deadline-header{display:flex;justify-content:space-between;align-items:center}.upcoming-deadlines h4{margin:0;font-size:.95rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.05em}.upcoming-deadlines .view-all{font-size:.8rem;font-weight:600;color:var(--bridge-teal);cursor:pointer}.deadline-item{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;border-radius:10px;background:var(--tint-color);border:1px solid rgba(0,33,71,.06);transition:transform .15s ease,box-shadow .15s ease}.deadline-item:hover{transform:translate(4px);box-shadow:0 2px 8px #00214714}.deadline-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;padding:.4rem;border-radius:8px;background:var(--primary-color);color:#fff;font-weight:700}.deadline-date .month{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;opacity:.85}.deadline-date .day{font-size:1.3rem;font-weight:700;line-height:1.1}.deadline-info{flex:1}.deadline-info p{margin:0;font-size:.9rem;font-weight:600;color:var(--primary-color)}.deadline-info span{font-size:.8rem;color:var(--text-color)}.deadline-tag{font-size:.65rem;font-weight:700;padding:.25rem .65rem;border-radius:20px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.deadline-tag-survey{background:var(--info-light);color:var(--bridge-teal)}.deadline-tag-appeal{background:var(--warning-light);color:var(--warning-text)}.recent-activity{padding:1.5rem;border-radius:12px;border:1px solid rgba(0,33,71,.08);background:var(--neutral-color);box-shadow:var(--shadow-soft);display:grid;gap:1rem;align-content:start}.activity-top{display:flex;justify-content:space-between;align-items:center}.recent-activity h4{margin:0;font-size:.95rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.05em}.activity-item{display:grid;gap:.3rem;padding:.85rem 1rem;border-radius:10px;background:var(--tint-color);border:1px solid rgba(0,33,71,.06);border:3px solid transparent;border-left:3px solid var(--bridge-teal);transition:.2s}.activity-item:hover{transform:translate(4px);box-shadow:0 2px 8px #00214714;border:3px solid var(--bridge-teal)}.activity-item .time{font-size:.72rem;color:var(--text-color);opacity:.7}.activity-item .description{font-size:.9rem;color:var(--foundation-color);font-weight:500}.activity-item .activity-status{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--success-color)}@media(max-width:768px){.number-status{flex-direction:column}.actions-grid,.dashboard-footer{grid-template-columns:1fr}}*{box-sizing:border-box}.appeals-page{display:grid;gap:2rem;padding:0 2rem 2rem;margin:0;font-family:var(--font-main)}.appeals-page .head{display:grid;grid-template-columns:1fr auto;align-items:start;gap:1.5rem}.appeals-page .head div{padding:.5rem 0;display:flex;flex-direction:column;gap:.4rem}.appeals-page .head h1{margin:0;font-size:clamp(1.6rem,3vw,2.2rem);font-family:var(--font-display);font-weight:700;color:var(--primary-color);letter-spacing:-.02em}.appeals-page .head p{margin:0;font-size:.95rem;color:var(--text-color);max-width:480px;line-height:1.6}.appeals-page .head button{align-self:center;padding:.7rem 1.4rem;font-size:.9rem;font-weight:600;font-family:var(--font-main);background:var(--primary-color);color:var(--neutral-color);border:none;border-radius:8px;box-shadow:var(--shadow-soft);cursor:pointer;transition:.2s ease;white-space:nowrap}.appeals-page .head button:hover{background:var(--secondary-color);transform:translateY(-2px);box-shadow:0 4px 12px #0021472e}.active-appeals{display:grid;gap:1.25rem;padding:1.75rem;border-radius:12px;border:1px solid rgba(0,33,71,.08);background:var(--surface-high);box-shadow:var(--shadow-soft)}.active-appeals h2{margin:0;font-size:.85rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.07em;padding-bottom:.75rem;border-bottom:2px solid rgba(0,33,71,.08)}.appeals-banner{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;background:var(--primary-color);border-radius:10px;padding:1.5rem}.appeals-banner.upcoming{background:var(--tint-color);border:1px solid rgba(0,33,71,.1);border-left:4px solid var(--accent-color)}.banner-left{display:flex;flex-direction:column;gap:.5rem}.banner-urgent{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:var(--error-color);color:var(--neutral-color);padding:.25rem .65rem;border-radius:4px;width:fit-content}.appeals-banner.upcoming .banner-urgent{background:var(--info-light);color:var(--info-text)}.banner-left h3{margin:0;font-size:clamp(1rem,2vw,1.3rem);font-weight:700;font-family:var(--font-display);color:var(--neutral-color);line-height:1.2}.appeals-banner.upcoming .banner-left h3{color:var(--primary-color)}.banner-left p{margin:0;font-size:.82rem;color:#ffffffa6;line-height:1.5;max-width:340px}.appeals-banner.upcoming .banner-left p{color:var(--text-color)}.banner-countdown{display:flex;flex-direction:column;align-items:center;gap:.4rem;background:#00000040;border-radius:8px;padding:.85rem 1.25rem;flex-shrink:0}.countdown-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#ffffff8c}.countdown-digits{display:flex;align-items:center;gap:.1rem}.countdown-unit{display:flex;flex-direction:column;align-items:center;min-width:2rem}.countdown-unit span{font-size:1.5rem;font-weight:800;font-family:var(--font-display),monospace;color:var(--neutral-color);line-height:1;letter-spacing:-.02em}.countdown-unit small{font-size:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffff73;margin-top:.2rem}.countdown-sep{font-size:1.2rem;font-weight:700;color:#ffffff59;padding-bottom:.9rem;align-self:flex-end}.appeal-sessions-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:1.25rem}.appeal-session-box{padding:1.25rem;border-radius:10px;border:1px solid rgba(0,33,71,.08);border-left:4px solid var(--primary-color);background:var(--neutral-color);display:grid;gap:.65rem;box-shadow:var(--shadow-soft);transition:.2s ease}.appeal-session-box:hover{transform:translateY(-2px);box-shadow:0 4px 14px #0021471f;border-left-color:var(--accent-color)}.appeal-session-box h3{margin:0;font-size:.88rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.04em}.appeal-session-box p{margin:0;font-size:.88rem;color:var(--text-color);line-height:1.55}.appeal-session-box button{align-self:start;margin-top:.25rem;padding:.55rem 1rem;font-size:.85rem;font-weight:600;font-family:var(--font-main);background:var(--primary-color);color:var(--neutral-color);border:none;border-radius:8px;cursor:pointer;transition:.2s ease;width:100%}.appeal-session-box button:hover:not(:disabled){background:var(--secondary-color);transform:translateY(-1px)}.appeal-session-box button:disabled{background:var(--soft-color);cursor:not-allowed;transform:none;opacity:.55}.appeal-policy-box{padding:1.25rem;border-radius:10px;background:var(--tint-color);border:1px solid rgba(0,33,71,.07);border-left:4px solid transparent;display:grid;gap:.65rem;transition:.2s ease}.appeal-policy-box:hover{border-left-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 4px 12px #00214714}.appeal-policy-box h3{margin:0;font-size:.78rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.06em}.appeal-policy-box p{margin:0;font-size:.88rem;color:var(--text-color);line-height:1.6}.your-appeals{display:grid;gap:1.25rem;padding:1.75rem;border-radius:12px;border:1px solid rgba(0,33,71,.08);background:var(--surface-high);box-shadow:var(--shadow-soft)}.your-appeals h2{margin:0;font-size:.85rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.07em;padding-bottom:.75rem;border-bottom:2px solid rgba(0,33,71,.08)}.filter-tab{display:flex;align-items:center;gap:.45rem;padding:.45rem 1rem;border-radius:20px;border:1px solid rgba(0,33,71,.15);background:var(--neutral-color);color:var(--text-color);font-size:.82rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.2s ease}.filter-tab.active{background:var(--primary-color);color:var(--neutral-color);border-color:var(--primary-color)}.filter-tab .tab-count{padding:.1rem .45rem;border-radius:10px;font-size:.72rem;background:#fff3}.filter-tab:not(.active) .tab-count{background:#00214714;color:var(--primary-color)}.appeals-grid{display:grid;gap:1rem}.appeal-card{padding:1.25rem;border-radius:10px;border:1px solid rgba(0,33,71,.08);border-left:5px solid transparent;background:var(--neutral-color);display:grid;gap:1rem;box-shadow:var(--shadow-soft);transition:.2s ease}.appeal-card:hover{border-left:5px solid var(--accent-color);transform:translateY(-2px);box-shadow:0 4px 14px #0021471a}.appeal-card .header-card{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.appeal-card .header-card .right-header{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.appeal-card .header-card h3{margin:0;font-size:1rem;font-weight:700;color:var(--primary-color)}.appeal-card .header-card>p{margin:0;font-size:.82rem;color:var(--text-color)}.status{display:inline-block;padding:.25rem .7rem;border-radius:20px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.status-badge.pending,.status.pending{background:var(--info-light);color:var(--info-text)}.status-badge.under,.status.under{background:var(--warning-light);color:var(--warning-text)}.status-badge.resolved,.status.resolved{background:var(--success-light);color:var(--success-text)}.status-badge.rejected,.status.rejected{background:var(--error-light);color:var(--error-text)}.appeal-card .grade{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--tint-color);border-radius:8px}.appeal-card .grade h4{margin:0;font-size:.72rem;font-weight:700;color:var(--text-color);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;min-width:90px}.appeal-card .grade p{margin:0;display:flex;align-items:center;gap:.5rem}.grade-badge{font-size:.82rem;font-weight:700;padding:.2rem .6rem;border-radius:6px;background:#0021470f;color:var(--primary-color)}.appeal-card .new-grade{font-size:1.2rem;font-weight:700;color:var(--primary-color);padding-right:10px}.appeal-card .old-grade{font-size:1rem;color:var(--soft-color)}.appeal-card .comment-section{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.appeal-card .reason,.appeal-card .respons{padding:1rem;border-radius:8px;background:var(--tint-color);box-shadow:5px 5px 10px #00214714;border:3px solid transparent;border-top:3px solid var(--bridge-teal);display:grid;gap:.5rem;transition:.2s ease}.appeal-card .reason:hover{border:3px solid var(--bridge-teal);transform:translateY(-2px);box-shadow:0 #0000}.appeal-card .respons:hover{border:3px solid var(--bridge-teal);transform:translateY(-2px);box-shadow:0 4px 10px #00214714}.appeal-card .reason h4,.appeal-card .respons h4{margin:0;font-size:.72rem;font-weight:700;color:var(--text-color);text-transform:uppercase;letter-spacing:.05em}.appeal-card .reason p,.appeal-card .respons p{margin:0;font-size:.88rem;color:var(--foundation-color);line-height:1.6}.appeal-card .respons p.timestamp{font-size:.78rem;color:var(--text-color);margin-top:.25rem}.state-msg{font-size:.9rem;color:var(--text-color);padding:1rem 0}.modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-box{background:var(--neutral-color);border-radius:16px;width:90%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00214733;display:grid}.modal-header h3{margin:0;font-size:1.1rem;font-weight:700;color:var(--primary-color)}.modal-header p{margin:.2rem 0 0;font-size:.78rem;color:var(--text-color);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.modal-close-btn{background:transparent;border:none;font-size:1.4rem;color:var(--text-color);cursor:pointer;padding:.25rem .5rem;border-radius:6px;transition:.15s ease;line-height:1}.modal-close-btn:hover{background:var(--tint-color);color:var(--primary-color)}.modal-body{padding:1.25rem 1.5rem;display:grid;gap:1.25rem}.modal-field{display:grid;gap:.5rem}.modal-field label{font-size:.78rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.05em}.current-grade{font-size:.9rem;color:var(--text-color)}.grade-display-panel{position:relative;display:grid;gap:.55rem;padding:.95rem 1rem;border:1px solid var(--soft-color);border-radius:12px;background:linear-gradient(180deg,var(--surface-high) 0%,var(--neutral-color) 100%);box-shadow:var(--shadow-soft);min-height:92px}.grade-display-panel.has-grade{border-color:var(--info-color);background:var(--info-light)}.grade-display-panel.no-grade{border-style:dashed;background:var(--surface-high)}.grade-display-panel.grade-display-error{border-color:var(--error-color);background:var(--error-light)}.grade-display-panel.is-loading{background:var(--tint-color)}.grade-display-topline{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.grade-display-title{font-size:.84rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:.06em}.grade-display-badge{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:.35rem .75rem;border-radius:999px;background:var(--primary-color);color:var(--neutral-color);font-size:1rem;font-weight:800;letter-spacing:.04em;box-shadow:var(--shadow-soft)}.grade-display-message,.grade-display-hint{margin:0;font-size:.88rem;line-height:1.5;color:var(--text-color)}.grade-display-hint{color:var(--text-color)}.grade-display-spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--soft-color);border-top-color:var(--primary-color);animation:grade-spin .8s linear infinite;position:absolute;right:1rem;bottom:1rem}@keyframes grade-spin{to{transform:rotate(360deg)}}.modal-field select,.modal-field textarea{width:100%;padding:.65rem .9rem;border:1px solid var(--soft-color);border-radius:8px;font-size:.88rem;font-family:var(--font-main);color:var(--foundation-color);background:var(--surface-high);transition:.2s ease;resize:none}.modal-field select:focus,.modal-field textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--info-light)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--tint-color)}.modal-cancel-btn{padding:.6rem 1.25rem;border:1px solid var(--soft-color);border-radius:8px;background:transparent;color:var(--text-color);font-size:.88rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.15s ease}.modal-cancel-btn:hover{background:var(--tint-color)}.modal-submit-btn{padding:.6rem 1.25rem;border:none;border-radius:8px;background:var(--primary-color);color:var(--neutral-color);font-size:.88rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.15s ease}.modal-submit-btn:hover:not(:disabled){background:var(--secondary-color);transform:translateY(-1px)}.modal-submit-btn:disabled{opacity:.5;cursor:not-allowed}.modal-status{font-size:.82rem;font-weight:600;padding:.4rem .75rem;border-radius:6px;margin-right:auto}.modal-status.success{background:var(--success-light);color:var(--success-text)}.modal-status.error{background:var(--error-light);color:var(--error-text)}@media(max-width:768px){.appeal-sessions-grid,.appeal-card .comment-section{grid-template-columns:1fr}}@media(max-width:640px){.appeals-page{gap:1.5rem;padding:0 0 2rem}.appeals-page .head{grid-template-columns:1fr}.appeals-page .head button{justify-self:start}.active-appeals,.your-appeals{padding:1.25rem}.appeal-card .grade{flex-wrap:wrap}.filter-tabs{gap:.4rem}.appeals-banner{flex-direction:column;align-items:flex-start}.banner-countdown{width:100%;align-items:flex-start}}.student-surveys-page{display:grid;gap:2rem;padding:0rem 2rem 2rem}.student-surveys-page .head{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;flex-wrap:wrap}.student-surveys-page .head h1{margin:0;font-size:clamp(1.8rem,3vw,2.4rem);font-family:var(--font-display);font-weight:700;color:var(--primary-color);letter-spacing:-.02em}.student-surveys-page .head p{margin:.5rem 0 0;font-size:1rem;color:var(--text-color);max-width:500px;line-height:1.6}.student-surveys-page .empty-state{padding:3rem 2rem;text-align:center;border-radius:12px;border:2px dashed rgba(0,33,71,.2);background:var(--tint-color)}.student-surveys-page .empty-state h3{margin:0;font-size:1.2rem;color:var(--primary-color);font-weight:700}.student-surveys-page .empty-state p{margin:.5rem 0 0;color:var(--text-color);font-size:.95rem}.student-surveys-page .loading-state{padding:3rem 2rem;text-align:center;border-radius:12px;border:1px solid rgba(0,33,71,.1);background:var(--surface-high)}.student-surveys-page .loading-state p{margin:0;font-size:1rem;color:var(--text-color)}.student-surveys-page .survey-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));border-top:2px solid rgba(0,33,71,.1);padding-top:1rem}.student-surveys-page .survey-card{padding:1.5rem;border-radius:12px;border:1px solid rgba(0,33,71,.1);background:var(--neutral-color);display:flex;flex-direction:column;gap:1rem;transition:var(--anim-fast);box-shadow:var(--shadow-soft)}.student-surveys-page .survey-card:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 12px #0021471a}.student-surveys-page .survey-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.student-surveys-page .survey-card-header h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--primary-color)}.student-surveys-page .survey-card-header .course-name{margin:.25rem 0 0;font-size:.85rem;color:var(--text-color)}.student-surveys-page .status-badge{display:inline-block;padding:.35rem .85rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.student-surveys-page .status-badge.pending{background:var(--info-light);color:var(--info-text)}.student-surveys-page .status-badge.submitted{background:var(--success-light);color:var(--success-text)}.student-surveys-page .survey-card-body{display:grid;gap:1rem}.student-surveys-page .survey-card-body .description{margin:0;font-size:.9rem;color:var(--foundation-color);line-height:1.6}.student-surveys-page .survey-meta{display:grid;gap:.5rem;padding:.75rem;background:var(--tint-color);border-radius:8px;font-size:.85rem}.student-surveys-page .survey-meta p{margin:0;color:var(--text-color);line-height:1.5}.student-surveys-page .survey-meta strong{color:var(--primary-color);font-weight:600}.student-surveys-page .survey-card-footer{margin-top:.5rem}.student-surveys-page .survey-card-footer button:hover:not(:disabled){background:var(--secondary-color);transform:translateY(-1px)}.student-surveys-page .survey-card-footer button:disabled{background:var(--soft-color);cursor:not-allowed;opacity:.6}.survey-card-footer .open-survey-btn{width:100%;padding:.75rem 1rem;font-size:.9rem;font-weight:600;background:var(--primary-color);color:var(--neutral-color);border:none;border-radius:8px;cursor:pointer;transition:var(--anim-fast)}.open-survey-btn.disabled{margin-top:1.3rem;background:var(--soft-color);color:var(--text-color);cursor:not-allowed;opacity:.6}.survey-group{margin-bottom:40px}.group-title{font-size:18px;font-weight:700;margin-bottom:16px;padding:8px 16px;border-radius:8px;border-bottom:2px solid var(--primary-color);width:fit-content}.pending-title{background-color:var(--info-light);color:var(--info-text)}.completed-title{background-color:var(--success-light);color:var(--success-text)}@media(max-width:640px){.student-surveys-page{gap:1.5rem;padding:0 0 2rem}.student-surveys-page .survey-grid{grid-template-columns:1fr}.student-surveys-page .head{flex-direction:column;gap:1.5rem}}.student-notifications-page{display:grid;gap:2rem;padding:3rem 2rem 2rem;margin-bottom:2rem}.student-notifications-page .head{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;flex-wrap:wrap}.student-notifications-page .head h1{margin:0;font-size:clamp(1.8rem,3vw,2.4rem);font-family:var(--font-main);font-weight:700;color:var(--primary-color);letter-spacing:-.02em}.student-notifications-page .head p{margin:.5rem 0 0;font-size:1rem;color:var(--text-color);max-width:500px;line-height:1.6}.mark-all-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-size:.875rem;font-weight:600;background:var(--primary-color);color:var(--neutral-color);border:1.5px solid rgba(0,33,71,.15);border-radius:8px;cursor:pointer;white-space:nowrap;transition:.2s}.mark-all-btn:hover{background-color:var(--surface-high);color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.notif-filters{display:flex;gap:.5rem;flex-wrap:wrap}.notif-filter-btn{display:flex;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.875rem;font-weight:600;border-radius:20px;border:1.5px solid rgba(0,33,71,.15);background:var(--neutral-color);color:var(--text-color);cursor:pointer;transition:var(--anim-fast)}.notif-filter-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.notif-filter-btn.active{background:var(--primary-color);color:var(--neutral-color);border-color:var(--primary-color)}.notif-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;font-size:.7rem;font-weight:700;border-radius:20px;background:var(--neutral-color);color:var(--primary-color)}.notif-filter-btn.active .notif-filter-count{background:#ffffff40;color:var(--neutral-color)}.notif-list{display:grid;gap:.75rem}.notif-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:12px;border:1px solid rgba(0,33,71,.1);background:var(--neutral-color);cursor:pointer;transition:var(--anim-fast);box-shadow:var(--shadow-soft);position:relative}.notif-card:hover{border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 4px 12px #0021471a}.notif-card--unread{background:var(--surface-high, #f8faff);border-color:#00214733}.notif-card-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center}.notif-card-body{flex:1;min-width:0;display:grid;gap:.4rem}.notif-card-title{margin:0;font-size:.95rem;font-weight:600;color:var(--primary-color);line-height:1.4}.notif-card--unread .notif-card-title{font-weight:700}.notif-card-meta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.notif-type-badge{display:inline-block;padding:.2rem .65rem;border-radius:20px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.notif-card-time{font-size:.8rem;color:var(--foundation-color, #888)}.notif-card-unread-dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--primary-color)}.student-notifications-page .empty-state{padding:3rem 2rem;text-align:center;border-radius:12px;border:2px dashed rgba(0,33,71,.2);background:var(--tint-color);display:grid;gap:.5rem;place-items:center;color:var(--text-color)}.student-notifications-page .empty-state svg{color:#00214740}.student-notifications-page .empty-state h3{margin:0;font-size:1.1rem;color:var(--primary-color);font-weight:700}.student-notifications-page .empty-state p{margin:0;font-size:.9rem}.student-notifications-page .loading-state{padding:3rem 2rem;text-align:center;border-radius:12px;border:1px solid rgba(0,33,71,.1);background:var(--surface-high)}.student-notifications-page .loading-state p{margin:0;font-size:1rem;color:var(--text-color)}@media(max-width:640px){.student-notifications-page{gap:1.5rem;padding:0 0 2rem}.student-notifications-page .head{flex-direction:column;gap:1rem}.notif-card{padding:.85rem 1rem}}.take-survey-page{max-width:800px;margin:0 auto;padding:32px 24px}.loading-state{text-align:center;padding:48px;color:#666}.back-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid #ddd;border-radius:8px;padding:8px 16px;font-size:14px;cursor:pointer;color:#444;margin-bottom:32px;transition:.2s}.back-btn:hover{background:#f5f5f5;border-color:#bbb}.survey-header{text-align:center;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e0e0e0}.survey-main-title{font-size:28px;font-weight:800;color:#1a3c5e;margin:16px 0 8px}.survey-subtitle{font-size:15px;color:#666}.sticky-progress{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fff;padding:10px 24px;box-shadow:0 2px 8px #00000014}.take-survey-page{max-width:800px;margin:0 auto;padding:90px 24px 32px}.progress-info{display:flex;justify-content:space-between;font-size:13px;color:#555;margin-bottom:8px}.progress-bar-track{width:100%;height:8px;background:#e0e0e0;border-radius:999px;overflow:hidden}.progress-bar-fill{height:100%;background:#1a3c5e;border-radius:999px;transition:width .3s ease}.question-number{font-weight:700;color:#1a3c5e;margin-right:6px}.survey-section{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000000a}.survey-footer{margin-top:32px;text-align:center}.footer-note{font-size:13px;color:#888;margin-bottom:16px}.survey-section{margin-bottom:40px}.section-title{font-size:20px;font-weight:700;color:#1a3c5e;padding-bottom:10px;border-bottom:2px solid #e0e0e0;margin-bottom:24px}.question-block{margin-bottom:32px}.question-text{font-size:15px;font-weight:500;color:#222;margin-bottom:12px}.required-star{color:red;margin-left:4px}.likert-scale{display:flex;gap:10px}.likert-option{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;padding:12px 6px;border-radius:10px;border:2px solid #ddd;background:#fff;cursor:pointer;font-size:12px;text-align:center;color:#555;transition:.2s}.likert-option:hover{border-color:#1a3c5e;background:#f0f4ff}.likert-option.selected{border-color:#1a3c5e;background:#e8f0fe;color:#1a3c5e;font-weight:600}.likert-radio{display:none}.likert-value{font-size:20px;font-weight:700;color:inherit}.likert-label{font-size:11px;line-height:1.3;color:inherit}.text-answer{width:100%;min-height:80px;max-height:200px;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;color:#333;resize:vertical}.submit-btn{display:block;width:100%;padding:14px;margin-bottom:3rem;background:#1a3c5e;color:#fff;font-size:16px;font-weight:600;border:none;border-radius:10px;cursor:pointer;margin-top:16px;transition:.2s}.submit-btn:hover{background:#15304d}@media(max-width:600px){.likert-scale{flex-wrap:wrap}.likert-option{flex:1 1 calc(33% - 10px)}}.instructor-appeals-page{display:grid;gap:2rem;padding:2rem;font-family:var(--font-main)}.instructor-appeals-page .head h2{margin:0;font-size:1.8rem;font-weight:700;color:var(--primary-color)}.instructor-appeals-page .head p{margin:.25rem 0 0;color:var(--text-color);font-size:.95rem}.filter-tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;border:1px solid rgba(0,33,71,.15);background:var(--neutral-color);color:var(--text-color);font-size:.85rem;font-weight:600;cursor:pointer;transition:.2s ease;font-family:var(--font-main)}.filter-tab .badge{background:#fff3;padding:.1rem .45rem;border-radius:10px;font-size:.75rem}.appeals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.appeal-card{background:var(--neutral-color);border:1px solid rgba(0,33,71,.08);border-radius:12px;padding:1.25rem;display:grid;gap:.75rem;box-shadow:var(--shadow-soft);transition:.2s ease}.appeal-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0021471a}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.course-info{font-size:.82rem;color:var(--text-color)}.detail-label{font-size:.78rem;font-weight:700;color:var(--text-color);text-transform:uppercase;letter-spacing:.04em;min-width:90px}.grade-badge{font-size:.8rem;font-weight:700;padding:.2rem .6rem;border-radius:6px;background:#0021470f;color:var(--primary-color)}.status-badge{font-size:.7rem;font-weight:700;padding:.25rem .65rem;border-radius:20px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.review-btn{margin-top:.25rem;padding:.55rem 1rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.2s ease}.review-btn:hover{background:var(--secondary-color);transform:translateY(-1px)}.modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:100000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{background:var(--neutral-color);border-radius:16px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003;display:grid;gap:0}.modal-header h3{margin:0;font-size:1.2rem;font-weight:700;color:var(--primary-color)}.modal-close{background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--text-color);padding:.25rem;border-radius:6px;transition:.15s ease}.modal-summary{margin:1.25rem 1.5rem;padding:1rem;border-radius:10px;background:var(--tint-color);border:1px solid rgba(0,33,71,.07);display:grid;gap:.6rem}.summary-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-color);min-width:100px;padding-top:.1rem}.summary-value{font-size:.88rem;color:var(--primary-color);font-weight:500}.reason-text{line-height:1.5}.modal-form{padding:0 1.5rem;display:grid;gap:1.25rem}.required{color:var(--tertiary-color)}.optional{color:var(--text-color);font-weight:400;font-size:.8rem}.status-options{display:flex;gap:.5rem}.status-option{flex:1;padding:.6rem;border-radius:8px;border:2px solid transparent;font-size:.8rem;font-weight:600;cursor:pointer;transition:.15s ease;font-family:var(--font-main);background:var(--tint-color);color:var(--text-color)}.status-option-under-review.selected{border-color:var(--info-color);background:var(--info-light);color:var(--info-text)}.status-option-resolved.selected{border-color:var(--success-color);background:var(--success-light);color:var(--success-text)}.status-option-rejected.selected{border-color:var(--error-color);background:var(--error-light);color:var(--error-text)}.status-option:not(.selected):hover{background:#0021470f}.grade-select{padding:.6rem .75rem;border-radius:8px;border:1px solid rgba(0,33,71,.2);font-size:.88rem;font-family:var(--font-main);color:var(--primary-color);background:var(--neutral-color);cursor:pointer}.note-textarea{padding:.75rem;border-radius:8px;border:1px solid rgba(0,33,71,.2);font-size:.88rem;font-family:var(--font-main);color:var(--primary-color);resize:vertical;min-height:80px;max-height:200px;background:var(--neutral-color)}.note-textarea:focus,.grade-select:focus{outline:none;border-color:var(--primary-color)}.btn-cancel{padding:.6rem 1.25rem;border-radius:8px;border:1px solid rgba(0,33,71,.2);background:transparent;color:var(--text-color);font-size:.88rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.15s ease}.btn-submit{padding:.6rem 1.25rem;border-radius:8px;border:none;background:var(--primary-color);color:#fff;font-size:.88rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.15s ease}.state-msg{color:var(--text-color);font-size:.9rem}.instructor-notifications-page{display:grid;gap:2rem;padding:3rem 2rem 2rem;margin-bottom:2rem}.inotif-head{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;flex-wrap:wrap}.inotif-head h1{margin:0;font-size:clamp(1.8rem,3vw,2.4rem);font-family:var(--font-main);font-weight:700;color:var(--primary-color);letter-spacing:-.02em}.inotif-head p{margin:.5rem 0 0;font-size:1rem;color:var(--text-color);max-width:520px;line-height:1.6}.inotif-mark-all-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-size:.875rem;font-weight:600;background:var(--primary-color);color:var(--neutral-color);border:1.5px solid rgba(0,33,71,.15);border-radius:8px;cursor:pointer;white-space:nowrap;transition:var(--anim-fast)}.inotif-mark-all-btn:hover{background:var(--surface-high);color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.inotif-filters{display:flex;gap:.5rem;flex-wrap:wrap}.inotif-filter-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.875rem;font-weight:600;border-radius:20px;border:1.5px solid rgba(0,33,71,.15);background:var(--neutral-color);color:var(--text-color);cursor:pointer;transition:var(--anim-fast)}.inotif-filter-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.inotif-filter-btn.active{background:var(--primary-color);color:var(--neutral-color);border-color:var(--primary-color)}.inotif-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;font-size:.7rem;font-weight:700;border-radius:20px;background:var(--neutral-color);color:var(--primary-color)}.inotif-filter-btn.active .inotif-filter-count{background:#ffffff40;color:var(--neutral-color)}.inotif-list{display:grid;gap:.75rem}.inotif-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:12px;border:1px solid rgba(0,33,71,.1);background:var(--neutral-color);cursor:pointer;transition:var(--anim-fast);box-shadow:var(--shadow-soft);position:relative}.inotif-card:hover{border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 4px 12px #0021471a}.inotif-card--unread{background:var(--surface-high, #f8faff);border-color:#00214733}.inotif-card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.inotif-card-body{flex:1;min-width:0;display:grid;gap:.4rem}.inotif-card-title{margin:0;font-size:.95rem;font-weight:600;color:var(--primary-color);line-height:1.4}.inotif-card--unread .inotif-card-title{font-weight:700}.inotif-card-meta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.inotif-type-badge{display:inline-block;padding:.2rem .65rem;border-radius:20px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.inotif-card-time{font-size:.8rem;color:var(--foundation-color, #888)}.inotif-card-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.inotif-action-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .9rem;border-radius:8px;border:1px solid var(--primary-color);background:transparent;color:var(--primary-color);font-size:.8rem;font-weight:600;cursor:pointer;transition:var(--anim-fast);white-space:nowrap}.inotif-action-btn:hover{background:var(--primary-color);color:var(--neutral-color)}.inotif-card-unread-dot{width:8px;height:8px;border-radius:50%;background:var(--primary-color);flex-shrink:0}.inotif-empty-state,.inotif-loading-state{padding:3rem 2rem;text-align:center;border-radius:12px;border:1px solid rgba(0,33,71,.1);background:var(--surface-high);display:grid;gap:.75rem;place-items:center;color:var(--text-color)}.inotif-empty-state svg{color:#00214740}.inotif-empty-state h3{margin:0;font-size:1.1rem;color:var(--primary-color);font-weight:700}.inotif-empty-state p,.inotif-loading-state p{margin:0;font-size:.9rem;color:var(--text-color)}@media(max-width:640px){.instructor-notifications-page{gap:1.5rem;padding:1.75rem}.inotif-head{flex-direction:column;gap:1rem}.inotif-card{padding:.85rem 1rem;align-items:flex-start}.inotif-card-actions{align-self:flex-start}.inotif-action-btn{padding:.35rem .75rem}}.module-leader-dashboard{--ml-surface: rgba(255, 255, 255, .92);--ml-surface-strong: #ffffff;--ml-border: rgba(0, 33, 71, .12);--ml-border-strong: rgba(0, 33, 71, .18);--ml-shadow: 0 18px 40px rgba(15, 23, 42, .08);--ml-shadow-soft: 0 10px 24px rgba(15, 23, 42, .06);display:grid;gap:1.25rem;padding:clamp(1rem,1.2vw + .9rem,1.75rem);margin-bottom:40px;background:var(--ml-surface);border-radius:28px}.dashboard-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:stretch;gap:1rem;flex-wrap:wrap;padding:1.4rem;border-radius:22px;background:#0b274d;color:var(--neutral-color);border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 44px #0021472e}.dashboard-hero:after{content:"";position:absolute;inset:auto -80px -120px auto;width:240px;height:240px;border-radius:999px;background:radial-gradient(circle,#d6a37338,#d6a37300);pointer-events:none}.dashboard-hero>div:first-child{position:relative;z-index:1;min-width:min(100%,34rem)}.dashboard-hero h1{margin:.15rem 0 .45rem;font-size:clamp(1.55rem,1.1rem + 1.2vw,2.15rem);line-height:1.15;color:var(--neutral-color)}.dashboard-hero .eyebrow{margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;color:#f1f5f9c7}.dashboard-hero .hero-copy{margin:0;max-width:68ch;color:#f1f5f9db;font-size:.96rem}.course-picker{position:relative;z-index:1;min-width:min(100%,320px);padding:1rem 1.05rem;border-radius:18px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;gap:.5rem;align-content:center}.course-picker label{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:#f1f5f9c7}.course-picker select{width:100%;border:1px solid rgba(148,163,184,.28);border-radius:14px;padding:.84rem 1rem;background:#fffffffa;color:var(--foundation-color);font:inherit;box-shadow:0 8px 20px #0f172a14;outline:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.course-picker select:hover{border-color:#00214747}.course-picker select:focus{border-color:#00214794;box-shadow:0 0 0 4px #0021471f}.course-picker span{font-size:.84rem;color:#f1f5f9d1}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.9rem}.kpi-card{position:relative;overflow:hidden;border-radius:18px;padding:1rem 1.05rem 1.05rem;background:var(--ml-surface);border:1px solid var(--ml-border);box-shadow:var(--ml-shadow-soft);display:grid;gap:.4rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.kpi-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:currentColor;opacity:.95}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--ml-shadow);border-color:var(--ml-border-strong)}.kpi-card.teal{color:#0f766e}.kpi-card.blue{color:#2563eb}.kpi-card.gold{color:#ca8a04}.kpi-card.green{color:#16a34a}.kpi-card.red{color:#dc2626}.kpi-card.indigo{color:#4f46e5}.kpi-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-color)}.kpi-value{font-size:clamp(1.55rem,1.05rem + 1vw,2rem);line-height:1;color:var(--foundation-color)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.secondary-grid{align-items:start}.dashboard-panel{background:var(--ml-surface-strong);border-radius:20px;border:1px solid var(--ml-border);box-shadow:var(--ml-shadow-soft);padding:1.05rem 1.1rem 1.15rem;min-width:0;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.dashboard-panel:hover{transform:translateY(-1px);box-shadow:var(--ml-shadow);border-color:var(--ml-border-strong)}.panel-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.85rem}.panel-header h2{margin:0;font-size:1rem;color:var(--foundation-color)}.panel-header p{margin:.2rem 0 0;color:var(--text-color);font-size:.82rem}.chart-shell{position:relative;height:340px}.panel-empty{min-height:340px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(180deg,#f8fafc,#f1f5f9);color:var(--text-color);border:1px dashed rgba(148,163,184,.55);text-align:center;padding:1.2rem}.survey-panel,.survey-list{display:grid;gap:.75rem}.survey-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.95rem 1rem;border-radius:16px;background:linear-gradient(180deg,#f8fafcf2,#f1f5f9f2);border:1px solid rgba(148,163,184,.18)}.survey-item strong{display:block;color:var(--foundation-color);margin-bottom:.25rem}.survey-item span{display:block;color:var(--text-color);font-size:.78rem}.dashboard-empty-state{padding:2rem;border-radius:20px;background:var(--ml-surface-strong);border:1px solid var(--ml-border);box-shadow:var(--ml-shadow-soft)}.dashboard-empty-state h1{margin:0 0 .4rem;color:var(--foundation-color)}.dashboard-empty-state p{margin:0;color:var(--text-color)}@media(max-width:1200px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:720px){.module-leader-dashboard{padding:1rem;border-radius:22px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-hero,.survey-item{flex-direction:column}.course-picker{width:100%}.chart-shell,.panel-empty{height:260px;min-height:260px}}.ml-appeals-page{display:grid;gap:2rem;padding:2rem;font-family:var(--font-main)}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.summary-card{background:var(--neutral-color);border:1px solid rgba(0,33,71,.08);border-left:4px solid transparent;border-radius:12px;padding:1.2rem 1rem;display:flex;flex-direction:column;gap:.35rem;box-shadow:0 4px 12px #00214714;transition:transform .2s ease,box-shadow .2s ease}.summary-card:hover{box-shadow:0 8px 28px #0000001a;transform:translateY(-2px)}.summary-card.total{border-left-color:var(--primary-color)}.summary-card.unassigned{border-left-color:var(--warning-color)}.summary-card.in-review{border-left-color:var(--info-color)}.summary-card.resolved{border-left-color:var(--success-color)}.summary-card.rejected{border-left-color:var(--error-color)}.summary-number{font-size:2rem;font-weight:800;color:var(--primary-color);line-height:1}.summary-card.unassigned .summary-number{color:var(--warning-text)}.summary-card.in-review .summary-number{color:var(--info-text)}.summary-card.resolved .summary-number{color:var(--success-text)}.summary-card.rejected .summary-number{color:var(--error-text)}.summary-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-color)}.ml-section{display:grid;gap:1rem}.section-title{margin:0;padding-bottom:.75rem;border-bottom:1px solid rgba(0,33,71,.08);display:flex;align-items:center;gap:.75rem;font-size:1.1rem;font-weight:700;color:var(--primary-color)}.urgent-badge{font-size:.72rem;font-weight:700;padding:.25rem .65rem;border-radius:999px;background:var(--error-light);color:var(--error-text);text-transform:uppercase;letter-spacing:.04em}.appeals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:1.2rem}.appeal-card{background:var(--neutral-color);border:1px solid rgba(0,33,71,.08);border-radius:12px;padding:1.2rem;display:grid;gap:.75rem;box-shadow:0 4px 12px #0021470f;transition:.2s ease}.appeal-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0021471a}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.card-header h4{margin:0;font-size:1rem;font-weight:700;color:var(--primary-color)}.course-info{font-size:.84rem;color:var(--text-color)}.card-detail{display:flex;align-items:center;gap:.5rem}.detail-label{min-width:90px;font-size:.78rem;font-weight:700;color:var(--text-color);text-transform:uppercase;letter-spacing:.04em}.grade-badge{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:.18rem .55rem;border-radius:6px;background:#0021470f;color:var(--primary-color);font-size:.8rem;font-weight:700}.reason-preview{font-size:.85rem;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .65rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.status-pending{background:var(--warning-light);color:var(--warning-text)}.status-under-review{background:var(--info-light);color:var(--info-text)}.status-resolved{background:var(--success-light);color:var(--success-text)}.status-rejected{background:var(--error-light);color:var(--error-text)}.appeal-card__actions{display:grid;gap:.75rem;margin-top:.25rem}.assign-btn,.review-btn{width:100%;border:none;border-radius:8px;padding:.65rem 1rem;font-size:.86rem;font-weight:600;font-family:var(--font-main);color:#fff;cursor:pointer;transition:.2s ease}.assign-btn{background:var(--primary-color)}.assign-btn:hover{background:var(--secondary-color);transform:translateY(-1px)}.review-btn{background:var(--info-text)}.review-btn:hover{filter:brightness(.95);transform:translateY(-1px)}.filter-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.filter-tab{display:flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;border:1px solid rgba(0,33,71,.15);background:var(--neutral-color);color:var(--text-color);font-size:.85rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.2s ease}.filter-tab:hover{background:var(--tint-color)}.filter-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.filter-tab .badge{padding:.1rem .45rem;border-radius:10px;font-size:.75rem;background:#fff3}.filter-tab:not(.active) .badge{background:#00214714;color:var(--primary-color)}.state-msg{font-size:.92rem;color:var(--text-color)}.modal-overlay{position:fixed;inset:0;background:#0000006b;display:flex;align-items:center;justify-content:center;z-index:100000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:1rem}.modal{width:100%;max-width:520px;max-height:90vh;overflow-y:auto;background:var(--neutral-color);border-radius:16px;box-shadow:0 20px 60px #00000038}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 0}.modal-header h3{margin:0;font-size:1.15rem;font-weight:700;color:var(--primary-color)}.modal-close{border:none;background:transparent;color:var(--text-color);padding:.25rem;border-radius:6px;cursor:pointer;transition:.15s ease}.modal-close:hover{background:var(--tint-color)}.modal-summary{margin:1.2rem 1.5rem;padding:1rem;border-radius:10px;background:var(--tint-color);border:1px solid rgba(0,33,71,.07);display:grid;gap:.6rem}.summary-row{display:flex;align-items:flex-start;gap:.75rem}.summary-row .summary-label{min-width:100px;padding-top:.1rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-color)}.summary-row .summary-value{font-size:.88rem;font-weight:500;color:var(--primary-color)}.reason-row{align-items:flex-start}.reason-text{line-height:1.6}.modal-form{padding:0 1.5rem;display:grid;gap:1.1rem}.form-group{display:grid;gap:.5rem}.form-group label{font-size:.85rem;font-weight:700;color:var(--primary-color)}.grade-select,.note-textarea{width:100%;border-radius:8px;border:1px solid rgba(0,33,71,.2);background:var(--neutral-color);color:var(--primary-color);font-family:var(--font-main)}.grade-select{padding:.65rem .75rem;font-size:.88rem}.note-textarea{min-height:110px;padding:.8rem .9rem;font-size:.9rem;resize:vertical}.grade-select:focus,.note-textarea:focus{outline:none;border-color:var(--primary-color)}.status-options{display:flex;gap:.75rem;flex-wrap:wrap}.status-option{padding:.6rem 1rem;border-radius:999px;border:1px solid rgba(0,33,71,.2);background:var(--neutral-color);color:var(--text-color);font-size:.85rem;font-weight:700;font-family:var(--font-main);cursor:pointer;transition:.2s ease}.status-option:hover{background:var(--tint-color)}.status-option.selected{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.required{color:var(--error-text);font-weight:800}.optional{color:var(--text-color);font-size:.8rem;font-weight:500}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem}.btn-cancel,.btn-submit{border-radius:8px;padding:.65rem 1.25rem;font-size:.88rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:.15s ease}.btn-cancel{background:transparent;color:var(--text-color);border:1px solid rgba(0,33,71,.2)}.btn-cancel:hover{background:var(--tint-color)}.btn-submit{background:var(--primary-color);color:#fff;border:none}.btn-submit:hover:not(:disabled){background:var(--secondary-color)}.btn-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.ml-appeals-page{padding:1rem}.summary-cards{grid-template-columns:1fr 1fr}.appeals-grid{grid-template-columns:1fr}.card-detail{align-items:flex-start;flex-direction:column;gap:.25rem}.detail-label{min-width:auto}.modal-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}:root{--bg-base: #fbf9fa;--bg-surface: #ffffff;--bg-elevated: #f1f5f9;--bg-hover: #e7e8e9;--border: #e7e8e9;--border-accent: #adb5bd;--text-primary: #191c1d;--text-secondary: #495857;--text-muted: #64748b;--accent: #002147;--accent-glow: rgba(0, 33, 71, .08);--accent-2: #16a34a;--accent-3: #d97706;--accent-4: #dc2626;--accent-5: #b22b1d;--coral: #fe624e;--coral-dim: rgba(254, 98, 78, .1);--navy: #002147;--navy-dim: rgba(0, 33, 71, .08);--gold: #d4a373;--gold-dim: rgba(212, 163, 115, .14);--success-color: #16a34a;--success-light: #dcfce7;--warning-color: #d97706;--warning-light: #fef3c7;--error-color: #dc2626;--error-light: #fee2e2;--info-color: #0284c7;--info-light: #e0f2fe;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-card: 0 2px 12px rgba(0, 33, 71, .08);--shadow-md: 0 4px 24px rgba(0, 33, 71, .1);--font-display: "Playfair Display", Georgia, serif;--font-body: "DM Sans", sans-serif;--font-mono: "DM Mono", monospace;--topbar-h: 64px;--tabbar-h: 52px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.dean-dashboard{display:flex;flex-direction:column;min-height:100vh;font-family:var(--font-body);background:var(--bg-base);color:var(--text-primary);line-height:1.6}.dd-header{background:var(--navy);height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:100;box-shadow:0 2px 16px #0021472e}.dd-header-left{display:flex;align-items:center;gap:14px}.dd-logo-text{font-family:var(--font-display);font-size:15px;font-weight:600;color:#fff;line-height:1.2}.dd-logo-sub{font-size:10px;font-weight:400;color:#ffffff80;letter-spacing:.08em;text-transform:uppercase;margin-top:1px}.dd-header-right{display:flex;align-items:center;gap:14px}.dd-faculty-badge{padding:5px 13px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:20px;font-size:11px;font-weight:500;color:#ffffffd9;font-family:var(--font-mono)}.dd-topbar-date{font-size:11px;color:#ffffff73;font-family:var(--font-mono)}.dd-refresh-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-sm);cursor:pointer;color:#ffffffb3;transition:all .18s ease}.dd-refresh-btn:hover{background:#fe624e40;border-color:var(--coral);color:var(--coral)}.dd-refresh-btn svg{width:14px;height:14px}.dd-refresh-btn.spinning svg{animation:dd-spin 1s linear infinite}@keyframes dd-spin{to{transform:rotate(360deg)}}.dd-tabbar{background:var(--bg-surface);border-bottom:2px solid var(--border);display:flex;align-items:flex-end;padding:0 32px;gap:0;position:sticky;top:var(--topbar-h);z-index:90;box-shadow:var(--shadow-card);overflow-x:auto}.dd-tabbar::-webkit-scrollbar{height:3px}.dd-tabbar::-webkit-scrollbar-track{background:var(--border)}.dd-tabbar::-webkit-scrollbar-thumb{background:var(--navy);border-radius:2px}.dd-tab-btn{display:flex;align-items:center;gap:7px;padding:14px 18px 12px;font-size:13px;font-weight:500;font-family:var(--font-body);color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all .18s ease;white-space:nowrap;letter-spacing:.01em}.dd-tab-btn svg{width:14px;height:14px;flex-shrink:0}.dd-tab-btn:hover{color:var(--navy);background:var(--bg-elevated)}.dd-tab-btn.active{color:var(--navy);border-bottom-color:var(--coral);font-weight:600}.dd-page{padding:28px 32px;flex:1;max-width:1600px;width:100%;margin:0 auto;animation:dd-fadeUp .3s ease both}@keyframes dd-fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dd-highlight{background:var(--navy);border-radius:var(--radius-lg);padding:26px 32px;margin-bottom:28px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;position:relative;overflow:hidden}.dd-highlight:before,.dd-highlight:after{content:"";position:absolute;pointer-events:none;border-radius:50%}.dd-highlight:before{top:-60px;right:-60px;width:200px;height:200px;background:#fe624e0f}.dd-highlight:after{bottom:-40px;left:60px;width:120px;height:120px;background:#ffffff05}.dd-highlight-greeting{font-family:var(--font-display);font-size:20px;font-weight:600;color:#fff;margin-bottom:4px}.dd-highlight-sub{font-size:11px;color:#ffffff73;font-family:var(--font-mono)}.dd-highlight-metrics{display:flex;gap:32px;flex-wrap:wrap}.dd-highlight-metric{text-align:center}.dd-highlight-metric-val{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--coral);line-height:1}.dd-highlight-metric-lbl{font-size:10px;color:#ffffff73;text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-mono);margin-top:4px}.dd-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:28px}.dd-stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px;position:relative;overflow:hidden;transition:all .22s ease;cursor:default;box-shadow:var(--shadow-card)}.dd-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--card-accent, var(--navy))}.dd-stat-card:hover{border-color:var(--border-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.dd-stat-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;background:var(--icon-bg, var(--navy-dim))}.dd-stat-icon svg{width:18px;height:18px}.dd-stat-value{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:6px}.dd-stat-label{font-size:11px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-family:var(--font-mono)}.dd-stat-trend{position:absolute;bottom:16px;right:16px;font-size:11px;font-family:var(--font-mono);font-weight:500;display:flex;align-items:center;gap:3px}.trend-up{color:var(--success-color)}.trend-down{color:var(--error-color)}.dd-charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}.dd-charts-grid.wide{grid-template-columns:2fr 1fr}.dd-charts-grid.triple{grid-template-columns:1fr 1fr 1fr}.dd-charts-grid.single{grid-template-columns:1fr}.dd-chart-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:22px;position:relative;transition:border-color .2s,box-shadow .2s;box-shadow:var(--shadow-card)}.dd-chart-card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-md)}.dd-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.dd-chart-title{font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.dd-chart-badge{font-size:10px;font-family:var(--font-mono);padding:3px 8px;border-radius:20px;background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border)}.dd-chart-wrap{position:relative;height:220px}.dd-chart-wrap.tall{height:280px}.dd-chart-wrap.short{height:160px}.dd-table-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:28px;box-shadow:var(--shadow-card)}.dd-table-header{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px;background:var(--bg-elevated)}.dd-table-title{font-size:13px;font-weight:600;color:var(--text-primary);font-family:var(--font-display)}.dd-table-controls{display:flex;gap:10px;align-items:center}.dd-search-wrap{position:relative;display:flex;align-items:center}.dd-search-icon{position:absolute;left:10px;width:14px;height:14px;color:var(--text-muted);pointer-events:none}.dd-search-input{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 12px 7px 32px;font-size:13px;font-family:var(--font-body);color:var(--text-primary);width:200px;transition:border-color .18s}.dd-search-input:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px var(--navy-dim)}.dd-search-input::placeholder{color:var(--text-muted)}.dd-table{width:100%;border-collapse:collapse;font-size:13px}.dd-table thead{background:var(--bg-elevated)}.dd-table th{padding:11px 20px;text-align:left;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-mono);border-bottom:1px solid var(--border);white-space:nowrap}.dd-table td{padding:12px 20px;border-bottom:1px solid var(--border);color:var(--text-secondary);vertical-align:middle}.dd-table tr:last-child td{border-bottom:none}.dd-table tbody tr{transition:background .15s}.dd-table tbody tr:hover{background:var(--bg-elevated)}.dd-cell-primary{color:var(--text-primary);font-weight:500}.dd-avatar{width:30px;height:30px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.dd-avatar-cell{display:flex;align-items:center;gap:10px}.dd-badge{display:inline-block;padding:3px 9px;border-radius:20px;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;font-family:var(--font-mono)}.dd-badge-blue{background:var(--info-light);color:var(--info-color);border:1px solid rgba(2,132,199,.25)}.dd-badge-green{background:var(--success-light);color:var(--success-color);border:1px solid rgba(22,163,74,.25)}.dd-badge-orange{background:var(--warning-light);color:var(--warning-color);border:1px solid rgba(217,119,6,.25)}.dd-badge-red{background:var(--error-light);color:var(--error-color);border:1px solid rgba(220,38,38,.25)}.dd-badge-purple{background:#b22b1d1a;color:var(--accent-5);border:1px solid rgba(178,43,29,.25)}.dd-badge-gold{background:var(--gold-dim);color:#92510a;border:1px solid rgba(212,163,115,.35)}.dd-progress-wrap{display:flex;align-items:center;gap:10px}.dd-progress-bg{flex:1;height:5px;background:var(--bg-elevated);border-radius:10px;overflow:hidden}.dd-progress-fill{height:100%;border-radius:10px;background:var(--bar-color, var(--navy));transition:width .6s cubic-bezier(.4,0,.2,1)}.dd-progress-lbl{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);min-width:36px;text-align:right}.dd-stars{display:flex;gap:2px}.dd-star{width:12px;height:12px}.dd-star.filled{color:var(--gold)}.dd-star.empty{color:var(--border-accent)}.dd-tab-nav{display:flex;gap:4px;margin-bottom:24px;background:var(--bg-surface);border:1px solid var(--border);padding:4px;border-radius:var(--radius-md);width:fit-content;box-shadow:var(--shadow-card)}.dd-tab-nav .dd-tab-btn{padding:7px 16px;border-radius:var(--radius-sm);border-bottom:none;margin-bottom:0;color:var(--text-muted);font-size:12px}.dd-tab-nav .dd-tab-btn.active{background:var(--navy);color:#fff;border-color:transparent}.dd-tab-nav .dd-tab-btn:hover:not(.active){background:var(--bg-elevated);color:var(--navy)}.dd-likert-row{display:flex;flex-direction:column;gap:10px;padding:4px 0}.dd-likert-item{display:flex;align-items:center;gap:12px}.dd-likert-label{font-size:11px;color:var(--text-secondary);width:130px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-likert-score{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);min-width:26px;text-align:right}.dd-funnel-row{display:flex;flex-direction:column;gap:10px}.dd-funnel-item{display:flex;align-items:center;gap:12px}.dd-funnel-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dd-funnel-name{font-size:12px;color:var(--text-secondary);width:90px;flex-shrink:0}.dd-funnel-count{font-size:12px;font-family:var(--font-mono);color:var(--text-muted);min-width:28px}.dd-error{background:var(--error-light);border:1px solid rgba(220,38,38,.3);border-radius:var(--radius-sm);padding:12px 16px;color:var(--error-color);font-size:13px;display:flex;align-items:center;gap:8px;margin-bottom:20px}.dd-empty{padding:52px 20px;text-align:center;color:var(--text-muted)}.dd-empty svg{width:48px;height:48px;margin:0 auto 14px;color:var(--border-accent);display:block}.dd-empty p{font-size:14px}.dd-skeleton{background:linear-gradient(90deg,var(--bg-elevated) 25%,#e2e8f0 50%,var(--bg-elevated) 75%);background-size:200% 100%;animation:dd-shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes dd-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dd-skeleton-line{height:14px;margin-bottom:10px}.dd-skeleton-card{height:110px;border-radius:var(--radius-md);margin-bottom:16px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-elevated)}::-webkit-scrollbar-thumb{background:var(--border-accent);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--navy)}.dd-pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-top:1px solid var(--border);font-size:12px;color:var(--text-muted);font-family:var(--font-mono)}.dd-pagination-btns{display:flex;gap:6px}.dd-pg-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);font-family:var(--font-mono);font-size:12px;transition:all .15s}.dd-pg-btn:hover{border-color:var(--navy);color:var(--navy)}.dd-pg-btn.active{background:var(--navy);border-color:var(--navy);color:#fff}.dd-pg-btn:disabled{opacity:.35;cursor:not-allowed}.dd-select{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 10px;color:var(--text-secondary);font-size:12px;font-family:var(--font-body);cursor:pointer;transition:border-color .18s}.dd-select:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px var(--navy-dim)}@media(max-width:1100px){.dd-charts-grid,.dd-charts-grid.wide{grid-template-columns:1fr}.dd-charts-grid.triple{grid-template-columns:1fr 1fr}}@media(max-width:860px){.dd-stats-grid{grid-template-columns:repeat(2,1fr)}.dd-charts-grid.triple{grid-template-columns:1fr}.dd-tabbar{padding:0 12px}.dd-page{padding:20px 16px}.dd-header{padding:0 16px}}@media(max-width:520px){.dd-stats-grid{grid-template-columns:1fr}.dd-tab-btn{padding:12px 12px 10px;font-size:12px}}.rf-card{background:var(--surface-low, #fff);border:1px solid var(--footer-color, #e7e8e9);border-radius:8px;padding:22px 26px;margin-bottom:24px;box-shadow:var(--shadow-soft, 0 2px 8px rgba(0,0,0,.04))}.rf-header{display:flex;align-items:baseline;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--footer-color, #e7e8e9)}.rf-title{font-family:var(--font-display);font-size:.95rem;font-weight:700;color:var(--primary-color, #002147)}.rf-sub{font-size:.8rem;color:var(--text-color, #64748b)}.rf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:18px}.rf-group label{display:block;font-size:.72rem;font-weight:700;color:var(--muted-color, #495857);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;font-family:var(--font-main)}.rf-group select{width:100%;padding:8px 30px 8px 10px;border:1px solid var(--footer-color, #e7e8e9);border-radius:4px;font-size:.875rem;color:var(--foundation-color, #191c1d);background:var(--tint-color, #f1f5f9);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='%23adb5bd' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;font-family:var(--font-main);cursor:pointer;transition:border-color .15s}.rf-group select:focus{outline:none;border-color:var(--primary-color, #002147);background-color:#fff}.rf-btn{padding:9px 26px;background:var(--primary-color, #002147);color:#fff;border:none;border-radius:4px;font-size:.875rem;font-weight:600;font-family:var(--font-main);cursor:pointer;transition:filter .15s,transform .1s}.rf-btn:hover:not(:disabled){filter:brightness(1.2);transform:translateY(-1px)}.rf-btn:disabled{opacity:.55;cursor:not-allowed}.rpt-root{background:#fff;width:794px;min-height:1122px;margin:0 auto;padding:56px 64px 72px;box-shadow:0 2px 24px #0000001a;box-sizing:border-box;color:#000;font-size:14px;line-height:1.9}.rpt-rtl{font-family:Cairo,Noto Naskh Arabic,Segoe UI,Arial,sans-serif;text-align:right;direction:rtl}.rpt-ltr{font-family:Times New Roman,Georgia,serif;text-align:left;direction:ltr}.rpt-page-header{display:flex;flex-direction:column;align-items:center;margin-bottom:28px}.rpt-logo{height:80px;width:auto;object-fit:contain;display:block;margin:0 auto 18px}.rpt-header-divider{width:100%;height:2px;background:#000}.rpt-title-block{text-align:center;margin-bottom:28px}.rpt-main-title{font-size:17px;font-weight:800;color:#000;margin:0 0 6px;line-height:1.5}.rpt-subtitle{font-size:14px;font-weight:700;color:#000;margin:0;line-height:1.6}.rpt-paragraph{font-size:14px;line-height:2;color:#000;margin-bottom:10px;text-align:justify}.rpt-rtl .rpt-paragraph{text-align:right}.rpt-ltr .rpt-paragraph{text-align:left}.rpt-table-intro{margin-top:14px}.rpt-level-list{list-style:disc;margin:6px 0 14px;padding-inline-start:28px;padding-inline-end:0;color:#000}.rpt-level-list li{font-size:14px;line-height:2;margin-bottom:2px}.rpt-table-wrapper{margin:10px 0 20px;overflow-x:auto}.rpt-table{width:100%;border-collapse:collapse;font-size:13px;color:#000}.rpt-table thead tr{background:#000;color:#fff}.rpt-table thead th{padding:9px 10px;font-weight:700;font-size:13px;border:1px solid #000;white-space:nowrap}.rpt-th-num{width:38px;text-align:center!important}.rpt-table tbody td{padding:7px 10px;border:1px solid #888;vertical-align:top;font-size:13px;line-height:1.6}.rpt-row-empty td{height:28px}.rpt-code{font-family:Courier New,monospace;font-size:12px;font-weight:600;white-space:nowrap}.rpt-center{text-align:center}.rpt-notes{font-size:12px;min-width:160px}.rpt-total-row td{background:#f0f0f0;font-weight:700;border:1px solid #000;padding:8px 10px}.rpt-total-label{text-align:center}.rpt-committee{margin-top:36px;text-align:center}.rpt-committee p{font-size:14px;font-weight:700;color:#000;margin:0;font-family:inherit}@media print{.rpt-root{box-shadow:none;width:100%;min-height:unset;padding:20mm 18mm;margin:0}.rpt-table thead tr{background:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.rpt-total-row td{background:#f0f0f0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.rpt-table-wrapper{overflow:visible}.rpt-body,.rpt-table{page-break-inside:auto}.rpt-committee{page-break-inside:avoid}}.qa-rpt-page{padding:28px 32px;max-width:1020px;margin:0 auto}.qa-rpt-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.qa-rpt-heading-text h1{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--primary-color, #002147);margin:0 0 2px}.qa-rpt-heading-text p{font-size:.82rem;color:var(--text-color, #64748b);font-family:var(--font-main);margin:0}.qa-rpt-actions{display:flex;gap:10px;flex-shrink:0;align-items:center}.qa-rpt-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:4px;font-size:.85rem;font-weight:600;font-family:var(--font-main);cursor:pointer;border:none;transition:filter .15s,transform .1s}.qa-rpt-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.1)}.qa-rpt-btn:disabled{opacity:.55;cursor:not-allowed}.qa-rpt-btn--primary{background:var(--primary-color, #002147);color:#fff}.qa-rpt-btn--outline{background:var(--tint-color, #f1f5f9);color:var(--muted-color, #495857);border:1px solid var(--footer-color, #e7e8e9)}.qa-rpt-btn--outline:hover:not(:disabled){background:var(--footer-color, #e7e8e9)}.qa-rpt-error{display:flex;align-items:center;justify-content:space-between;background:var(--error-light, #fee2e2);border:1px solid #fca5a5;color:var(--error-text, #7f1d1d);padding:11px 16px;border-radius:4px;margin-bottom:18px;font-size:.875rem;font-family:var(--font-main)}.qa-rpt-error button{background:none;border:none;color:inherit;font-size:1.1rem;cursor:pointer;line-height:1;padding:0 4px}.qa-rpt-empty{text-align:center;padding:64px 20px;color:var(--soft-color, #adb5bd)}.qa-rpt-empty-icon{width:52px;height:52px;border:2px solid var(--footer-color, #e7e8e9);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;color:var(--soft-color, #adb5bd)}.qa-rpt-empty p{font-size:.9rem;font-family:var(--font-main);color:var(--muted-color, #495857)}.qa-rpt-loading{text-align:center;padding:64px 20px}.qa-rpt-spinner{width:32px;height:32px;border:3px solid var(--footer-color, #e7e8e9);border-top-color:var(--primary-color, #002147);border-radius:50%;margin:0 auto 14px;animation:qa-spin .7s linear infinite}@keyframes qa-spin{to{transform:rotate(360deg)}}.qa-rpt-loading p{font-size:.875rem;color:var(--muted-color, #495857);font-family:var(--font-main)}.qa-rpt-preview{margin-top:8px;display:flex;justify-content:center}@media print{.no-print{display:none!important}.qa-rpt-page{padding:0;max-width:100%}.qa-rpt-preview{margin:0}}.contact-page{--contact-nav-height: 64px;min-height:100dvh;padding:28px 20px 90px;background:#eceef1;color:#1f2732}.contact-shell{width:min(1180px,100%);margin:0 auto;padding-top:calc(var(--contact-nav-height) + 18px)}.contact-navbar{position:absolute;top:0;left:0;width:100%;height:var(--contact-nav-height);display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 24px 8px 18px;background:var(--neutral-color);border-bottom:1px solid var(--tint-color);z-index:30}.contact-navbar-logo{display:flex;align-items:center;gap:.65rem;min-width:0}.contact-navbar-image{width:44px;height:44px;display:block;object-fit:contain}.contact-navbar-logo h2{margin:0;font-size:.92rem;font-weight:700;line-height:1.2;white-space:nowrap;color:var(--primary-color)}.contact-home-link{color:var(--foundation-color);text-decoration:none;font-size:.96rem;font-weight:600}.contact-home-link:hover{text-decoration:underline}.contact-hero{margin-bottom:26px}.contact-hero-kicker{margin:0 0 8px;font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#c8422f}.contact-hero h1{margin:0;font-size:clamp(1.1rem,2.2vw,1.45rem);font-weight:500;color:#293240}.contact-hero p{margin-top:12px;max-width:67ch;font-size:.97rem;color:#424d5c}.support-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:28px}.support-card{background:#f2f3f5;padding:18px;border-radius:4px;min-height:236px;display:flex;flex-direction:column;box-shadow:0 1px #0f172a0a;transition:.3s ease}.support-card:hover{background:#03153d;color:#f8f9fa;box-shadow:0 12px 24px #03153d33}.support-card-icon{width:30px;height:30px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:#123765;margin-bottom:14px}.support-card h2{margin:0 0 10px;font-size:.96rem;font-weight:500}.support-card p{margin:0;font-size:.9rem;line-height:1.45}.support-card:hover p{color:#d1d5db}.support-card-contact,.support-card-ext{margin-top:15px;display:inline-flex;align-items:center;gap:8px;font-size:.84rem;text-decoration:none;color:inherit}.support-card:hover .support-card-contact,.support-card:hover .support-card-ext{color:#c7c7c7}.support-card-contact:hover{text-decoration:underline}.contact-content-grid{display:grid;grid-template-columns:1.35fr .92fr;gap:34px}.contact-form-panel{background:#f2f3f5;border-radius:4px;padding:24px}.contact-form-panel h2,.contact-office-panel h2,.contact-faq-panel h2{margin:0 0 14px;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#c8422f}.contact-form{display:grid;gap:14px}.contact-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-field{display:grid;gap:7px}.contact-field label{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#515e6f;font-weight:700}.contact-field input,.contact-field select,.contact-field textarea{border:0;border-radius:3px;min-height:42px;background:#dde0e5;padding:10px 12px;font-family:var(--font-main);font-size:.9rem;color:#232d3a;outline:none;transition:box-shadow .2s ease,background-color .2s ease}.contact-field textarea{min-height:128px;resize:vertical}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{box-shadow:inset 0 0 0 1px #254b79;background:#e4e7ec}.contact-form-actions{margin-top:4px}.contact-submit-btn{height:42px;min-width:190px;border:0;border-radius:3px;padding:0 18px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;font-size:.8rem;color:#f6f8fc;background:#02153d;cursor:pointer;transition:transform .2s ease,filter .2s ease}.contact-submit-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.contact-success-msg{margin:2px 0 0;font-size:.82rem;color:#0b6b44}.contact-side-stack{display:grid;gap:26px}.contact-office-panel,.contact-faq-panel{background:transparent}.office-image-wrap{position:relative;overflow:hidden;border-radius:6px;height:250px;display:block;text-decoration:none}.office-image-wrap:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0e17240f,#101a2661);z-index:1}.office-image-wrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.office-overlay-pin{position:absolute;z-index:2;top:42%;left:52%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#061636d9;color:#fff}.office-overlay-card{position:absolute;z-index:2;left:10px;right:10px;bottom:12px;background:#f5f7fbed;padding:10px 12px;border-radius:3px}.office-overlay-card h3{margin:0 0 4px;font-size:.85rem;text-transform:uppercase}.office-overlay-card p{margin:0;font-size:.72rem;color:#3e4d5b}.office-contact-details{margin-top:12px;display:grid;gap:6px}.office-contact-details p{margin:0;font-size:.82rem;color:#2f3e4c;line-height:1.45}.office-contact-details strong{color:#1f2d3c}.faq-list{display:grid;gap:8px}.faq-item{background:#e7e9ed;border:1px solid transparent;border-radius:3px;transition:background-color .2s ease,border-color .2s ease}.faq-item.open{border-color:#c7ced8;background:#dfe3e8}.faq-trigger{width:100%;border:0;background:transparent;min-height:46px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;color:#222c39;font-size:.85rem;font-weight:500;cursor:pointer;text-align:left}.faq-chevron{transition:transform .2s ease}.faq-item.open .faq-chevron{transform:rotate(180deg)}.faq-answer{margin:0;padding:0 12px 12px;font-size:.82rem;color:#354453;line-height:1.45}@media(max-width:1080px){.support-cards{gap:14px}.contact-content-grid{gap:22px}}@media(max-width:920px){.support-cards{grid-template-columns:1fr}.support-card{min-height:0}.contact-content-grid{grid-template-columns:1fr}.office-image-wrap{height:220px}}@media(max-width:640px){.contact-page{padding:20px 12px 84px}.contact-shell{padding-top:calc(var(--contact-nav-height) + 14px)}.contact-navbar{padding-left:12px;padding-right:12px}.contact-navbar-image{width:38px;height:38px}.contact-navbar-logo h2{font-size:.84rem}.contact-form-panel{padding:14px}.contact-row{grid-template-columns:1fr}.contact-submit-btn{width:100%;min-width:0}}.coursePickerOverlay{position:fixed;inset:0;z-index:99999;background:#0f172a94;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.coursePickerModal{width:min(920px,100%);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 28px 60px #0f172a47}.coursePickerHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px;background:linear-gradient(135deg,var(--primary-color),#0f172a);color:#fff}.coursePickerHeader span{display:block;font-size:12px;letter-spacing:.1em;font-weight:700;opacity:.8;text-transform:uppercase}.coursePickerHeader h2{margin:4px 0 0;font-size:1.15rem}.pickerCloseBtn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:999px;background:#ffffff1f;color:#fff;cursor:pointer}.coursePickerBody{padding:18px 20px 20px;display:flex;flex-direction:column;gap:14px;overflow:hidden}.coursePickerToolbar{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:12px}.pickerSearchBox{display:flex;align-items:center;gap:10px;border:1px solid #d8dee9;border-radius:12px;padding:10px 12px;background:#f8fafc}.pickerSearchBox input,.coursePickerToolbar select{width:100%;border:0;outline:none;background:transparent;font:inherit;color:#0f172a}.coursePickerToolbar select{border:1px solid #d8dee9;border-radius:12px;padding:10px 12px;background:#fff}.pickerMetaRow{display:flex;justify-content:space-between;gap:12px;color:#64748b;font-size:.9rem}.pickerList{display:flex;flex-direction:column;gap:8px;overflow:auto;max-height:44vh;padding-right:4px}.pickerRow{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;border:1px solid #e2e8f0;border-radius:14px;background:#fff;padding:14px 16px;cursor:pointer;text-align:left;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.pickerRow:hover{border-color:#93c5fd;box-shadow:0 8px 24px #3b82f614;transform:translateY(-1px)}.pickerRow.isActive{border-color:#1d4ed8;background:#eff6ff}.pickerRowMain{display:flex;flex-direction:column;gap:2px;min-width:0}.pickerRowMain strong{color:#0f172a;font-size:.98rem}.pickerRowMain span,.pickerRowMain small{color:#475569;font-size:.88rem}.pickerRowMain small{color:#64748b}.pickerRowSide{flex-shrink:0}.pickerChip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.8rem;font-weight:700}.pickerChip.muted{background:#f1f5f9;color:#475569}.pickerSelection{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0}.pickerSelection span{display:block;color:#64748b;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.pickerSelection strong{display:block;color:#0f172a;margin-top:4px}.pickerSelection p{margin:4px 0 0;color:#64748b;font-size:.9rem}.pickerAddBtn{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border:0;border-radius:12px;background:var(--primary-color);color:#fff;font-weight:700;cursor:pointer}.pickerAddBtn:disabled{opacity:.6;cursor:not-allowed}.pickerEmptyState,.pickerError{padding:14px 16px;border-radius:12px;font-size:.92rem}.pickerEmptyState{background:#f8fafc;border:1px dashed #cbd5e1;color:#475569}.pickerError{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}@media(max-width:720px){.coursePickerToolbar{grid-template-columns:1fr}.pickerSelection,.pickerRow{flex-direction:column;align-items:stretch}}.QAManageCourses{width:100%}.QAManageCourses .mngHeader{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.QAManageCourses .title span{font-size:12px;color:#64748b;letter-spacing:.12em;font-weight:700}.QAManageCourses .title h1{margin:4px 0 0;font-size:clamp(1.5rem,2vw,2rem);color:#0f172a}.QAManageCourses .end{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.QAManageCourses .secondaryBtn,.QAManageCourses .addCourse{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:8px 16px;border-radius:10px;border:1px solid transparent;font-weight:700;cursor:pointer}.QAManageCourses .secondaryBtn{background:#fff;border-color:#cbd5e1;color:#0f172a}.QAManageCourses .addCourse{background:var(--primary-color);color:var(--neutral-color)}.QAManageCourses .secondaryAlt{background:#0f172a;color:#fff}.QAManageCourses .tertiaryAlt{background:#e2e8f0;color:#0f172a}.QAManageCourses .addCourse:disabled{opacity:.55;cursor:not-allowed}.QAManageCourses .contentMng{margin-top:0}.QAManageCourses .qaCourseLayout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:20px}.QAManageCourses .cardPanel{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 14px 30px #0f172a0f;padding:18px}.QAManageCourses .panelHead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.QAManageCourses .panelHead span{display:block;color:#64748b;font-size:12px;letter-spacing:.12em;font-weight:700;text-transform:uppercase}.QAManageCourses .panelHead h3{margin:4px 0 0;color:#0f172a;font-size:1.05rem}.QAManageCourses .panelCount{min-width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#eff6ff;color:#1d4ed8;font-weight:800}.QAManageCourses .filtersRow{margin-bottom:14px;display:grid;gap:12px}.QAManageCourses .qaFiltersRow{grid-template-columns:1fr}.QAManageCourses .filterPillRow select{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}.QAManageCourses .courseSearchBox{width:100%;max-width:none;background:#f8fafc}.QAManageCourses .courseList{display:flex;flex-direction:column;gap:10px}.QAManageCourses .courseTile{width:100%;display:flex;align-items:flex-start;gap:12px;text-align:left;border:1px solid #e2e8f0;border-radius:14px;padding:14px;background:#fff;cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.QAManageCourses .courseTile:hover{border-color:#93c5fd;box-shadow:0 10px 24px #3b82f614;transform:translateY(-1px)}.QAManageCourses .courseTile.isActive{border-color:#1d4ed8;background:#eff6ff}.QAManageCourses .courseTileText{display:flex;flex-direction:column;gap:3px}.QAManageCourses .courseTileText strong{font-size:.98rem;color:#0f172a}.QAManageCourses .courseTileText span{color:#475569}.QAManageCourses .courseTileText small{color:#64748b}.QAManageCourses .emptyState{padding:18px;color:#64748b;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc;text-align:center}.QAManageCourses .courseWorkspace{min-height:420px}.QAManageCourses .dualCards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.QAManageCourses .infoCardPanel{border:1px solid #e2e8f0;border-radius:16px;padding:16px;background:#f8fafc}.QAManageCourses .miniList{display:flex;flex-direction:column;gap:10px}.QAManageCourses .miniListRow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid #e2e8f0;background:#fff}.QAManageCourses .miniListRow strong,.QAManageCourses .leaderCard strong{display:block;color:#0f172a}.QAManageCourses .miniListRow span,.QAManageCourses .leaderCard span{display:block;color:#64748b;font-size:.9rem}.QAManageCourses .leaderCard{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:14px;border:1px solid #e2e8f0;background:#fff}.QAManageCourses .compact{margin-bottom:12px}.QAManageCourses .emptyCourseState{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;color:#475569;padding:36px 24px}.QAManageCourses .emptyCourseState h3{margin:0;color:#0f172a;font-size:1.2rem}.QAManageCourses .emptyCourseState p{margin:0;max-width:640px;line-height:1.6}.QAManageCourses .courseMetaPills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.QAManageCourses .courseMetaPills span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f1f5f9;color:#334155;font-size:.82rem;font-weight:700}.QAManageCourses .qaStatsGrid{margin-top:16px;margin-bottom:18px}.QAManageCourses .qaStatsGrid .statsCard{border-radius:14px}.QAManageCourses .sectionBar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.QAManageCourses .sectionBar h4{margin:0;font-size:1rem;color:#0f172a}.QAManageCourses .sectionBar p{margin:4px 0 0;color:#64748b;font-size:.9rem}.QAManageCourses .memberTableWrap{overflow-x:auto}.QAManageCourses .memberTable{width:100%;min-width:760px;border-collapse:collapse}.QAManageCourses .memberTable th,.QAManageCourses .memberTable td{padding:12px 10px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}.QAManageCourses .memberTable th{color:#64748b;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.QAManageCourses .memberTable td .assignBtn,.QAManageCourses .memberTable td .dangerBtn{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:0;border-radius:8px;font-weight:700;cursor:pointer;margin-right:8px}.QAManageCourses .memberTable td .assignBtn{background:#e0f2fe;color:#075985}.QAManageCourses .memberTable td .dangerBtn{background:#fee2e2;color:#991b1b}.QAManageCourses .roleBadge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:.8rem;font-weight:700}.QAManageCourses .role-admin,.QAManageCourses .role-qa_admin{background:#e0e7ff;color:#4338ca}.QAManageCourses .role-student{background:#dcfce7;color:#166534}.QAManageCourses .role-instructor,.QAManageCourses .role-module_leader,.QAManageCourses .role-moduleleader{background:#fef3c7;color:#92400e}.QAManageCourses .courseSidebar .pagification{border-top:0;padding:12px;margin-top:14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:stretch}.QAManageCourses .courseSidebar .pageInfoSection{width:100%;justify-content:space-between}.QAManageCourses .courseSidebar .pageControls{width:100%;justify-content:center}.QAManageCourses .courseSidebar .pageBtn{min-width:36px;height:36px;border-radius:10px;background:#fff}.QAManageCourses .courseSidebar .pageBtn.numberBtn:hover,.QAManageCourses .courseSidebar .pageBtn.numberBtn.active{background:#1d4ed8;color:#fff}@media(max-width:1120px){.QAManageCourses .qaCourseLayout,.QAManageCourses .dualCards{grid-template-columns:1fr}}@media(max-width:820px){.QAManageCourses .mngHeader,.QAManageCourses .sectionBar{flex-direction:column;align-items:flex-start}.QAManageCourses .courseMetaPills{justify-content:flex-start}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0px;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}@media only screen and (max-width:480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
