:root{--accent:#1F1373;--accent-soft:#E6E4F0;--card:#FFFFFF;--ink:#383A3F;--muted:#A2A2A2;--line:#E1E4E8;--bg:#F4F4F6;--red:#B91C1C;--red-soft:#F7E4E4;--shadow:0 10px 30px rgba(31,19,115,.10);--shadow-soft:0 4px 14px rgba(31,19,115,.06)}
*{box-sizing:border-box}body{margin:0;font-family:"Roboto","Segoe UI",Arial,sans-serif;color:var(--ink);font-size:15px}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;color:var(--card);padding:24px 16px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:13px;align-items:center;padding:0 7px 25px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark{display:grid;place-items:center;width:47px;height:47px;border-radius:14px;font-weight:700;letter-spacing:.5px}.brand strong{display:block;font-size:17px}.brand small{display:block;color:var(--muted);font-size:12px;line-height:1.35;margin-top:3px;max-width:165px}.sidebar nav{display:flex;flex-direction:column;gap:5px;margin-top:22px}.nav{border:0;background:none;color:var(--muted);text-align:left;border-radius:10px;padding:12px 11px;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:6px;cursor:pointer;font-size:14.5px}.nav:hover,.nav.active{background:rgba(255,255,255,.11);color:var(--card)}.nav>span{font-size:19px}.nav em{font-style:normal;background:rgba(255,255,255,.12);border-radius:999px;padding:3px 7px;font-size:12px}.sidebar-note{margin-top:auto;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:12px}.sidebar-note b{color:var(--card);font-size:13.5px}main{margin-left:270px;min-height:100vh;padding:34px 42px 70px;max-width:1720px}.view{display:none}.view.active{display:block}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:24px}.page-head h1{font-size:32px;line-height:1.16;margin:4px 0 8px;letter-spacing:-.5px}.page-head p{color:var(--muted);margin:0;max-width:820px;line-height:1.5}.eyebrow{text-transform:uppercase!important;letter-spacing:1.2px;font-size:12px!important;font-weight:700;color:var(--accent)!important}.primary,.secondary,.danger,.link-btn{border:0;border-radius:9px;padding:11px 16px;font-weight:600;cursor:pointer;font-size:13.5px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary{background:var(--accent);color:var(--card)}.primary:hover{background:var(--accent)}.primary:disabled{opacity:.45;cursor:not-allowed}.secondary{background:var(--line);color:var(--accent);border:1px solid var(--line)}.danger{background:var(--red-soft);color:var(--red);border:1px solid var(--red-soft)}.wide{width:100%;margin-top:15px}.metrics{display:grid;grid-template-columns:repeat(6,minmax(125px,1fr));gap:12px;margin-bottom:18px}.metric{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:17px;box-shadow:var(--shadow)}.metric small{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.7px}.metric b{display:block;font-size:27px;margin-top:8px}.metric em{font-style:normal;font-size:12px;color:var(--muted)}.card{background:var(--card);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}article.card{padding:20px}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:repeat(3,1fr)}.card-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.card h2{font-size:19px;margin:3px 0}.notice{margin-top:16px;border-radius:12px;padding:15px 18px;background:var(--line);border:1px solid var(--line);display:flex;gap:14px;align-items:flex-start}.notice b{color:var(--accent);white-space:nowrap}.notice span{color:var(--accent);line-height:1.45}.bar-row{display:grid;grid-template-columns:140px 1fr 45px;align-items:center;gap:10px;margin:12px 0}.bar{height:9px;background:var(--line);border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:var(--accent);border-radius:99px}.queue-item{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.queue-item:last-child{border:0}.queue-item span{color:var(--muted)}.queue-item b{font-size:19px}.toolbar{display:flex;gap:9px;align-items:center;margin-bottom:15px}.toolbar input{flex:1;min-width:230px}.toolbar input,.toolbar select,.note-input,textarea,.field-input{height:39px;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:8px 11px;font:inherit;color:inherit;outline:none}.toolbar input:focus,.toolbar select:focus,textarea:focus,.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,19,115,.10)}.result-count{margin-left:auto;color:var(--muted);font-size:12.5px;white-space:nowrap}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;font-size:13.5px}th{background:var(--bg);text-align:left;color:var(--ink);font-size:11px;text-transform:uppercase;letter-spacing:.6px;padding:10px;white-space:nowrap}td{padding:11px 10px;border-top:1px solid var(--line);vertical-align:top;line-height:1.4}td.wrap{min-width:340px}td small{color:var(--muted)}tbody tr:hover{background:var(--bg)}.type,.status,.pill{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;white-space:nowrap}.type.pk{background:var(--accent);color:var(--card)}.type.pp{background:var(--card);color:var(--accent);border:1px solid var(--accent)}.status.unverified{background:var(--bg);color:var(--muted);border:1px solid var(--line)}.status.verified{background:var(--accent);color:var(--card)}.status.needs_clarification{background:var(--red-soft);color:var(--red)}.mini-btn{border:1px solid var(--line);background:var(--card);border-radius:7px;padding:6px 9px;color:var(--accent);cursor:pointer;font-size:12px}.drop-card{text-align:center;padding:35px!important}.drop-icon{width:62px;height:62px;display:grid;place-items:center;margin:0 auto 14px;background:var(--line);color:var(--accent);font-size:29px;border-radius:18px}.drop-card p{color:var(--muted)}.button-row{display:flex;gap:9px;justify-content:center;margin:20px 0}.file-label input{display:none}.selected-files{padding:12px;border-radius:8px;background:var(--bg);color:var(--muted);font-size:12.5px;max-height:105px;overflow:auto}.feature-list{list-style:none;padding:0;margin:0}.feature-list li{display:flex;flex-direction:column;gap:3px;padding:13px 0;border-bottom:1px solid var(--line)}.feature-list li:last-child{border:0}.feature-list span{color:var(--muted);font-size:13.5px}.progress{margin-top:15px;background:var(--line);border-radius:8px;overflow:hidden;position:relative;height:34px}.progress div{position:absolute;inset:0;background:var(--line);background-size:200% 100%;animation:load 1.5s infinite}.progress span{position:relative;line-height:34px;font-size:12.5px}.hidden{display:none!important}@keyframes load{to{background-position:-200% 0}}.import-result{margin-top:15px;padding:12px;background:var(--bg);border-radius:8px;line-height:1.5}.review-layout{display:grid;grid-template-columns:330px 1fr;gap:15px;align-items:start}.candidate-list{padding:10px;max-height:calc(100vh - 175px);overflow:auto;position:sticky;top:18px}.toolbar.compact{margin:0 0 8px}.toolbar.compact select{width:100%}.candidate{width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:13px 10px;cursor:pointer}.candidate:hover,.candidate.active{background:var(--line)}.candidate strong{display:block;font-size:12.5px;line-height:1.35}.candidate small{display:block;margin-top:6px;color:var(--muted)}.score{font-size:12px;font-weight:700;color:var(--accent)}.review-card{min-height:480px}.empty{min-height:380px;display:grid;place-content:center;text-align:center;color:var(--muted);gap:6px}.comparison-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:15px}.score-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:15px 0}.score-box{background:var(--bg);padding:10px;border-radius:8px}.score-box small{display:block;color:var(--muted);font-size:11px}.score-box b{font-size:16px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px}.source-card{border:1px solid var(--line);border-radius:10px;padding:13px}.source-card h3{font-size:15px;line-height:1.4;margin:8px 0}.source-meta{font-size:12px;color:var(--muted)}.outcome-section{margin-top:11px}.outcome-section summary{cursor:pointer;font-weight:700;font-size:12.5px}.outcome-item{padding:8px 0;border-top:1px solid var(--line);font-size:12.5px;line-height:1.45}.outcome-item code{color:var(--accent);font-size:11px}.final-editor{margin-top:17px;border-top:2px solid var(--line);padding-top:17px}.final-editor textarea{width:100%;height:auto;min-height:75px;resize:vertical}.field-label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:11px 0 6px}.decision-row{display:flex;justify-content:space-between;gap:10px;align-items:flex-end;margin-top:14px}.decision-row .note-input{flex:1}.checks{display:flex;gap:12px;flex-wrap:wrap}.check{display:flex;gap:6px;align-items:center;font-size:12.5px}.action-card{padding:22px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:5px}.action-card>span{font-size:26px;color:var(--accent);margin-bottom:8px}.action-card small{color:var(--muted)}.export-cards{margin-bottom:17px}.modal{display:none;position:fixed;inset:0;z-index:30}.modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(56,58,63,.5)}.modal-panel{position:absolute;inset:4vh 4vw 4vh auto;width:min(900px,92vw);background:var(--card);border-radius:18px;padding:28px;overflow:auto;box-shadow:0 20px 80px rgba(56,58,63,.25)}.modal-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:28px;color:var(--ink);cursor:pointer}.modal h2{font-size:23px;margin:6px 35px 16px 0}.modal-section{padding:15px 0;border-top:1px solid var(--line)}.modal-section h3{font-size:14.5px}.meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.meta{background:var(--bg);border-radius:8px;padding:10px}.meta b,.meta span{display:block}.meta b{font-size:11px;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.warning{padding:9px 12px;background:var(--line);color:var(--accent);border-radius:8px;margin:7px 0;font-size:12.5px}.modal textarea{width:100%;height:auto;min-height:70px}.outcome-edit-row{display:grid;grid-template-columns:105px 1fr auto;gap:8px;align-items:start;margin:7px 0}.outcome-edit-row textarea{min-height:58px}.specialty-tags{display:flex;gap:5px;flex-wrap:wrap}.pill{background:var(--line);color:var(--accent)}.toast{position:fixed;right:25px;top:20px;z-index:50;background:var(--accent);color:var(--card);border-radius:10px;padding:12px 17px;box-shadow:var(--shadow);transform:translateY(-90px);opacity:0;transition:.25s}.toast.show{transform:translateY(0);opacity:1}.toast.error{background:var(--red)}
@media(max-width:1200px){.metrics{grid-template-columns:repeat(3,1fr)}.grid.two{grid-template-columns:1fr}.review-layout{grid-template-columns:280px 1fr}.score-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.sidebar{position:relative;width:100%;height:auto}.sidebar nav{display:grid;grid-template-columns:repeat(2,1fr)}.sidebar-note{display:none}main{margin:0;padding:22px}.metrics{grid-template-columns:repeat(2,1fr)}.review-layout,.comparison{grid-template-columns:1fr}.candidate-list{position:relative;max-height:340px}.grid.three,.meta-grid{grid-template-columns:1fr}.page-head{flex-direction:column}.toolbar{flex-wrap:wrap}.toolbar input{min-width:100%}}

/* Версия 5: групповая экспертиза и конструктор ДПП */
.sidebar nav{overflow:auto;padding-right:2px}.review-notice{margin:-8px 0 16px}.group-count{float:right;display:grid;place-items:center;min-width:27px;height:27px;padding:0 6px;border-radius:999px;background:var(--line);color:var(--accent);font-weight:700}.review-tools{display:flex;align-items:center;gap:12px;padding:12px 0;color:var(--muted);font-size:12.5px}.group-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:620px;overflow:auto;padding-right:3px}.group-member{position:relative;background:var(--card)}.group-member h3{padding-right:5px}.member-check{display:flex;align-items:center;gap:7px;color:var(--accent);font-size:12px;font-weight:700}.member-check input{accent-color:var(--accent)}.use-wording{margin-top:9px}.resolved-member{opacity:.58;background:var(--bg)}.outcome-editor-head{display:flex;justify-content:space-between;gap:15px;align-items:end}.outcome-editor-head small{display:block;color:var(--muted);font-size:12px}.merge-outcome{display:grid;grid-template-columns:24px 125px 1fr 78px;gap:8px;align-items:start;padding:8px 0;border-top:1px solid var(--line)}.merge-outcome textarea{width:100%;height:auto;min-height:58px;resize:vertical}.merge-outcome select{height:38px;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:7px}.merge-outcome small{color:var(--muted);font-size:11px}.outcome-kind{padding-top:10px;font-size:12px;font-weight:700;color:var(--accent)}.full{width:100%}.group-decisions{justify-content:flex-start;flex-wrap:wrap}.empty.small{min-height:150px}.muted{color:var(--muted)}

