:root{--ink:#13231f;--muted:#66736f;--paper:#f4f3ee;--card:#fff;--line:#dfe3df;--green:#0f6b52;--lime:#bddd78;--orange:#e58542;--shadow:0 18px 45px rgba(26,45,39,.08)}
[hidden]{display:none!important}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif}.topbar{height:76px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(244,243,238,.92);position:sticky;top:0;z-index:3;backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--ink);color:white;font-weight:800}.brand b,.brand small{display:block}.brand small{color:var(--muted);font-size:12px;margin-top:2px}.local-badge{font-size:13px;color:var(--green);background:#e5efe9;padding:9px 13px;border-radius:99px}main{max-width:1180px;margin:auto;padding:54px 24px}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:11px;color:var(--green);margin:0 0 10px}h1{font-family:Georgia,serif;font-size:clamp(42px,5.7vw,76px);line-height:.97;letter-spacing:-.045em;margin:0}h1 span{color:var(--green)}.lead{font-size:18px;line-height:1.6;color:var(--muted);max-width:640px}.upload-card{background:var(--card);padding:12px;border-radius:24px;box-shadow:var(--shadow);border:1px solid var(--line)}.dropzone{min-height:220px;border:1.5px dashed #9ab4aa;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;background:#f8faf8;transition:.2s}.dropzone:hover,.dropzone.drag{background:#edf6f1;border-color:var(--green)}.dropzone input{display:none}.dropzone span{color:var(--muted);font-size:13px;margin-top:8px}.dropzone .upload-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--green);color:white;font-size:24px;margin:0 0 14px}.upload-actions{display:flex;justify-content:space-between;align-items:center;padding:13px 8px 3px;color:var(--muted);font-size:12px}.text-button{border:0;background:none;color:var(--green);font-weight:700;cursor:pointer}.notice{display:flex;gap:14px;align-items:center;padding:15px 18px;border-left:4px solid var(--orange);background:#fff5ea;border-radius:8px;margin:28px 0}.notice span{color:#765d48;font-size:14px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.metrics article{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px}.metrics span,.metrics small{display:block;color:var(--muted);font-size:12px}.metrics strong{display:block;font-family:Georgia,serif;font-size:38px;margin:8px 0}.metrics .accent{background:var(--ink);color:white}.metrics .accent span,.metrics .accent small{color:#b6c5c0}.grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:22px;margin-top:16px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.panel h2{margin:0;font-family:Georgia,serif;font-size:25px}.legend{font-size:12px;color:var(--muted)}.legend i{display:inline-block;width:9px;height:9px;background:var(--green);border-radius:3px}.empty-state{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);gap:8px}.empty-state.compact{min-height:260px}.empty-state b{color:var(--ink)}.bars{height:260px;display:flex;align-items:flex-end;gap:10px;padding-top:28px;border-bottom:1px solid var(--line)}.bar-col{flex:1;min-width:26px;text-align:center}.bar{background:linear-gradient(var(--lime),var(--green));border-radius:7px 7px 2px 2px;min-height:4px;position:relative}.bar:hover:after{content:attr(data-value);position:absolute;top:-28px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:4px 6px;border-radius:5px;font-size:11px}.bar-col small{display:block;font-size:10px;color:var(--muted);margin-top:8px}.repeat-item{display:grid;grid-template-columns:1fr auto;gap:4px;border-bottom:1px solid var(--line);padding:14px 0}.repeat-item:last-child{border:0}.repeat-item b{font-size:14px}.repeat-item span{color:var(--muted);font-size:12px}.repeat-item strong{grid-row:1/3;grid-column:2;background:#fff0e5;color:#a34d17;padding:7px 9px;border-radius:10px}.filters{display:flex;gap:8px}.filters input{width:280px}.filters input,.filters button{border:1px solid var(--line);background:#fafafa;border-radius:10px;padding:9px 12px}.table-wrap{overflow:auto;margin-top:16px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:12px 10px;border-bottom:1px solid var(--line)}td{padding:14px 10px;border-bottom:1px solid #edf0ed;vertical-align:top}.table-empty{text-align:center;color:var(--muted);padding:50px}.pill{display:inline-block;background:#edf4f0;padding:4px 7px;border-radius:7px;margin:2px;font-size:11px}.help{margin:20px 0;background:#e8ebe7;padding:16px 20px;border-radius:14px;color:var(--muted)}.help summary{cursor:pointer;font-weight:700;color:var(--ink)}footer{text-align:center;color:var(--muted);font-size:12px;padding:25px}
.site-panel{background:#e6efe9;border:1px solid #c9dbd1;border-radius:18px;padding:20px;margin:22px 0}.site-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.site-panel h2{font-family:Georgia,serif;margin:0;font-size:24px}.site-panel-head>span{font-size:12px;color:var(--green);font-weight:700;max-width:48%;text-align:right}.site-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:9px;margin-top:16px}.site-choice{display:flex;align-items:center;gap:10px;background:white;border:1px solid #cfddd5;border-radius:12px;padding:11px;cursor:pointer}.site-choice:has(input:checked){border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.site-choice input{accent-color:var(--green);width:17px;height:17px}.site-choice span{min-width:0}.site-choice b,.site-choice small{display:block}.site-choice b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-choice small{font-size:11px;color:var(--muted);margin-top:3px}
.filter-audit{display:flex;flex-wrap:wrap;gap:9px 20px;align-items:center;background:#13231f;color:white;border-radius:11px;padding:11px 13px;margin-top:13px;font-size:11px}.filter-audit>strong{font-size:13px}.filter-audit>span{color:#b9c7c2}.filter-audit b{color:white}
.target-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--ink);color:white;border-radius:18px;padding:18px 20px;margin:22px 0}.target-panel b,.target-panel span{display:block}.target-panel span{color:#b9c7c2;font-size:12px;margin-top:4px}.target-panel .eyebrow{color:var(--lime)}.target-panel label{display:flex;align-items:center;background:white;border-radius:12px;padding:5px 11px;color:var(--ink)}.target-panel input{width:86px;border:0;outline:0;font-family:Georgia,serif;font-size:30px;color:var(--ink);background:transparent}.target-panel label strong{font-size:18px}.metric-result{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #43534e;margin-top:12px;padding-top:9px}.metric-result b{font-size:13px}.metric-result em{font-style:normal;font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:4px 6px;border-radius:6px}.metric-result em.done{background:#2f8067;color:white}.metric-result em.warn{background:#a44e24;color:white}
.annual-card button{width:100%;border:1px solid #60706b;background:#263934;color:white;border-radius:9px;padding:8px;margin-top:10px;cursor:pointer;font-weight:700;text-align:left}.annual-card button:disabled{opacity:.45;cursor:not-allowed}.annual-plan{border:2px solid var(--green);scroll-margin-top:90px}.annual-plan:focus{outline:3px solid #a9cfbf}.annual-plan-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:15px 0}.annual-plan-summary div{background:#f4f6f3;border-radius:11px;padding:11px}.annual-plan-summary span,.annual-plan-summary small{display:block;color:var(--muted);font-size:10px}.annual-plan-summary b{display:block;font-family:Georgia,serif;font-size:22px;margin:5px 0}.annual-plan-summary .reachable{background:#e8f5ec}.annual-plan-summary .unreachable{background:#fff0f1}.annual-plan-message{grid-column:1/-1!important}.annual-plan-message p{margin:5px 0;font-size:12px;line-height:1.45}
.annual-plan-formula{font-family:Georgia,serif;font-size:20px;background:var(--ink);color:white;border-radius:11px;padding:13px 15px;margin:14px 0 6px}.annual-plan-explain{font-size:12px;line-height:1.5;color:var(--muted);margin:0 0 12px}.partial-month-note{display:block;color:#8d5d18;font-size:10px;font-weight:700;margin-top:3px}
.fund-panel{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:0 20px;margin:20px 0}.fund-panel summary{display:flex;justify-content:space-between;align-items:center;padding:17px 0;cursor:pointer;list-style:none}.fund-panel summary span b,.fund-panel summary span small{display:block}.fund-panel summary small{color:var(--muted);margin-top:4px}.fund-panel summary>strong{font-size:12px;color:var(--green)}.fund-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-top:1px solid var(--line);padding-top:16px}.fund-grid div{background:#f5f7f4;border-radius:12px;padding:13px}.fund-grid span,.fund-grid small{display:block;color:var(--muted);font-size:11px}.fund-grid b{display:block;font-family:Georgia,serif;font-size:24px;margin:5px 0}.calendar-notes{font-size:12px;line-height:1.6;color:var(--muted);padding:8px 0}.calendar-notes b{color:var(--ink)}
.hierarchy-panel{margin-top:20px}.year-picker{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.year-picker select{display:block;margin-top:5px;min-width:110px;border:1px solid var(--line);border-radius:9px;padding:8px;background:white}.hierarchy-note{font-size:12px;color:var(--muted)}.back-button{border:0;background:#e6efe9;color:var(--green);font-weight:700;border-radius:9px;padding:8px 11px;margin-top:14px;cursor:pointer}.month-link{border:0;background:none;color:var(--green);font-weight:800;cursor:pointer;padding:4px 0}.load-cell{font-weight:800}.load-cell.high{color:var(--green)}.load-cell.low{color:#a34d17}.day-type{display:block;color:var(--muted);font-size:11px;margin-top:3px}.outside-mark{display:inline-block;color:#a34d17;background:#fff0e5;border-radius:7px;padding:3px 6px;font-size:10px;font-weight:700;margin-top:4px}
.problem-months{background:#fff0e5;border:1px solid #f0c9af;border-radius:12px;padding:12px 14px;margin:12px 0;color:#8d4318}.problem-months>b,.problem-months>span{display:block}.problem-months>span{font-size:11px;margin:3px 0 8px}.problem-months button{border:1px solid #e4b38e;background:white;color:#8d4318;border-radius:8px;padding:6px 8px;margin:3px 5px 3px 0;cursor:pointer;font-weight:700}.problem-row{background:#fff8f2}.month-done-row{background:#e8f5ec}.month-done-row td{border-bottom-color:#bcdcc7}.status-pill{display:inline-block;border-radius:7px;padding:4px 7px;font-size:10px;font-weight:800;text-transform:uppercase}.status-pill.done{background:#cbe8d4;color:#0b5d42}.status-pill.warn{background:#fff0e5;color:#a34d17}.deviation.negative{color:#a34d17;font-weight:800}.deviation.positive{color:var(--green);font-weight:800}
.daily-nonworking{background:#fff0f1}.daily-nonworking td{border-bottom-color:#f2c8cc}.daily-under{background:#fff8e7}.daily-under td{border-bottom-color:#eed9a9}.daily-done{background:#e8f5ec}.daily-done td{border-bottom-color:#bcdcc7}.daily-short{box-shadow:inset 4px 0 #7a63a8}.day-badge{display:inline-block;border-radius:7px;padding:4px 7px;font-size:10px;font-weight:800;text-transform:uppercase;margin:2px 4px 2px 0}.day-badge.off{background:#f5cdd1;color:#8d2631}.day-badge.under{background:#f5daa3;color:#82510b}.day-badge.short{background:#e7def5;color:#60458f}.day-badge.done{background:#cbe8d4;color:#0b5d42}
.day-link{border:0;background:none;color:var(--green);font:inherit;font-weight:800;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;cursor:pointer;padding:4px}.day-link:focus-visible{outline:3px solid #7cb79e;outline-offset:2px;border-radius:5px}.day-drill{border:2px solid var(--green);border-radius:16px;padding:17px;margin-top:18px;background:#f7faf8;scroll-margin-top:90px}.day-drill:focus{outline:3px solid #a9cfbf}.day-drill-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.day-drill h3{font-family:Georgia,serif;font-size:25px;margin:0}.day-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.day-drill-head button{border:1px solid var(--line);background:white;border-radius:9px;padding:8px 10px;cursor:pointer;font-weight:700}.day-drill-head #printDaySummary,.day-drill-head #printDayFull{background:var(--green);color:white;border-color:var(--green)}.act-context{font-size:12px;line-height:1.55;color:var(--muted);background:white;border-radius:9px;padding:9px 11px;margin-top:10px}.day-totals{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.day-totals span{background:var(--ink);color:white;border-radius:9px;padding:7px 10px;font-size:12px}.session-card{background:white;border:1px solid var(--line);border-radius:13px;padding:14px;margin:9px 0}.session-card-head{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:9px}.session-card-head b{font-family:Georgia,serif;font-size:18px}.session-card-head span{font-size:12px;color:var(--muted)}.session-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.person-line{background:#f4f6f3;border-radius:8px;padding:8px;font-size:12px}.person-line small{display:block;color:var(--muted);margin-bottom:3px}.session-meta{font-size:11px;color:var(--muted);margin-top:9px;line-height:1.5}.session-reason{font-size:12px;line-height:1.5;background:#fff8e7;border-radius:8px;padding:8px;margin-top:9px}.session-reason b{display:block;margin-bottom:3px}.act-signatures{display:flex;justify-content:space-between;gap:30px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font-size:12px}.print-only{display:none}
.instructor-editor{display:flex;align-items:flex-end;gap:8px;background:#edf4f0;border-radius:10px;padding:10px;margin-top:10px}.instructor-editor label{flex:1;font-size:11px;font-weight:800;color:var(--green)}.instructor-editor input{display:block;width:100%;margin-top:5px;border:1px solid #bfd0c7;border-radius:8px;padding:8px;background:white;color:var(--ink)}.instructor-editor button{border:1px solid #bfd0c7;background:white;border-radius:8px;padding:8px;cursor:pointer}.act-instructor{font-size:12px}.act-signatures{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font-size:12px}.print-only{display:none}
.short-act-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;width:100%}.act-layer{background:white;border:1px solid var(--line);border-radius:10px;padding:10px}.act-layer>small{display:block;color:var(--green);font-weight:900;letter-spacing:.08em;margin-bottom:4px}.act-layer>b{display:block;font-size:12px;margin-bottom:7px}.act-layer .summary-value{display:inline-block;background:var(--ink);color:white;border-radius:8px;padding:6px 8px;font-size:11px;margin:2px 4px 2px 0}.act-layer.staff-missing{background:#eef0ed;color:var(--muted)}.act-layer.staff-missing p{font-size:11px;line-height:1.45;margin:7px 0 0}
.participant-section{background:white;border:1px solid var(--line);border-radius:12px;padding:12px;margin:12px 0}.participant-section h4{font-family:Georgia,serif;font-size:18px;margin:0}.participant-section>p{font-size:10px;color:var(--muted);margin:4px 0 9px}.participant-table{font-size:10px;min-width:1040px}.participant-table th{font-size:9px;padding:7px 6px}.participant-table td{padding:7px 6px}.missing-data{color:#8b5a31;font-style:italic;background:#fff7ec;border-radius:5px;padding:2px 4px;white-space:nowrap}.role-label{font-weight:800;color:var(--green)}
@media print{body *{visibility:hidden!important}.day-drill,.day-drill *{visibility:visible!important}.day-drill{display:block!important;position:absolute;left:0;top:0;width:100%;border:0;background:white;padding:0;color:#111}.print-only{display:block}.act-heading{border-bottom:2px solid #111;margin-bottom:18px}.act-heading h1{font-family:Georgia,serif;font-size:24px;margin:0 0 6px}.act-heading p{font-size:11px;margin:0 0 12px}.day-actions,.eyebrow,.instructor-editor{display:none!important}.day-drill h3{font-size:20px}.act-context{border:1px solid #bbb}.day-totals span{background:white;color:#111;border:1px solid #999}.participant-table{min-width:0;width:100%;font-size:8px}.participant-table th,.participant-table td{padding:4px 3px}.missing-data{white-space:normal}.session-card{break-inside:avoid;border-color:#999}.session-reason{background:white;border:1px solid #bbb}.act-signatures{break-inside:avoid;margin-top:35px}.day-drill.print-summary #daySessions,.day-drill.print-summary .act-instructor,.day-drill.print-summary .act-signatures{display:none!important}.day-drill.print-summary .act-heading h1{font-size:0}.day-drill.print-summary .act-heading h1:after{content:'Краткая сводка дня';font-size:24px}.topbar,footer{display:none!important}@page{size:A4;margin:14mm}}
.plan-period{font-size:12px;color:var(--green);font-weight:800}.plan-explain{font-size:12px;color:var(--muted);line-height:1.5;background:#f3f6f3;border-radius:9px;padding:9px 11px}.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:15px}.plan-card{background:#f5f7f4;border:1px solid var(--line);border-radius:12px;padding:12px}.plan-card span,.plan-card small{display:block;color:var(--muted);font-size:10px}.plan-card b{display:block;font-family:Georgia,serif;font-size:25px;margin:6px 0}.plan-card.primary{background:var(--ink);color:white}.plan-card.primary span,.plan-card.primary small{color:#b9c7c2}.plan-card.success{background:#e5f2e9;border-color:#b8d9c5}.plan-card.warning{background:#fff0e5;border-color:#edc5a8}.plan-result{grid-column:span 2}.plan-foot{font-size:11px;color:var(--muted);margin-top:12px}.plan-foot b{color:var(--ink)}
@media(max-width:850px){.hero,.grid{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.hero{gap:22px}.local-badge{display:none}.filters{width:100%}.filters input{width:100%}.panel-heading{flex-wrap:wrap}}
@media(max-width:520px){main{padding:34px 14px}.topbar{padding:0 14px}.metrics,.plan-cards,.session-people,.short-act-grid,.annual-plan-summary{grid-template-columns:1fr}.plan-result{grid-column:auto}.notice,.site-panel-head{align-items:flex-start;flex-direction:column}.site-panel-head>span{max-width:none;text-align:left}h1{font-size:45px}.panel{padding:16px}.upload-actions{align-items:flex-start;gap:8px;flex-direction:column}}
/* Personnel: isolated second-stage module */
.personnel-panel{margin-top:22px}.personnel-upload-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.personnel-upload{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border:1px dashed #9aafaa;border-radius:14px;background:#f5faf8;cursor:pointer}.personnel-upload input{margin-top:8px}.personnel-upload span,#personnelStatus{font-size:.86rem;color:#596b68}.personnel-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:18px 0}.personnel-metrics div{padding:13px;border-radius:12px;background:#f4f7f6}.personnel-metrics b{display:block;font-size:1.35rem}.personnel-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.personnel-nav button{border:1px solid #ccd8d5;background:white;padding:9px 12px;border-radius:10px;cursor:pointer}.personnel-nav button.active{background:#163f3a;color:white}.personnel-table button.link-button{border:0;background:none;color:#12685b;text-decoration:underline;cursor:pointer;font:inherit}.quality-ok{color:#13704d}.quality-warn{color:#9b5716}.category-chip{display:inline-block;padding:3px 7px;border-radius:999px;background:#e8f2ef}.category-chip.excluded{background:#f1f1f1;color:#666}.instructor-control{display:grid;gap:5px;min-width:220px}.instructor-control select{max-width:270px}.person-card{margin-top:16px;padding:18px;border:1px solid #bed0cb;border-radius:14px;background:#fbfdfc}.person-card>button{float:right}.pay-toggle{display:flex;align-items:center;gap:8px}.pay-note{padding:10px 12px;background:#fff6df;border-radius:10px}.personnel-empty{padding:24px;text-align:center;color:#667}.match-badge{font-size:.78rem;padding:2px 6px;border-radius:8px;background:#e7f2ef}.match-badge.review{background:#fff0cc}
.hours-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:12px 0}.hours-summary div{padding:12px;border-radius:12px;background:#edf6f3}.hours-summary b{display:block;font-size:1.25rem}.hours-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.needs-review{background:#fff0dc}.hours-person-total td{font-weight:700;background:#f3f6f5}.draft-label{display:inline-block;padding:5px 9px;border-radius:999px;background:#fff0cc;color:#724c00;font-weight:700}
.hours-controls{display:flex;gap:9px;align-items:end;flex-wrap:wrap}.hours-controls label{display:grid;gap:3px;font-size:.78rem}.hours-controls input[type=number]{width:90px}.hours-view-standard .actual-col,.hours-view-actual .standard-col{display:none}
@media print{body.printing-hours *{visibility:hidden!important}body.printing-hours #hoursPrintArea,body.printing-hours #hoursPrintArea *{visibility:visible!important}body.printing-hours #hoursPrintArea{display:block!important;position:absolute;left:0;top:0;width:100%;font-size:9px}body.printing-hours #hoursPrintArea table{min-width:0;width:100%}body.printing-hours #hoursPrintArea th,body.printing-hours #hoursPrintArea td{padding:3px}body.printing-hours .day-drill{display:none!important}}
@media print{body.printing-monthly *{visibility:hidden!important}body.printing-monthly #monthlyPrintArea,body.printing-monthly #monthlyPrintArea *{visibility:visible!important}body.printing-monthly #monthlyPrintArea{display:block!important;position:absolute;left:0;top:0;width:100%;font-size:9px}body.printing-monthly #monthlyPrintArea table{min-width:0;width:100%}body.printing-monthly #monthlyPrintArea th,body.printing-monthly #monthlyPrintArea td{padding:3px}body.printing-monthly .day-drill{display:none!important}}
.position-choice-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}.position-choice-head>div:first-child{flex:1;min-width:280px}.position-actions{display:flex;gap:7px;flex-wrap:wrap}.position-actions button{padding:8px 10px;border:1px solid #bdcbc7;border-radius:9px;background:white;cursor:pointer}.personnel-table input[type=checkbox]{width:18px;height:18px}
.app-nav{display:flex;gap:6px;margin-left:auto;margin-right:18px;padding:4px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.06)}.app-nav button{border:0;border-radius:8px;padding:9px 13px;background:transparent;color:#dce8e4;font-weight:700;cursor:pointer}.app-nav button.active{background:white;color:#173f39}.app-nav button:focus-visible{outline:3px solid #e8ba55;outline-offset:2px}body[data-app-view="main"] [data-app-section]{display:none!important}body[data-app-view="sources"] main>*:not([data-app-section="sources"]),body[data-app-view="personnel"] main>*:not([data-app-section="personnel"]),body[data-app-view="reports"] main>*:not([data-app-section="reports"]),body[data-app-view="violations"] main>*:not([data-app-section="violations"]),body[data-app-view="guide"] main>*:not([data-app-section="guide"]){display:none!important}body[data-app-view="sources"] main,body[data-app-view="personnel"] main,body[data-app-view="reports"] main,body[data-app-view="violations"] main,body[data-app-view="guide"] main{padding-top:28px}body[data-app-view="sources"] #sourcesPanel,body[data-app-view="personnel"] #personnelPanel,body[data-app-view="reports"] #reportsPanel,body[data-app-view="violations"] #violationsPanel,body[data-app-view="guide"] #workflowGuide{display:block!important;margin-top:0}body[data-app-view="sources"] footer:before{content:'Раздел «Источники данных» · '}body[data-app-view="personnel"] footer:before{content:'Раздел «Персонал и анализ» · '}body[data-app-view="reports"] footer:before{content:'Раздел «Отчёты» · '}body[data-app-view="violations"] footer:before{content:'Раздел «Нарушения и меры» · '}body[data-app-view="guide"] footer:before{content:'Раздел «Как работать» · '}
.sources-page{margin:0}.sources-intro{display:grid;grid-template-columns:1.3fr .7fr;gap:34px;align-items:end;padding:28px 0 34px;border-bottom:1px solid var(--line)}.sources-intro h1{font-size:clamp(38px,5vw,66px)}.sources-privacy{background:var(--ink);color:white;border-radius:18px;padding:22px}.sources-privacy>b{display:block;font-family:Georgia,serif;font-size:24px;margin:12px 0 8px}.sources-privacy p{color:#c7d3cf;font-size:12px;line-height:1.55;margin:0}.source-health{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:22px 0}.source-health article{background:white;padding:16px;min-height:122px}.source-health small,.source-health b,.source-health span{display:block}.source-health small{color:var(--green);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.source-health b{font-family:Georgia,serif;font-size:20px;margin:8px 0}.source-health span{color:var(--muted);font-size:11px;line-height:1.45}.source-actions,.source-history{background:white;border:1px solid var(--line);border-radius:16px;padding:20px;margin-top:16px}.source-actions-head,.source-history-head{display:flex;justify-content:space-between;gap:22px;align-items:flex-start}.source-actions-head h2,.source-history-head h2{font-family:Georgia,serif;font-size:27px;margin:0}.source-actions-head>p{max-width:480px;color:var(--muted);font-size:12px;line-height:1.5;margin:0}.source-upload-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.source-upload-grid button,.source-upload-grid label{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:104px;padding:15px;border:1px solid #bdcbc7;border-radius:12px;background:#f7faf8;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.source-upload-grid button:hover,.source-upload-grid label:hover{border-color:var(--green);background:#eef6f2}.source-upload-grid button:focus-visible,.source-upload-grid label:focus-within,.source-history-head button:focus-visible{outline:3px solid #e8ba55;outline-offset:2px}.source-upload-grid b{font-family:Georgia,serif;font-size:19px}.source-upload-grid span{color:var(--muted);font-size:11px;line-height:1.4}.source-upload-grid input{width:100%;margin-top:auto;font-size:10px}.source-pending{margin-top:12px;padding:10px 12px;border-radius:9px;background:#eef2ef;color:var(--muted);font-size:12px}.source-pending.warning{background:#fff3dc;color:#745117}.source-pending.success{background:#e2f2e8;color:#155f43}.source-history-head button{border:1px solid #bdcbc7;background:white;border-radius:9px;padding:9px 11px;cursor:pointer}.source-table{width:100%;min-width:850px;border-collapse:collapse;margin-top:14px;font-size:11px}.source-table th,.source-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.source-table th{color:var(--muted);font-size:10px;text-transform:uppercase}.source-table small{display:block;color:var(--muted);margin-top:3px}.source-result{display:inline-block;border-radius:7px;padding:4px 7px;font-weight:800}.source-result.applied{background:#d7eddf;color:#0b5d42}.source-result.adapter{background:#fff0cc;color:#745117}.source-result.duplicate{background:#e8edf1;color:#53636c}.source-empty{text-align:center;color:var(--muted);padding:24px!important}.source-current{margin-top:5px;color:#155f43!important;font-weight:800}
.demo-launch{border:1px solid #bddd78;background:#bddd78;color:#13231f;border-radius:9px;padding:10px 13px;font-weight:800;white-space:nowrap;cursor:pointer}.demo-launch:hover{background:#cbea86}.demo-launch:focus-visible,.demo-banner button:focus-visible{outline:3px solid #e8ba55;outline-offset:2px}.demo-banner{position:sticky;top:74px;z-index:8;display:flex;align-items:center;justify-content:center;gap:18px;padding:10px 18px;background:#fff3d9;border-bottom:1px solid #e6c783;color:#6c4b12;font-size:13px}.demo-banner[hidden]{display:none}.demo-banner button{border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font-weight:800;cursor:pointer}
.demo-video{color:#0f6b52;font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap;border-bottom:1px solid rgba(15,107,82,.45)}.demo-video:hover{color:#13231f}.demo-video:focus-visible{outline:3px solid #e8ba55;outline-offset:4px}
@media(max-width:850px){.topbar{flex-wrap:wrap;height:auto;min-height:64px;padding-top:8px;padding-bottom:8px}.app-nav{order:3;width:100%;margin:4px 0 0}.app-nav button{flex:1}.topbar .local-badge{margin-left:auto}}
.workflow-page{margin:0}.workflow-intro{display:grid;grid-template-columns:1.3fr .7fr;gap:34px;align-items:end;padding:28px 0 34px;border-bottom:1px solid var(--line)}.workflow-intro h1{font-size:clamp(38px,5vw,66px)}.workflow-result{background:var(--ink);color:white;border-radius:18px;padding:22px}.workflow-result small{display:block;color:var(--lime);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.workflow-result strong{display:block;font-family:Georgia,serif;font-size:25px;line-height:1.15;margin:10px 0}.workflow-result p{color:#c7d3cf;line-height:1.5;font-size:13px;margin:0}.workflow-status{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:22px 0}.workflow-status>div{background:white;padding:15px}.workflow-status b,.workflow-status small{display:block}.workflow-status b{margin-top:8px}.workflow-status small{color:var(--muted);font-size:11px;line-height:1.4;margin-top:3px}.workflow-badge{display:inline-block;border-radius:6px;padding:4px 7px;font-size:10px;font-weight:800;text-transform:uppercase}.workflow-badge.done{background:#d7eddf;color:#0b5d42}.workflow-badge.pending{background:#f3eee4;color:#745d31}.workflow-badge.planned{background:#e8edf1;color:#53636c}.workflow-steps{display:grid;grid-template-columns:1fr 1fr;gap:14px}.workflow-step{display:grid;grid-template-columns:48px 1fr;gap:14px;background:white;border:1px solid var(--line);border-radius:16px;padding:18px}.workflow-step.ready{border-top:4px solid var(--green)}.workflow-step.next{border-top:4px solid #d39a3d}.workflow-step.output{border-top:4px solid var(--ink)}.step-number{font-family:Georgia,serif;font-size:27px;color:#96a49f}.workflow-step small{color:var(--green);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.workflow-step h2{font-family:Georgia,serif;font-size:23px;margin:5px 0 8px}.workflow-step p,.workflow-step li,.workflow-step em{font-size:12px;line-height:1.55;color:var(--muted)}.workflow-step ul{margin:5px 0 12px;padding-left:18px}.workflow-step button{border:0;background:var(--green);color:white;border-radius:8px;padding:9px 11px;font-weight:800;cursor:pointer}.workflow-step button:focus-visible{outline:3px solid #e8ba55;outline-offset:2px}.workflow-step em{display:block;background:#fff5e6;border-radius:8px;padding:8px;font-style:normal}.decision-map{display:grid;grid-template-columns:.7fr 1.3fr;gap:28px;background:#e7ece8;border-radius:18px;padding:22px;margin-top:18px}.decision-map h2{font-family:Georgia,serif;margin:0;font-size:27px}.decision-map ol{margin:0;padding:0;list-style:none;counter-reset:decision}.decision-map li{counter-increment:decision;display:grid;grid-template-columns:28px 180px 1fr;gap:8px;padding:10px 0;border-bottom:1px solid #cdd6d1;font-size:12px}.decision-map li:last-child{border:0}.decision-map li:before{content:counter(decision);font-family:Georgia,serif;font-weight:800;color:var(--green)}.decision-map li span{color:var(--muted)}
.violations-page{margin:0}.violations-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:end;padding:28px 0 34px;border-bottom:1px solid var(--line)}.violations-intro h1{font-size:clamp(38px,5vw,66px)}.violations-status{background:var(--ink);color:white;border-radius:18px;padding:22px}.violations-status>b{display:block;font-family:Georgia,serif;font-size:28px;margin:14px 0 8px}.violations-status p{margin:0;color:#c7d3cf;font-size:13px;line-height:1.55}.measure-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:10px;margin:22px 0}.measure-flow article{min-height:116px;padding:16px;background:white;border:1px solid var(--line);border-radius:14px}.measure-flow article>span{display:block;color:var(--green);font-family:Georgia,serif;font-size:24px}.measure-flow b,.measure-flow small{display:block}.measure-flow b{margin:5px 0}.measure-flow small{color:var(--muted);font-size:11px;line-height:1.4}.measure-flow>i{font-style:normal;color:var(--green);font-size:24px}.violation-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.violation-card{background:white;border:1px solid var(--line);border-radius:16px;padding:20px}.violation-card h2{margin:0;font-family:Georgia,serif;font-size:25px}.violation-card li,.violation-card p,.violation-card dd,.violation-card dt{font-size:12px;line-height:1.55}.violation-card li,.violation-card p,.violation-card dd{color:var(--muted)}.violation-card.emphasis{background:#e7ece8}.violation-card dl{margin-bottom:0}.violation-card dl div{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid #cdd6d1}.violation-card dl div:last-child{border:0}.violation-card dt{font-weight:800}.violation-card dd{margin:0}.module-note,.integration-warning{display:block;border-radius:8px;padding:10px;background:#f5f7f4}.integration-warning{background:#fff5e6;color:#745d31;font-size:12px;line-height:1.5}.integration-plan{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:1px;margin-top:18px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--line)}.integration-plan>div{background:white;padding:18px}.integration-plan>div:first-child{background:var(--ink);color:white}.integration-plan h2{font-family:Georgia,serif;margin:0;font-size:26px}.integration-plan b,.integration-plan span{display:block}.integration-plan span{margin-top:6px;color:var(--muted);font-size:11px;line-height:1.45}.integration-plan>p{grid-column:1/-1;margin:0;padding:14px 18px;background:#e7ece8;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:850px){.workflow-intro,.decision-map{grid-template-columns:1fr}.workflow-status{grid-template-columns:1fr 1fr}.workflow-steps{grid-template-columns:1fr}}
@media(max-width:850px){.sources-intro{grid-template-columns:1fr}.source-health,.source-upload-grid{grid-template-columns:1fr 1fr}.source-actions-head{display:block}.source-actions-head>p{margin-top:10px}}
@media(max-width:850px){.violations-intro,.violation-grid,.integration-plan{grid-template-columns:1fr}.measure-flow{grid-template-columns:1fr}.measure-flow>i{transform:rotate(90deg);justify-self:center}.integration-plan>p{grid-column:auto}}
@media(max-width:520px){.workflow-status{grid-template-columns:1fr}.workflow-step{grid-template-columns:38px 1fr;padding:14px}.decision-map li{grid-template-columns:24px 1fr}.decision-map li span{grid-column:2}}
@media(max-width:520px){.source-health,.source-upload-grid{grid-template-columns:1fr}.source-actions,.source-history{padding:15px}.source-history-head{display:block}.source-history-head button{margin-top:10px}}
.app-nav{border-color:var(--line);background:#e9ece8}.app-nav button{color:#42524d}.app-nav button:hover{background:#f5f7f4;color:var(--ink)}.app-nav button.active{box-shadow:0 1px 3px rgba(19,35,31,.08)}
.source-table .source-delta{margin-top:6px;color:#155f43;font-weight:800}
@media(max-width:1040px){.demo-launch,.demo-video{order:4}.topbar{flex-wrap:wrap}.app-nav{margin-left:auto}.local-badge{display:none}}
@media(max-width:1500px){.local-badge{display:none}}
@media(max-width:680px){.demo-launch{flex:1;order:5}.demo-video{order:5}.app-nav{order:4;width:100%;overflow-x:auto;margin:8px 0 0}.app-nav button{flex:0 0 auto}.demo-banner{top:126px;align-items:flex-start;justify-content:space-between}}
.column-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:10px}.column-toolbar label{display:grid;gap:4px;font-size:.8rem}.column-toolbar select,.column-toolbar button{padding:8px 10px;border:1px solid #bdcbc7;border-radius:9px;background:white}.column-drill{margin-top:16px;padding:16px;border:1px solid #bed0cb;border-radius:14px;background:#fbfdfc}
.column-leader{display:grid;gap:5px;padding:13px;margin:10px 0;border-left:4px solid #188060;background:#eef8f4;border-radius:9px}.column-leader.needs-review{border-left-color:#d58b28;background:#fff4df}.column-leader select{max-width:430px}.payment-candidates{margin:16px 0;padding:15px;border:1px solid #dfc58f;border-radius:13px;background:#fffaf0}.payment-candidates h3{margin:3px 0}.payment-candidates .panel-heading{margin-bottom:8px}
.manager-report{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.manager-report-actions{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.manager-report-actions label{display:grid;gap:4px;font-size:12px}.manager-report-actions select,.manager-report-actions button,.report-switch button{border:1px solid #bdcbc7;border-radius:9px;background:#fff;padding:9px 11px;font:inherit;cursor:pointer}.report-switch{display:flex}.report-switch button{border-radius:0}.report-switch button:first-child{border-radius:9px 0 0 9px}.report-switch button:last-child{border-radius:0 9px 9px 0}.report-switch button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.report-print-head{padding-bottom:14px;border-bottom:1px solid var(--line)}.report-print-head h3{font-family:Georgia,serif;font-size:28px;margin:4px 0}.report-print-head>p:last-child{color:var(--muted);font-size:12px;margin:0}
@media print{body.printing-manager-report *{visibility:hidden!important}body.printing-manager-report #managerReportPrint,body.printing-manager-report #managerReportPrint *{visibility:visible!important}body.printing-manager-report #managerReportPrint{display:block!important;position:absolute;left:0;top:0;width:100%;border:0;padding:0;color:#000}body.printing-manager-report .no-print,body.printing-manager-report button,body.printing-manager-report #managerPersonDetails{display:none!important}body.printing-manager-report table{min-width:0;width:100%;font-size:9px}body.printing-manager-report th,body.printing-manager-report td{padding:4px;border:1px solid #aaa}body.printing-manager-report .hours-summary{break-inside:avoid}}
.deadline-report{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.deadline-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.deadline-toolbar label{display:grid;gap:4px;font-size:12px}.deadline-toolbar input,.deadline-toolbar select,.deadline-toolbar button{border:1px solid #bdcbc7;border-radius:9px;background:#fff;padding:9px 11px;font:inherit}.deadline-toolbar button{cursor:pointer}.deadline-toolbar .deadline-check{display:flex;flex-direction:row;align-items:center;padding:9px}.deadline-summary .deadline-overdue{background:#f9dedf}.deadline-summary .deadline-today{background:#fff0c9}.deadline-summary .deadline-soon{background:#e9f2e0}.deadline-fields{margin:14px 0;padding:11px;background:#f3f6f3;border-radius:9px;font-size:11px;line-height:1.6}.deadline-fields small{color:var(--muted)}.deadline-table tr.deadline-overdue{background:#fff1f1}.deadline-table tr.deadline-today{background:#fff8e4}.deadline-table tr.deadline-soon{background:#f5f9ef}.deadline-badge{display:inline-block;border-radius:6px;padding:4px 7px;font-size:10px;font-weight:800}.deadline-badge.overdue{background:#b43a43;color:#fff}.deadline-badge.today{background:#e2a93d;color:#2c2109}.deadline-badge.soon{background:#dcebd0;color:#2d5720}.deadline-badge.later{background:#e8edf1;color:#53636c}.deadline-table small{display:block;color:var(--muted);margin-top:3px}.deadline-quality{margin-top:14px;font-size:12px}.deadline-quality li{margin:4px 0}
@media print{body.printing-deadlines *{visibility:hidden!important}body.printing-deadlines #deadlinePrintArea,body.printing-deadlines #deadlinePrintArea *{visibility:visible!important}body.printing-deadlines #deadlinePrintArea{display:block!important;position:absolute;left:0;top:0;width:100%;border:0;padding:0;color:#000}body.printing-deadlines .no-print{display:none!important}body.printing-deadlines .print-only{display:inline!important}body.printing-deadlines table{min-width:0;width:100%;font-size:8px}body.printing-deadlines th,body.printing-deadlines td{padding:4px;border:1px solid #aaa}body.printing-deadlines details{display:none!important}}
@media(max-width:680px){.deadline-toolbar{display:grid;grid-template-columns:1fr}.deadline-toolbar .deadline-check{padding-left:0}.deadline-report{padding:14px}}
.segment-report{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.segment-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.segment-toolbar>button{border:1px solid #bdcbc7;border-radius:9px;background:#fff;padding:9px 11px;font:inherit;cursor:pointer}.segment-drill{margin-top:16px;padding:16px;border:1px solid #bed0cb;border-radius:14px;background:#fbfdfc}.segment-drill h3{font-family:Georgia,serif;font-size:25px;margin:0}.segment-drill>.panel-heading>button{border:1px solid #bdcbc7;border-radius:8px;background:#fff;padding:7px 9px;cursor:pointer}
@media print{body.printing-segments *{visibility:hidden!important}body.printing-segments #segmentPrintArea,body.printing-segments #segmentPrintArea *{visibility:visible!important}body.printing-segments #segmentPrintArea{display:block!important;position:absolute;left:0;top:0;width:100%;border:0;padding:0;color:#000}body.printing-segments .no-print,body.printing-segments button,body.printing-segments #segmentDetail{display:none!important}body.printing-segments table{min-width:0;width:100%;font-size:9px}body.printing-segments th,body.printing-segments td{padding:4px;border:1px solid #aaa}}
@media(max-width:680px){.segment-toolbar{display:grid;grid-template-columns:1fr}.segment-toolbar .report-switch{overflow-x:auto}.segment-report{padding:14px}}
.reports-page{margin:0}.reports-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:end;padding:28px 0 34px;border-bottom:1px solid var(--line)}.reports-intro h1{font-size:clamp(38px,5vw,66px)}.reports-result{background:var(--ink);color:#fff;border-radius:18px;padding:22px}.reports-result small{display:block;color:var(--lime);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.reports-result strong{display:block;font-family:Georgia,serif;font-size:25px;line-height:1.15;margin:10px 0}.reports-result p{color:#c7d3cf;line-height:1.5;font-size:13px;margin:0}.period-report-empty{display:grid;place-items:center;gap:7px;min-height:220px;margin-top:22px;background:#eef2ef;border:1px dashed #b9c8c2;border-radius:16px;color:var(--muted)}.period-report-empty b{color:var(--ink);font-family:Georgia,serif;font-size:24px}.period-report{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.period-report-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.period-report-toolbar label{display:grid;gap:4px;font-size:12px}.period-report-toolbar select,.period-report-toolbar button{border:1px solid #bdcbc7;border-radius:9px;background:#fff;padding:9px 11px;font:inherit}.period-report-toolbar button{cursor:pointer}.period-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:16px 0}.period-kpis>div{background:#edf5f1;padding:13px}.period-kpis span,.period-kpis b{display:block}.period-kpis span{font-size:10px;color:var(--muted);text-transform:uppercase}.period-kpis b{font-family:Georgia,serif;font-size:23px;margin-top:5px}.period-kpis .kpi-done{background:#dcebd0}.period-kpis .kpi-warn{background:#fff0c9}.period-chart{display:flex;align-items:flex-end;gap:12px;height:230px;padding:20px 18px 8px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(to top,transparent 24%,#e5ebe7 25%,transparent 26%,transparent 49%,#e5ebe7 50%,transparent 51%,transparent 74%,#e5ebe7 75%,transparent 76%)}.period-chart article{display:grid;grid-template-rows:1fr auto auto;gap:4px;height:100%;flex:1;min-width:54px;text-align:center;font-size:11px}.chart-bars{display:flex;align-items:flex-end;justify-content:center;gap:4px;height:100%}.chart-bars i{display:block;width:min(28%,22px);min-height:3px}.chart-target{background:#e2a93d}.chart-fact.done{background:#188060}.chart-fact.warn{background:#b95147}.period-chart article span{color:var(--muted)}.chart-legend{display:flex;gap:18px;margin:9px 0 18px;font-size:11px}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend i{width:12px;height:12px}.chart-legend .fact{background:#188060}.chart-legend .goal{background:#e2a93d}.period-people{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;padding:12px;border-radius:9px;background:#eef2ef;font-size:12px}.period-people b{margin-right:auto}
@media print{body.printing-period-report *{visibility:hidden!important}body.printing-period-report #periodReportPrint,body.printing-period-report #periodReportPrint *{visibility:visible!important}body.printing-period-report #periodReportPrint{display:block!important;position:absolute;left:0;top:0;width:100%;color:#000}body.printing-period-report .no-print{display:none!important}body.printing-period-report .period-chart{height:170px;break-inside:avoid}body.printing-period-report table{min-width:0;width:100%;font-size:9px}body.printing-period-report th,body.printing-period-report td{padding:4px;border:1px solid #aaa}}
@media(max-width:850px){.reports-intro{grid-template-columns:1fr}.period-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.period-report{padding:14px}.period-report-toolbar{display:grid;grid-template-columns:1fr}.period-report-toolbar select,.period-report-toolbar button{width:100%}.period-kpis{grid-template-columns:1fr 1fr}.period-chart{overflow-x:auto;justify-content:flex-start}.period-chart article{flex:0 0 70px}}
.asu-preflight{margin-top:18px;padding:20px;border:1px solid #d6b56b;border-radius:16px;background:#fffdf7}.asu-preflight-head,.asu-preflight-controls,.asu-preflight-actions{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.asu-preflight-head h3{margin:2px 0 4px;font-family:Georgia,serif;font-size:26px}.asu-preflight-head p{margin:0;color:var(--muted);font-size:12px}.asu-preflight-controls{display:grid;grid-template-columns:220px 170px 1fr;margin:18px 0;padding:14px;background:#f4f7f4;border-radius:12px}.asu-preflight-controls label,.asu-mapping-grid label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800}.asu-preflight-controls select,.asu-preflight-controls input,.asu-mapping-grid select{min-height:38px;border:1px solid #b9c8c2;border-radius:8px;background:white;padding:7px;font:inherit}.asu-preflight-controls small{display:block;margin-top:5px;color:var(--muted);font-weight:400;line-height:1.4}.asu-mapping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.asu-preview-table{min-width:1100px}.asu-preview-table td{max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asu-preflight-actions{align-items:center;margin-top:14px}.asu-preflight-actions button{border:1px solid #aabbb5;border-radius:9px;background:white;padding:10px 13px;cursor:pointer}.asu-preflight-actions button:first-child{background:var(--green);color:white;border-color:var(--green);font-weight:800}.asu-preflight-actions span{margin-left:auto;color:var(--muted);font-size:11px;max-width:340px}@media(max-width:850px){.asu-mapping-grid{grid-template-columns:1fr 1fr}.asu-preflight-controls{grid-template-columns:1fr 1fr}.asu-preflight-controls>div{grid-column:1/-1}}@media(max-width:620px){.asu-mapping-grid,.asu-preflight-controls{grid-template-columns:1fr}.asu-preflight-controls>div{grid-column:auto}.asu-preflight-actions{display:grid}.asu-preflight-actions span{margin-left:0}}
