@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-cyrillic-ext-wght-normal.1o60yhwqd7ueg.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-cyrillic-wght-normal.0n0q_nh7u2mrm.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-vietnamese-wght-normal.0nt7ek_nfk5a4.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-latin-ext-wght-normal.39q78sztp1ci5.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/geist-latin-wght-normal.20f3xrkj613ah.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-ext-400-normal.0ordxpm0gxgw8.woff2)format("woff2"),url(../media/instrument-serif-latin-ext-400-normal.2z9xqimzvw6vx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-400-normal.3_vslfxq_--4i.woff2)format("woff2"),url(../media/instrument-serif-latin-400-normal.2maraz2ovyahx.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-ext-400-italic.30flr4oxtjagu.woff2)format("woff2"),url(../media/instrument-serif-latin-ext-400-italic.2vfzl0i35o8_c.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-400-italic.1bk2-9tco4m7m.woff2)format("woff2"),url(../media/instrument-serif-latin-400-italic.3_-8f-v73506e.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#0b1838;--text:#34405a;--muted:#5a6680;--subtle:#9aa4b8;--line:#e3e8f1;--line-strong:#cfd7e5;--bg:#f5f7fb;--surface:#fff;--tint:#edf1f9;--hover:#f1f4fa;--blue:#1e5ef0;--blue-strong:#1749c4;--blue-soft:#ebf1fe;--sky:#8fb8ff;--navy:#0b1838;--navy-2:#13275a;--gold:#c9a45c;--gold-text:#8a6526;--gold-soft:#f8f1e3;--success:#0f7a4b;--success-bg:#e8f7ef;--warning:#a35a0b;--warning-bg:#fff6e6;--danger:#b42318;--danger-bg:#fef3f2;--sans:"Geist Variable", "Segoe UI", system-ui, -apple-system, sans-serif;--serif:"Instrument Serif", "Iowan Old Style", Georgia, serif;--fs-xs:12px;--fs-sm:13px;--fs-base:14.5px;--fs-md:15.5px;--fs-lg:17px;--fs-xl:20px;--fs-2xl:28px;--fs-3xl:34px;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:26px;--shadow-sm:0 1px 2px #0b18380d;--shadow-card:0 1px 2px #0b18380a, 0 8px 24px -12px #0b18381a;--shadow-hover:0 2px 4px #0b18380d, 0 18px 40px -16px #0b183838;--shadow-lg:0 24px 60px -20px #0b183859;--ease:cubic-bezier(.22, 1, .36, 1);--t:.2s var(--ease);--sidebar:256px;--content:1160px;--gutter:44px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--sans);font-size:var(--fs-base);color:var(--text);background:var(--bg);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--ink);letter-spacing:-.011em;font-weight:600}h1{font-size:var(--fs-2xl);letter-spacing:-.02em;line-height:1.25}h2{font-size:var(--fs-lg);line-height:1.35}h3{font-size:var(--fs-md);line-height:1.4}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}ol,ul{margin:0;padding:0}hr{border:0;border-top:1px solid var(--line);margin:18px 0}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}::selection{background:#d6e3fb}.muted{color:var(--muted)}.small-text{font-size:var(--fs-sm)}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;top:-60px;left:calc(var(--sidebar) + 16px);border-radius:var(--r-md);background:var(--ink);color:#fff;font-size:var(--fs-sm);padding:8px 14px;position:fixed}.skip-link:focus{top:12px}.kicker{font-size:var(--fs-sm);color:var(--muted);margin-bottom:6px;font-weight:500}.kicker:first-letter{text-transform:uppercase}.meta{font-size:var(--fs-sm);color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.optional{color:var(--muted);font-weight:400;font-size:var(--fs-xs);margin-left:4px}.subtle-note{font-size:var(--fs-sm);color:var(--muted);margin-top:16px}.display{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);font-weight:400}.display em{color:var(--blue);font-style:italic}h1.display{font-size:46px;line-height:1.05}h2.display{font-size:34px;line-height:1.1}.display.small{font-size:28px;line-height:1.15}.eyebrow{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--gold-text);margin-bottom:10px;font-weight:600}.lead{max-width:620px;font-size:var(--fs-lg);color:var(--text);margin-top:14px;line-height:1.6}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.button{min-height:40px;font-size:var(--fs-base);white-space:nowrap;transition:transform var(--t), background var(--t), border-color var(--t), box-shadow var(--t), color var(--t);border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:550;line-height:1;display:inline-flex;position:relative}.button svg{transition:transform var(--t);flex-shrink:0}.button:hover:not(:disabled) svg:last-child{transform:translate(2px)}.button:active:not(:disabled){transform:translateY(1px)scale(.99)}.button.large{min-height:46px;font-size:var(--fs-md);border-radius:13px;padding:0 20px}.button.primary{background:linear-gradient(180deg, #16295c, var(--navy));color:#fff;box-shadow:inset 0 1px #ffffff1f,0 1px 2px #0b183833,0 8px 20px -10px #0b183899}.button.primary:hover:not(:disabled){background:linear-gradient(#1c3373,#0f2049);box-shadow:inset 0 1px #ffffff24,0 2px 4px #0b183833,0 14px 28px -12px #0b1838a6}.button.secondary,.button.light,.button.glass{background:var(--surface);border-color:var(--line-strong);color:var(--ink);box-shadow:var(--shadow-sm)}.button.secondary:hover:not(:disabled),.button.light:hover:not(:disabled),.button.glass:hover:not(:disabled){border-color:var(--subtle);box-shadow:var(--shadow-card)}.button.on-dark{color:var(--navy);min-height:46px;font-size:var(--fs-md);background:#fff;border-radius:13px;padding:0 20px;box-shadow:0 10px 24px -12px #00000080}.button.on-dark:hover{background:#f1f5ff}.button.outline-dark{color:#fff;min-height:46px;font-size:var(--fs-md);background:#ffffff0a;border-color:#ffffff47;border-radius:13px;padding:0 18px}.button.outline-dark:hover{background:#ffffff1a;border-color:#ffffff73}.button.ghost{color:var(--muted)}.button.ghost:hover:not(:disabled){background:var(--hover);color:var(--ink)}.button.danger{background:var(--danger);color:#fff}.button.danger:hover:not(:disabled){background:#912018}.button.small{min-height:34px;font-size:var(--fs-sm);border-radius:9px;padding:0 12px}.button.wide{width:100%}.button:disabled{opacity:.5}.icon-button{width:36px;height:36px;color:var(--muted);transition:background var(--t), color var(--t);border-radius:10px;place-items:center;display:inline-grid}.icon-button:hover:not(:disabled){background:var(--hover);color:var(--ink)}.icon-button:disabled{opacity:.35}.text-link,.section-heading>a{font-size:var(--fs-sm);color:var(--blue);align-items:center;gap:6px;font-weight:550;display:inline-flex}.text-link svg,.section-heading>a svg{transition:transform var(--t)}.text-link:hover,.section-heading>a:hover{color:var(--blue-strong)}.text-link:hover svg,.section-heading>a:hover svg{transform:translate(3px)}.text-button{font-size:var(--fs-sm);color:var(--danger);font-weight:500}.text-button:hover{text-decoration:underline}.back-link{font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:6px;margin-bottom:22px;font-weight:500;display:inline-flex}.back-link svg{transition:transform var(--t)}.back-link:hover{color:var(--ink)}.back-link:hover svg{transform:translate(-3px)}.source-link{font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:5px;display:inline-flex}.source-link:hover{color:var(--ink)}.status{border-radius:var(--r-sm);height:22px;font-size:var(--fs-xs);white-space:nowrap;background:var(--hover);color:var(--text);border:1px solid var(--line);align-items:center;gap:4px;padding:0 8px;font-weight:500;display:inline-flex}.status.submitted{background:var(--blue-soft);color:var(--blue-strong);border-color:#d5e2f8}.status.revise{background:var(--warning-bg);color:var(--warning);border-color:#fedf89}.status.approved{background:var(--success-bg);color:var(--success);border-color:#abefc6}.count-label{border-radius:var(--r-sm);background:var(--hover);min-width:22px;height:22px;font-size:var(--fs-xs);color:var(--text);place-items:center;padding:0 7px;font-weight:600;display:inline-grid}.sidebar{z-index:30;width:var(--sidebar);background:radial-gradient(120% 40% at 0% 0%, #1e5ef012, transparent 60%), var(--tint);border-right:1px solid var(--line);flex-direction:column;padding:22px 14px 16px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{align-items:center;gap:11px;padding:2px 10px 26px;display:flex}.brand img{object-fit:contain;width:38px;height:38px;box-shadow:0 0 0 1px var(--line), 0 4px 10px -4px #0b183833;background:#fff;border-radius:50%;padding:3px}.brand span{font-family:var(--serif);color:var(--ink);flex-direction:column;font-size:23px;font-weight:400;line-height:1.05;display:flex}.brand small{font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:3px;font-size:11px;font-weight:500}.nav-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 12px 8px;font-size:11px;font-weight:600}.sidebar nav,.mobile-navigation nav{flex-direction:column;gap:3px;display:flex}.sidebar nav a,.mobile-navigation nav a,.sidebar-bottom>a{min-height:42px;font-size:var(--fs-base);color:var(--text);transition:background var(--t), color var(--t), box-shadow var(--t);border-radius:12px;align-items:center;gap:12px;padding:0 12px;font-weight:500;display:flex;position:relative}.sidebar nav a svg,.mobile-navigation nav a svg,.sidebar-bottom>a svg{width:18px;height:18px;color:var(--muted);transition:color var(--t), transform var(--t)}.sidebar nav a:hover,.mobile-navigation nav a:hover,.sidebar-bottom>a:hover{color:var(--ink);background:#fff9}.sidebar nav a:hover svg{transform:scale(1.06)}.sidebar nav a.active,.mobile-navigation nav a.active{color:var(--ink);background:#fff;font-weight:600;box-shadow:0 1px 2px #0b18380f,0 6px 16px -10px #0b183840}.sidebar nav a.active:before{content:"";background:var(--blue);border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:-14px}.sidebar nav a.active svg,.mobile-navigation nav a.active svg{color:var(--blue)}.nav-count{background:var(--blue);color:#fff;border-radius:10px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:600;display:inline-grid}.sidebar-bottom{flex-direction:column;gap:1px;margin-top:auto;padding-top:18px;display:flex}.sidebar-bottom>a{min-height:36px;font-size:var(--fs-sm);color:var(--muted)}.sidebar-profile{border:1px solid var(--line);background:#ffffffb3;border-radius:14px;margin-top:12px;padding:6px}.profile-link{border-radius:10px;align-items:center;gap:10px;padding:7px 8px;display:flex}.profile-link:hover{background:var(--hover)}.profile-link>span:nth-child(2){min-width:0;font-size:var(--fs-sm);color:var(--ink);flex-direction:column;flex:1;font-weight:600;line-height:1.3;display:flex}.profile-link small{color:var(--muted);font-weight:400}.profile-link>svg{color:var(--muted)}.avatar{background:linear-gradient(140deg, var(--blue), var(--navy));color:#fff;width:34px;height:34px;font-size:var(--fs-sm);border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;display:inline-grid}.avatar.pale{background:var(--blue-soft);color:var(--blue-strong)}.logout-button{width:100%;min-height:34px;font-size:var(--fs-sm);color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:0 8px;display:flex}.logout-button:hover{background:var(--hover);color:var(--ink)}.workspace{margin-left:var(--sidebar);flex-direction:column;min-height:100svh;display:flex}.topbar{z-index:20;height:64px;padding:0 var(--gutter);-webkit-backdrop-filter:saturate(1.6)blur(14px);transition:border-color var(--t);background:#f5f7fbcc;border-bottom:1px solid #0000;align-items:center;gap:12px;display:flex;position:sticky;top:0}.mobile-menu,.topbar-brand,.topbar-title{display:none}.topbar-brand img{object-fit:contain;width:30px;height:30px}.topbar-title{font-family:var(--serif);color:var(--ink);font-size:22px;font-weight:400}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.search-trigger{border:1px solid var(--line);width:280px;height:40px;color:var(--muted);font-size:var(--fs-sm);text-align:left;box-shadow:var(--shadow-sm);transition:border-color var(--t), box-shadow var(--t);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:0 14px;display:flex}.search-trigger:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card)}.search-trigger svg{width:16px;height:16px}.search-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notification-button{border:1px solid var(--line);width:40px;height:40px;box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;position:relative}.notification-button i{background:var(--blue);width:8px;height:8px;animation:ping 2.4s var(--ease) 3;border:2px solid #fff;border-radius:50%;position:absolute;top:9px;right:10px}.main-content{width:100%;max-width:calc(var(--content) + 2 * var(--gutter));padding:18px var(--gutter) 72px;outline:none;flex:1;margin:0 auto}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin:14px 0 34px;display:flex}.page-heading>div:first-child{min-width:0}.page-lead{max-width:680px;font-size:var(--fs-md);color:var(--muted);margin-top:12px;line-height:1.6}.page-heading-action{flex-shrink:0;gap:8px;display:flex}.section-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.section-heading h2{font-size:var(--fs-lg)}.section-heading.spaced{margin-top:36px}.section-lead{color:var(--muted);margin-top:4px}.section-title{font-family:var(--serif);margin:40px 0 18px;font-size:30px;font-weight:400}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:24px}.empty{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:36px 16px;display:flex}.empty-icon{background:linear-gradient(160deg, var(--blue-soft), #fff);border:1px solid var(--line);width:52px;height:52px;color:var(--blue);border-radius:16px;place-items:center;margin-bottom:8px;display:inline-grid}.empty h3{font-size:var(--fs-md)}.empty p{max-width:380px;color:var(--muted)}.empty .button{margin-top:12px}.quiet-empty{color:var(--muted);padding:14px 0 4px}.small-icon{background:var(--blue-soft);width:42px;height:42px;color:var(--blue);border-radius:13px;flex-shrink:0;place-items:center;display:inline-grid}.success-icon{background:var(--success-bg);width:44px;height:44px;color:var(--success);border-radius:50%;place-items:center;margin-bottom:12px;display:inline-grid}.progress-track,.bar{background:#e6ebf4;border-radius:6px;width:100%;height:6px;position:relative;overflow:hidden}.progress-track>span,.bar>span{background:linear-gradient(90deg, var(--blue), #5b8cff);transform-origin:0;height:100%;animation:grow 1.1s var(--ease) both .15s;border-radius:6px;display:block}.progress-ring{flex-shrink:0;place-items:center;display:inline-grid;position:relative}.progress-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:3.2px}.ring-track{stroke:#e6ebf4}.ring-value{stroke:var(--blue);stroke-linecap:round;stroke-dashoffset:var(--ring-offset);animation:ring 1.3s var(--ease) both .2s}.progress-ring strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:13px;font-weight:650;position:relative}.progress-ring small{color:var(--muted);font-size:9px;font-weight:600}.cover{background:#e8edf6;position:relative;overflow:hidden}.cover-image{object-fit:cover;object-position:50% 30%;width:100%;height:100%;transition:transform .9s var(--ease);position:relative}.cover-backdrop{display:none}.cover.is-poster .cover-backdrop{object-fit:cover;filter:blur(28px)saturate(1.2);opacity:.55;width:calc(100% + 40px);height:calc(100% + 40px);display:block;position:absolute;inset:-20px;transform:scale(1.1)}.cover.is-poster .cover-image{object-fit:contain;filter:drop-shadow(0 10px 18px #0b183840);padding:14px}.cover-chip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink);letter-spacing:.04em;text-transform:uppercase;background:#ffffffeb;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;position:absolute;top:12px;left:12px;box-shadow:0 4px 12px -6px #0b18384d}.program-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.program-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);transition:transform var(--t), box-shadow var(--t), border-color var(--t);flex-direction:column;display:flex;overflow:hidden}.program-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-hover);transform:translateY(-4px)}.program-card:hover .cover-image{transform:scale(1.05)}.program-cover-frame{aspect-ratio:16/10}.program-cover-frame .cover-image{position:absolute;inset:0}.program-cover-frame.is-photo:after{content:"";background:linear-gradient(#0000,#0b183840);position:absolute;inset:55% 0 0}.program-card-body{flex-direction:column;flex:1;padding:18px 20px 20px;display:flex}.program-card h3{font-family:var(--serif);margin:6px 0 8px;font-size:24px;font-weight:400;line-height:1.15}.program-card-body>p{font-size:var(--fs-sm);color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.card-progress{align-items:center;gap:10px;margin-top:auto;padding-top:10px;display:flex}.card-progress small{font-size:var(--fs-xs);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.card-link{border-top:1px solid var(--line);font-size:var(--fs-sm);color:var(--blue);align-items:center;gap:6px;margin-top:16px;padding-top:14px;font-weight:600;display:inline-flex}.card-link svg{width:15px;height:15px;transition:transform var(--t)}.program-card:hover .card-link svg{transform:translate(4px)}.filter-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.tabs{background:var(--tint);border:1px solid var(--line);border-radius:13px;gap:2px;padding:4px;display:inline-flex}.tabs>button{height:32px;font-size:var(--fs-sm);color:var(--muted);transition:background var(--t), color var(--t);border-radius:9px;align-items:center;gap:6px;padding:0 14px;font-weight:500;display:inline-flex}.tabs>button:hover{color:var(--ink)}.tabs>button.selected{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0b183814,0 4px 10px -6px #0b183833}.tab-dot{background:var(--blue);border-radius:50%;width:6px;height:6px}.inline-search{border:1px solid var(--line);width:280px;height:40px;box-shadow:var(--shadow-sm);background:var(--surface);color:var(--muted);border-radius:12px;align-items:center;gap:8px;padding:0 14px;display:flex}.inline-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #1f5fd61f}.inline-search{flex-direction:row;margin:0}.inline-search input:not([type=checkbox]):not([type=radio]){min-height:0;box-shadow:none;border:0;border-radius:0;padding:0}.inline-search input{min-width:0;font-size:var(--fs-base);background:0 0;border:0;outline:0;flex:1}.inline-search.resource-search{margin-bottom:22px}.program-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:40px;display:grid}.module-list{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-card);list-style:none;overflow:hidden}.module-list li+li{border-top:1px solid var(--line)}.module-item{transition:background var(--t);align-items:flex-start;gap:20px;padding:22px 24px;display:flex}a.module-item:hover{background:linear-gradient(90deg, var(--blue-soft), transparent 70%)}a.module-item:hover .module-index:not(.done){background:var(--navy);color:#fff;transform:rotate(-4deg)}a.module-item:hover .module-go{color:var(--subtle);transition:transform var(--t), color var(--t);margin-top:12px}.module-index{background:var(--tint);width:44px;height:44px;font-family:var(--serif);color:var(--navy);font-variant-numeric:lining-nums;transition:background var(--t), color var(--t), transform var(--t);border-radius:14px;flex-shrink:0;place-items:center;font-size:22px;display:inline-grid}.module-index.done{background:var(--success-bg);color:var(--success)}.module-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.module-content strong{font-size:var(--fs-md);color:var(--ink);font-weight:600}.module-description{color:var(--muted)}.module-themes{font-size:var(--fs-sm);color:var(--muted);flex-wrap:wrap;gap:4px 0;margin-top:2px;display:flex}.module-themes span:not(:last-child):after{content:"·";color:var(--subtle);margin:0 8px}.module-go{color:var(--subtle);margin-top:4px}.module-item.is-locked{opacity:.75}.closing-card{border-radius:var(--r-lg);background:linear-gradient(160deg, var(--gold-soft), #fff);border:1px solid #ecdcb9;margin-top:24px;padding:24px 26px}.closing-card h3{margin-bottom:6px}.closing-card p{color:var(--muted)}.content-caution{border-radius:var(--r-md);border:1px solid var(--line);background:var(--hover);font-size:var(--fs-sm);color:var(--text);margin-top:20px;padding:12px 14px}.program-aside{flex-direction:column;gap:16px;display:flex;position:sticky;top:80px}.outcome-card,.aside-card,.trainer-card{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);padding:22px}.outcome-card{color:#fff;background:radial-gradient(120% 90% at 100% 0%, #8fb8ff59, transparent 55%), linear-gradient(160deg, var(--navy-2), var(--navy));border:0}.outcome-card .kicker{color:var(--gold);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.outcome-card p:last-child{font-family:var(--serif);font-size:22px;line-height:1.3;color:#ffffffe6!important}.outcome-card p:last-child,.aside-card p{color:var(--text)}.aside-card h3{margin-bottom:6px}.aside-card ul{color:var(--text);margin-top:8px;padding-left:18px}.aside-card li+li{margin-top:4px}.trainer-card{grid-template-columns:44px 1fr;align-items:center;gap:4px 12px;display:grid}.trainer-card img{object-fit:cover;object-position:50% 20%;border-radius:50%;width:44px;height:44px}.trainer-card .kicker{font-size:var(--fs-xs);margin-bottom:0}.trainer-role{font-size:var(--fs-sm);color:var(--muted)}.trainer-bio{font-size:var(--fs-sm);color:var(--text);-webkit-line-clamp:4;-webkit-box-orient:vertical;grid-column:1/-1;margin-top:10px;display:-webkit-box;overflow:hidden}.trainer-link{grid-column:1/-1;margin-top:8px}.lesson-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:40px;display:grid}.reading-panel{border-radius:var(--r-xl);border:1px solid var(--line);background:var(--surface);min-width:0;max-width:760px;box-shadow:var(--shadow-card);padding:40px 44px}.lesson-video{border-radius:var(--r-md);background:#000;width:100%;margin-bottom:28px}.reading-section+.reading-section{margin-top:28px}.reading-section h2{font-family:var(--serif);margin-bottom:12px;font-size:28px;font-weight:400}.reading-section p{font-size:var(--fs-md);color:var(--text);line-height:1.7}.theme-list{margin-top:4px;list-style:none}.theme-list li{font-size:var(--fs-md);color:var(--text);border-bottom:1px solid var(--line);padding:10px 0 10px 20px;line-height:1.6;position:relative}.theme-list li:last-child{border-bottom:0}.theme-list li:before{content:"";background:var(--blue);width:6px;height:6px;box-shadow:0 0 0 3px var(--blue-soft);border-radius:50%;position:absolute;top:19px;left:2px}.reading-source{font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:10px;margin-top:28px;display:flex}.reading-source span{flex:1}.reading-source:hover{color:var(--ink)}.complete-bar{border:1px solid var(--line);background:linear-gradient(160deg, var(--tint), #fff);transition:background var(--t), border-color var(--t);border-radius:16px;justify-content:space-between;align-items:center;gap:16px;margin-top:28px;padding:18px 20px;display:flex}.complete-bar.is-done{background:linear-gradient(160deg, var(--success-bg), #fff);border-color:#b9e6cd}.complete-bar.is-done .complete-state svg{animation:pop .5s var(--ease) both}.complete-state{color:var(--text);align-items:center;gap:8px;font-weight:500;display:inline-flex}.complete-bar.is-done .complete-state{color:var(--success)}.lesson-pagination{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.lesson-pagination a{border:1px solid var(--line);color:var(--ink);transition:border-color var(--t), box-shadow var(--t), transform var(--t);border-radius:14px;align-items:center;gap:10px;padding:14px 16px;font-weight:550;display:flex}.lesson-pagination a:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card);transform:translateY(-2px)}.lesson-pagination a:last-child{text-align:right;justify-content:flex-end}.lesson-pagination a svg{color:var(--muted);flex-shrink:0}.lesson-pagination small{font-size:var(--fs-xs);color:var(--muted);font-weight:400;display:block}.lesson-note{border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.lesson-note h2{font-size:var(--fs-md);align-items:center;gap:8px;display:flex}.lesson-note h2 svg{color:var(--muted)}.lesson-sidebar{position:sticky;top:80px}.lesson-outline{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card)}.lesson-outline>summary{font-family:var(--serif);cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;padding:18px 18px 14px;font-size:22px;font-weight:600;list-style:none;display:flex}.lesson-outline>summary::-webkit-details-marker{display:none}.lesson-outline>summary svg{color:var(--subtle)}.lesson-outline>div{padding:0 8px 10px}.outline-progress{font-size:var(--fs-xs);color:var(--muted);flex-direction:column;gap:6px;padding:0 8px 12px;display:flex}.lesson-outline a:not(.outline-resource){border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--text);align-items:flex-start;gap:10px;padding:8px;display:flex}.lesson-outline a:not(.outline-resource):hover{background:var(--hover)}.lesson-outline a.current{background:linear-gradient(90deg, var(--blue-soft), transparent);color:var(--blue-strong);font-weight:600}.lesson-outline a>span{width:18px;font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;padding-top:1px}.lesson-outline a.current>span{color:var(--blue)}.lesson-outline a>strong{font-weight:500}.outline-resource{border-top:1px solid var(--line);font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:8px;margin:8px 8px 0;padding-top:12px;display:flex}.outline-resource:hover{color:var(--ink)}label{font-size:var(--fs-sm);color:var(--ink);flex-direction:column;gap:6px;margin-bottom:16px;font-weight:500;display:flex}input:not([type=checkbox]):not([type=radio]),textarea,select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:42px;font-size:var(--fs-base);color:var(--ink);box-shadow:var(--shadow-sm);transition:border-color var(--t), box-shadow var(--t);border-radius:11px;padding:9px 13px;font-weight:400}textarea{resize:vertical;line-height:1.55}input::placeholder,textarea::placeholder{color:#8a93a3}input:focus,textarea:focus,select:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1f5fd624}input[readonly]{background:var(--bg);color:var(--muted)}input[type=checkbox],input[type=radio]{width:16px;height:16px;accent-color:var(--blue);flex-shrink:0;margin:0}fieldset{border:0;min-width:0;margin:0;padding:0}.field-label{margin-bottom:8px}.form-grid{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.form-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:8px;display:flex}.form-footer>small:first-child,.form-footer>.text-link:first-child,.form-footer>.status:first-child{margin-right:auto}.form-footer small{font-size:var(--fs-sm)}.form-error{border-radius:var(--r-md);background:var(--danger-bg);color:var(--danger);font-size:var(--fs-sm);border:1px solid #fecdca;margin-bottom:14px;padding:10px 12px}.password-input{position:relative}.password-input input{padding-right:44px}.password-input .icon-button{position:absolute;top:2px;right:2px}.evaluation-list{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.evaluation-list>.panel{border:0;border-radius:0}.evaluation-list>.panel+.panel{border-top:1px solid var(--line)}.evaluation-row{transition:background var(--t);align-items:center;gap:14px;padding:16px 20px;display:flex}.evaluation-row:hover{background:var(--hover)}.evaluation-row>div{flex:1;min-width:0}.evaluation-row h3{font-size:var(--fs-base);font-weight:600}.evaluation-row>svg{color:var(--subtle)}.exercise-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:32px;display:grid}.exercise-instructions{font-size:var(--fs-md);margin-bottom:22px;line-height:1.65}.exercise-help{position:sticky;top:80px}.exercise-help h3{margin-bottom:10px}.review-feedback{border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg);margin-bottom:22px;padding:14px 16px}.review-feedback .section-heading{margin-bottom:6px}.review-feedback p{margin:6px 0}.review-feedback small{color:var(--muted);font-size:var(--fs-xs)}.submitted-body,.submission-text{border-radius:var(--r-md);background:var(--bg);border:1px solid var(--line);margin-bottom:14px;padding:14px 16px;line-height:1.65}.quiz-panel{max-width:760px;padding:28px 32px}.quiz-question+.quiz-question{border-top:1px solid var(--line);margin-top:26px;padding-top:24px}.quiz-question legend{color:var(--ink);gap:10px;margin-bottom:12px;font-weight:600;display:flex}.quiz-question legend span{color:var(--muted);font-variant-numeric:tabular-nums}.radio-option{border-radius:var(--r-md);border:1px solid var(--line);color:var(--text);cursor:pointer;transition:border-color var(--t), background var(--t);flex-direction:row;align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;font-weight:400}.radio-option:hover{border-color:var(--line-strong)}.radio-option.checked{border-color:var(--blue);background:var(--blue-soft);color:var(--ink)}.quiz-submit{align-items:center;gap:14px;margin-top:26px;display:flex}.quiz-score{border-bottom:1px solid var(--line);align-items:baseline;gap:10px;margin-bottom:20px;padding-bottom:20px;display:flex}.quiz-score .small-icon{display:none}.quiz-score h2{letter-spacing:-.03em;font-size:36px}.quiz-score h2 span{color:var(--muted);font-weight:500;font-size:var(--fs-xl)}.quiz-score p{color:var(--muted)}.quiz-feedback{border-bottom:1px solid var(--line);padding:14px 0}.quiz-feedback>div{align-items:flex-start;gap:10px;display:flex}.quiz-feedback h3{font-size:var(--fs-base)}.quiz-feedback strong{color:var(--ink);margin:6px 0 2px 32px;font-weight:500;display:block}.quiz-feedback p{color:var(--muted);font-size:var(--fs-sm);margin-left:32px}.result-dot{border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:11px;font-weight:600;display:inline-grid}.result-dot.correct{background:var(--success-bg);color:var(--success)}.result-dot.incorrect{background:var(--danger-bg);color:var(--danger)}.resource-list{padding:0;overflow:hidden}.resource-row{align-items:center;gap:14px;padding:14px 20px;display:flex}.resource-row+.resource-row{border-top:1px solid var(--line)}.resource-row>div{flex:1;min-width:0}.resource-row .meta{display:none}.resource-row h3{font-size:var(--fs-base)}.resource-row p{font-size:var(--fs-sm);color:var(--muted)}.resource-icon{border-radius:var(--r-sm);border:1px solid var(--line);width:36px;height:40px;color:var(--muted);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.resource-icon svg{width:16px;height:16px}.resource-icon small{font-size:9px;font-weight:600}.notes-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.note-card{flex-direction:column;padding:18px;display:flex}.note-meta{font-size:var(--fs-xs);color:var(--muted);align-items:center;gap:8px;display:flex}.note-open{text-align:left;flex:1;margin:10px 0}.note-open h2{font-size:var(--fs-md);margin-bottom:4px}.note-open p{font-size:var(--fs-sm);color:var(--muted);-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.note-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.appointments-list{flex-direction:column;gap:12px;display:flex}.appointment-card{align-items:center;gap:18px;padding:18px 20px;display:flex}.appointment-card.cancelled{opacity:.6}.appointment-date{border-radius:var(--r-md);border:1px solid var(--line);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.appointment-date span{font-size:var(--fs-xs);color:var(--muted);text-transform:capitalize}.appointment-date strong{font-size:var(--fs-xl);color:var(--ink);font-weight:600;line-height:1.1}.appointment-content{flex:1;min-width:0}.appointment-content h2{font-size:var(--fs-md);margin:2px 0 6px}.appointment-meta{font-size:var(--fs-sm);color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 16px;display:flex}.appointment-meta>span{align-items:center;gap:6px;display:inline-flex}.appointment-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.profile-layout,.help-layout{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.help-layout{grid-template-columns:minmax(0,1fr) 300px}.faq-list{padding:4px 22px}.faq-list details+details{border-top:1px solid var(--line)}.faq-list summary{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;font-weight:500;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary svg{color:var(--subtle);transition:transform var(--t);flex-shrink:0}.faq-list details[open] summary svg{transform:rotate(45deg)}.faq-list p{color:var(--text);padding-bottom:16px}.support-card{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.support-card img{object-fit:cover;object-position:50% 20%;border-radius:50%;width:48px;height:48px;margin-bottom:6px}.support-card h2{font-size:var(--fs-md)}.support-card .button{margin-top:8px}.trainer-header{border-bottom:1px solid var(--line);align-items:center;gap:24px;margin-bottom:28px;padding-bottom:28px;display:flex}.trainer-portrait{object-fit:cover;object-position:50% 20%;border-radius:50%;flex-shrink:0;width:104px;height:104px}.trainer-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:40px;display:grid}.trainer-bio-full p{font-size:var(--fs-md);line-height:1.7}.trainer-bio-full p+p{margin-top:14px}.timeline{border-left:1px solid var(--line);margin-left:6px;list-style:none}.timeline li{padding:0 0 22px 22px;position:relative}.timeline li:before{content:"";background:var(--surface);border:1.5px solid var(--blue);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;left:-4px}.timeline-year{font-size:var(--fs-sm);color:var(--blue);font-variant-numeric:tabular-nums;font-weight:600}.timeline h3{margin:2px 0 4px}.timeline p{color:var(--text)}.credentials-card{position:sticky;top:80px}.credentials-card h2{font-size:var(--fs-md);margin-bottom:10px}.credentials-card ul{margin-bottom:14px;list-style:none}.credentials-card li{font-size:var(--fs-sm);border-top:1px solid var(--line);gap:10px;padding:8px 0;display:flex}.credentials-card li svg{color:var(--success);flex-shrink:0;margin-top:2px}.teacher-columns{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.teacher-recent{margin-top:24px}.work-row,.request-row{border-top:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.work-row:hover strong{color:var(--blue)}.work-row>div,.request-row>div{flex:1;min-width:0}.work-row strong,.request-row strong{color:var(--ink);font-weight:500}.work-row p,.request-row p{font-size:var(--fs-sm);color:var(--muted)}.work-row small{font-size:var(--fs-xs);color:var(--muted)}.work-row>svg{color:var(--subtle)}.event-list{list-style:none}.event-list li{gap:12px;padding:10px 0;display:flex}.event-list li+li{border-top:1px solid var(--line)}.event-point{background:var(--line-strong);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:8px}.event-list strong{color:var(--ink);font-weight:500;display:block}.event-list small{font-size:var(--fs-xs);color:var(--muted)}.activity-empty{padding:6px 0}.student-list{padding:0;overflow:hidden}.student-row{transition:background var(--t);align-items:center;gap:14px;padding:14px 20px;display:flex}.student-row+.student-row{border-top:1px solid var(--line)}.student-row:hover{background:var(--hover)}.student-row>div{flex:1;min-width:0}.student-row h3{font-size:var(--fs-base)}.student-row p{font-size:var(--fs-sm);color:var(--muted);text-overflow:ellipsis;overflow:hidden}.student-course-count{font-size:var(--fs-sm);color:var(--muted)}.student-row>svg{color:var(--subtle)}.student-detail-bar{font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:14px;margin:-12px 0 22px;display:flex}.dossier-tabs{margin-bottom:18px}.dossier-progress>section+section{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.dossier-progress .section-heading h2{font-size:var(--fs-lg)}.dossier-progress .small-text{margin:8px 0 14px}.dossier-modules{flex-direction:column;gap:8px;display:flex}.dossier-modules>div{font-size:var(--fs-sm);align-items:center;gap:10px;display:flex}.checked-marker,.unchecked-marker{border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:11px;display:inline-grid}.checked-marker{background:var(--success-bg);color:var(--success)}.unchecked-marker{border:1px solid var(--line-strong);color:var(--muted)}.reviews-list{flex-direction:column;gap:16px;display:flex}.review-instructions{font-size:var(--fs-sm);color:var(--muted);margin-bottom:14px}.review-instructions summary{cursor:pointer;color:var(--blue)}.review-instructions p{margin-top:8px}.access-list .section-heading{margin-bottom:4px}.enrollment-toggle{border-top:1px solid var(--line);cursor:pointer;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:12px 0}.enrollment-toggle>span{flex-direction:column;display:flex}.enrollment-toggle strong{font-weight:500}.enrollment-toggle small{color:var(--muted);font-weight:400}.content-programs{flex-direction:column;gap:10px;display:flex}.content-program{padding:0;overflow:hidden}.content-program>summary{cursor:pointer;align-items:center;gap:14px;padding:16px 20px;list-style:none;display:flex}.content-program>summary::-webkit-details-marker{display:none}.content-program>summary:hover{background:var(--hover)}.content-program>summary>div{flex:1;min-width:0}.content-program h2{font-size:var(--fs-base)}.content-count{font-size:var(--fs-sm);color:var(--muted)}.disclosure-arrow{color:var(--subtle);transition:transform var(--t)}details[open]>summary .disclosure-arrow{transform:rotate(90deg)}.content-lessons{border-top:1px solid var(--line)}.content-lessons a{align-items:center;gap:12px;padding:11px 20px;display:flex}.content-lessons a+a{border-top:1px solid var(--line)}.content-lessons a:hover{background:var(--hover)}.content-lessons strong{color:var(--ink);flex:1;font-weight:500}.content-lessons a>svg{color:var(--subtle)}.lesson-number{width:26px;font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;place-items:center;display:inline-grid}.editor-form .panel+.panel{margin-top:20px}.editor-blocks{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.editor-block{border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg);padding:16px 18px 2px}.editor-block-toolbar{font-size:var(--fs-sm);justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.editor-block-toolbar>div{gap:2px;display:flex}.editor-publication h2{font-size:var(--fs-md);margin-bottom:16px}.invitation-result{text-align:center;flex-direction:column;align-items:center;display:flex}.invitation-result h3{margin-bottom:4px}.invitation-result label{text-align:left;width:100%;margin-top:18px}.course-checkboxes{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.course-checkboxes label{border-radius:var(--r-md);border:1px solid var(--line);cursor:pointer;flex-direction:row;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;font-weight:500}.course-checkboxes label:has(input:checked){border-color:var(--blue);background:var(--blue-soft)}.course-checkboxes input{margin-top:2px}.course-checkboxes span{flex-direction:column;display:flex}.course-checkboxes small{color:var(--muted);font-weight:400}.dialog{border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);width:min(500px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--text);box-shadow:var(--shadow-lg);padding:26px 28px;overflow-y:auto}.dialog[open]{animation:dialog-in .35s var(--ease) both}.dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b183873}.dialog-wide{width:min(680px,100vw - 32px)}.dialog-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.dialog-heading h2{font-family:var(--serif);font-size:28px;font-weight:400}.dialog>p{margin-bottom:16px}.search-box{border-radius:var(--r-md);border:1px solid var(--blue);height:44px;color:var(--muted);align-items:center;gap:10px;padding:0 12px;display:flex;box-shadow:0 0 0 3px #1f5fd61f}.search-box input{flex:1;min-height:0!important;box-shadow:none!important;font-size:var(--fs-md)!important;border:0!important;padding:0!important}.search-results{flex-direction:column;max-height:60vh;margin-top:10px;display:flex;overflow-y:auto}.search-results>button{border-radius:var(--r-md);text-align:left;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.search-results>button:hover,.search-results>button:focus-visible{background:var(--hover)}.search-results span{flex-direction:column;display:flex}.search-results strong{color:var(--ink);font-weight:500}.search-results small{font-size:var(--fs-xs);color:var(--muted)}.search-results>button>svg{color:var(--subtle)}.mobile-navigation{flex-direction:column;display:flex}.mobile-navigation .brand{padding-bottom:14px}.mobile-navigation .sidebar-bottom{margin-top:16px}.toast{z-index:60;border-radius:var(--r-md);background:var(--ink);color:#fff;max-width:min(420px,100vw - 32px);font-size:var(--fs-sm);box-shadow:var(--shadow-lg);animation:toast-in .4s var(--ease) both;align-items:center;gap:12px;padding:10px 10px 10px 16px;display:flex;position:fixed;bottom:24px;right:24px}.toast.error{background:var(--danger)}.toast .icon-button{color:#ffffffb3;width:28px;height:28px}.toast .icon-button:hover{color:#fff;background:#ffffff1f}.access-page{background:radial-gradient(60% 50% at 100% 0%, #1e5ef00f, transparent 60%), var(--bg);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100svh;display:grid}.access-cover{isolation:isolate;background:var(--navy);color:#fff;box-shadow:var(--shadow-lg);border-radius:28px;flex-direction:column;justify-content:space-between;margin:14px 0 14px 14px;display:flex;position:relative;overflow:hidden}.cover-photo{z-index:-2;object-fit:cover;object-position:50% 35%;width:100%;height:100%;animation:settle 2.6s var(--ease) both;position:absolute;inset:0}.access-cover:after{content:"";z-index:-1;background:radial-gradient(90% 60% at 0 100%,#1e5ef073,#0000 60%),linear-gradient(#0b18388c 0%,#0b18380d 35%,#0b1838eb 100%);position:absolute;inset:0}.access-brand{font-family:var(--serif);align-items:center;gap:12px;padding:34px 40px;font-size:26px;display:flex}.access-brand img{object-fit:contain;background:#fff;border-radius:50%;width:42px;height:42px;padding:4px}.access-caption{animation:rise 1s var(--ease) both .2s;padding:0 40px 40px}.access-caption h1.display{color:#fff;margin-bottom:22px;font-size:64px;line-height:1}.access-caption h1 em{color:#b9d1ff}.access-caption a{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:var(--fs-sm);transition:background var(--t);background:#ffffff14;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-weight:500;display:inline-flex}.access-caption a:hover{background:#ffffff29}.access-content{flex-direction:column;justify-content:center;align-items:center;padding:48px 32px;display:flex;position:relative}.mobile-brand{display:none}.access-form{width:100%;max-width:380px;animation:rise .8s var(--ease) both}.access-form h2.display{font-size:48px;line-height:1.05}.access-form>p.muted{font-size:var(--fs-md);margin:10px 0 30px}.access-form input:not([type=checkbox]){border-radius:12px;min-height:46px}.access-form form .button{min-height:48px;font-size:var(--fs-md);border-radius:13px;margin-top:8px}.access-help{font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:5px;margin-top:22px;display:inline-flex}.access-help:hover{color:var(--ink)}.access-footer{font-size:var(--fs-xs);color:var(--muted);position:absolute;bottom:24px}.standalone-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100svh;padding:24px;display:flex}.greeting{margin:14px 0 28px}.greeting.with-action{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.greeting h1{font-size:52px}.spotlight{isolation:isolate;border-radius:var(--r-xl);color:#fff;background:radial-gradient(80% 120% at 0% 0%, #1e5ef08c, transparent 55%), radial-gradient(60% 80% at 30% 120%, #c9a45c38, transparent 60%), linear-gradient(135deg, #102454, var(--navy) 60%);min-height:340px;box-shadow:var(--shadow-lg);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);display:grid;position:relative;overflow:hidden}.spotlight:before{content:"";z-index:-1;background-image:radial-gradient(#ffffff17 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 55%);mask-image:linear-gradient(90deg,#000,#0000 55%)}.spotlight-body{z-index:2;flex-direction:column;align-items:flex-start;padding:40px 44px 36px;display:flex;position:relative}.pill{font-size:var(--fs-xs);letter-spacing:.04em;color:#ffffffe6;background:#ffffff1a;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-weight:600;display:inline-flex}.pill:before{content:"";background:var(--gold);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #c9a45c40}.spotlight h2.display{color:#fff;max-width:520px;margin-top:20px;font-size:44px;line-height:1.04}.spotlight-program{font-size:var(--fs-md);color:#ffffffb8;margin-top:10px}.spotlight-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.spotlight-progress{width:100%;max-width:460px;font-size:var(--fs-sm);color:#ffffffc7;font-variant-numeric:tabular-nums;align-items:center;gap:14px;margin-top:auto;padding-top:30px;font-weight:500;display:flex}.spotlight-progress span{white-space:nowrap}.spotlight-progress .bar{background:#ffffff24}.spotlight-progress .bar>span{background:linear-gradient(90deg, #e6c98d, var(--gold));box-shadow:0 0 14px #c9a45c99}.spotlight-cover{background:0 0;position:relative}.spotlight-cover .cover-image{animation:settle 2.2s var(--ease) both;position:absolute;inset:0}.spotlight-cover{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 42%);mask-image:linear-gradient(90deg,#0000 0%,#000 42%)}.spotlight-cover:after{content:"";opacity:.35;background:linear-gradient(90deg, var(--navy) 0%, #0b18388c 30%, transparent 70%);position:absolute;inset:0}.spotlight-cover.is-poster .cover-backdrop{opacity:.35}.kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.kpis.four{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 26px}.kpi{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);transition:transform var(--t), box-shadow var(--t);align-items:center;gap:16px;padding:20px 22px;display:flex}a.kpi:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.kpi>div{flex-direction:column;min-width:0;display:flex}.kpi>div>strong{font-family:var(--serif);color:var(--ink);font-variant-numeric:tabular-nums lining-nums;font-size:38px;font-weight:400;line-height:1}.kpi>div>strong small{font-family:var(--sans);font-size:var(--fs-md);color:var(--muted)}.kpi>div>span{font-size:var(--fs-sm);color:var(--muted);margin-top:6px}.kpi-icon{background:linear-gradient(150deg, var(--blue-soft), #dfe8fd);width:52px;height:52px;color:var(--blue);border-radius:16px;flex-shrink:0;place-items:center;display:inline-grid}.kpi-icon.gold{background:linear-gradient(150deg, var(--gold-soft), #f0e2c2);color:var(--gold-text)}.kpi.is-alert{background:linear-gradient(160deg, var(--gold-soft), #fff 70%);border-color:#ecdcb9}.home-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:22px;margin-top:22px;display:grid}.home-section{margin-top:48px}.card-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:16px;padding:24px 26px 18px;display:flex}.card-head .eyebrow{margin-bottom:6px}.card-head h2{font-family:var(--serif);font-size:26px;font-weight:400;line-height:1.15}.steps{padding:10px;list-style:none}.step{transition:background var(--t);border-radius:14px;align-items:center;gap:16px;padding:14px 16px;display:flex;position:relative}.steps li:not(:last-child) .step:after{content:"";background:var(--line);width:2px;position:absolute;top:52px;bottom:-12px;left:33px}.steps li:not(:last-child) .step.is-done:after{background:linear-gradient(var(--success), #9fdcbd)}.step:hover{background:var(--hover)}.step-dot{z-index:1;border:1.5px solid var(--line-strong);width:36px;height:36px;font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums;transition:transform var(--t);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;display:inline-grid;position:relative}.step.is-done .step-dot{background:var(--success);border-color:var(--success);color:#fff}.step.is-current .step-dot{background:var(--navy);border-color:var(--navy);color:#fff;animation:halo 2.6s var(--ease) infinite;box-shadow:0 0 0 5px #1e5ef026}.step:hover .step-dot{transform:scale(1.08)}.step-text{flex-direction:column;flex:1;min-width:0;display:flex}.step-text strong{color:var(--ink);font-weight:600}.step-text small{font-size:var(--fs-xs);color:var(--muted)}.step.is-current .step-text small{color:var(--blue);font-weight:600}.step-go{color:var(--subtle);opacity:0;transition:opacity var(--t), transform var(--t), color var(--t);transform:translate(-6px)}.step:hover .step-go,.step.is-current .step-go{opacity:1;color:var(--blue);transform:none}.home-aside{flex-direction:column;gap:18px;display:flex}.feedback-card{background:linear-gradient(160deg, var(--blue-soft), #fff 80%);transition:transform var(--t), box-shadow var(--t);border-color:#cfe0fc;align-items:center;gap:14px;padding:18px 20px;display:flex}.feedback-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.feedback-card>span:nth-child(2){flex-direction:column;flex:1;display:flex}.feedback-card strong{color:var(--ink)}.feedback-card small{font-size:var(--fs-sm);color:var(--muted)}.feedback-card>svg{color:var(--blue)}.feedback-mark{background:var(--blue);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;display:inline-grid}.feedback-mark.approved{background:var(--success)}.event-card{flex-direction:column;gap:14px;padding:22px;display:flex}.event-card .eyebrow{margin:0}.event-line{align-items:center;gap:14px;display:flex}.event-line>span:last-child{flex-direction:column;min-width:0;display:flex}.event-line strong{color:var(--ink)}.event-line small{font-size:var(--fs-sm);color:var(--muted)}.event-line small:first-letter{text-transform:uppercase}.date-tile{background:linear-gradient(160deg, var(--navy-2), var(--navy));color:#fff;border-radius:14px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:62px;display:inline-flex}.date-tile strong{font-family:var(--serif);color:#fff;font-size:28px;font-weight:400;line-height:1}.date-tile span{letter-spacing:.06em;text-transform:uppercase;color:var(--gold);font-size:11px;font-weight:600}.quick-card{flex-direction:column;padding:8px;display:flex}.quick-card a{color:var(--ink);transition:background var(--t);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-weight:500;display:flex}.quick-card a svg:first-child{color:var(--blue)}.quick-card a svg:last-child{color:var(--subtle);transition:transform var(--t), color var(--t);margin-left:auto}.quick-card a:hover{background:var(--hover)}.quick-card a:hover svg:last-child{color:var(--blue);transform:translate(3px)}.program-header{grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:52px;margin:6px 0 52px;display:grid}.program-header h1.display{font-size:56px;line-height:1.02}.chips{flex-wrap:wrap;gap:8px;margin-top:22px;list-style:none;display:flex}.chips li{border:1px solid var(--line);font-size:var(--fs-sm);color:var(--text);box-shadow:var(--shadow-sm);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-weight:500;display:inline-flex}.chips li svg{color:var(--blue)}.header-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.program-visual{position:relative}.program-visual:before{content:"";border-radius:var(--r-xl);background-image:radial-gradient(#1e5ef052 1.2px,#0000 1.4px);background-size:14px 14px;position:absolute;inset:30px -16px -16px 30px;-webkit-mask-image:linear-gradient(135deg,#0000 30%,#000 75%);mask-image:linear-gradient(135deg,#0000 30%,#000 75%)}.program-visual:after{content:"";z-index:-1;filter:blur(40px);background:radial-gradient(closest-side,#1e5ef059,#0000);border-radius:50%;position:absolute;inset:12% 8% -4%}.program-header-cover{aspect-ratio:4/5;border-radius:var(--r-xl);box-shadow:var(--shadow-lg);position:relative}.program-header-cover .cover-image{animation:settle 2.2s var(--ease) both;position:absolute;inset:0}.float-progress{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);animation:float-in .9s var(--ease) both .35s;background:#ffffffeb;border:1px solid #fff9;border-radius:18px;align-items:center;gap:14px;padding:14px 20px 14px 14px;display:flex;position:absolute;bottom:28px;left:-28px}.float-progress>span:not(.progress-ring){font-size:var(--fs-sm);color:var(--muted);flex-direction:column;display:flex}.float-progress>span:not(.progress-ring)>strong{font-family:var(--serif);color:var(--ink);font-size:26px;font-weight:400;line-height:1}.lesson-header{max-width:820px;margin:4px 0 32px}.lesson-header h1.display{font-size:50px}.lesson-meter{max-width:420px;font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:14px;margin-top:20px;display:flex}.lesson-meter span{white-space:nowrap}.page>*{animation:rise .7s var(--ease) both}.page>:nth-child(2){animation-delay:60ms}.page>:nth-child(3){animation-delay:.12s}.page>:nth-child(4){animation-delay:.18s}.page>:nth-child(5){animation-delay:.24s}.page>:nth-child(n+6){animation-delay:.3s}.kpis>*{animation:rise .7s var(--ease) both}.kpis>:nth-child(2){animation-delay:80ms}.kpis>:nth-child(3){animation-delay:.16s}.kpis>:nth-child(4){animation-delay:.24s}.steps li{animation:slide-in .6s var(--ease) both}.steps li:nth-child(2){animation-delay:60ms}.steps li:nth-child(3){animation-delay:.12s}.steps li:nth-child(4){animation-delay:.18s}.steps li:nth-child(5){animation-delay:.24s}.steps li:nth-child(n+6){animation-delay:.3s}@keyframes rise{0%{opacity:0;filter:blur(4px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}@keyframes slide-in{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes grow{0%{transform:scaleX(0)}}@keyframes ring{0%{stroke-dashoffset:97.4px}}@keyframes settle{0%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes float-in{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:none}}@keyframes halo{0%,to{box-shadow:0 0 0 5px #1e5ef026}50%{box-shadow:0 0 0 9px #1e5ef00a}}@keyframes ping{0%{box-shadow:0 0 #1e5ef080}to{box-shadow:0 0 0 10px #1e5ef000}}@keyframes pop{0%{opacity:0;transform:scale(.6)}60%{transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)}}:root{--glass-fill:linear-gradient(155deg, #ffffffdb 0%, #ffffff9e 48%, #ffffffb8 100%);--glass-edge:linear-gradient(160deg, #fff 0%, #cedaf28c 42%, #bcccec73 70%, #ffffffe6 100%);--glass-lit:radial-gradient(420px circle at var(--mx,-999px) var(--my,-999px), #1e5ef013, transparent 45%);--glass-lit-edge:radial-gradient(260px circle at var(--mx,-999px) var(--my,-999px), #1e5ef08c, transparent 65%);--glass-depth:inset 0 1px 0 #fffffff2, inset 0 -1px 0 #0b183808, inset 0 0 22px #ffffff59, 0 1px 2px #0b18380a, 0 14px 34px -16px #1834803d;--glass-depth-hover:inset 0 1px 0 #fff, inset 0 -1px 0 #0b183808, inset 0 0 22px #fff6, 0 2px 4px #0b18380d, 0 26px 50px -20px #18348057}body{background:#eef2f9}::selection{color:var(--ink);background:#1e5ef02e}*{scrollbar-width:thin;scrollbar-color:#0b18382e transparent}.mesh{z-index:-1;pointer-events:none;background:radial-gradient(70% 55% at 85% -5%,#c4d6ffe6,#0000 60%),radial-gradient(60% 50% at -5% 105%,#d6e2ffd9,#0000 60%),linear-gradient(#f3f6fc,#eaf0fa);position:fixed;inset:0;overflow:hidden}.orb{filter:blur(80px);will-change:transform;border-radius:50%;position:absolute}.orb-1{background:radial-gradient(circle at 40% 40%,#1e5ef057,#1e5ef000 68%);width:62vw;max-width:900px;height:52vw;max-height:720px;animation:26s ease-in-out infinite drift-a;top:-18%;left:18%}.orb-2{background:radial-gradient(circle,#78a0ff52,#78a0ff00 68%);width:46vw;max-width:640px;height:46vw;max-height:640px;animation:21s ease-in-out infinite drift-b;top:28%;left:-12%}.orb-3{background:radial-gradient(circle,#e8c48038,#e8c48000 66%);width:48vw;max-width:700px;height:44vw;max-height:620px;animation:24s ease-in-out infinite drift-c;bottom:-14%;right:-10%}.orb-4{background:radial-gradient(circle,#8fb8ff66,#8fb8ff00 66%);width:30vw;max-width:440px;height:30vw;max-height:440px;animation:18s ease-in-out infinite reverse drift-b;top:6%;right:4%}.orb-5{background:radial-gradient(circle,#13275a24,#13275a00 66%);width:34vw;max-width:520px;height:28vw;max-height:420px;animation:30s ease-in-out infinite reverse drift-a;bottom:8%;left:30%}.mesh-grid{background-image:linear-gradient(#0b183809 1px,#0000 1px),linear-gradient(90deg,#0b183809 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 70% at 50% 0,#000 0%,#0000 70%);mask-image:radial-gradient(90% 70% at 50% 0,#000 0%,#0000 70%)}.mesh-grain{opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:220px 220px;position:absolute;inset:0}@keyframes drift-a{0%,to{transform:translate(0,0)scale(1)}33%{transform:translate(6vw,4vh)scale(1.08)}66%{transform:translate(-4vw,2vh)scale(.95)}}@keyframes drift-b{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(5vw,-6vh)scale(1.1)}}@keyframes drift-c{0%,to{transform:translate(0,0)scale(1)}40%{transform:translate(-6vw,-4vh)scale(1.06)}75%{transform:translate(2vw,3vh)scale(.96)}}.card,.panel,.kpi,.program-card,.module-list,.aside-card,.trainer-card,.reading-panel,.lesson-outline,.evaluation-list,.lesson-pagination a,.access-form{background:var(--glass-lit) padding-box, var(--glass-fill) padding-box, var(--glass-edge) border-box;box-shadow:var(--glass-depth);-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);border:1px solid #0000}[data-lit]:is(.card,.panel,.kpi,.program-card,.module-list,.aside-card,.trainer-card,.reading-panel,.lesson-outline,.evaluation-list,.lesson-pagination a,.access-form){background:var(--glass-lit) padding-box, var(--glass-fill) padding-box, var(--glass-lit-edge) border-box, var(--glass-edge) border-box}a.kpi:hover,.program-card:hover,.feedback-card:hover,.lesson-pagination a:hover{box-shadow:var(--glass-depth-hover)}.kpi.is-alert{background:var(--glass-lit) padding-box, linear-gradient(160deg, #fcf5e6f2, #ffffffb3) padding-box, linear-gradient(160deg, #fff, #dcbe8299, #fff) border-box}.feedback-card{background:var(--glass-lit) padding-box, linear-gradient(160deg, #ebf1fef2, #ffffffa6) padding-box, linear-gradient(160deg, #fff, #8caff599, #fff) border-box}.outcome-card{background:radial-gradient(120% 90% at 100% 0%, #8fb8ff59, transparent 55%), linear-gradient(160deg, var(--navy-2), var(--navy));border:1px solid #ffffff1f;box-shadow:inset 0 1px #ffffff24,0 22px 44px -22px #0b183899}.closing-card{box-shadow:var(--glass-depth);background:linear-gradient(160deg,#faf3e4f2,#ffffffb3) padding-box padding-box,linear-gradient(160deg,#fff,#dcbe828c,#fff) border-box;border:1px solid #0000}.sidebar{-webkit-backdrop-filter:blur(28px)saturate(170%);backdrop-filter:blur(28px)saturate(170%);background:radial-gradient(120% 40% at 0 0,#1e5ef014,#0000 60%),linear-gradient(#ffffff9e,#fff6);border-right:1px solid #ffffffb3;box-shadow:inset -1px 0 #0b18380d,18px 0 40px -30px #18348040}.sidebar nav a.active,.mobile-navigation nav a.active{background:linear-gradient(160deg,#fff,#fffc) padding-box padding-box,linear-gradient(160deg,#fff,#a0bef5b3,#fff) border-box;border:1px solid #0000;box-shadow:inset 0 1px #fff,0 1px 2px #0b18380f,0 10px 24px -12px #1e5ef066}.sidebar nav a.active svg{filter:drop-shadow(0 2px 6px #1e5ef059)}.sidebar nav a.active:before{background:linear-gradient(180deg, #5b8cff, var(--blue));box-shadow:0 0 12px #1e5ef099}.sidebar-profile{background:linear-gradient(160deg, #ffffffd9, #ffffff8c) padding-box, var(--glass-edge) border-box;box-shadow:var(--glass-depth);border:1px solid #0000}.avatar{box-shadow:0 0 0 2px #fff,0 0 0 3.5px #1e5ef040,0 6px 14px -6px #0b183880}.topbar{-webkit-backdrop-filter:blur(22px)saturate(170%);backdrop-filter:blur(22px)saturate(170%);background:linear-gradient(#f3f6fcb8,#f3f6fc73)}.search-trigger,.notification-button,.chips li,.inline-search,.button.secondary,.button.light,.button.glass{background:linear-gradient(160deg, #ffffffeb, #ffffffa8) padding-box, var(--glass-edge) border-box;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #0000;box-shadow:inset 0 1px #fff,0 1px 2px #0b18380d,0 6px 16px -10px #1834804d}.search-trigger kbd,.search-trigger:hover,.notification-button:hover,.button.secondary:hover:not(:disabled){box-shadow:inset 0 1px #fff,0 2px 4px #0b18380f,0 12px 24px -12px #18348066}.tabs{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#dee6f68c;border:1px solid #ffffffb3;box-shadow:inset 0 1px 2px #0b18380f}.button.primary,.button.on-dark{isolation:isolate;overflow:hidden}.button.primary:after,.button.on-dark:after{content:"";z-index:-1;transition:transform .9s var(--ease);background:linear-gradient(105deg,#0000 30%,#ffffff47 46%,#ffffff0d 56%,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.button.on-dark:after{background:linear-gradient(105deg,#0000 30%,#1e5ef024 46%,#0000 64%)}.button.primary:hover:not(:disabled):after,.button.on-dark:hover:after{transform:translate(120%)}.button.primary{background:linear-gradient(180deg, #1d3a85 0%, #13275a 45%, var(--navy) 100%);box-shadow:inset 0 1px #ffffff38,inset 0 -2px 6px #00000040,0 1px 2px #0b183840,0 10px 24px -10px #1e46b4a6}.progress-track>span,.bar>span{position:relative;overflow:hidden}.progress-track>span:after,.bar>span:after{content:"";animation:run 2.8s var(--ease) 1.4s infinite;background:linear-gradient(90deg,#0000,#ffffff8c,#0000);position:absolute;inset:0;transform:translate(-100%)}.progress-track,.bar{box-shadow:inset 0 1px 2px #0b183814}.ring-value{filter:drop-shadow(0 0 3px #1e5ef073)}@keyframes run{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}.spotlight{border:1px solid #ffffff1a;box-shadow:inset 0 1px #ffffff29,inset 0 0 0 1px #ffffff0a,0 2px 6px #0b183833,0 40px 80px -30px #10286ea6}.spotlight-aura{z-index:-1;filter:blur(30px);pointer-events:none;background:radial-gradient(closest-side,#4078ff8c,#0000);border-radius:50%;width:70%;height:140%;animation:16s ease-in-out infinite drift-b;position:absolute;top:-40%;left:-15%}.spotlight-sheen{z-index:3;pointer-events:none;animation:sheen 7s var(--ease) 1.2s infinite;background:linear-gradient(115deg,#0000 35%,#ffffff17 47%,#ffffff05 53%,#0000 62%);position:absolute;inset:0;transform:translate(-100%)}.spotlight[data-lit]:after{content:"";z-index:3;pointer-events:none;border-radius:inherit;background:radial-gradient(500px circle at var(--mx) var(--my), #ffffff12, transparent 45%);position:absolute;inset:0}.spotlight .pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px #ffffff2e}@keyframes sheen{0%{transform:translate(-100%)}35%,to{transform:translate(100%)}}.eyebrow{align-items:center;gap:10px;display:inline-flex}.eyebrow:before{content:"";background:linear-gradient(90deg, var(--gold), #c9a45c33);width:18px;height:1px}.kpi{position:relative;overflow:hidden}.kpi:after{content:"";opacity:0;height:1px;transition:opacity .4s var(--ease), left .6s var(--ease), right .6s var(--ease);pointer-events:none;background:linear-gradient(90deg,#0000,#1e5ef073,#0000);position:absolute;top:0;left:18%;right:18%}.kpi:hover:after{opacity:1;left:6%;right:6%}.kpi-icon,.small-icon,.empty-icon{background:linear-gradient(160deg,#f4f7ff,#dde7fd) padding-box padding-box,linear-gradient(160deg,#fff,#8caff58c) border-box;border:1px solid #0000;position:relative;box-shadow:inset 0 1px #fff,0 8px 18px -10px #1e5ef08c}.kpi-icon.gold{background:linear-gradient(160deg,#fdf8ec,#f1e3c4) padding-box padding-box,linear-gradient(160deg,#fff,#d2af6999) border-box;box-shadow:inset 0 1px #fff,0 8px 18px -10px #a078288c}.module-index{background:linear-gradient(160deg,#fff,#e9eef9) padding-box padding-box,linear-gradient(160deg,#fff,#b4c6ebb3) border-box;border:1px solid #0000;box-shadow:inset 0 1px #fff,0 4px 10px -6px #18348059}a.module-item:hover .module-index:not(.done){background:linear-gradient(160deg, var(--navy-2), var(--navy)) padding-box;border-color:#0000}.step-dot{box-shadow:inset 0 1px #fff,0 3px 8px -4px #1834804d}.step.is-current .step-dot{background:linear-gradient(160deg, #1d3a85, var(--navy))}.step.is-done .step-dot{background:linear-gradient(160deg, #19a066, var(--success))}.date-tile{position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff2e,0 10px 20px -10px #0b183899}.date-tile:after{content:"";background:linear-gradient(#ffffff1f,#0000);position:absolute;inset:0 0 50%}.cover-chip{-webkit-backdrop-filter:blur(12px)saturate(170%);backdrop-filter:blur(12px)saturate(170%);background:#ffffffb3;border:1px solid #ffffffb3}.program-header-cover{outline-offset:-1px;outline:1px solid #fff9}.float-progress{background:linear-gradient(160deg, #ffffffe0, #ffffff9e) padding-box, var(--glass-edge) border-box;-webkit-backdrop-filter:blur(18px)saturate(170%);backdrop-filter:blur(18px)saturate(170%);border:1px solid #0000}.dialog{-webkit-backdrop-filter:blur(30px)saturate(170%);backdrop-filter:blur(30px)saturate(170%);background:linear-gradient(160deg,#fffffff0,#ffffffd6);border:1px solid #fffc}.toast{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b1838db;border:1px solid #ffffff1f}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.access-page{background:0 0}.access-form{border-radius:var(--r-xl);max-width:440px;padding:40px 38px 34px}.panel-head{align-items:center;gap:14px;margin-bottom:16px;display:flex}.panel-head h2{font-family:var(--serif);flex:1;font-size:25px;font-weight:400;line-height:1.15}.small-icon.gold{color:var(--gold-text);background:linear-gradient(160deg,#fdf8ec,#f1e3c4) padding-box padding-box,linear-gradient(160deg,#fff,#d2af6999) border-box;box-shadow:inset 0 1px #fff,0 8px 18px -10px #a078288c}.count-label{border:1px solid var(--line);font-variant-numeric:tabular-nums;background:#ffffffb3;border-radius:999px;min-width:26px;height:26px;padding:0 9px}.count-label.is-hot{background:linear-gradient(160deg, #3b74ff, var(--blue));color:#fff;border-color:#0000;box-shadow:0 6px 14px -6px #1e5ef0b3}.quiet-empty{border:1px dashed var(--line-strong);color:var(--muted);background:#ffffff73;border-radius:14px;align-items:center;gap:10px;padding:14px 16px;display:flex}.quiet-empty svg{background:var(--success-bg);width:26px;height:26px;color:var(--success);border-radius:50%;flex-shrink:0;padding:5px}.trainer-card img{width:52px;height:52px;box-shadow:0 0 0 2px #fff,0 0 0 3.5px #c9a45c8c,0 8px 18px -8px #0b183880}.trainer-card{grid-template-columns:52px 1fr;gap:4px 14px}.trainer-card h3{font-family:var(--serif);font-size:22px;font-weight:400}.trainer-card .kicker{color:var(--gold-text);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.home-aside .trainer-bio{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (max-width:1240px){:root{--gutter:32px}.program-grid,.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.program-header{grid-template-columns:minmax(0,1fr) 340px;gap:40px}.kpis.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1080px){.home-grid,.program-layout,.lesson-layout,.exercise-layout,.help-layout,.trainer-layout,.teacher-columns,.profile-layout{grid-template-columns:minmax(0,1fr)}.program-aside,.lesson-sidebar,.exercise-help,.credentials-card{position:static}.lesson-sidebar{order:-1}.reading-panel{max-width:none}.spotlight{grid-template-columns:1fr}.spotlight-cover{z-index:0;opacity:.35;position:absolute;inset:0}.spotlight-cover:after{background:linear-gradient(90deg, var(--navy) 10%, #0b183866)}}@media (max-width:900px){:root{--gutter:20px}.sidebar{display:none}.workspace{margin-left:0}.topbar{border-bottom-color:var(--line)}.mobile-menu,.topbar-brand{display:inline-flex}.topbar-title{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.search-trigger{justify-content:center;width:40px;padding:0}.search-trigger span{display:none}.skip-link{left:16px}.access-page{grid-template-columns:1fr}.access-cover{display:none}.mobile-brand{font-family:var(--serif);color:var(--ink);align-items:center;gap:10px;font-size:22px;display:flex;position:absolute;top:24px;left:24px}.mobile-brand img{object-fit:contain;width:34px;height:34px}.program-header{grid-template-columns:1fr;gap:28px}.program-visual{order:-1}.program-visual:before{display:none}.program-header-cover{aspect-ratio:16/9}.float-progress{bottom:16px;left:16px}.kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.kpis.four{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{flex-direction:column;align-items:flex-start;gap:6px;padding:16px}.kpi .kpi-icon,.kpi .progress-ring{display:none}.kpi>div>strong{font-size:30px}.kpi>div>span{font-size:var(--fs-xs);line-height:1.35}.greeting.with-action{flex-direction:column;align-items:flex-start}}@media (max-width:650px){.main-content{padding-top:10px;padding-bottom:56px}h1.display,.greeting h1,.lesson-header h1.display{font-size:36px}.program-header h1.display{font-size:38px}.spotlight h2.display{font-size:32px}.page-heading{flex-direction:column;align-items:stretch;gap:14px}.page-heading-action>*{flex:1}.panel{padding:20px}.spotlight-body{padding:28px 22px 24px}.spotlight-actions,.header-actions{width:100%}.spotlight-actions .button,.header-actions .button{flex:100%}.card-head{flex-direction:column;align-items:flex-start;padding:20px}.program-grid,.notes-grid,.form-grid,.course-checkboxes,.lesson-pagination{grid-template-columns:1fr}.reading-panel,.quiz-panel{padding:22px}.module-item{gap:14px;padding:18px}.module-go{display:none}.complete-bar{flex-direction:column;align-items:stretch}.lesson-pagination a:last-child{justify-content:space-between}.filter-toolbar{flex-direction:column;align-items:stretch}.tabs{max-width:100%;display:flex;overflow-x:auto}.tabs>button{flex:1 0 auto}.inline-search{width:100%}.appointment-card{flex-wrap:wrap}.appointment-actions{border-top:1px solid var(--line);flex-flow:wrap;align-items:center;width:100%;padding-top:12px}.evaluation-row{flex-wrap:wrap}.evaluation-row>div{flex-basis:calc(100% - 60px)}.evaluation-row>svg,.student-course-count{display:none}.resource-row{flex-wrap:wrap}.resource-row .button{width:100%}.trainer-header{flex-direction:column;align-items:flex-start}.trainer-portrait{width:80px;height:80px}.access-content{align-items:stretch;padding:100px 20px 64px}.access-form h2.display{font-size:40px}.access-form{padding:30px 22px 26px}.orb{filter:blur(60px)}.toast{max-width:none;bottom:16px;left:16px;right:16px}.dialog{padding:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}@media print{.sidebar,.topbar,.toast,.complete-bar,.lesson-sidebar,.lesson-note{display:none!important}.workspace{margin:0}}