.constructor-head .button-row{margin:0;flex-wrap:wrap;justify-content:flex-end}.constructor-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:16px;align-items:start}.constructor-side{display:grid;gap:14px;position:sticky;top:18px;max-height:calc(100vh - 36px);overflow:auto}.draft-card,.step-card{padding:14px!important}.draft-list{display:grid;gap:5px;max-height:230px;overflow:auto}.draft-item{border:1px solid transparent;background:var(--bg);border-radius:9px;padding:9px;text-align:left;display:grid;grid-template-columns:auto 1fr;gap:4px 8px;cursor:pointer;color:inherit}.draft-item:hover,.draft-item.active{border-color:var(--line);background:var(--line)}.draft-item b{font-size:12.5px;line-height:1.35}.draft-item small{grid-column:1/-1;color:var(--muted);font-size:11px}.section-steps{display:grid;gap:3px}.section-step{border:0;background:none;border-radius:8px;display:grid;grid-template-columns:26px 1fr;gap:7px;align-items:center;text-align:left;padding:7px;cursor:pointer;color:var(--accent)}.section-step:hover,.section-step.active{background:var(--line);color:var(--accent)}.section-step>span{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:var(--line);font-size:11px;font-weight:700}.section-step.active>span{background:var(--accent);color:var(--card)}.section-step b{font-size:12px;line-height:1.25}.section-step small{grid-column:2;color:var(--accent);font-size:10px}.constructor-main{display:grid;gap:14px;min-width:0}.constructor-editor{min-height:600px;padding:25px!important}.constructor-section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:18px}.constructor-section-head h2{font-size:24px;margin:3px 0}.form-grid{display:grid;gap:13px}.form-grid.two-col{grid-template-columns:1fr 1fr}.form-grid .span-two{grid-column:1/-1}.form-grid label,.work-topic label,.assessment-item label{display:flex;flex-direction:column;gap:6px}.form-grid label>span,.work-topic label>span,.assessment-item label>span,.field-caption{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.45px;color:var(--accent)}.form-grid input,.form-grid select,.form-grid textarea,.module-head input,.topic-grid input,.picker-list>input,.assessment-item input{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:9px 11px;font:inherit;color:inherit;outline:none}.form-grid input,.form-grid select,.module-head input,.topic-grid input,.picker-list>input,.assessment-item input{height:40px}.form-grid textarea{height:auto;min-height:84px;resize:vertical}.form-grid label small{color:var(--muted);font-size:11px}.switch-row{flex-direction:row!important;align-items:flex-start;border:1px solid var(--line);border-radius:10px;background:var(--line);padding:13px}.switch-row>input{width:18px;height:18px;accent-color:var(--accent)}.switch-row>span{display:flex;flex-direction:column;gap:3px;text-transform:none!important;letter-spacing:0!important}.switch-row small{display:block}.readonly-block{border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:22px}.readonly-block .lock{display:inline-flex;background:var(--line);color:var(--accent);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.readonly-block p{font-family:"Times New Roman",serif;font-size:19px;line-height:1.5;text-align:justify;white-space:pre-line}.hours-hero{display:grid;grid-template-columns:1fr 220px;gap:16px;border:2px solid;padding:22px;border-radius:13px;margin-bottom:12px}.hours-hero.ok{border-color:var(--accent);background:var(--bg)}.hours-hero.bad{border-color:var(--line);background:var(--bg)}.hours-hero label{display:flex;flex-direction:column;gap:7px;margin-top:7px}.hours-hero label span{font-weight:700}.hours-hero input{width:210px;height:48px;border:1px solid var(--line);border-radius:9px;padding:8px 12px;font-size:21px;font-weight:700}.hours-equals{display:grid;place-content:center;text-align:center;border-left:1px solid rgba(56,58,63,.1)}.hours-equals span{font-size:39px;font-weight:700}.hours-equals small{color:var(--muted)}.formula-note{margin-top:14px;padding:12px;border-radius:9px;background:var(--bg);color:var(--muted);font-size:12.5px}.constructor-note{display:flex;gap:13px;padding:12px 14px;border-radius:10px;background:var(--line);border:1px solid var(--line);margin-bottom:15px}.constructor-note b{color:var(--accent);white-space:nowrap}.constructor-note span{color:var(--ink);font-size:12.5px;line-height:1.45}.competency-picker{display:flex;flex-direction:column;gap:14px}.competency-picker .picker-list{max-height:46vh;overflow:auto}.competency-picker.collapsed .picker-list{display:none}.picker-list,.selected-matrix{border:1px solid var(--line);border-radius:11px;padding:11px;max-height:650px;overflow:auto}.picker-list>input{position:sticky;top:0;z-index:2;margin-bottom:8px}.competency-option{display:flex;gap:9px;padding:10px 5px;border-top:1px solid var(--line);cursor:pointer}.competency-option:hover{background:var(--bg)}.competency-option input{margin-top:3px;accent-color:var(--accent)}.competency-option span{font-size:12.5px;line-height:1.4}.competency-option span small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.selected-code{display:grid;grid-template-columns:52px 1fr;gap:7px;padding:9px 0;border-top:1px solid var(--line)}.selected-code>b{color:var(--accent)}.selected-code span{font-size:12px;line-height:1.4}.module-card{border:1px solid var(--line);border-radius:12px;padding:12px;margin:11px 0;overflow:auto}.module-head{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;margin-bottom:10px}.module-head>span{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;background:var(--accent);color:var(--card);font-weight:700}.module-head.static{grid-template-columns:34px 1fr}.topic-grid{display:grid;grid-auto-flow:column;grid-template-columns:minmax(240px,1fr);grid-auto-columns:minmax(68px,88px);gap:6px;align-items:center;min-width:700px;margin:5px 0}.topic-grid input{min-width:0;padding:7px;height:36px}.topic-grid input[type=number]{text-align:center}.topic-grid>b{font-size:12px;text-align:center}.topic-head{color:var(--muted);font-size:11px}.topic-head b:first-child{text-align:left}.icon-button{padding:7px!important;width:34px;height:34px}.danger:disabled{opacity:.35}.add-row{margin-top:8px}.plan-footer{display:flex;justify-content:space-between;align-items:center;border-top:2px solid var(--line);padding-top:13px}.plan-footer>div{text-align:right}.plan-footer small,.plan-footer b{display:block}.plan-footer b{font-size:29px;color:var(--accent)}.work-module{overflow:visible}.work-topic{padding:13px 0;border-top:1px solid var(--line)}.work-topic-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:9px}.work-topic-head span{color:var(--accent);font-weight:700}.work-topic textarea{height:auto;min-height:90px;width:100%;resize:vertical}.code-checks{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.code-checks label{display:flex;flex-direction:row;align-items:center;gap:4px;background:var(--line);border-radius:7px;padding:6px 8px;cursor:pointer}.code-checks input{accent-color:var(--accent)}.code-checks span{font-size:12px;font-weight:700}.warning.inline{display:inline-flex;margin:0}.internship-block{border:2px solid var(--line);background:var(--bg);border-radius:12px;padding:16px}.internship-block h3{margin:4px 0 12px}.internship-block>div:not(.warning){display:flex;justify-content:space-between;padding:8px;border-top:1px solid var(--line)}.assessment-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.subsection-head{display:flex;justify-content:space-between;align-items:center}.assessment-item{position:relative;border:1px solid var(--line);border-radius:11px;padding:13px;margin:9px 0;background:var(--card)}.assessment-item textarea{width:100%;height:auto;min-height:70px;resize:vertical}.assessment-item label{margin:8px 0}.remove-corner{position:absolute;right:8px;top:8px;padding:5px 9px}.validation-card{padding:18px!important}.validation-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.validation-head h3{margin:4px 0}.valid-text{color:var(--accent)}.invalid-text{color:var(--red)}.hours-chip{border-radius:999px;background:var(--line);padding:8px 12px;font-weight:700;color:var(--accent)}.validation-line{padding:7px 10px;margin-top:6px;border-radius:7px;font-size:12px}.error-line{background:var(--red-soft);color:var(--red)}.warning-line{background:var(--line);color:var(--accent)}

@media(max-width:1350px){.constructor-layout{grid-template-columns:245px minmax(0,1fr)}.group-members{grid-template-columns:1fr}.assessment-grid{grid-template-columns:1fr}}
@media(max-width:1000px){.constructor-layout{grid-template-columns:1fr}.constructor-side{position:relative;max-height:none;grid-template-columns:1fr 1fr}.step-card{max-height:420px;overflow:auto}.form-grid.two-col{grid-template-columns:1fr}.form-grid .span-two{grid-column:auto}.hours-hero{grid-template-columns:1fr}.hours-equals{border-left:0;border-top:1px solid rgba(56,58,63,.1);padding-top:12px}}
@media(max-width:700px){.constructor-side{grid-template-columns:1fr}.merge-outcome{grid-template-columns:24px 1fr}.merge-outcome textarea,.merge-outcome small{grid-column:2}.group-decisions,.constructor-note{flex-direction:column;align-items:stretch}.constructor-editor{padding:16px!important}.constructor-head .button-row{justify-content:flex-start}}

/* v6 — справочники и обновлённый конструктор */
.reference-shell{padding:0!important;overflow:hidden;display:grid;grid-template-columns:262px minmax(0,1fr)}.reference-tabs{display:flex;flex-direction:column;gap:4px;overflow:auto;max-height:calc(100vh - 220px);border-right:1px solid var(--line);background:var(--bg);padding:10px}.reference-search{width:100%;margin-bottom:6px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;font:inherit}.reference-group{margin-bottom:2px}.reference-group-head{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;background:none;padding:6px 8px;font-weight:600;font-size:12.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--accent);cursor:pointer}.reference-group-items{display:flex;flex-direction:column}@media (max-width:1100px){.reference-shell{grid-template-columns:1fr}.reference-tabs{max-height:220px;border-right:0;border-bottom:1px solid var(--line)}}.reference-tab{border:0;background:transparent;padding:10px 12px;border-radius:8px;white-space:nowrap;font-weight:700;font-size:12px;color:var(--accent);cursor:pointer}.reference-tab{text-align:left;border-radius:8px}.reference-tab:hover,.reference-tab.active{background:var(--line);color:var(--accent)}#reference-content{padding:20px}.reference-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.reference-head h2{margin:0 0 5px}.reference-head p{margin:0;color:var(--muted);font-size:12.5px;max-width:760px}.reference-head .button-row{margin:0;flex-wrap:wrap}.large-text{min-height:150px!important}.very-large-text{min-height:260px!important}.hours-inline{display:flex;gap:9px;align-items:center;justify-content:flex-start;border:1px solid var(--line);background:var(--bg);border-radius:9px;padding:11px;font-size:12.5px}.hours-inline b{color:var(--accent);font-size:17px}.competency-filter-row{display:flex;align-items:center;gap:14px;margin-bottom:10px}.competency-filter-row label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700}.competency-filter-row input[type=text],.competency-filter-row>input{flex:1;border:1px solid var(--line);border-radius:8px;padding:9px 11px;height:40px}.program-competency{border:1px solid var(--line);border-radius:10px;padding:11px;margin-bottom:10px;background:var(--card)}.program-competency-head{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.program-competency-head>b{color:var(--accent);font-size:15px}.program-competency-head>span{color:var(--muted);font-size:11px}.program-competency label{display:flex;flex-direction:column;gap:5px}.program-competency label>span{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--accent)}.program-competency textarea{width:100%;min-height:70px;resize:vertical}.local-outcome{display:grid;grid-template-columns:112px 1fr 36px;gap:6px;align-items:start;margin:7px 0}.local-outcome select,.local-outcome textarea{border:1px solid var(--line);border-radius:7px;background:white;padding:7px;font:inherit}.local-outcome textarea{min-height:58px;resize:vertical}.topic-grid-v6,.module-subtotal{display:grid;grid-template-columns:minmax(230px,1.5fr) 70px repeat(6,minmax(78px,1fr)) 36px;gap:5px;align-items:center;min-width:1050px;margin:5px 0}.topic-grid-v6 input{min-width:0;border:1px solid var(--line);border-radius:7px;height:36px;padding:6px;font:inherit}.topic-grid-v6 input[type=number]{text-align:center}.topic-grid-v6>b,.module-subtotal>b{font-size:11px;text-align:center}.topic-grid-v6>b:first-child,.module-subtotal>b:first-child{text-align:left}.topic-head-v6{color:var(--muted);font-size:10px}.module-subtotal{border-top:1px solid var(--line);padding-top:7px;color:var(--accent)}.outcome-code-picker,.works-picker{display:flex;flex-wrap:wrap;gap:6px;margin:7px 0}.outcome-code-picker label,.works-picker label{display:flex!important;flex-direction:row!important;align-items:center;gap:5px;border:1px solid var(--line);border-radius:7px;background:var(--bg);padding:6px 8px;cursor:pointer}.outcome-code-picker input,.works-picker input{accent-color:var(--accent)}.outcome-code-picker span,.works-picker span{font-size:11px;font-weight:700}.org-section{display:grid;gap:10px}.org-section h3{margin:18px 0 2px;border-top:1px solid var(--line);padding-top:15px}.org-section>label{display:flex;flex-direction:column;gap:5px}.org-section>label span{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--accent)}.org-section select,.org-section textarea,.module-conditions textarea,.footnote-row textarea{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:9px 11px;font:inherit;color:inherit;width:100%}.module-conditions{display:grid;gap:9px}.module-conditions article{border:1px solid var(--line);border-radius:9px;padding:10px}.module-conditions textarea{min-height:110px;margin-top:8px;resize:vertical}.footnotes-panel{border-top:2px solid var(--line);margin-top:24px;padding-top:16px}.footnotes-panel h3{margin:0}.footnotes-panel small{display:block;color:var(--muted);margin-top:3px}.footnote-row{display:grid;grid-template-columns:48px 1fr 36px;gap:7px;align-items:start;margin-top:7px}.footnote-row>b{padding-top:10px;color:var(--accent)}.footnote-row textarea{min-height:58px;resize:vertical}.constructor-note code{background:var(--card);border:1px solid var(--line);border-radius:5px;padding:1px 4px}.hidden{display:none!important}
@media(max-width:1000px){.reference-head{flex-direction:column}.competency-filter-row{align-items:stretch;flex-direction:column}.local-outcome{grid-template-columns:1fr}.local-outcome .icon-button{justify-self:end}.topic-grid-v6,.module-subtotal{min-width:980px}}

