@import"https://fonts.googleapis.com/css2?family=Sora:wght@400;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{font-family:Plus Jakarta Sans,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7fbff}body{margin:0;min-width:320px;background:radial-gradient(circle at top left,#fff8d8,#f6fbff 37%,#eef5fd 75%)}h1,h2,h3,.brand-title{font-family:Sora,Avenir Next,sans-serif}button,input{font:inherit}:root{--brand-red: #d94a43;--brand-gold: #f3c446;--brand-green: #0fa76f;--brand-blue: #3175d2;--ink-900: #122335;--ink-700: #32465f;--ink-500: #5f7289;--surface: #ffffff;--surface-soft: #f2f6fa;--border: #d7e1eb;--shadow-md: 0 12px 28px rgba(17, 41, 67, .12)}*{box-sizing:border-box}main{position:relative;z-index:1}.ghost-brand{background:transparent;border:0;font:inherit;padding:0;text-align:left;cursor:pointer}.app-shell{position:relative;min-height:100vh;color:var(--ink-900);padding:1.1rem 1.1rem 2rem;overflow:hidden}.ambient{position:absolute;border-radius:999px;filter:blur(70px);opacity:.45;pointer-events:none}.ambient-one{width:320px;height:320px;left:-80px;top:-70px;background:#f5de8f}.ambient-two{width:280px;height:280px;right:-60px;top:180px;background:#a8d6f5}.topbar{position:relative;z-index:30;display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:18px;border:1px solid var(--border);background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand-wrap{display:flex;align-items:center;gap:.7rem}.brand-mark{width:52px;height:52px;border-radius:12px;display:block;flex:0 0 auto;object-fit:cover;box-shadow:0 8px 18px #1841783d;-webkit-user-select:none;user-select:none}.brand-title{margin:0;font-size:.95rem;font-weight:700;letter-spacing:.01em}.brand-subtitle{margin:.18rem 0 0;font-size:.75rem;color:var(--ink-500)}.main-nav{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:center}.nav-link{display:inline-block;border:0;background:transparent;color:var(--ink-700);padding:.5rem .82rem;border-radius:10px;font-size:.86rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .22s ease}.nav-link:hover{background:#edf4fb;color:var(--ink-900)}.nav-link.active{background:#ddeafe;color:#1d4f9b}.top-actions{display:flex;align-items:center;gap:.65rem}.notification-menu,.user-menu{position:relative}.user-menu-trigger{border:1px solid #b9ccdf;background:#eef5fe;color:#1d4f9b;padding:.44rem .62rem;border-radius:12px;display:inline-flex;align-items:center;gap:.52rem;cursor:pointer;font-family:inherit;font-weight:600}.user-avatar{width:24px;height:24px;border-radius:99px;display:grid;place-items:center;font-size:.75rem;color:#fff;background:linear-gradient(135deg,#1f65bf,#3a86dd)}.user-name{max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.caret{font-size:.72rem;color:#2a5ea6;transition:transform .18s ease}.caret.open{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;right:0;top:calc(100% + .42rem);min-width:154px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 14px 24px #11294324;padding:.38rem;z-index:15}.user-menu-item{width:100%;border:0;background:transparent;text-align:left;border-radius:8px;padding:.52rem .6rem;font-size:.86rem;color:var(--ink-700);cursor:pointer}.user-menu-item:hover{background:#eef5ff;color:#1d4f9b}.user-menu-divider{height:1px;margin:.3rem .2rem;background:#e3edf7}.user-menu-item.danger{color:#9f2f2f}.user-menu-item.danger:hover{background:#fff0f0;color:#9f2f2f}.icon-btn{position:relative;border:1px solid var(--border);background:#fff;border-radius:12px;width:40px;height:40px;display:grid;place-items:center;cursor:pointer}.icon-btn.active,.icon-btn:hover{border-color:#b9ccdf;background:#eef5fe}.icon-btn svg{width:18px;height:18px;fill:var(--ink-700)}.dot{position:absolute;top:8px;right:7px;width:8px;height:8px;border-radius:99px;border:2px solid #fff;background:var(--brand-red)}.notification-dropdown{position:absolute;right:0;top:calc(100% + .42rem);width:min(92vw,360px);border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:0 14px 24px #11294324;padding:.52rem;z-index:20}.notification-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.2rem .2rem .55rem}.notification-head strong{display:block;color:var(--ink-900);font-size:.94rem}.notification-head span{display:block;margin-top:.12rem;color:var(--ink-500);font-size:.82rem}.notification-mark-all{white-space:nowrap}.notification-state{margin:0;padding:.75rem .3rem .4rem;color:var(--ink-500);font-size:.9rem}.notification-state.error{color:#a42323}.notification-list{display:grid;gap:.45rem;max-height:360px;overflow:auto}.notification-foot{padding-top:.55rem}.notification-view-all{margin-top:0}.notification-item{width:100%;border:1px solid #dde6f1;border-radius:12px;background:#fbfdff;padding:.72rem .78rem;text-align:left;display:grid;gap:.5rem;cursor:pointer}.notification-item:hover{background:#f3f8ff;border-color:#c7d7ea}.notification-item.is-unread{border-color:#bcd3f4;background:#f2f8ff}.notification-item-copy{display:grid;gap:.28rem}.notification-item-tags{display:flex;gap:.35rem;flex-wrap:wrap}.notification-chip{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .48rem;font-size:.72rem;font-weight:700}.notification-chip.info{background:#eaf3ff;color:#1d5ab0}.notification-chip.success{background:#e6faf2;color:#127353}.notification-chip.warning{background:#fff5e6;color:#a66011}.notification-chip.error{background:#fff0f0;color:#a12f2f}.notification-chip.neutral{background:#eef3f8;color:#49637d}.notification-item-copy strong{display:block;color:#173f69;font-size:.9rem;margin-bottom:.18rem}.notification-item-copy p{margin:0;color:#456482;font-size:.84rem;line-height:1.4}.notification-item-meta{display:flex;align-items:center;justify-content:space-between;gap:.6rem;color:#617993;font-size:.78rem}.notification-item-meta em{font-style:normal;color:#1d5ab0;font-weight:700}.solid-btn,.ghost-btn,.action-card button,.related-grid button{border-radius:10px;font-family:inherit;cursor:pointer;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.solid-btn{border:0;background:linear-gradient(135deg,#154687,#2f6fc9);color:#fff;padding:.65rem 1rem}.solid-btn:hover,.action-card button:hover,.related-grid button:hover{transform:translateY(-1px)}.wide{width:100%;margin-top:.9rem}.app-footer{position:relative;z-index:1;margin-top:1.35rem;text-align:center;color:var(--ink-500);font-size:.78rem}.app-footer-content{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.app-footer-content p{margin:0}.footer-logo{width:24px;height:24px;border-radius:6px;box-shadow:0 6px 12px #18417833}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1200px){.topbar{flex-wrap:wrap}}@media(max-width:900px){.brand-subtitle{display:none}}@media(max-width:620px){.app-shell{padding:.75rem .7rem 1.5rem}.topbar{padding:.65rem;border-radius:14px}.main-nav{justify-content:flex-start}.notification-dropdown{right:-48px}}.home-page{margin-top:1.1rem;animation:fade-in .6s ease both}.hero{position:relative;border-radius:22px;padding:1.9rem 1.2rem 1.4rem;background:linear-gradient(132deg,#f1f6fceb,#ecf4f8d9 42%,#ebf4ffd9);border:1px solid rgba(183,201,221,.9);box-shadow:var(--shadow-md);overflow:hidden}.hero-blur{position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(151,205,169,.34),transparent 45%),radial-gradient(circle at 80% 28%,rgba(104,156,227,.3),transparent 48%),radial-gradient(circle at 45% 85%,rgba(223,133,133,.22),transparent 42%);filter:blur(8px)}.search-wrap,.quick-actions{position:relative;z-index:1}.search-wrap{max-width:760px;margin:0 auto 1.25rem}.search-label{display:block;margin-bottom:.5rem;color:var(--ink-700);font-size:.9rem;font-weight:600}.search-field{display:flex;align-items:center;border-radius:14px;border:1px solid #a6b7ca;background:#ffffffeb;box-shadow:inset 0 1px #ffffffe6;padding:.3rem}.search-field input{border:0;outline:0;background:transparent;flex:1;font-size:.95rem;padding:.7rem .8rem;color:var(--ink-900)}.search-field button{border:0;border-radius:9px;background:var(--brand-gold);color:#3b2c00;font-weight:700;padding:.55rem 1.05rem;cursor:pointer}.quick-actions{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.action-card{border-radius:14px;padding:1.2rem;display:grid;grid-template-columns:auto 1fr;gap:.85rem;color:#fff;box-shadow:0 14px 24px #0a254029;animation:rise-in .56s ease both}.action-card.alert{background:linear-gradient(145deg,#d85d61,#ca474b)}.action-card.success{background:linear-gradient(145deg,#1dbb8a,#129f74)}.action-card.info{background:linear-gradient(145deg,#4d87da,#2f6fc9)}.action-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.35rem;font-weight:700;color:#15304f;background:#ffffffd1}.action-card p{margin:0;opacity:.92;font-size:.9rem}.action-card h3{margin:.25rem 0 .7rem;font-size:1.75rem;line-height:1.03}.action-card button{border:0;padding:.55rem .8rem;color:#2e3f54;background:#ffffffdb}.recent-courses-strip,.home-search-results{margin-top:1rem}.home-search-query{color:#1a4776}.home-search-actions{margin-top:.35rem}.home-search-grid{margin-top:.75rem;display:grid;gap:.8rem;grid-template-columns:repeat(3,minmax(0,1fr))}.home-search-col{border:1px solid #d8e5f3;border-radius:12px;background:#f8fbff;padding:.75rem}.home-search-col h4{margin:0;font-size:.95rem;color:#173f69}.home-search-row-actions{margin-top:.55rem;display:flex;flex-wrap:wrap;gap:.45rem}.recent-courses-head h3{margin:0}.recent-courses-grid{margin-top:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.recent-courses-empty{margin-top:.75rem;display:grid;gap:.65rem}.recent-course-card{border:1px solid #d7e4f2;border-radius:12px;background:#f8fbff;padding:.8rem;display:grid;gap:.65rem}.recent-course-card strong{display:block;color:#153f68;line-height:1.2}.recent-course-card p{margin:.3rem 0 0;color:#3d6188;font-size:.82rem}.recent-course-actions{display:flex;flex-wrap:wrap;gap:.5rem}.recent-course-actions .ghost-btn,.recent-course-actions .solid-btn{flex:1;min-width:130px}.portal-grid{margin-top:1rem;display:grid;gap:1rem;grid-template-columns:1.08fr 1fr 1fr}.panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1rem;box-shadow:0 8px 20px #11294314}.panel h3{margin:0;font-size:1.05rem}.panel-kicker{margin:.32rem 0 .9rem;color:var(--ink-500);font-size:.82rem}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.summary-grid div{border-radius:10px;background:var(--surface-soft);padding:.7rem}.summary-grid strong{display:block;font-size:1.35rem;color:#214a7c}.summary-grid span{color:var(--ink-700);font-size:.82rem}.announcement-list,.template-list,.check-list,.resource-list{list-style:none;margin:.9rem 0 0;padding:0}.announcement-list li,.template-list li,.check-list li,.resource-list li{border-top:1px solid #edf1f5;padding:.75rem 0}.announcement-list li:first-child,.template-list li:first-child,.check-list li:first-child,.resource-list li:first-child{border-top:0;padding-top:0}.announcement-list strong,.resource-list strong{display:block;margin-bottom:.25rem;font-size:.93rem}.announcement-list p,.resource-list p{margin:0;font-size:.84rem;color:var(--ink-700)}.announcement-list span{display:inline-block;margin-top:.3rem;color:var(--ink-500);font-size:.78rem}.template-list li{display:flex;align-items:center;gap:.55rem}.chip{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-size:.78rem;font-weight:700;color:#04573b;background:#cefaec}.template-list p{margin:0;font-size:.87rem}.related-pages{margin-top:1.3rem}.related-pages h2{margin:0 0 .7rem;font-size:1.15rem}.related-grid{display:grid;gap:.85rem;grid-template-columns:repeat(4,minmax(0,1fr))}.related-grid button{text-align:left;border:1px solid var(--border);background:linear-gradient(160deg,#fff,#f4f8fc);padding:.9rem}.related-grid strong{display:block;margin-bottom:.35rem}.related-grid p{margin:0;color:var(--ink-700);font-size:.83rem}.detail-page{margin-top:1rem;animation:fade-in .4s ease both}.eyebrow{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#2f6fc9;font-weight:700}.detail-page h2{margin:.35rem 0 1rem;font-size:1.65rem}.detail-grid{display:grid;gap:1rem}.detail-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.chat-log{border-radius:12px;border:1px solid var(--border);background:#f8fbff;padding:.8rem}.chat-log p{margin:0 0 .7rem;font-size:.9rem;color:var(--ink-700)}.chat-log p:last-child{margin-bottom:0}.chat-log span{font-weight:700;color:var(--ink-900)}.check-list li{position:relative;padding-left:1.25rem;font-size:.88rem}.check-list li:before{content:"";position:absolute;left:0;top:.85rem;width:7px;height:7px;border-radius:99px;background:var(--brand-green)}.meta-grid{display:grid;gap:.7rem;margin-top:.8rem}.meta-grid p{margin:0;border:1px solid #e6edf3;border-radius:9px;padding:.62rem;color:var(--ink-700);display:flex;justify-content:space-between}.meta-grid strong{color:#204979}.sample-question{margin-top:.8rem;border-radius:10px;border:1px solid #e5edf3;background:#f8fbff;padding:.75rem;line-height:1.55;color:var(--ink-700)}.ghost-btn{border:1px solid #b9ccdf;background:#eef5fe;color:#1d4f9b;padding:.62rem}.metric-card strong{display:block;margin-top:.8rem;font-size:1.7rem;color:#245180}.metric-card p{margin:.3rem 0 0;color:var(--ink-700)}.progress-hub-page .course-helper{margin-bottom:.8rem}.notifications-page{max-width:none;margin-top:1rem}.notifications-hero{margin-bottom:1rem}.notifications-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin-bottom:1rem}.notifications-filters{display:flex;gap:.5rem;flex-wrap:wrap}.notifications-filter{border:1px solid #c8d8ea;border-radius:999px;background:#fff;color:#355577;padding:.46rem .82rem;font-weight:700}.notifications-filter.is-active{border-color:#2f6fc9;background:#eef5ff;color:#1d5ab0}.notifications-toolbar-actions{display:flex;gap:.6rem;flex-wrap:wrap}.notifications-list{display:grid;gap:.85rem}.notification-card{border-color:#d8e4f2;background:linear-gradient(150deg,#fff,#f7fbff)}.notification-card.is-unread{border-color:#bdd4f4;background:linear-gradient(150deg,#f8fbff,#eef5ff)}.notification-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.notification-card-time{color:#5f7893;font-size:.84rem;font-weight:600}.notification-card h3{margin:.75rem 0 .3rem;color:#163f68}.notification-card p{margin:0;color:#3f5f7f;font-size:.94rem;line-height:1.48}.notification-card-actions{margin-top:.9rem;display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.notification-card-badge{display:inline-flex;align-items:center;border-radius:999px;background:#eaf3ff;color:#1d5ab0;font-size:.78rem;font-weight:700;padding:.22rem .52rem}.progress-hub-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.progress-hub-layout{margin-top:1rem;display:grid;gap:1rem;grid-template-columns:minmax(250px,.9fr) minmax(0,1.3fr)}.progress-hub-courses,.progress-hub-detail{min-height:100%}.progress-hub-course-list{margin:.85rem 0 0;padding:0;list-style:none;display:grid;gap:.6rem}.progress-hub-course-btn{width:100%;border:1px solid #d5e2ef;border-radius:10px;background:#f6faff;padding:.7rem;text-align:left;display:grid;gap:.4rem}.progress-hub-course-btn strong{display:block;color:#163f68;margin-bottom:.2rem}.progress-hub-course-btn span{color:#365171;font-size:.9rem}.progress-hub-course-btn.active{border-color:#2f6fc9;background:#ecf4ff}.progress-hub-course-meta{color:#4f6e90;font-size:.86rem}.progress-hub-sections{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.progress-hub-sections h4{margin:0;font-size:.98rem}.progress-hub-trend-list{margin:.9rem 0 0;padding:0;list-style:none}.progress-hub-trend-list li{border-top:1px solid #edf1f5;padding:.7rem 0;display:flex;align-items:center;justify-content:space-between;gap:.65rem;font-size:.93rem;color:#365171}.progress-hub-trend-list li:first-child{border-top:0;padding-top:0}.progress-hub-trend-list strong{color:#173f69}.resource-vault-page .course-helper{margin-bottom:.8rem}.resource-vault-filter-row{margin-bottom:.9rem}.resource-vault-layout{grid-template-columns:minmax(250px,.9fr) minmax(0,1.4fr)}.resource-vault-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.9rem}.resource-vault-actions .ghost-btn,.resource-vault-actions .solid-btn{min-width:180px}.resource-vault-sections{margin-top:1rem}.resource-vault-material-list strong,.resource-vault-pack-list strong{margin-bottom:.2rem}.resource-vault-material-list p,.resource-vault-pack-list p{margin:0}.resource-vault-material-list span{display:inline-block;margin-top:.25rem;color:var(--ink-500);font-size:.84rem}.progress-bars{margin-top:1rem}.progress-bars div{margin-top:.75rem}.progress-bars label{font-size:.9rem;color:var(--ink-700)}.progress-bars progress{width:100%;height:11px;margin-top:.4rem;-webkit-appearance:none;appearance:none}progress::-webkit-progress-bar{background-color:#e7eef5;border-radius:99px}progress::-webkit-progress-value{background:linear-gradient(90deg,#1fa779,#3b7dd5);border-radius:99px}.resource-list p{margin-top:.28rem}.account-page header{margin-bottom:1rem}.account-toast{position:fixed;top:84px;right:18px;z-index:120;border:1px solid #afe1c8;background:#ecfbf3;color:#136244;border-radius:10px;padding:.66rem .78rem;box-shadow:0 10px 20px #0b3d2b2e;font-size:.93rem}.account-profile-layout{display:grid;gap:1rem;grid-template-columns:minmax(250px,.9fr) minmax(0,1.5fr)}.account-avatar-card{display:grid;align-content:start;gap:1rem;padding:0;overflow:hidden;border-color:#d6e3f1}.account-avatar-head{padding:1.25rem 1rem 1rem;display:grid;justify-items:center;gap:.65rem;background:linear-gradient(150deg,#eef5ff,#e4f0ff 45%,#e8f5ff);border-bottom:1px solid #d9e7f5}.account-avatar-preview-wrap{display:grid;place-items:center}.account-avatar-preview,.account-avatar-fallback{width:128px;height:128px;border-radius:999px}.account-avatar-preview{display:block;border:4px solid #ffffff;object-fit:cover;background:#edf4fb;box-shadow:0 10px 24px #193e662e}.account-avatar-fallback{display:grid;place-items:center;font-size:2.3rem;font-weight:700;color:#1c4978;background:linear-gradient(145deg,#edf4ff,#d9e8fb);border:4px solid #ffffff;box-shadow:0 10px 24px #193e662e}.account-avatar-card h3{margin:0;font-size:1.2rem;text-align:center}.account-avatar-card .panel-kicker{margin:0;text-align:center;color:#2d527a;word-break:break-word}.account-badge-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.account-badge{border-radius:999px;padding:.3rem .62rem;font-size:.76rem;font-weight:700;color:#0f4f84;background:#eaf3ff;border:1px solid #c7ddf3}.account-badge.muted{color:#116443;background:#e8f9f0;border-color:#bce7d0}.account-avatar-card .meta-grid{margin:0;padding:0 1rem 1rem}.account-avatar-file{display:grid;gap:.5rem;margin:0;padding:0 1rem 1rem;font-size:.88rem;color:#355476}.account-avatar-file input{border:1px dashed #bbcee2;border-radius:10px;background:#f8fbff;padding:.5rem}.account-form-card{display:grid;gap:.8rem}.account-form-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.account-form-head h3{margin:0}.account-form-actions{display:flex;gap:.55rem}.account-form-grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.account-form-grid label{display:grid;gap:.38rem;font-size:.86rem;color:#355476}.account-form-grid input{border-radius:10px;border:1px solid #c6d6e6;background:#f9fcff;color:#1d3f63;font-size:.93rem;padding:.62rem .72rem}.account-form-grid input:focus{outline:none;border-color:#2f6fc9;box-shadow:0 0 0 3px #2f6fc924}.account-form-grid input:disabled{opacity:.85;cursor:not-allowed;background:#eef4fb}.account-form-wide{grid-column:1 / -1}.profile-success{margin:0;border:1px solid #afe1c8;background:#ecfbf3;color:#136244;border-radius:10px;padding:.62rem .7rem;font-size:.88rem}@media(max-width:1200px){.portal-grid,.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.quick-actions,.portal-grid,.detail-grid.two-col,.detail-grid.three-col,.related-grid,.home-search-grid,.progress-hub-metrics,.progress-hub-layout,.progress-hub-sections,.account-profile-layout,.account-form-grid{grid-template-columns:1fr}.search-field{flex-direction:column;align-items:stretch;gap:.4rem}.search-field button{width:100%}.notifications-toolbar{align-items:stretch}.notifications-filters,.notifications-toolbar-actions{width:100%}}@media(max-width:620px){.hero{padding:1rem .8rem}.action-card h3{font-size:1.5rem}.account-form-head{flex-direction:column;align-items:stretch}.account-form-actions,.account-form-actions .ghost-btn,.account-form-actions .solid-btn{width:100%}.account-toast{left:12px;right:12px;top:72px}}.security-shell{--security-ink-900: #0d2033;--security-ink-700: #2b4865;--security-ink-500: #4e6d8d;--security-border: rgba(138, 165, 192, .42);--security-panel: rgba(255, 255, 255, .9);--security-glass: rgba(255, 255, 255, .74);--security-brand: #1f5ea9;--security-brand-strong: #123f7a;--security-brand-soft: #e8f1fd;--security-focus: rgba(44, 108, 191, .22);position:relative;min-height:100vh;padding:1.15rem;overflow:hidden;background:radial-gradient(circle at 10% -8%,rgba(243,196,70,.36),transparent 42%),radial-gradient(circle at 102% 16%,rgba(49,117,210,.2),transparent 44%),linear-gradient(160deg,#f2f8ff,#f7fbff,#f2f7ff);color:var(--security-ink-900)}.security-shell:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(21,69,132,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(21,69,132,.03) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:radial-gradient(circle at 50% 45%,rgba(0,0,0,.65),transparent 88%);mask-image:radial-gradient(circle at 50% 45%,rgba(0,0,0,.65),transparent 88%)}.security-ambient{position:absolute;border-radius:999px;filter:blur(84px);opacity:.44;pointer-events:none}.security-ambient-one{width:390px;height:390px;top:-130px;right:-60px;background:#ffcb75}.security-ambient-two{width:320px;height:320px;left:-88px;bottom:-78px;background:#9ecaf1}.security-ambient-three{width:260px;height:260px;left:34%;top:68%;background:#0fa76f47}.security-topbar{position:relative;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.76rem .95rem;border-radius:18px;border:1px solid var(--security-border);background:var(--security-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 12px 28px #0d203314;animation:security-pop .35s ease both}.security-topbar .brand-title{color:#17365b}.security-topbar .brand-subtitle{color:#4a6788}.security-topbar .nav-link{border:1px solid transparent;border-radius:999px;padding:.46rem .8rem;color:#264a70;background:transparent}.security-topbar .nav-link:hover{border-color:#c7d9ee;background:#ffffffb3}.security-topbar .nav-link.active{color:#114383;border-color:#1a549a40;background:linear-gradient(160deg,#ebf4ff,#deecff);box-shadow:inset 0 0 0 1px #1a549a14}.security-main{position:relative;z-index:1;min-height:calc(100vh - 140px);display:grid;place-items:center;padding:1rem 0 .4rem}.security-stage{width:min(1080px,100%);display:grid;grid-template-columns:minmax(260px,410px) minmax(0,560px);align-items:stretch;gap:1rem}.security-highlight{position:relative;border:1px solid rgba(102,137,171,.35);border-radius:22px;background:radial-gradient(circle at 14% -10%,rgba(243,196,70,.22),transparent 45%),linear-gradient(160deg,#123e72f5,#1d5ca0eb);box-shadow:0 22px 38px #0d203330;padding:1.2rem;color:#e8f2ff;overflow:hidden;animation:security-slide-in .5s ease both}.security-highlight:after{content:"";position:absolute;width:190px;height:190px;right:-56px;bottom:-76px;border-radius:50%;background:linear-gradient(140deg,#ffdc9459,#fff0)}.security-highlight-tag{margin:0;display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;padding:.34rem .64rem;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;font-weight:700}.security-highlight h2{margin:.82rem 0 0;font-size:clamp(1.32rem,1.95vw,1.7rem);line-height:1.25}.security-highlight p{margin:.72rem 0 0;font-size:.9rem;line-height:1.54;color:#e8f2ffeb}.security-highlight-list{margin:1rem 0 0;padding:0;list-style:none;display:grid;gap:.62rem}.security-highlight-list li{border:1px solid rgba(255,255,255,.2);border-radius:14px;background:#ffffff14;padding:.72rem .78rem;display:grid;gap:.18rem}.security-highlight-list strong{font-size:.9rem}.security-highlight-list span{font-size:.78rem;color:#e8f2ffe6}.security-stage-card{display:flex;align-items:stretch}.security-card{width:100%;border-radius:22px;border:1px solid var(--security-border);background:var(--security-panel);box-shadow:0 20px 46px #0e243d1f;padding:1.28rem;animation:security-pop .38s ease both}.security-kicker{margin:0;display:inline-block;border-radius:999px;border:1px solid #c9ddf6;padding:.28rem .62rem;background:#f2f8ff;text-transform:uppercase;letter-spacing:.06em;color:#235da4;font-size:.74rem;font-weight:700}.security-card h1{margin:.62rem 0 0;font-size:clamp(1.46rem,2.3vw,1.82rem);line-height:1.2;color:var(--security-ink-900)}.security-intro{margin:.62rem 0 1.04rem;color:var(--security-ink-500);font-size:.91rem;line-height:1.5}.security-form{display:grid;gap:.5rem}.security-form label{margin-top:.16rem;font-size:.79rem;text-transform:uppercase;letter-spacing:.02em;color:#3d5b7d;font-weight:700}.security-form input{width:100%;border:1px solid #bfd4ea;border-radius:12px;padding:.7rem .76rem;background:#fff;color:var(--security-ink-900);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.security-form input::placeholder{color:#7a93ae}.security-form input:focus{outline:none;border-color:#6b9ed3;box-shadow:0 0 0 4px var(--security-focus)}.security-form input:disabled{background:#f4f8fd;color:#67809d}.security-password-field{position:relative}.security-password-field input{padding-right:2.7rem}.password-toggle-btn{position:absolute;right:.38rem;top:50%;transform:translateY(-50%);width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#3a628d;display:grid;place-items:center;cursor:pointer}.password-toggle-btn:hover{background:#eff6ff}.password-toggle-btn:disabled{cursor:not-allowed;opacity:.6}.password-toggle-btn svg{width:18px;height:18px;fill:currentColor}.security-card .solid-btn{margin-top:.35rem;min-height:46px;border-radius:12px;font-weight:700;letter-spacing:.01em;background:linear-gradient(135deg,var(--security-brand-strong),var(--security-brand));box-shadow:0 12px 20px #16458433}.security-card .solid-btn:hover{box-shadow:0 14px 24px #1645843d}.security-card .solid-btn:disabled{opacity:.72;box-shadow:none}.security-inline-links{display:flex;justify-content:space-between;align-items:center;gap:.66rem;margin-top:.98rem}.text-btn{border:0;background:transparent;padding:0;color:#1f579d;font-size:.84rem;font-weight:700;cursor:pointer}.text-btn:hover{text-decoration:underline}.security-error,.security-success{margin:.82rem 0 0;border-radius:10px;padding:.56rem .64rem;font-size:.82rem;font-weight:600}.security-error{border:1px solid #efc7c7;background:#fff5f5;color:#9f2f2f}.security-success{border:1px solid #b8e4cc;background:#f2fcf7;color:#0d7a47}@keyframes security-pop{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes security-slide-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@media(max-width:1080px){.security-stage{grid-template-columns:1fr;max-width:640px}.security-highlight{order:2}}@media(max-width:820px){.security-topbar{flex-wrap:wrap}.security-topbar .main-nav{width:100%;justify-content:flex-start}}@media(max-width:620px){.security-shell{padding:.78rem}.security-topbar{border-radius:14px;padding:.66rem}.security-card{border-radius:16px;padding:1rem}.security-highlight{border-radius:16px;padding:.96rem}.security-inline-links{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){.security-topbar,.security-card,.security-highlight{animation:none}}.rag-chat-shell{border:1px solid #d4deea;border-radius:14px;background:#fbfdff;padding:.8rem}.rag-chat-log{max-height:420px;overflow:auto;padding:.25rem}.rag-message{border-radius:10px;margin-bottom:.7rem;padding:.65rem}.rag-message.assistant{background:#f3f8ff;border:1px solid #dce9f9}.rag-message.user{background:#f5fffb;border:1px solid #d8f5ea}.rag-role{margin:0;font-size:.875rem;font-weight:700;color:#3f5976}.rag-text{margin:.45rem 0 0;white-space:pre-wrap;line-height:1.5}.rag-citations{margin-top:.6rem;border-top:1px dashed #bfd2e8;padding-top:.5rem}.rag-citations p{margin:0;font-size:.875rem;font-weight:700}.rag-citations ul{margin:.35rem 0 0;padding-left:1rem}.rag-citations li{font-size:.84rem;color:#2f4e6f;margin-bottom:.28rem}.rag-citation-score{opacity:.75}.rag-quick-prompts{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.rag-quick-prompt-btn{border:1px solid #bfd2e7;border-radius:999px;background:#f3f8ff;color:#214a74;font-size:.84rem;font-weight:700;line-height:1.3;padding:.42rem .7rem;cursor:pointer}.rag-quick-prompt-btn:hover{background:#e7f0fb;border-color:#a9c2df}.rag-quick-prompt-btn:disabled{opacity:.6;cursor:not-allowed}.rag-input-row{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;margin-top:.75rem;align-items:end}.rag-input-row textarea{border-radius:10px;border:1px solid #c8d8e9;padding:.62rem .72rem;font-size:.9rem;line-height:1.45;min-height:42px;max-height:180px;resize:none;overflow-y:auto;font-family:inherit}.rag-input-row textarea:focus{outline:2px solid rgba(47,111,201,.2)}.rag-input-row button{border:0;border-radius:10px;padding:.62rem .84rem;font-weight:700;background:linear-gradient(135deg,#1f599f,#2f6fc9);color:#fff;cursor:pointer}.rag-input-row button:disabled{opacity:.6;cursor:not-allowed}.tutor-limit-modal-backdrop{position:fixed;inset:0;background:#02061794;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1200}.tutor-limit-modal{width:min(100%,430px);border-radius:14px;border:1px solid #d4deea;background:#fff;box-shadow:0 18px 40px #02061747;padding:1.1rem}.tutor-limit-modal h3{margin:0;font-size:1.05rem;color:#0f172a}.tutor-limit-modal p{margin:.65rem 0 0;color:#2b3f57;line-height:1.45}.tutor-limit-modal-wait{font-size:.88rem;color:#44617f}.tutor-limit-modal-actions a{color:#1f599f;font-weight:700;text-decoration:underline}.tutor-limit-modal-actions a:hover{color:#154683}.course-page{max-width:980px;margin:1rem auto 0}.tutor-catalog-page{max-width:none;margin:1rem 0 0}.tutor-catalog-hero{position:relative;overflow:hidden;border-radius:18px;border:1px solid #d3dfed;background:radial-gradient(circle at 15% -10%,rgba(243,196,70,.35),transparent 45%),radial-gradient(circle at 90% 0%,rgba(49,117,210,.25),transparent 40%),linear-gradient(145deg,#fffffff5,#ecf5ffeb);padding:1.25rem;box-shadow:0 16px 36px #12233514}.tutor-catalog-hero:after{content:"";position:absolute;right:-42px;bottom:-56px;width:220px;height:220px;border-radius:40%;transform:rotate(24deg);background:linear-gradient(160deg,#3175d229,#0fa76f2e)}.tutor-catalog-hero h2{margin-bottom:.55rem}.tutor-catalog-hero .course-helper{max-width:680px}.tutor-catalog-metrics{margin-top:1rem;display:grid;gap:.7rem;grid-template-columns:repeat(3,minmax(0,1fr))}.tutor-metric-chip{border:1px solid #d6e2f1;border-radius:12px;background:#ffffffd1;padding:.72rem .78rem;display:grid;gap:.34rem}.tutor-metric-chip span{font-size:.84rem;color:#466587;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.tutor-metric-chip strong{font-size:1.16rem;color:#1e426a;overflow-wrap:anywhere}.tutor-catalog-layout{margin-top:1rem;display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,.95fr);align-items:start;gap:1rem}.tutor-catalog-filter-row{margin-top:.9rem;display:grid;gap:.6rem}.tutor-filter-heading{display:grid;gap:.15rem}.tutor-filter-heading span{font-size:.9rem;color:#34597f;font-weight:700}.tutor-filter-heading p{margin:0;color:#5f7591;font-size:.88rem}.tutor-level-tabs{display:flex;gap:.7rem;flex-wrap:wrap}.tutor-level-tab{min-width:134px;border:1px solid #c7d6e8;border-radius:16px;background:linear-gradient(180deg,#fff,#f3f7fd);color:#204872;padding:.8rem .95rem;display:grid;gap:.18rem;text-align:left;box-shadow:0 12px 30px -28px #194376b3;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.tutor-level-tab strong{font-size:.96rem;line-height:1.1}.tutor-level-tab span{font-size:.82rem;color:#60738d}.tutor-level-tab:hover{transform:translateY(-1px);border-color:#8eb1df;box-shadow:0 18px 40px -28px #194376d9}.tutor-level-tab:focus-visible{outline:3px solid rgba(47,111,201,.2);outline-offset:2px}.tutor-level-tab.is-active{border-color:#2f6fc9;background:linear-gradient(135deg,#2f6fc9,#5f92db);color:#fff;box-shadow:0 24px 50px -30px #21559df2}.tutor-level-tab.is-active span{color:#ffffffd1}.tutor-catalog-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.tutor-catalog-pagination{margin-top:1rem;display:grid;gap:.75rem}.tutor-pagination-summary{margin:0;color:#55708d;font-size:.92rem;font-weight:600}.tutor-pagination-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.tutor-pagination-pages{display:flex;gap:.45rem;flex-wrap:wrap}.tutor-pagination-btn[disabled]{opacity:.55;cursor:not-allowed}.tutor-pagination-page{min-width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid #c7d6e8;background:#fff;color:#204872;font-weight:700}.tutor-pagination-page.is-active{border-color:#2f6fc9;background:#2f6fc9;color:#fff}.tutor-pagination-page:focus-visible{outline:3px solid rgba(47,111,201,.2);outline-offset:2px}.course-helper{margin:0;color:var(--ink-700);max-width:760px}.course-config{margin-top:1rem}.course-login-panel{margin-top:1rem;max-width:560px}.course-login-form{max-width:520px}.course-meta{display:grid;gap:.3rem}.course-meta p{margin:0;font-size:.95rem;color:#365171}.course-status{margin:.7rem 0 0;font-size:.88rem;color:#3e5f82;font-weight:600}.course-error{margin:.75rem 0 0;font-size:.88rem;color:#a42323;font-weight:600}.course-empty{margin:0;color:#365171;font-size:.95rem}.course-actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.course-chat-panel{margin-top:1rem}.tutor-course-card{display:grid;gap:.8rem;border-color:#d2e0ef;background:linear-gradient(160deg,#fff,#f7fbff);position:relative;min-width:0;align-content:start}.tutor-course-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;border-radius:14px 14px 0 0;background:linear-gradient(90deg,#1f5fad,#2f78ca,#16a274)}.tutor-course-cover-wrap{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:16 / 7;border:1px solid #d4e1ef;background:linear-gradient(135deg,#edf4ff,#f2fbff)}.tutor-course-cover{width:100%;height:100%;object-fit:cover;display:block}.tutor-course-cover-fallback{width:100%;height:100%;display:grid;place-items:center;color:#1c4c80;font-weight:800;letter-spacing:.06em;font-size:1.35rem;background:radial-gradient(circle at 20% 20%,rgba(47,120,202,.2),transparent 40%),radial-gradient(circle at 80% 70%,rgba(15,167,111,.2),transparent 35%),linear-gradient(140deg,#edf5ff,#f4fbff)}.tutor-course-header{display:grid;justify-items:center;align-items:start;gap:.45rem;min-width:0;text-align:center}.tutor-course-title{margin:0;line-height:1.2;font-size:1.2rem;font-weight:800;letter-spacing:.01em;color:#173f69;overflow-wrap:anywhere;text-align:center;text-wrap:balance}.tutor-course-description{margin:0;border:1px solid #dbe7f4;border-radius:10px;background:linear-gradient(150deg,#f9fcff,#f2f8ff);padding:.62rem .7rem;color:#355a7f;font-size:.95rem;line-height:1.45;text-align:center}.tutor-pill{border-radius:999px;padding:.32rem .6rem;font-size:.72rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.tutor-pill.on{color:#116c4f;background:#ddfaef;border:1px solid #a8e8d0}.tutor-pill.off{color:#8a3f3f;background:#ffeded;border:1px solid #f5cbcb}.tutor-course-meta p{display:flex;justify-content:space-between;gap:.5rem;border:1px dashed #d9e4f0;border-radius:10px;padding:.48rem .58rem;background:#fbfdff}.tutor-course-row{display:grid;grid-template-columns:minmax(72px,92px) minmax(0,1fr);align-items:start;gap:.6rem}.tutor-course-meta p strong{font-size:.84rem;text-transform:uppercase;letter-spacing:.04em;color:#3b628b}.tutor-course-meta p span{color:#244b76;font-weight:600;text-align:left;min-width:0;overflow-wrap:anywhere}.tutor-course-actions{display:block}.tutor-open-btn{width:100%;display:block;text-align:center}.tutor-catalog-side{position:sticky;top:1rem;border-color:#d2dfef;background:linear-gradient(150deg,#fff,#f1f8ff)}.tutor-catalog-note{margin-top:1rem;border-style:dashed;border-color:#c5d8ec;background:#f6fbff}.tutor-catalog-note p{margin:0;color:#2d537d;font-size:.95rem}.tutor-empty-panel{margin-top:1rem}.tutor-filter-empty-panel{margin-top:0}.tutor-detail-page{max-width:none;margin:1rem 0 0}.tutor-detail-hero{margin-bottom:1rem}.tutor-detail-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.tutor-detail-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);align-items:start;gap:1rem}.exam-prep-main{display:grid;gap:1rem}.exam-prep-workspace-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.exam-workspace-tab{border:1px solid #bfd2e7;border-radius:10px;background:#f4f9ff;color:#2f557a;padding:.56rem .72rem;font-size:.86rem;font-weight:700;cursor:pointer}.exam-workspace-tab:hover{background:#e9f2fe;border-color:#aac5df}.exam-workspace-tab.active{background:linear-gradient(140deg,#2f6fc9,#1e5cad);border-color:#1e5cad;color:#fff}.tutor-detail-chat-panel{margin-top:0;border-color:#d0dff0;background:linear-gradient(150deg,#fff,#f6fbff)}.tutor-detail-chat-head{margin-bottom:.8rem}.tutor-detail-chat-head h3{margin:0}.tutor-detail-chat-head .panel-kicker{margin-top:.35rem}.tutor-detail-side{display:grid;gap:1rem}.tutor-detail-config{margin-top:0}.tutor-detail-meta p{display:flex;justify-content:space-between;gap:.5rem;border:1px dashed #d9e4f0;border-radius:10px;padding:.48rem .58rem;background:#fbfdff}.tutor-detail-meta p strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#3b628b}.tutor-detail-meta p span{color:#244b76;font-weight:600;text-align:right;overflow-wrap:anywhere}.tutor-login-inline{margin-bottom:.8rem;border:1px solid #d8e4f3;border-radius:12px;background:#f6fbff;padding:.72rem;display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.tutor-detail-error-row{margin:.2rem 0 1rem}.mock-exam-shell{display:grid;gap:.8rem}.mock-exam-stage-nav{display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.mock-exam-stage-btn{border:1px solid #c8d8ea;border-radius:10px;background:#f4f9ff;color:#2f557a;font-size:.88rem;font-weight:700;padding:.5rem .56rem;cursor:pointer}.mock-exam-stage-btn:hover:not(:disabled){background:#e9f2fe;border-color:#b3c9e1}.mock-exam-stage-btn.active{background:linear-gradient(140deg,#2f6fc9,#1e5cad);border-color:#1e5cad;color:#fff}.mock-exam-stage-btn:disabled{opacity:.58;cursor:not-allowed}.mock-exam-grid{display:grid;gap:.65rem;grid-template-columns:repeat(3,minmax(0,1fr))}.mock-exam-grid label{display:grid;gap:.36rem;font-size:.89rem;color:#315476;font-weight:700}.mock-exam-grid select,.mock-exam-grid input{border:1px solid #c8d8e9;border-radius:10px;background:#fff;color:#204872;padding:.5rem .58rem;font-weight:600;font-size:.9rem}.mock-exam-grid select:focus,.mock-exam-grid input:focus,.mock-exam-question textarea:focus{outline:2px solid rgba(47,111,201,.2);border-color:#6f9ee0}.mock-exam-start .solid-btn{width:100%;margin-top:.9rem}.mock-exam-empty{border:1px dashed #c8d8ea;border-radius:12px;background:#f7fbff;padding:.75rem .82rem}.mock-exam-empty p,.mock-exam-status{margin:0;color:#385a7b;font-size:.92rem}.mock-exam-timer{border:1px solid #d7e4f2;border-radius:12px;background:linear-gradient(145deg,#fff,#f5f9ff);padding:.72rem .78rem;display:grid;gap:.2rem}.mock-exam-timer p{margin:0;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;color:#4a6b8c;font-weight:700}.mock-exam-timer strong{font-size:1.45rem;color:#183f69;line-height:1.05}.mock-exam-timer span{color:#496988;font-size:.86rem}.mock-exam-timer.warning{border-color:#f2c9ae;background:linear-gradient(145deg,#fff7f2,#fff2eb)}.mock-exam-timer.warning strong{color:#a3481d}.mock-exam-take h4,.mock-exam-result h4{margin:.15rem 0 .4rem;color:#1a436e}.mock-exam-questions{display:grid;gap:.75rem}.mock-exam-question{border:1px solid #d7e4f2;border-radius:12px;background:#fbfdff;padding:.72rem .78rem}.mock-exam-question-title{margin:0;color:#12395e;font-weight:700;line-height:1.4}.mock-exam-options{display:grid;gap:.42rem;margin-top:.62rem}.mock-exam-options label{display:flex;align-items:flex-start;gap:.45rem;color:#2e5174;font-size:.93rem}.mock-exam-options input{margin-top:.12rem}.mock-exam-question textarea{margin-top:.62rem;width:100%;border:1px solid #c8d8e9;border-radius:10px;padding:.55rem .62rem;line-height:1.45;resize:vertical;min-height:100px;font-family:inherit}.mock-exam-actions{margin-top:.15rem;display:flex;gap:.65rem;flex-wrap:wrap}.mock-exam-result .mock-exam-actions .solid-btn{width:100%;margin-top:.9rem}.mock-exam-score{margin:0;font-weight:800;font-size:1rem}.mock-exam-score.pass{color:#0f7b5f}.mock-exam-score.fail{color:#a12f2f}.mock-exam-review{margin-top:.75rem;display:grid;gap:.65rem}.mock-exam-review-item{border:1px solid #d9e5f3;border-radius:12px;background:#fbfdff;padding:.65rem .72rem}.mock-exam-review-item strong{color:#123f66}.mock-exam-review-mark{display:inline-flex;align-items:center;gap:.2rem;margin-right:.35rem;font-size:.9rem}.mock-exam-review-mark.correct{color:#0f7b5f}.mock-exam-review-mark.wrong{color:#a12f2f}.mock-exam-review-answer .mock-exam-review-mark.inline{margin-left:.45rem;margin-right:0}.mock-exam-review-item p{margin:.35rem 0 0;color:#2f557a;font-size:.92rem}.mock-exam-review-item p span{font-weight:700}.mock-exam-weak-areas{margin-top:.75rem;border:1px dashed #c4d7ec;border-radius:12px;background:#f5faff;padding:.68rem .72rem}.mock-exam-weak-areas h5{margin:0;color:#17446c;font-size:.94rem}.mock-exam-weak-areas ul{margin:.5rem 0 0;padding-left:1rem}.mock-exam-weak-areas li{margin-bottom:.28rem;color:#2d567d;font-size:.9rem}.mock-exam-certificate{margin-top:.75rem;border:1px solid #c7e2d5;border-radius:12px;background:linear-gradient(145deg,#f4fff9,#effbf6);padding:.72rem .78rem}.mock-exam-certificate.pending{border-color:#d3dff0;background:linear-gradient(145deg,#f8fbff,#f1f7ff)}.mock-exam-certificate h5{margin:0;color:#12496f;font-size:.94rem}.mock-exam-certificate-summary{margin:.45rem 0 0;color:#2b597c;font-size:.92rem}.mock-exam-certificate-summary.revoked{color:#992626;font-weight:700}.mock-exam-certificate-meta{margin-top:.55rem}.mock-exam-certificate-meta p{font-size:.89rem}.mock-exam-certificate-actions{margin-top:.68rem}.mock-exam-certificate-share-copy{margin:.52rem 0 0;color:#375f80;font-size:.86rem}.mock-exam-error{margin:0;color:#a42323;font-size:.9rem;font-weight:600}.certificate-verify-page{max-width:840px}.certificate-verify-hero{margin-bottom:.9rem}.certificate-verify-card{display:grid;gap:.7rem}.certificate-verify-card.invalid{border-color:#f0cfcf;background:#fff9f9}.certificate-verify-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.certificate-verify-head h3{margin:0;color:#133d65}.certificate-validity-chip{border-radius:999px;padding:.24rem .58rem;font-size:.75rem;font-weight:800;letter-spacing:.03em}.certificate-validity-chip.valid{color:#0e6f53;background:#e4f8ef;border:1px solid #b7e3d0}.certificate-validity-chip.revoked{color:#9f3030;background:#fdecec;border:1px solid #f2c8c8}.certificate-verify-meta p{font-size:.85rem}.certificate-verify-actions{margin-top:.2rem}@media(max-width:700px){.rag-input-row,.tutor-catalog-metrics,.tutor-catalog-layout{grid-template-columns:1fr}.tutor-level-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.2rem;scrollbar-width:thin}.tutor-level-tab{flex:0 0 148px}.tutor-pagination-controls{align-items:stretch}.tutor-pagination-pages{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.15rem}.tutor-catalog-side{position:static}.tutor-course-header{justify-items:center;text-align:center}.tutor-detail-layout,.tutor-detail-metrics,.mock-exam-grid,.mock-exam-stage-nav,.exam-prep-workspace-tabs{grid-template-columns:1fr}}.subscription-page{margin-top:1rem;display:grid;gap:1rem;width:100%}.subscription-hero{position:relative;overflow:hidden;border-color:#cddff3;background:radial-gradient(circle at 0% -10%,rgba(243,196,70,.3),transparent 36%),radial-gradient(circle at 95% 4%,rgba(47,120,202,.24),transparent 40%),linear-gradient(145deg,#fff,#f2f8ff)}.subscription-hero:after{content:"";position:absolute;width:230px;height:230px;right:-64px;bottom:-86px;border-radius:40%;transform:rotate(24deg);background:linear-gradient(150deg,#2f78ca2e,#0fa76f29)}.subscription-hero,.subscription-trust-row,.subscription-top-grid,.subscription-plan-grid{width:min(1220px,100%);margin-left:auto;margin-right:auto}.subscription-hero h2{margin-bottom:.55rem;max-width:720px}.subscription-hero-copy{margin:0;color:#36597f;max-width:760px;line-height:1.5}.subscription-hero-metrics{margin-top:.95rem;position:relative;z-index:1;display:grid;gap:.7rem;grid-template-columns:repeat(3,minmax(0,1fr))}.subscription-hero-metric{border:1px solid #d4e3f2;border-radius:12px;background:#ffffffd6;padding:.7rem}.subscription-hero-metric span{display:block;color:#466789;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.subscription-hero-metric strong{display:block;margin-top:.3rem;color:#1e456f;font-size:1.15rem}.subscription-trust-row{display:flex;gap:.55rem;flex-wrap:wrap}.subscription-trust-row span{border:1px solid #cfe0f2;border-radius:999px;background:#f6fbff;color:#2a547f;padding:.36rem .68rem;font-size:.8rem;font-weight:700}.subscription-top-grid{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.subscription-current-status,.subscription-checkout-controls{border-color:#d3e1f0;background:linear-gradient(160deg,#fff,#f7fbff)}.subscription-current-status h3,.subscription-checkout-controls h3{margin:0}.subscription-note{margin:.72rem 0 0;font-size:.84rem;color:#3a638d}.subscription-control-row{margin-top:.8rem;display:grid;gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-mode{border:1px solid #c6d9ee;border-radius:12px;background:#fff;padding:.62rem .66rem;display:grid;gap:.16rem;cursor:pointer}.subscription-mode input{position:absolute;opacity:0;pointer-events:none}.subscription-mode span{color:#1f4d7c;font-weight:800;font-size:.9rem}.subscription-mode small{color:#4d7196;font-size:.77rem;line-height:1.35}.subscription-mode.selected{border-color:#7ca9de;background:linear-gradient(150deg,#f7fbff,#ecf4ff);box-shadow:inset 0 0 0 1px #1a549a26}.subscription-control-grid{margin-top:.78rem;display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-control-grid label{display:grid;gap:.34rem;font-size:.82rem;color:#35597f;font-weight:700}.subscription-control-grid input,.subscription-control-grid select{border:1px solid #c7d8ea;border-radius:10px;background:#fff;color:#204872;padding:.58rem .64rem;font-weight:600}.subscription-control-grid input:focus,.subscription-control-grid select:focus{outline:2px solid rgba(47,111,201,.2);border-color:#6f9ee0}.subscription-error{margin:.75rem 0 0;color:#a42323;font-size:.84rem;font-weight:700}.subscription-plan-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.subscription-plan-card{position:relative;overflow:hidden;border-color:#d2e0ef;background:linear-gradient(164deg,#fff,#f5faff);min-height:100%;padding:1.2rem 1.15rem}.subscription-plan-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#1f5fad,#2f78ca,#16a274)}.subscription-plan-card.featured{border-color:#9fc3ea;box-shadow:0 18px 34px #174a8333;transform:translateY(-4px) scale(1.02)}.subscription-plan-card.free:before{background:linear-gradient(90deg,#93a7bf,#7d95af)}.subscription-plan-ribbon{margin:0 0 .6rem;display:inline-block;border-radius:999px;border:1px solid #b7d4f4;background:#e9f4ff;color:#1f5ea9;padding:.28rem .58rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.subscription-plan-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.subscription-plan-name{margin:0;color:#1e426a;font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.subscription-plan-tag{border-radius:999px;padding:.26rem .54rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.subscription-plan-tag.paid{color:#105f48;background:#dcfaef;border:1px solid #afe9d3}.subscription-plan-tag.free{color:#415b79;background:#eff4fb;border:1px solid #d1dfef}.subscription-plan-price{margin:.48rem 0 0;font-size:2.2rem;color:#184476;font-weight:800;line-height:1.08}.subscription-plan-interval{margin:.24rem 0 0;color:#56779a;font-size:.86rem}.subscription-plan-description{margin:.72rem 0 0;color:#35597f;font-size:.94rem;line-height:1.45}.subscription-feature-list{margin:.84rem 0 0;padding:0;list-style:none}.subscription-feature-list li{position:relative;border-top:1px solid #e6eef7;padding:.7rem 0 .7rem 1.08rem;color:#2d527a;font-size:.87rem}.subscription-feature-list li:before{content:"";position:absolute;left:0;top:.98rem;width:7px;height:7px;border-radius:999px;background:#16a274}.subscription-free-note{margin:.75rem 0 0;color:#455f7d;font-size:.82rem;font-weight:700}.subscription-plan-card .solid-btn{margin-top:1rem;min-height:48px;font-weight:700}.subscription-plan-card .solid-btn:disabled{opacity:.7;cursor:not-allowed}.payment-redirect-page,.payment-processing-page,.subscription-success-page{margin-top:1rem}.payment-status-card{max-width:720px;margin:0 auto}.payment-status-card h2{margin-bottom:.55rem}.payment-status-copy,.payment-ref{margin:.3rem 0 0;color:#395d84}.payment-ref{font-size:.85rem}.payment-status-actions{margin-top:.95rem}.billing-page{display:grid;gap:1rem;width:100%;min-width:0}.billing-hero{border-color:#cddff3;background:radial-gradient(circle at 0% 0%,rgba(243,196,70,.22),transparent 28%),radial-gradient(circle at 100% 8%,rgba(47,120,202,.2),transparent 32%),linear-gradient(150deg,#fff,#f4f9ff);width:100%;min-width:0}.billing-copy{margin:.45rem 0 0;max-width:720px;color:#3d638a}.billing-hero-strip{margin-top:.95rem;display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.billing-hero-metric{border:1px solid #d4e3f2;border-radius:12px;background:#ffffffe0;padding:.8rem}.billing-hero-metric span{display:block;color:#507295;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.billing-hero-metric strong{display:block;margin-top:.24rem;color:#1f4f81;font-size:1.08rem}.billing-grid{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;min-width:0}.credits-grid{align-items:start;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr)}.billing-card{display:grid;gap:.95rem;min-width:0;width:100%}.billing-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.billing-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:999px;border:1px solid #c9dced;background:#eff6ff;color:#29598d;padding:.3rem .75rem;font-size:.78rem;font-weight:800}.billing-badge.active{border-color:#b8e2cd;background:#e9f8ef;color:#116443}.billing-note{margin:0;color:#46698d;font-size:.89rem;line-height:1.5}.billing-inline-note{border-radius:12px;background:#f5f9ff;border:1px solid #d7e4f3;padding:.8rem .9rem;color:#385d84;font-size:.89rem}.billing-stat-grid{display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.billing-stat-card{border:1px solid #d7e4f3;border-radius:12px;background:linear-gradient(160deg,#fff,#f7fbff);padding:.8rem}.billing-stat-card span{display:block;color:#567695;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.billing-stat-card strong{display:block;margin-top:.28rem;color:#214b7b;font-size:1rem}.billing-form-grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.billing-form-grid label{display:grid;gap:.36rem;font-size:.84rem;color:#35597f;font-weight:700}.billing-form-grid input,.billing-form-grid select{border:1px solid #c7d8ea;border-radius:10px;background:#fff;color:#204872;padding:.58rem .64rem;font-weight:600}.topup-package-grid{display:grid;gap:.8rem}.topup-package-card{width:100%;border:1px solid #d6e3f1;border-radius:14px;background:linear-gradient(160deg,#fff,#f7fbff);padding:.95rem 1rem;text-align:left;display:grid;gap:.25rem;cursor:pointer}.topup-package-card strong{color:#1f4f81;font-size:.98rem}.topup-package-card span{color:#527395;font-size:.88rem}.topup-package-card em{color:#0f7a49;font-style:normal;font-size:1rem;font-weight:800}.topup-package-card.is-selected{border-color:#7ca9de;background:linear-gradient(150deg,#f7fbff,#ecf4ff);box-shadow:inset 0 0 0 1px #1a549a26}.billing-list{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}.billing-list li{position:relative;padding-left:1.2rem;color:#294f79;font-size:.9rem}.billing-list li:before{content:"";position:absolute;left:0;top:.48rem;width:7px;height:7px;border-radius:999px;background:linear-gradient(135deg,#1f5fad,#19a16d)}.billing-actions{margin-top:.1rem}.billing-ledger-card{min-width:0;overflow:hidden}.billing-table-wrap{overflow-x:auto;width:100%}.billing-table{width:100%;border-collapse:collapse;table-layout:fixed}.billing-table th,.billing-table td{padding:.72rem .4rem;border-bottom:1px solid #edf2f8;text-align:left;font-size:.88rem}.billing-table th{color:#4c6e91;font-size:.79rem;text-transform:uppercase;letter-spacing:.04em}.billing-table td{color:#28486d;word-break:break-word;overflow-wrap:anywhere}.billing-table th:first-child,.billing-table td:first-child{width:31%}.billing-table th:last-child,.billing-table td:last-child{width:18%}.billing-table td.positive{color:#0f7a49;font-weight:700}.billing-table td.negative{color:#a43333;font-weight:700}.billing-pagination-controls{flex-wrap:nowrap;justify-content:space-between}.billing-pagination-pages{flex:1 1 auto;justify-content:center;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.1rem}@media(max-width:920px){.subscription-top-grid,.subscription-hero-metrics{grid-template-columns:1fr}.subscription-plan-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.subscription-plan-card.featured{transform:none}.billing-grid,.billing-hero-strip,.billing-form-grid,.billing-stat-grid{grid-template-columns:1fr}}@media(max-width:760px){.billing-pagination-controls{gap:.55rem}.billing-pagination-pages{justify-content:flex-start}}@media(max-width:760px){.subscription-control-row,.subscription-control-grid{grid-template-columns:1fr}.payment-status-card{max-width:none}}
