:root{--lumo-primary-color: #7054dc;--lumo-primary-color-10pct: rgba(112,84,220,.1);--lumo-primary-color-50pct: rgba(112,84,220,.5);--lumo-primary-text-color: #6446ce;--lumo-base-color: #fff;--lumo-body-text-color: #272637;--lumo-header-text-color: #202030;--lumo-secondary-text-color: #747386;--lumo-font-family: 'Segoe UI',sans-serif;--lumo-font-size-m: 15px;--lumo-border-radius-m: 10px;--lumo-border-radius-l: 18px;--lumo-contrast-5pct: #f5f4f9;--lumo-contrast-10pct: #eeedf4;--lumo-contrast-20pct: #dddae8}*{box-sizing: border-box}html{background: #f7f7fb}body{display: flow-root;min-height: 100vh;margin: 0;background: #f7f7fb}a{text-decoration: none}a:hover{text-decoration: underline}vaadin-app-layout{background: #f7f7fb}vaadin-app-layout::part(navbar){border-bottom: 1px solid #eae9f1;background: #fff}.navigation{max-width: 1200px;margin: auto;padding: 17px 36px;gap: 36px;background: #fff}.brand,.brand-wordmark{font-size: 22px;font-weight: 750;letter-spacing: -.6px;line-height: 34px;color: #272637;white-space: nowrap}.brand{display: inline-flex;align-items: center;flex-shrink: 0}.brand-accent{color: #6446ce}.brand:hover{text-decoration: none}.nav-links{margin-left: auto;gap: 20px;align-items: center;flex-wrap: wrap}.nav-links a{color: #747386;font-size: 14px;font-weight: 600;padding: 8px 0}.nav-links a[highlight]{color: #6446ce}.navigation vaadin-button{color: #747386;font-size: 14px}.page{width: 100%;max-width: 1200px;margin: 0 auto;padding: 48px 36px 60px;gap: 22px}.page h1{font-size: clamp(34px,4vw,52px);font-weight: 750;line-height: 1.13;letter-spacing: -1.8px;white-space: pre-line;margin: 0;max-width: 800px}.page h2{font-size: 24px;line-height: 1.3;font-weight: 700;letter-spacing: -.6px;margin: 0}.page h3{font-size: 18px;line-height: 1.4;letter-spacing: -.3px;margin: 0}.page p{color: #747386;font-size: 15px;line-height: 1.75;max-width: 760px;margin: 0}.eyebrow{color: #7054dc;font-size: 10px;font-weight: 750;letter-spacing: 1.6px;line-height: 1.6}.hero{display: grid;grid-template-columns: 1.3fr 1fr;gap: 40px;width: 100%;padding: 12px 0 38px;align-items: center}.hero-copy{display: flex;flex-direction: column;gap: 22px}.hero-copy p{max-width: 470px;font-size: 16px}.hero-preview{position: relative;isolation: isolate;display: flex;flex-direction: column;gap: 18px;padding: 28px;margin: 0 8px;border: 1px solid #e4e0f3;border-radius: 20px;background: #fff;box-shadow: 0 16px 48px #4935840c;transform: rotate(2deg)}.hero-preview{box-shadow: 10px 10px 0 #eeebfa,0 16px 48px #4935840c}.hero-preview>span:last-child{color: #8c899e;font-size: 12px}.page .hero-preview pre{margin: 0;padding: 18px;font-size: 12px;background: #f6f5fa;color: #625287;line-height: 1.9}.preview-answer{display: flex;gap: 10px;align-items: center;border: 1px solid #d6ebdf;border-radius: 10px;background: #f2faf5;color: #347354;padding: 12px 14px;font-size: 12px}.preview-answer>span:first-child{font-weight: 800}.practice-steps{display: flex;flex-direction: column;gap: 12px;padding: 18px;background: #f6f5fa;border-radius: 14px}.practice-steps p{font-size: 14px;color: #625287}.section-heading{display: flex;flex-direction: column;gap: 6px}.section-heading h2{font-size: 22px}.section-heading p{font-size: 14px}.selectors{gap: 16px;width: 100%;padding: 4px 0 6px}.track-picker{display: flex;align-items: center;justify-content: space-between;gap: 16px;padding: 18px 20px;background: #fff;border: 1px solid #e2dfed;border-radius: 14px}.track-picker-summary{display: flex;flex-direction: column;gap: 6px;min-width: 0}.track-picker-label{color: #747386;font-size: 13px}.track-picker-value{color: #514a6a;font-weight: 600;overflow-wrap: anywhere}.track-picker>vaadin-button{flex-shrink: 0}.track-catalog-dialog::part(overlay){max-height: 100dvh}.track-catalog-dialog::part(content){overflow: hidden}.track-catalog-content{display: flex;flex-direction: column;gap: 12px;min-width: 0}.track-catalog-count{color: #747386;font-size: 13px}.track-catalog-body{display: grid;grid-template-columns: 210px minmax(0,1fr);gap: 20px;height: min(440px,55dvh)}.track-catalog-categories,.track-catalog-results{display: flex;flex-direction: column;gap: 8px;overflow-y: auto;min-width: 0;padding: 3px}.track-catalog-category{flex-shrink: 0;margin: 0;text-align: left;justify-content: flex-start;padding: 0 12px;background: transparent;font-size: 14px}.track-catalog-category[aria-pressed='true'],.track-catalog-option[aria-pressed='true']{background: #eeebfa;color: #6446ce}.track-catalog-option{flex-shrink: 0;display: flex;justify-content: space-between;height: auto;min-height: 74px;width: 100%;margin: 0;padding: 14px 16px;border: 1px solid #e2dfed;background: #fff;white-space: normal;text-align: left}.track-catalog-option::part(label){display: flex;align-items: center;justify-content: space-between;width: 100%;gap: 16px}.track-catalog-option-text{display: flex;flex-direction: column;gap: 4px;min-width: 0}.track-catalog-name{overflow-wrap: anywhere}.track-catalog-path{font-size: 12px;color: #747386;font-weight: 400}.track-catalog-mobile-category{display: none}@media (max-width: 600px){.track-picker{padding: 14px;gap: 10px}.track-picker>vaadin-button{padding: 0 12px}.track-catalog-dialog{--vaadin-overlay-viewport-top: 0px;--vaadin-overlay-viewport-bottom: 0px}.track-catalog-dialog::part(overlay){width: 100vw;height: 100dvh;max-width: 100vw;max-height: 100dvh;margin: 0;border-radius: 0}.track-catalog-dialog::part(content){display: flex;flex-direction: column}.track-catalog-content{flex: 1;min-height: 0}.track-catalog-body{display: flex;flex: 1;height: auto;min-height: 0}.track-catalog-results{width: 100%}.track-catalog-categories{display: none}.track-catalog-mobile-category{display: inline-flex}}.page .selected-track-path{color: #514a6a;font-weight: 600}.selectors vaadin-combo-box{width: 240px}vaadin-combo-box::part(input-field),vaadin-email-field::part(input-field),vaadin-password-field::part(input-field){background: #fff;border: 1px solid #e2dfed;box-shadow: 0 2px 3px #24203303}vaadin-combo-box::part(label),vaadin-email-field::part(label),vaadin-password-field::part(label){color: #5d5b70;font-size: 13px;font-weight: 600}vaadin-button{cursor: pointer;min-height: 42px;height: auto;max-width: 100%;flex-shrink: 0;white-space: normal;overflow-wrap: anywhere;line-height: 1.4;font-weight: 600;padding: 0 20px;transition: background .15s,box-shadow .15s}vaadin-button::part(label){white-space: normal;overflow-wrap: anywhere}vaadin-horizontal-layout{max-width: 100%;min-width: 0}vaadin-horizontal-layout>span{min-width: 0;overflow-wrap: anywhere}vaadin-button[theme~='primary']{background: #7054dc;box-shadow: 0 4px 10px #7054dc25}vaadin-button[theme~='primary']:hover{background: #6446ce;box-shadow: 0 5px 16px #7054dc35}vaadin-button:focus-visible,a:focus-visible{outline: 3px solid #b4a4ef;outline-offset: 4px}.card{background: #fff;border: 1px solid #e6e4ef;border-radius: 18px;padding: 28px;min-width: 0;box-shadow: 0 3px 12px #27263703;gap: 14px}.modes{gap: 22px;align-items: stretch}.modes>.card{flex-basis: 360px;width: auto}.mode-card{position: relative;transition: border-color .2s,box-shadow .2s}.mode-card:hover{border-color: #cfc5ef;box-shadow: 0 8px 24px #49358408}.mode-card>.mode-icon{display: flex;align-items: center;justify-content: center;width: 46px;height: 46px;border-radius: 13px;background: #eeeafb;color: #7054dc;font-family: Consolas,monospace;font-size: 23px;font-weight: 700;margin-bottom: 6px}.voice-card>.mode-icon{background: #eaf3f7;color: #4383a0}.mode-card>span:not(.mode-icon):not(.mode-meta){color: #9995ac;font-size: 10px;font-weight: 700;letter-spacing: 1.2px}.mode-card h2{font-size: 25px}.mode-card p{font-size: 14px;flex: 1}.mode-card>.mode-meta{font-size: 12px;color: #747386;letter-spacing: 0;margin: 8px 0 2px}.mode-card vaadin-button{margin-top: auto}.voice-card vaadin-button{background: #f3f1fa;color: #6446ce}.page .page-note{font-size: 12px;max-width: none;color: #9692a8;padding-top: 4px}.error{color: #b33446 !important}.error:empty{display: none}.auth-page{max-width: 460px;margin: 64px auto;padding: 36px;gap: 18px;background: #fff;border: 1px solid #e6e4ef;border-radius: 24px;box-shadow: 0 20px 70px #4935840a}.auth-brand{margin-bottom: 18px}.auth-page>.eyebrow{font-size: 9px;text-align: center;letter-spacing: 1px}.auth-page h1{font-size: 32px;font-weight: 750;letter-spacing: -1px;margin: 0}.auth-page p{margin: 0;color: #747386;text-align: center;font-size: 14px;line-height: 1.7}.auth-page vaadin-login-form{width: 100%}vaadin-login-form-wrapper::part(form){padding: 0;background: transparent}vaadin-login-form-wrapper::part(form-title){display: none}.auth-page vaadin-email-field,.auth-page vaadin-password-field{width: 100%}.auth-page>vaadin-button{width: 100%;margin-top: 4px}.auth-page>a{font-size: 13px;margin-top: 4px}.page pre{white-space: pre-wrap;overflow-wrap: anywhere;width: 100%;padding: 24px;margin: 0;background: #eeecf5;border-radius: 14px;color: #514a6a;font: 14px/1.8 Consolas,monospace}.page vaadin-checkbox-group{width: 100%;max-width: 760px;padding: 20px;border: 1px solid #e6e4ef;background: #fff;border-radius: 16px}.page vaadin-checkbox-group::part(group-field){gap: 10px}.page vaadin-checkbox-group::part(label){margin-bottom: 12px}.page vaadin-checkbox{padding: 10px;border-radius: 8px}.page vaadin-checkbox:hover{background: #f5f3fc}.page vaadin-progress-bar{max-width: 760px}.page vaadin-details{background: #fff;padding: 18px;border: 1px solid #e6e4ef;border-radius: 14px}.page vaadin-details p{margin-bottom: 16px}.page audio{max-width: 100%;border-radius: 12px}@media (max-width: 850px){.hero{grid-template-columns: 1fr;gap: 32px}.hero-copy p{max-width: 620px}.hero-preview{max-width: 520px;transform: none;margin: 0 10px 10px 0}}@media (max-width: 600px){.navigation{padding: 12px 18px;gap: 14px}.brand,.brand .brand-wordmark{font-size: 18px;line-height: 28px}.nav-links{gap: 14px}.nav-links a{font-size: 12px}.navigation vaadin-button{padding: 0 4px;min-width: 0;font-size: 12px}.page{padding: 30px 18px 40px;gap: 18px}.page h1{letter-spacing: -1.2px}.hero{padding: 0 0 20px}.hero-copy{gap: 18px}.hero-preview{padding: 22px}.selectors{gap: 10px}.selectors vaadin-combo-box{width: 100%}.card{padding: 24px}.modes>.card{flex-basis: 100%}.auth-page{max-width: calc(100% - 32px);margin: 24px auto;padding: 28px 22px}.auth-page h1{font-size: 28px}.page vaadin-horizontal-layout:not(.selectors):not(.modes){flex-wrap: wrap}}@media (prefers-reduced-motion: reduce){*{transition: none !important}}.catalog-editor .card{margin-top: 18px;box-shadow: none}.catalog-editor vaadin-grid{border-radius: 12px;overflow: hidden}.catalog-editor .code-input{font-family: Consolas,monospace}.business-heading{gap: 14px}.business-controls{width: 100%}.business-controls vaadin-combo-box{max-width: 480px}.action-section{padding: 24px;gap: 18px;min-width: 0;border: 1px solid #e6e4ef;border-radius: 18px;background: #fff}.action-section-header{display: flex;align-items: center;justify-content: space-between;gap: 16px;width: 100%;min-width: 0;flex-wrap: wrap}.section-actions{display: flex;align-items: center;justify-content: flex-end;gap: 12px;flex-wrap: wrap;min-width: 0;max-width: 100%}.section-actions:empty{display: none}.section-actions>a{display: inline-flex;align-items: center;min-height: 42px;padding: 0 14px;border-radius: 10px;background: #f3f1fa;font-weight: 600;overflow-wrap: anywhere}.object-actions{display: flex;align-items: center;justify-content: space-between;gap: 16px;padding: 16px;border: 1px solid #e6e4ef;border-radius: 12px;width: 100%;flex-wrap: wrap}.object-actions>span,.object-actions>p{min-width: 0;overflow-wrap: anywhere}.report-discussion-fields{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));align-items: start;gap: 20px;width: 100%}.report-discussion-fields>*{min-width: 0}.report-discussion vaadin-integer-field::part(label),.report-discussion vaadin-combo-box::part(label),.report-discussion vaadin-text-area::part(label){white-space: normal;overflow: visible;text-overflow: clip}.report-discussion vaadin-integer-field::part(input-field),.report-discussion vaadin-text-area::part(input-field){background: #fff;border: 1px solid #e2dfed}@media (max-width: 600px){.report-discussion-fields{grid-template-columns: minmax(0,1fr);gap: 16px}.action-section{padding: 16px}.action-section-header{align-items: flex-start}.section-actions{justify-content: flex-start;width: 100%}.section-actions>vaadin-button,.section-actions>a{max-width: 100%}}.business-body{gap: 22px}.business-dialog-form{gap: 18px}.business-dialog-form>vaadin-horizontal-layout{width: 100%;flex-wrap: wrap;gap: 16px}.business-dialog-form vaadin-text-field,.business-dialog-form vaadin-email-field,.business-dialog-form vaadin-combo-box,.business-dialog-form vaadin-integer-field{width: 100%}.business-dialog-form>vaadin-horizontal-layout>vaadin-combo-box,.business-dialog-form>vaadin-horizontal-layout>vaadin-integer-field{flex: 1 1 200px}.business-controls vaadin-details{margin: 0}.landing{width: 100%;min-height: 100vh;background: #f7f7fb;color: #272637}.landing-header,.landing main,.landing-footer{max-width: 1200px;margin: 0 auto;padding-left: 36px;padding-right: 36px}.landing-header{display: flex;align-items: center;gap: 36px;min-height: 88px;border-bottom: 1px solid #e6e4ef}.landing-header nav{display: flex;flex-wrap: wrap;gap: 24px;margin-left: auto}.landing-header nav a{color: #747386;font-size: 14px;font-weight: 600}.landing-login{display: inline-flex;align-items: center;justify-content: center;min-height: 42px;padding: 0 24px;border: 1px solid #dcd5ef;border-radius: 10px;color: #6446ce;font-weight: 650}.privacy-launch-notice{display: flex;align-items: center;gap: 28px;margin-top: 28px;padding: 20px 24px;border: 1px solid #ded7f2;border-left: 4px solid #7054dc;border-radius: 14px;background: #eeebfa}.privacy-launch-copy{display: flex;flex-direction: column;gap: 6px;min-width: 0}.privacy-launch-title{color: #51426e;font-size: 15px;font-weight: 650;line-height: 1.5}.landing .privacy-launch-notice p{color: #655d79;font-size: 14px;line-height: 1.6}.privacy-launch-notice>a{flex-shrink: 0;color: #6446ce;font-size: 14px;font-weight: 600;line-height: 1.6}.landing-hero{display: grid;grid-template-columns: 1.3fr 1fr;align-items: center;gap: 64px;padding: 76px 0 56px}.landing-hero-copy{display: flex;flex-direction: column;align-items: flex-start;gap: 22px}.landing h1{margin: 0;font-size: clamp(36px,4.7vw,60px);line-height: 1.08;letter-spacing: -2.3px;white-space: pre-line;font-weight: 750}.landing h2{margin: 0;font-size: clamp(28px,3vw,38px);line-height: 1.2;letter-spacing: -1px}.landing h3{margin: 0;font-size: 24px;line-height: 1.3;letter-spacing: -.5px}.landing p{color: #747386;line-height: 1.8;margin: 0}.landing-hero-copy>p{font-size: 17px;max-width: 580px}.landing-hero-copy>span:not(.eyebrow){margin-bottom: -16px;color: #747386;font-size: 13px}.landing-actions{display: flex;flex-wrap: wrap;gap: 12px}.landing-primary,.landing-secondary{display: inline-flex;align-items: center;justify-content: center;min-height: 48px;padding: 12px 22px;border-radius: 10px;font-weight: 650;font-size: 14px;text-align: center}.landing-primary{color: #fff;background: #7054dc;box-shadow: 0 4px 12px #7054dc20}.landing-secondary{color: #6446ce;border: 1px solid #dcd5ef;background: #fff}.landing-primary:hover{background: #6446ce;text-decoration: none}.landing-secondary:hover,.landing-login:hover{background: #eeebfa;text-decoration: none}.landing-inline{color: #6446ce;font-size: 14px}.landing-preview{display: flex;flex-direction: column;gap: 16px;padding: 30px;border-radius: 22px;border: 1px solid #e4e0f3;background: #fff;box-shadow: 12px 12px 0 #eeebfa,0 16px 48px #4935840c}.landing-preview>p:last-child{padding-top: 12px;border-top: 1px solid #e6e4ef;font-size: 13px}.landing-answer,.landing-answer-correct{display: flex;align-items: center;gap: 12px;border: 1px solid #e6e4ef;border-radius: 10px;padding: 12px 16px;font-family: Consolas,monospace}.landing-answer-correct{border-color: #cbe6d7;color: #347354;background: #f2faf5}.landing-facts{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 18px;padding: 24px 0;border-top: 1px solid #e6e4ef;border-bottom: 1px solid #e6e4ef;color: #747386;font-size: 13px}.landing-section{display: flex;flex-direction: column;align-items: flex-start;gap: 20px;padding-top: 72px;scroll-margin-top: 28px}.landing-section>p{max-width: 760px}.landing-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 24px;width: 100%;margin-top: 8px}.landing-card{display: flex;flex-direction: column;align-items: flex-start;gap: 18px;padding: 32px;border: 1px solid #e6e4ef;border-radius: 18px;background: #fff}.landing-card ul,.landing-card ol{margin: 0 0 4px;padding-left: 22px;color: #5d5b70;line-height: 1.7}.landing-card li{padding-left: 4px;margin-bottom: 10px}.landing-card li::marker{color: #7054dc;font-weight: 700}.landing-card>a{margin-top: auto}.landing-faq{width: 100%;background: #fff;border: 1px solid #e6e4ef;border-radius: 12px;padding: 16px 20px;margin: 0}.landing-faq p{padding: 12px 0 2px;max-width: 900px}.landing-faq::part(summary-content){min-width: 0;white-space: normal}.landing-faq [slot='summary']{white-space: normal;overflow-wrap: anywhere}.landing-closing{display: flex;flex-direction: column;align-items: center;gap: 22px;text-align: center;background: #eeebfa;border-radius: 24px;padding: 48px 28px;margin-top: 72px}.landing-footer{display: flex;flex-wrap: wrap;align-items: center;gap: 24px;padding-top: 48px;padding-bottom: 36px}.landing-footer>span:not(.brand-wordmark){color: #747386;font-size: 13px}.landing-footer>a{margin-left: auto}.landing-skip{position: absolute;left: 12px;top: 8px;transform: translateY(-150%);padding: 12px;background: #fff;z-index: 10}.landing-skip:focus{transform: none}@media (max-width: 850px){.landing-header{flex-wrap: wrap;gap: 16px;padding-top: 20px;padding-bottom: 20px}.landing-header nav{order: 3;width: 100%;margin-left: 0}.landing-login{margin-left: auto}.landing-hero{grid-template-columns: 1fr;gap: 36px;padding-top: 48px}.landing-preview{max-width: 600px;margin-right: 12px}}@media (max-width: 600px){.landing-header,.landing main,.landing-footer{padding-left: 20px;padding-right: 20px}.privacy-launch-notice{flex-direction: column;align-items: stretch;gap: 12px;margin-top: 20px;padding: 16px}.privacy-launch-notice>a{align-self: flex-start}.landing-header nav{gap: 12px 20px}.landing-header nav a{font-size: 13px}.landing h1{letter-spacing: -1.4px;white-space: normal}.landing-hero{padding-top: 36px;padding-bottom: 36px}.landing-hero-copy>p{font-size: 15px}.landing-actions{width: 100%}.landing-actions>a{width: 100%}.landing-preview{padding: 22px}.landing-section{padding-top: 48px}.landing-grid{grid-template-columns: 1fr}.landing-card{padding: 24px}.landing-closing{padding: 32px 20px;margin-top: 48px}.landing-footer{gap: 16px}}.catalog-editor vaadin-text-area::part(input-field),.catalog-editor vaadin-text-field::part(input-field){background: #f7f7fb;border: 1px solid #e2dfed}@media (max-width: 600px){.navigation{flex-wrap: wrap;gap: 6px 14px}.navigation>vaadin-button{margin-left: auto}.nav-links{order: 3;width: 100%;margin-left: 0;justify-content: center}}.review-option{width: 100%;box-sizing: border-box;padding: 12px 16px;border: 1px solid;border-radius: 10px;overflow-wrap: anywhere;display: flex;flex-direction: column;gap: 4px}.review-option-status{font-size: .85rem;font-weight: 600}.review-option-correct{color: #166534;background: #f0fdf4;border-color: #86efac}.review-option-incorrect{color: #991b1b;background: #fef2f2;border-color: #fca5a5}.review-option-neutral{color: #475569;background: #f8fafc;border-color: #cbd5e1}.review-correct{color: #166534;font-weight: 600}.review-incorrect{color: #991b1b;font-weight: 600}@media (max-width: 380px){.navigation{flex-wrap: wrap;gap: 6px 14px}.navigation>vaadin-button{margin-left: auto}.nav-links{order: 3;width: 100%;margin-left: 0;justify-content: center}}