.import-hint{margin:-4px 0 14px;padding:9px 11px;border:1px dashed var(--line);border-radius:8px;background:var(--bg);color:var(--muted);font-size:12px;line-height:1.45}.import-hint b{color:var(--accent)}
.reference-section-name{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35}.staffing-controls{display:grid;gap:14px;border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:14px}.staffing-emergency{display:grid;gap:11px;border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:12px}.staffing-emergency>.subsection-head small,.staffing-controls>.subsection-head small,.staff-module-card>div small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.staffing-emergency>label{display:flex;flex-direction:column;gap:5px}.staffing-emergency>label>span{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--accent)}.staffing-emergency select{height:40px}.switch-row.compact{padding:8px 10px;margin:0}.required-chip{display:inline-flex;align-items:center;border-radius:999px;background:var(--line);color:var(--accent);padding:7px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.35px}.staff-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.staff-module-card{display:grid;gap:8px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:11px;min-width:0}.staff-module-card.emergency{border-color:var(--line);background:var(--bg)}.staff-module-card p{margin:0;color:var(--ink);font-size:12px;line-height:1.45}.staff-module-card input,.staff-module-card select{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:8px 10px;font:inherit;color:inherit}.staff-module-card input{height:38px}.staff-module-card select{min-height:150px}.selection-help{color:var(--muted);font-size:11px;line-height:1.35}.staffing-text-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin-top:5px}.staffing-text-head small{display:block;color:var(--accent);font-size:11px;font-weight:700;margin-top:3px}.staffing-final-text{min-height:430px!important}.compact-note{margin:0}.org-section .form-grid input{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:9px 11px;font:inherit;color:inherit;height:40px}
@media(max-width:1000px){.staff-module-grid{grid-template-columns:1fr}.staffing-text-head{align-items:stretch;flex-direction:column}.staffing-text-head .secondary{align-self:flex-start}}

