:root{--navy:#153b57;--navy-2:#0f2d43;--teal:#0d7c75;--teal-soft:#e8f5f3;--orange:#f59e0b;--red:#c2413a;--red-soft:#fff0ef;--green:#237a57;--green-soft:#eaf7f0;--ink:#182734;--muted:#637483;--line:#dce5eb;--bg:#f3f6f8;--white:#fff;--radius:14px;--shadow:0 8px 28px rgba(24,39,52,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:14px}.admin-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--navy-2);color:#fff;padding:24px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;padding:4px 8px 26px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--teal);font-weight:800}.brand strong,.brand small{display:block}.brand strong{font-size:20px;letter-spacing:.06em}.brand small{color:#a9c0cf;font-size:11px}.main-nav{display:grid;gap:6px}.main-nav a{display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:10px;color:#cbd9e2;text-decoration:none;font-weight:600}.main-nav a span{width:20px;text-align:center;font-size:18px}.main-nav a:hover,.main-nav a.active{background:#1e4a67;color:#fff}.main-nav a.active{box-shadow:inset 3px 0 var(--teal)}.sidebar-note{margin-top:auto;border:1px solid #31556c;border-radius:12px;padding:14px;color:#cbd9e2}.sidebar-note strong,.sidebar-note span{display:block}.sidebar-note span{font-size:12px;margin-top:4px}.content-shell{min-width:0}.topbar{min-height:92px;padding:20px 34px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar h1{margin:3px 0 0;font-size:26px}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.11em;color:var(--teal);font-size:11px;font-weight:800}.topbar-actions{display:flex;align-items:center;gap:12px}.user-chip{padding:9px 12px;border-radius:999px;background:var(--bg);color:var(--muted);font-size:12px}.page-content{padding:28px 34px 60px;max-width:1500px}.alert{padding:14px 16px;border-radius:11px;margin-bottom:20px;border:1px solid}.alert.success{background:var(--green-soft);border-color:#bfe1ce;color:#185c40}.alert.error{background:var(--red-soft);border-color:#f0c5c1;color:#9a312b}.alert ul{margin:7px 0 0;padding-left:20px}.button{border:0;border-radius:10px;padding:10px 15px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px}.button.primary{background:var(--teal);color:#fff}.button.secondary{background:#fff;color:var(--navy);border:1px solid var(--line)}.button.danger{background:var(--red);color:#fff}.button.small{padding:7px 10px;font-size:12px}.button[disabled]{opacity:.5;cursor:not-allowed}.stats-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:14px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 3px 14px rgba(24,39,52,.04)}.stat-card span{display:block;color:var(--muted);font-size:12px}.stat-card strong{display:block;font-size:28px;margin-top:8px;color:var(--navy)}.stat-card.accent{background:var(--navy);border-color:var(--navy)}.stat-card.accent span,.stat-card.accent strong{color:#fff}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:22px;overflow:hidden}.panel-header{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-header h2{margin:0;font-size:18px}.panel-header p{margin:4px 0 0;color:var(--muted);font-size:12px}.panel-body{padding:20px}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.quick-action{border:1px solid var(--line);border-radius:12px;padding:18px;text-decoration:none;color:var(--ink);background:#fff}.quick-action:hover{border-color:var(--teal);box-shadow:0 5px 20px rgba(13,124,117,.12)}.quick-action strong,.quick-action span{display:block}.quick-action strong{margin-bottom:6px}.quick-action span{color:var(--muted);font-size:12px;line-height:1.5}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:11px 12px;text-align:left;background:#f7f9fa;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line)}.data-table td{padding:13px 12px;border-bottom:1px solid #edf1f3;vertical-align:top}.data-table tr:last-child td{border-bottom:0}.data-table a{color:var(--teal);font-weight:700;text-decoration:none}.muted{color:var(--muted)}.small-text{font-size:12px}.empty-state{text-align:center;padding:36px;color:var(--muted)}.badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#edf2f5;color:#526574;font-size:11px;font-weight:800;text-transform:uppercase}.badge.planned{background:#eef3ff;color:#4261a5}.badge.in_progress{background:#fff6df;color:#8a6000}.badge.submitted{background:#e8f5f3;color:#176a64}.badge.critical{background:var(--red-soft);color:var(--red)}.badge.good{background:var(--green-soft);color:var(--green)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-field{display:grid;gap:7px}.form-field.full{grid-column:1/-1}.form-field label{font-weight:700;font-size:12px;color:#344b5c}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #cdd9e0;border-radius:9px;padding:10px 11px;background:#fff;color:var(--ink);font:inherit}.form-field textarea{resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:3px solid rgba(13,124,117,.13);border-color:var(--teal)}.form-hint{font-size:11px;color:var(--muted)}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.definition-list{display:grid;grid-template-columns:170px 1fr;gap:10px 18px;margin:0}.definition-list dt{color:var(--muted);font-weight:700}.definition-list dd{margin:0}.template-card{border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:12px}.template-card h3{margin:0 0 6px}.template-card p{margin:0;color:var(--muted);line-height:1.55}.criteria-section{border:1px solid var(--line);border-radius:13px;margin-bottom:18px;overflow:hidden}.criteria-section>header{background:#edf5f6;padding:14px 17px;display:flex;justify-content:space-between;align-items:center}.criteria-section>header h3{margin:0;font-size:16px}.criterion{padding:17px;border-top:1px solid var(--line)}.criterion:first-of-type{border-top:0}.criterion-title{display:flex;gap:12px;align-items:flex-start}.criterion-number{flex:0 0 auto;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--navy);color:#fff;font-weight:800}.criterion h4{margin:0 0 5px;font-size:15px}.criterion p{margin:0;color:var(--muted);line-height:1.55}.criterion-meta{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.criterion-meta span{padding:5px 8px;background:#f1f5f7;border-radius:7px;font-size:11px;color:#526574}.criterion-form{margin-top:14px;padding:14px;background:#f8fafb;border-radius:10px;display:grid;grid-template-columns:1.2fr .8fr .8fr .7fr 2fr;gap:10px}.criterion-form label{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}.criterion-form select,.criterion-form input{margin-top:5px;width:100%;padding:8px;border:1px solid #cdd9e0;border-radius:8px;background:#fff}.acceptance-box{padding:16px;border-left:4px solid var(--teal);background:var(--teal-soft);border-radius:8px;line-height:1.6;white-space:pre-line}.score-banner{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:20px}.score-banner>div{padding:14px;background:#fff}.score-banner span,.score-banner strong{display:block}.score-banner span{color:var(--muted);font-size:11px}.score-banner strong{font-size:19px;margin-top:5px}.progress{height:8px;background:#e1e8ec;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:var(--teal)}.evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:16px}.evidence-item{margin:0}.evidence-item img{width:100%;height:120px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.evidence-item figcaption{font-size:11px;color:var(--muted);margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.defect-list{margin:10px 0 0;padding-left:20px;color:var(--muted);line-height:1.7}.pagination{margin-top:18px}.two-panels{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.table-actions{display:flex;align-items:center;gap:10px}.version-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;margin-bottom:22px;border:1px solid #b9d9ca;background:var(--green-soft);border-radius:var(--radius)}.version-banner.draft{border-color:#f1d18a;background:#fff8e7}.version-banner strong,.version-banner p{display:block}.version-banner strong{margin-top:8px;font-size:17px}.version-banner p{margin:4px 0 0;color:var(--muted)}.checkbox-field label,.checkbox-stack label{display:flex;align-items:center;gap:8px;font-weight:600}.checkbox-field input,.checkbox-stack input{width:auto}.checkbox-stack{display:flex;flex-direction:column;justify-content:center;gap:9px}.editor-add>summary{cursor:pointer;list-style:none}.editor-add>summary::-webkit-details-marker,.edit-criterion>summary::-webkit-details-marker{display:none}.editor-heading{display:flex;align-items:end;justify-content:space-between;margin:30px 0 14px}.editor-heading h2{margin:4px 0 0}.edit-criterion{padding:0}.edit-criterion>summary{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:start;padding:16px;cursor:pointer}.edit-criterion>summary strong,.edit-criterion>summary small{display:block}.edit-criterion>summary small{margin-top:6px;color:var(--muted);line-height:1.5}.edit-label{color:var(--teal);font-weight:800;font-size:12px}.criterion-editor{padding:18px;border-top:1px solid var(--line);background:#f8fafb}.delete-criterion{padding:0 18px 18px;background:#f8fafb;text-align:right}.criterion-edit-grid{grid-template-columns:1fr 1fr}.editor-section .criterion+.criterion{border-top:1px solid var(--line)}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(3,1fr)}.criterion-form{grid-template-columns:repeat(2,1fr)}.criterion-form>div:last-child{grid-column:1/-1}.quick-actions{grid-template-columns:1fr}.score-banner{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.admin-shell{display:block}.sidebar{position:static;height:auto}.main-nav{grid-template-columns:1fr 1fr}.sidebar-note{display:none}.topbar{padding:18px;align-items:flex-start}.page-content{padding:20px 16px}.stats-grid{grid-template-columns:1fr 1fr}.split-grid,.two-panels,.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.criterion-form{grid-template-columns:1fr}.score-banner{grid-template-columns:1fr 1fr}.data-table{display:block;overflow-x:auto}.user-chip{display:none}}
.field-plan-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.field-plan-card{display:grid;gap:7px;padding:14px;border:1px solid var(--line);border-radius:10px;color:var(--ink);text-decoration:none}.field-plan-card:hover{border-color:var(--teal);box-shadow:0 4px 14px rgba(13,124,117,.12)}.field-plan-card .badge{justify-self:start}.field-plan-card small{color:var(--muted)}.field-plan-create{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.field-plan-create summary{width:max-content;list-style:none;cursor:pointer}.field-plan-create summary::-webkit-details-marker{display:none}.field-plan-create form{margin-top:18px}.field-plan-candidates{max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:10px}.field-plan-candidates label{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border-bottom:1px solid #edf1f3;cursor:pointer}.field-plan-candidates label:last-child{border-bottom:0}.field-plan-candidates input{margin-top:3px}.field-plan-candidates span{display:block;color:var(--muted);font-size:12px}.badge.draft{background:#fff6df;color:#8a6000}.badge.closed{background:#edf2f5;color:#526574}
.field-plan-filter{padding:16px;margin-top:18px;background:#f8fafb;border:1px solid var(--line);border-radius:10px}.field-plan-filter .form-actions{margin-top:12px;padding-top:12px}.field-plan-selection-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px}.field-plan-selection-header .form-hint{margin:0}
.dangerous-plan-action{margin-top:12px;text-align:right}.field-plan-item-status{display:flex;gap:6px;align-items:center}.field-plan-item-status select{min-width:135px;border:1px solid var(--line);border-radius:7px;padding:6px;background:#fff}.inline-delete{display:inline}.inline-delete button{border:0;background:none;color:var(--red);padding:0;margin-left:8px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.planner-view-tabs{display:flex;gap:4px;margin:0 0 14px}.planner-view-tabs a{border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:#fff;color:var(--navy);font-weight:700;text-decoration:none}.planner-view-tabs a.active{border-color:var(--teal);background:var(--teal);color:#fff}.timeline-list{display:grid}.timeline-row{align-items:center;border-top:1px solid var(--line);display:grid;grid-template-columns:130px 1fr auto;gap:16px;padding:15px 20px;color:var(--ink);text-decoration:none}.timeline-row:first-child{border-top:0}.timeline-row:hover{background:#f2f9fb}.timeline-row time{color:var(--teal);font-weight:800}.timeline-row strong,.timeline-row span{display:block}.timeline-row span{color:var(--muted);font-size:12px;margin-top:3px}.timeline-row>.badge{color:#526574;margin:0}
