.fm{position:relative;min-height:100svh}.fm,.fm__main{display:flex;flex-direction:column}.fm__main{width:100%;max-width:1180px;margin-inline:auto;padding:var(--sp-5) var(--pad-x) var(--sp-7);gap:var(--sp-5)}.fm-bar{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:var(--glass);-webkit-backdrop-filter:blur(var(--blur-glass)) saturate(1.4);backdrop-filter:blur(var(--blur-glass)) saturate(1.4);border-bottom:1px solid var(--line)}.fm-bar__inner{max-width:1180px;margin-inline:auto;padding:10px var(--pad-x);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.fm-bar__brand{display:inline-flex;align-items:center;gap:8px;min-width:0}.fm-bar__dot{width:9px;height:9px;border-radius:var(--r-pill);background:var(--accent-solid);box-shadow:0 0 0 4px var(--accent-weak)}.fm-bar__name{font-family:var(--font-display);font-size:20px;letter-spacing:.02em;color:var(--ink)}.fm-bar__area{display:none}.fm-bar__tools{--ctl-h:44px;display:flex;align-items:center;gap:var(--sp-2)}.fm-bar__link{display:none;font-size:var(--step--1);color:var(--muted)}.fm-bar__link:hover,.fm-bar__logout{color:var(--ink)}.fm-bar__logout{min-height:44px;padding-inline:var(--sp-3);border:1px solid var(--line-ui);border-radius:var(--r-pill);font-family:var(--font-cond);font-weight:600;font-size:var(--step--1);text-transform:uppercase;letter-spacing:.06em}.fm-bar__logout:hover{border-color:var(--danger);color:var(--danger)}@media (min-width:720px){.fm-bar__area{display:inline;margin-left:6px}.fm-bar__link{display:inline;margin-right:var(--sp-2)}}.fm-card{position:relative;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-lg);background:color-mix(in oklab,var(--surface) 82%,transparent);box-shadow:var(--shadow-1)}.fm-kicker{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--muted)}.fm-kicker__rule{width:var(--rule-w);height:1px;background:var(--accent)}.fm-title{margin-top:var(--sp-2);font-size:clamp(38px,1.4rem + 4vw,72px);line-height:var(--lh-title);color:var(--ink-display)}.fm-sub{margin-top:var(--sp-3);max-width:60ch;font-size:var(--step-1);line-height:1.5;color:var(--ink-2)}.fm-h2{font-family:var(--font-cond);font-weight:700;font-size:var(--step-2);line-height:1.2;color:var(--ink)}.fm-text{color:var(--ink-2);line-height:1.6}.fm-muted{color:var(--muted)}.fm-small{font-size:var(--step--1);line-height:1.5}.fm-link{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:3px;-webkit-text-decoration-color:color-mix(in oklab,var(--accent) 45%,transparent);text-decoration-color:color-mix(in oklab,var(--accent) 45%,transparent)}.fm-link--muted{color:var(--muted);font-weight:500}.fm-note{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border:1px solid var(--line-strong);background:color-mix(in oklab,var(--surface-2) 60%,transparent);color:var(--ink);font-size:var(--step-0);line-height:1.5}.fm-note--err{border-color:color-mix(in oklab,var(--danger) 60%,transparent);background:color-mix(in oklab,var(--danger) 12%,transparent)}.fm-note--warn{border-color:color-mix(in oklab,var(--accent-3) 55%,transparent);background:color-mix(in oklab,var(--accent-3) 10%,transparent)}.fm-note--ok{border-color:var(--accent);background:var(--accent-weak)}.fm-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:52px;padding:12px var(--sp-5);border:1px solid var(--accent);border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);font-family:var(--font-cond);font-weight:700;font-size:clamp(14px,.82rem + .25vw,16px);text-transform:uppercase;letter-spacing:var(--tracking-label);text-align:center;transition:transform var(--dur-1) var(--ease-power),box-shadow var(--dur-2) var(--ease-soft),opacity var(--dur-1)}.fm-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-glow)}.fm-btn:disabled{opacity:.5;cursor:not-allowed}.fm-btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-ui)}.fm-btn--ghost:hover:not(:disabled){border-color:var(--accent);background:var(--accent-weak)}.fm-btn--big{width:100%;min-height:58px;font-size:clamp(15px,.9rem + .3vw,18px)}.fm-btn--done{background:var(--accent-weak);color:var(--accent);border-color:var(--accent)}.fm-form{gap:var(--sp-4)}.fm-field,.fm-form{display:flex;flex-direction:column}.fm-field{gap:6px;min-width:0;border:0}.fm-field legend,.fm-field>label,.fm-field__label{font-family:var(--font-cond);font-weight:600;font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.fm-field input:not([type=checkbox]):not([type=radio]):not([type=file]){width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--line-ui);border-radius:var(--r-md);background:color-mix(in oklab,var(--bg) 70%,transparent);color:var(--ink);font-size:16px;transition:border-color var(--dur-1),box-shadow var(--dur-1)}.fm-field input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}.fm-field__hint{font-size:var(--step--1);color:var(--muted);line-height:1.45}.fm-field__pwd{position:relative}.fm-field__pwd input{padding-right:96px!important}.fm-field__toggle{position:absolute;right:6px;top:50%;translate:0 -50%;min-height:38px;padding-inline:12px;border-radius:var(--r-sm);font-size:var(--step--1);font-weight:600;color:var(--accent)}.fm-grid2{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--sp-4);gap:var(--sp-4)}@media (min-width:720px){.fm-grid2{grid-template-columns:repeat(2,minmax(0,1fr))}}.fm-check{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:var(--sp-3);gap:var(--sp-3);align-items:start;padding:var(--sp-3);border-radius:var(--r-md);background:color-mix(in oklab,var(--surface-2) 50%,transparent);line-height:1.45;cursor:pointer}.fm-check input{width:22px;height:22px;margin-top:1px;accent-color:var(--accent)}.fm-methods{padding:0}.fm-methods__row{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:6px}.fm-methods__pill{position:relative;display:inline-flex;align-items:center;min-height:46px;padding-inline:var(--sp-4);border:1px solid var(--line-ui);border-radius:var(--r-pill);font-weight:600;cursor:pointer;transition:border-color var(--dur-1),background-color var(--dur-1)}.fm-methods__pill input{position:absolute;opacity:0;pointer-events:none}.fm-methods__pill.is-on{border-color:var(--accent);background:var(--accent-weak);color:var(--ink)}.fm-methods__pill:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.fm-pay{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--sp-3);gap:var(--sp-3)}@media (min-width:720px){.fm-pay{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.fm-pay__card{padding:var(--sp-4);border-radius:var(--r-md);border:1px solid var(--line-strong);background:color-mix(in oklab,var(--bg-2) 80%,transparent)}.fm-pay__card--moncash{border-top:3px solid var(--accent-3)}.fm-pay__card--natcash{border-top:3px solid var(--accent-2)}.fm-pay__brand{font-family:var(--font-display);font-size:var(--step-2);line-height:1;margin-bottom:var(--sp-3)}.fm-pay__rows{display:flex;flex-direction:column;gap:var(--sp-2)}.fm-pay__rows dd{margin:2px 0 0;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.fm-pay__number{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);font-size:var(--step-1);letter-spacing:.02em}.fm-pay__amount{color:var(--accent)!important}.fm-pay__copy{flex:none;min-height:36px;padding-inline:12px;border:1px solid var(--line-ui);border-radius:var(--r-pill);font-size:var(--step--1);font-weight:600}.fm-pay__copy:hover{border-color:var(--accent);color:var(--accent)}.fm-proof__drop{position:relative;display:grid;place-items:center;grid-gap:var(--sp-2);gap:var(--sp-2);min-height:150px;padding:var(--sp-4);border:1.5px dashed var(--line-ui);border-radius:var(--r-md);background:color-mix(in oklab,var(--bg) 50%,transparent);text-align:center;cursor:pointer;transition:border-color var(--dur-1),background-color var(--dur-1)}.fm-proof__drop:has(input:focus-visible),.fm-proof__drop:hover{border-color:var(--accent);background:var(--accent-weak)}.fm-proof__drop.has-file{border-style:solid}.fm-proof__img{max-height:280px;width:auto;border-radius:var(--r-sm);box-shadow:var(--shadow-1)}.fm-proof__icon{color:var(--accent)}.fm-proof__cta{font-weight:600;color:var(--ink)}.fm-auth{width:100%;max-width:520px;margin:var(--sp-5) auto 0}.fm-auth .fm-form{margin-top:var(--sp-5)}.fm-auth .fm-btn{width:100%}.fm-auth__foot{gap:var(--sp-2);margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--line)}.fm-auth__foot,.fm-signup{display:flex;flex-direction:column}.fm-signup{width:100%;max-width:860px;margin-inline:auto;gap:var(--sp-5)}.fm-signup__form{gap:var(--sp-6)}.fm-signup__login{text-align:center;color:var(--ink-2)}.fm-step{display:flex;flex-direction:column;gap:var(--sp-4)}.fm-step+.fm-step{padding-top:var(--sp-5);border-top:1px solid var(--line)}.fm-step__title{display:flex;align-items:baseline;gap:var(--sp-3);font-family:var(--font-cond);font-weight:700;font-size:var(--step-2)}.fm-step__num{font-size:var(--step-3);line-height:1;color:transparent;-webkit-text-stroke:1.2px var(--accent)}.fm-step__body{gap:var(--sp-4)}.fm-status,.fm-step__body{display:flex;flex-direction:column}.fm-status{width:100%;max-width:860px;margin-inline:auto;gap:var(--sp-5)}.fm-status__card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3);overflow:hidden}.fm-status__card--pending{border-color:color-mix(in oklab,var(--accent) 40%,transparent)}.fm-status__card--suspended{border-color:color-mix(in oklab,var(--danger) 50%,transparent)}.fm-status__pulse{position:absolute;top:var(--sp-5);right:var(--sp-5);width:14px;height:14px;border-radius:var(--r-pill);background:var(--accent);animation:hero-pulse 2.4s var(--ease-soft) infinite}.fm-outline{gap:var(--sp-4)}.fm-outline,.fm-outline__list{display:flex;flex-direction:column}.fm-outline__list{border-top:1px solid var(--line)}.fm-outline__item{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:var(--sp-4);gap:var(--sp-4);align-items:center;padding-block:var(--sp-3);border-bottom:1px solid var(--line)}.fm-outline__num{font-size:var(--step-3);line-height:1;color:transparent;-webkit-text-stroke:1.1px var(--ink-2)}.fm-outline__title{font-weight:600;color:var(--ink)}.fm-dash{display:flex;flex-direction:column;gap:var(--sp-5)}.fm-dash__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--sp-4)}.fm-progress{display:flex;flex-direction:column;gap:var(--sp-3);border-color:color-mix(in oklab,var(--accent) 30%,transparent)}.fm-progress__top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3)}.fm-progress__pct{font-size:var(--step-4);line-height:1;color:var(--accent)}.fm-progress__bar{height:8px;border-radius:var(--r-pill);background:var(--line);overflow:hidden}.fm-progress__bar span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width var(--dur-3) var(--ease-expo)}.fm-progress__cta{justify-content:space-between;text-align:left;text-transform:none;letter-spacing:0;margin-top:var(--sp-2)}.fm-progress__cta>span{display:flex;flex-direction:column;gap:2px}.fm-progress__ctaKicker{font-size:12px;text-transform:uppercase;letter-spacing:var(--tracking-label);opacity:.8}.fm-progress__ctaTitle{font-family:var(--font-body);font-weight:600;font-size:var(--step-0)}.fm-community{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--sp-4);gap:var(--sp-4)}@media (min-width:720px){.fm-community{grid-template-columns:repeat(2,minmax(0,1fr))}}.fm-community__card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3)}.fm-community__icon{font-size:26px;line-height:1}.fm-course{display:flex;flex-direction:column;gap:var(--sp-3)}.fm-course__title{margin-bottom:var(--sp-2)}.fm-module{border:1px solid var(--line);border-radius:var(--r-lg);background:color-mix(in oklab,var(--surface) 76%,transparent);overflow:hidden}.fm-module[open]{border-color:color-mix(in oklab,var(--accent) 30%,transparent)}.fm-module__head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:var(--sp-3);gap:var(--sp-3);padding:var(--sp-4);cursor:pointer;list-style:none}.fm-module__head::-webkit-details-marker{display:none}.fm-module__num{font-size:var(--step-3);line-height:1;color:transparent;-webkit-text-stroke:1.1px var(--accent)}.fm-module__text{display:flex;flex-direction:column;gap:2px;min-width:0}.fm-module__name{font-weight:700;font-size:var(--step-1);line-height:1.3;color:var(--ink)}.fm-module__count{color:var(--accent)}.fm-module__summary{padding:0 var(--sp-4) var(--sp-3);color:var(--ink-2);line-height:1.55}.fm-lessons{display:flex;flex-direction:column}.fm-module .fm-lessons{border-top:1px solid var(--line)}.fm-lesson{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;grid-gap:var(--sp-3);gap:var(--sp-3);min-height:52px;padding:10px var(--sp-4);border-bottom:1px solid var(--line);color:var(--ink);transition:background-color var(--dur-1)}.fm-lessons li:last-child .fm-lesson{border-bottom:0}.fm-lesson.is-current,.fm-lesson:hover{background:var(--accent-weak)}.fm-lesson.is-current{box-shadow:inset 3px 0 0 var(--accent)}.fm-lesson__check{display:grid;place-items:center;width:22px;height:22px;border-radius:var(--r-pill);border:1.5px solid var(--line-ui);font-size:12px;font-weight:700}.fm-lesson.is-done .fm-lesson__check{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.fm-lesson.is-done .fm-lesson__title{color:var(--ink-2)}.fm-lesson__title{line-height:1.4}.fm-lesson__dur,.fm-lesson__soon{color:var(--muted)}.fm-lesson__soon{font-size:10.5px}.fm-history summary{cursor:pointer}.fm-history__list{margin-top:var(--sp-3);display:flex;flex-direction:column}.fm-history__row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto;grid-gap:var(--sp-2);gap:var(--sp-2);align-items:center;padding-block:var(--sp-2);border-bottom:1px solid var(--line);font-size:var(--step--1)}.fm-badge{padding:3px 10px;border-radius:var(--r-pill);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--line-ui)}.fm-badge--approved{border-color:var(--accent);color:var(--accent)}.fm-badge--rejected{border-color:var(--danger);color:var(--danger)}.fm-lessonPage{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--sp-5);gap:var(--sp-5);align-items:start}.fm-lessonPage__main{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}.fm-lessonPage__title{font-size:clamp(32px,1.2rem + 3vw,58px);line-height:var(--lh-title);color:var(--ink-display)}.fm-lessonPage__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.fm-lessonPage__summary{white-space:pre-line;max-width:72ch;line-height:1.7;color:var(--ink);font-size:var(--step-0)}.fm-lessonPage__module{font-weight:700;margin:4px 0 var(--sp-3)}.fm-lessonPage__side{padding:var(--sp-4)}.fm-lessonPage__side .fm-lesson{padding-inline:var(--sp-2);grid-template-columns:auto minmax(0,1fr)}@media (min-width:980px){.fm-lessonPage{grid-template-columns:minmax(0,1fr) 300px}.fm-lessonPage__side{position:-webkit-sticky;position:sticky;top:84px}}.fm-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.fm-crumbs__sep{color:var(--muted)}.fm-protected{margin-top:calc(var(--sp-2) * -1)}.fm-resources{gap:var(--sp-3);padding-top:var(--sp-4);border-top:1px solid var(--line)}.fm-resources,.fm-resources ul{display:flex;flex-direction:column}.fm-resources ul{gap:var(--sp-2)}.fm-resource{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);min-height:50px;padding:10px var(--sp-4);border:1px solid var(--line-ui);border-radius:var(--r-md);font-weight:600;transition:border-color var(--dur-1),background-color var(--dur-1)}.fm-resource:hover{border-color:var(--accent);background:var(--accent-weak)}.fm-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--sp-3);gap:var(--sp-3);padding-top:var(--sp-4);border-top:1px solid var(--line)}.fm-pager__link{display:flex;flex-direction:column;gap:4px;padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);line-height:1.35;transition:border-color var(--dur-1)}.fm-pager__link:hover{border-color:var(--accent)}.fm-pager__link--next{text-align:right;grid-column:2}.sp{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--r-lg);overflow:hidden;background:var(--bg);border:1px solid var(--line-strong);box-shadow:var(--shadow-2);-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.sp__frame{position:absolute;inset:0;width:100%;height:100%;border:0}.sp__mark{position:absolute;z-index:2;max-width:70%;pointer-events:none;font-family:var(--font-cond);font-weight:600;font-size:clamp(11px,.6rem + .5vw,15px);letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:color-mix(in oklab,var(--ink-display) 58%,transparent);text-shadow:0 1px 2px color-mix(in oklab,var(--bg) 60%,transparent);transition:left 1.6s var(--ease-soft),top 1.6s var(--ease-soft);mix-blend-mode:difference}.sp__expand{position:absolute;z-index:3;top:10px;right:10px;display:grid;place-items:center;width:40px;height:40px;border-radius:var(--r-pill);background:color-mix(in oklab,var(--bg) 62%,transparent);color:var(--ink);opacity:.75;transition:opacity var(--dur-1)}.sp__expand:focus-visible,.sp__expand:hover{opacity:1}.sp:-webkit-full-screen{border-radius:0;border:0;aspect-ratio:auto}.sp:fullscreen{border-radius:0;border:0;aspect-ratio:auto}.sp--full:not(:-webkit-full-screen){position:fixed;inset:0;z-index:500;width:100vw;height:100svh;aspect-ratio:auto;border-radius:0;border:0}.sp--full:not(:fullscreen){position:fixed;inset:0;z-index:500;width:100vw;height:100svh;aspect-ratio:auto;border-radius:0;border:0}.sp--soon{display:grid;place-items:center;padding:var(--sp-5);text-align:center;color:var(--ink-2);background:radial-gradient(60% 55% at 30% 25%,var(--accent-weak) 0,transparent 70%),var(--bg-2);border-style:dashed}@media (prefers-reduced-motion:reduce){.sp__mark{transition:none}.fm-status__pulse{animation:none}}