/* v7.1 — сине-серая тема и выбор специальностей через чек-боксы */
body{background:linear-gradient(135deg,var(--line) 0%,var(--bg) 42%,var(--bg) 100%);background-attachment:fixed}
.sidebar{background:var(--accent);box-shadow:8px 0 30px rgba(56,58,63,.12)}
.brand-mark{background:linear-gradient(145deg,var(--bg),var(--line));color:var(--accent);box-shadow:0 8px 22px rgba(31,19,115,.18)}
/* Логотип ВУНМЦ широкий и тёмно-синий: светлая плашка на всю ширину панели, название под ней. */
.brand{flex-direction:column;align-items:stretch}.brand .brand-mark{width:auto;height:auto;padding:10px 14px;background:var(--card);border-radius:14px}.brand .brand-mark img{display:block;width:100%;max-height:64px;object-fit:contain}
.brand small,.sidebar-note{color:var(--muted)}.nav{color:var(--muted)}.nav:hover,.nav.active{background:rgba(31,19,115,.18);box-shadow:inset 3px 0 0 var(--muted)}.nav em{background:rgba(31,19,115,.18)}
.primary{background:var(--accent);box-shadow:0 5px 14px rgba(31,19,115,.18)}.primary:hover{background:var(--accent)}.secondary{background:var(--bg);color:var(--accent);border-color:var(--line)}.secondary:hover{background:var(--line);border-color:var(--line)}.accent{background:var(--accent)}.accent:hover{background:var(--accent)}
.card,.metric{background:rgba(255,255,255,.96);border-color:var(--line)}.notice,.constructor-note{background:var(--bg);border-color:var(--line)}.notice span,.constructor-note span{color:var(--accent)}.bar,.progress,.selected-files,.score-box,.formula-note,.meta{background:var(--bg)}.bar i{background:linear-gradient(90deg,var(--accent),var(--muted))}
.toolbar input:focus,.toolbar select:focus,textarea:focus,.field-input:focus,input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,19,115,.14);outline:none}th{background:var(--bg);color:var(--accent)}tbody tr:hover{background:var(--card)}.candidate:hover,.candidate.active,.draft-item:hover,.draft-item.active,.section-step:hover,.section-step.active,.reference-tab:hover,.reference-tab.active{background:var(--bg);color:var(--accent)}.draft-item:hover,.draft-item.active{border-color:var(--line)}
.pill,.hours-chip,.required-chip{background:var(--line);color:var(--accent)}.status.unverified{background:var(--bg);color:var(--muted);border:1px solid var(--line)}.status.verified{background:var(--accent);color:var(--card)}.mini-btn{border-color:var(--line);color:var(--accent)}.drop-icon,.group-count{background:var(--bg);color:var(--accent)}.toast{background:var(--accent)}.modal-backdrop{background:rgba(56,58,63,.56)}
.switch-row,.staffing-controls{border-color:var(--line);background:var(--bg)}.readonly-block{border-color:var(--line);background:var(--bg)}.readonly-block .lock{background:var(--line);color:var(--accent)}.hours-hero.ok{border-color:var(--line);background:var(--bg)}.constructor-note,.final-editor{border-color:var(--line)}.competency-option:hover{background:var(--bg)}.code-checks label,.outcome-code-picker label,.works-picker label{background:var(--bg);border-color:var(--line)}.assessment-item,.program-competency{background:var(--bg)}.reference-shell,.reference-tabs{background:var(--bg)}.reference-tab{color:var(--accent)}.reference-tab:hover,.reference-tab.active{background:var(--line)}.import-hint{background:var(--bg)}.import-hint b{color:var(--accent)}
.staffing-emergency,.staff-module-card.emergency{border-color:var(--line);background:var(--bg)}.staff-module-card p{color:var(--accent)}.staff-module-card input,.staff-module-card select{border-color:var(--line)}.staff-specialty-checklist{display:grid;gap:2px;max-height:230px;overflow:auto;scrollbar-gutter:stable;border:1px solid var(--line);border-radius:9px;background:var(--bg);padding:6px}.staff-specialty-option{display:flex;align-items:flex-start;gap:8px;padding:7px 8px;border-radius:7px;cursor:pointer;color:var(--accent);line-height:1.35;transition:background-color .15s,color .15s}.staff-specialty-option:hover{background:var(--bg)}.staff-specialty-option.selected{background:var(--line)}.staff-module-card .staff-specialty-option input[type=checkbox]{width:16px;height:16px;min-width:16px;margin:1px 0 0;padding:0;box-shadow:none;accent-color:var(--accent)}.staff-specialty-option span{font-size:12px;text-transform:none;letter-spacing:0}.staff-specialty-option input:checked+span{color:var(--accent);font-weight:700}.selection-help{color:var(--accent);font-weight:600}
@media(max-width:700px){.staff-specialty-checklist{max-height:190px}}

