:root{color-scheme:light;--bg: #f5f8f1;--surface: rgba(255, 255, 255, .82);--surface-strong: #ffffff;--line: #d7e2d0;--text: #1b2b1e;--muted: #617065;--green-700: #234d2d;--green-600: #2f6a3b;--green-500: #4a8d56;--green-300: #92b983;--accent: #d4ebc9;--warning: #ba5a2a;--danger: #a73f3f;--shadow: 0 24px 60px rgba(31, 64, 35, .12);--row-action-column: 160px;font-family:Segoe UI,Helvetica Neue,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,rgba(147,193,131,.28),transparent 30%),radial-gradient(circle at right center,rgba(58,110,69,.12),transparent 25%),linear-gradient(180deg,#f8fbf5,#eef5e8);color:var(--text)}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:320px 1fr;grid-template-rows:auto auto;background:var(--bg)}.sidebar{grid-column:1;grid-row:1;align-self:stretch;min-height:calc(100dvh + 180px);padding:28px;background:linear-gradient(180deg,#d3ecc4,#b9e0a5);color:#1b3a20;display:flex;flex-direction:column;gap:20px}.account-panel{display:grid;gap:6px;margin-top:auto;padding:14px;border-top:1px solid rgba(47,106,59,.22)}.account-panel span{color:#1b3a20b3;font-size:13px}.account-panel button{padding:0;border:0;background:none;color:#1b3a20;cursor:pointer;text-align:left}.login-screen{position:relative;min-height:100vh;display:grid;place-items:center;padding:24px;background:url(/login-waves.svg) center / cover no-repeat,var(--bg)}.login-screen>*{position:relative;z-index:1}.login-card{display:grid;gap:16px;width:min(440px,100%);padding:32px;border:1px solid var(--line);border-radius:26px;background:var(--surface-strong);box-shadow:var(--shadow)}.login-card h2{margin:12px 0 0}.login-legal-wrap{width:min(760px,100%);max-height:86vh;overflow-y:auto;padding:8px;border-radius:26px;background:var(--surface-strong);box-shadow:var(--shadow)}.framed-field{position:relative;border:1px solid var(--line);border-radius:12px;background:#fff;padding:16px 14px 10px}.framed-field-label{position:absolute;top:-9px;left:12px;background:#fff;padding:0 6px;font-size:12px;color:var(--muted)}.framed-field-input{width:100%;border:0;outline:0;background:transparent;font-size:15px;color:var(--text);padding-right:28px}.framed-field-icon-button{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:none;cursor:pointer;font-size:12px;line-height:1;color:#2f6a3be6;text-transform:uppercase;letter-spacing:.04em}.consent-group{display:grid;gap:8px}.consent-checkbox{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--text);cursor:pointer}.consent-checkbox input{margin-top:3px;flex:none}.consent-error{margin:-4px 0 0 24px;font-size:12px;color:var(--danger)}.inline-link{border:0;background:none;padding:0;color:#2f6a3be6;text-decoration:underline;cursor:pointer;font:inherit}.snils-duplicates{display:grid;gap:6px;margin-top:8px;padding:10px 12px;border:1px solid rgba(214,158,46,.45);border-radius:12px;background:#faf0d280;font-size:13px}.snils-duplicate-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.login-alt-link{margin:0;text-align:center;font-size:13px}.login-alt-link a{color:#2f6a3be6}.brand{display:flex;align-items:center;gap:14px}.brand-kicker,.hero-kicker,.section-kicker{margin:0 0 6px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--muted)}.brand-kicker{color:#2f6a3be6}.brand h1,.hero h2,.panel h3{margin:0}.sidebar-panel,.client-card,.panel{border:1px solid var(--line);box-shadow:var(--shadow)}.sidebar-panel{background:#ffffff14;border-color:#ffffff1f;border-radius:24px;padding:16px}.main-nav{display:grid;gap:16px}.nav-group-button,.nav-button{text-decoration:none;border:1px solid rgba(47,106,59,.16);border-radius:12px;padding:12px 14px;background:#2f6a3b1a;color:#1b3a20;cursor:pointer;text-align:left}.nav-group-button{display:flex;align-items:center;justify-content:space-between;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:12px}.nav-group-button.open{color:#16321c}.nav-group-button.active-group{background:#2f6a3b38;border-color:#2f6a3b66}.nav-group-button.single-nav{justify-content:flex-start}.nav-submenu{display:grid;gap:8px;max-height:0;opacity:0;overflow:hidden;transform:translateY(-8px);padding:0 0 0 10px;margin-left:4px;transition:max-height .28s ease,opacity .2s ease,transform .24s ease,padding .24s ease}.nav-submenu.open{max-height:240px;opacity:1;transform:translateY(0);padding:6px 0 4px 10px;border-left:2px solid rgba(47,106,59,.25)}.nav-submenu .nav-button{background:#ffffff80;border-color:#2f6a3b24;box-shadow:0 1px 2px #00000008}.nav-button.active{background:#2f6a3b4d;border-color:#2f6a3b80;color:#1b3a20;font-weight:600}.sidebar-program-list{display:grid;align-content:start;gap:12px}.program-card{border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:14px;background:#ffffff14;color:inherit;cursor:pointer;text-align:left}.program-card.active{background:#d9f3cd29;border-color:#d9f3cd66}.program-card small,.program-card span{display:block;margin-top:6px;color:#ffffffbd}.clients-list{display:flex;flex-direction:column;gap:12px;overflow:auto;padding-right:4px}.client-card{background:#ffffff1a;color:inherit;border-radius:20px;padding:14px;text-align:left;cursor:pointer}.client-card.active{background:#d9f3cd29;border-color:#d9f3cd66}.client-card-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.client-card p,.client-card small{margin:6px 0 0;color:#ffffffd1}.main-content{grid-column:2;grid-row:1;min-height:calc(100dvh + 180px);padding:28px;min-width:0}.page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:18px}.app-footer{grid-column:1 / -1;grid-row:2;width:100%;padding:34px 28px 28px;background:radial-gradient(circle at right top,rgba(255,255,255,.3),transparent 38%),linear-gradient(135deg,#d3ecc4,#b9e0a5);color:#1b3a20}.app-footer-main{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(260px,1fr) minmax(180px,auto);gap:28px;align-items:start;max-width:1280px;margin:0 auto}.app-footer-kicker{margin:0 0 5px;color:#1b3a20b3;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.app-footer strong{font-size:24px;letter-spacing:-.02em}.app-footer-note{max-width:360px;margin:8px 0 0;color:#1b3a20d1;line-height:1.5}.app-footer-contacts,.app-footer-external-links{display:grid;gap:8px;font-style:normal}.app-footer a,.app-footer-legal-links a{color:#1b3a20}.finance-page{max-width:1040px}.finance-description{max-width:620px;margin:10px 0 0}.finance-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:14px;align-items:end;padding:22px}.finance-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.finance-metric{display:grid;gap:8px;min-height:180px;padding:26px}.finance-metric span{color:var(--muted);font-size:15px}.finance-metric strong{align-self:end;font-size:clamp(30px,4vw,42px);letter-spacing:-.04em}.finance-metric small{color:var(--muted)}.reminders-panel{margin-top:18px}.reminders-panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.reminders-panel-title{font-weight:600;margin:0 0 14px}.reminders-panel-heading .reminders-panel-title{margin:0}.reminders-count-badge{background:var(--accent);color:var(--green-700);padding:4px 10px;border-radius:999px;font-size:13px;font-weight:600}.reminders-list{display:grid;gap:10px}.reminder-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border:1px solid var(--line);border-radius:12px}.reminder-program{font-weight:600;margin:0 0 2px}.reminder-org{margin:0}.reminder-dates{text-align:right;flex-shrink:0}.reminder-dates p{margin:0 0 4px;font-size:14px}.reminder-days-badge{background:#a73f3f1f;color:var(--danger);padding:3px 9px;border-radius:999px;font-size:12px;font-weight:600}.reminders-history-table{width:100%;border-collapse:collapse;font-size:14px}.reminders-history-table th{text-align:left;color:var(--muted);font-weight:500;padding:6px 8px 6px 0;border-bottom:1px solid var(--line)}.reminders-history-table td{padding:10px 8px 10px 0;border-bottom:1px solid var(--line)}.app-footer a:hover,.app-footer-legal-links a:hover{color:#0f2613;text-decoration:underline}.app-footer-contacts span{color:#1b3a20bf;line-height:1.45}.app-footer-legal-links{display:flex;flex-wrap:wrap;gap:10px 20px;max-width:1280px;margin:28px auto 0;padding-top:20px;border-top:1px solid rgba(47,106,59,.22)}.app-footer-legal-links a{padding:0;border:0;background:transparent;cursor:pointer;text-align:left;font-size:13px;text-decoration:none}.legal-page{max-width:1180px}.legal-page-heading{align-items:flex-start}.legal-page-lead{max-width:720px;margin:12px 0 0;color:var(--muted);font-size:17px;line-height:1.5}.legal-document{padding:34px}.legal-document-details{margin-bottom:30px;padding:20px 22px;border-radius:18px;background:#d4ebc985}.legal-document-details p,.legal-document-section p{margin:0;color:var(--muted);line-height:1.55}.legal-document-details p+p,.legal-document-section p+p{margin-top:12px}.legal-document-section+.legal-document-section{margin-top:30px;padding-top:30px;border-top:1px solid var(--line)}.legal-document-section h4{margin:0 0 14px;font-size:20px}.legal-document-section ul{display:grid;gap:9px;margin:16px 0;padding-left:22px;color:var(--muted);line-height:1.55}.hero{background:linear-gradient(135deg,#ffffffe6,#d4ebc9e6);border:1px solid rgba(121,157,106,.22);border-radius:32px;padding:28px;display:grid;gap:24px}.hero-compact{padding:24px 28px}.hero h2{font-size:clamp(28px,4vw,42px);max-width:760px}.panel{background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:24px}.workspace-grid{margin-top:24px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:24px}.single-panel{max-width:1040px;margin-top:24px}.page-section{max-width:1680px;margin-top:28px}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px}.page-heading h3{margin:0;font-size:28px}.page-heading .text-button{flex-shrink:0;white-space:nowrap}.list-count{display:inline-flex;align-items:center;width:fit-content;margin-top:8px;padding:4px 9px;border-radius:999px;background:#4a8d5621;color:var(--green-700);font-size:13px;font-weight:600}.filters-panel{position:relative;z-index:10;display:grid;grid-template-columns:minmax(220px,1fr) 220px auto;gap:12px;align-items:center;margin-bottom:18px}.filters-panel .sdo-filter{grid-column:1 / -1;font-size:14px}.data-panel{padding:0;overflow:hidden}.client-table{display:grid;grid-template-columns:1.15fr 1.1fr .9fr 1fr .85fr var(--row-action-column);gap:16px;align-items:center}.person-table{display:grid;grid-template-columns:1.1fr 1.1fr 1fr .8fr var(--row-action-column);gap:16px;align-items:center}.table-head{padding:15px 20px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em;background:#d4ebc961}.table-row{padding:17px 20px;border-top:1px solid var(--line);background:#ffffff8f}.table-row:hover{background:#ffffffe6}.table-row strong,.table-row small{display:block}.table-row small{margin-top:5px;color:var(--muted)}.row-action,.text-button{border:0;background:transparent;color:var(--green-600);cursor:pointer;font-weight:700}.row-action:hover,.text-button:hover{color:var(--green-700);text-decoration:underline}.row-open-button{width:100%;justify-self:end}.empty-state{padding:32px;color:var(--muted);text-align:center}.form-page{max-width:1020px}.form-panel{padding:28px}.form-footer{display:flex;align-items:center;gap:12px;margin-top:8px}.history-section{margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}.section-line{display:flex;align-items:end;justify-content:space-between;gap:16px}.section-line h3{margin:0}.employee-list,.training-rows{display:grid;gap:10px;margin-top:16px}.employee-item{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:15px;padding:13px 15px;background:#ffffffb8;color:var(--text);text-align:left;cursor:pointer}.employee-item:hover{border-color:var(--green-300)}.employee-item span,.employee-item small{color:var(--muted)}.training-list{padding:8px 20px}.training-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.training-row:last-child{border-bottom:0}.training-row p,.training-row small{margin:6px 0 0;color:var(--muted)}.training-meta{display:grid;grid-template-columns:auto auto;gap:8px 12px;align-items:center;justify-items:end;align-self:center;min-width:260px}.training-status{padding:5px 9px;border-radius:999px;font-size:12px;background:#d4ebc9b3;color:var(--green-700)}.training-обучение-завершено,.training-отменено{background:#61706524;color:var(--muted)}.training-review{background:#d4ebc966;color:var(--green-700)}.training-closed,.training-not_started{background:#61706524;color:var(--muted)}.listener-catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.listener-course-card{display:flex;flex-direction:column;gap:12px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow)}.listener-course-card>.primary-button,.listener-course-card>.card-no-action{margin-top:auto}.card-no-action{margin-bottom:0;padding:12px 16px;text-align:center;border-radius:14px;background:#6170651a;color:var(--muted);font-weight:600}.listener-course-card h3{margin:0;font-size:16px}.listener-progress-row{display:flex;align-items:center;gap:12px}.progress-ring{--size: 48px;width:var(--size);height:var(--size);flex:none;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green-700) var(--progress, 0%),rgba(47,106,59,.14) 0)}.progress-ring.complete{background:var(--green-700)}.progress-ring span{width:calc(var(--size) - 10px);height:calc(var(--size) - 10px);border-radius:50%;background:#fff;display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--green-700)}.final-test-result{margin:10px 0 0;font-weight:600}.final-test-result.passed{color:var(--green-600)}.final-test-result.failed{color:var(--danger)}.listener-course-card.closed{opacity:.55;filter:grayscale(.4)}.listener-course-card.closed:hover{opacity:.8}.listener-back-button{margin-bottom:16px}.listener-sidebar .nav-button{display:flex;align-items:center;gap:10px}.listener-sidebar .nav-icon{display:none;font-size:16px;line-height:1}.listener-shell-compact{grid-template-columns:68px 1fr}.listener-shell-compact .listener-sidebar{padding:14px 8px}.listener-shell-compact .listener-sidebar .brand{justify-content:center}.listener-shell-compact .listener-sidebar .brand-kicker{display:none}.listener-shell-compact .listener-sidebar .brand h1{font-size:15px;text-align:center}.listener-shell-compact .listener-sidebar .nav-label{display:none}.listener-shell-compact .listener-sidebar .nav-icon{display:block}.listener-shell-compact .listener-sidebar .nav-button{justify-content:center;padding:12px 0}.listener-shell-compact .listener-sidebar .account-panel{padding:12px 0;justify-items:center}.listener-shell-compact .listener-sidebar .account-panel button{text-align:center}.listener-shell-compact .main-content{padding-top:20px}.listener-program-grid{position:relative;display:grid;grid-template-columns:232px 1fr;gap:16px;align-items:start;padding:0 30px 0 18px}.listener-pager{position:absolute;top:90px;width:28px;height:56px;display:grid;place-items:center;border:0;background:none;font-size:34px;line-height:1;color:#2f6a3b73;cursor:pointer}.listener-pager:hover:not(:disabled){color:var(--green-700)}.listener-pager:disabled{opacity:.25;cursor:default}.listener-pager-prev{left:0}.listener-pager-next{right:0}.listener-done-banner{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--green-700)}.listener-done-banner span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--green-700);color:#fff;font-size:12px}.listener-module-check{display:inline-grid;place-items:center;width:16px;height:16px;margin-right:6px;border-radius:50%;background:var(--green-700);color:#fff;font-size:10px;vertical-align:middle}.listener-module-list{display:grid;gap:8px;align-content:start;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;padding-right:4px}.listener-module-item{display:grid;gap:2px;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer}.listener-module-item:disabled{cursor:not-allowed;opacity:.55}.listener-module-item.active{border-color:var(--green-700);box-shadow:0 0 0 1px var(--green-700) inset}.listener-module-item .listener-module-type{text-transform:uppercase;letter-spacing:.06em;font-size:11px;color:var(--muted)}.listener-module-item .listener-module-title{font-weight:600;font-size:14px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.listener-module-item .listener-module-state{font-size:11px;color:var(--muted)}.listener-module-item.listener-module-completed .listener-module-state{color:var(--green-700)}.listener-module-item.listener-module-current .listener-module-state{color:#1b3a20;font-weight:600}.listener-module-content{display:grid;gap:14px;align-content:start;padding:24px}.listener-module-content h3{margin:0}.listener-text-content{line-height:1.6}.module-text{display:grid;gap:16px}@media (min-width: 1100px){.module-text-with-toc{grid-template-columns:minmax(0,1fr) 230px;align-items:start}.module-text-with-toc .module-text-progress,.module-text-with-toc .module-text-resume{grid-column:1 / -1}.module-text-with-toc .listener-text-content{grid-column:1;grid-row:3}.module-text-with-toc .module-text-toc{grid-column:2;grid-row:3;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto}}.module-text-toc{padding:14px 16px;border:1px solid var(--line);border-radius:14px}.module-text-toc ol{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:2px}.module-text-toc-nested{padding-left:12px}.module-text-toc button{width:100%;padding:6px 8px;border:none;border-radius:8px;background:none;color:var(--muted);font:inherit;font-size:13px;line-height:1.35;text-align:left;cursor:pointer}.module-text-toc button:hover{background:#4a8d561a;color:var(--green-700)}.module-text-toc button.active{background:#4a8d5629;color:var(--green-700);font-weight:600}.module-text-progress{position:sticky;top:0;z-index:2;height:4px;border-radius:999px;background:#4a8d5626;overflow:hidden}.module-text-progress span{display:block;height:100%;background:var(--green-600);transition:width .1s linear}.module-text-resume{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:#4a8d561a;font-size:14px}.listener-video-link{display:inline-block;text-decoration:none;color:var(--green-700)}.listener-text-content img{max-width:100%;height:auto;border-radius:12px}.listener-test-questions{display:grid;gap:16px}.listener-test-progress{margin:0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.listener-test-hint{margin:-4px 0 0;font-size:13px}.listener-test-intro{display:grid;justify-items:start;gap:20px;margin-top:8px}.listener-test-warning{display:flex;align-items:flex-start;gap:10px;max-width:640px;margin:0;padding:12px 14px;border:1px solid rgba(186,90,42,.28);border-radius:12px;background:#faf0d266;color:var(--text);font-size:13px;line-height:1.5}.listener-test-topbar{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.listener-test-timer{margin:0;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--muted)}.listener-test-timer.urgent{color:var(--danger)}.listener-test-answer-hint{margin:0;padding:9px 12px;border:1px solid rgba(186,90,42,.3);border-radius:10px;background:#faf0d273;color:var(--warning);font-size:13px}.listener-test-nav{display:flex;justify-content:space-between;gap:12px}.listener-test-nav button{min-width:140px}.listener-test-question{display:grid;gap:8px}.listener-test-question p{font-weight:600;margin:0}.listener-test-option{display:flex;align-items:center;gap:8px;font-size:14px}.listener-test-result{display:grid;gap:8px}.listener-test-result.passed p:first-child{color:var(--green-700);font-weight:700}.listener-test-result.failed p:first-child{color:var(--danger);font-weight:700}.compact-select{grid-column:1 / -1;min-width:150px}.programs-list{display:grid;gap:14px}.pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px;color:var(--muted)}.pagination button:disabled{cursor:not-allowed;opacity:.45;transform:none}.program-list-item{display:flex;justify-content:space-between;gap:28px;padding:22px}.program-list-item h4{margin:10px 0 0;font-size:19px}.program-list-item p{max-width:720px;margin:10px 0 0;color:var(--muted)}.program-list-action{display:grid;align-content:space-between;justify-items:end;gap:18px;min-width:140px}.program-list-action strong{font-size:18px}.inline-field-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.inline-button{white-space:nowrap}.program-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.program-tags span{padding:5px 9px;border-radius:999px;background:#d4ebc9a6;color:var(--green-700);font-size:12px}.program-workspace{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:24px;margin-top:24px}.programs-summary h3{margin:0}.programs-grid{display:grid;gap:12px;margin-top:18px}.program-tile{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:18px;background:#ffffffb3}.program-tile h4,.program-tile p{margin:9px 0 0}.program-tile p,.program-tile small{color:var(--muted)}.program-tile>div:last-child{display:grid;gap:6px;text-align:right;white-space:nowrap}.program-status{display:inline-block;padding:4px 8px;border-radius:999px;background:#4a8d5626;color:var(--green-700);font-size:12px}.program-status.inactive{background:#a73f3f1f;color:var(--danger)}.program-modules{display:grid;gap:16px}.modules-list{display:grid;gap:10px}.module-row{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:14px}.module-row-main{display:flex;align-items:center;gap:10px}.module-type-badge{padding:4px 9px;border-radius:999px;background:var(--accent);color:var(--green-700);font-size:12px}.module-final-badge{padding:4px 9px;border-radius:999px;background:#d4ebc9a6;color:var(--green-700);font-size:12px;font-weight:600}.module-row-actions{display:flex;flex-wrap:wrap;gap:8px}.module-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;border:1px solid var(--line);border-radius:14px}.test-editor{display:grid;gap:14px;padding:14px;margin-top:6px;border-top:1px solid var(--line)}.test-settings-row{display:flex;flex-wrap:wrap;gap:16px}.test-attempts-hint{display:block;max-width:240px;margin-top:6px;font-size:13px;line-height:1.35}.modules-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.modules-heading-main{display:flex;align-items:center;gap:10px}.modules-heading-main .section-kicker{margin:0}.modules-count{padding:2px 9px;border-radius:999px;background:#2f6a3b1f;color:var(--green-700);font-size:12px;font-weight:700}.modules-warning{padding:4px 10px;border-radius:999px;background:#c83c321f;color:var(--danger);font-size:12px;font-weight:600}.module-missing-badge{padding:3px 8px;border-radius:999px;background:#c83c321f;color:var(--danger);font-size:11px}.curriculum-block{display:grid;gap:8px;margin-top:20px}.curriculum-table{width:100%;border-collapse:collapse;font-size:14px}.curriculum-table th,.curriculum-table td{border:1px solid var(--line);padding:8px 10px;text-align:left}.curriculum-table th{background:#2f6a3b14;font-weight:600}.curriculum-table tfoot td{font-weight:700;background:#2f6a3b0a}.curriculum-num{width:48px;text-align:center}.curriculum-hours{width:120px;text-align:center}.rich-text-editor{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface-strong)}.rich-text-toolbar{display:flex;flex-wrap:wrap;gap:4px 10px;padding:6px;border-bottom:1px solid var(--line);background:#2f6a3b0d}.rich-text-toolbar-group{display:flex;gap:2px;padding-right:10px;border-right:1px solid rgba(47,106,59,.18)}.rich-text-toolbar-group:last-child{border-right:0;padding-right:0}.rich-text-toolbar button{border:1px solid transparent;border-radius:8px;padding:5px 10px;font-size:12px;background:transparent;color:#1b3a20;cursor:pointer}.rich-text-toolbar button:hover{background:#2f6a3b1a}.rich-text-toolbar button.active{background:#2f6a3b33;border-color:#2f6a3b4d}.rich-text-content{padding:12px 14px;min-height:140px;overflow-x:auto}.rich-text-content .ProseMirror{outline:none}.rich-text-content .ProseMirror,.listener-text-content{line-height:1.6}.rich-text-content .ProseMirror ul,.rich-text-content .ProseMirror ol,.listener-text-content ul,.listener-text-content ol{padding-left:22px}.rich-text-content .ProseMirror h1,.listener-text-content h1{font-size:22px;margin:16px 0 8px}.rich-text-content .ProseMirror h2,.listener-text-content h2{font-size:18px;margin:14px 0 8px}.rich-text-content .ProseMirror h3,.listener-text-content h3{font-size:16px;margin:12px 0 6px}.rich-text-content .ProseMirror blockquote,.listener-text-content blockquote{margin:10px 0;padding:4px 0 4px 14px;border-left:3px solid rgba(47,106,59,.35);color:var(--muted)}.rich-text-content .ProseMirror hr,.listener-text-content hr{border:0;border-top:1px solid var(--line);margin:16px 0}.rich-text-content .ProseMirror a,.listener-text-content a{color:var(--green-700);text-decoration:underline}.rich-text-content .ProseMirror img,.listener-video-link{display:inline-block;text-decoration:none;color:var(--green-700)}.listener-text-content img{max-width:100%;height:auto}.module-image{display:flex;margin:12px 0}.module-image[data-align=center]{justify-content:center}.module-image[data-align=right]{justify-content:flex-end}.listener-text-content img[data-align=center]{display:block;margin-left:auto;margin-right:auto}.listener-text-content img[data-align=right]{display:block;margin-left:auto;margin-right:0}.module-image-frame{position:relative;display:inline-block;max-width:100%;line-height:0}.module-image-frame img{width:100%;border-radius:12px}.module-image-selected .module-image-frame img{outline:2px solid var(--green-700);outline-offset:2px}.module-image-handle{position:absolute;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:var(--green-700);box-shadow:0 1px 4px #0000004d;touch-action:none}.module-image-handle-top-left{top:-6px;left:-6px;cursor:nwse-resize}.module-image-handle-top-right{top:-6px;right:-6px;cursor:nesw-resize}.module-image-handle-bottom-left{bottom:-6px;left:-6px;cursor:nesw-resize}.module-image-handle-bottom-right{bottom:-6px;right:-6px;cursor:nwse-resize}.module-image-size{position:absolute;right:8px;bottom:8px;padding:3px 8px;border-radius:999px;background:#1b3a20d9;color:#fff;font-size:12px;line-height:1.4}.module-file{display:grid;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#4a8d560f}.module-file-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.module-file-name{margin:0 0 2px;font-weight:600;overflow-wrap:anywhere}.module-file-actions{display:flex;align-items:center;gap:8px}.module-file-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.disabled-link{opacity:.6;pointer-events:none}.module-file-frame{width:100%;min-height:min(78vh,900px);border:1px solid var(--line);border-radius:12px;background:#fff}.module-file-image{max-width:100%;height:auto;border-radius:12px}.rich-text-image-width{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--muted)}.rich-text-image-width input{width:56px;padding:4px 6px;border:1px solid var(--line);border-radius:8px;font:inherit;text-align:right}.rich-text-content .ProseMirror table,.listener-text-content table{border-collapse:collapse;width:100%;margin:12px 0;table-layout:fixed;overflow:hidden}.rich-text-content .ProseMirror th,.rich-text-content .ProseMirror td,.listener-text-content th,.listener-text-content td{border:1px solid var(--line);padding:8px 10px;vertical-align:top;position:relative}.rich-text-content .ProseMirror th,.listener-text-content th{background:#2f6a3b14;font-weight:600;text-align:left}.rich-text-content .ProseMirror .selectedCell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#2f6a3b1f;pointer-events:none}.rich-text-content .ProseMirror .column-resize-handle{position:absolute;right:-2px;top:0;bottom:0;width:4px;background:var(--green-700);cursor:col-resize}.test-question-card{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px}.test-question-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center}.test-option-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.test-editor-actions{display:flex;justify-content:space-between}.checkbox-label{display:flex;align-items:center;gap:9px;color:var(--muted)}.participant-picker{border:1px solid var(--line);border-radius:15px;padding:14px 16px;background:#fff9;display:grid;gap:8px}.selected-participants{display:flex;flex-wrap:wrap;gap:8px}.participant-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 8px 5px 12px;border-radius:999px;background:var(--green-100, rgba(107, 142, 111, .16));color:var(--text);font-size:.9em}.inline-toggle{font-size:.9em;padding:0;margin-left:4px;white-space:nowrap}.participant-chip button{border:none;background:transparent;cursor:pointer;color:var(--muted);font-size:1.1em;line-height:1;padding:0 2px}.participant-checkbox-list{display:grid;gap:6px;max-height:260px;overflow-y:auto;padding:4px 2px}.participant-checkbox{color:var(--text)}.import-report{margin-top:14px;border:1px solid var(--line);border-radius:15px;padding:14px 16px;background:#fff9;display:grid;gap:8px}.import-issues{display:grid;gap:4px}.import-issue-row{color:var(--muted);font-size:.9em;margin:0}.panel{padding:22px}.panel-header,.subpanel-header,.actions-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.form-grid.narrow{grid-template-columns:repeat(2,minmax(0,1fr))}.full-width{grid-column:1 / -1}.field-label{display:block;margin-bottom:6px;font-size:13px;color:var(--muted)}.required-mark{color:var(--danger)}.input{width:100%;background:var(--surface-strong);border:1px solid var(--line);border-radius:14px;padding:12px 14px;color:var(--text)}.searchable-select{position:relative}.searchable-select.disabled .select-trigger{cursor:not-allowed;opacity:.72}.select-trigger{display:flex;align-items:center;justify-content:space-between;min-height:46px;cursor:pointer;text-align:left}.select-popover{position:fixed;z-index:200;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 16px 34px #1f40232e}.select-search{width:100%;flex:0 0 auto;padding:11px 13px;border:0;border-bottom:1px solid var(--line);outline:none}.select-popover{display:flex;flex-direction:column}.select-options{overflow-y:auto}.select-option{display:block;width:100%;padding:10px 13px;border:0;background:transparent;color:var(--text);cursor:pointer;text-align:left}.select-option:hover,.select-option.selected{background:#d4ebc9a6}.select-empty{margin:0;padding:12px 13px;color:var(--muted)}.compact-select .select-trigger{min-height:38px;padding:7px 9px}.textarea{min-height:110px;resize:vertical}.textarea.compact{min-height:84px}.primary-button,.secondary-button,.danger-button{border:none;border-radius:14px;padding:12px 16px;cursor:pointer;transition:transform .15s ease,opacity .15s ease}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.danger-button:hover:not(:disabled){transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.primary-button{background:linear-gradient(135deg,var(--green-600),var(--green-500));color:#fff}.secondary-button{background:var(--accent);color:var(--green-700)}.danger-button{background:#a73f3f1f;color:var(--danger)}.status-chip{white-space:nowrap;padding:6px 10px;border-radius:999px;font-size:12px;background:#ffffff29}.status-новая-заявка,.status-в-работе{background:#ffd6663d;color:#604510}.status-записан,.status-обучается{background:#92b9833d;color:#204a2a}.status-завершил{background:#4a8d562e;color:#1d5b2b}.status-отказ{background:#a73f3f29;color:var(--danger)}.notice-banner{margin-top:4px;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:#61706514;color:var(--muted);font-size:.92em}.impersonation-banner{border-color:var(--warning);background:#ba5a2a14;color:var(--warning)}.error-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:14px 16px;border-radius:18px;background:#ba5a2a24;color:var(--warning)}.error-banner button{flex:none;border:0;padding:0;background:transparent;color:var(--warning);cursor:pointer;text-decoration:underline;font:inherit}.success-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:14px 16px;border:1px solid rgba(74,141,86,.24);border-radius:18px;background:#d4ebc9a8;color:var(--green-700)}.success-banner button{border:0;padding:0;background:transparent;color:var(--green-700);cursor:pointer;text-decoration:underline}.sdo-inline-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid rgba(74,141,86,.28);border-radius:18px;background:linear-gradient(135deg,#d4ebc9b8,#ffffffdb)}.sdo-inline-card strong,.sdo-inline-card span{display:block}.sdo-inline-card>div>span{margin-top:5px;color:var(--muted)}.sdo-inline-card .section-kicker{margin-bottom:5px}.sdo-access-item{flex-wrap:wrap;align-items:start;row-gap:16px}.sdo-access-person{display:grid;justify-items:start;gap:8px;min-width:0;flex:1 1 260px}.sdo-access-person h4{margin:0;overflow-wrap:anywhere}.sdo-access-item .program-list-action{align-content:start}.sdo-access-progress{flex-basis:100%}.sdo-access-label{flex:0 0 auto;padding:8px 11px;border-radius:999px;background:#4a8d5629;color:var(--green-700);font-size:13px}.muted{color:var(--muted)}.screen-state{min-height:100vh;display:grid;place-items:center;background:var(--bg);color:var(--green-700);font-size:20px}@media (max-width: 1180px){.app-shell,.workspace-grid,.program-workspace{grid-template-columns:1fr}.sidebar{grid-column:1;grid-row:1;position:static;height:auto;overflow:visible}.main-content{grid-column:1;grid-row:2;min-height:calc(100dvh + 120px)}.app-footer{grid-column:1;grid-row:3}.client-table,.person-table{grid-template-columns:1.2fr 1fr 1fr var(--row-action-column)}.client-table>:nth-child(3),.client-table>:nth-child(4){display:none}.person-table>:nth-child(3),.person-table>:nth-child(4){display:none}}@media (max-width: 760px){.main-content,.sidebar{padding:18px}.page-actions{width:100%;justify-content:flex-start;gap:12px}.app-footer{padding:28px 18px 22px}.app-footer-main{grid-template-columns:1fr}.app-footer-main{gap:22px}.app-footer-legal-links{display:grid;gap:12px}.finance-filters,.finance-summary{grid-template-columns:1fr}.finance-filters .secondary-button{width:100%}.legal-document{padding:22px}.form-grid,.form-grid.narrow{grid-template-columns:1fr}.hero h2{font-size:28px}.page-heading,.program-list-item{align-items:flex-start;flex-direction:column}.filters-panel,.client-table,.person-table{grid-template-columns:1fr}.table-head{display:none}.table-row{gap:10px}.client-table>:nth-child(3),.client-table>:nth-child(4){display:block}.person-table>:nth-child(3),.person-table>:nth-child(4){display:block}.section-line,.training-row{align-items:flex-start;flex-direction:column}.training-meta{justify-items:start}.employee-item{grid-template-columns:1fr}.program-list-action{display:flex;align-items:center;justify-items:initial;width:100%}.success-banner,.sdo-inline-card{align-items:flex-start;flex-direction:column}}.select-trigger>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-chevron{flex:0 0 auto;margin-left:10px;color:var(--muted)}.training-filters{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end}.training-filter-date,.training-filter-submit{grid-column:span 2}.training-filters .secondary-button{min-height:46px}.training-list .training-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(154px,.48fr);align-items:start;gap:18px 28px;padding:22px 10px}.training-info{min-width:0}.training-info>strong{display:block;font-size:18px;line-height:1.28}.training-main-details,.training-extra-details{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--muted)}.training-main-details{margin-top:10px;font-size:16px}.training-extra-details{margin-top:8px;font-size:13px}.training-extra-details span:not(:last-child):after{content:"";display:inline-block;width:3px;height:3px;margin:0 0 3px 16px;border-radius:50%;background:#94a394}.training-list .training-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:max-content}.training-open-action{align-self:center}.training-open-action .secondary-button{width:100%;min-width:154px;margin:0}.payment-full-field{display:grid;justify-items:start;gap:7px}.inline-validation{max-width:430px;padding:8px 10px;border:1px solid rgba(186,90,42,.26);border-radius:10px;background:#fff5eb;color:var(--warning);font-size:13px;line-height:1.35}.sdo-access-panel h3{margin:0}.sdo-access-panel>p:not(.section-kicker){margin:8px 0 18px}.sdo-access-state,.credentials-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#d4ebc96b}.sdo-access-state{align-items:flex-start;flex-direction:column}.credentials-panel{margin:18px 0;background:#ffffffc7}.credentials-panel p{margin:6px 0 0}.credentials-panel small{display:block;max-width:640px;margin-top:10px;color:var(--muted)}@media (max-width: 1180px){.training-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.training-filter-date,.training-filter-submit{grid-column:span 1}.training-list .training-row{grid-template-columns:minmax(0,1fr) auto}.training-open-action{align-self:start}.training-open-action .secondary-button{width:154px}}@media (max-width: 760px){.training-filters{grid-template-columns:1fr}.training-filter-date,.training-filter-submit{grid-column:auto}.training-list .training-row{grid-template-columns:1fr}.training-list .training-meta{justify-content:flex-start}.training-open-action,.training-open-action .secondary-button{width:100%}}@media (max-width: 760px){.credentials-panel{align-items:flex-start;flex-direction:column}.inline-field-actions{grid-template-columns:1fr}.row-open-button{width:100%}}.date-field{position:relative;display:block}.date-field-input{width:100%;padding-right:42px}.date-field.disabled .date-field-input{opacity:.72}.date-field-button{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:10px;background:transparent;color:var(--green-600);font-size:16px;cursor:pointer}.date-field-button:hover:not(:disabled){background:#d4ebc999}.date-field-button:disabled{cursor:not-allowed;opacity:.5}.date-popover{position:fixed;z-index:200;width:276px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 16px 34px #1f40232e}.date-popover-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.date-nav-button{width:30px;height:30px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--green-700);font-size:16px;line-height:1;cursor:pointer}.date-nav-button:hover{background:#d4ebc98c}.date-weekdays,.date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.date-weekdays{margin-bottom:4px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;text-align:center}.date-cell{height:34px;border:0;border-radius:10px;background:transparent;color:var(--text);font-size:14px;cursor:pointer}.date-cell.empty{cursor:default}.date-cell:not(.empty):hover{background:#d4ebc98c}.date-cell.today{box-shadow:inset 0 0 0 1px var(--green-300)}.date-cell.selected{background:var(--green-600);color:#fff}.date-popover-foot{display:flex;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.finance-more{display:grid;justify-items:start;gap:8px;margin-top:22px}.finance-more p{margin:0;font-size:13px}.statistics-page{display:grid;gap:20px}.year-picker{display:grid;gap:10px}.year-chips{display:flex;flex-wrap:wrap;gap:8px}.year-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);cursor:pointer}.year-chip.active{font-weight:600;background:#d4ebc959}.year-chip i{width:10px;height:10px;border-radius:3px}.statistics-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.chart-panel{padding:20px}.chart-figure{margin:0;display:grid;gap:12px}.chart-title{font-weight:600}.chart-svg{width:100%;height:auto;overflow:visible}.chart-grid-line{stroke:var(--line);stroke-dasharray:3 4}.chart-axis-line{stroke:var(--line)}.chart-axis-label{font-size:11px;fill:var(--muted)}.chart-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--muted)}.chart-legend-item{display:inline-flex;align-items:center;gap:8px}.chart-legend-item i{width:12px;height:12px;border-radius:3px}.chart-hover-value{margin-left:auto;color:var(--text)}.statistics-table-panel h4{margin:0 0 14px}.statistics-table-scroll{overflow-x:auto}.statistics-table{width:100%;border-collapse:collapse;font-size:14px}.statistics-table th,.statistics-table td{padding:9px 12px;text-align:right;white-space:nowrap}.statistics-table thead th{border-bottom:1px solid var(--line);font-weight:600}.statistics-table .statistics-subhead th{font-weight:400;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.statistics-table .month-cell{text-align:left;font-weight:600}.statistics-table tbody tr:nth-child(2n){background:#d4ebc92e}.statistics-table tfoot td{border-top:1px solid var(--line);font-weight:600}.growth-cell.positive{color:var(--green-600)}.growth-cell.negative{color:var(--danger)}.access-letter-start{display:flex;align-items:center;justify-content:space-between;gap:20px}.access-letter-start h4{margin:0 0 6px}.access-letter-start p{margin:0;max-width:640px;font-size:13px}.access-letter{display:grid;gap:14px}.access-letter-warning{margin:0;padding:10px 12px;border:1px solid rgba(186,90,42,.3);border-radius:10px;background:#faf0d273;font-size:13px}.access-letter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.access-letter-copied{font-size:13px;color:var(--green-600)}.access-letter-preview{width:100%;height:620px;border:1px solid var(--line);border-radius:16px;background:#fff}.presentation-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 12px}.presentation-viewer{border:1px solid var(--border, #d9dee7);border-radius:8px;overflow:hidden}.presentation-page{display:flex;align-items:center;justify-content:center;min-height:320px;padding:12px;background:var(--surface-muted, #f5f7fa)}.presentation-page img{max-width:100%;max-height:70vh;object-fit:contain}.presentation-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid var(--border, #d9dee7)}.presentation-error{color:var(--danger, #c0392b);margin:0}.presentation-resume{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border, #d9dee7);background:#4a8d561a;font-size:14px}.presentation-pages{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid var(--border, #d9dee7)}.presentation-pages nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.presentation-pages nav button{min-width:34px;padding:6px 8px;border:1px solid var(--border, #d9dee7);border-radius:8px;background:transparent;color:inherit;font:inherit;cursor:pointer}.presentation-pages nav button:hover{border-color:var(--green-600)}.presentation-pages nav button.active{border-color:var(--green-600);background:var(--green-600);color:#fff}.presentation-pages nav span{padding:0 2px;color:var(--muted)}.presentation-jump{display:flex;align-items:center;gap:8px;font-size:14px}.presentation-jump input{width:84px;padding:6px 8px;border:1px solid var(--border, #d9dee7);border-radius:8px;font:inherit}.test-import-hint{max-width:720px;margin:10px 0 0;font-size:13px}.hidden-file-input{display:none}.preview-header{flex-wrap:wrap;margin-bottom:18px}.preview-header h3{margin:0}.preview-note{padding:12px 16px;border-radius:12px;background:#d4ebc959;margin:0 0 20px}.preview-layout{display:grid;grid-template-columns:minmax(200px,280px) 1fr;gap:20px;align-items:start}.preview-modules{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.preview-module{width:100%;text-align:left;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer}.preview-module.active{border-color:var(--green-600);background:#d4ebc94d}.preview-module-title{font-weight:600}.preview-content{min-width:0}@media (max-width: 900px){.preview-layout{grid-template-columns:1fr}}.listener-progress-summary{font-weight:600;margin:0 0 12px}.listener-progress-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.listener-progress-item{padding:10px 12px;border:1px solid var(--line);border-radius:12px}.listener-progress-item.state-completed{border-color:var(--green-600)}.listener-progress-item.state-locked{opacity:.65}.listener-progress-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.listener-progress-title{font-weight:600}.listener-progress-meta{font-size:13px}.listener-progress-attempts{width:100%;margin-top:8px;border-collapse:collapse;font-size:14px}.listener-progress-attempts th,.listener-progress-attempts td{text-align:left;padding:4px 8px;border-bottom:1px solid var(--line)}.attempt-passed{color:var(--green-600)}.attempt-failed{color:var(--danger)}
