.lt-secure-audio{background:#071f44b8;border:1px solid #4a90e252;border-radius:.75rem;gap:.75rem;min-width:0;padding:1rem;display:grid}.lt-secure-audio__heading{gap:.25rem;display:grid}.lt-secure-audio__heading small{opacity:.72}.lt-secure-audio__load{min-height:2.75rem;color:inherit;font:inherit;cursor:pointer;background:#105ccc47;border:1px solid;border-radius:.625rem;padding:.625rem 1rem}.lt-secure-audio__load:disabled{cursor:wait;opacity:.62}.lt-secure-audio__control{width:100%}.lt-secure-audio__error{color:#ffb5b5;margin:0}.lt-city-backdrop{--lt-backdrop-scrim-rgb:var(--lt-scrim-rgb,2 8 24);--lt-backdrop-scrim-alpha:var(--lt-scrim-work,.62);--lt-backdrop-edge-alpha:.18;--lt-backdrop-position:62% 42%;z-index:-1;background-color:var(--lt-navy-950,#01060f);contain:strict;pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0;overflow:hidden}.lt-city-backdrop[data-tier=stage]{--lt-backdrop-scrim-alpha:var(--lt-scrim-stage,.4)}.lt-city-backdrop[data-tier=focus]{--lt-backdrop-scrim-alpha:var(--lt-scrim-focus,.84);--lt-backdrop-edge-alpha:.08}.lt-city-backdrop[data-tier=glass]{--lt-backdrop-scrim-alpha:0}.lt-city-backdrop[data-tier=glass]:after{background:linear-gradient(180deg, rgb(var(--lt-backdrop-scrim-rgb) / var(--lt-scrim-glass-top,.55)) 0%, rgb(var(--lt-backdrop-scrim-rgb) / var(--lt-scrim-glass-mid,.08)) 16%, rgb(var(--lt-backdrop-scrim-rgb) / var(--lt-scrim-glass-mid,.08)) 50%, rgb(var(--lt-backdrop-scrim-rgb) / var(--lt-scrim-glass-bottom,.42)) 100%)}.lt-city-backdrop__lqip{background-image:var(--lt-backdrop-lqip);background-position:var(--lt-backdrop-position);filter:blur(18px);background-size:cover;position:absolute;inset:-32px}.lt-city-backdrop[data-loaded=true] .lt-city-backdrop__lqip{visibility:hidden;transition:visibility 0s linear var(--lt-motion-slow,.32s)}.lt-city-backdrop__picture,.lt-city-backdrop__img{width:100%;height:100%;display:block;position:absolute;inset:0}.lt-city-backdrop__img{object-fit:cover;object-position:var(--lt-backdrop-position);opacity:0;max-width:none;transition:opacity var(--lt-motion-slow,.32s) var(--lt-ease,ease)}.lt-city-backdrop[data-loaded=true] .lt-city-backdrop__img{opacity:1}.lt-city-backdrop[data-failed=true] .lt-city-backdrop__img{visibility:hidden}.lt-city-backdrop__scrim{background-color:rgb(var(--lt-backdrop-scrim-rgb));opacity:var(--lt-backdrop-scrim-alpha);transition:opacity var(--lt-motion,.2s) var(--lt-ease,ease);position:absolute;inset:0}.lt-city-backdrop:after{background:linear-gradient(180deg, rgb(var(--lt-backdrop-scrim-rgb) / var(--lt-backdrop-edge-alpha)) 0%, rgb(var(--lt-backdrop-scrim-rgb) / 0) 16%, rgb(var(--lt-backdrop-scrim-rgb) / 0) 84%, rgb(var(--lt-backdrop-scrim-rgb) / var(--lt-backdrop-edge-alpha)) 100%);content:"";position:absolute;inset:0}.lt-city-backdrop[data-photo=false]{background:radial-gradient(ellipse at 62% 18%, #1664ff24, transparent 58%), linear-gradient(180deg, var(--lt-navy-900,#07122b) 0%, var(--lt-navy-950,#01060f) 100%)}.lt-city-backdrop[data-photo=false] .lt-city-backdrop__scrim{display:none}@media (orientation:portrait){.lt-city-backdrop[data-variant=auto] .lt-city-backdrop__lqip{background-image:var(--lt-backdrop-lqip-portrait)}}@media (prefers-reduced-motion:reduce){.lt-city-backdrop__img,.lt-city-backdrop__scrim,.lt-city-backdrop[data-loaded=true] .lt-city-backdrop__lqip{transition:none}}@media (forced-colors:active){.lt-city-backdrop{display:none}}@media print{.lt-city-backdrop{display:none!important}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--lt-brand-blue:#0e6cfc;--lt-brand-blue-hover:#0b5ed7;--lt-brand-blue-pressed:#094fb8;--lt-brand-blue-soft:#e7f0fe;--lt-hero-blue:#015ce1;--lt-tech-blue:#00aeef;--lt-cyan:#00c7b7;--lt-navy:#072b76;--lt-navy-deep:#021d52;--lt-nav-gradient:linear-gradient(120deg, #021d52 0%, #072b76 58%, #0b3e9e 100%);--lt-sidebar:#001d4d;--lt-sidebar-active:#0b64e6;--lt-sidebar-text:#b9c6e4;--lt-unicom-red:#d71920;--lt-legacy-navy:#062b58;--lt-legacy-brand-blue:#126bff;--lt-legacy-page:#eef5ff;--lt-legacy-border:#b9d7ff;--lt-legacy-text:#14213d;--lt-legacy-muted:#64748b;--lt-legacy-success:#16a673;--lt-page:#eef4fc;--lt-card:#fff;--lt-card-soft:#f6f9fe;--lt-border:#e2eaf6;--lt-border-strong:#c9d8f0;--lt-divider:#edf2fa;--lt-text:#0a2257;--lt-text-body:#33456b;--lt-muted:#7a89a8;--lt-text-on-navy:#fff;--lt-text-on-navy-muted:#a9bbe0;--lt-success:#08a170;--lt-success-soft:#e3f6ef;--lt-warning:#b45309;--lt-warning-strong:#f59e0b;--lt-warning-soft:#fef3e2;--lt-danger:#e5484d;--lt-danger-soft:#fcedec;--lt-info:#0e6cfc;--lt-info-soft:#e7f0fe;--lt-neutral-soft:#eff3fa;--lt-font:"Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Helvetica Neue", sans-serif;--lt-fs-page-title:34px;--lt-fs-card-title:22px;--lt-fs-body:17px;--lt-fs-small:14px;--lt-fs-button:19px;--lt-fs-metric:40px;--lt-radius-sm:10px;--lt-radius-md:14px;--lt-radius-lg:18px;--lt-radius-xl:24px;--lt-radius-pill:999px;--lt-shadow-card:0 10px 30px #0a225714;--lt-shadow-pop:0 18px 50px #0a225729;--lt-shadow-btn:0 8px 20px #0e6cfc47;--lt-space-1:4px;--lt-space-2:8px;--lt-space-3:12px;--lt-space-4:16px;--lt-space-5:20px;--lt-space-6:24px;--lt-space-7:32px;--lt-space-8:40px;--lt-space-9:48px;--lt-space-10:56px;--lt-space-11:64px;--lt-space-12:80px;--lt-control-h:52px;--lt-control-h-lg:64px;--lt-touch-min:48px;--lt-table-row-h:56px;--lt-icon-sm:20px;--lt-icon-md:28px;--lt-icon-lg:44px;--lt-topbar-h:88px;--lt-sidebar-w:264px;--lt-modal-w:560px;--lt-modal-w-lg:760px;--lt-drawer-w:480px;--lt-motion-fast:.12s;--lt-motion:.2s;--lt-motion-slow:.32s;--lt-ease:cubic-bezier(.2, .7, .3, 1)}*{box-sizing:border-box}html,body,#root{width:100%;min-width:0;min-height:100%;margin:0}body{color:var(--lt-text);background:var(--lt-page);font-family:var(--lt-font);-webkit-font-smoothing:antialiased}button,a,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--lt-tech-blue);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--lt-blue-700:#0b4fd1;--lt-blue-600:#1664ff;--lt-blue-500:#2f7bff;--lt-blue-400:#3d8bff;--lt-blue-300:#6aa8ff;--lt-cyan-400:#22c7f0;--lt-teal-400:#19c6a7;--lt-navy-950:#01060f;--lt-navy-900:#07122b;--lt-scrim-rgb:2 8 24;--lt-scrim-stage:.4;--lt-scrim-work:.62;--lt-scrim-focus:.84;--lt-scrim-glass-top:.55;--lt-scrim-glass-mid:.08;--lt-scrim-glass-bottom:.42;--lt-glass-thin-bg:#142c6047;--lt-glass-thin-line:#afd4ff47;--lt-glass-thin-blur:blur(18px) saturate(150%);--lt-glass-thick-bg:#081434b3;--lt-glass-thick-line:#7db6ff42;--lt-glass-thick-blur:blur(32px) saturate(165%);--lt-glass-solid-bg:#071028f5;--lt-glass-overlay-bg:#01060f94;--lt-glass-overlay-blur:blur(6px);--lt-glass-sheen:linear-gradient(155deg, #ffffff1f 0%, #ffffff08 38%, #fff0 60%);--lt-glass-highlight:inset 0 1px 0 #ffffff2e;--lt-glass-drop:0 24px 60px #0005166b;--lt-accent-gradient:linear-gradient(135deg, #3d8bff 0%, #1664ff 55%, #0b4fd1 100%);--lt-font:"HarmonyOS Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Helvetica Neue", sans-serif;--lt-font-cjk:"HarmonyOS Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--lt-font-num:"HarmonyOS Sans SC", "Bahnschrift", "Microsoft YaHei UI", sans-serif;--lt-font-num-variant:tabular-nums;--lt-font-mono:"HarmonyOS Sans SC", Consolas, "Courier New", monospace;--lt-font-cjk-mobile:system-ui, "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Noto Sans SC", sans-serif;--lt-type-score:4.5rem;--lt-type-display:3.5rem;--lt-type-h1:2.75rem;--lt-type-h2:2rem;--lt-type-h3:1.625rem;--lt-type-row:1.5rem;--lt-type-body:1.25rem;--lt-type-caption:1.125rem;--lt-type-code:1.25rem;--lt-type-button:1.5rem;--lt-admin-fs-h1:24px;--lt-admin-lh-h1:32px;--lt-admin-fs-h2:18px;--lt-admin-lh-h2:26px;--lt-admin-fs-h3:16px;--lt-admin-lh-h3:24px;--lt-admin-fs-body:14px;--lt-admin-lh-body:22px;--lt-admin-fs-caption:12px;--lt-admin-lh-caption:20px;--lt-admin-fs-metric:30px;--lt-admin-lh-metric:38px;--lt-mobile-fs-h1:22px;--lt-mobile-fs-h2:18px;--lt-mobile-fs-body:16px;--lt-mobile-fs-caption:13px;--lt-mobile-fs-metric:28px;--lt-mobile-touch:44px;--lt-r-tag:4px;--lt-r-control-admin:8px;--lt-r-control:12px;--lt-r-card:16px;--lt-r-hero:24px;--lt-r-pill:999px;--lt-gutter-terminal:2rem;--lt-gutter-admin:24px;--lt-gutter-mobile:16px;--lt-pad-card-terminal:1.5rem;--lt-pad-card-admin:20px;--lt-pad-card-mobile:16px;--lt-header-h-terminal:5.5rem;--lt-page-header-max:6rem;--lt-btn-h-terminal:4.5rem;--lt-btn-h-terminal-secondary:4rem;--lt-input-h-terminal:3.5rem;--lt-control-h-admin:36px;--lt-control-h-admin-sm:32px;--lt-elev-1:0 8px 24px #00041073;--lt-elev-2:0 16px 40px #00041099;--lt-focus-ring:0 0 0 3px #3d8bff73;--lt-bg-0:var(--lt-page);--lt-bg-1:var(--lt-page);--lt-surface-1:var(--lt-card);--lt-surface-2:var(--lt-card-soft);--lt-surface-3:var(--lt-card);--lt-surface-inset:var(--lt-card-soft);--lt-line-1:var(--lt-border);--lt-line-2:var(--lt-border-strong);--lt-text-1:var(--lt-text);--lt-text-2:var(--lt-text-body);--lt-text-3:var(--lt-muted);--lt-text-disabled:#a3afc4;--lt-accent:var(--lt-brand-blue);--lt-accent-hover:var(--lt-brand-blue-hover);--lt-accent-pressed:var(--lt-brand-blue-pressed);--lt-link:var(--lt-brand-blue);--lt-status-ok:var(--lt-success);--lt-status-ok-soft:var(--lt-success-soft);--lt-status-warn:var(--lt-warning);--lt-status-warn-soft:var(--lt-warning-soft);--lt-status-danger:var(--lt-danger);--lt-status-danger-soft:var(--lt-danger-soft);--lt-status-info:var(--lt-info);--lt-status-info-soft:var(--lt-info-soft);--lt-status-neutral:var(--lt-muted);--lt-status-neutral-soft:var(--lt-neutral-soft);--lt-status-ok-on-soft:var(--lt-success);--lt-status-warn-on-soft:var(--lt-warning);--lt-status-danger-on-soft:var(--lt-danger);--lt-status-info-on-soft:var(--lt-info);--lt-status-neutral-on-soft:var(--lt-muted)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--lt-bg-0:#01060f;--lt-bg-1:#07122b;--lt-surface-1:#0a1b3de6;--lt-surface-2:#0f2552f0;--lt-surface-3:#13295a;--lt-surface-inset:#01091eb8;--lt-line-1:#6aa8ff2e;--lt-line-2:#6aa8ff52;--lt-text-1:#f2f6ff;--lt-text-2:#c2cfe8;--lt-text-3:#8fa3c7;--lt-text-disabled:#5b6b8a;--lt-accent:#1664ff;--lt-accent-hover:#2f7bff;--lt-accent-pressed:#0b4fd1;--lt-link:#6aa8ff;--lt-status-ok:#34d399;--lt-status-ok-soft:#34d39929;--lt-status-warn:#fbbf24;--lt-status-warn-soft:#fbbf2429;--lt-status-danger:#ff6b6b;--lt-status-danger-soft:#ff6b6b29;--lt-status-info:#6aa8ff;--lt-status-info-soft:#6aa8ff29;--lt-status-neutral:#8fa3c7;--lt-status-neutral-soft:#8fa3c729;--lt-status-ok-on-soft:#34d399;--lt-status-warn-on-soft:#fbbf24;--lt-status-danger-on-soft:#ff8a8a;--lt-status-info-on-soft:#80b6ff;--lt-status-neutral-on-soft:#a9b8d6;--lt-page:var(--lt-bg-1);--lt-card:var(--lt-surface-1);--lt-card-soft:var(--lt-surface-2);--lt-border:var(--lt-line-1);--lt-border-strong:var(--lt-line-2);--lt-divider:#6aa8ff1f;--lt-text:var(--lt-text-1);--lt-text-body:var(--lt-text-2);--lt-muted:var(--lt-text-3);--lt-brand-blue:var(--lt-accent);--lt-brand-blue-hover:var(--lt-accent-hover);--lt-brand-blue-pressed:var(--lt-accent-pressed);--lt-brand-blue-soft:#1664ff29;--lt-success:var(--lt-status-ok);--lt-success-soft:var(--lt-status-ok-soft);--lt-warning:var(--lt-status-warn);--lt-warning-strong:var(--lt-status-warn);--lt-warning-soft:var(--lt-status-warn-soft);--lt-danger:var(--lt-status-danger);--lt-danger-soft:var(--lt-status-danger-soft);--lt-info:var(--lt-status-info);--lt-info-soft:var(--lt-status-info-soft);--lt-neutral-soft:var(--lt-status-neutral-soft);--lt-shadow-card:var(--lt-elev-1);--lt-shadow-pop:var(--lt-elev-2);--lt-shadow-btn:0 8px 20px #1664ff52;--lt-sidebar:#051028db;--lt-sidebar-active:#1664ff47;--lt-sidebar-text:var(--lt-text-2);--lt-nav-gradient:linear-gradient(120deg, #020818eb 0%, #07122bdb 58%, #0b4fd152 100%)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--lt-glass-thin-bg:#081434b3;--lt-glass-thick-bg:#071028f5}}@media (prefers-reduced-transparency:reduce){:root{--lt-glass-thin-bg:#081434b3;--lt-glass-thick-bg:#071028f5;--lt-glass-overlay-bg:#01060fdb}}:root{--page-width:520px;--mb-ink:var(--lt-text);--mb-body:var(--lt-text-body);--mb-muted:var(--lt-muted);--mb-blue:var(--lt-brand-blue);--mb-blue-hover:var(--lt-brand-blue-hover);--mb-blue-pressed:var(--lt-brand-blue-pressed);--mb-blue-soft:var(--lt-brand-blue-soft);--mb-card:var(--lt-card);--mb-card-soft:var(--lt-card-soft);--mb-line:var(--lt-border);--mb-line-strong:var(--lt-border-strong);--mb-divider:var(--lt-divider);--mb-page:var(--lt-page);--mb-red:var(--lt-unicom-red);--mb-shadow-card:var(--lt-shadow-card);--mb-shadow-pop:var(--lt-shadow-pop);--mb-shadow-btn:var(--lt-shadow-btn)}html{background:var(--mb-page);width:100%;min-width:320px;max-width:100%;min-height:100%}body{background:linear-gradient(180deg, #f1f6fc 0%, var(--mb-page) 34%, #f2f7fd 100%);width:100%;min-width:320px;max-width:100%;min-height:100vh;color:var(--mb-body);font-family:var(--lt-font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}#root{width:100%;max-width:100%;min-height:100dvh}*,:before,:after{box-sizing:border-box}button,a{-webkit-tap-highlight-color:transparent}button{min-height:44px;color:inherit}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}h1,h2,h3,p,figure,dl,dd{margin:0}fieldset{border:0;min-width:0;margin:0;padding:0}button,a,input{max-width:100%}.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}.mobile-app{width:100%;max-width:var(--page-width);background:radial-gradient(circle at 88% 2%, #0e6cfc0f, transparent 17rem), linear-gradient(180deg, #f1f6fc 0%, var(--mb-page) 38%, #f2f7fd 100%);min-height:100dvh;margin:0 auto;position:relative;overflow:visible}.app-topbar{z-index:40;min-height:60px;padding:max(8px, env(safe-area-inset-top)) 16px 8px;border-bottom:1px solid var(--mb-line);-webkit-backdrop-filter:blur(16px)saturate(1.25);backdrop-filter:blur(16px)saturate(1.25);background:#ffffffeb;justify-content:space-between;align-items:center;gap:10px;display:flex;position:sticky;top:0}.app-topbar--home{min-height:123px;padding:max(18px, env(safe-area-inset-top)) 18px 10px;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;justify-content:center;position:relative}.app-topbar--home .brand-lockup{gap:16px;min-height:52px;transform:translateY(8px)}.app-topbar--home .brand-lockup__divider{background:#6f7c91;height:23px}.app-topbar--home .brand-lockup__title{font-size:17px;font-weight:600}.brand-lockup{align-items:center;gap:10px;min-width:0;min-height:44px;display:inline-flex}.brand-lockup__logo{flex:none;width:auto;height:30px}.brand-lockup__divider{background:var(--mb-line-strong);flex:none;width:1px;height:18px}.brand-lockup__title{color:var(--mb-ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.source-chip{border-radius:var(--lt-radius-pill);background:var(--lt-success-soft);min-height:32px;color:var(--lt-success);border:1px solid #08a17047;flex:none;align-items:center;gap:5px;padding:0 11px;font-size:12px;font-weight:600;display:inline-flex}.source-chip--mock{background:var(--lt-warning-soft);color:var(--lt-warning);border-color:#b4530938}.app-main{width:100%;min-width:0;padding-bottom:calc(100px + env(safe-area-inset-bottom));outline:none}.mobile-app--standalone .app-main{padding-bottom:calc(32px + env(safe-area-inset-bottom))}.mobile-app--section .app-topbar{min-height:76px;padding-inline:18px}.mobile-app--section .page{padding-top:30px}.mobile-app--section .app-main{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.page{align-content:start;gap:16px;width:100%;min-width:0;max-width:100%;padding:18px 16px 28px;animation:.32s ease-out both page-enter;display:grid}.mobile-app,.app-topbar,.app-main,.page,.page>*,.surface,.training-item>div,.appointment-card>*{min-width:0;max-width:100%}.page,.surface,.training-item,.appointment-card,.inline-notice{overflow-wrap:anywhere}.surface{border:1px solid var(--mb-line);background:var(--mb-card);min-width:0;max-width:100%;box-shadow:var(--mb-shadow-card);border-radius:16px}.eyebrow{color:var(--mb-blue);font-size:13px;font-weight:600;line-height:1.4}.icon{flex:none}.page-heading{align-items:center;gap:12px;min-height:60px;display:flex;position:relative}.page-heading__copy{flex:1;gap:4px;min-width:0;display:grid}.page-heading h1{color:var(--mb-ink);letter-spacing:-.02em;font-size:clamp(24px,6.8vw,28px);font-weight:800;line-height:1.2}.page-heading p{color:var(--mb-muted);font-size:13px;line-height:1.55}.page-heading__back{flex-basis:44px;width:44px;height:44px}.section-heading{justify-content:space-between;align-items:center;gap:12px;min-height:28px;display:flex}.section-heading h2{color:var(--mb-ink);font-size:17px;font-weight:700}.section-caption{color:var(--mb-muted);font-size:12px}.primary-button,.secondary-button,.danger-button{cursor:pointer;min-height:52px;transition:transform var(--lt-motion-fast) var(--lt-ease), box-shadow var(--lt-motion-fast) var(--lt-ease), background var(--lt-motion-fast) var(--lt-ease);border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:16px;font-weight:600;line-height:1;display:inline-flex}.primary-button{background:var(--mb-blue);box-shadow:var(--mb-shadow-btn);color:#fff}.primary-button:hover{background:var(--mb-blue-hover)}.primary-button:active{background:var(--mb-blue-pressed)}.primary-button--light{box-shadow:var(--mb-shadow-card);color:var(--mb-blue);background:#fff}.secondary-button{border:1px solid var(--mb-line-strong);box-shadow:none;color:var(--mb-blue);background:#fff}.secondary-button--glass{background:var(--mb-blue-soft);color:var(--mb-blue);border-color:#0e6cfc59}.danger-button{background:var(--lt-danger);color:#fff}.primary-button:active,.secondary-button:active,.danger-button:active{transform:translateY(1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.45;box-shadow:none;transform:none}.icon-button{border:1px solid var(--mb-line);width:44px;height:44px;color:var(--mb-blue);background:#fff;border-radius:12px;flex:0 0 44px;place-items:center;display:inline-grid}.status-badge{border-radius:var(--lt-radius-pill);white-space:nowrap;justify-content:center;align-items:center;width:fit-content;min-height:26px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.status-badge--info{background:var(--lt-info-soft);color:var(--lt-info)}.status-badge--success{background:var(--lt-success-soft);color:var(--lt-success)}.status-badge--warning{background:var(--lt-warning-soft);color:var(--lt-warning)}.status-badge--danger{background:var(--lt-danger-soft);color:var(--lt-danger)}.status-badge--neutral{background:var(--lt-neutral-soft);color:var(--mb-muted)}.inline-notice{background:var(--lt-info-soft);min-height:50px;color:var(--mb-body);border:1px solid #0e6cfc2e;border-radius:12px;align-items:flex-start;gap:10px;padding:13px 14px;display:flex}.inline-notice .icon{color:var(--mb-blue);margin-top:1px}.inline-notice p{font-size:13px;line-height:1.6}.inline-notice--success{background:var(--lt-success-soft);border-color:#08a17033}.inline-notice--success .icon{color:var(--lt-success)}.inline-notice--warning{background:var(--lt-warning-soft);border-color:#b4530933}.inline-notice--warning .icon{color:var(--lt-warning-strong)}.field-error{background:var(--lt-danger-soft);color:var(--lt-danger);border:1px solid #e5484d33;border-radius:10px;padding:11px 13px;font-size:13px;font-weight:600;line-height:1.5}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:17px;height:17px;animation:.7s linear infinite spin}.content-loading{min-height:112px;color:var(--mb-muted);justify-content:center;align-items:center;gap:10px;font-size:14px;display:flex}.text-link{width:fit-content;min-height:44px;color:var(--mb-blue);justify-content:center;align-items:center;margin:-3px auto 0;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex}.empty-state{text-align:center;align-content:center;place-items:center;gap:10px;min-height:240px;padding:28px 24px;display:grid}.empty-state>span{background:var(--mb-blue-soft);width:64px;height:64px;color:var(--mb-blue);border-radius:50%;place-items:center;display:grid}.empty-state--illustrated>span{background:radial-gradient(circle,#0e6cfc1c,#0000 70%);width:132px;height:112px}.empty-state--illustrated>span .icon{filter:drop-shadow(0 10px 10px #0e6cfc1f);width:72px;height:72px}.empty-state h2{color:var(--mb-ink);font-size:17px;font-weight:700}.empty-state p{max-width:270px;color:var(--mb-muted);font-size:13px;line-height:1.65}.empty-state>button,.empty-state>.primary-button{min-width:132px;min-height:44px;margin-top:4px;padding-inline:18px;font-size:14px}.bottom-nav{z-index:50;bottom:max(17px, env(safe-area-inset-bottom));width:min(calc(100% - 18px), calc(var(--page-width) - 18px));border:1px solid var(--mb-line);-webkit-backdrop-filter:blur(18px)saturate(1.2);backdrop-filter:blur(18px)saturate(1.2);background:#fffffff5;border-radius:20px;grid-template-columns:repeat(4,1fr);gap:4px;min-height:84px;padding:7px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #0a22570f}.bottom-nav__item{min-width:0;min-height:68px;color:var(--mb-muted);transition:color var(--lt-motion-fast) var(--lt-ease), background var(--lt-motion-fast) var(--lt-ease);border-radius:14px;align-content:center;place-items:center;gap:3px;font-size:11px;font-weight:500;display:grid}.bottom-nav__item.is-active{background:var(--mb-blue-soft);color:var(--mb-blue);font-weight:600}.mobile-app--section .bottom-nav{border-width:1px 0 0;border-radius:0;width:100%;min-height:70px;padding:3px 10px;bottom:0;box-shadow:0 -4px 18px #0a225709}.mobile-app--section .bottom-nav__item{min-height:62px}.mobile-app--profile .app-topbar{min-height:60px;padding-inline:16px}.mobile-app--profile .page{padding-top:18px}.mobile-app--profile .bottom-nav{bottom:max(17px, env(safe-area-inset-bottom));width:min(calc(100% - 18px), calc(var(--page-width) - 18px));border-width:1px;border-radius:20px;min-height:84px;padding:7px;box-shadow:0 4px 18px #0a22570f}.courses-page{padding-inline:20px}.courses-page .empty-state{margin-inline:2px;align-content:start;gap:17px;min-height:251px;margin-top:33px;padding-top:55px;transform:translate(-2px)}.records-page{padding-inline:18px}.records-page .empty-state{min-height:297px;margin-top:8px}.reports-page{padding-inline:20px}.reports-page .empty-state{min-height:336px}@media (width>=400px){.appointments-page{padding-inline:20px}.appointments-page .appointment-stats{gap:13px;margin-top:11px}.appointments-page .filter-tabs{margin-top:26px}.appointments-page .appointment-list{margin-top:5px}.appointments-page .empty-state{min-height:341px}.mobile-app--section:has(.appointments-page) .bottom-nav{min-height:78px}.mobile-app--section:has(.appointments-page) .bottom-nav__item{min-height:70px}}.auth-page{gap:22px;padding-top:52px}.mb-auth-brand{justify-content:center;align-items:center;gap:12px;display:flex}.mb-auth-brand__logo{width:auto;height:34px}.mb-auth-brand__divider{background:var(--mb-line-strong);width:1px;height:20px}.mb-auth-brand__title{color:var(--mb-ink);font-size:17px;font-weight:600}.auth-card{padding:26px 20px 22px}.mb-auth-title{color:var(--mb-ink);letter-spacing:-.02em;text-align:center;margin-bottom:18px;font-size:24px;font-weight:800}.segmented-tabs{border:1px solid var(--mb-line);background:var(--mb-card-soft);border-radius:12px;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;display:grid}.segmented-tabs button{min-height:44px;color:var(--mb-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:14px;font-weight:600}.segmented-tabs button.is-active{color:var(--mb-blue);background:#fff;box-shadow:0 4px 12px #0a225714}.form-stack{gap:16px;margin-top:18px;display:grid}.field{color:var(--mb-ink);gap:8px;font-size:14px;font-weight:600;display:grid}.field-control{border:1px solid var(--mb-line);min-height:52px;color:var(--mb-muted);transition:border-color var(--lt-motion-fast) var(--lt-ease), box-shadow var(--lt-motion-fast) var(--lt-ease), background var(--lt-motion-fast) var(--lt-ease);background:#fbfcfe;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:0 14px;display:grid}.field-control:focus-within{border-color:var(--mb-blue);color:var(--mb-blue);background:#fff;box-shadow:0 0 0 3px #0e6cfc1f}.field-control input{width:100%;min-width:0;height:50px;color:var(--mb-ink);background:0 0;border:0;outline:0;padding:0;font-size:15px}.field-control input::placeholder{color:#a6b2c6}.field-control--code{grid-template-columns:auto minmax(0,1fr) auto;padding-right:0}.field-control--code button{border:0;border-left:1px solid var(--mb-line);min-width:96px;min-height:50px;color:var(--mb-blue);cursor:pointer;background:0 0;border-radius:0 9px 9px 0;align-self:stretch;padding:0 14px;font-size:14px;font-weight:600}.field-control--code button:disabled{cursor:not-allowed;opacity:.5}.form-stack .primary-button{width:100%;margin-top:4px}.home-page{padding-top:18px;gap:25px;padding-inline:19px}.welcome-card{background:linear-gradient(135deg,#0a2472 0%,#0d5ce0 100%);border:0;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:20px;min-height:115px;padding:18px 16px;display:grid;transform:translateY(-1px);box-shadow:0 10px 26px #0a3ca042}.avatar{width:62px;height:62px;box-shadow:var(--mb-shadow-btn);color:#fff;background:#0870df;border-radius:19px;place-items:center;font-size:25px;font-weight:700;display:grid}.welcome-card .avatar{box-shadow:none;background:#ffffff29;border:1px solid #ffffff57}.welcome-card>div{gap:3px;min-width:0;display:grid}.welcome-card strong{color:#fff;font-size:18px;font-weight:700}.welcome-card p{color:#ffffffc7;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.mb-quick-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:26px 13px;display:grid}.mb-quick-card{background:var(--mb-card);min-width:0;min-height:180px;box-shadow:var(--mb-shadow-card);transition:transform var(--lt-motion-fast) var(--lt-ease), border-color var(--lt-motion-fast) var(--lt-ease);border:1px solid #0e6cfc38;border-radius:16px;grid-column:span 2;align-content:center;place-items:center;gap:20px;padding:16px 10px;display:grid}.mb-quick-card:hover{border-color:var(--mb-line-strong);transform:translateY(-1px)}.mb-quick-card:active{transform:scale(.97)}.home-page .mb-quick-grid>.mb-quick-card:not(.mb-quick-card--large):nth-last-child(2),.home-page .mb-quick-grid>.mb-quick-card:not(.mb-quick-card--large):last-child{grid-column:span 3}.mb-quick-card--large{grid-column:span 3;gap:22px;min-height:214px}.mb-quick-card--large:first-child{margin-right:3px}.mb-quick-card--large:nth-child(2){margin-left:3px}.mb-quick-card__icon{background:var(--mb-blue-soft);width:58px;height:58px;color:var(--mb-blue);border-radius:16px;place-items:center;display:grid}.mb-quick-card--large .mb-quick-card__icon{border-radius:18px;width:66px;height:66px}.mb-quick-card strong{color:#001039;font-size:17px;font-weight:600}.mb-quick-card--large strong{font-size:18px}.mb-quick-card .icon{stroke-width:1.45px;width:52px;height:52px}.mb-quick-card--large .icon{width:70px;height:70px}.service-banner{background:radial-gradient(circle at 92% 8%,#00aeef1a,#0000 45%),linear-gradient(145deg,#fff,#f2f7fe);grid-template-columns:1fr auto;align-items:center;gap:14px;min-height:142px;padding:18px;display:grid;position:relative;overflow:hidden}.home-source-marker{justify-self:start;margin-top:calc(118px + max(0px,100dvh - 844px))}.service-banner>div{justify-items:start;gap:7px;display:grid}.service-banner h2{color:var(--mb-ink);font-size:18px;font-weight:700}.service-banner p{color:var(--mb-muted);font-size:13px;line-height:1.55}.profile-card{background:radial-gradient(circle at 94% 16%,#00aeef1a,#0000 36%),linear-gradient(145deg,#fff,#f2f7fe);grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:18px;display:grid;position:relative;overflow:hidden}.profile-card>.status-badge{position:absolute;top:14px;right:14px}.profile-avatar{background:var(--mb-blue);width:62px;height:62px;box-shadow:var(--mb-shadow-btn);color:#fff;border:3px solid #fff;border-radius:18px;place-items:center;font-size:24px;font-weight:700;display:grid;position:relative}.profile-avatar span{background:var(--lt-success);color:#fff;border:3px solid #fff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:absolute;bottom:-4px;right:-4px}.profile-card__identity{gap:3px;min-width:0;padding-right:62px;display:grid}.profile-card__identity strong{color:var(--mb-ink);font-size:19px;font-weight:700}.profile-card__identity p{color:var(--mb-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.profile-details{padding:6px 16px 16px}.profile-details dl>div{border-bottom:1px solid var(--mb-divider);grid-template-columns:88px minmax(0,1fr);align-items:center;gap:12px;min-height:56px;display:grid}.profile-details dl>div:last-child{border-bottom:0}.profile-details dt{color:var(--mb-muted);align-items:center;gap:8px;font-size:14px;display:flex}.profile-details dd{min-width:0;color:var(--mb-ink);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.profile-details input{background:var(--mb-card-soft);width:100%;min-width:0;min-height:44px;color:var(--mb-ink);text-align:right;border:1px solid #0000;border-radius:10px;outline:0;padding:0 10px;font-size:14px;font-weight:600}.profile-details input:focus{border-color:var(--mb-blue);background:#fff;box-shadow:0 0 0 3px #0e6cfc1a}.profile-details input:disabled{color:var(--mb-muted)}.profile-details output{justify-content:flex-end;align-items:center;min-height:44px;display:inline-flex}.profile-details dl>div.profile-details__account{grid-template-columns:auto minmax(0,1fr)}.profile-password{padding:16px}.profile-password h2{color:var(--mb-ink);font-size:16px}.profile-password .section-caption{margin-top:12px}.profile-details>.section-caption{text-align:right;padding-block:12px;display:block}.profile-details>.primary-button{width:100%;margin-block:6px 4px}.record-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.record-summary .surface{align-content:center;place-items:center;gap:4px;min-height:86px;display:grid}.record-summary strong{color:var(--mb-blue);font-size:21px;font-weight:800}.record-summary span{color:var(--mb-muted);font-size:12px}.training-list{gap:12px;display:grid}.training-item{grid-template-columns:auto 1fr;gap:12px;padding:16px;display:grid}.training-item__index{background:var(--mb-blue-soft);width:38px;height:38px;color:var(--mb-blue);border-radius:10px;place-items:center;font-size:12px;font-weight:700;display:grid}.training-item>div{gap:7px;min-width:0;display:grid}.training-item__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.training-item time,.training-item p,.training-item__top>span{color:var(--mb-muted);font-size:12px;line-height:1.55}.training-item h2,.training-item h3{color:var(--mb-ink);font-size:15px;font-weight:700;line-height:1.4}.training-item dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px;display:grid}.training-item dl>div{background:var(--mb-card-soft);border-radius:10px;gap:3px;min-width:0;padding:9px 10px;display:grid}.training-item dt{color:var(--mb-muted);font-size:12px}.training-item dd{color:var(--mb-ink);font-size:13px;font-weight:600}.training-item__report{justify-self:start;margin-top:4px}.training-item ul{background:var(--mb-card-soft);color:var(--mb-body);border-radius:10px;gap:6px;margin:2px 0 0;padding:10px 12px 10px 28px;font-size:13px;line-height:1.5;display:grid}.training-item .inline-notice{min-height:44px}.courses-page .training-item .primary-button{width:100%;margin-top:6px;font-size:15px}.logout-button{width:100%}.booking-progress{grid-template-columns:repeat(3,1fr);margin:0;padding:0 6px;list-style:none;display:grid;position:relative}.booking-progress:before{background:var(--mb-line);content:"";height:2px;position:absolute;top:16px;left:17%;right:17%}.booking-progress li{z-index:1;color:var(--mb-muted);place-items:center;gap:7px;font-size:12px;font-weight:500;display:grid;position:relative}.booking-progress li>span{border:2px solid var(--mb-line-strong);width:32px;height:32px;color:var(--mb-muted);background:#f4f7fc;border-radius:50%;place-items:center;font-size:13px;font-weight:600;display:grid}.booking-progress li.is-active{color:var(--mb-blue);font-weight:600}.booking-progress li.is-active>span{border-color:var(--mb-blue);background:var(--mb-blue);color:#fff;box-shadow:0 6px 16px #0e6cfc4d}.booking-progress li.is-complete{color:var(--mb-blue)}.booking-progress li.is-complete>span{border-color:var(--mb-blue);background:var(--mb-blue-soft);color:var(--mb-blue)}.booking-section{gap:14px;padding:16px;display:grid}.step-chip{background:var(--mb-blue-soft);width:30px;height:26px;color:var(--mb-blue);border-radius:8px;place-items:center;font-size:11px;font-weight:700;display:grid}.restriction-list{color:var(--mb-body);gap:7px;margin:0;padding:0 0 0 18px;font-size:13px;line-height:1.55;display:grid}.choice-list{gap:10px;display:grid}.choice-card{border:1px solid var(--mb-line);cursor:pointer;min-height:72px;transition:border-color var(--lt-motion-fast) var(--lt-ease), background var(--lt-motion-fast) var(--lt-ease), box-shadow var(--lt-motion-fast) var(--lt-ease);background:#fbfcfe;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;display:grid;position:relative}.choice-card:hover{border-color:var(--mb-line-strong)}.choice-card.is-selected{border-color:var(--mb-blue);background:#f2f7ff;box-shadow:0 0 0 3px #0e6cfc14}.choice-card.is-disabled{cursor:not-allowed;opacity:.58}.choice-card input,.date-options input,.time-options input{z-index:2;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.choice-card input:disabled,.date-options input:disabled,.time-options input:disabled{cursor:not-allowed}.choice-card:has(input:focus-visible){outline-offset:2px;outline:3px solid #0e6cfc47}.date-options label:has(input:focus-visible){outline-offset:2px;outline:3px solid #0e6cfc47}.time-options label:has(input:focus-visible){outline-offset:2px;outline:3px solid #0e6cfc47}.choice-card__icon{background:var(--mb-blue-soft);width:42px;height:42px;color:var(--mb-blue);border-radius:10px;place-items:center;display:grid}.choice-card.is-selected .choice-card__icon{background:var(--mb-blue);color:#fff}.choice-card__copy{gap:3px;min-width:0;display:grid}.choice-card__copy strong{color:var(--mb-ink);font-size:15px;font-weight:600;line-height:1.35}.choice-card__copy small{color:var(--mb-blue);font-size:12px;font-weight:600}.choice-card__copy>span{color:var(--mb-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.choice-card__check{border:2px solid var(--mb-line-strong);color:#0000;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.choice-card.is-selected .choice-card__check{border-color:var(--mb-blue);background:var(--mb-blue);color:#fff}.date-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.date-options label{border:1px solid var(--mb-line);cursor:pointer;background:#fbfcfe;border-radius:12px;align-content:center;place-items:center;gap:4px;min-width:0;min-height:66px;display:grid;position:relative}.date-options label.is-selected{border-color:var(--mb-blue);background:var(--mb-blue);box-shadow:var(--mb-shadow-btn);color:#fff}.date-options strong{font-size:14px;font-weight:600}.date-options span{color:var(--mb-muted);font-size:12px}.date-options .is-selected span{color:#ffffffbf}.time-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.time-options label{border:1px solid var(--mb-line);min-width:0;min-height:48px;color:var(--mb-body);cursor:pointer;white-space:nowrap;background:#fbfcfe;border-radius:10px;place-items:center;font-size:13px;font-weight:600;display:grid;position:relative}.time-options label.is-selected{border-color:var(--mb-blue);background:var(--mb-blue-soft);color:var(--mb-blue)}.classroom-list .choice-card{min-height:68px}.capacity-chip{border-radius:var(--lt-radius-pill);background:var(--lt-success-soft);color:var(--lt-success);white-space:nowrap;padding:5px 8px;font-size:11px;font-weight:700}.capacity-chip.is-full{background:var(--lt-neutral-soft);color:var(--mb-muted)}.remaining-banner{background:var(--lt-success-soft);border:1px solid #08a17033;border-radius:14px;align-items:center;gap:12px;padding:13px 15px;display:flex}.remaining-banner>span{width:38px;height:38px;color:var(--lt-success);background:#d2f0e4;border-radius:10px;place-items:center;display:grid}.remaining-banner>div{gap:2px;display:grid}.remaining-banner small{color:#4f7a68;font-size:12px}.remaining-banner strong{color:#066348;font-size:15px}.remaining-banner.is-full{background:var(--lt-danger-soft);border-color:#e5484d2e}.remaining-banner.is-full>span{color:var(--lt-danger);background:#fadadd}.remaining-banner.is-full strong{color:var(--lt-danger)}.booking-next,.confirm-submit{width:100%}.confirm-summary{overflow:hidden}.confirm-summary__course{border-bottom:1px solid var(--mb-divider);background:radial-gradient(circle at 92% 10%,#00aeef1a,#0000 40%),linear-gradient(145deg,#f2f7fe,#fff);grid-template-columns:auto 1fr;align-items:center;gap:13px;padding:18px 16px;display:grid}.confirm-summary__course>span{background:var(--mb-blue);width:50px;height:50px;box-shadow:var(--mb-shadow-btn);color:#fff;border-radius:14px;place-items:center;display:grid}.confirm-summary__course>div{gap:3px;display:grid}.confirm-summary__course small{color:var(--mb-blue);font-size:12px;font-weight:700}.confirm-summary__course h2{color:var(--mb-ink);font-size:17px;font-weight:700}.confirm-summary__course p{color:var(--mb-muted);font-size:13px}.confirm-summary dl,.ticket-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:6px 16px 14px;display:grid}.confirm-summary dl>div,.ticket-details>div{border-bottom:1px solid var(--mb-divider);gap:4px;min-width:0;padding:12px 8px;display:grid}.confirm-summary dt,.ticket-details dt{color:var(--mb-muted);align-items:center;gap:6px;font-size:12px;display:flex}.confirm-summary dt .icon{color:var(--mb-blue)}.confirm-summary dd,.ticket-details dd{color:var(--mb-ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.booking-success-page{gap:16px}.success-hero{background:radial-gradient(circle at 50% 18%, #00c7b74d, transparent 30%), var(--lt-nav-gradient);min-height:210px;box-shadow:var(--mb-shadow-pop);color:#fff;text-align:center;border-radius:18px;align-content:center;place-items:center;gap:8px;padding:26px 24px;display:grid;position:relative;overflow:hidden}.success-hero__rings{border:1px solid #ffffff1f;border-radius:50%;width:126px;height:126px;position:absolute;box-shadow:0 0 0 24px #ffffff0d,0 0 0 48px #ffffff08}.success-hero__icon{color:#c9f5e4;background:#08a17059;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:66px;height:66px;margin-bottom:4px;display:grid;position:relative}.success-hero h1{letter-spacing:-.02em;font-size:26px;font-weight:800;position:relative}.success-hero p{max-width:300px;color:var(--lt-text-on-navy-muted);font-size:13px;line-height:1.55;position:relative}.reservation-ticket{display:grid;overflow:hidden}.reservation-ticket__number{border-bottom:1px dashed var(--mb-line-strong);justify-items:center;gap:7px;padding:20px 16px 16px;display:grid}.reservation-ticket__number>span:first-child{color:var(--mb-muted);font-size:12px}.reservation-ticket__number strong{max-width:100%;color:var(--mb-ink);letter-spacing:.02em;text-overflow:ellipsis;font-size:clamp(17px,5vw,21px);font-weight:800;overflow:hidden}.reservation-ticket>p{color:var(--mb-muted);text-align:center;padding:8px 16px 0;font-size:12px}.reservation-qr{justify-items:center;gap:7px;padding:18px 16px 8px;display:grid}.reservation-qr__slot{color:var(--mb-ink);justify-items:center;gap:2px;font-size:18px;line-height:1.35;display:grid}.reservation-qr__frame{border:1px solid var(--mb-line);width:212px;height:212px;box-shadow:var(--mb-shadow-card);background:#fff;border-radius:18px;place-items:center;display:grid;position:relative}.reservation-qr__frame svg,.reservation-qr__frame img{width:188px;height:188px;image-rendering:pixelated}.reservation-qr figcaption{color:var(--mb-body);font-size:13px;font-weight:600}.reservation-qr figcaption.reservation-qr__warning{color:var(--lt-warning)}.reservation-qr small{color:var(--mb-muted);font-size:12px}.reservation-qr>p,.reservation-qr>span{color:var(--mb-body);font-size:12px;line-height:1.5}.reservation-qr>.reservation-qr__hint{color:var(--lt-warning-strong);font-weight:600}.reservation-qr>.reservation-qr__notice{background:var(--lt-warning-soft);color:var(--lt-warning-strong);border-radius:999px;padding:3px 9px;font-size:12px;line-height:1.5}.reservation-qr>button,.appointment-card__actions button{border:1px solid var(--mb-line-strong);min-height:44px;color:var(--mb-blue);cursor:pointer;background:#fff;border-radius:10px;padding:0 14px;font-size:13px;font-weight:600}.ticket-details{padding-top:4px}.success-actions{gap:10px;display:grid}.appointments-page--loading{min-height:65vh}.appointment-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.appointment-stats .surface{align-content:center;place-items:center;gap:5px;min-height:84px;display:grid}.appointment-stats span{color:var(--mb-muted);font-size:12px}.appointment-stats strong{color:var(--mb-blue);font-size:24px;font-weight:800}.filter-tabs{border:1px solid var(--mb-line);scrollbar-width:none;background:#eef3fa;border-radius:12px;gap:4px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.filter-tabs::-webkit-scrollbar{display:none}.filter-tabs button{min-width:max-content;min-height:44px;color:var(--mb-body);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1 0 auto;padding:0 12px;font-size:13px;font-weight:500}.filter-tabs button.is-active{color:var(--mb-blue);background:#fff;font-weight:600;box-shadow:0 4px 12px #0a225714}.appointment-list{gap:12px;display:grid}.appointment-card{gap:11px;padding:16px;display:grid;position:relative;overflow:hidden}.appointment-card:before{background:linear-gradient(var(--mb-blue), var(--lt-tech-blue));content:"";width:3px;position:absolute;top:0;bottom:0;left:0}.appointment-card__top{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.appointment-card__code{min-width:0;color:var(--mb-muted);text-overflow:ellipsis;white-space:nowrap;font-family:SFMono-Regular,Consolas,monospace;font-size:11px;overflow:hidden}.appointment-card h2{color:var(--mb-ink);font-size:16px;font-weight:700}.appointment-card dl{background:var(--mb-card-soft);border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.appointment-card dl>div{gap:3px;min-width:0;display:grid}.appointment-card dl>div:last-child{grid-column:1/-1}.appointment-card dt{color:var(--mb-muted);align-items:center;gap:5px;font-size:12px;display:flex}.appointment-card dt .icon{color:var(--mb-blue)}.appointment-card dd{color:var(--mb-body);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.appointment-card__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.appointment-card__actions>:only-child{grid-column:1/-1}.appointment-card__cancel{background:var(--lt-danger-soft);min-height:44px;color:var(--lt-danger);cursor:pointer;border:1px solid #e5484d38;border-radius:10px;justify-self:end;padding:0 12px;font-size:13px;font-weight:600}.appointment-card__actions .appointment-card__cancel{justify-self:stretch}.dialog-backdrop{z-index:100;padding:18px;padding-bottom:max(18px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#021d5273;place-items:end center;animation:.18s ease-out both fade-in;display:grid;position:fixed;inset:0}.cancel-dialog{width:min(100%,450px);box-shadow:var(--mb-shadow-pop);text-align:center;background:#fff;border-radius:18px;gap:11px;padding:22px;animation:.22s ease-out both dialog-enter;display:grid}.cancel-dialog__icon{background:var(--lt-danger-soft);width:56px;height:56px;color:var(--lt-danger);border-radius:16px;place-items:center;margin:0 auto 2px;display:grid}.cancel-dialog h2{color:var(--mb-ink);font-size:19px;font-weight:700}.cancel-dialog p{color:var(--mb-muted);font-size:13px;line-height:1.6}.cancel-dialog>strong{background:var(--mb-card-soft);color:var(--mb-ink);border-radius:10px;padding:10px;font-family:SFMono-Regular,Consolas,monospace;font-size:13px}.cancel-dialog__error{background:var(--lt-danger-soft);border:1px solid #e5484d33;border-radius:10px;padding:9px 10px;font-weight:600;color:var(--lt-danger)!important;font-size:12px!important}.cancel-dialog__actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:4px;display:grid}.auth-page{gap:92px;padding:108px 21px 28px}.auth-card{border-radius:20px;padding:36px 22px}.mb-auth-brand__logo{height:42px}.mb-auth-title{margin-bottom:6px}.segmented-tabs{background:0 0;border:0;gap:8px;padding:0}.segmented-tabs button{border-radius:8px;min-height:24px;font-size:12px;position:relative}.segmented-tabs button.is-active{background:var(--mb-blue-soft);box-shadow:none}.segmented-tabs button:before,.brand-lockup:before,.icon-button:before,.filter-tabs button:before{z-index:1;content:"";position:absolute;inset:-12px 0}.brand-lockup,.icon-button,.filter-tabs button{position:relative}.filter-tabs button{min-height:48px}.brand-lockup:before,.icon-button:before,.filter-tabs button:before{inset-block:-2px}.auth-page .form-stack{gap:38px;margin-top:8px}.auth-page .form-stack .primary-button{margin-top:0}.auth-page .field-control{border-radius:12px}.auth-page .field-control--code button{border-radius:0 11px 11px 0}.app-topbar--home .brand-lockup__logo{height:42px}.home-page .mb-quick-card__icon .icon{transform-origin:50%;transform:scale(1.14)translateY(-3px)}.home-page .mb-quick-card strong{color:#001039;transform:translateY(-6px)}.welcome-card strong{color:#001039}.mobile-app--profile .app-topbar{min-height:66px}.mobile-app--profile .app-main{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.mobile-app--profile .bottom-nav{border-width:1px 0 0;border-radius:0;width:100%;min-height:72px;padding:3px 10px;bottom:0;box-shadow:0 -4px 18px #0a225709}.mobile-app--profile .bottom-nav__item{min-height:64px}.profile-card{padding:15px 18px}.profile-details{margin-top:-2px}.profile-details dl>div{grid-template-columns:83px minmax(0,1fr);min-height:62px}.profile-details input,.profile-details #profile-employee-number{min-height:48px}.profile-details #profile-employee-number{background:var(--mb-card-soft);border-radius:10px;width:100%;padding:0 10px}.profile-details>.section-caption{margin-top:-15px}.profile-details>.primary-button{margin:-4px 0 4px}.mobile-app--section:has(.booking-page) .app-topbar{min-height:64px}.mobile-app--section .booking-page{gap:26px;padding-top:24px}.booking-page .booking-section:first-of-type{min-height:80px;margin-top:2px}.booking-page .booking-next{min-height:55px;margin-top:11px}.booking-page .booking-next:disabled{opacity:.23}.mobile-app--section:has(.booking-page) .bottom-nav{min-height:88px}.mobile-app--section:has(.booking-page) .bottom-nav__item{min-height:80px}.appointments-page .eyebrow{font-size:12px}@media (width>=400px){.mobile-app--section .appointments-page{padding-top:12px;gap:16px;padding-inline:20px}.appointments-page .appointment-list{margin-top:1px}}.empty-state>a.primary-button{min-height:48px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-enter{0%{opacity:0;transform:translateY(22px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=374px){.page{padding-inline:13px}.home-page{padding-inline:16px}.app-topbar{padding-inline:12px}.brand-lockup__title{font-size:14px}.source-chip{padding-inline:9px;font-size:11px}.mb-quick-grid{gap:22px 12px}.mb-quick-card--large{min-height:206px}.choice-card{gap:9px;padding-inline:10px}.choice-card__icon{width:38px;height:38px}.time-options label{font-size:12px}.profile-details{padding-inline:13px}.profile-details dl>div{grid-template-columns:74px minmax(0,1fr)}.mobile-app--section:has(.booking-page) .app-topbar{min-height:61px}.mobile-app--section .booking-page{gap:34px;padding-top:21px}.booking-page .booking-section:first-of-type{margin-top:-8px}.booking-page .booking-next{margin-top:-9px}.mobile-app--section:has(.booking-page) .bottom-nav{min-height:84px}.mobile-app--section:has(.booking-page) .bottom-nav__item{min-height:76px}}@media (width<=399px) and (width>=375px){.mobile-app--section .appointments-page{gap:21px;padding-top:26px}.appointments-page .appointment-stats .surface{min-height:90px}.appointments-page .appointment-list{margin-top:-4px}.appointments-page .empty-state{min-height:275px;padding:40px 24px 28px}.mobile-app--section:has(.appointments-page) .bottom-nav{min-height:80px}.mobile-app--section:has(.appointments-page) .bottom-nav__item{min-height:72px}}@media (width>=700px){body{padding-block:22px}.mobile-app{border:1px solid var(--mb-line);min-height:calc(100vh - 44px);box-shadow:var(--mb-shadow-pop);border-radius:28px}.app-topbar{border-radius:28px 28px 0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.registration-intro{color:var(--mb-muted);margin:0 0 16px;font-size:13px;line-height:1.6}.text-link{color:var(--mb-blue);text-underline-offset:3px;font-weight:600;text-decoration:underline}.slot-date-strip{scrollbar-width:none;gap:8px;padding:4px 2px 12px;display:flex;overflow-x:auto}.slot-date-strip::-webkit-scrollbar{display:none}.slot-date-strip button{border:1px solid var(--mb-line);background:var(--mb-card);min-width:64px;min-height:58px;color:var(--mb-body);cursor:pointer;border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;padding:6px 10px;display:flex}.slot-date-strip button strong{font-size:14px}.slot-date-strip button span{color:var(--mb-muted);font-size:12px}.slot-date-strip button.is-active{border-color:var(--mb-blue);background:var(--mb-blue-soft);color:var(--mb-blue);box-shadow:var(--mb-shadow-btn)}.slot-card-list{gap:10px;display:grid}.slot-card{justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.slot-card__main{flex:1;min-width:0}.slot-card__top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.slot-card__top h3{margin:0;font-size:15px;line-height:1.35}.slot-card dl{gap:4px;margin:0;display:grid}.slot-card dl>div{align-items:center;gap:8px;display:flex}.slot-card dt{color:var(--mb-muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.slot-card dd{margin:0;font-size:13px}.slot-card .secondary-button{flex:none;min-width:96px}.report-overview dl{grid-template-columns:1fr 1fr;gap:12px;margin:0;display:grid}.report-overview dl>div{flex-direction:column;gap:4px;display:flex}.report-overview dt{color:var(--mb-muted);font-size:12px}.report-overview dd{margin:0;font-size:14px;font-weight:600}.report-gates,.report-stages{margin-top:20px}.report-gates h2,.report-stages h2{margin:0 0 10px;font-size:17px}.report-gate{border:1px solid var(--mb-line);background:var(--mb-card);border-radius:14px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 14px;display:flex}.report-gate span:first-child{flex:1;font-size:14px;font-weight:600}.report-gate small{color:var(--mb-muted);font-size:12px}.report-stage{margin-bottom:10px;overflow:hidden}.report-stage__header{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:12px 14px;display:flex}.report-stage__name{flex:1;font-size:15px;font-weight:600}.report-stage__score{color:var(--mb-blue);font-size:13px;font-weight:600}.report-stage__chevron,.report-item__chevron{color:var(--mb-muted);transition:transform .16s;display:inline-flex}.report-stage__header[aria-expanded=true] .report-stage__chevron,.report-item__summary[aria-expanded=true] .report-item__chevron{transform:rotate(90deg)}.report-item-list{margin:0;padding:0 6px 10px;list-style:none}.report-item__summary{border:0;border-top:1px solid var(--mb-divider);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:8px;width:100%;padding:9px 8px;display:flex}.report-item__name{flex:1;font-size:14px}.report-item__score{color:var(--mb-muted);font-size:12px}.report-item__detail{color:var(--mb-muted);padding:2px 8px 12px;font-size:13px;line-height:1.6}.evidence-list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.evidence-entry{border:1px dashed var(--mb-line-strong);background:var(--mb-card-soft);border-radius:12px;flex-direction:column;gap:6px;padding:10px;display:flex}.evidence-entry__meta{flex-direction:column;gap:2px;display:flex}.evidence-entry__meta strong{color:var(--mb-body);font-size:13px}.evidence-entry__meta small{color:var(--mb-muted);font-size:12px}.evidence-entry__view{border:1px solid var(--mb-line-strong);background:var(--mb-card);cursor:pointer;border-radius:10px;align-self:flex-start;min-height:34px;padding:4px 12px;font-size:13px}.evidence-entry__image{background:var(--mb-card);border-radius:10px;overflow:hidden}.evidence-entry__image img{object-fit:contain;cursor:zoom-in;width:100%;max-height:320px;display:block}.ai-advice{margin-top:20px;padding:16px}.ai-advice__heading p{color:var(--mb-muted);margin:6px 0 12px;font-size:12px;line-height:1.6}.ai-advice h2{margin:2px 0 0;font-size:17px}.ai-advice h3{margin:12px 0 6px;font-size:14px}.ai-advice ul{margin:0;padding-left:18px}.ai-advice li{margin-bottom:4px;font-size:13px;line-height:1.6}.archive-stats{grid-template-columns:1fr 1fr;gap:10px;display:grid}.archive-stats .surface{flex-direction:column;gap:6px;padding:14px;display:flex}.archive-stats span{color:var(--mb-muted);font-size:12px}.archive-stats strong{color:var(--mb-blue);font-size:20px}.archive-stats strong.archive-stats__small{color:var(--mb-body);word-break:break-all;font-size:14px}.certificate-card{padding:18px}.certificate-card__header{justify-content:space-between;align-items:center;gap:8px;display:flex}.certificate-card h2{margin:10px 0 14px;font-size:18px}.certificate-card dl{gap:10px;margin:0;display:grid}.certificate-card dl>div{border-bottom:1px solid var(--mb-divider);justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}.certificate-card dt{color:var(--mb-muted);font-size:13px}.certificate-card dd{text-align:right;margin:0;font-size:13px;font-weight:600}.certificate-card__qr{justify-content:center;margin-top:18px;display:flex}.certificate-qr{border:1px solid var(--mb-line);background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:14px;display:flex}.certificate-qr svg{width:168px;height:168px}.certificate-qr figcaption{color:var(--mb-muted);font-size:12px}.profile-quick-links{gap:10px;margin:14px 0;display:flex}.profile-quick-links .secondary-button{flex:1}.reservation-fact-card,.reschedule-comparison{padding:18px}.reservation-fact-card__top{justify-content:space-between;align-items:center;gap:12px;display:flex}.reservation-facts{gap:10px;margin:16px 0 0;display:grid}.reservation-facts>div{border-bottom:1px solid var(--mb-divider);justify-content:space-between;gap:16px;padding-bottom:9px;display:flex}.reservation-facts dt{color:var(--mb-muted);font-size:13px}.reservation-facts dd{text-align:right;margin:0;font-size:13px;font-weight:600}.reservation-fact-card__actions,.reschedule-submit{margin-top:16px}.reschedule-slots{gap:10px;margin-top:18px;display:grid}.reschedule-slots h2{margin:0;font-size:17px}.reschedule-slot{border:1px solid var(--mb-line);background:var(--mb-card);width:100%;color:var(--mb-body);text-align:left;border-radius:14px;gap:5px;padding:14px;display:grid}.reschedule-slot.is-selected{border-color:var(--mb-blue);box-shadow:0 0 0 2px color-mix(in srgb, var(--mb-blue) 18%, transparent)}.reschedule-slot:disabled{cursor:not-allowed;opacity:.55}.reschedule-slot span,.reschedule-current-fact{color:var(--mb-muted);font-size:13px}.reschedule-comparison{margin-top:16px}.reschedule-comparison>div{grid-template-columns:1fr 1fr;gap:10px;display:grid}.reschedule-comparison section{background:var(--mb-subtle);border-radius:12px;padding:12px}.reschedule-comparison h2,.reschedule-comparison h3,.reschedule-comparison p{margin:0 0 7px}.reschedule-current-fact{margin-top:12px}.reschedule-submit{width:100%}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--card:#0a1b3de6;--card-raised:#0f2552f0;--paper:#07122b;--paper-inset:#01091e9e;--line:#6aa8ff38;--line-strong:#6aa8ff61;--divider:#6aa8ff24;--glass-bar:#030b20d6;--ink:#f2f6ff;--body:#c2cfe8;--muted:#a9b8d6;--faint:#8fa3c7;--blue:#6aa8ff;--blue-fill:#1664ff;--blue-pressed:#0b4fd1;--blue-soft:#1664ff33;--blue-line:#6aa8ff73;--blue-ring:0 0 0 3px #3d8bff73;--blue-grad:linear-gradient(180deg, #1664ff 0%, #0b4fd1 100%);--blue-shadow:0 8px 22px #1664ff59;--sky:#5fd4f5;--sky-soft:#22c7f029;--indigo:#b4b7ff;--indigo-soft:#7c80ff33;--teal:#4fdcc2;--teal-soft:#19c6a729;--green:#34d399;--green-soft:#34d39929;--amber:#fbbf24;--amber-soft:#fbbf2429;--red:#ff8a8a;--red-fill:#c62a41;--red-soft:#ff6b6b29;--font-sans:var(--lt-font-cjk-mobile,system-ui, "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Noto Sans SC", sans-serif);--r-card:20px;--r-control:12px;--shadow-float:0 1px 2px #00041066;--shadow-card:0 14px 32px #0006186b, inset 0 1px 0 #96beff1a;--shadow-pop:0 24px 60px #00041099;--lt-page:var(--paper);--lt-card:var(--card);--lt-card-soft:var(--paper-inset);--lt-border:var(--line);--lt-border-strong:var(--line-strong);--lt-divider:var(--divider);--lt-text:var(--ink);--lt-text-body:var(--body);--lt-muted:var(--muted);--lt-brand-blue:var(--blue-fill);--lt-brand-blue-hover:#2f7bff;--lt-brand-blue-pressed:var(--blue-pressed);--lt-brand-blue-soft:var(--blue-soft);--lt-info:var(--blue);--lt-info-soft:var(--blue-soft);--lt-success:var(--green);--lt-success-soft:var(--green-soft);--lt-warning:var(--amber);--lt-warning-strong:var(--amber);--lt-warning-soft:var(--amber-soft);--lt-danger:var(--red);--lt-danger-soft:var(--red-soft);--lt-neutral-soft:var(--paper-inset);--lt-tech-blue:var(--blue);--lt-shadow-card:none;--lt-shadow-btn:none;--lt-shadow-pop:var(--shadow-pop);--lt-font:var(--font-sans);--mb-subtle:var(--paper-inset)}html{background:0 0}body{color:var(--body);font-family:var(--font-sans);font-feature-settings:"tnum" 1;text-rendering:optimizelegibility;background:#01060f}#root .mobile-app{color:var(--body);background:0 0}#root .icon{stroke-width:1.7px}#root .app-topbar,#root .app-topbar--home,#root .mobile-app--section .app-topbar,#root .mobile-app--profile .app-topbar{min-height:56px;padding:max(8px, env(safe-area-inset-top)) 20px 8px;border-bottom:1px solid var(--divider);-webkit-backdrop-filter:none;backdrop-filter:none;background:#030b20f5;justify-content:space-between;position:sticky;top:0}#root .mobile-app--section:has(.booking-page) .app-topbar{min-height:56px;padding:max(8px, env(safe-area-inset-top)) 20px 8px;border-bottom:1px solid var(--divider);-webkit-backdrop-filter:none;backdrop-filter:none;background:#030b20f5;justify-content:space-between;position:sticky;top:0}#root .brand-lockup,#root .app-topbar--home .brand-lockup{gap:12px;min-height:44px;transform:none}#root .brand-lockup__logo,#root .app-topbar--home .brand-lockup__logo{height:26px}#root .brand-lockup__divider,#root .app-topbar--home .brand-lockup__divider{background:var(--line-strong);height:16px}#root .brand-lockup__title,#root .app-topbar--home .brand-lockup__title{color:var(--ink);letter-spacing:.01em;font-size:15px;font-weight:600}#root .source-chip{border:1px solid var(--line);background:var(--paper-inset);min-height:28px;color:var(--muted);padding:0 10px;font-size:12px;font-weight:500}#root .source-chip--mock{background:var(--amber-soft);color:var(--amber);border-color:#fbbf2466}#root .app-main,#root .mobile-app--section .app-main,#root .mobile-app--profile .app-main{padding-bottom:calc(88px + env(safe-area-inset-bottom))}#root .mobile-app--standalone .app-main{padding-bottom:calc(32px + env(safe-area-inset-bottom))}#root .page,#root .mobile-app--section .page,#root .mobile-app--profile .page,#root .courses-page,#root .records-page,#root .reports-page,#root .mobile-app--section .appointments-page,#root .mobile-app--section .booking-page{gap:20px;padding:28px 20px 32px}#root .surface{border:1px solid var(--line);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-card)}#root .eyebrow,#root .appointments-page .eyebrow{color:var(--blue);letter-spacing:.06em;font-size:12px;font-weight:600}#root .page-heading{align-items:flex-start;gap:14px;min-height:0}#root .page-heading__copy{gap:6px}#root .page-heading h1{color:var(--ink);letter-spacing:.01em;text-shadow:0 2px 14px #0009;font-size:clamp(24px,6.8vw,28px);font-weight:700;line-height:1.25}#root .page-heading p{color:var(--body);text-shadow:0 1px 8px #000000b3;font-size:14px;line-height:1.65}#root .page-heading__back{margin-top:2px}#root .section-heading{min-height:24px}#root .section-heading h2{color:var(--ink);text-shadow:0 1px 10px #0009;font-size:17px;font-weight:600}#root .section-caption{color:var(--muted);font-size:12px}#root .primary-button,#root .secondary-button,#root .danger-button{border-radius:var(--r-control);min-height:50px;box-shadow:none;letter-spacing:.02em;font-size:16px;font-weight:600}#root .primary-button{background:var(--blue-grad);box-shadow:var(--blue-shadow);color:#fff;border:1px solid #6aa8ff73}#root .primary-button:hover{background:var(--blue-grad);filter:brightness(1.06)}#root .primary-button:active{background:var(--blue-pressed);box-shadow:none}#root .primary-button--light{border:1px solid var(--line-strong);box-shadow:none;color:var(--ink);background:#142c608c}#root .secondary-button{border:1px solid var(--line-strong);color:var(--ink);background:#142c608c}#root .secondary-button:active{background:#142c60cc}#root .secondary-button--glass{background:var(--blue-soft);color:var(--blue);border-color:#0000}#root .danger-button{border:1px solid var(--red-fill);background:var(--red-fill);color:#fff}#root .primary-button:disabled,#root .secondary-button:disabled,#root .danger-button:disabled,#root .booking-page .booking-next:disabled{opacity:.42;box-shadow:none}#root .icon-button{border:1px solid var(--line-strong);border-radius:var(--r-control);color:var(--ink);background:#142c608c}#root .text-link{color:var(--blue);font-weight:600}#root .status-badge{letter-spacing:.02em;min-height:24px;padding:0 10px;font-size:13px;font-weight:500}#root .status-badge--info{background:var(--blue-soft);color:#80b6ff;border:1px solid #6aa8ff5c}#root .status-badge--success{background:var(--green-soft);color:var(--green);border:1px solid #34d39952}#root .status-badge--warning{background:var(--amber-soft);color:var(--amber);border:1px solid #fbbf2452}#root .status-badge--danger{background:var(--red-soft);color:var(--red);border:1px solid #ff6b6b57}#root .status-badge--neutral{color:var(--muted);background:#8fa3c729;border:1px solid #8fa3c747}#root .inline-notice{background:#0d224ee6;border:1px solid #6aa8ff4d;border-radius:14px;gap:10px;min-height:0;padding:14px 16px}#root .inline-notice .icon{color:var(--blue)}#root .inline-notice p{color:var(--body);font-size:13.5px;line-height:1.65}#root .inline-notice--success{background:#0b2c34eb;border-color:#34d39957}#root .inline-notice--success .icon{color:var(--green)}#root .inline-notice--warning{background:#2e2616eb;border-color:#fbbf2461}#root .inline-notice--warning .icon{color:var(--amber)}#root .field-error,#root .cancel-dialog__error{border-radius:var(--r-control);background:#3a121ee6;border-color:#ff6b6b66;color:var(--red)!important}#root .empty-state,#root .courses-page .empty-state,#root .records-page .empty-state,#root .reports-page .empty-state,#root .appointments-page .empty-state{align-content:center;gap:12px;min-height:240px;margin:0;padding:36px 24px;transform:none}#root .empty-state>span{background:var(--blue-soft);width:56px;height:56px;color:var(--blue)}#root .empty-state--illustrated>span{background:var(--blue-soft);border-radius:50%;width:72px;height:72px}#root .empty-state--illustrated>span .icon{filter:none;width:34px;height:34px}#root .empty-state h2{color:var(--ink);font-size:19px;font-weight:600}#root .empty-state p{color:var(--muted);font-size:13.5px}#root .empty-state>.primary-button,#root .empty-state>a.primary-button{min-height:44px;margin-top:8px;padding-inline:20px;font-size:15px}#root .field{color:var(--ink);gap:8px;font-size:14px;font-weight:500}#root .field-control,#root .auth-page .field-control{border:1px solid var(--line-strong);border-radius:var(--r-control);min-height:52px;color:var(--faint);background:#01091eb8;padding:0 14px}#root .field-control:focus-within{box-shadow:var(--blue-ring);color:var(--blue);background:#01091ed1;border-color:#6aa8fff2}#root .field-control input{color:var(--ink);font-size:16px}#root .field-control input::placeholder{color:var(--faint)}#root .field-control--code button,#root .auth-page .field-control--code button{border-left-color:var(--line);color:var(--blue);border-radius:0 11px 11px 0}#root .profile-details input{color:var(--ink);background:#01091eb8}#root .profile-details input:focus{box-shadow:var(--blue-ring);background:#01091ed1;border-color:#6aa8fff2}#root .segmented-tabs,#root .filter-tabs{border:1px solid var(--line);background:#01091eb8;border-radius:999px;gap:2px;padding:4px}#root .segmented-tabs button,#root .filter-tabs button{min-height:38px;box-shadow:none;color:var(--muted);background:0 0;border-radius:999px;padding:0 14px;font-size:14px;font-weight:500}#root .segmented-tabs button.is-active,#root .filter-tabs button.is-active{background:var(--blue-grad);color:#fff;font-weight:600;box-shadow:inset 0 1px #ffffff3d}#root .bottom-nav,#root .mobile-app--section .bottom-nav,#root .mobile-app--profile .bottom-nav{width:min(100%, var(--page-width));min-height:calc(62px + env(safe-area-inset-bottom));padding:6px 8px calc(6px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;background:#030b20f7;border-radius:0;gap:0;bottom:0;box-shadow:0 -10px 30px #00041073}#root .mobile-app--section:has(.booking-page) .bottom-nav{width:min(100%, var(--page-width));min-height:calc(62px + env(safe-area-inset-bottom));padding:6px 8px calc(6px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;background:#030b20f7;border-radius:0;gap:0;bottom:0;box-shadow:0 -10px 30px #00041073}#root .mobile-app--section:has(.appointments-page) .bottom-nav{width:min(100%, var(--page-width));min-height:calc(62px + env(safe-area-inset-bottom));padding:6px 8px calc(6px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;background:#030b20f7;border-radius:0;gap:0;bottom:0;box-shadow:0 -10px 30px #00041073}#root .bottom-nav__item,#root .mobile-app--section .bottom-nav__item,#root .mobile-app--profile .bottom-nav__item{min-height:50px;color:var(--muted);background:0 0;border-radius:12px;gap:4px;font-size:13px;font-weight:500}#root .mobile-app--section:has(.booking-page) .bottom-nav__item{min-height:50px;color:var(--muted);background:0 0;border-radius:12px;gap:4px;font-size:13px;font-weight:500}#root .mobile-app--section:has(.appointments-page) .bottom-nav__item{min-height:50px;color:var(--muted);background:0 0;border-radius:12px;gap:4px;font-size:13px;font-weight:500}#root .mobile-app .bottom-nav .bottom-nav__item.is-active{color:var(--blue);background:0 0;font-weight:600}#root .bottom-nav__item .icon{box-sizing:border-box;border-radius:999px;width:40px;height:28px;padding:3px 9px}#root .mobile-app .bottom-nav .bottom-nav__item.is-active .icon{color:#fff;background:#1664ff47}#root .auth-page{padding:max(56px, calc(env(safe-area-inset-top) + 40px)) 20px 32px;gap:32px}#root .mb-auth-brand{gap:12px}#root .mb-auth-brand__logo{height:30px}#root .mb-auth-brand__divider{background:var(--line-strong);height:18px}#root .mb-auth-brand__title{color:var(--ink);text-shadow:0 1px 10px #0009;font-size:16px;font-weight:600}#root .auth-card{border:1px solid var(--line-strong);background:var(--card);box-shadow:var(--shadow-card);border-radius:24px;padding:28px 22px 24px}#root .mb-auth-title{color:var(--ink);letter-spacing:.02em;margin-bottom:10px;font-size:30px;font-weight:700;line-height:1.2}#root .registration-intro{word-break:normal;line-break:strict;overflow-wrap:anywhere;max-width:320px;color:var(--muted);text-align:center;margin:0 auto 28px;font-size:14px;line-height:1.7}#root .auth-page .form-stack{gap:20px;margin-top:0}#root .auth-page .form-stack .primary-button{margin-top:8px}#root .auth-card>.inline-notice{background:0 0;border:0;justify-content:center;margin-top:22px;padding:0}#root .auth-card>.inline-notice p{color:var(--muted);font-size:12.5px}#root .auth-card>.inline-notice .icon{color:var(--faint)}#root .home-page{gap:16px;padding:24px 20px 32px}#root .welcome-card{background:radial-gradient(120% 140% at 100% 0,#22c7f047 0%,#22c7f000 55%),linear-gradient(135deg,#1664ff 0%,#0b4fd1 60%,#0a3a9e 100%);border:1px solid #6aa8ff73;border-radius:24px;gap:16px;min-height:112px;padding:20px;position:relative;overflow:hidden;transform:none;box-shadow:0 14px 32px #1664ff52,inset 0 1px #ffffff38}#root .welcome-card:before,#root .welcome-card:after{content:"";pointer-events:none;border-radius:50%;position:absolute}#root .welcome-card:before{background:radial-gradient(circle,#fff3 0%,#fff0 68%);width:190px;height:190px;top:-70px;right:-50px}#root .welcome-card:after{border:1px solid #ffffff38;width:110px;height:110px;bottom:-46px;right:26px}#root .welcome-card .avatar{z-index:1;width:52px;height:52px;box-shadow:none;color:#fff;background:#ffffff29;border:1px solid #ffffff73;border-radius:50%;font-size:21px;font-weight:600;position:relative}#root .welcome-card>div{z-index:1;gap:2px;position:relative}#root .welcome-card>div:before{color:#ffffffd1;content:"欢迎回来";letter-spacing:.08em;font-size:12px;font-weight:600}#root .welcome-card strong{color:#fff;letter-spacing:.01em;font-size:22px;font-weight:700;line-height:1.3}#root .welcome-card p{color:#ffffffdb;font-size:13.5px}#root .service-banner{border-color:var(--blue-line);background:radial-gradient(90% 120% at 100% 0%, #1664ff3d 0%, #1664ff00 60%), var(--card);grid-template-columns:minmax(0,1fr);gap:16px;min-height:0;padding:20px}#root .service-banner>div{gap:6px}#root .service-banner .status-badge{margin-top:2px}#root .service-banner h2{color:var(--ink);font-size:18px;font-weight:600;line-height:1.4}#root .service-banner p{color:var(--muted);font-size:13.5px}#root .service-banner__qr{border-radius:var(--r-control);background:var(--blue-grad);min-height:46px;box-shadow:var(--blue-shadow);color:#fff;border:1px solid #6aa8ff73;justify-content:center;justify-self:stretch;align-items:center;gap:8px;margin-top:10px;padding:0 16px;font-size:15px;font-weight:600;display:inline-flex}#root .mb-quick-grid{gap:12px}#root .mb-quick-card,#root .mb-quick-card--large{border:1px solid var(--line);background:var(--card);min-height:98px;box-shadow:var(--shadow-card);border-radius:18px;grid-column:span 2;gap:10px;margin:0;padding:16px 8px}#root .home-page .mb-quick-grid>.mb-quick-card:not(.mb-quick-card--large):nth-last-child(2),#root .home-page .mb-quick-grid>.mb-quick-card:not(.mb-quick-card--large):last-child{grid-column:span 2}#root .mb-quick-card:hover{border-color:var(--line-strong);transform:none}#root .mb-quick-card:active{background:var(--card-raised);transform:scale(.98)}#root .mb-quick-card__icon,#root .mb-quick-card--large .mb-quick-card__icon{background:var(--blue-soft);width:44px;height:44px;color:var(--blue);border-radius:14px;place-items:center;display:grid}#root .mb-quick-grid>.mb-quick-card:nth-child(2) .mb-quick-card__icon{background:var(--sky-soft);color:var(--sky)}#root .mb-quick-grid>.mb-quick-card:nth-child(3) .mb-quick-card__icon{background:var(--indigo-soft);color:var(--indigo)}#root .mb-quick-grid>.mb-quick-card:nth-child(4) .mb-quick-card__icon{background:var(--teal-soft);color:var(--teal)}#root .mb-quick-card .icon,#root .mb-quick-card--large .icon,#root .home-page .mb-quick-card__icon .icon{stroke-width:1.7px;width:24px;height:24px;transform:none}#root .mb-quick-card strong,#root .home-page .mb-quick-card strong{color:var(--ink);font-size:14px;font-weight:500;transform:none}#root .mb-quick-card--large{text-align:left;grid-column:span 3;align-content:space-between;place-items:start;gap:18px;min-height:120px;padding:18px}#root .mb-quick-card--large .mb-quick-card__icon{background:var(--blue-soft);border-radius:12px;place-items:center;width:40px;height:40px;display:grid}#root .mb-quick-card--large .icon,#root .home-page .mb-quick-card--large .mb-quick-card__icon .icon{stroke-width:1.8px;width:22px;height:22px}#root .mb-quick-card--large strong,#root .home-page .mb-quick-card--large strong{font-size:17px;font-weight:600}#root .mb-quick-card--large:first-child{background:var(--blue-grad);box-shadow:var(--blue-shadow);border-color:#6aa8ff80}#root .mb-quick-card--large:first-child:active{background:var(--blue-pressed)}#root .mb-quick-card--large:first-child .mb-quick-card__icon{color:#fff;background:#ffffff29}#root .mb-quick-card--large:first-child strong,#root .home-page .mb-quick-card--large:first-child strong{color:#fff}#root .profile-card{background:var(--card);padding:20px}#root .profile-avatar{background:var(--blue-soft);width:56px;height:56px;box-shadow:none;color:var(--blue);border:0;border-radius:50%;font-size:21px;font-weight:600}#root .profile-avatar span{border-width:2px;border-color:#0a1b3d}#root .profile-card__identity strong{color:var(--ink);font-size:21px;font-weight:700}#root .profile-details{margin-top:0;padding:4px 18px 16px}#root .profile-details dl>div{border-bottom-color:var(--divider);min-height:56px}#root .profile-details dt{color:var(--muted)}#root .profile-details dd{color:var(--ink);font-weight:500}#root .profile-details output{width:auto;min-height:44px;color:var(--ink);background:0 0;border-radius:0;padding:0;font-weight:500}#root .profile-details>.section-caption{margin-top:0}#root .profile-details>.primary-button{margin:8px 0 4px}#root .profile-password h2{color:var(--ink);font-size:17px;font-weight:600}#root .record-summary .surface,#root .appointment-stats .surface,#root .appointments-page .appointment-stats .surface{gap:4px;min-height:84px}#root .record-summary strong,#root .appointment-stats strong,#root .archive-stats strong{color:var(--blue);letter-spacing:-.01em;font-size:26px;font-weight:700}#root .archive-stats strong.archive-stats__small{color:var(--body);font-size:14px;font-weight:500}#root .record-summary span,#root .appointment-stats span,#root .archive-stats span{color:var(--muted);font-size:12px}#root .training-item{gap:14px;padding:18px}#root .training-item__index{background:var(--blue-soft);color:var(--blue);border-radius:12px;font-weight:600}#root .training-item h2,#root .training-item h3{color:var(--ink);font-size:16px;font-weight:600}#root .training-item dl>div,#root .training-item ul{background:var(--paper-inset);border-radius:12px}#root .training-item dt{color:var(--muted)}#root .training-item dd{color:var(--ink);font-weight:500}#root .booking-page .booking-section:first-of-type{min-height:0;margin-top:0}#root .booking-page .booking-next{min-height:52px;margin-top:4px}#root .booking-progress:before{background:var(--line-strong);height:1px;top:14px}#root .booking-progress li{color:var(--faint);gap:8px;font-size:12px}#root .booking-progress li>span{border:1px solid var(--line-strong);width:28px;height:28px;color:var(--muted);background:#0a1b3d;font-size:12px}#root .booking-progress li.is-active{color:var(--ink);font-weight:600}#root .booking-progress li.is-active>span{background:var(--blue-fill);color:#fff;border-color:#6aa8ff99;box-shadow:0 0 0 4px #1664ff38}#root .booking-progress li.is-complete{color:var(--body)}#root .booking-progress li.is-complete>span{border-color:var(--blue-line);background:var(--blue-soft);color:var(--blue)}#root .booking-section{gap:14px;padding:18px}#root .step-chip{background:var(--blue-soft);color:var(--blue);border-radius:8px;font-size:12px;font-weight:600}#root .choice-card,#root .classroom-list .choice-card{border:1px solid var(--line);background:var(--paper-inset);box-shadow:none;border-radius:16px;gap:12px;padding:14px}#root .choice-card:hover{border-color:var(--line-strong)}#root .choice-card.is-selected{background:#1664ff29;border-color:#6aa8ffe6;box-shadow:0 0 0 1px #6aa8ffe6}#root .choice-card__icon{background:var(--blue-soft);color:var(--blue);border-radius:12px}#root .choice-card.is-selected .choice-card__icon,#root .choice-card.is-selected .choice-card__check{border-color:var(--blue-fill);background:var(--blue-fill);color:#fff}#root .choice-card__copy strong{color:var(--ink);font-weight:600}#root .choice-card__copy small{color:var(--blue);font-weight:500}#root .choice-card__check{border:1.5px solid var(--line-strong)}#root .date-options label,#root .time-options label,#root .slot-date-strip button,#root .reschedule-slot{border:1px solid var(--line);background:var(--paper-inset);box-shadow:none;color:var(--body)}#root .date-options label{border-radius:14px}#root .time-options label{border-radius:var(--r-control);color:var(--body);font-weight:500}#root .date-options label.is-selected{background:var(--blue-fill);box-shadow:none;color:#fff;border-color:#6aa8ff99}#root .time-options label.is-selected,#root .slot-date-strip button.is-active{box-shadow:none;color:#fff;background:#1664ff3d;border-color:#6aa8ffe6;font-weight:600}#root .slot-date-strip button{border-radius:14px}#root .slot-card{padding:16px}#root .slot-card .secondary-button{min-width:88px;min-height:40px;padding:0 16px;font-size:14px}#root .slot-card__top h3{color:var(--ink);font-weight:600}#root .capacity-chip{background:var(--green-soft);color:var(--green);font-weight:600}#root .capacity-chip.is-full{color:var(--muted);background:#8fa3c729}#root .remaining-banner{background:#0b2c34eb;border:1px solid #34d39957;border-radius:16px}#root .remaining-banner>span{background:var(--green-soft);color:var(--green);border-radius:12px}#root .remaining-banner small{color:var(--muted)}#root .remaining-banner strong{color:var(--green);font-weight:600}#root .remaining-banner.is-full{background:#3a121ee6;border-color:#ff6b6b61}#root .remaining-banner.is-full>span{background:var(--red-soft);color:var(--red)}#root .remaining-banner.is-full strong{color:var(--red)}#root .confirm-summary__course{border-bottom:1px solid var(--divider);background:0 0;gap:14px;padding:20px 18px}#root .confirm-summary__course>span{background:var(--blue-soft);box-shadow:none;color:var(--blue);border-radius:14px}#root .confirm-summary__course small{color:var(--blue);letter-spacing:.04em;font-weight:600}#root .confirm-summary__course h2{color:var(--ink);font-size:18px;font-weight:600}#root .confirm-summary dt,#root .ticket-details dt{color:var(--muted)}#root .confirm-summary dd,#root .ticket-details dd{color:var(--ink);font-weight:500}#root .confirm-summary dt .icon{color:var(--muted)}#root .success-hero{border:1px solid var(--line);border-radius:var(--r-card);background:radial-gradient(80% 90% at 50% 0%, #34d3992e 0%, #34d39900 70%), var(--card);min-height:0;box-shadow:var(--shadow-card);color:var(--ink);gap:8px;padding:36px 24px 30px}#root .success-hero__rings{border-color:#34d3992e;box-shadow:0 0 0 22px #34d3990f,0 0 0 44px #34d39908}#root .success-hero__icon{background:var(--green-soft);color:var(--green);border:0}#root .success-hero h1{color:var(--ink);letter-spacing:.01em;font-size:26px;font-weight:700}#root .success-hero p{color:var(--muted);font-size:13.5px}#root .reservation-ticket__number{border-bottom:1px dashed var(--line-strong)}#root .reservation-ticket__number strong{color:var(--ink);letter-spacing:.04em;font-weight:600}#root .reservation-qr__frame,#root .certificate-qr{border-radius:var(--r-card);background:#fff;border:1px solid #ffffffd9;box-shadow:0 0 0 6px #ffffff0f,0 12px 32px #00041073}#root .reservation-qr{color:var(--body)}#root .reservation-qr__slot{color:var(--ink);font-weight:600}#root .reservation-qr figcaption{color:var(--ink);font-weight:500}#root .reservation-qr p,#root .reservation-qr small{color:var(--muted)}#root .reservation-qr>.reservation-qr__hint{color:var(--amber)}#root .reservation-qr>.reservation-qr__notice{background:var(--amber-soft);color:var(--amber)}#root .reservation-qr>button,#root .appointment-card__actions button{border:1px solid var(--line-strong);border-radius:var(--r-control);color:var(--ink);background:#142c608c;font-weight:500}#root .appointment-card{gap:12px;padding:18px}#root .appointment-card:before{display:none}#root .appointment-card h2{color:var(--ink);font-size:17px;font-weight:600}#root .appointment-card dl{background:var(--paper-inset);border-radius:12px}#root .appointment-card dt,#root .appointment-card dt .icon{color:var(--muted)}#root .appointment-card dd{color:var(--ink);font-weight:500}#root .appointment-card__actions>a,#root .appointment-card__actions>button,#root .appointment-card__actions .secondary-button,#root .appointment-card__actions .primary-button{letter-spacing:.01em;min-height:44px;padding:0 12px;font-size:14px;font-weight:500}#root .appointment-card__cancel{border-radius:var(--r-control);color:var(--red);background:0 0;border:1px solid #ff6b6b80;font-weight:500}#root .dialog-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#01060fa8}#root .cancel-dialog{border:1px solid var(--line-strong);box-shadow:var(--shadow-pop);background:#071028f7;border-radius:24px;gap:12px;padding:26px 22px 22px}#root .cancel-dialog__icon{background:var(--red-soft);color:var(--red);border-radius:50%}#root .cancel-dialog h2{color:var(--ink);font-size:20px;font-weight:700}#root .cancel-dialog p{color:var(--muted)}#root .cancel-dialog>strong{border-radius:var(--r-control);background:var(--paper-inset);color:var(--ink)}#root .today-sessions{gap:12px;display:grid}#root .today-sessions__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}#root .today-sessions__head h2{color:var(--ink);text-shadow:0 1px 10px #0009;font-size:17px;font-weight:600}#root .today-sessions__head p{color:var(--body);text-shadow:0 1px 8px #000000b3;font-size:13px}#root .today-sessions__list{gap:12px;margin:0;padding:0;list-style:none;display:grid}#root .today-slot{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"time main badge""action action action";align-items:center;gap:12px 14px;padding:16px;display:grid}#root .today-slot__time{background:var(--blue-soft);min-width:76px;color:var(--blue);border:1px solid #6aa8ff52;border-radius:14px;grid-area:time;justify-items:center;gap:2px;padding:10px 8px;display:grid}#root .today-slot__time span{font-size:12px;font-weight:600}#root .today-slot__time strong{letter-spacing:-.01em;white-space:nowrap;font-size:15px;font-weight:600}#root .today-slot__main{grid-area:main;gap:6px;min-width:0;display:grid}#root .today-slot__main h3{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:16px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}#root .today-slot__meta{color:var(--muted);flex-wrap:wrap;gap:4px 12px;font-size:12.5px;display:flex}#root .today-slot__meta span{align-items:center;gap:4px;display:inline-flex}#root .today-slot>.status-badge{grid-area:badge;align-self:start}#root .today-slot__book,#root .today-slot__note{grid-area:action}#root .today-slot__book{width:100%;min-height:44px;font-size:15px}#root .today-slot__note{color:var(--faint);text-align:right;font-size:12.5px}#root .today-slot--ended,#root .today-slot--full,#root .today-slot--closed{box-shadow:none}#root .today-slot--ended .today-slot__time,#root .today-slot--full .today-slot__time,#root .today-slot--closed .today-slot__time{border-color:var(--line);background:var(--paper-inset);color:var(--muted)}#root .today-slot--ended .today-slot__main h3{color:var(--muted)}#root .report-overview{gap:2px;padding:18px;display:grid}#root .report-overview dl{gap:14px 12px;margin-top:4px}#root .report-overview dt{color:var(--muted)}#root .report-gate,#root .evidence-entry{border-radius:14px}#root .report-gate{border-color:var(--line);background:var(--card)}#root .report-stage__name,#root .report-gate span:first-child{color:var(--ink);font-weight:600}#root .report-stage__score{color:var(--blue);font-weight:600}#root .report-gates h2,#root .report-stages h2,#root .ai-advice h2,#root .reschedule-slots h2{color:var(--ink);text-shadow:0 1px 10px #0009;font-size:17px;font-weight:600}#root .ai-advice__toggle{color:var(--blue);background:0 0;border:0;justify-self:start;align-items:center;gap:4px;padding:0;font-size:14px;font-weight:600;display:inline-flex}#root .ai-advice__toggle[aria-expanded=true] .icon{transform:rotate(90deg)}#root .report-stage-list p,#root .report-stages>p{color:var(--body);text-shadow:0 1px 8px #000000bf}#root .evidence-entry{border:1px solid var(--line);background:var(--paper-inset)}#root .evidence-entry__view{color:var(--ink);border-radius:10px}#root .certificate-card h2{color:var(--ink);font-weight:600}#root .certificate-card dd,#root .reservation-facts dd,#root .report-overview dd{color:var(--ink);font-weight:500}#root .reservation-facts dt{color:var(--muted)}#root .reschedule-slot{border-radius:16px}#root .reschedule-slot.is-selected{background:#1664ff29;border-color:#6aa8ffe6;box-shadow:0 0 0 1px #6aa8ffe6}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}#root .mobile-app{overflow-x:clip}#root .page,#root .home-page,#root .booking-section,#root .slot-card-list,#root .today-sessions,#root .today-sessions__list{grid-template-columns:minmax(0,1fr)}#root .booking-section>*,#root .slot-daypart-picker,#root .slot-daypart-picker>*{min-width:0}#root .slot-date-strip{overscroll-behavior-x:contain;scroll-snap-type:x proximity;max-width:100%;scroll-padding-inline:2px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}#root .slot-date-strip button{scroll-snap-align:start}#root .slot-date-strip button:last-child{margin-right:24px}#root .choice-card__copy small,#root .slot-card dd,#root .today-slot__meta span{overflow-wrap:anywhere}#root .ticket-details dd,#root .appointment-card dd,#root .appointment-card__code,#root .profile-details dd,#root .profile-details output{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}@media (width<=400px){#root .source-chip{justify-content:center;gap:0;width:32px;min-height:32px;padding:0;font-size:0}}@media (width<=374px){#root .page,#root .home-page,#root .mobile-app--section .booking-page,#root .mobile-app--section .appointments-page,#root .app-topbar{padding-inline:16px}#root .mb-auth-title{font-size:26px}}@media (width>=700px){#root .mobile-app{border:1px solid var(--line);background:#01060f59;border-radius:28px;box-shadow:0 30px 80px #00041080}}#root .home-page .mb-quick-grid>.mb-quick-card.mb-quick-card--wide:not(.mb-quick-card--large){text-align:left;grid-column:1/-1;justify-content:flex-start;align-items:center;gap:14px;min-height:76px;padding:16px 18px;display:flex}#root .mb-quick-card--wide .mb-quick-card__icon{background:var(--green-soft);color:var(--green);flex:none}#root .mb-quick-card__text{flex:1;gap:2px;min-width:0;display:grid}#root .mb-quick-card__text small{color:var(--muted);font-size:12.5px;line-height:1.5}#root .home-page .mb-quick-grid>.mb-quick-card--wide>.icon{width:18px;height:18px;color:var(--faint);flex:none}#root .profile-link-card{color:var(--ink);align-items:center;gap:14px;padding:16px 18px;display:flex}#root .profile-link-card__icon{background:var(--green-soft);width:44px;height:44px;color:var(--green);border-radius:14px;flex:none;place-items:center;display:grid}#root .profile-link-card__text{flex:1;gap:2px;min-width:0;display:grid}#root .profile-link-card__text strong{font-size:15px;font-weight:600}#root .profile-link-card__text small{color:var(--muted);font-size:12.5px}#root .profile-link-card>.icon{color:var(--faint);flex:none}#root .progress-summary,#root .progress-chart-card,#root .progress-stages,#root .progress-session,#root .advice-card{gap:12px;padding:18px;display:grid}#root .progress-summary__trend{color:var(--ink);align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}#root .progress-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 10px;margin:0;display:grid}#root .progress-stats>div{border:1px solid var(--divider);background:var(--paper-inset);border-radius:14px;gap:4px;padding:10px 10px 12px;display:grid}#root .progress-stats dt{color:var(--muted);font-size:12px;line-height:1.4}#root .progress-stats dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:22px;font-weight:650}#root .progress-stats dd small{color:var(--muted);font-size:12px;font-weight:500}#root .progress-chart{width:100%;height:auto;display:block}#root .progress-chart__grid{stroke:var(--line);stroke-width:1px}#root .progress-chart__axis{fill:var(--muted);font-size:12px}#root .progress-chart__line{fill:none;stroke:var(--blue);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}#root .progress-chart__dot{fill:#0a1b3d;stroke:var(--blue);stroke-width:2.5px}#root .progress-chart__value{fill:var(--ink);font-size:12px;font-weight:650}#root .progress-stages ul,#root .progress-frequent,#root .progress-stage-chips{gap:8px;margin:0;padding:0;list-style:none;display:grid}#root .progress-stages li{background:var(--paper-inset);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:10px 12px;display:flex}#root .progress-stages li>span:first-child{color:var(--body);flex:1;font-size:14px}#root .progress-stages li strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:14px}#root .progress-stages li small{color:var(--muted);font-weight:500}#root .progress-stages h3{color:var(--ink);margin:6px 0 0;font-size:15px;font-weight:600}#root .progress-frequent{counter-reset:frequent}#root .progress-frequent li{counter-increment:frequent;gap:2px;padding-left:30px;display:grid;position:relative}#root .progress-frequent li:before{background:var(--amber-soft);width:22px;height:22px;color:var(--amber);content:counter(frequent);border-radius:50%;place-items:center;font-size:12px;font-weight:650;display:grid;position:absolute;top:1px;left:0}#root .progress-frequent strong{color:var(--ink);font-size:14px;font-weight:600}#root .progress-frequent span{color:var(--muted);font-size:12.5px}#root .progress-session-list{gap:14px;display:grid}#root .progress-session__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}#root .progress-session__head>div:first-child{gap:2px;min-width:0;display:grid}#root .progress-session__head h3{color:var(--ink);margin:0;font-size:17px;font-weight:600}#root .progress-session__head p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12.5px}#root .progress-session__score{flex:none;justify-items:end;gap:4px;display:grid}#root .progress-session__score strong{color:var(--blue);font-variant-numeric:tabular-nums;font-size:32px;font-weight:700;line-height:1}#root .progress-session__score>span{color:var(--muted);font-size:12px}#root .progress-stage-chips{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}#root .progress-stage-chips li{background:var(--paper-inset);border-radius:12px;gap:2px;padding:8px 10px;display:grid}#root .progress-stage-chips span{color:var(--muted);font-size:12px}#root .progress-stage-chips strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:14px}#root .progress-session__meta{color:var(--body);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:13px;display:flex}#root .progress-session__toggle{color:var(--blue);background:0 0;border:0;justify-self:start;align-items:center;gap:4px;padding:0;font-size:14px;font-weight:600;display:inline-flex}#root .progress-session__toggle[aria-expanded=true] .icon{transform:rotate(90deg)}#root .advice-card__heading{gap:4px;display:grid}#root .advice-card__heading h2{color:var(--ink);margin:0;font-size:17px;font-weight:600}#root .advice-card__heading p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.6}#root .advice-block{gap:10px;display:grid}#root .advice-block__summary{background:var(--blue-soft);color:var(--ink);border:1px solid #6aa8ff4d;border-radius:14px;margin:0;padding:12px 14px;font-size:14px;font-weight:600;line-height:1.6}#root .advice-list{gap:8px;margin:0;padding-left:20px;display:grid}#root .advice-list__item{color:var(--body);font-size:13.5px;line-height:1.65}#root .advice-list__item--gate{color:var(--red);font-weight:600}#root .advice-tag{background:var(--amber-soft);color:var(--amber);vertical-align:1px;border-radius:999px;margin-right:6px;padding:0 7px;font-size:11.5px;font-weight:600;line-height:20px;display:inline-block}#root .advice-change{margin:0;font-size:13px;line-height:1.6}#root .advice-change--up{color:var(--green)}#root .advice-change--down{color:var(--red)}#root .progress-series{gap:10px;display:grid}#root .progress-series+.progress-series{border-top:1px solid var(--divider);padding-top:14px}#root .progress-series__note{color:var(--amber)}#root .progress-chart__line--practice{stroke:var(--amber);stroke-width:2px;stroke-dasharray:6 5}#root .progress-chart__dot--practice{stroke:var(--amber)}#root .progress-legend{color:var(--muted);flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}#root .progress-legend li{align-items:center;gap:6px;display:inline-flex}#root .progress-legend__swatch{border-top:3px solid var(--blue);width:22px;height:0}#root .progress-legend__swatch--practice{border-top:3px dashed var(--amber)}#root .progress-filter{flex-wrap:wrap;gap:8px;display:flex}#root .progress-filter__button{border:1px solid var(--divider);background:var(--paper-inset);color:var(--body);border-radius:999px;padding:6px 14px;font-size:13px}#root .progress-filter__button[aria-pressed=true]{background:var(--blue-soft);color:var(--ink);border-color:#6aa8ff8c;font-weight:600}#root .progress-session--practice{border-left:3px solid var(--amber)}#root .progress-session--practice .progress-session__score strong{color:var(--amber)}#root .progress-session__kind{margin:0}#root .advice-block__source{color:var(--blue);margin:0;font-size:12px;font-weight:600}#root .advice-block__source--practice{color:var(--amber)}#root .mobile-app--stage{--card:#0a1b3dd6}#root .section-tabs{border-bottom:1px solid var(--divider);-webkit-backdrop-filter:none;backdrop-filter:none;background:#030b20f0;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0 12px;display:grid}#root .section-tabs a{min-width:0;min-height:46px;color:var(--muted);white-space:nowrap;justify-content:center;align-items:center;padding:0 6px;font-size:15px;font-weight:500;text-decoration:none;display:flex;position:relative}#root .section-tabs a[aria-current=page]{color:#fff;font-weight:600}#root .section-tabs a[aria-current=page]:after{content:"";background:linear-gradient(90deg,#6aa8ff,#1664ff);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:24%;right:24%}#root .section-tabs a:focus-visible{outline-offset:-2px;outline:2px solid #6aa8fff2}@media (width<=374px){#root .section-tabs a{font-size:14px}}#root .appointment-reschedule-page .reservation-fact-card h2{overflow-wrap:anywhere;font-size:18px;line-height:1.4}#root .home-page .mb-quick-grid>.mb-quick-card.mb-quick-card--primary{text-align:left;grid-column:1/-1;justify-content:flex-start;align-items:center;gap:14px;min-height:84px;margin:0;padding:18px;display:flex}#root .home-page .mb-quick-card--primary .mb-quick-card__icon{flex:none;width:46px;height:46px}#root .home-page .mb-quick-card--primary .mb-quick-card__text small{color:#ffffffd1}#root .home-page .mb-quick-grid>.mb-quick-card--primary>.icon{color:#ffffffdb;flex:none;width:18px;height:18px}#root .report-overview__score dd{color:var(--ink);font-size:28px;font-weight:700;line-height:1.2}#root .report-overview__result dd{color:var(--ink);font-size:20px;font-weight:600;line-height:1.4}#root .training-item .training-item__note{color:var(--amber);margin-top:8px;font-size:13px}#root .records-page .training-item,#root .reports-page .training-item{grid-template-columns:minmax(0,1fr)}#root .network-banner{z-index:20;color:#ffe2ad;text-align:center;background:#402604f0;border:1px solid #ffc45c73;border-radius:12px;margin:0 0 12px;padding:10px 14px;font-size:14px;font-weight:600;line-height:1.5;position:sticky;top:0}#root .report-audio-evidence__size{color:var(--muted);margin-top:2px;font-size:13px;display:block}#root .auth-card button.text-link{min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;justify-self:center;padding:8px 0;font-weight:600}#root .field>label{color:inherit}#root .field-control--password{grid-template-columns:auto minmax(0,1fr) auto;padding-right:4px}#root .password-toggle{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;padding:0;display:inline-grid}#root .password-toggle[aria-pressed=true]{color:var(--blue)}#root .password-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}#root .logout-confirm{gap:12px;display:grid}#root .logout-confirm p{color:var(--ink);margin:0}#root .logout-confirm__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}#root .records-load-more{justify-items:center;gap:8px;padding:4px 0 8px;display:grid}#root .booking-courses-empty{text-align:center;justify-items:center;gap:10px;padding:18px 8px;display:grid}#root .home-reminders{gap:10px;display:grid}#root .home-reminder{border:1px solid var(--line);border-radius:var(--r-control);background:var(--card);grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px 14px;display:grid}#root .home-reminder--info{border-left:4px solid var(--blue)}#root .home-reminder--success{border-left:4px solid var(--green)}#root .home-reminder--warning{border-left:4px solid var(--amber)}#root .home-reminder p{color:var(--body);margin:0;font-size:15px;line-height:1.5}#root .home-reminder strong{color:var(--ink)}#root .home-reminder__icon{color:var(--blue)}#root .home-reminder__links{flex-wrap:wrap;gap:14px;margin-top:6px;display:flex}#root .home-reminder__links a{min-height:36px;color:var(--blue);align-items:center;font-weight:600;display:inline-flex}#root .bottom-nav__item{position:relative}#root .bottom-nav__dot{background:var(--red-fill);border-radius:50%;width:9px;height:9px;position:absolute;top:6px;right:calc(50% - 18px);box-shadow:0 0 0 2px #030b20f7}#root .skeleton-list{gap:12px;display:grid}#root .skeleton-card{border:1px solid var(--line);border-radius:var(--r-card);background:var(--card);gap:10px;padding:18px;display:grid}#root .skeleton-line{background:linear-gradient(90deg,#6aa8ff1a 0%,#6aa8ff38 50%,#6aa8ff1a 100%) 0 0/200% 100%;border-radius:7px;height:14px;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}#root .skeleton-line--short{width:38%}#root .skeleton-line--mid{width:72%}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){#root .skeleton-line{animation:none}}html[data-font-scale=large] #root .app-main{zoom:1.25}#root .font-scale-setting__row{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}#root .font-scale-setting__row span{gap:2px;display:grid}#root .font-scale-setting__row small{color:var(--muted);font-size:13px}#root .font-scale-setting__row input{width:48px;height:28px;accent-color:var(--blue-fill)}