/* v7.2 — конструктор пункта 14 и проверка по реестру лицензий */
.practice-module{display:grid;gap:10px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:12px}.practice-module>.subsection-head small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.practice-module .button-row{margin:0;flex-wrap:wrap;align-items:center}
.mini-select{border:1px solid var(--line);border-radius:7px;background:var(--card);padding:5px 8px;font:inherit;font-size:12px;color:var(--accent);max-width:260px}
.practice-row{display:grid;gap:9px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:10px}
.practice-row-head,.practice-base-head,.practice-activity-head,.requirement-head,.search-checklist-head,.registry-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.practice-row-head>div:first-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.practice-base{display:grid;gap:8px;border:1px dashed var(--line);border-radius:9px;background:var(--card);padding:9px}.practice-base-head .button-row{margin:0 0 0 auto}
.practice-activity{display:grid;gap:7px;border-left:3px solid var(--line);padding-left:9px}.practice-activity-head,.requirement-head{justify-content:flex-start}.practice-activity-head .icon-button,.requirement-head .icon-button{margin-left:auto}
.requirement-card{display:grid;gap:7px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:8px}.requirement-card textarea,.requirement-card input,.requirement-card select{border:1px solid var(--line);border-radius:7px;background:var(--card);padding:7px 9px;font:inherit;color:inherit;width:100%}.requirement-card textarea{min-height:64px;resize:vertical}
.requirement-card .form-grid label{display:flex;flex-direction:column;gap:4px}.requirement-card .form-grid label>span,.inline-select>span{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--accent)}.form-grid.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-select{display:flex;align-items:center;gap:8px}.requirement-card .inline-select select{width:auto}
.search-checklist{display:grid;gap:5px}.search-checklist-head small{color:var(--muted);font-size:11px}.requirement-card .checklist-search{height:34px}
.checklist-options{display:grid;gap:2px;max-height:210px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:5px}.checklist-option{display:flex;align-items:flex-start;gap:7px;padding:5px 7px;border-radius:6px;cursor:pointer;font-size:12px;line-height:1.35;color:var(--accent)}.checklist-option:hover{background:var(--bg)}.checklist-option.selected{background:var(--accent-soft);color:var(--accent);font-weight:600}.checklist-option.warn{background:var(--bg);color:var(--red)}.requirement-card .checklist-option input{width:15px;height:15px;min-width:15px;margin:1px 0 0;padding:0;accent-color:var(--accent)}.checklist-option small{display:block;color:var(--muted);font-weight:400;font-size:11px}
.registry-chip,.feasibility-chip{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;background:var(--line);color:var(--accent);white-space:nowrap}.muted-chip{background:var(--card);color:var(--muted);border:1px solid var(--line)}.feasibility-chip.ok{background:var(--line);color:var(--accent)}.feasibility-chip.bad{background:var(--red-soft);color:var(--red)}
.registry-panel{display:grid;gap:8px;border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:12px}.registry-panel.stale{border-color:var(--line);background:var(--bg)}.registry-panel.empty-panel{display:flex;justify-content:space-between;align-items:center;gap:12px}.registry-panel.empty-panel span{display:block;color:var(--accent);font-size:12px;margin-top:3px}.registry-panel-head small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.feasibility-summary{display:flex;align-items:baseline;gap:9px;border-radius:9px;padding:8px 10px;background:var(--card)}.feasibility-summary b{font-size:21px}.feasibility-summary.ok b{color:var(--accent)}.feasibility-summary.bad b{color:var(--red)}.feasibility-summary span{color:var(--accent);font-size:12px}
.regionchips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.regionchip{border-radius:999px;background:var(--bg);border:1px solid var(--line);padding:3px 8px;font-size:11px}.regionchip.ok{background:var(--line);border-color:var(--line)}
.practice-intro{border:1px solid var(--line);border-radius:9px;background:var(--card);padding:9px 11px}.practice-intro p{margin:4px 0 0;font-size:12.5px;line-height:1.5;color:var(--accent)}
.practice-preview summary,.feasibility-details summary,.registry-panel details summary,.feasibility-base details summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--accent)}.practice-preview pre{white-space:pre-wrap;font:inherit;font-size:12px;line-height:1.5;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:9px;margin:6px 0}
.feasibility-base{display:grid;gap:6px;margin-top:6px}.region-table{max-height:260px;overflow:auto}.region-table td,.region-table th{padding:5px 8px;font-size:12px}.small-note{font-size:12px}
.org-list{display:grid;gap:8px;max-height:60vh;overflow:auto;margin:10px 0}.org-card{border:1px solid var(--line);border-radius:9px;padding:9px 11px}.org-card>small{display:block;color:var(--muted);font-size:11px}.org-card ul{margin:6px 0 0;padding-left:18px;font-size:12px}.org-card li small{display:block;color:var(--muted);font-size:11px}.registry-metrics{margin:0 0 12px}
@media(max-width:1000px){.form-grid.three-col{grid-template-columns:1fr}.registry-panel.empty-panel{flex-direction:column;align-items:stretch}}
.staffing-block{display:grid;gap:9px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:10px}.staffing-block .form-grid label{display:flex;flex-direction:column;gap:4px}.staffing-block .form-grid label>span,.staffing-block .inline-select>span{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--accent)}.staffing-block input,.staffing-block select{border:1px solid var(--line);border-radius:7px;background:var(--card);padding:7px 9px;font:inherit;color:inherit;width:100%}.staffing-block .inline-select select{width:auto}.staffing-block .checklist-search{height:34px}.staffing-block .checklist-option input{width:15px;height:15px;min-width:15px;margin:1px 0 0;padding:0;accent-color:var(--accent)}.staffing-subgroup{display:grid;gap:7px;border-left:3px solid var(--line);padding-left:9px}
.reset-card{margin-top:16px}.reset-card .card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.reset-card p{margin:6px 0 0;color:var(--accent);font-size:12.5px;line-height:1.5}.import-result details{margin-top:8px}.import-result summary{cursor:pointer;font-weight:700}.import-result table td{font-size:12px;vertical-align:top}
.point-preview{white-space:pre-wrap;font:inherit;font-size:12px;line-height:1.5;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:9px;margin:6px 0}
.material-text{margin:0;font-size:12px;line-height:1.45;color:var(--accent)}.inline-add{display:flex;gap:6px;align-items:center}.requirement-card .inline-add input{height:34px}.requirement-head .mini-btn{padding:3px 7px}

