:root{--text:#5a6377;--text-h:#0a0a0f;--bg:#f7f8fa;--surface:#fff;--border:#366483;--accent:#366483;--accent-hover:#2a4f68;--accent-light:#36648314;--accent-glow:#36648333;--danger:#c53030;--success:#276749;--radius:10px;--shadow-sm:0 1px 2px #0000000a;--shadow:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-lg:0 4px 16px #00000014, 0 2px 4px #0000000a;--transition:.16s ease;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--heading:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace;font:15px/1.6 var(--sans);letter-spacing:.01em;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:14px}}*,:before,:after{box-sizing:border-box}#root{flex-direction:column;width:100%;max-width:100%;min-height:100svh;display:flex}body{background:var(--bg);margin:0}h1,h2,h3,h4{font-family:var(--heading);color:var(--text-h);letter-spacing:-.02em;font-weight:600}h1{margin:0 0 8px;font-size:32px}h2{margin:0 0 8px;font-size:22px}h3{margin:0 0 4px;font-size:18px}p{margin:0}button,input[type=submit]{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-h);cursor:pointer;transition:all var(--transition);padding:8px 18px;font-size:13px;font-weight:500}button:hover{border-color:var(--accent-border,#8b5cf659);background:#f4f2f7}input[type=text],input[type=email],input[type=password],input[type=search],textarea,select{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition), box-shadow var(--transition);background:var(--surface);color:var(--text-h);outline:none;padding:9px 12px;font-size:14px}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}textarea{resize:vertical}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:24px}.app-header{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--accent);z-index:100;background:#ffffffd9;align-items:center;gap:12px;height:56px;padding:0 28px;display:flex;position:fixed;top:0;left:0;right:0}.app-header.header-hidden{pointer-events:none;animation:.35s cubic-bezier(.22,1,.36,1) forwards headerSlideUp}@keyframes headerSlideUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}.app-logo-img{width:auto;height:28px}.header-subtitle{color:var(--text);text-transform:uppercase;letter-spacing:.04em;margin-top:1px;font-size:11px;font-weight:400;line-height:1}.header-admin-link{color:var(--accent);border:1px solid var(--accent);transition:all var(--transition);border-radius:8px;padding:6px 16px;font-size:13px;font-weight:500;text-decoration:none}.header-admin-link:hover{background:var(--accent-light)}.header-admin-link__short{display:none}.app-header nav a{transition:color var(--transition);font-size:14px;font-weight:500}.header-user{color:var(--text);cursor:pointer;transition:all var(--transition);border-radius:8px;padding:6px 14px;font-size:14px;font-weight:500;text-decoration:none}.header-user:hover{background:var(--accent-light);color:var(--accent)}.header-user__short{display:none}.header-brand__title{letter-spacing:-.02em;color:var(--text-h);font-size:18px;font-weight:700;line-height:1.2}.header-brand__accent{color:var(--accent)}.header-brand__sub{letter-spacing:.04em;color:var(--text);text-transform:uppercase;font-size:11px;font-weight:400;line-height:1.3}table{border-collapse:separate;border-spacing:0;background:var(--surface);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-sm);border:1px solid var(--border);overflow:hidden}th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text);border-bottom:1px solid var(--border);background:#f9f8fb;padding:12px 16px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--border);padding:12px 16px;font-size:14px}tr:last-child td{border-bottom:none}tr:hover td{background:#8b5cf605}.admin-layout{flex:1;display:flex}.admin-layout>nav:first-child{background:var(--surface);border-right:1px solid var(--border);width:230px;min-height:calc(100vh - 56px);padding:24px 16px}.admin-layout>nav:first-child ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.admin-layout>nav:first-child a{border-radius:var(--radius);color:var(--text);transition:all var(--transition);padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;display:block}.admin-layout>nav:first-child a:hover{background:var(--accent-light);color:var(--accent)}.admin-layout>nav:first-child a.active{background:var(--accent-light);color:var(--accent);font-weight:600}.admin-layout>main:last-child{background:var(--bg);flex:1;padding:28px}@media (width<=900px){.admin-layout{flex-direction:column}.admin-layout>nav:first-child{border-right:none;border-bottom:1px solid var(--border);width:100%;min-height:0;padding:8px 10px;overflow-x:auto}.admin-layout>nav:first-child ul{flex-direction:row;width:max-content}.admin-layout>nav:first-child a{white-space:nowrap;padding:8px 12px;font-size:13px}.admin-layout>main:last-child{min-width:0;padding:16px;overflow-x:auto}}.login-card{background:var(--surface);border:1px solid var(--border);max-width:400px;box-shadow:var(--shadow-lg);border-radius:14px;margin:120px auto 0;padding:36px 32px}.login-card h1{text-align:center;margin-bottom:24px;font-size:26px}.login-card input{width:100%;margin-bottom:14px}.login-card button[type=submit]{background:var(--accent);color:#fff;border:none;width:100%;padding:12px;font-size:15px;font-weight:600}.login-card button[type=submit]:hover{background:var(--accent-hover)}.block-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-h);box-shadow:var(--shadow-sm);transition:all var(--transition);padding:20px;text-decoration:none;display:block}.block-card:hover{box-shadow:var(--shadow-lg);border-color:var(--accent);transform:translateY(-1px)}.block-card h3{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;min-height:39px;margin:0 0 4px;font-size:15px;line-height:1.3;display:-webkit-box;overflow:hidden}.sort-toggle{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:all var(--transition);border-radius:20px;padding:7px 18px;font-size:13px;font-weight:500}.sort-toggle.active{background:var(--accent);color:#fff;border-color:var(--accent)}.error-text{color:var(--danger);font-size:14px}.empty-text{color:var(--text);font-size:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.fade-in{animation:.25s both fadeIn}.block-detail-header{animation:.22s cubic-bezier(.22,1,.36,1) both slideDown}.block-card{animation:.3s both fadeIn}.block-card:first-child{animation-delay:0s}.block-card:nth-child(2){animation-delay:30ms}.block-card:nth-child(3){animation-delay:60ms}.block-card:nth-child(4){animation-delay:90ms}.block-card:nth-child(5){animation-delay:.12s}.block-card:nth-child(6){animation-delay:.15s}.block-card:nth-child(7){animation-delay:.18s}.block-card:nth-child(8){animation-delay:.21s}.block-card:active{box-shadow:var(--shadow-sm);transform:scale(.97)}@keyframes routeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.dashboard-section{animation:.3s both fadeIn}.dashboard-section:nth-child(2){animation-delay:.1s}.admin-layout>nav:first-child a:active{transform:scale(.97)}button:active{transform:scale(.96)}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation:.2s both fade-out}::view-transition-new(root){animation:.25s cubic-bezier(.22,1,.36,1) both scaleIn}}@keyframes fade-out{to{opacity:0;transform:scale(.98)}}.block-detail-header{background:var(--accent);color:#fff;flex-shrink:0;justify-content:flex-start;align-items:center;height:48px;padding:8px 24px;display:flex;position:relative}.block-bar__middle{display:contents}.block-bar__brand{cursor:pointer;flex-shrink:0;align-items:center;gap:8px;min-width:0;display:flex}.block-bar__logo{background:#fff;border-radius:6px;width:auto;height:24px;padding:2px 3px;display:block}.block-bar__name{letter-spacing:-.01em;color:#fff;white-space:nowrap;font-size:15px;font-weight:700}.block-bar__accent{color:#ffffffb8}.block-bar__actions{margin-left:auto}.folder-readme{background:var(--surface);border-radius:var(--radius);border:1px solid #e6e8ec;margin-bottom:20px;overflow:hidden}.folder-readme--loading{color:#6b6375;padding:12px 16px;font-size:13px}.folder-readme__head{background:#faf9fc;border-bottom:1px solid #f0eef4;align-items:center;gap:8px;padding:8px 12px;display:flex}.folder-readme--collapsed .folder-readme__head{border-bottom:none}.folder-readme__ico{display:inline-flex}.folder-readme__label{color:#08060d;font-size:13.5px;font-weight:600}.folder-readme__hint{color:#6b6375;font-size:12px}.folder-readme__btn{color:#4b4552;cursor:pointer;background:#fff;border:1px solid #e6e8ec;border-radius:8px;align-items:center;gap:4px;margin-left:auto;padding:3px 10px;font-family:inherit;font-size:12px;display:inline-flex}.folder-readme__btn+.folder-readme__btn{margin-left:0}.folder-readme__btn:hover{border-color:var(--accent);color:var(--accent)}.md-doc{color:#1f1b26;overflow-wrap:anywhere;padding:14px 18px 18px;font-size:14.5px;line-height:1.65}.md-doc>:first-child{margin-top:0}.md-doc h1{color:#08060d;letter-spacing:-.01em;margin:0 0 10px;font-size:22px;line-height:1.25}.md-doc h2{text-transform:uppercase;letter-spacing:.05em;color:#6b6375;border-bottom:1px solid #f0eef4;margin:18px 0 8px;padding-bottom:4px;font-size:12.5px;font-weight:600}.md-doc blockquote{border-left:3px solid var(--accent);background:var(--accent-light);color:#4b4552;border-radius:0 8px 8px 0;margin:0 0 6px;padding:8px 12px;font-size:13px}.md-doc blockquote p{margin:0}.md-doc ul{margin:0;padding-left:20px}.md-doc li{margin:3px 0}.md-doc li>ul{margin-top:2px}.md-doc .md-wikilink{color:var(--accent);overflow-wrap:anywhere;border-bottom:1px dashed #7c5cf073;border-radius:5px;padding:0 3px;text-decoration:none}.md-doc .md-wikilink:hover{background:var(--accent-light);border-bottom-style:solid}.md-doc .md-wikilink--missing{color:#8a8590;cursor:help;background:0 0;border-bottom:1px dashed #d7d3dd}.md-doc .md-wikilink--missing:hover{background:#f6f5f9}.folder-readme__badge{white-space:nowrap;background:var(--accent-light);color:var(--accent);border-radius:999px;padding:2px 9px;font-size:11.5px}.folder-readme__badge--auto{color:#6b6375;background:#f1f0f4}.folder-readme__empty{color:#8a8590;padding:12px 14px;font-size:13px;font-style:italic}.folder-readme__btn--plain{margin-left:0}.folder-readme__btn--primary{border-color:var(--accent);background:var(--accent);color:#fff}.folder-readme__btn--primary:hover{color:#fff;background:#6a4ae0;border-color:#6a4ae0}.folder-readme__btn:disabled{opacity:.6;cursor:default}.folder-readme__status{color:#6b6375;font-size:12px}.folder-readme__status--ok{color:#1a8a4a}.folder-readme__status--err{color:#c0392b}.folder-readme__editor{padding:12px 14px 14px}.folder-readme__tools{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.folder-readme__tools-hint{color:#6b6375;font-size:12px}.folder-readme__tools-hint b{color:var(--accent)}.folder-readme__textarea{resize:vertical;box-sizing:border-box;color:#1f1b26;background:#fff;border:1px solid #e6e8ec;border-radius:10px;width:100%;min-height:220px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;line-height:1.6;display:block}.folder-readme__textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.folder-readme__suggest{background:#fff;border:1px solid #e6e8ec;border-radius:10px;max-height:264px;margin-top:8px;overflow:hidden auto;box-shadow:0 8px 24px #14101e1a}.folder-readme__suggest-head{color:#6b6375;background:#faf9fc;border-bottom:1px solid #f0eef4;padding:6px 12px;font-size:11.5px}.folder-readme__suggest-item{text-align:left;cursor:pointer;color:#1f1b26;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:7px 12px;font-family:inherit;font-size:13.5px;display:flex}.folder-readme__suggest-item+.folder-readme__suggest-item{border-top:1px solid #f7f6f9}.folder-readme__suggest-item:hover,.folder-readme__suggest-item--active{background:var(--accent-light)}.folder-readme__suggest-label{overflow-wrap:anywhere}.folder-readme__suggest-hint{color:#6b6375;white-space:nowrap;margin-left:auto;font-size:11.5px}.folder-readme__kind{color:#6b6375;background:#f1f0f4;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:600;display:inline-flex}.folder-readme__preview{border-top:1px dashed #e6e8ec;margin-top:12px;padding-top:10px}.folder-readme__preview .md-doc{padding:0;font-size:14px}.folder-readme__preview-label{text-transform:uppercase;letter-spacing:.05em;color:#6b6375;margin-bottom:6px;font-size:11.5px}.folder-readme__foot{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}@media (width<=700px){.folder-readme__suggest-hint{display:none}.folder-readme__textarea{min-height:170px;font-size:16px}.folder-readme__badge{display:none}}.create-block-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:32px;padding:16px}.blocks-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.selection-toolbar{border-radius:var(--radius);background:var(--accent-light);border:1px solid var(--accent);align-items:center;gap:4px;padding:4px 8px;animation:.15s both fadeIn;display:flex}.tb-btn{width:34px;height:34px;color:var(--accent);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.tb-btn:hover{background:var(--accent-light)}.tb-btn.tb-delete:hover{color:var(--danger);background:#c530301a}.block-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.block-card-wrapper{border-radius:var(--radius);transition:box-shadow var(--transition);position:relative}.block-card-wrapper.selected .block-card{outline:3px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 6px var(--accent-glow)}.block-check{z-index:2;background:var(--surface);border:2px solid var(--border);cursor:pointer;opacity:0;width:22px;height:22px;transition:opacity var(--transition), border-color var(--transition);border-radius:5px;justify-content:center;align-items:center;display:flex;position:absolute;top:10px;right:10px}.block-card-wrapper:hover .block-check,.block-card-wrapper.selected .block-check{opacity:1}.block-card-wrapper.selected .block-check{border-color:var(--accent);background:var(--accent)}.block-check input{opacity:0;pointer-events:none;position:absolute}.block-card-wrapper.selected .block-check:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:11px;margin-top:-2px;display:block;transform:rotate(45deg)}.assign-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#00000059;justify-content:center;align-items:center;animation:.15s both fadeIn;display:flex;position:fixed;inset:0}.assign-modal{background:var(--surface);box-shadow:var(--shadow-lg);border-radius:14px;flex-direction:column;width:480px;max-width:95vw;max-height:80vh;animation:.2s both scaleIn;display:flex}.assign-modal-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.assign-modal-header h2{margin:0;font-size:20px}.modal-close{width:32px;height:32px;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:22px;display:flex}.modal-close:hover{background:#f0f0f0}.assign-tabs{border-bottom:1px solid var(--border);gap:0;padding:16px 24px 0;display:flex}.assign-tab{color:var(--text);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:8px;margin-bottom:-1px;padding:10px 20px;font-size:14px;font-weight:500;display:flex}.assign-tab:hover{color:var(--accent)}.assign-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.assign-modal-body{flex:1;max-height:50vh;padding:16px 24px;overflow-y:auto}.assign-list{flex-direction:column;gap:4px;display:flex}.assign-item{border-radius:var(--radius);cursor:pointer;transition:all var(--transition);align-items:center;gap:10px;padding:10px 14px;font-size:14px;display:flex}.assign-item:hover{background:var(--accent-light)}.assign-item.checked{background:var(--accent-light);color:var(--accent);font-weight:500}.assign-item input{display:none}.assign-modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:16px 24px 20px;display:flex}.download-modal{width:420px}.download-modal__body{flex-direction:column;gap:10px;max-height:none;padding:16px 24px 22px;display:flex}.download-choice{text-align:left;width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.download-choice:hover:not(:disabled){border-color:var(--accent);background:var(--accent-light)}.download-choice:disabled{opacity:.6;cursor:default}.download-choice__ico{background:var(--accent-light);width:34px;height:34px;color:var(--accent);border-radius:9px;flex:0 0 34px;justify-content:center;align-items:center;display:flex}.download-choice__text{flex-direction:column;min-width:0;display:flex}.download-choice__title{font-size:14px;font-weight:600}.download-choice__hint{color:#6b6375;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.studied-item{border-radius:var(--radius);cursor:pointer;transition:all var(--transition);border:1px solid #0000;align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:flex}.studied-item:hover{background:var(--accent-light)}.studied-item.checked{background:var(--accent-light);color:var(--accent);font-weight:500}.studied-item input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.studied-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.studied-item-email{color:var(--text-muted,#6b6375);text-overflow:ellipsis;white-space:nowrap;max-width:45%;font-size:12px;overflow:hidden}.btn-primary{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.btn-primary:hover{background:var(--accent-hover)!important}.spinner{vertical-align:middle;border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;margin-right:6px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.spinner--dark{border-width:2.5px;border-color:#e4e0f0;border-top-color:var(--accent,#7c5cf0);width:20px;height:20px;margin-right:8px}.file-frame{overflow:hidden}.file-frame__overlay{z-index:2;color:#6b6375;background:#f7f8fa;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset:0}.file-frame__overlay--error{text-align:center;color:#3f3a48;flex-direction:column;padding:24px}.file-frame__retry{background:var(--accent,#7c5cf0);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:7px 16px;font-size:13px}.file-frame__link{color:#3f3a48;background:#fff;border:1px solid #e4e0f0;border-radius:8px;padding:7px 16px;font-size:13px;text-decoration:none}.header-logout-btn{cursor:pointer;padding:6px 16px;font-size:13px}.header-brand{cursor:pointer;flex-direction:column;min-width:0;margin-left:10px;display:flex}.header-line{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.header-actions{min-width:0;display:contents}@media (width>=701px){.header-actions>:first-child{margin-left:auto}}.test-run-body{align-items:flex-start;gap:20px;display:flex}.test-run-questions{flex-shrink:0;width:150px}.test-questions-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.dash-intern-body{align-items:flex-start;gap:28px;max-width:1300px;margin:0;padding:28px 20px;display:flex}.dash-days-nav{background:#fff;border:1px solid #e5e4e7;border-radius:12px;flex-shrink:0;width:310px;padding:14px 10px;position:sticky;top:76px}.dash-day-btn{width:100%}.app-content{padding-top:56px;transition:padding-top .35s cubic-bezier(.22,1,.36,1)}.app-content--flush{padding-top:0}.header-brand__title{white-space:nowrap}@media (width<=700px){.test-run-body{flex-direction:column}.test-run-questions{width:100%}.test-questions-grid{grid-template-columns:repeat(auto-fill,26px)}}@media (width<=720px){.dash-intern-body{flex-direction:column;gap:14px;padding:16px 12px}.dash-days-nav{align-items:center;gap:4px;width:100%;padding:8px 10px;display:flex;position:static;overflow-x:auto}.dash-days-nav>p,.dash-days-nav>div{display:none}.dash-days-nav>.dash-day-btn{flex-shrink:0;width:auto;margin-bottom:0}.dash-days-nav>.tree-row--block,.dash-days-nav>.tree-row--file,.dash-days-nav>.tree-row--readme{display:none}}.users-mobile-list{display:none}@media (width<=720px){.users-table{display:none}.users-mobile-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.user-card{background:#fff;border:1px solid #e5e4e7;border-radius:12px;overflow:hidden}.user-card__head{cursor:pointer;align-items:center;gap:10px;padding:12px 14px;display:flex}.user-card__main{flex:1;min-width:0}.user-card__name{color:#08060d;font-size:14.5px;font-weight:600}.user-card__sub{color:#6b6375;margin-top:1px;font-size:12.5px}.user-card__prof{color:#6b6375;margin-top:2px;font-size:12px}.user-card__chev{color:#6b6375;flex-shrink:0;font-size:13px}.user-card__extra{background:#faf8ff;border-top:1px solid #f0eef4;flex-direction:column;gap:10px;padding:10px 14px 12px;display:flex}.user-card__row{align-items:center;gap:10px;display:flex}.user-card__row-label{color:#9a92a3;text-transform:uppercase;letter-spacing:.4px;min-width:76px;font-size:12px}.user-card__row-value{color:#08060d;font-size:14px;font-weight:500}.user-card__actions{gap:8px;display:flex}.user-card__act{color:#08060d;cursor:pointer;background:#fff;border:1px solid #d8d5de;border-radius:8px;align-items:center;gap:5px;padding:6px 12px;font-size:13px;display:inline-flex}.user-card__act--del{color:#d32f2f;border-color:#f0c8c8}}.progress-check-row{cursor:pointer;color:#08060d;background:#fff;border:1px solid #eee;border-radius:9px;align-items:center;gap:10px;padding:9px 12px;font-size:14px;transition:background .15s;display:flex}.progress-check-row:hover{background:#faf8ff}.progress-check-row input[type=checkbox]{accent-color:var(--accent,#7c5cf0);cursor:pointer;flex-shrink:0;width:16px;height:16px;margin:0}.stats-mobile-list{display:none}@media (width<=720px){.stats-table-wrap{display:none}.stats-mobile-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.stats-card{background:#fff;border:1px solid #e5e4e7;border-radius:12px;padding:12px 14px}.stats-card__title{color:#08060d;font-size:14.5px;font-weight:600}.stats-card__row{flex-wrap:nowrap;gap:8px;margin-top:8px;display:flex}.stats-card__cell{text-align:center;color:#6b6375;flex-direction:column;flex:1 1 0;align-items:center;gap:1px;min-width:0;font-size:11.5px;display:flex}@media (width<=390px){.stats-card__row{flex-wrap:wrap}.stats-card__cell{flex:calc(50% - 4px)}}.stats-card__cell b{color:#08060d;font-size:15px;font-weight:700}.stats-card .results-open-link{box-sizing:border-box;justify-content:center;width:100%;min-height:40px;padding:8px 12px;font-size:13.5px;display:flex}.stats-group{flex-direction:column;gap:6px;display:flex}.stats-group__head{justify-content:space-between;align-items:baseline;gap:8px;padding:2px 2px 0;display:flex}.stats-group__title{color:#08060d;font-size:14.5px;font-weight:700}.stats-group__count{color:#9a92a3;white-space:nowrap;font-size:12px}}.test-card{background:#fff;border:1px solid #e5e4e7;border-radius:12px;align-items:center;gap:14px;margin-bottom:10px;padding:14px 16px;display:flex}.test-card__actions{flex-shrink:0;gap:8px;display:flex}@media (width<=720px){.test-card{flex-direction:column;align-items:stretch;gap:10px}.test-card__actions{flex-wrap:wrap}}.attempts-mobile-list{display:none}@media (width<=720px){.attempts-table{display:none}.attempts-mobile-list{flex-direction:column;gap:8px;display:flex}.attempt-card{background:#faf8ff;border:1px solid #ece8f4;border-radius:10px;padding:10px 12px}.attempt-card__head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.attempt-card__name{color:#08060d;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.attempt-card__grade{flex-shrink:0;font-size:13px;font-weight:700}.attempt-card__row{color:#6b6375;flex-wrap:wrap;gap:3px 14px;margin-top:2px;font-size:12.5px;display:flex}.attempt-card__row b{color:#08060d;font-weight:600}.theme-row__handle{display:none}}.studied-item-theme{flex-shrink:0;margin-left:8px}@media (width<=720px){.assign-modal .studied-item{flex-wrap:wrap}.assign-modal .studied-item-theme{flex-shrink:1;min-width:0;max-width:100%;margin-left:auto;margin-right:4px}.assign-modal .studied-item-theme select{max-width:100%}}.blocks-layout{align-items:flex-start;gap:20px;display:flex}.blocks-main{flex:1;min-width:0}.folder-sidebar{background:var(--surface);border-radius:var(--radius);border:1px solid #e6e8ec;flex:0 0 360px;width:360px;max-height:calc(100vh - 40px);padding:12px;position:sticky;top:16px;overflow:auto}.folder-sidebar__head{text-transform:uppercase;letter-spacing:.04em;color:#6b6375;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:600;display:flex}.folder-sidebar__add{border:1px solid var(--accent);color:var(--accent);cursor:pointer;text-transform:none;letter-spacing:0;background:#fff;border-radius:8px;padding:3px 10px;font-size:12.5px}.folder-sidebar__add:hover{background:var(--accent-light)}.folder-tree{--tree-lead:9px;flex-direction:column;gap:2px;display:flex}.folder-node{cursor:pointer;color:#08060d;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;width:100%;padding:7px 8px;font-size:14px;display:flex}.folder-node:hover{background:#f2f4f7}.folder-node.active{background:var(--accent-light);color:var(--accent);font-weight:600}.folder-node__icon{font-size:15px}.folder-node__count{color:#6b6375;font-size:11px}.folder-node__actions{gap:2px;display:none}.folder-node:hover .folder-node__actions{display:flex}.folder-node__actions button{cursor:pointer;color:#6b6375;background:0 0;border:none;padding:0 2px;font-size:13px;line-height:1}.folder-node__actions button:hover{color:var(--accent)}.folder-tree__empty{color:#9a92a3;padding:6px 8px;font-size:13px}.tree-row{cursor:pointer;text-align:left;color:#08060d;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;width:100%;padding:7px 12px;font-family:inherit;font-size:14px;font-weight:500;display:flex}.tree-row:hover{background:#f2f4f7}.tree-row__name{-webkit-line-clamp:3;overflow-wrap:anywhere;word-break:normal;-webkit-hyphens:auto;hyphens:auto;-webkit-box-orient:vertical;flex:1;min-width:0;line-height:1.25;display:-webkit-box;overflow:hidden}.tree-row__count{color:#6b6375;flex-shrink:0;font-size:11px}.tree-row--block{font-size:13.5px}.tree-row--file{color:#4b4552;font-size:13px}.tree-row--file .tree-row__name{color:#4b4552}.tree-row--readme{color:#6b6375;font-size:13px;font-style:italic}.tree-row--readme .tree-row__name{color:#6b6375}.tree-guides{flex-shrink:0;align-self:stretch;display:inline-flex}.tree-guide{flex:0 0 16px;width:16px;position:relative}.tree-guide--pipe:before{content:"";left:7px;top:calc(-1 * var(--tree-lead,9px));bottom:calc(-1 * var(--tree-lead,9px));border-left:1px solid var(--tree-line,#d5d1de);position:absolute}.tree-guide--elbow:before{content:"";left:7px;top:calc(-1 * var(--tree-lead,9px));height:calc(var(--tree-shelf,10px) + var(--tree-lead,9px));border-left:1px solid var(--tree-line,#d5d1de);position:absolute}.tree-guide--elbow:after{content:"";left:7px;top:var(--tree-shelf,10px);border-top:1px solid var(--tree-line,#d5d1de);width:9px;position:absolute}.tree-guide--elbow:not(.tree-guide--last):before{height:auto;bottom:calc(-1 * var(--tree-lead,9px))}.tree-guide--last:before{height:auto;bottom:calc(100% - var(--tree-shelf,10px));border-bottom:1px solid var(--tree-line,#d5d1de);border-bottom-left-radius:6px}.folder-sidebar .folder-tree{--tree-lead:9px;--tree-shelf:10px}nav.dash-days-nav{--tree-lead:8px;--tree-shelf:10px}.folder-caret{color:#8b8395;cursor:pointer;border-radius:4px;flex:0 0 16px;justify-content:center;align-items:center;width:16px;height:16px;transition:transform .15s,color .15s,background .15s;display:inline-flex}.folder-caret:hover{color:var(--accent);background:var(--accent-light)}.folder-caret--open{transform:rotate(90deg)}.folder-caret--empty{cursor:default;color:#0000}.folder-caret--empty:hover{background:0 0}.folder-breadcrumbs{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px;font-size:13px;display:flex}.folder-breadcrumbs__item,.folder-breadcrumbs__item button{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 5px;font-size:13px}.folder-breadcrumbs__item:hover,.folder-breadcrumbs__item button:hover{background:var(--accent-light)}.folder-breadcrumbs__item.active,.folder-breadcrumbs__item.active button{color:#08060d;cursor:default;font-weight:600}.folder-breadcrumbs__sep{color:#c9c3d2}.folder-tiles{flex-wrap:wrap;gap:12px;margin-bottom:18px;display:flex}.folder-tile{background:var(--surface);border-radius:var(--radius);cursor:pointer;color:#08060d;border:1px solid #e6e8ec;align-items:center;gap:10px;padding:12px 16px;font-size:14px;display:flex;position:relative}.folder-tile:hover{box-shadow:var(--shadow);border-color:var(--accent)}.folder-tile__name{font-weight:600}.folder-tile__count{color:#6b6375;font-size:12px}.folder-tile__actions{gap:2px;margin-left:6px;display:none}.folder-tile:hover .folder-tile__actions{display:flex}.folder-tile__actions button{cursor:pointer;color:#6b6375;background:0 0;border:none;font-size:13px;line-height:1}.folder-tile__actions button:hover{color:var(--danger)}.folder-new{align-items:center;gap:8px;margin-bottom:14px;display:flex}.folder-new input{border:1px solid #ccc;border-radius:8px;padding:7px 10px;font-size:14px}.file-tiles{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;display:grid}.file-tile{background:var(--surface);border-radius:var(--radius);color:#08060d;cursor:pointer;border:1px solid #e6e8ec;flex-direction:column;gap:3px;min-height:62px;padding:6px;text-decoration:none;display:flex;position:relative;overflow:hidden}.file-tile.active,.file-tile--active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.file-tile__preview{background:#f2f4f7;border-radius:5px;justify-content:center;align-items:center;height:30px;font-size:20px;display:flex;overflow:hidden}.file-tile__preview img{object-fit:cover;width:100%;height:100%}.file-tile__name{word-break:break-word;font-size:10.5px;font-weight:600;line-height:1.25}.file-tile__size{color:#6b6375;font-size:9.5px}.file-tile__actions{gap:3px;display:flex;position:absolute;top:4px;right:4px}.file-row__link,.file-tile__link{color:#6b6375;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:flex}.file-row__link:hover{color:var(--accent);background:#fff}.file-tile__link{background:#fffffff2;width:22px;height:22px}.file-tile__link:hover{color:var(--accent);border:1px solid var(--accent)}.file-row__tools>button:not(.file-row__link),.file-tile__actions>button:not(.file-tile__link){display:none}.file-row:hover .file-row__tools>button:not(.file-row__link),.file-tile:hover .file-tile__actions>button:not(.file-tile__link){display:flex}.file-tile__del,.file-tile__replace{cursor:pointer;color:#6b6375;background:#fffffff2;border:1px solid #e6e8ec;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:11px;line-height:1;display:flex}.file-tile__del:hover{color:var(--danger);border-color:var(--danger)}.file-tile__replace:hover{color:var(--accent);border-color:var(--accent)}.file-rail{background:var(--surface);border-right:1px solid #e6e8ec;flex-direction:column;flex-shrink:0;gap:4px;width:216px;padding:8px 6px;display:flex;overflow-y:auto}.file-row{cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:5px 7px;display:flex;position:relative}.file-row:hover{background:#f5f3fb}.file-row--active{border-color:var(--accent);background:var(--accent-light)}.file-row__thumb{background:#f2f4f7;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:flex;overflow:hidden}.file-row__thumb img{object-fit:cover;width:100%;height:100%}.file-row__body{flex:1;min-width:0;padding-right:22px}.file-row__name{color:#08060d;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;line-height:1.25;overflow:hidden}.file-row__size{color:#6b6375;font-size:9.5px}.file-row__tools{align-items:center;gap:3px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.block-card-wrapper[draggable=true]{cursor:grab}.block-card-wrapper[draggable=true]:active{cursor:grabbing}.folder-node[draggable=true],.folder-tile[draggable=true]{cursor:grab}.drop-target{background:var(--accent-light);outline:2px dashed var(--accent);outline-offset:-2px}.folder-tile.drop-target{border-color:var(--accent);box-shadow:var(--shadow)}.folder-breadcrumbs .drop-target{background:var(--accent-light);outline-color:var(--accent)}.drag-hint{color:var(--accent);margin:0 0 12px;font-size:12.5px}.folder-tile--add{color:var(--accent);border-radius:var(--radius);cursor:pointer;background:0 0;border:1px dashed #c9c3d2;align-items:center;gap:8px;padding:12px 16px;font-family:inherit;font-size:13.5px;font-weight:600;display:flex}.folder-tile--add:hover{border-color:var(--accent);background:var(--accent-light)}.folder-tile--form{cursor:default;flex-direction:column;align-items:stretch;gap:6px;min-width:190px;display:flex}.folder-tile--form input{border:1px solid #ccc;border-radius:8px;width:100%;padding:6px 9px;font-family:inherit;font-size:13px}.folder-tile__label{color:#6b6375;font-size:11.5px}.folder-tile__form-actions{gap:6px;display:flex}.folder-tile__form-actions button{cursor:pointer;color:#08060d;background:#fff;border:1px solid #e6e8ec;border-radius:7px;padding:3px 10px;font-size:12px}.folder-tile__form-actions button:hover{border-color:var(--accent);color:var(--accent)}.folder-new{flex-wrap:wrap}.folder-new__hint{color:#6b6375;width:100%;font-size:11.5px}.folder-card{background:var(--surface);cursor:pointer;text-align:left;border:1px solid #e6e8ec;border-radius:12px;align-items:center;gap:10px;padding:11px 16px;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .15s;display:inline-flex}.folder-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-1px)}.folder-card__name{color:#08060d;overflow-wrap:anywhere;font-size:14.5px;font-weight:600}.folder-card{max-width:100%}.folder-card__count{color:#6b6375;background:#f2f4f7;border-radius:20px;padding:1px 8px;font-size:11.5px}.stats-switch{background:#f2f4f7;border:1px solid #e6e8ec;border-radius:10px;gap:4px;padding:4px;display:inline-flex}.stats-switch__btn{color:#4b4552;cursor:pointer;background:0 0;border:none;border-radius:7px;padding:7px 14px;font-family:inherit;font-size:13.5px}.stats-switch__btn:hover{background:#fff}.stats-switch__btn.active{color:var(--accent);background:#fff;font-weight:600;box-shadow:0 1px 3px #00000014}.role-badge{color:#6b6375;background:#f2f4f7;border:1px solid #e6e8ec;border-radius:20px;padding:1px 9px;font-size:11px}.fs-crumbs{flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 16px;font-size:13.5px;display:flex}.fs-crumbs button{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:3px 7px;font-family:inherit;font-size:13.5px}.fs-crumbs button:hover{background:var(--accent-light)}.fs-crumbs button.active{color:#08060d;cursor:default;font-weight:600}.fs-crumbs__sep{color:#c9c3d2}.fs-btn{border:1px solid var(--accent);color:var(--accent);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:6px 14px;font-family:inherit;font-size:13px}.fs-btn:hover{background:var(--accent-light)}.fs-btn--ghost{color:#4b4552;border-color:#d8d5de}.fs-btn--ghost:hover{border-color:var(--accent);color:var(--accent)}@media (width<=820px){.blocks-layout{flex-direction:column}.folder-sidebar{flex:none;width:100%;max-height:none;position:static}}.viewer-bar,.file-drawer{display:none}@media (width<=720px){.block-viewer{height:100vh;height:100dvh!important}.block-viewer__bar,.block-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;height:auto!important;padding:8px 12px!important}.block-bar__middle{flex:100%;order:0;align-items:center;gap:10px;min-width:0;display:flex!important}.block-bar__back{flex-shrink:0;order:1;align-items:center;gap:5px;min-height:34px;display:inline-flex}.block-bar__actions{margin-left:0;display:contents!important}.block-viewer__bar .block-bar__actions>button:first-of-type{order:4}.block-viewer__bar .block-bar__actions>button:nth-of-type(2){order:2}.block-viewer__bar .block-bar__actions>button:nth-of-type(3){order:3}.block-detail-header .block-bar__actions>button:first-of-type{order:2}.block-detail-header .block-bar__actions>button:nth-of-type(2){order:3}.block-bar__logo{height:20px}.block-bar__name{font-size:13px}.block-title{text-align:center;text-overflow:ellipsis;flex:auto;order:0;min-width:0;overflow:hidden;white-space:nowrap!important;font-size:15px!important;position:static!important;left:auto!important;transform:none!important}.block-viewer__bar button,.block-detail-header button{white-space:nowrap;align-items:center;min-height:32px;display:inline-flex;padding:0 6px!important;font-size:13px!important}.file-rail{display:none!important}.viewer-bar{background:#fff;border-bottom:1px solid #e6e8ec;flex-shrink:0;align-items:center;gap:10px;padding:8px 12px;display:flex}.viewer-bar__more{border:1px solid var(--accent);background:var(--accent-light);width:66px;height:56px;color:var(--accent);text-align:center;cursor:pointer;border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:3px;padding:4px;font-family:inherit;font-size:10.5px;font-weight:600;line-height:1.15;display:flex}.viewer-bar__more span{text-overflow:ellipsis;overflow:hidden}.viewer-bar__more:active{transform:scale(.97)}.viewer-bar__current{flex:1;min-width:0}.viewer-bar__name{color:#08060d;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.viewer-bar__size{color:#6b6375;font-size:11px}.file-drawer{z-index:70;pointer-events:none;display:block;position:fixed;inset:0}.file-drawer__backdrop{opacity:0;background:#08060d73;transition:opacity .2s;position:absolute;inset:0}.file-drawer__panel{width:min(86vw,320px);padding-top:env(safe-area-inset-top);background:#fff;flex-direction:column;transition:transform .22s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;top:0;bottom:0;left:0;transform:translate(-102%);box-shadow:2px 0 18px #08060d2e}.file-drawer--open{pointer-events:auto}.file-drawer--open .file-drawer__backdrop{opacity:1}.file-drawer--open .file-drawer__panel{transform:none}.file-drawer__head{color:#08060d;border-bottom:1px solid #eceef2;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:12px 12px 10px;font-size:13px;font-weight:600;display:flex}.file-drawer__close{color:#6b6375;cursor:pointer;background:#fff;border:1px solid #e6e8ec;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.file-drawer__list{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:8px 8px calc(20px + env(safe-area-inset-bottom));flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.file-drawer__list .file-row{border-radius:9px;padding:8px 58px 8px 8px}.file-drawer__list .file-row__thumb{width:36px;height:36px}.file-drawer__list .file-row__name{font-size:13px}.file-drawer__list .file-row__size{font-size:11px}.file-drawer__list .file-row__actions{display:flex;top:50%;right:6px;transform:translateY(-50%)}.file-drawer__list .file-row__actions button{width:26px;height:26px}.block-detail-body{padding:0 14px 40px!important}.block-detail-body h3{font-size:16px!important}.file-tile__name{font-size:11.5px}.file-tile__size{font-size:10.5px}.file-frame--image{width:100%!important;height:60vh!important}}.studied-tr-theme>td{background:#faf8ff}.studied-tr-theme:hover>td{background:#f6f2ff}.studied-tr-block>td{background:#fff}.studied-tr-block:hover>td{background:#fcfbfe}.studied-tr-test>td{background:#fbfaff}.studied-tr-test>td:first-child{box-shadow:inset 3px 0 #7c5cf0}.studied-tr-test--oral>td{background:#f4fbfa}.studied-tr-test--oral>td:first-child{box-shadow:inset 3px 0 #16a89b}.test-row{box-sizing:border-box;color:#08060d;background:#fff;border:1px solid #ded2fb;border-radius:8px;align-items:center;gap:8px;width:100%;padding:5px 9px;font-size:13px;text-decoration:none;display:flex}.test-row:hover{box-shadow:0 2px 8px #7c5cf029}.test-row__kind{color:#5b3fd1;background:#f0eaff;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:700}.test-row__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.test-row__count{color:#6b6375;flex-shrink:0;font-size:11.5px}.studied-tr-test--oral .test-row{border-color:#b7e5e0}.studied-tr-test--oral .test-row__kind{color:#0d7d72;background:#e2f5f3}.studied-tr-test--oral .test-row:hover{box-shadow:0 2px 8px #16a89b2e}.comment-tip{z-index:70;overflow-wrap:anywhere;word-break:break-word;color:#08060d;pointer-events:none;white-space:pre-wrap;background:#fffdf5;border:1px solid #e6dfc4;border-radius:10px;width:max-content;max-width:min(420px,100vw - 24px);max-height:45vh;padding:8px 11px;font-size:12.5px;position:fixed;overflow-y:auto;box-shadow:0 8px 24px #00000024}.comment-tip__label{color:#6b6375;margin-bottom:3px;font-size:11px}.kind-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.kind-dot--regular{background:#7c5cf0}.kind-dot--oral{background:#16a89b}.kind-pill{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.kind-pill--regular{color:#5b3fd1;background:#f0eaff}.kind-pill--oral{color:#0d7d72;background:#e2f5f3}.test-card--regular{background:#faf8ff;border-left:4px solid #7c5cf0}.test-card--oral{background:#f5fcfb;border-left:4px solid #16a89b}.tests-kind-switch{max-width:320px}.kind-switch{background:#f5f3f7;border-radius:10px;gap:6px;margin-bottom:12px;padding:4px;display:flex}.kind-switch__btn{cursor:pointer;color:#6b6375;background:0 0;border:none;border-radius:8px;flex:1;padding:8px 12px;font-family:inherit;font-size:13.5px}.kind-switch__btn--regular.active{color:#fff;background:#7c5cf0}.kind-switch__btn--oral.active{color:#fff;background:#16a89b}.drop-zone{text-align:center;background:#f7fdfc;border:2px dashed #b7e5e0;border-radius:12px;margin-bottom:14px;padding:14px}.drop-zone.is-over{background:#eafaf8;border-color:#16a89b}.drop-zone__pick{color:#0d7d72;cursor:pointer;margin-top:8px;font-size:12.5px;text-decoration:underline;display:inline-block}.conduct-page{flex-direction:column;gap:10px;display:flex}.conduct-page__title{color:#08060d;margin:0;font-size:20px;font-weight:700}.conduct-page__sub{color:#6b6375;margin:0;font-size:13px}.conduct-table-wrap{border:1px solid #e5e4e7;border-radius:10px;overflow-x:auto}.conduct-table{border-collapse:collapse;width:100%;font-size:13px}.conduct-table th{color:#0d7d72;text-align:left;vertical-align:top;z-index:3;text-transform:none;letter-spacing:0;background:#f7fdfc;border-bottom:1px solid #e5e4e7;padding:8px 10px;font-size:12px;position:sticky;top:0}.conduct-table td{border-bottom:1px solid #f2f1f4;padding:7px 10px}.conduct-th{align-items:flex-start;gap:6px;display:flex}.conduct-th__name{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:112px;font-size:12.5px;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.conduct-th__remove{color:#b9b3c1;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:15px;line-height:1}.conduct-th__remove:hover{color:#c0392b}.conduct-picker{border:1px solid #e5e4e7;border-radius:10px;margin-bottom:10px;padding:8px}.conduct-picker__list{flex-direction:column;max-height:180px;display:flex;overflow-y:auto}.conduct-picker__item{text-align:left;cursor:pointer;color:#08060d;background:#fff;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:7px 8px;font-family:inherit;font-size:13px;display:flex}.conduct-picker__item:hover{background:#f4fbfa}.conduct-history{border-collapse:collapse;width:100%;font-size:13px}.conduct-history th{text-align:left;color:#6b6375;text-transform:uppercase;letter-spacing:.03em;padding:6px 8px;font-size:11.5px}.conduct-history td{border-top:1px solid #f0eef2;padding:6px 8px}.test-chip{color:#08060d;background:#f3edff;border:1px solid #e2d8f7;border-radius:7px;align-items:center;gap:6px;padding:4px 8px;font-size:12.5px;font-weight:600;text-decoration:none;display:flex}.test-chip:hover{box-shadow:0 2px 8px #7c5cf024}.cell-popover-overlay{z-index:60;background:0 0;position:fixed;inset:0}.cell-popover{z-index:61;background:#fff;border:1px solid #d8d5de;border-radius:12px;padding:10px 12px;position:fixed;box-shadow:0 10px 30px #00000024}.cell-popover-list{flex-direction:column;gap:2px;max-height:230px;display:flex;overflow-y:auto}.cell-popover-user{text-align:left;color:#08060d;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;width:100%;padding:7px 8px;font-family:inherit;font-size:13.5px;display:flex}.cell-popover-user:hover{background:#f6f2ff;border-color:#e2d8f7}.cell-popover-user.is-current{background:#f3edff;border-color:#d9ccf7;font-weight:600}.cell-popover-user.is-default{background:#f7fbf6;border-color:#d8e8d4}.cell-popover-badge{color:#4a7d3f;background:#eaf4e6;border-radius:999px;flex-shrink:0;padding:1px 7px;font-size:10.5px}.cell-popover-btn{cursor:pointer;color:#08060d;background:#fff;border:1px solid #ccc;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:13px}.cell-popover-btn--primary{background:var(--accent,#7c5cf0);border-color:var(--accent,#7c5cf0);color:#fff}.cell-popover-btn--danger{color:#c0392b;border-color:#e8c6c0}@media (width<=720px){.cell-popover{max-width:calc(100vw - 16px)}.cell-popover-list{max-height:180px}}.notif-wrap{align-items:center;display:flex;position:relative}.notif-bell{width:36px;height:36px;color:var(--text);cursor:pointer;transition:all var(--transition);background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.notif-bell:hover{background:var(--accent-light);color:var(--accent)}.notif-bell--open{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.notif-badge{color:#fff;background:#d64545;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-4px;box-shadow:0 0 0 2px #fff}.notif-popup{z-index:120;background:#fff;border:1px solid #36648329;border-radius:12px;width:420px;max-width:calc(100vw - 24px);position:absolute;top:calc(100% + 12px);right:0;overflow:hidden;box-shadow:0 10px 30px #10203024}.notif-popup__head{border-bottom:1px solid #eceff2;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.notif-popup__title{color:var(--text-h);font-size:14px;font-weight:600}.notif-popup__count{color:var(--accent);background:var(--accent-light);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600}.notif-popup__list{max-height:384px;overflow-y:auto}.notif-popup__empty{text-align:center;color:#9aa0a6;padding:24px 16px;font-size:13px}.notif-popup__all{width:100%;color:var(--accent);cursor:pointer;transition:background var(--transition);background:#fbfcfd;border:none;border-top:1px solid #eceff2;padding:12px;font-family:inherit;font-size:13px;font-weight:600}.notif-popup__all:hover{background:var(--accent-light)}.notif-row{text-align:left;width:100%;font:inherit;cursor:pointer;transition:background var(--transition);background:0 0;border:none;border-bottom:1px solid #f1f3f5;gap:12px;padding:12px 16px;display:flex}.notif-row:last-child{border-bottom:none}.notif-row:hover{background:#f7f9fb}.notif-row--flat{cursor:default}.notif-row--unread{background:#f4f8fb}.notif-avatar{background:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:relative}.notif-avatar--tests{background:#4d7796}.notif-avatar__mark{border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;bottom:-2px;right:-2px}.notif-avatar__mark--add{background:#2f855a}.notif-avatar__mark--edit{background:#366483}.notif-avatar__mark--remove{background:#c53030}.notif-row__body{flex-direction:column;gap:3px;min-width:0;display:flex}.notif-row__text{color:#2a2f3a;overflow-wrap:anywhere;font-size:13.5px;line-height:1.45}.notif-row__actor{color:var(--text-h);font-weight:600}.notif-row__time{color:#8b93a1;font-size:12px}.notif-page{max-width:900px;margin:0 auto;padding:28px 20px 64px}.notif-page__head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.notif-page__title{color:var(--text-h);margin:0;font-size:24px}.notif-page__meta{color:#8b93a1;font-size:13px}.notif-page__hint{color:var(--text);margin:8px 0 18px;font-size:13px}.notif-page__error{color:var(--danger);background:#fdf3f2;border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:13px}.notif-page__list{background:#fff;border:1px solid #e5e4e7;border-radius:12px;overflow:hidden}.notif-page__more{border:1px solid var(--accent);color:var(--accent);cursor:pointer;transition:all var(--transition);background:#fff;border-radius:10px;margin:16px auto 0;padding:10px 22px;font-family:inherit;font-size:13px;font-weight:600;display:block}.notif-page__more:hover:not(:disabled){background:var(--accent-light)}.notif-page__more:disabled{opacity:.6;cursor:default}.notif-top{background:var(--accent);color:#fff;cursor:pointer;z-index:130;border:none;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;font-size:22px;line-height:1;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 4px 16px #00000047}@media (width<=700px){.notif-bell{width:32px;height:32px}.notif-popup{width:calc(100vw - 20px)}}@media (width<=480px){.notif-popup{width:auto;max-width:none;position:fixed;top:60px;left:10px;right:10px}.notif-page{padding:16px 12px 56px}}.stats-check{width:16px;height:16px;accent-color:var(--accent,#7c5cf0);cursor:pointer;flex:none}.stats-tr--selected{background:#faf8ff}.stats-card--selected{border-color:var(--accent);background:#faf8ff}.stats-tr{border-top:1px solid #f0eef2}.stats-tr--group-start{border-top:2px solid #ddd8e6}.stats-tbody:hover .stats-tr{background:#faf8ff}.stats-tbody:hover .stats-tr--selected,.stats-tr--selected{background:#f1ecfb}.stats-test-cell{color:#08060d;vertical-align:middle;border-right:1px solid #f4f2f7;padding:12px 16px;font-weight:600}.stats-test-cell__count{color:#9a92a3;margin-top:4px;font-size:12px;font-weight:400;display:block}.stats-table th,.stats-table td{text-align:center}.header-results-link{letter-spacing:.04em;text-transform:uppercase;color:var(--accent,#7c5cf0);white-space:nowrap;border:1px solid var(--accent,#7c5cf0);transition:all var(--transition);background:#fff;border-radius:8px;margin-left:4px;padding:5px 12px;font-size:11px;font-weight:400;line-height:1.2;text-decoration:none}.header-results-link:hover{background:var(--accent-light)}.header-results-link.active{color:var(--accent,#7c5cf0);background:#fff}.header-results-link__short{display:none}.results-topbar{justify-content:flex-end;margin-bottom:12px;padding:0 28px;display:flex}.xlsx-btn{color:#fff;background:var(--accent,#7c5cf0);border:1px solid var(--accent,#7c5cf0);cursor:pointer;transition:all var(--transition);border-radius:8px;align-items:center;gap:7px;padding:8px 16px;font-size:13.5px;font-weight:600;display:inline-flex}.xlsx-btn:hover:not(:disabled){filter:brightness(.93)}.xlsx-btn:disabled{opacity:.6;cursor:default}.xlsx-btn--small{flex-shrink:0;padding:6px 12px;font-size:12.5px}.results-card{background:#fff;border:1px solid #e5e4e7;border-radius:12px;margin-bottom:14px;overflow:hidden}.results-card__head{border-bottom:1px solid #f0eef2;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.results-table{border-collapse:collapse;width:100%;font-size:13.5px}.results-table th{text-align:left;color:#6b6375;background:#fbfafc;border-bottom:1px solid #f0eef2;padding:9px 14px;font-size:12.5px;font-weight:600}.results-table td{border-bottom:1px solid #f6f5f7;padding:9px 14px}.results-tr{cursor:pointer;transition:background var(--transition)}.results-tr:hover{background:#faf8ff}.results-tr:last-child td{border-bottom:none}.results-cards{display:none}.results-card-item{text-align:left;width:100%;font:inherit;color:#08060d;cursor:pointer;background:#fff;border:none;border-top:1px solid #f0eef2;flex-direction:column;gap:4px;padding:10px 14px;font-size:13.5px;display:flex}.results-card-item__row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.results-empty-row{background:#fff;border:1px solid #eee;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;padding:10px 14px;font-size:13.5px;display:flex}.results-empty-row>span:nth-child(2){flex:1;min-width:0}.results-open-link{color:var(--accent,#7c5cf0);border:1px solid var(--accent,#7c5cf0);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:5px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.link-cell{font:inherit;color:var(--accent,#7c5cf0);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.link-cell:hover{text-decoration:underline}.row-clickable{cursor:pointer;transition:background var(--transition)}.row-clickable:hover{background:#faf8ff}@media (width<=720px){.results-card__table-wrap{display:none}.results-cards{flex-direction:column;display:flex}.results-card__head{flex-wrap:wrap}}@media (width<=700px){.header-results-link{margin-left:0;padding:5px 10px;font-size:11px}.results-topbar{padding:0 14px}}@media (width<=480px){.header-results-link__long{display:none}.header-results-link__short{display:inline}}@media (width<=700px){.app-header{flex-wrap:wrap;gap:6px;height:auto;padding:8px 10px;position:static}.app-header.header-hidden{animation:none;display:none}.header-line{flex-wrap:wrap;gap:4px}.app-logo-img{flex-shrink:0;height:22px;display:block}.header-brand{margin-left:6px}.header-brand__title{letter-spacing:-.01em;flex-direction:column;min-width:0;font-size:13px;line-height:1.05;display:flex}.header-subtitle{display:none}.header-results-link{letter-spacing:.02em;text-align:center;flex:1 1 0;justify-content:center;align-items:center;min-width:0;min-height:30px;margin-left:0;padding:4px 8px;font-size:12px;display:inline-flex}.header-results-link__long{display:none}.header-results-link__short{display:inline}.notif-bell{width:30px;height:30px;padding:0}.notif-bell svg{width:18px;height:18px}.header-user{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:52px;max-width:120px;padding:4px 2px;font-size:13px;overflow:hidden}.header-user__full{display:none}.header-user__short{display:inline}.header-logout-btn{flex-shrink:0;padding:4px 8px;font-size:12px}.header-admin-link{letter-spacing:.04em;text-transform:uppercase;border-radius:8px;flex:1 0 100%;order:2;justify-content:center;align-items:center;width:100%;height:auto;margin:0;padding:7px 0;font-size:12px;font-weight:400;display:inline-flex}.header-admin-link__long{display:inline}.header-admin-link__short{display:none}.app-content,.app-content--flush{padding-top:0}}@media (width<=480px){.app-header{gap:4px 6px;padding:6px 10px}.app-logo-img{height:20px}.header-brand__title{font-size:12.5px}.header-results-link{letter-spacing:0;min-height:28px;padding:4px 6px;font-size:11px}.notif-bell{width:28px;height:28px}.notif-bell svg{width:17px;height:17px}.header-user{max-width:110px;font-size:12.5px}.header-logout-btn{padding:3px 7px;font-size:11.5px}}@media (width<=359px){.header-results-link{flex:none}}
