:root{--bg: #0f1117;--card: #11131b;--field: #1b1f2b;--text: #f7f8fa;--muted: #a7b0c0;--accent: #2b78ff;--border: #2b2f45;--primary-bg: #1e66d6;--danger-bg: #dc2626;--success-bg: #16a34a;--warning-bg: #f59e0b;--danger-soft-bg: #450a0a;--block-border-color: #00ffff7a;--group-alt-overlay-dark: rgba(255,255,255,.07);--group-alt-overlay-light: rgba(0,0,0,.16);--plan-lane-icon-size: 13px;--plan-lane-width: 5px;--plan-lane-pad-left: 0px;--plan-date-pad-left: 11px;--plan-input-pr: 14px;--plan-phase-padR: 14px;--plan-spinner-shift: -12px;--plan-spinner-width: 14px;--plan-row-height: 31px;--surf-row-height: 31px;--plan-start-pad-left: 13px;--plan-start-pad-right: 14px;--plan-start-spinner-shift: -8px;--plan-end-pad-left: 11px;--plan-end-pad-right: 14px;--plan-end-spinner-shift: -10px;--plan-worker-col-w: 26px;--plan-worker-min-w: 26px;--editable-fill: rgba(255,255,255,.03);--yield-spinner-gap-v: 4px;--cfg-help-col: 60%;--cfg-sep-col: 40%;--cfg-bottom-kpi-col: 55%;--cfg-bottom-sep-col: 45%;--sep-phase-w: 175px;--sep-days-w: 50px;--sep-hours-w: 40px;--sep-block-offset-x: 12px;--debug-log-max-h: 240px;--debug-panel-offset-y: 0px;--calendar-offset-x: 216px;--sep-spinner-gap: 0px;--state-box-offset-y: 0px;--lists-min-height: 761px;--kpi-block-min-height: 220px;--sep-block-min-height: 220px;--cal-day-w: 65px;--cal-time-w: 110px;--cal-total-w: 36px;--btn-hover: #1d63e6;--btn-active: #2b78ff;--btn-focus-ring: #2b78ff66;--btn-secondary-bg: #003ca4;--btn-secondary-hover: #1d63e6;--btn-secondary-active: #2b78ff;--btn-danger-hover: #b51f1f;--btn-danger-active: #921818;--spinner-hover-bg: #2b2f45;--spinner-active-bg: #2b78ff;color-scheme:dark}:root[data-theme=light]{--bg: #e1e7ef;--card: #f2f5f9;--field: #e7ecf3;--text: #162133;--muted: #5c6d83;--accent: #1f66e0;--border: #bccad7;--primary-bg: #2b78ff;--danger-bg: #de4747;--success-bg: #2f855a;--warning-bg: #e5942f;--danger-soft-bg: #f9d9d9;--editable-fill: rgba(0,0,0,.035);--spinner-hover-bg: #d4dfeb;--spinner-active-bg: #c3d2e2;--table-head-bg: #d9e3ee;--block-border-color: #8b5cf6;--group-alt-overlay-dark: rgba(255,255,255,0);--group-alt-overlay-light: rgba(0,0,0,0);color-scheme:light}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}.planning-table .required-start{background:#ffd70014!important;box-shadow:inset 0 0 0 1px #ffd70059}.planning-table .required-start:focus{outline:1px solid #ffd700}.planning-table .required-indicator{color:gold;font-size:var(--plan-lane-icon-size, 13px);line-height:1}.planning-table tr[data-locked="1"]{opacity:.55}.planning-table tr[data-locked="1"] .start-wrapper.locked{cursor:not-allowed}.planning-table tr[data-locked="1"] .start-lane{filter:grayscale(.4)}.planning-table .start-lane .required-indicator{display:flex;align-items:center;justify-content:flex-start}.planning-table td .start-wrapper{position:relative;display:flex;align-items:center}.planning-table td .start-lane{position:absolute;left:0;top:0;bottom:0;width:var(--plan-lane-width, 18px);display:flex;align-items:center;justify-content:flex-start;padding-left:var(--plan-lane-pad-left, 2px);background:#181a22;border-right:none;pointer-events:auto;z-index:1}:root[data-theme=light] .planning-table td .start-lane{background:var(--field)}.planning-table td .start-lane .manual-icon-lane,.planning-table td .start-lane .required-indicator{pointer-events:auto}.planning-table td .start-content{flex:1 1 auto;display:flex;align-items:center;justify-content:flex-start}.planning-table td .start-wrapper .start-content{padding-left:var(--plan-lane-width, 10px)!important}.planning-table td .start-content .input-wrapper{width:100%}:root[data-theme=light] .planning-table tbody td{background:var(--field)!important}.surfaces-info-table{width:100%;border-collapse:collapse;table-layout:fixed}.surfaces-info-table th,.surfaces-info-table td{padding:6px 10px;text-align:right;height:var(--surf-row-height)}.surfaces-info-table th{padding:6px 10px;text-align:center}.surfaces-info-table th{background:var(--card);color:var(--text);font-weight:700;text-align:center}html[data-theme=dark] .surfaces-info-table tbody tr:nth-child(2n) td{background:#181a22}html[data-theme=dark] .surfaces-info-table tbody tr:nth-child(odd) td{background:#181a22}:root[data-theme=light] .surfaces-info-table tbody tr:nth-child(2n) td{background:#dfe2e5!important}:root[data-theme=light] .surfaces-info-table tbody tr:nth-child(odd) td{background:#dfe2e5!important}.surfaces-info-table tbody tr.group-alt td{background-image:linear-gradient(var(--group-alt-overlay-dark),var(--group-alt-overlay-dark))}:root[data-theme=light] .surfaces-info-table tbody tr.group-alt td{background-image:none!important}html[data-theme=dark] .surfaces-info-table tbody tr.group-alt td{background-color:#282a32!important;background-image:none!important}.surfaces-info-table td{font-variant-numeric:tabular-nums}.surfaces-info-table th.phantom-header{background:var(--bg);color:transparent;border:none!important;padding:0;height:var(--surf-row-height);box-shadow:none}.planning-table tbody tr,.planning-table tbody td{height:var(--plan-row-height)}.planning-table tbody td .input-wrapper input{text-align:left!important;padding-left:var(--plan-date-pad-left, 11px)!important;padding-right:var(--plan-input-pr, 14px)!important;overflow:visible;text-overflow:clip}.planning-table tbody td .input-wrapper input::placeholder{text-align:left}.planning-table td.phase-block-start .input-wrapper input{padding-left:var(--plan-start-pad-left, var(--plan-date-pad-left, 11px))!important;padding-right:var(--plan-start-pad-right, var(--plan-input-pr, 14px))!important}.planning-table td.phase-block-mid .input-wrapper input{padding-left:var(--plan-end-pad-left, var(--plan-date-pad-left, 11px))!important;padding-right:var(--plan-end-pad-right, var(--plan-input-pr, 14px))!important}.planning-table tbody td .input-wrapper .spinner{right:calc(var(--plan-spinner-shift, -10px))!important}.planning-table td.phase-block-start .input-wrapper .spinner{right:calc(var(--plan-start-spinner-shift, var(--plan-spinner-shift, -10px)))!important}.planning-table td.phase-block-mid .input-wrapper .spinner{right:calc(var(--plan-end-spinner-shift, var(--plan-spinner-shift, -10px)))!important}@keyframes planFadeInMove{0%{opacity:0;transform:translateY(-4px) scale(.992)}50%{opacity:.95;transform:translateY(1px) scale(1.002)}to{opacity:1;transform:translateY(0) scale(1)}}.planning-table td.updated-cell,.planning-table input.updated-cell{animation:planFadeInMove .5s cubic-bezier(.25,.9,.35,1) 1}html[data-theme=dark] .planning-table tbody td .start-wrapper,html[data-theme=dark] .planning-table tbody td .start-content .input-wrapper,html[data-theme=dark] .planning-table tbody td .input-wrapper{background:#181a22!important}:root[data-theme=light] .planning-table tbody td .start-wrapper,:root[data-theme=light] .planning-table tbody td .start-content .input-wrapper,:root[data-theme=light] .planning-table tbody td .input-wrapper{background:var(--field)!important}.planning-table thead tr:nth-child(2) th.col-cistern,.planning-table thead tr:nth-child(2) th.col-num,.planning-table thead tr:nth-child(2) th.col-type{min-width:0}.planning-table thead tr:nth-child(2) th.phase-block-start,.planning-table thead tr:nth-child(2) th.phase-block-mid{width:240px}.planning-table thead tr:nth-child(2) th.phase-block-worker{width:var(--plan-worker-col-w, 34px)}.planning-table thead tr:nth-child(2) th.phase-block-end{width:70px}.planning-table input{width:100%;min-width:0;padding:2px 3px;font-size:11px;font-variant-numeric:tabular-nums}.planning-table .input-wrapper input{padding-right:6px;font-size:10px}.planning-table td.phase-block-worker .input-wrapper input.worker-input{text-align:center!important;padding-left:0!important}.planning-table td.phase-block-worker .input-wrapper{min-width:var(--plan-worker-min-w, 30px)}.planning-table td.phase-block-worker .start-wrapper .start-content{padding-left:0!important}.planning-table .spinner{width:var(--plan-spinner-width, 12px);min-width:var(--plan-spinner-width, 12px)}.planning-table .spinner-btn{font-size:7px}.planning-table .worker-input::-webkit-outer-spin-button,.planning-table .worker-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.planning-table .worker-input{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.planning-table td.phase-block-worker .start-lane{display:none}.required-start-legend{margin-bottom:8px;background:#ffd7001f;border:1px solid rgba(255,215,0,.4);padding:6px 10px;border-radius:4px;font-size:12px}button.clear-planning-btn{background:var(--primary-bg);border:none;width:32px;height:32px;border-radius:4px;cursor:pointer;position:relative}button.clear-planning-btn:after{content:"⟳";color:#fff;font-size:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}button.clear-planning-btn:hover{background:var(--btn-hover)}button.clear-planning-btn:active{background:var(--btn-active)}body.theme-transition,body.theme-transition *{transition:background-color .28s ease,color .28s ease,border-color .28s ease,fill .28s ease,stroke .28s ease}@media(prefers-reduced-motion:reduce){body.theme-transition,body.theme-transition *{transition:none!important}}html[data-theme=dark] input[id^=yield-],html[data-theme=dark] #work-calendar-body input,html[data-theme=dark] .planning-table input,html[data-theme=dark] td[data-type=duration],html[data-theme=dark] td.phase-block-end,html[data-theme=dark] td.phase-block-mid,html[data-theme=dark] td.phase-block-start{background:#181a22!important}:root[data-theme=light] input[id^=yield-],:root[data-theme=light] #work-calendar-body input,:root[data-theme=light] .planning-table input,:root[data-theme=light] td[data-type=duration],:root[data-theme=light] td.phase-block-end,:root[data-theme=light] td.phase-block-mid,:root[data-theme=light] td.phase-block-start{background:var(--field)!important}html[data-theme=dark] .planning-table td input[type=text],html[data-theme=dark] .planning-table td .input-wrapper,html[data-theme=dark] #section-yields input[type=text]{background:#181a22!important;color:var(--fg)}html[data-theme=dark] #section-yields tbody td:not(.editable-yield),html[data-theme=dark] #section-separations tbody td:not(.editable-sep),html[data-theme=dark] #section-work-calendar tbody td:not(.editable-cal){background:#11131b!important}:root[data-theme=light] #section-yields tbody td:not(.editable-yield),:root[data-theme=light] #section-separations tbody td:not(.editable-sep),:root[data-theme=light] #section-work-calendar tbody td:not(.editable-cal),:root[data-theme=light] .planning-table tbody td{background:#fff!important}html[data-theme=dark] #section-separations tbody td .input-wrapper,html[data-theme=dark] .planning-table tbody td .input-wrapper{background:transparent!important;padding:0!important;border:none!important;box-shadow:none!important}#section-yields tbody td .input-wrapper,#section-separations tbody td .input-wrapper,.planning-table tbody td .input-wrapper{margin:0!important;width:100%!important;height:100%!important;box-shadow:none!important}html[data-theme=dark] #section-separations tbody td.editable-sep{background:#181a22!important;padding:4px!important}#section-separations tbody td.editable-sep{padding:0!important}:root[data-theme=light] #section-separations tbody td.editable-sep{background:var(--field)!important}#section-separations tbody td.editable-sep .input-wrapper{display:flex;align-items:stretch;position:relative;margin:0 1px!important;width:calc(100% - 2px)!important;height:100%!important;background:transparent!important;overflow:hidden;box-shadow:none!important}html[data-theme=dark] #section-separations tbody td.editable-sep .input-wrapper{background:#181a22!important}:root[data-theme=light] #section-separations tbody td.editable-sep .input-wrapper{background:var(--field)!important}#section-separations tbody td.editable-sep .input-wrapper .value-box{flex:1 1 auto;display:flex;align-items:center;justify-content:center;margin:0!important}#section-separations tbody td.editable-sep .input-wrapper .value-box input{background:transparent!important;border:none!important;outline:none!important;box-shadow:none!important;width:100%!important;padding:4px 6px!important;text-align:center;color:var(--text)!important}#section-separations tbody td.editable-sep .input-wrapper .spinner{position:relative;right:auto!important;top:0;bottom:0;width:18px!important;display:flex;flex-direction:column;justify-content:space-between;background:transparent!important;margin:0!important;margin-left:var(--sep-spinner-gap, 0px)!important;gap:var(--yield-spinner-gap-v, 4px)}#section-separations tbody td.editable-sep .input-wrapper .spinner .spinner-btn{background:transparent!important;color:var(--muted);font-size:12px!important;line-height:1;padding:0;height:100%!important;margin:0!important}#section-yields tbody td .input-wrapper{display:flex;align-items:stretch;position:relative;margin:0 1px!important;width:calc(100% - 2px)!important;height:100%!important;background:transparent!important;overflow:hidden}:root[data-theme=light] #section-yields tbody td.editable-yield .input-wrapper{margin:0!important;width:100%!important}:root[data-theme=light] #section-yields tbody td.editable-yield .input-wrapper .spinner{margin-left:0!important}#section-yields tbody td .input-wrapper .value-box{background:transparent!important;margin-left:var(--yield-wrapper-left, 0px)!important;flex:1 1 auto;display:flex;align-items:center;justify-content:center;box-shadow:none!important;height:100%!important;margin:0!important}#section-yields tbody td .input-wrapper .value-box input{background:transparent!important;border:none!important;outline:none!important;box-shadow:none!important;width:100%!important;padding:4px 0 4px 6px!important;text-align:center;color:var(--text)!important}#section-yields tbody td .input-wrapper .spinner{position:relative;right:auto!important;top:0;bottom:0;width:var(--yield-spinner-width, 24px)!important;display:flex;flex-direction:column;justify-content:space-between;box-shadow:none!important;margin-left:var(--yield-spinner-gap, 0px)!important;--plan-date-pad-left: 11px;--plan-input-pr: 14px;--plan-spinner-shift: -10px;--plan-spinner-width: 14px;background:transparent!important;color:var(--muted);transition:background .12s;font-size:12px!important;line-height:1;padding:0;height:100%!important;margin:0!important}.spinner .spinner-btn{transition:background .12s,color .12s,box-shadow .12s,transform .12s}.spinner .spinner-btn:hover{background:var(--spinner-hover-bg)!important;color:var(--text)!important}.spinner .spinner-btn:active{background:var(--spinner-active-bg)!important;color:var(--text)!important;transform:translateY(1px);box-shadow:0 1px #0000008c inset,0 0 0 1px #00000040 inset}:root[data-theme=light] .spinner .spinner-btn:hover{background:transparent!important;color:var(--accent)!important;box-shadow:none!important}:root[data-theme=light] .spinner .spinner-btn:active{background:transparent!important;color:var(--accent)!important;transform:translateY(1px);box-shadow:none!important}.spinner .spinner-btn:focus-visible{outline:1px solid var(--btn-focus-ring);outline-offset:1px}#section-yields tbody td .input-wrapper input{padding-right:var(--yield-input-pr, 32px)!important}#section-yields tbody td .input-wrapper .spinner{right:var(--yield-spinner-right, 8px)!important;width:var(--yield-spinner-width, 18px)!important}#section-yields tbody td .input-wrapper input,#section-separations tbody td .input-wrapper input,.planning-table tbody td .input-wrapper input{background:transparent!important;border:none!important;outline:none!important;box-shadow:none!important;box-sizing:border-box!important}html[data-theme=dark] #section-yields tbody td .input-wrapper input,html[data-theme=dark] #section-separations tbody td .input-wrapper input,html[data-theme=dark] .planning-table tbody td .input-wrapper input,html[data-theme=dark] #work-calendar-body .input-wrapper input,#section-yields tbody td .input-wrapper input,#section-separations tbody td .input-wrapper input,.planning-table tbody td .input-wrapper input,#work-calendar-body .input-wrapper input{line-height:1.2!important;height:100%!important;overflow:hidden}body{overflow-anchor:none}html[data-theme=dark] .input-wrapper .spinner-btn{background:#181a22!important;border:none!important;box-shadow:none!important}.logo-anim-pulse{animation:logoPulse .9s ease-in-out 1}.logo-anim-spin-in{animation:logoSpinIn .8s cubic-bezier(.65,.05,.36,1) 1 forwards;transform-origin:50% 50%}.logo-anim-glow{animation:logoGlow 1.4s ease-in-out 1}.logo-anim-slide-reveal{animation:logoSlideReveal .9s ease-out 1 forwards;clip-path:inset(0 100% 0 0)}@keyframes logoPulse{0%{transform:scale(.85);filter:brightness(.6);opacity:0}60%{transform:scale(1.05);filter:brightness(1.15);opacity:1}to{transform:scale(1);filter:brightness(1);opacity:1}}@keyframes logoSpinIn{0%{transform:scale(0) rotate(-270deg);opacity:0;filter:blur(4px)}60%{transform:scale(1.08) rotate(10deg);opacity:1;filter:blur(0)}to{transform:scale(1) rotate(0)}}@keyframes logoGlow{0%{filter:drop-shadow(0 0 0px rgba(255,255,255,0));opacity:.2;transform:scale(.9)}50%{filter:drop-shadow(0 0 10px rgba(255,255,255,.55))}to{filter:drop-shadow(0 0 0 rgba(255,255,255,0));opacity:1;transform:scale(1)}}@keyframes logoSlideReveal{0%{clip-path:inset(0 100% 0 0);transform:translate(-18px);opacity:0}60%{opacity:1}to{clip-path:inset(0 0 0 0);transform:translate(0);opacity:1}}.logo[data-logo-animated="1"]{will-change:auto}html[data-theme=dark] #section-yields tbody td .input-wrapper,html[data-theme=dark] #section-yields tbody td .input-wrapper input,html[data-theme=dark] #section-separations tbody td .input-wrapper,html[data-theme=dark] #section-separations tbody td .input-wrapper input,html[data-theme=dark] .planning-table tbody td .input-wrapper,html[data-theme=dark] .planning-table tbody td .input-wrapper input{border-radius:0!important}html[data-theme=dark] #section-yields table th,html[data-theme=dark] #section-yields table td,html[data-theme=dark] #section-separations table th,html[data-theme=dark] #section-separations table td,html[data-theme=dark] #section-work-calendar table th,html[data-theme=dark] #section-work-calendar table td,html[data-theme=dark] .surfaces-info-table th,html[data-theme=dark] .surfaces-info-table td{border:1px solid #374158!important}html[data-theme=dark] .surfaces-info-table th.phantom-header{border:none!important;background:var(--bg);box-shadow:none!important}:root[data-theme=light] .surfaces-info-table th.phantom-header{border:none!important;background:var(--bg);box-shadow:none!important}#section-kpis{min-height:var(--kpi-block-min-height)}#section-separations{min-height:var(--sep-block-min-height)}html[data-theme=dark] .planning-table{border-collapse:collapse!important}html[data-theme=dark] .planning-table th,html[data-theme=dark] .planning-table td{border:1px solid #374158!important}html[data-theme=dark] .planning-table tbody td{background:#181a22!important}html[data-theme=dark] .planning-table tbody td.col-cistern,html[data-theme=dark] .planning-table tbody td.col-num,html[data-theme=dark] .planning-table tbody td.col-type,html[data-theme=dark] .planning-table tbody td.phase-block-end{background:#1b1f2b!important}html[data-theme=dark] .planning-table tbody td[data-type=duration]{background:#181a22!important}.planning-table tbody td[data-type=duration]{padding:0!important;text-align:right}.planning-table tbody td[data-type=duration] .duration-wrapper{display:flex;align-items:stretch;position:relative;height:100%}.planning-table tbody td[data-type=duration] .duration-lane{position:absolute;left:0;top:0;bottom:0;width:var(--dur-lane-width, 32px);display:flex;align-items:center;justify-content:flex-start;gap:2px;padding-left:var(--plan-lane-pad-left, 2px);background:transparent;pointer-events:none;z-index:1}.planning-table tbody td[data-type=duration] .duration-value{width:100%;display:flex;align-items:center;justify-content:flex-end;padding-right:6px;padding-left:calc(var(--dur-lane-width, 32px) + 2px);height:100%}.planning-table tbody td[data-type=duration] .dur-indicator{display:inline-flex;align-items:center;justify-content:center;height:14px;min-width:14px;width:14px;font-size:11px;line-height:1;color:#fff;margin-right:0;font-style:normal!important;pointer-events:auto}.planning-table tbody td[data-type=duration] .dur-badge{background:#2b78ff;border-radius:3px;padding:0;font-weight:700;letter-spacing:.2px}.planning-table tbody td[data-type=duration] .dur-badge.fs{width:22px;min-width:22px}.planning-table tbody td[data-type=duration] .dur-badge.hol{background:var(--danger-bg)}.planning-table tbody td[data-type=duration] .dur-indicator img,.planning-table tbody td[data-type=duration] img.dur-indicator{width:14px;height:14px;display:inline-block}html[data-theme=dark] .planning-table tbody td[data-type=duration] .duration-wrapper{background:#181a22!important}:root[data-theme=light] .planning-table tbody td[data-type=duration] .duration-wrapper{background:var(--field)!important}html[data-theme=dark] .planning-table tbody tr.group-alt td[data-type=duration],html[data-theme=dark] .planning-table tbody tr.group-alt td[data-type=duration] .duration-wrapper,html[data-theme=dark] .planning-table tbody tr.group-alt td[data-type=duration] .duration-lane,html[data-theme=dark] .planning-table tbody tr.group-alt td[data-type=duration] .duration-value,html[data-theme=dark] .planning-table tbody tr.group-alt td[data-type=duration] .start-wrapper{background-color:#282a32!important;background-image:none!important}.planning-table tbody tr.group-alt td,.planning-table tbody tr.group-alt td .start-wrapper,.planning-table tbody tr.group-alt td .start-content .input-wrapper,.planning-table tbody tr.group-alt td .input-wrapper,.planning-table tbody tr.group-alt td .start-lane{background-image:linear-gradient(var(--group-alt-overlay-dark),var(--group-alt-overlay-dark))!important;background-blend-mode:normal!important}html[data-theme=dark] .planning-table tbody tr.group-alt td .input-wrapper input,html[data-theme=dark] .planning-table tbody tr.group-alt td .input-wrapper input:placeholder-shown,html[data-theme=dark] .planning-table tbody tr.group-alt td .input-wrapper input:disabled{background-color:#282a32!important}:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .start-wrapper,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .start-content,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .start-content .input-wrapper,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .input-wrapper,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .value-box,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .spinner,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .spinner .spinner-btn,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .start-lane,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .duration-wrapper,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .duration-lane,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .duration-value,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .input-wrapper input,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .input-wrapper input:disabled,:root[data-theme=light] .planning-table tbody tr:not(.group-alt) td .input-wrapper input[readonly]{background-color:#e7eaee!important;background-image:none!important}:root[data-theme=light] .planning-table tbody tr.group-alt td,:root[data-theme=light] .planning-table tbody tr.group-alt td .start-wrapper,:root[data-theme=light] .planning-table tbody tr.group-alt td .start-content,:root[data-theme=light] .planning-table tbody tr.group-alt td .start-content .input-wrapper,:root[data-theme=light] .planning-table tbody tr.group-alt td .input-wrapper,:root[data-theme=light] .planning-table tbody tr.group-alt td .value-box,:root[data-theme=light] .planning-table tbody tr.group-alt td .spinner,:root[data-theme=light] .planning-table tbody tr.group-alt td .spinner .spinner-btn,:root[data-theme=light] .planning-table tbody tr.group-alt td .start-lane,:root[data-theme=light] .planning-table tbody tr.group-alt td[data-type=duration],:root[data-theme=light] .planning-table tbody tr.group-alt td .duration-wrapper,:root[data-theme=light] .planning-table tbody tr.group-alt td .duration-lane,:root[data-theme=light] .planning-table tbody tr.group-alt td .duration-value,:root[data-theme=light] .planning-table tbody tr.group-alt td .input-wrapper input,:root[data-theme=light] .planning-table tbody tr.group-alt td .input-wrapper input:disabled,:root[data-theme=light] .planning-table tbody tr.group-alt td .input-wrapper input[readonly],:root[data-theme=light] .planning-table tbody tr.group-alt td[data-type=duration] .duration-wrapper,:root[data-theme=light] .planning-table tbody tr.group-alt td[data-type=duration] .duration-lane,:root[data-theme=light] .planning-table tbody tr.group-alt td[data-type=duration] .duration-value{background-color:#e0e0e0!important;background-image:none!important}:root[data-theme=light] .surfaces-info-table tbody tr:not(.group-alt) td{background-color:#e7eaee!important;background-image:none!important}:root[data-theme=light] .surfaces-info-table tbody tr.group-alt td{background-color:#e0e0e0!important;background-image:none!important}.planning-table tbody td .input-wrapper input::placeholder{font-size:.94em}.planning-table tbody td .input-wrapper input::-webkit-input-placeholder{font-size:.94em}.planning-table tbody td .input-wrapper input::-ms-input-placeholder{font-size:.94em}.planning-table tbody tr[data-group-size]:not([data-group-size="1"]) td{position:relative}.planning-table tbody tr[data-group-size]:not([data-group-size="1"]).group-start:first-child td{border-top:2px solid var(--block-border-color)!important}.planning-table tbody tr[data-group-size]:not([data-group-size="1"]).group-end td{border-bottom:2px solid var(--block-border-color)!important}.planning-table tbody tr[data-group-size]:not([data-group-size="1"]) td:first-child{border-left:2px solid var(--block-border-color)!important}.surfaces-info-table tbody tr[data-group-size]:not([data-group-size="1"]) td{position:relative}.surfaces-info-table tbody tr[data-group-size]:not([data-group-size="1"]).group-start td{border-top:2px solid var(--block-border-color)!important}.surfaces-info-table tbody tr[data-group-size]:not([data-group-size="1"]).group-end td{border-bottom:2px solid var(--block-border-color)!important}.surfaces-info-table tbody tr[data-group-size]:not([data-group-size="1"]) td:last-child{border-right:2px solid var(--block-border-color)!important}.planning-table tbody td.updated-cell,.planning-table tbody input.updated-cell{position:relative;z-index:0}.login-screen{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;position:relative;padding:20px}.login-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-topbar{display:flex;align-items:center;gap:10px;margin-left:auto}.login-topbar #login-btn-theme{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center}.login-topbar #login-btn-theme svg{width:20px;height:20px;display:block;fill:currentColor}.copy-excel-status{min-height:20px;margin-top:4px;text-align:center;font-size:12px;color:var(--muted);max-width:520px;white-space:pre-line}.copy-excel-status.error{color:var(--danger-bg)}.login-topbar #login-btn-lang{height:22px;width:auto;cursor:pointer;border:1px solid var(--border);border-radius:4px}.login-card{width:100%;max-width:360px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:18px;display:flex;flex-direction:column;gap:8px}.login-card h2{margin:0 0 4px}.login-card label{font-weight:600}.login-card input{width:100%;padding:8px;border-radius:4px;border:1px solid var(--border);background:var(--field);color:var(--text)}#login-error{margin:4px 0;color:var(--danger-bg);min-height:16px;white-space:pre-line}#login-submit{margin-top:8px;width:auto;align-self:center;padding:8px 16px;display:inline-flex;align-items:center;justify-content:center}#login-submit.locked{opacity:.85;cursor:not-allowed}.wrap{max-width:1310px;margin:0 auto;padding:15px 15px 30px}.topbar{display:flex;align-items:center;justify-content:flex-start;gap:18px;margin-bottom:6px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:16px}#btn-dev-toggle{background:var(--btn-secondary-bg);color:#fff;border:1px solid var(--border);padding:6px 10px;border-radius:4px;cursor:pointer;font-weight:600}#btn-dev-toggle.active{background:var(--accent)}#btn-dev-toggle:hover{background:var(--btn-secondary-hover)}#btn-dev-toggle:active{background:var(--btn-secondary-active)}.header-inline-actions .calendar-opt.disabled{opacity:.4;pointer-events:auto;filter:grayscale(.4)}.brand{display:flex;align-items:center;gap:15px}.brand img.logo{height:48px}.brand h1{font-size:24px;margin:0;font-weight:800}.actions{display:flex;gap:12px;align-items:center}.header-checkbox{display:flex;align-items:center;gap:6px;flex-direction:row;margin-right:10px;white-space:nowrap;cursor:pointer}label[for]{cursor:pointer}.header-checkbox span{margin-right:0;order:0;display:inline-block;white-space:nowrap;max-width:none;overflow-wrap:normal;text-align:left}.header-checkbox input[type=checkbox]{margin-left:0;width:18px;height:18px;accent-color:var(--accent);order:1}.header-checkbox span{font-size:14px}.actions{margin-left:-8px}.hidden{display:none!important}#btn-backups{min-width:110px;padding:6px 10px;justify-content:center}#about-version{font-style:italic;font-size:12px;opacity:.8;margin-right:6px;cursor:pointer;text-decoration:underline dotted;white-space:nowrap}main{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:15px 15px 28px}#debug-panel,#calendar-view-panel,#error-panel{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px;box-sizing:border-box}#debug-panel pre,#error-panel pre{max-height:var(--debug-log-max-h, 240px);overflow:auto;margin:8px 0 0;padding:8px;background:var(--field);border:1px solid var(--border);border-radius:6px}#debug-panel{margin-top:var(--debug-panel-offset-y, 0px)}#debug-panel pre,#error-panel pre{white-space:pre-wrap}#error-panel{display:flex;flex-direction:column}#error-panel .debug-header{margin-bottom:4px}#error-panel pre .ok-line{color:var(--success-bg);font-size:11px}#error-panel pre .err-line{color:#fff;font-size:11px}#error-panel pre .err-line .fix-next-working{font-size:11px;padding:0 6px;background:var(--primary-bg);color:#fff;border:none;border-radius:3px;cursor:pointer}#error-panel pre .err-line .fix-next-working:hover{background:var(--btn-hover)}#error-panel pre .err-line .fix-next-working:active{background:var(--btn-active);transform:translateY(1px);box-shadow:0 1px #00000073 inset,0 0 0 1px #00000040 inset}#error-panel pre .err-line .fix-next-working:focus-visible{outline:1px solid var(--btn-focus-ring);outline-offset:1px}#planning-output .planning-table input.user-error{color:#ff4d4d!important;font-style:italic}.tabs-bar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;border-bottom:1px solid var(--border);margin-bottom:12px}.tabs{display:flex;gap:0}.header-inline-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:4px}.header-inline-actions #btn-copy-excel{order:9}.header-inline-actions .header-checkbox{margin-right:0}.header-inline-actions #btn-backups{order:10}.header-inline-actions #about-version{order:11}.header-inline-actions #btn-theme{order:12}.header-inline-actions #btn-lang{order:13}.tab-btn{padding:8px 16px;cursor:pointer;background:none;border:none;color:var(--muted);font-size:15px;border-bottom:2px solid transparent}.tab-btn.active{color:var(--accent);border-bottom:2px solid var(--accent);font-weight:700}.tab-content{display:none}.tab-content.active{display:block}h2{border-bottom:1px solid var(--border);padding-bottom:8px;margin-top:0;margin-bottom:8px;font-size:18px}#section-yields>h2,#section-work-calendar>h2,#section-kpis>h2,#section-separations>h2{padding-bottom:1px;margin-bottom:1px}#section-work-calendar>h2,#section-separations>h2{width:calc(100% - 11px)}.config-grid{display:grid;grid-template-columns:400px 1fr;gap:20px;align-items:start}#section-input-data{display:flex;flex-direction:column;height:100%}.right-column{display:flex;flex-direction:column;gap:20px}.calc-params-grid{display:block}.right-top-grid{display:none}.right-center-grid{display:grid;grid-template-columns:40% 60%;gap:12px;margin-bottom:12px;align-items:stretch}.right-bottom-grid{display:grid;grid-template-columns:var(--cfg-bottom-kpi-col, 55%) var(--cfg-bottom-sep-col, 45%);gap:10px;align-items:stretch}#section-kpis,#section-separations{width:100%;height:100%;display:flex;flex-direction:column}.kpi-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) minmax(0,1fr);grid-auto-rows:1fr;gap:8px}#kpi-gap-card{grid-column:1;grid-row:1 / span 2}#kpi-area-card{grid-column:2;grid-row:1 / span 2}#kpi-req-card{grid-column:3;grid-row:1}#kpi-avail-card{grid-column:3;grid-row:2}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-auto-rows:auto}#kpi-area-card,#kpi-req-card,#kpi-avail-card,#kpi-gap-card{grid-column:auto;grid-row:auto}}.kpi-card{background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:4px;min-height:72px}.kpi-card-head{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px;color:var(--muted)}.kpi-title{font-weight:600;color:var(--fg);font-size:12px}.kpi-badge{padding:1px 6px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.3;border:1px solid transparent}.kpi-badge:empty{display:none}.kpi-badge.ok{background:#47c98f24;color:#46c18f;border-color:#47c98f59}.kpi-badge.warn{background:#ffbf4624;color:#e2a43b;border-color:#ffbf4666}.kpi-badge.danger{background:#ff606024;color:#f66;border-color:#ff606066}.kpi-value{font-size:22px;font-weight:700;color:var(--fg);line-height:1.05}.kpi-sub{font-size:11px;color:var(--muted);line-height:1.35}.kpi-sub-strong{display:block;font-size:12px;font-weight:600;color:var(--fg)}.kpi-gap-positive{color:#46c18f}.kpi-gap-negative{color:#f66}#kpi-gap-card .kpi-value{font-size:20px;line-height:1.15;white-space:pre-line}#kpi-gap-card .kpi-gap-lines{font-size:15px;font-weight:700;line-height:1.25;color:var(--fg)}#kpi-gap-card .kpi-gap-lines .gap-line.neg{color:#f66}#kpi-gap-card .kpi-gap-lines .gap-line.pos{color:var(--fg)}#kpi-gap-card .kpi-gap-meta{font-size:12px;color:var(--muted);line-height:1.3;margin-bottom:2px}#kpi-avail-card .kpi-sub-strong{color:#fff}#section-yields,#section-work-calendar{width:100%;height:100%;display:flex;flex-direction:column}#section-yields table,#section-work-calendar table{flex:1 1 auto}#section-work-calendar table{width:calc(100% - 11px)}#section-separations table thead th#th-sep-phase{width:var(--sep-phase-w)}#section-separations table thead th#th-days-2{width:var(--sep-days-w)}#section-separations table thead th#th-hours-2{width:var(--sep-hours-w)}#section-separations table colgroup col:nth-child(1){width:var(--sep-phase-w)!important}#section-separations table colgroup col:nth-child(2){width:var(--sep-days-w)!important}#section-separations table colgroup col:nth-child(3){width:var(--sep-hours-w)!important}#section-separations table tbody tr>td:nth-child(1).phase-label-cell{width:var(--sep-phase-w)}#section-separations table tbody tr>td:nth-child(2).editable-sep{width:var(--sep-days-w)}#section-separations table tbody tr>td:nth-child(3).editable-sep{width:var(--sep-hours-w)}#section-separations{width:100%;height:100%;display:flex;flex-direction:column}#section-separations table{flex:1 1 auto}#section-separations table{width:calc(100% - 11px);margin-left:var(--sep-block-offset-x, 12px)}#section-separations table{table-layout:fixed}#section-separations th,#section-separations td{padding-top:6px;padding-bottom:6px}#section-yields table th:nth-child(1),#section-yields table td:nth-child(1){width:120px}#section-yields table th:nth-child(3),#section-yields table td:nth-child(3){width:88px}#section-yields table th:nth-child(4),#section-yields table td:nth-child(4){width:96px}.time-col,#section-work-calendar thead .time-col,#section-work-calendar tbody .time-col,#section-work-calendar tfoot .time-col{width:var(--cal-time-w)}#section-work-calendar thead th#th-day,#section-work-calendar tbody td:first-child,#section-work-calendar tfoot td:first-child{width:var(--cal-day-w);min-width:var(--cal-day-w)}#section-work-calendar thead th#th-total-hours,#section-work-calendar tbody td:last-child,#section-work-calendar tfoot td:last-child{width:var(--cal-total-w);min-width:var(--cal-total-w);padding-left:4px;padding-right:4px}#section-work-calendar td input{padding:2px 6px!important;font-size:12px}#section-work-calendar tbody td:first-child{text-align:left;padding-left:8px}#section-work-calendar tbody td:last-child,#section-work-calendar tfoot td:last-child{text-align:center}#section-help{background:transparent;border:none;padding:0;display:flex;flex-direction:column}#section-help h2{margin-bottom:8px}#section-help>h2{width:calc(100% - 11px)}#section-help #help-content{background:var(--editable-fill);border:1px solid var(--border);border-radius:5px;padding:8px 10px;min-height:80px;display:flex;gap:10px;align-items:center;justify-content:center;color:var(--muted);flex:1 1 auto;box-sizing:border-box;overflow:auto;width:calc(100% - 11px);position:relative;transition:background .25s}#section-help #help-content .help-msg{width:100%;font-size:12px;line-height:1.35;color:var(--text);animation:helpFadeIn .18s ease}#section-help #help-content .help-msg.fade-out{animation:helpFadeOut .18s ease forwards}#section-help #help-content code{background:#ffffff0f;padding:1px 4px;border-radius:3px;font-size:11px}#section-help #help-content strong{color:var(--accent)}#section-help #help-content em{color:var(--muted);font-style:normal}#section-help #help-content .hl-bullet{color:var(--accent);margin:0 2px 0 0}@keyframes helpFadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes helpFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-2px)}}#section-help #help-content .help-icon{font-size:24px;width:36px;text-align:center}#section-help #help-content .help-text{color:var(--muted)}.input-grid{display:grid;grid-template-columns:200px 170px;gap:12px;flex-grow:1}.input-grid .form-group{min-height:auto}#section-input-data{width:auto}#validation-feedback{max-width:382px;min-height:var(--validation-min-height, 180px);display:flex;flex-direction:column;justify-content:center}.input-grid .form-group{display:flex;flex-direction:column;min-height:var(--lists-min-height, 761px)}.input-grid .textarea-container{flex-grow:1;display:flex;min-height:0}#cisterns-list,#surfaces-list{height:100%;min-height:100%;line-height:1.25;box-sizing:border-box;padding:8px 10px;overflow-y:auto;overflow-x:auto;resize:none;white-space:pre;overflow-wrap:normal;word-break:normal}section{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group-inline{flex-direction:row;align-items:center;justify-content:space-between}label,.table-title{font-weight:700;color:var(--muted);font-size:13px}input,select,textarea{width:100%;padding:6px 8px;background:var(--field);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:inherit;font-size:14px}textarea{resize:none;line-height:1.5}.textarea-container{overflow:hidden}.ta-error-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.ta-error-overlay-inner{position:absolute;left:0;top:0;width:100%;pointer-events:none}.ta-error-line{position:absolute;left:0;right:0;width:100%;pointer-events:none}.ta-error-line.err{background:#dc262638;transition:background .12s;box-sizing:border-box}:root[data-theme=light] .ta-error-line.err{background:#dc26262e}.ta-error-line.err:hover{background:#dc262657}.ta-line-tooltip{position:fixed;background:#11131b;color:#fff;font-size:11px;padding:4px 6px;border:1px solid var(--border);border-radius:4px;z-index:9999;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .12s,transform .12s;max-width:320px;line-height:1.3;box-shadow:0 4px 10px #0006}:root[data-theme=light] .ta-line-tooltip{background:var(--card);color:var(--text);border:1px solid var(--border);box-shadow:0 4px 12px #0000001f}.ta-line-tooltip.visible{opacity:1;transform:translateY(0)}.help-tooltip{position:fixed;background:#11131b;color:#fff;font-size:12px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;z-index:9999;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .12s,transform .12s;max-width:460px;line-height:1.35;box-shadow:0 6px 16px #00000073}:root[data-theme=light] .help-tooltip{background:var(--card);color:var(--text);border:1px solid var(--border);box-shadow:0 6px 16px #00000026}.help-tooltip.visible{opacity:1;transform:translateY(0)}.help-tooltip strong{color:var(--accent)}.help-tooltip code{background:#ffffff14;padding:1px 4px;border-radius:3px;font-size:11px}:root[data-theme=light] .help-tooltip code{background:#0000000f}.help-tooltip .hl-bullet{color:var(--accent);margin-right:2px}#cistern-markers,#surfaces-markers{display:none!important}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.textarea-container{position:relative}#cistern-markers,#surfaces-markers{position:absolute;right:5px;top:5px;font-size:14px;color:var(--muted);pointer-events:none;line-height:1.5;text-align:right;overflow:hidden;height:100%}#cisterns-list{padding-right:160px}#surfaces-list{padding-right:120px}button,.btn{padding:6px 10px;border-radius:4px;border:none;cursor:pointer;font-weight:700;color:#fff;display:inline-flex;align-items:center;gap:5px;font-size:12px;transition:background .15s,color .15s,box-shadow .15s,transform .12s;position:relative}button.primary{background:#003ca4}button.secondary{background:var(--btn-secondary-bg)}button.danger{background:var(--danger-bg)}button.primary:hover{background:var(--btn-hover)}button.primary:active{background:var(--btn-active);transform:translateY(1px);box-shadow:0 1px #0006 inset,0 0 0 1px #0003 inset}button.secondary:hover{background:var(--btn-secondary-hover)}button.secondary:active{background:var(--btn-secondary-active);transform:translateY(1px);box-shadow:0 1px #00000073 inset,0 0 0 1px #00000040 inset}button.danger:hover{background:var(--btn-danger-hover)}button.danger:active{background:var(--btn-danger-active);transform:translateY(1px);box-shadow:0 1px #00000080 inset,0 0 0 1px #00000040 inset}button:focus-visible{outline:2px solid var(--btn-focus-ring);outline-offset:2px}.holiday-item button.danger{background-color:#831100}.input-group{display:flex}.input-group input{flex-grow:1}.textarea-actions{display:flex;gap:5px;margin-top:16px}#validation-feedback{margin-top:calc(55px + var(--state-box-offset-y, 0px));margin-bottom:1px;padding:10px;border-radius:6px;border:1px solid var(--border)}#validation-feedback h3{margin:0 0 10px;font-size:15px}#validation-feedback ul{margin:0;padding-left:0;list-style:none}#validation-feedback li{margin-bottom:5px;display:flex;align-items:center;gap:8px}#validation-feedback li.format-status{min-height:18px}#validation-feedback li.format-status-hidden{visibility:hidden}table{width:100%;border-collapse:collapse}th,td{padding:6px;border:1px solid var(--border);text-align:center}th{background-color:var(--field);font-size:13px}th,td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=light] th{background-color:var(--table-head-bg)}:root[data-theme=light] .surfaces-info-table .phantom-header{background-color:#f2f5f9!important}td input{text-align:center;padding:4px;font-size:13px}#th-yield-type{width:60px}.phase-label-cell{text-align:left;white-space:nowrap;padding-left:8px}.phase-label-cell-merged{vertical-align:middle}.time-col{width:var(--cal-time-w)}.holiday-header{display:flex;align-items:center;gap:8px}#holiday-picker-trigger{position:relative;display:inline-block}#holiday-picker-trigger input[type=date]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none}#holidays-list-container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(7,auto);grid-auto-flow:column;gap:6px;min-height:305px;border:1px solid var(--border);border-radius:4px;padding:8px;max-width:100%}.holiday-item{display:flex;justify-content:space-between;align-items:center;background:var(--field);padding:2px 6px;border-radius:4px;font-size:12px;letter-spacing:.25px;min-width:0}.holiday-item span{display:inline-block;max-width:68px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.holiday-item button{flex:0 0 auto}#calendar-prev,#calendar-next{background:transparent!important;border:none!important;box-shadow:none!important;padding:0 6px!important;width:auto!important;min-width:0!important;line-height:1;display:inline-flex;align-items:center;justify-content:center;font-size:20px}#calendar-prev:hover,#calendar-next:hover,#calendar-prev:active,#calendar-next:active{background:transparent!important;box-shadow:none!important}#btn-clear-cache{background:#444;color:#eee;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;line-height:1}#btn-clear-cache:hover{background:#555}#btn-clear-cache:active{background:#333}#btn-end-session{min-width:80px}.input-wrapper{position:relative}.input-wrapper input{padding-right:20px!important}.spinner{position:absolute;right:0;top:1px;bottom:1px;display:flex;flex-direction:column;width:18px}.spinner-btn{flex:1;border:none;background:var(--field);color:var(--muted);cursor:pointer;padding:0;font-size:8px;line-height:1;border-radius:2px}.spinner-btn:hover{background:var(--border);color:var(--text)}.planning-placeholder{text-align:center;color:var(--muted);padding:40px 20px}.planning-grid{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start}.planning-table th{white-space:nowrap}.planning-table .col-cistern,.planning-table .col-num,.planning-table .col-type{width:auto!important;min-width:0}.planning-table .phase-header{font-size:23px;font-weight:700}.planning-table .phase-block-start{border-left:2px solid var(--muted)}.planning-table .phase-block-end{border-right:2px solid var(--muted)}.planning-table thead tr:first-child th[class*=phase-block]{border-top:2px solid var(--muted)}.planning-table tbody tr:last-child td[class*=phase-block]{border-bottom:2px solid var(--muted)}.planning-table td{min-height:30px;height:30px}.surfaces-info-table td{min-height:4px;height:33px}td.manual-duration{color:var(--accent);font-style:italic;border:1px solid var(--border);box-shadow:none;background:transparent}#backups-list>div{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.04)}#backups-list button{margin-left:8px}.surfaces-info-table{width:120px}.surfaces-info-table .phantom-header{background-color:var(--card);border-color:var(--card);border-bottom-color:var(--border);height:44px}.planning-controls{display:flex;gap:20px;align-items:center;margin-bottom:15px;flex-wrap:wrap}.planning-controls .form-group{flex-direction:row;align-items:center;gap:8px}.planning-controls select{width:auto}.planning-controls .workers-pack{display:flex;align-items:center;gap:10px}.planning-controls .workers-pack label{white-space:nowrap}.planning-controls .workers-pack .workers-inline{display:flex;gap:18px;align-items:center}.planning-controls .workers-pack .worker-select{display:flex;align-items:center;gap:4px}.planning-controls .workers-pack select{width:48px;min-width:48px;padding-left:6px;padding-right:6px}#planning-prompt{color:var(--muted);font-style:italic}.bottom-panels-container{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.bottom-panels-container.panels-hidden{display:none}#debug-panel{border:1px solid var(--border);border-radius:8px;background-color:var(--bg);height:240px;min-width:0}#calendar-view-panel{position:fixed;right:max(12px,calc((100vw - 1280px)/2 + 12px));top:50%;transform:translate(var(--calendar-offset-x, 0px),-50%);width:180px;max-height:calc(100vh - 24px);border:1px solid var(--border);border-radius:12px;background-color:var(--card);padding:12px;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;gap:10px;z-index:50;box-shadow:0 12px 30px #00000059}.debug-header,.calendar-view-header{display:flex;align-items:center;padding:6px 12px;border-bottom:1px solid var(--border)}.calendar-view-header{justify-content:center;border-bottom:none;padding:0}.calendar-view-header #calendar-view-title{flex:0 0 auto;text-align:center;margin:0}.calendar-nav{width:100%;display:inline-flex;align-items:center;justify-content:center}.calendar-nav-top{margin-top:4px}.calendar-nav-bottom{margin-bottom:4px}.debug-header h2,.calendar-view-header h2{margin:0;padding:0;font-size:13px;border-bottom:none}#debug-log{height:200px;overflow-y:auto;overflow-x:auto;padding:10px 15px;font-family:Consolas,Courier New,monospace;font-size:12px;color:var(--muted);white-space:pre;max-width:100%;box-sizing:border-box}.mini-debug-banner{position:fixed;right:12px;top:72px;background:#0009;color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;z-index:9999;max-width:40vw;box-shadow:0 2px 6px #0009}.toast{background:#000000d9;color:#fff;padding:10px 14px;border-radius:6px;margin-top:8px;box-shadow:0 2px 6px #0009;font-size:13px}#confirm-dialog{padding:0;border-radius:8px}#confirm-dialog .dlg-actions button{min-width:90px}#confirm-dialog .dlg-title,#confirm-dialog .dlg-content{padding:12px 16px}#generic-dialog .dlg-actions button,#confirm-dialog .dlg-actions button{justify-content:center}.copy-excel-container{display:flex;flex-direction:column;gap:14px;align-items:center;padding-top:4px}.copy-excel-row{display:flex;gap:12px}.copy-excel-row.top,.copy-excel-row.bottom{justify-content:center}.copy-excel-row button{min-width:120px;justify-content:center}#error-panel .debug-header,#debug-panel .debug-header{display:flex;align-items:center}#error-panel .debug-header>h2,#debug-panel .debug-header>h2{margin-right:auto}#error-panel .panel-actions-right,#debug-panel .panel-actions-right{margin-left:auto}#calendar-view-title{font-weight:700;white-space:pre-line}#calendar-grid-container{display:grid;grid-template-columns:1fr;gap:22px;justify-items:center;padding:0;flex:1 1 auto;overflow-y:auto}.calendar-month{font-size:11px;width:fit-content;margin:0 auto}.calendar-month-header{text-align:center;font-weight:700;margin-bottom:4px;background-color:#1b1f2b;padding:2px 3px;border-radius:4px;font-size:12px}:root[data-theme=light] .calendar-month-header{background-color:#d5d9db!important}.calendar-days-grid{display:grid;grid-template-columns:repeat(7,20px);gap:2px}.calendar-day-name,.calendar-day-cell{text-align:center;padding:1px;border:1px solid var(--border)}.calendar-day-name{font-weight:700;font-size:10px;color:var(--muted);border:none;line-height:1.1}.calendar-day-cell{border-radius:3px;line-height:1.1;font-size:11px;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center}.calendar-day-cell.other-month{color:var(--muted);opacity:.5}.calendar-day-cell.current-day{background-color:var(--accent);color:#fff;font-weight:700}.calendar-day-cell.weekend{border-bottom:1px solid var(--bg);padding:0;background-color:var(--danger-bg);color:#fff}.calendar-day-cell.holiday{background-color:var(--danger-soft-bg);color:#fff;font-weight:700;border-color:var(--danger-bg)}.calendar-day-cell.task-day{background-color:var(--field);border:1px solid var(--accent)}#generic-dialog .dialog-content-wrapper{display:flex;flex-direction:column;max-height:70vh;padding:12px 16px}.dup-badge{display:inline-block;background:var(--accent);color:#fff;font-size:11px;padding:2px 6px;border-radius:999px;margin-left:6px;vertical-align:middle}#changelog-content{margin-top:16px;border-top:1px solid var(--border);padding-top:12px;overflow-y:auto;padding-right:12px}#changelog-content h4{margin:15px 0 8px;font-size:15px;color:var(--text)}#changelog-content h4:first-of-type{margin-top:5px}#changelog-content ul{list-style:none;padding-left:10px;margin:0}#changelog-content li{margin-bottom:5px}.changelog-tag{font-weight:700;padding:2px 5px;border-radius:4px;margin-right:8px;font-size:11px;color:#fff}.tag-nuevo{background-color:var(--success-bg)}.tag-modificado{background-color:var(--warning-bg)}.tag-corregido{background-color:var(--primary-bg)}@media(max-width:1200px){.config-grid,.planning-grid,.bottom-panels-container{grid-template-columns:1fr}}@media(max-width:768px){.planning-controls{flex-direction:column;align-items:stretch}.calc-params-grid{grid-template-columns:1fr}}#section-yields td,#section-separations td,#section-work-calendar td{padding-top:2px;padding-bottom:2px}#section-yields .input-wrapper input,#section-yields .input-wrapper select,#section-yields .input-wrapper textarea{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:4px 6px!important;color:var(--text)!important;text-align:center;outline:none!important}#section-yields .input-wrapper input:focus,#section-yields .input-wrapper input:focus-visible{outline:none!important;box-shadow:none!important;border:none!important}#section-yields .input-wrapper:focus-within input{outline:none!important;box-shadow:none!important;border:none!important}#section-yields .input-wrapper{position:relative;width:100%}#section-yields .spinner{right:-4px;top:0;bottom:0;width:18px;background:transparent}#section-yields .spinner .spinner-btn{background:transparent;border-radius:0;padding:0;margin:0;font-size:9px;line-height:1}#section-yields td input{padding:2px 6px!important;font-size:12px!important}#section-yields td:has(>.input-wrapper){padding-right:0!important}#section-yields tbody td.editable-yield{padding:0!important}html[data-theme=dark] #section-yields tbody td.editable-yield{background:#181a22!important}:root[data-theme=light] #section-yields tbody td.editable-yield{background:var(--field)!important}:root[data-theme=light] #section-yields tbody td.editable-yield .input-wrapper,:root[data-theme=light] #section-yields tbody td.editable-yield .input-wrapper .value-box,:root[data-theme=light] #section-yields tbody td.editable-yield .input-wrapper .spinner,:root[data-theme=light] #section-yields tbody td.editable-yield .input-wrapper .spinner .spinner-btn{background:var(--field)!important}#section-work-calendar tbody td.editable-cal{padding:0!important}html[data-theme=dark] #section-work-calendar tbody td.editable-cal{background:#181a22!important}:root[data-theme=light] #section-work-calendar tbody td.editable-cal{background:var(--field)!important}html[data-theme=dark] #section-work-calendar tbody td.editable-cal .input-wrapper,html[data-theme=light] #section-work-calendar tbody td.editable-cal .input-wrapper{display:flex;align-items:stretch;position:relative;margin:0 1px!important;width:calc(100% - 2px)!important;height:100%!important;background:transparent!important;overflow:hidden;box-shadow:none!important;border:none!important}html[data-theme=dark] #section-work-calendar tbody td.editable-cal .input-wrapper input,html[data-theme=light] #section-work-calendar tbody td.editable-cal .input-wrapper input{padding:4px 6px!important;text-align:center}#section-yields table tr td:nth-child(2):has(>.input-wrapper>input[type=number]),#section-yields table tr td:nth-child(3):has(>.input-wrapper>input[type=text]){background:#181a22}#section-yields table td:nth-child(3):focus-within,#section-yields table td:nth-child(4):focus-within{box-shadow:inset 0 0 0 1px var(--accent)}#section-yields thead th{padding-top:8px!important;padding-bottom:8px!important}#section-yields tbody td{padding-top:2px!important;padding-bottom:2px!important}#section-separations thead th{padding-top:8px!important;padding-bottom:8px!important}#section-separations tbody td{padding-top:2px!important;padding-bottom:2px!important}#section-work-calendar thead th{padding-top:8px!important;padding-bottom:8px!important}#section-work-calendar tbody td{padding-top:2px!important;padding-bottom:2px!important}.planning-table tbody td .input-wrapper{position:relative;padding-left:0!important;padding-right:0!important}html[data-theme=dark] .planning-table tbody td .input-wrapper{padding-left:0!important;padding-right:0!important}:root[data-theme=light] .planning-table tbody td .input-wrapper{padding-left:0!important;padding-right:0!important}.planning-table tbody td .input-wrapper input{padding-right:var(--plan-input-pr, 28px)!important;text-align:left!important}.planning-table td .start-wrapper .start-lane+.start-content .input-wrapper{padding-left:calc(var(--plan-lane-width, 18px) + var(--plan-lane-pad-left, 0px))!important;padding-right:0!important}.planning-table td .input-wrapper .manual-icon{position:absolute;left:4px;top:50%;transform:translateY(-50%);width:18px;height:1.25em;display:flex;align-items:center;justify-content:center;pointer-events:none}.planning-table td .input-wrapper .spinner{right:0;width:20px;margin:0!important}.planning-table td .input-wrapper .spinner .spinner-btn{background:transparent!important;border:none!important;box-shadow:none!important;color:var(--muted)!important;font-size:10px!important;line-height:1;padding:0;margin:0;transition:background .12s,color .12s}.planning-table td .input-wrapper .spinner .spinner-btn:hover{background:var(--spinner-hover-bg)!important;color:var(--text)!important}.planning-table td .input-wrapper .spinner .spinner-btn:active{background:var(--spinner-active-bg)!important;color:var(--text)!important;transform:translateY(1px)}.planning-table td .input-wrapper input{background:transparent!important;border:none!important;box-shadow:none!important;outline:none!important;color:var(--text)!important;font-size:12px!important}html[data-theme=dark] .planning-table td .input-wrapper{background:#181a22!important}:root[data-theme=light] .planning-table td .input-wrapper{background:var(--field)!important}.planning-table tbody td.phase-block-start,.planning-table tbody td.phase-block-mid{padding:0!important}.planning-table tbody td.phase-block-start .input-wrapper,.planning-table tbody td.phase-block-mid .input-wrapper{margin:0 1px!important;width:calc(100% - 2px)!important;height:100%!important;display:flex;align-items:stretch}.planning-table td .start-lane .manual-icon-lane{display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%;font-size:var(--plan-lane-icon-size, 13px);line-height:1}#generic-dialog .dlg-content input[type=text]{width:100%;padding:10px 12px;font-size:14px;border-radius:6px;box-sizing:border-box;max-width:1100px}#confirm-dialog{min-height:170px;padding-bottom:18px}#generic-dialog .dialog-content-wrapper{max-width:1150px}#tab-content-config .input-wrapper{position:relative;width:100%}#tab-content-config .input-wrapper input,#tab-content-config .input-wrapper select,#tab-content-config .input-wrapper textarea{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:4px 6px!important;color:var(--text)!important;text-align:center;outline:none!important}#tab-content-config .spinner{right:-4px;top:0;bottom:0;width:18px;background:transparent}#tab-content-config .spinner .spinner-btn{background:transparent;border-radius:0;padding:0;margin:0;font-size:9px;line-height:1}#tab-content-config td:has(>.input-wrapper){padding-right:0!important}html[data-theme=dark] #section-yields tbody td .input-wrapper,html[data-theme=dark] #section-yields tbody td .input-wrapper .value-box,html[data-theme=dark] #section-yields tbody td .input-wrapper .spinner,html[data-theme=dark] #section-yields tbody td .input-wrapper .spinner .spinner-btn{background:transparent!important}body.yield-debug #section-yields tbody td{outline:1px solid rgba(255,255,0,.25);outline-offset:-1px}body.yield-debug #section-yields tbody td .input-wrapper{outline:1px solid rgba(0,255,255,.4)}body.yield-debug #section-yields tbody td .input-wrapper .value-box{outline:1px solid rgba(0,160,255,.6)}body.yield-debug #section-yields tbody td .input-wrapper .spinner{outline:1px solid rgba(255,0,160,.6)}.planning-table td.zero-duration{color:#ff4d4d!important;font-weight:600}#sandbox-yields table.sandbox-table{border-collapse:collapse;width:420px;margin-bottom:16px}#sandbox-yields table.sandbox-table th,#sandbox-yields table.sandbox-table td{border:1px solid #2b2f45;padding:4px 6px;text-align:center;background:#11131b}#sandbox-yields table.sandbox-table tbody td:nth-child(2),#sandbox-yields table.sandbox-table tbody td:nth-child(3){background:#181a22}#sandbox-yields .sy-panel{display:flex;gap:0;background:#181a22;margin:0 2px;height:32px;align-items:stretch}#sandbox-yields .sy-value{flex:1 1 auto;display:flex;align-items:center;justify-content:center;background:#181a22}#sandbox-yields .sy-value input{width:100%;background:transparent;border:none;color:#f7f8fa;text-align:center;font-size:13px}#sandbox-yields .sy-spin{width:26px;display:flex;flex-direction:column;background:#181a22}#sandbox-yields .sy-spin button{flex:1;background:#181a22;border:none;padding:0;font-size:11px;color:#b3bfd2;cursor:pointer}#sandbox-yields .sy-spin button:hover{background:#2b2f45;color:#fff}#sandbox-yields .sy-panel:focus-within{outline:1px solid #2b78ff;outline-offset:0}