/* Пункт 12: группы лиц можно выключать, если требования к ним не предъявляются. */
.staffing-subgroup .subgroup-toggle{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.staffing-subgroup.disabled-subgroup>*:not(.subgroup-toggle){opacity:.45;pointer-events:none}

/* Коды результатов обучения в оценочных материалах — списком с формулировкой. */
.outcome-code-list{display:flex;flex-direction:column;gap:3px;max-height:230px;overflow:auto;border:1px solid var(--line);border-radius:9px;padding:7px}
.outcome-code-row{display:grid;grid-template-columns:18px 54px minmax(0,1fr);gap:8px;align-items:start;padding:4px 6px;border-radius:7px;font-size:13.5px;cursor:pointer}
.outcome-code-row:hover{background:var(--bg)}.outcome-code-row.selected{background:var(--line)}
.outcome-code-row span{color:var(--accent)}

/* Выбранные записи справочника показываются списком, сам перечень сворачивается. */
.chosen-list{margin:4px 0 6px;padding-left:18px;font-size:13.5px;color:var(--accent)}
.chosen-list li{margin:2px 0}
.checklist-details>summary{cursor:pointer;font-size:13.5px;color:var(--accent);margin-bottom:6px}

/* Атрибут hidden должен побеждать любые display из оформления ниже. */
[hidden]{display:none!important}

/* Экран входа, сведения о пользователе и временные пароли. */
.login-screen{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:var(--accent);padding:20px}
.login-card{width:min(380px,92vw);background:var(--card);border-radius:16px;padding:26px;box-shadow:0 20px 60px rgba(31,19,115,.35);display:flex;flex-direction:column;gap:12px}
.login-card img{width:190px;align-self:center}
.login-card h1{margin:0;font-size:21px;text-align:center}
.login-card p{margin:0;text-align:center;color:var(--accent);font-size:13.5px}
.login-card label{display:flex;flex-direction:column;gap:4px;font-size:13.5px;color:var(--accent)}
.login-card input{padding:9px 11px;border:1px solid var(--line);border-radius:9px;font:inherit}
.login-error{min-height:16px;color:var(--red);font-size:13.5px}
.account{margin-top:auto;padding:10px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:6px}
.account b{display:block;font-size:14.5px}
.account small{color:var(--muted);font-size:12.5px}
.account .button-row{margin:0;gap:6px}
.password-box{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}
.password-box code{font-size:19px;letter-spacing:1px;font-weight:600}
.row-actions{display:flex;gap:6px;flex-wrap:wrap}

/* Разделители разделов в справочнике формулировок. */
.template-section td{background:var(--bg);color:var(--accent);padding-top:10px}

/* Рабочие ДПП: учебный план с аттестациями, календарный график, соответствия, приложения */
.topic-grid-w,.module-subtotal.topic-grid-w{display:grid;grid-template-columns:minmax(230px,1.6fr) 70px repeat(5,minmax(84px,1fr)) 36px;gap:5px;align-items:center;min-width:900px;margin:5px 0}.topic-grid-w input{min-width:0;border:1px solid var(--line);border-radius:7px;height:36px;padding:6px;font:inherit}.topic-grid-w input[type=number]{text-align:center}.topic-grid-w input:disabled{background:var(--bg);color:var(--muted)}.topic-grid-w>b{font-size:11px;text-align:center}.topic-grid-w>b:first-child{text-align:left}.topic-grid-w .topic-name{display:flex;align-items:center;gap:6px}.interim-name{font-size:12.5px;color:var(--accent);font-weight:600}
.module-options{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:-4px 0 8px 42px;font-size:12.5px;color:var(--accent)}.module-options label{display:flex;align-items:center;gap:6px;cursor:pointer}.module-options input{accent-color:var(--accent)}.module-fixed-name{font-size:14.5px;color:var(--accent)}
.working-block{border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:14px;margin:12px 0;display:grid;gap:10px}.working-block h3{margin:0}.working-block small{color:var(--muted);font-size:11px}.working-block label.stacked{display:flex;flex-direction:column;gap:5px}.working-block label.stacked>span{font-size:12px;font-weight:700;color:var(--accent)}.working-block textarea,.working-block .stacked input,.working-block .assessment-item input{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:8px 10px;font:inherit;color:inherit;width:100%}.working-block textarea{min-height:64px;resize:vertical}
.eks-row{display:grid;grid-template-columns:1fr 1.5fr 1.5fr 36px;gap:8px;align-items:start;border-top:1px solid var(--line);padding-top:8px}.section-subtitle{margin:20px 0 6px;color:var(--accent)}
.calendar-totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.calendar-total{border:1px solid var(--line);border-radius:9px;background:var(--card);padding:8px}.calendar-total small{display:block;color:var(--muted);font-size:11px}.calendar-total b{font-size:14.5px;color:var(--accent)}.calendar-total.mismatch{border-color:var(--red);background:var(--red-soft)}.calendar-total.mismatch b{color:var(--red)}
.calendar-table{max-height:460px;background:var(--card)}.calendar-table input,.calendar-table select{border:1px solid var(--line);border-radius:7px;background:var(--card);padding:5px 7px;font:inherit;font-size:12.5px;width:100%}.calendar-table td:first-child{width:70px}.calendar-table td:nth-child(4){width:80px}.calendar-table td:last-child{width:44px}.calendar-table tr.mismatch td{background:var(--red-soft)}
.inline-field{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--accent);font-weight:600}.inline-field input{width:70px;height:34px;border:1px solid var(--line);border-radius:7px;padding:5px;text-align:center;background:var(--card)}.button-row.left{justify-content:flex-start;align-items:center;margin:8px 0;flex-wrap:wrap}
.appendix-block summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:center}.appendix-block summary b{color:var(--accent)}.appendix-block section{border-top:1px solid var(--line);padding-top:10px}.appendix-block h3{font-size:14.5px}
.checklist-steps{display:grid;gap:6px}.checklist-step{display:grid;grid-template-columns:28px 1fr 170px auto 36px;gap:6px;align-items:center}.checklist-step>b{color:var(--accent);text-align:center}.checklist-step.heading textarea{font-weight:600}.checklist-step textarea{min-height:40px!important}.checklist-step select{border:1px solid var(--line);border-radius:7px;background:var(--card);padding:6px;font:inherit;font-size:12.5px}.inline-check{display:flex!important;flex-direction:row!important;align-items:center;gap:4px;font-size:11px;color:var(--muted);margin:0!important}
.report-section{display:grid;gap:6px;margin-top:8px}.report-section>b{color:var(--accent)}.planned-input{width:90px;border:1px solid var(--line);border-radius:7px;padding:5px;text-align:center;background:var(--card)}.work-topic.interim{background:var(--bg);border-radius:8px;padding:10px}.modal-list{max-height:60vh}
@media(max-width:1000px){.eks-row,.checklist-step{grid-template-columns:1fr}.calendar-totals{grid-template-columns:repeat(2,1fr)}.module-options{margin-left:0}}
/* Доработка: вкладки рабочих программ, банк оценочных материалов, контакты, авторы проектов */
.nav{white-space:normal;text-align:left;line-height:1.25}.nav em{flex:none}
.draft-author{grid-column:1/-1;color:var(--muted);font-size:11px}.authors-line{margin:-6px 0 10px;color:var(--muted);font-size:12px}.authors-line b{color:var(--accent);font-weight:600}
.assessment-item input[type=checkbox],.working-block input[type=checkbox],.outcome-code-row input[type=checkbox]{width:15px!important;height:15px!important;min-width:15px;padding:0!important;margin:2px 0 0;accent-color:var(--accent)}
.outcome-code-row{grid-template-columns:16px 54px minmax(0,1fr);font-size:12.5px;line-height:1.35}
.typical-codes{border:1px dashed var(--line);border-radius:9px;padding:6px 8px;background:var(--card)}.typical-codes summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--accent)}
.competency-filter-row{flex-wrap:wrap}.competency-filter-row input[list]{min-width:230px}
.group-filters{flex-wrap:wrap;gap:6px}.group-filters select{flex:1 1 90px;min-width:0}.group-section{margin:10px 0 4px;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--accent)}
.specialty-search{margin-bottom:5px}.omit-row{display:flex;align-items:center;gap:7px;margin:4px 0 8px;font-size:12.5px;color:var(--accent);cursor:pointer}.omit-row input{width:15px;height:15px;accent-color:var(--accent)}
.final-form{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:-2px 0 8px 42px;font-size:12.5px;color:var(--accent)}.final-form select,.final-form input{border:1px solid var(--line);border-radius:7px;background:var(--card);padding:6px 8px;font:inherit;font-size:12.5px;height:34px}.final-form input{min-width:210px}
.appendix-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:2px 0 8px}.appendix-tools .file-label{font-size:12.5px}
.bank-kind{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-size:12px;color:var(--accent);background:var(--bg);white-space:nowrap}
.bank-content{white-space:pre-wrap;border:1px solid var(--line);border-radius:9px;background:var(--bg);padding:9px 11px;margin:4px 0 10px;font-size:13.5px;line-height:1.45}
.bank-pick{display:grid;gap:6px;max-height:55vh;overflow:auto;margin:10px 0}.bank-pick-item{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start;border:1px solid var(--line);border-radius:9px;padding:8px 10px}.bank-pick-item small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.contact-card{margin-top:14px}.contact-card td small{display:block;color:var(--muted);font-size:12px}
.local-outcome{grid-template-columns:130px minmax(0,1fr) auto auto}
.working-block .stacked select{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:8px 10px;font:inherit;color:inherit;width:100%;height:40px}
.file-label.disabled{opacity:.5;pointer-events:none}
@media(max-width:1000px){.final-form{margin-left:0}.local-outcome{grid-template-columns:1fr}}

/* Правки 11.10.2026: списки кодов внутри заданий, таблицы соответствия, столбцы учебного плана, банк */
.assessment-item label.outcome-code-row{display:grid;flex-direction:row;margin:0;gap:8px}
.assessment-item label.outcome-code-row>span{font-size:12.5px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--accent)}
.code-tools{display:flex;gap:6px;margin:4px 0}
.code-tools .mini-btn{padding:4px 9px}
.compliance-standard{border-top:1px solid var(--line);padding-top:10px;display:grid;gap:8px}
.compliance-standard-head{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--accent);font-size:13.5px}
.plan-columns{margin:0 0 12px}
.module-options.plain{margin:0}
.bank-check{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}
#bank-delete-selected{margin-left:auto}

/* Обзор: программы по видам и состоянию; отметка готовности в списке проектов. */
.drafts-status-card{margin-bottom:18px}
.drafts-status td,.drafts-status th{text-align:center;vertical-align:middle}
.drafts-status td:first-child,.drafts-status th:first-child{text-align:left}
.drafts-status td b{display:block;font-size:21px;color:var(--accent)}
.drafts-status td small{color:var(--muted);font-size:12px}
.drafts-status tr.total td{border-top:2px solid var(--line)}
.draft-ready{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:9px;background:var(--accent);color:var(--card);font-size:11px;font-style:normal;vertical-align:middle}

/* Шрифты программы лежат в ней самой (static/fonts): у сотрудников они могут быть не установлены.
   Roboto — основной текст, поля и таблицы; Roboto Condensed — заголовки, меню, кнопки и подписи;
   выделения и заголовки — полужирным. */
