:root{--green-950:#082b18;--green-900:#0d4323;--green-800:#12602e;--green-700:#16843b;--green-600:#1ba44a;--green-500:#48b842;--green-100:#e7f7ec;--green-50:#f3fbf5;--ink:#13221a;--muted:#66736b;--line:#dfe7e1;--line-strong:#c9d6cc;--surface:#fff;--canvas:#f5f8f5;--warning:#9a6100;--warning-bg:#fff4d6;--danger:#b42318;--danger-bg:#feeceb;--blue:#245dc1;--blue-bg:#eaf1ff;--shadow:0 16px 48px #163c231c;--shadow-soft:0 7px 24px #163c2312;--radius-xl:22px;--radius-lg:16px;--radius-md:12px}*{box-sizing:border-box}html,body{min-height:100%;margin:0}[hidden]{display:none!important}.auth-gate{background:radial-gradient(circle at 15% 10%, #48b84233, transparent 26%), linear-gradient(145deg, var(--green-950), #0d4d29 62%, #16843b);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border-radius:var(--radius-xl);background:var(--surface);border:1px solid #fff3;width:min(440px,100%);padding:34px;box-shadow:0 24px 70px #041f1059}.login-card>img{object-fit:contain;object-position:left center;width:164px;height:46px;margin-bottom:22px}.login-card h1{margin:4px 0 8px;font-size:clamp(25px,5vw,34px);line-height:1.12}.login-form{gap:16px;margin-top:24px;display:grid}.login-submit{width:100%;margin-top:4px}.field-hint{color:var(--muted);margin-top:6px;font-size:12px;display:block}.login-error{color:var(--danger);background:var(--danger-bg);border:1px solid #f3c8c4;border-radius:10px;padding:11px 13px;font-size:13px;font-weight:700}.login-security-note{color:var(--muted);text-align:center;margin:20px 0 0;font-size:12px}body{color:var(--ink);background:var(--canvas);font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.45}button,input,select,textarea{font:inherit}button{color:inherit}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#f7fff9;background:radial-gradient(circle at 20% 5%, #48b84247, transparent 25%), linear-gradient(180deg, var(--green-950), #0c3820);flex-direction:column;height:100vh;padding:24px 18px 18px;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:5px 8px 22px;font-size:17px;font-weight:700;display:flex}.brand img{object-fit:contain;object-position:left center;filter:brightness(0)invert();width:120px;height:34px}.brand span{white-space:nowrap;opacity:.9}.nav-list{gap:7px;margin-top:22px;display:grid}.nav-item{color:#ffffffbf;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;width:100%;padding:11px 13px;transition:all .15s;display:flex}.nav-item:hover,.nav-item.is-active{color:#fff;background:#ffffff1c}.nav-item.is-active{box-shadow:inset 3px 0 var(--green-500)}.nav-icon{place-items:center;width:23px;font-size:19px;display:inline-grid}.sidebar-footer{color:#ffffffb8;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:10px;margin-top:auto;padding:14px 11px;font-size:12px;display:flex}.sidebar-footer.has-sync-error .status-dot{background:#ff6b5f;box-shadow:0 0 0 4px #ff6b5f29}.current-user{text-align:right;min-width:100px;padding-right:12px;display:grid}.current-user span{font-weight:800}.current-user small{color:var(--muted)}.users-table input,.users-table select{min-width:120px}.user-form-note{color:var(--muted);margin-top:8px;font-size:12px}.sidebar-footer strong,.sidebar-footer span{display:block}.sidebar-footer strong{color:#fff;font-size:12px}.status-dot{background:#55d768;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #55d76821}.main-area{min-width:0}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid #cedad1cc;justify-content:space-between;align-items:center;min-height:92px;padding:18px 32px;display:flex;position:sticky;top:0}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:0;font-size:clamp(24px,2.2vw,32px)}h2{letter-spacing:-.025em;margin-bottom:5px;font-size:24px}h3{margin-bottom:7px;font-size:17px}.eyebrow{color:var(--green-700);letter-spacing:.13em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:800}.topbar-actions,.row-actions,.inline-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:9px 15px;font-weight:700;transition:transform .12s,border-color .12s,background .12s;display:inline-flex}.button:active{transform:translateY(1px)}.button:disabled,button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}.button-primary{color:#fff;background:var(--green-700);box-shadow:0 5px 14px #16843b33}.button-primary:hover{background:var(--green-800)}.button-ghost{border-color:var(--line);background:var(--surface)}.button-ghost:hover{border-color:var(--green-700);background:var(--green-50)}.button-danger{color:var(--danger);background:var(--danger-bg);border-color:#f3c8c4}.button-small{min-height:34px;padding:7px 11px;font-size:13px}.file-button input{display:none}.content{padding:28px 32px 50px}.section-stack{gap:22px;display:grid}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.kpi-card,.card,.panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft)}.kpi-card{border-radius:var(--radius-lg);min-height:132px;padding:19px;position:relative;overflow:hidden}.kpi-card:after{background:var(--green-100);content:"";border-radius:50%;width:100px;height:100px;position:absolute;bottom:-34px;right:-24px}.kpi-card p{color:var(--muted);margin-bottom:14px;font-size:13px}.kpi-value{z-index:1;letter-spacing:-.04em;margin-bottom:3px;font-size:31px;font-weight:800;display:block;position:relative}.kpi-note{z-index:1;color:var(--green-700);font-size:12px;font-weight:700;position:relative}.grid-2{grid-template-columns:minmax(0,1.4fr) minmax(320px,.7fr);gap:18px;display:grid}.card,.panel{border-radius:var(--radius-lg);padding:20px}.card-header,.section-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.card-header p,.section-header p,.muted{color:var(--muted);margin-bottom:0}.list{gap:9px;display:grid}.pg-row{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:minmax(0,1.2fr) 120px 120px 100px auto;align-items:center;gap:14px;padding:13px 14px;transition:all .14s;display:grid}.pg-row:hover{border-color:#a8cbb1;box-shadow:0 6px 18px #163c2312}.pg-row.is-pinned{border-color:#8fc09c;border-left:5px solid var(--green-700);background:linear-gradient(90deg, var(--green-50), #fff 32%)}.pg-row-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.pg-pin-button{min-height:32px;color:var(--green-800);font:inherit;white-space:nowrap;background:var(--green-50);cursor:pointer;border:1px solid #bcd9c4;border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;font-weight:800;display:inline-flex}.pg-pin-button:hover,.pg-pin-button.is-pinned{color:#fff;border-color:var(--green-700);background:var(--green-700)}.pinned-pg-section>.list{margin-top:2px}.notes-pg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.notes-pg-card{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:13px;gap:14px;padding:16px;transition:all .14s;display:grid}.notes-pg-card:hover,.notes-pg-card:focus-visible{border-color:#8fc09c;outline:none;transform:translateY(-1px);box-shadow:0 8px 22px #163c2317}.notes-pg-header,.notes-overview-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.notes-pg-header h3,.notes-pg-header p,.notes-pg-header span,.notes-overview-header h3,.notes-overview-header p{margin:0}.notes-pg-header>div:first-child>span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.notes-pg-metrics,.notes-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.notes-pg-metrics>div,.notes-overview-grid>div{background:var(--canvas);border-radius:9px;gap:2px;min-width:0;padding:9px;display:grid}.notes-pg-metrics strong,.notes-overview-grid strong{color:var(--ink);text-overflow:ellipsis;overflow:hidden}.notes-pg-metrics span,.notes-overview-grid span{color:var(--muted);font-size:10px}.notes-pg-open{color:var(--green-700);font-size:12px;font-weight:800}.report-note-summary{gap:7px;min-width:120px;display:grid}.report-note-summary .inline-actions{gap:5px}.pg-title strong,.pg-title span{display:block}.pg-title span{color:var(--muted);margin-top:2px;font-size:12px}.metric-cell{color:var(--muted);font-size:12px}.metric-cell strong{color:var(--ink);font-size:14px;display:block}.badge{white-space:nowrap;border-radius:999px;align-items:center;width:max-content;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.badge-planned{color:var(--warning);background:var(--warning-bg)}.badge-danger{color:var(--danger);background:var(--danger-bg)}.kpi-card.kpi-danger{background:var(--danger-bg);border-color:#efb8b3}.kpi-card.kpi-danger p,.kpi-card.kpi-danger .kpi-value,.kpi-card.kpi-danger .kpi-note{color:var(--danger)}.badge-progress{color:var(--blue);background:var(--blue-bg)}.badge-completed{color:var(--green-800);background:var(--green-100)}.badge-neutral{color:#53625a;background:#edf1ee}.badge-archived{color:#55307f;background:#efe7f8}.badge-report{color:#0f6430;background:#dff3e6;box-shadow:inset 0 0 0 1px #b8ddc5}.report-code{color:var(--green-800);letter-spacing:.03em;white-space:nowrap;font-size:17px}.report-register-form{align-items:end}.report-archive-check{align-self:end;min-height:43px}.report-register-table td{vertical-align:top}.report-row-actions{flex-wrap:nowrap}.progress-bar{background:#e9efea;border-radius:999px;height:7px;overflow:hidden}.progress-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--green-700), var(--green-500));height:100%;display:block}.progress-metric .progress-bar{width:82px;height:5px;margin-top:6px}.pg-progress-card{background:linear-gradient(135deg, #fff 0%, var(--green-50) 100%);border-color:#b9d9c2;padding:20px}.progress-card-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.progress-card-header h2{margin:2px 0 4px}.progress-card-header p{color:var(--muted);margin:0}.progress-dial{background:conic-gradient(var(--green-700) var(--progress), #deebe2 0);border-radius:50%;flex:0 0 76px;place-items:center;width:76px;height:76px;display:grid;position:relative}.progress-dial:before{content:"";background:#fff;border-radius:50%;width:58px;height:58px;position:absolute}.progress-dial strong{z-index:1;font-size:17px;position:relative}.progress-bar-large{height:9px;margin:16px 0 18px}.phase-track{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:9px;display:grid}.phase-step{border:1px solid var(--line-strong);min-height:76px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:11px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:2px 8px;padding:10px;display:grid}.phase-step>span{width:28px;height:28px;color:var(--muted);background:#edf1ee;border-radius:50%;grid-row:span 2;place-items:center;font-weight:850;display:grid}.phase-step strong{font-size:12px;line-height:1.2}.phase-step small{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:750}.phase-step.is-completed{background:var(--green-50);border-color:#a9d5b5}.phase-step.is-completed>span{color:#fff;background:var(--green-700)}.phase-step.is-current{background:#fffaf0;border-color:#e7bd62;box-shadow:0 0 0 2px #e7bd6229}.relation-checklist{background:#fff;border:1px solid #b9d9c2;border-radius:12px;gap:13px;margin-top:16px;padding:16px;display:grid}.relation-checklist.is-partial{background:#fffaf0;border-color:#e7bd62}.relation-checklist-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.relation-checklist-header h3,.relation-checklist-header p{margin:0}.relation-checklist-header p{color:var(--muted);margin-top:4px;font-size:12px}.relation-checklist-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;display:grid}.relation-check-item{border:1px solid var(--line);background:var(--canvas);cursor:pointer;border-radius:9px;align-items:center;gap:9px;min-height:42px;padding:9px 10px;display:flex}.relation-check-item.is-checked{border-color:var(--green-700);background:var(--green-100)}.relation-check-item:has(input:checked){border-color:var(--green-700);background:var(--green-100)}.relation-check-item input{width:17px;height:17px;accent-color:var(--green-700)}.relation-check-item span{font-size:12px;font-weight:750}.relation-checklist-warning{color:#8a5900;margin:0;font-size:12px;font-weight:750}.progress-actions{justify-content:space-between;margin-top:16px}.workload-row{gap:8px;margin-bottom:17px;display:grid}.workload-label{color:var(--muted);justify-content:space-between;font-size:13px;display:flex}.workload-label strong{color:var(--ink)}.filter-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.field{gap:6px;display:grid}.field label,.field-label{color:#34463b;font-size:12px;font-weight:750}.field input,.field select,.field textarea,.search-input{border:1px solid var(--line-strong);width:100%;min-height:43px;color:var(--ink);background:#fff;border-radius:10px;outline:none;padding:9px 11px}.field textarea{resize:vertical;min-height:88px}.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus{border-color:var(--green-700);box-shadow:0 0 0 3px #16843b1a}.search-input{max-width:330px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.span-2{grid-column:span 2}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.choice-card{border:1px solid var(--line-strong);cursor:pointer;border-radius:14px;padding:17px;display:block;position:relative}.choice-card input{opacity:0;pointer-events:none;position:absolute}.choice-card:has(input:checked){border-color:var(--green-700);background:var(--green-50);box-shadow:0 0 0 3px #16843b14}.choice-card strong,.choice-card span{display:block}.choice-card span{color:var(--muted);margin-top:5px;font-size:12px}.notice{color:#32523c;background:var(--green-50);border:1px solid #cfe4d4;border-radius:11px;padding:13px 14px;font-size:13px}.notice-warning{color:#704600;background:var(--warning-bg);border-color:#efd79b}.notice-danger{color:var(--danger);background:var(--danger-bg);border-color:#f1c4c0}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius-lg);min-height:230px;color:var(--muted);text-align:center;background:#ffffff8c;place-items:center;padding:30px;display:grid}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#04180c85;place-items:center;padding:26px;display:grid;position:fixed;inset:0}.modal-backdrop[hidden]{display:none}.modal{border-radius:var(--radius-xl);width:min(970px,96vw);max-height:92vh;box-shadow:var(--shadow);background:#fff;border:1px solid #fff6;flex-direction:column;display:flex;overflow:hidden}.detail-modal{width:min(1050px,96vw)}.calendar-event-modal{width:min(820px,96vw)}.notes-modal{width:min(980px,96vw)}.notes-readonly-overview{background:linear-gradient(135deg, #fff 0%, var(--green-50) 100%);border:1px solid #b9d9c2;border-radius:13px;gap:14px;padding:17px;display:grid}.notes-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.notes-entry-card{padding:17px}.notes-entry-row{grid-template-columns:minmax(0,1fr) minmax(190px,.35fr) auto;align-items:end;gap:12px;display:grid}.notes-entry-row textarea{resize:vertical;width:100%}.issue-note-list{gap:9px;display:grid}.issue-note-item{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px;display:grid}.issue-note-item.is-resolved{background:#f4f8f5}.critical-notes-section{background:snow;border:1px solid #efb8b3;border-radius:13px;padding:16px}.critical-notes-section .section-header h3,.critical-notes-section .section-header p{color:var(--danger)}.issue-note-item.is-critical:not(.is-resolved){color:#7f1d16;background:var(--danger-bg);box-shadow:inset 4px 0 0 var(--danger);border-color:#df8b83}.issue-note-item.is-critical:not(.is-resolved) .issue-note-check,.issue-note-item.is-critical:not(.is-resolved) .issue-note-content small{color:var(--danger)}.issue-note-check{color:var(--muted);cursor:pointer;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.issue-note-check input{width:18px;height:18px;accent-color:var(--green-700)}.issue-note-content{min-width:0}.issue-note-content p,.issue-note-content small{white-space:pre-wrap;margin:0;display:block}.issue-note-content .badge{margin-bottom:6px}.issue-note-content small{color:var(--muted);margin-top:4px}.issue-note-item.is-resolved .issue-note-content p{color:var(--muted);text-decoration:line-through}.event-results-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.modal-header,.modal-footer{align-items:center;gap:14px;padding:18px 22px;display:flex}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between}.modal-header h2{margin:0}.modal-footer{border-top:1px solid var(--line)}.modal-body{padding:22px;overflow:auto}.spacer{flex:1}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;font-size:24px;display:inline-grid}.wizard-progress{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:15px 22px 0;display:grid}.wizard-step{min-width:0}.wizard-step span{background:#e4ebe6;border-radius:999px;height:5px;margin-bottom:7px;display:block}.wizard-step strong{color:#8a968e;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.wizard-step.is-active span,.wizard-step.is-done span{background:var(--green-700)}.wizard-step.is-active strong,.wizard-step.is-done strong{color:var(--green-800)}.wizard-step.is-skipped span{background:repeating-linear-gradient(90deg,#c6d1c8 0 7px,#eef2ef 7px 12px)}.wizard-step.is-skipped strong{color:#8a968e}.system-card,.type-card{border:1px solid var(--line);background:#fbfdfb;border-radius:14px;padding:16px}.system-card+.system-card,.type-card+.type-card{margin-top:12px}.system-card-header,.type-card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.system-card-header h3,.type-card-header h3{margin:0}.types-group{margin-bottom:24px}.results-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;display:grid}.result-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:15px}.result-card span,.result-card small{color:var(--muted);display:block}.result-card strong{margin:5px 0 2px;font-size:23px;display:block}.result-card small{font-size:11px}.summary-table{border-collapse:collapse;width:100%;font-size:13px}.summary-table th,.summary-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:11px 10px}.summary-table th{color:var(--green-800);background:var(--green-50);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.table-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto}.detail-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:18px;display:grid}.timeline{gap:9px;display:grid}.timeline-item{grid-template-columns:30px minmax(0,1fr);gap:10px;display:grid}.timeline-marker{color:#fff;background:var(--green-700);border-radius:50%;place-items:center;width:26px;height:26px;font-size:12px;font-weight:800;display:grid}.calendar-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.calendar-toolbar h2{margin:0}.calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(7,minmax(105px,1fr));display:grid;overflow:auto}.calendar-head,.calendar-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-head{color:var(--muted);text-align:center;text-transform:uppercase;background:#f8faf8;padding:9px;font-size:11px;font-weight:800}.calendar-day{background:#fff;min-height:118px;padding:8px}.calendar-day.is-other{background:#f7f9f7}.calendar-day.is-today{box-shadow:inset 0 0 0 2px var(--green-700)}.calendar-day.is-dragover{background:var(--green-100)}.calendar-number{color:var(--muted);margin-bottom:7px;font-size:11px;font-weight:800;display:block}.calendar-event{border:0;border-left:3px solid var(--green-700);color:#1c4e2b;background:var(--green-100);text-align:left;cursor:grab;border-radius:7px;width:100%;margin:5px 0;padding:6px 7px;font-size:10px;display:block}.calendar-event strong,.calendar-event span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.calendar-scheduled-event{padding:0;position:relative}.calendar-event-main{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 27px 6px 7px;display:block}.calendar-remove-event{color:currentColor;cursor:pointer;background:#ffffffb8;border:0;border-radius:50%;place-items:center;width:19px;height:19px;padding:0;font-size:15px;font-weight:800;line-height:1;display:grid;position:absolute;top:3px;right:3px}.calendar-remove-event:hover,.calendar-remove-event:focus-visible{color:#fff;background:var(--danger);outline:none}.calendar-bath-event{color:#4f267e;cursor:pointer;background:#f0e8fb;border-left-color:#7b3fc6}.calendar-scheduled-event[draggable=true] .calendar-event-main{cursor:grab}.calendar-scheduled-event[draggable=true]:active .calendar-event-main{cursor:grabbing}.calendar-lab-event{border-left-color:var(--green-700);color:#145b2c;background:var(--green-100)}.calendar-report-event{border-left-color:var(--green-700);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);background:#fff}.calendar-queue-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.calendar-queue-group{border:1px solid var(--line);background:var(--canvas);border-radius:12px;min-width:0;padding:14px}.calendar-bath-queue-group{grid-column:1/-1}.calendar-queue-group h4,.calendar-queue-group p{margin:0 0 9px}.calendar-bath-controls{margin:14px 0}.bath-pg-preferences{border:1px solid var(--line);background:#fff;border-radius:12px;gap:12px;margin:14px 0;padding:14px;display:grid}.bath-pg-preferences-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.bath-pg-preferences-header>div:first-child{gap:3px;display:grid}.bath-pg-preferences-header span{color:var(--muted);font-size:12px}.bath-pg-choice-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:9px;display:grid}.bath-pg-choice{border:1px solid var(--line);background:var(--canvas);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;min-width:0;padding:11px 12px;display:flex}.bath-pg-choice.is-selected{border-color:var(--green-700);background:var(--green-100)}.bath-pg-choice:has(input:checked){border-color:var(--green-700);background:var(--green-100)}.bath-pg-choice input{width:17px;height:17px;accent-color:var(--green-700);flex:none;margin-top:2px}.bath-pg-choice span{gap:3px;min-width:0;display:grid}.bath-pg-choice strong,.bath-pg-choice small{text-overflow:ellipsis;overflow:hidden}.bath-pg-choice small{color:var(--muted)}.calendar-bath-selection-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:10px 0;display:flex}.check-inline{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:700;display:inline-flex}.check-inline input,.calendar-bath-proposal>input{width:17px;height:17px;accent-color:var(--green-700)}.calendar-bath-proposals{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;max-height:430px;padding:2px;display:grid;overflow-y:auto}.calendar-bath-proposal{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:11px;align-items:flex-start;gap:10px;min-width:0;padding:12px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.calendar-bath-proposal:hover{border-color:#9ecfaf}.calendar-bath-proposal:has(input:checked){border-color:var(--green-700);background:var(--green-100);box-shadow:inset 0 0 0 1px var(--green-700)}.calendar-bath-proposal>input{flex:none;margin-top:2px}.calendar-bath-proposal-body,.calendar-bath-proposal-body>span{min-width:0;display:block}.calendar-bath-proposal-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex!important}.calendar-bath-composition{color:var(--muted);gap:3px;margin-top:8px;font-size:11px;display:grid!important}.calendar-bath-composition>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-bath-actions{justify-content:flex-start;margin-top:12px}.pipe-input-list{gap:12px;display:grid}.pipe-input-row{grid-template-columns:minmax(180px,1.5fr) minmax(130px,.8fr) minmax(160px,1fr) auto;align-items:end;gap:14px;display:grid}.text-green{color:var(--green-700)}.summary-table tfoot td{background:var(--green-100);border-top:2px solid var(--green-700)}.bath-cycle-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.bath-cycle{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);background:#fff;padding:19px}.bath-cycle.is-completed{background:#f7fbf8}.bath-cycle-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:13px;display:flex}.bath-cycle-header h3{margin:10px 0 2px;font-size:19px}.bath-cycle-header p{color:var(--muted);margin:0;font-size:12px}.bath-capacity-ring{background:conic-gradient(var(--green-600) var(--fill), #e7eee9 0);text-align:center;border-radius:50%;flex:0 0 68px;place-content:center;width:68px;height:68px;display:grid;position:relative}.bath-capacity-ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:7px}.bath-capacity-ring strong,.bath-capacity-ring span{z-index:1;position:relative}.bath-capacity-ring strong{font-size:20px;line-height:1}.bath-capacity-ring span{color:var(--muted);font-size:10px}.bath-cycle-fields{margin:16px 0}.bath-assignments{gap:7px;display:grid}.bath-assignment{border:1px solid var(--line);background:#fbfdfb;border-radius:10px;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:10px;padding:10px 11px;display:grid}.bath-assignment span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.bath-remove-assignment{width:32px;height:32px;font-size:19px}.bath-add-row{grid-template-columns:minmax(0,1fr) 84px auto;gap:8px;margin-top:12px;display:grid}.bath-add-row select,.bath-add-row input{border:1px solid var(--line-strong);background:#fff;border-radius:9px;min-width:0;min-height:38px;padding:7px 9px}.thermal-hero{border:1px solid var(--line);border-radius:var(--radius-xl);max-width:920px;box-shadow:var(--shadow-soft);background:#fff;margin:0 auto;padding:28px}.thermal-title{text-align:center}.thermal-icon{width:54px;height:54px;color:var(--green-700);background:var(--green-100);border-radius:15px;place-items:center;margin-bottom:9px;font-size:31px;display:inline-grid}.thermal-table td:nth-child(n+3),.thermal-table th:nth-child(n+3){text-align:center}.temperature-pill,.duration-pill{border-radius:999px;justify-content:center;min-width:62px;padding:6px 8px;font-weight:800;display:inline-flex}.temperature-pill{color:var(--blue);background:var(--blue-bg)}.duration-pill{color:#8a5a00;background:#fff1bc}.rule-list{gap:12px;display:grid}.rule-item{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:42px minmax(0,1fr);gap:13px;padding:15px;display:grid}.rule-number{color:#fff;background:var(--green-700);border-radius:11px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.toast-region{z-index:200;gap:9px;display:grid;position:fixed;bottom:24px;right:24px}.toast{color:#183f24;min-width:270px;max-width:390px;box-shadow:var(--shadow-soft);background:#effaf2;border:1px solid #b8d6bf;border-radius:11px;padding:12px 14px;animation:.18s both toast-in}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=1100px){.app-shell{grid-template-columns:82px minmax(0,1fr)}.sidebar{padding-inline:12px}.brand{justify-content:center}.brand img{object-fit:cover;object-position:left;width:48px}.brand span,.nav-item span:last-child,.sidebar-footer div:last-child{display:none}.nav-item,.sidebar-footer{justify-content:center}.kpi-grid,.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-row{grid-template-columns:minmax(0,1fr) 110px 100px auto}.pg-row .metric-cell:nth-of-type(3){display:none}}@media (width<=760px){.app-shell{display:block}.sidebar{width:100%;height:auto;padding:10px;display:block;position:static}.brand,.sidebar-footer{display:none}.nav-list{margin:0;display:flex;overflow-x:auto}.nav-item{width:auto;min-width:54px}.topbar{gap:12px;padding:16px;display:grid;position:static}.content{padding:17px 14px 40px}.topbar-actions{flex-wrap:nowrap;overflow-x:auto}.kpi-grid,.grid-2,.form-grid,.form-grid-3,.choice-grid,.results-grid,.detail-grid,.notes-pg-grid,.notes-pg-metrics,.notes-overview-grid,.notes-entry-row,.issue-note-item{grid-template-columns:1fr}.notes-pg-header,.notes-overview-header{display:grid}.bath-cycle-list,.bath-add-row,.pipe-input-row{grid-template-columns:1fr}.progress-card-header{align-items:flex-start}.relation-checklist-header{display:grid}.phase-track,.calendar-queue-groups{grid-template-columns:1fr}.bath-pg-preferences-header{align-items:start;display:grid}.bath-pg-preferences-header .inline-actions{flex-direction:column;align-items:flex-start}.progress-actions{grid-template-columns:1fr;display:grid}.progress-actions .button{width:100%}.span-2{grid-column:span 1}.pg-row{grid-template-columns:1fr auto}.pg-row .metric-cell{display:none}.modal-backdrop{padding:8px}.modal{width:100%;max-height:98vh}.wizard-step strong{display:none}}