@font-face{font-family:"Roboto";src:url("/fonts/Roboto.ttf") format("truetype");font-weight:100 900;font-stretch:75% 100%;font-style:normal;font-display:swap}
@font-face{font-family:"Roboto Condensed";src:url("/fonts/RobotoCondensed.ttf") format("truetype");font-weight:100 900;font-style:normal;font-display:swap}
:root{--font-condensed:"Roboto Condensed","Roboto","Segoe UI",Arial,sans-serif}
input,select,textarea{font-family:inherit}
button,h1,h2,h3,h4,h5,th,summary,.nav,.eyebrow,.field-caption,label>span,.metric small,.brand,.type,.status{font-family:var(--font-condensed)}
.page-head p{font-family:var(--font-condensed);font-weight:300;font-size:16px}

/* Боковая панель — белая, с эмблемой наверху; сворачивается до значков. */
.sidebar{background:var(--card);color:var(--ink);box-shadow:none;border-right:1px solid var(--line);padding:16px 12px;transition:width .18s ease}
main{transition:margin-left .18s ease}
.brand{flex-direction:column;align-items:stretch;gap:8px;padding:0 6px 14px;border-bottom:1px solid var(--line);position:relative}
.brand-logo{display:block;height:46px;width:auto;max-width:calc(100% - 38px);object-fit:contain;object-position:left center}
.brand strong{color:var(--accent);font-weight:700}
.brand small,.sidebar-note{color:var(--muted)}
.sidebar-toggle{position:absolute;top:6px;right:2px;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--accent);font-size:17px;line-height:1;cursor:pointer;padding:0}
.sidebar-toggle:hover{background:var(--bg)}
.sidebar nav{margin-top:14px}
.nav{color:var(--ink)}
.nav>span{color:var(--accent)}
.nav:hover,.nav.active{background:var(--bg);color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}
.nav.active{font-weight:700}
.nav em{background:var(--line);color:var(--accent)}
.account{border-top:1px solid var(--line)}
.account b{color:var(--ink)}
.sidebar-note{border:1px solid var(--line)}
.sidebar-note b{color:var(--ink)}
@media(min-width:851px){
  body.sidebar-collapsed .sidebar{width:68px;padding:16px 8px}
  body.sidebar-collapsed main{margin-left:68px}
  body.sidebar-collapsed .brand{align-items:center;padding:0 0 12px}
  /* От эмблемы в свёрнутой панели остаётся сова: надпись «ВУНМЦ» справа обрезается. */
  body.sidebar-collapsed .brand-logo{width:50px;height:29px;max-width:none;object-fit:cover}
  body.sidebar-collapsed .brand-text,body.sidebar-collapsed .account,body.sidebar-collapsed .sidebar-note{display:none}
  body.sidebar-collapsed .sidebar-toggle{position:static}
  body.sidebar-collapsed .nav{font-size:0;grid-template-columns:1fr;justify-items:center;padding:11px 0;gap:0}
  body.sidebar-collapsed .nav>span{font-size:20px}
  body.sidebar-collapsed .nav em{display:none}
}
@media(max-width:850px){.sidebar-toggle{display:none}}

/* Экран входа — на светлом фоне: эмблема не оказывается в белой плитке на синем. */
.login-screen{background:linear-gradient(135deg,var(--line) 0%,var(--bg) 42%,var(--bg) 100%)}
.login-card{border:1px solid var(--line)}

/* Широкая таблица учебного плана прокручивается внутри своей карточки, а не сдвигает всю страницу. */
.constructor-main>*{min-width:0}
.module-card{overflow-x:auto}
.drafts-status td small{white-space:nowrap}
/* Столбцы учебного плана уже: при развёрнутой боковой панели таблица помещается на экране 1440 пикселей. */
.topic-grid-v6,.module-subtotal{grid-template-columns:minmax(170px,1.5fr) 58px repeat(6,minmax(68px,1fr)) 36px;min-width:700px}
.topic-grid-w,.module-subtotal.topic-grid-w{grid-template-columns:minmax(170px,1.6fr) 58px repeat(5,minmax(78px,1fr)) 36px;min-width:690px}
.topic-grid-v6 .topic-name{display:flex;align-items:center;gap:6px}
.topic-name input{min-width:0;flex:1}

/* Боковая панель: элементы сгруппированы по модулям, группы сворачиваются. */
.sidebar nav{overflow-y:auto;overflow-x:hidden;min-height:0;flex:1}
.nav-group{margin-bottom:6px}
.nav-group-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;width:100%;border:0;background:none;padding:9px 8px 5px;cursor:pointer;text-align:left;color:var(--muted);font-family:var(--font-condensed);font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;line-height:1.25}
.nav-group-head:hover{color:var(--accent)}
.nav-group-head i{font-style:normal;flex:none}
.nav-group.collapsed .nav-group-items{display:none}
.nav-group+.nav-group{border-top:1px solid var(--line);padding-top:4px}
@media(min-width:851px){
  body.sidebar-collapsed .nav-group-head{font-size:0;padding:5px 0;justify-content:center}
  body.sidebar-collapsed .nav-group-head i{display:none}
  body.sidebar-collapsed .nav-group.collapsed .nav-group-items{display:block}
}
@media(max-width:850px){.sidebar nav{display:block}.nav-group-items{display:grid;grid-template-columns:repeat(2,1fr)}}

/* Модули: реестры предложений, сверка образования, конструктор ролей. */
.modal-panel.wide{width:min(1180px,96vw)}
.modal-panel h3,.rec-body h3{margin:22px 0 10px;font-size:16px;color:var(--accent)}
.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.form-grid.cols-3 .wide{grid-column:span 2}
.form-grid.cols-3 label{display:flex;flex-direction:column;gap:4px;min-width:0}
.form-grid.cols-3 label>span{font-size:12px;font-weight:600;color:var(--accent)}
.form-grid.cols-3 input,.form-grid.cols-3 select,.form-grid.cols-3 textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:14.5px;background:var(--card);color:var(--ink)}
.form-grid.cols-3 textarea{min-height:64px;resize:vertical}
.form-grid.cols-3 .check-line,.check-line{display:flex;flex-direction:row;align-items:flex-start;gap:8px;font-size:14px;color:var(--ink)}
.form-grid.cols-3 .check-line input,.check-line input{width:auto;margin-top:3px;flex:none}
.form-grid.cols-3 .check-line>span,.check-line>span{font-family:inherit;font-size:14px;font-weight:400;color:var(--ink)}
@media(max-width:900px){.form-grid.cols-3{grid-template-columns:1fr}.form-grid.cols-3 .wide{grid-column:auto}}
.edit-table td{vertical-align:top;padding:6px}
.edit-table textarea,.edit-table input,.edit-table select{width:100%;border:1px solid var(--line);border-radius:7px;padding:6px 8px;font-size:14px;background:var(--card);color:var(--ink)}
.edit-table textarea{min-height:58px;resize:vertical}
.edit-table input.num{width:74px;text-align:center}
tr.overdue td{background:var(--red-soft)}
tr.inactive td{color:var(--muted)}
small.urgent{display:block;color:var(--red);font-weight:600}
.metric.alert b{color:var(--red)}
.status.category-A,.status.category-B,.status.category-C{background:var(--accent);color:var(--card)}
.status.category-N{background:var(--bg);color:var(--muted);border:1px solid var(--line)}
.score-total{font-family:"Roboto",sans-serif;font-size:13.5px;font-weight:400;color:var(--ink);margin-left:10px}
.cut-date{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.cut-date small{color:var(--muted);font-size:12px}.cut-date b{font-size:22px;color:var(--accent)}
.plan-months{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;align-items:end}
.plan-months .selection-help{grid-column:1/-1}
.plan-month{display:flex;flex-direction:column;align-items:center;gap:3px}
.plan-month .bar{width:100%;height:80px;background:var(--bg);border-radius:6px;display:flex;align-items:flex-end;overflow:hidden}
.plan-month .bar i{display:block;width:100%;background:var(--accent)}
.plan-month.over .bar i{background:var(--red)}
.plan-month small{color:var(--muted);font-size:11px}
.roles-matrix th.role-col{min-width:150px;vertical-align:top}
.roles-matrix th.role-col small{display:block;font-weight:400;color:var(--muted);text-transform:none;letter-spacing:0;font-size:11.5px}
.roles-matrix th.role-col .row-actions{display:flex;gap:4px;margin-top:5px;flex-wrap:wrap}
.roles-matrix select{width:100%;border:1px solid var(--line);border-radius:7px;padding:5px 7px;font-size:13.5px;background:var(--card);color:var(--ink)}
.roles-matrix select.level-none{color:var(--muted);background:var(--bg)}
.roles-matrix select.level-edit{border-color:var(--accent);color:var(--accent);font-weight:600}
.roles-matrix td.role-fixed{color:var(--muted);font-size:13px}
/* Сверка образования. */
.rec-steps{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.rec-step{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:9px 16px;font-size:14.5px;cursor:pointer}
.rec-step.active{background:var(--accent);border-color:var(--accent);color:var(--card);font-weight:700}
.rec-outcomes{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.rec-chip{display:inline-flex;flex-direction:column;gap:1px;border:1px solid var(--line);border-radius:10px;padding:7px 12px;font-size:12.5px;background:var(--card);color:var(--muted)}
.rec-chip b{color:var(--ink);font-size:13px}
.rec-chip.outcome-match{border-color:var(--accent);color:var(--accent)}
.rec-chip.outcome-mismatch,.rec-chip.outcome-practice{border-color:var(--red);color:var(--red)}
.rec-standards{display:grid;gap:8px;margin-bottom:8px}
.rec-table th.alloc-col{min-width:250px}
.rec-table th.alloc-col small{display:block;font-weight:400;color:var(--muted);text-transform:none;letter-spacing:0}
.rec-table input.text{min-width:230px}
.alloc-part{display:flex;gap:4px;align-items:center;margin-bottom:4px}
.alloc-part select{flex:1;min-width:150px}
.alloc-part select.unassigned{border-color:var(--red);color:var(--red)}
.alloc-add{font-size:11px;padding:2px 7px}
.rec-summary{margin-bottom:14px}
.rec-summary>b{display:block;margin-bottom:6px;color:var(--accent)}
.rec-decision{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:12px}
.rec-decision.refusal{background:var(--red-soft);border-color:var(--red-soft)}
.rec-decision h3{margin:0 0 8px}
.rec-letter,.rec-appendix-list{border:1px solid var(--line);border-radius:12px;padding:18px 22px;background:var(--bg);font-size:14.5px;line-height:1.5}
.rec-letter p{margin:0 0 8px;text-indent:1.25cm;text-align:justify}
.rec-letter p.salutation{text-indent:0;text-align:center}
.rec-appendix-list{margin-top:10px;font-size:13px}.rec-appendix-list p{margin:0 0 4px}
.rec-letter-edit{width:100%;min-height:420px}
.fgos-group{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:10px}
.fgos-group textarea{width:100%;min-height:120px;margin:8px 0}
.validation-summary.invalid b{color:var(--red)}
.validation-item{padding:7px 12px;border-radius:8px;margin:5px 0;font-size:13.5px;background:var(--bg)}
.validation-item.error{background:var(--red-soft);color:var(--red)}

.rec-table td:first-child select{min-width:150px}
/* Реестр обращений о сверке и блок сверок в обзоре. */
.rec-toolbar{flex-wrap:wrap}
.rec-toolbar input{flex:1 1 260px}
.rec-registry td.wrap{min-width:130px}
.rec-registry td:first-child{min-width:190px}
.rec-registry td:nth-child(5){min-width:310px}
.rec-registry td small{display:block;white-space:normal;font-size:12px}
.rec-tag{display:block;width:fit-content;border:1px solid var(--line);border-radius:8px;padding:2px 8px;margin:2px 0;font-size:12.5px;color:var(--muted)}
.rec-tag.outcome-match{border-color:var(--accent);color:var(--accent);font-weight:600}
.rec-tag.outcome-mismatch,.rec-tag.outcome-practice{border-color:var(--red-soft);color:var(--red)}
.rec-overview{margin-bottom:18px}
.rec-overview h3{margin:18px 0 8px;font-size:16px;color:var(--accent)}
.rec-overview .metrics{margin-bottom:6px}
.rec-overview .metric{box-shadow:none}
.rec-overview .inline-field select{height:34px;border:1px solid var(--line);border-radius:7px;padding:4px 8px;background:var(--card);color:var(--ink)}
.rec-overview-grid{gap:26px;align-items:start}
.stat-table td,.stat-table th{text-align:center;vertical-align:middle}
.stat-table td:first-child,.stat-table th:first-child{text-align:left}
.stat-table td.wrap{min-width:170px}
.stat-table td small{display:block;font-size:12px}
.stat-table td{padding-top:7px;padding-bottom:7px}
.stat-share{display:grid;grid-template-columns:minmax(60px,1fr) 46px;gap:8px;align-items:center}
.stat-share b{font-size:13px;text-align:right}
.stat-row{display:grid;grid-template-columns:minmax(150px,1.4fr) 1fr 40px;align-items:center;gap:10px;margin:9px 0;font-size:14px}
.stat-row span small{display:block;color:var(--muted);font-size:12px}
.stat-row b{text-align:right}
.stat-months{display:grid;gap:6px;align-items:end}
.stat-month{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}
.stat-month b{font-size:12px;color:var(--ink);min-height:15px}
.stat-month .bar{width:100%;height:110px;background:var(--bg);border-radius:6px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.stat-month .bar i{display:block;width:100%;border-radius:0;background:var(--accent)}
.stat-month .bar i.refused,.stat-legend i.refused{background:var(--muted)}
.stat-month small{color:var(--muted);font-size:11px}
.stat-month small.year{min-height:13px;color:var(--ink);font-weight:600}
.stat-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;font-size:12.5px;color:var(--ink)}
.stat-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;background:var(--accent);margin-right:6px;vertical-align:-1px}
@media(max-width:850px){.stat-month small{font-size:10px}.stat-months{gap:3px}}
/* Роли пользователя: перечень ролей в списке пользователей и выбор флажками. */
.check-list{display:grid;gap:8px;margin:10px 0}
td.user-roles .pill{display:inline-block;margin:2px 6px 2px 0}
td.user-roles .mini-btn{margin-left:2px}

/* Учебный план сверки: пересчитанные значения, практика из шага 1, итоги. */
.rec-table input.derived{background:var(--bg);color:var(--muted)}
.rec-table input.mark{margin-top:4px;font-size:12.5px}
.rec-table tr.rec-subhead td{background:var(--bg);color:var(--accent);font-weight:600;font-size:13px}
.rec-table tr.rec-fixed td{color:var(--ink);vertical-align:middle}
.rec-table tr.rec-fixed td:nth-child(3),.rec-table tr.rec-fixed td:nth-child(4){text-align:center}
.rec-table tfoot td{background:var(--bg);font-weight:600;padding:7px 8px}
.rec-table tfoot td[data-rt]{text-align:center}
.rec-table tfoot tr.total td{border-top:2px solid var(--line);color:var(--accent);font-weight:700}
#catalog-card td.wrap{min-width:180px}
#catalog-card td.row-actions{white-space:nowrap;text-align:right}
.facsmo-frame{display:block;width:100%;height:calc(100vh - 190px);min-height:520px;border:1px solid var(--line);border-radius:15px;background:var(--card)}
/* Заголовки страниц, карточек, окон и групп боковой панели — Roboto Condensed обычного начертания, без полужирного. */
h1,h2,h3,h4,h5,h6,.nav-group-head{font-family:var(--font-condensed);font-weight:400}
/* Шаг 3 сверки: распределение дисциплин по модулям ФГОС СПО. */
.rec-dist{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:0 0 12px;background:var(--bg)}
.rec-dist-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:8px}
.rec-dist-head b{color:var(--accent)}
.rec-dist-head span{color:var(--muted);font-size:12.5px}
.rec-dist-row{display:grid;grid-template-columns:minmax(220px,2.2fr) minmax(120px,3fr) 110px 80px;gap:10px;align-items:center;padding:5px 0;border-top:1px solid var(--line);font-size:13px}
.rec-dist-row>b{font-weight:600;text-align:right;white-space:nowrap}
.rec-dist-bar{height:10px;background:var(--line);border-radius:99px;overflow:hidden}
.rec-dist-bar i{display:block;height:100%;background:var(--accent);border-radius:99px}
.rec-dist-row.aside{color:var(--muted)}
.rec-dist-row.aside .rec-dist-bar i{background:var(--muted)}
.rec-dist-row.empty>span,.rec-dist-row.loose>span,.rec-dist-row.loose>b{color:var(--red)}
.rec-dist-row.loose .rec-dist-bar i{background:var(--red)}
.rec-dist-note{margin:8px 0 0;color:var(--red);font-size:12.5px;line-height:1.4}
@media(max-width:850px){.rec-dist-row{grid-template-columns:1fr 90px 70px}.rec-dist-bar{display:none}}
