:root{--naes-red:#c00000;--naes-blue:#1f4e79;--naes-black:#0a0a0a;--naes-gray:#404040;--naes-bg:#f5f5f5;--naes-white:#fff;--naes-yellow:#ffd23f;--bg:var(--naes-bg);--surface:var(--naes-white);--surface-strong:color-mix(in srgb, var(--naes-white) 92%, var(--naes-bg));--ink:var(--naes-black);--muted:var(--naes-gray);--line:color-mix(in srgb, var(--ink) 11%, var(--surface));--brand:var(--naes-red);--brand-2:var(--naes-blue);--accent:var(--naes-yellow);--danger:var(--naes-red);--success:var(--naes-blue);--warning:color-mix(in srgb, var(--accent) 84%, var(--ink));--warning-strong:color-mix(in srgb, var(--accent) 100%, var(--naes-black));--soft:color-mix(in srgb, var(--naes-white) 96%, var(--line));--card-soft:color-mix(in srgb, var(--surface) 98%, var(--line));--status-success:color-mix(in srgb, var(--success) 14%, var(--surface));--status-success-border:color-mix(in srgb, var(--success) 34%, var(--line));--status-warning:color-mix(in srgb, var(--warning) 26%, var(--surface));--status-warning-border:color-mix(in srgb, var(--warning) 48%, var(--line));--status-danger:color-mix(in srgb, var(--danger) 16%, var(--surface));--status-danger-border:color-mix(in srgb, var(--danger) 44%, var(--line));--status-muted:color-mix(in srgb, var(--muted) 10%, var(--surface));--status-muted-border:var(--line);--status-accent:color-mix(in srgb, var(--accent) 26%, var(--surface));--status-accent-border:color-mix(in srgb, var(--accent) 48%, var(--line));--shadow:0 18px 40px #0a0a0a14;--surface-overlay-10:color-mix(in srgb, var(--surface) 10%, transparent);--surface-overlay-14:color-mix(in srgb, var(--surface) 14%, transparent);--surface-overlay-16:color-mix(in srgb, var(--surface) 16%, transparent);--surface-overlay-20:color-mix(in srgb, var(--surface) 20%, transparent);--surface-overlay-22:color-mix(in srgb, var(--surface) 22%, transparent);--surface-overlay-40:color-mix(in srgb, var(--surface) 40%, transparent);--surface-overlay-97:color-mix(in srgb, var(--surface) 97%, transparent)}.my-reports-page{background:var(--bg);min-height:100vh;color:var(--ink);padding:24px}.my-reports-header{grid-template-columns:auto 1fr auto;align-items:center;gap:18px;max-width:1360px;margin:0 auto 18px;display:grid}.my-reports-header span{color:var(--naes-blue);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:900}.my-reports-header h1{margin:4px 0;font-size:2.15rem;line-height:1.05}.my-reports-header p{color:var(--muted);margin:0}.my-reports-back,.my-reports-refresh{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:900;text-decoration:none;display:inline-flex}.my-reports-refresh:disabled{cursor:wait;opacity:.7}.my-reports-toast{border:1px solid;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;max-width:1360px;margin:0 auto 14px;padding:12px 14px;display:flex}.my-reports-toast button{color:inherit;cursor:pointer;background:0 0;border:0;font-weight:900}.my-reports-toast-success{background:var(--status-success);border-color:var(--status-success-border);color:var(--success)}.my-reports-toast-warning{background:var(--status-warning);border-color:var(--status-warning-border);color:var(--warning)}.my-reports-toast-danger{background:var(--status-danger);border-color:var(--status-danger-border);color:var(--danger)}.my-reports-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1360px;margin:0 auto 14px;display:grid}.my-reports-summary-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:5px;min-height:112px;padding:16px;display:grid}.my-reports-summary-card svg{color:var(--brand)}.my-reports-summary-card span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:900}.my-reports-summary-card strong{font-size:2rem;line-height:1}.my-reports-summary-card.pending{background:var(--status-warning);border-color:var(--status-warning-border)}.my-reports-summary-card.validated{background:color-mix(in srgb, var(--success) 7%, var(--surface));border-color:color-mix(in srgb, var(--success) 28%, var(--line))}.my-reports-summary-card.review{background:color-mix(in srgb, var(--danger) 9%, var(--surface));border-color:var(--status-danger-border)}.my-reports-filters{flex-wrap:wrap;gap:8px;max-width:1360px;margin:0 auto 16px;display:flex}.my-reports-filters button{background:var(--surface);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:999px;min-height:36px;padding:0 13px;font-size:.82rem;font-weight:900}.my-reports-filters button.active{background:var(--brand);border-color:var(--brand);color:var(--surface)}.my-reports-layout{grid-template-columns:minmax(320px,.9fr) minmax(420px,1.35fr);gap:16px;max-width:1360px;margin:0 auto;display:grid}.my-reports-list-panel,.my-reports-detail-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:0;padding:14px;box-shadow:0 18px 42px #1c2d2614}.my-reports-panel-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.my-reports-panel-heading strong{font-size:.95rem}.my-reports-panel-heading span{color:var(--muted);font-size:.78rem;font-weight:800}.my-reports-list{gap:10px;display:grid}.my-report-card{background:var(--surface);border:1px solid var(--line);color:inherit;cursor:pointer;text-align:left;border-radius:8px;gap:8px;width:100%;padding:13px;display:grid}.my-report-card.active{border-color:var(--brand);box-shadow:inset 4px 0 0 var(--brand)}.my-report-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.my-report-card p{color:var(--ink);margin:0;font-weight:800}.my-report-card-meta{flex-wrap:wrap;gap:7px;display:flex}.my-report-card-meta span{background:var(--soft);color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:.75rem;font-weight:800;display:inline-flex}.my-report-status{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:900;display:inline-flex}.my-report-status-borrador{background:var(--status-muted);color:var(--muted)}.my-report-status-pendiente-validacion,.my-report-status-enviado{background:var(--status-warning);color:var(--warning)}.my-report-status-validado{background:color-mix(in srgb, var(--success) 12%, var(--surface));color:var(--brand-2)}.my-report-status-corregido,.my-report-status-reabierto{background:color-mix(in srgb, var(--brand-2) 14%, var(--surface));color:var(--brand-2)}.my-report-status-rechazado{background:var(--status-danger);color:var(--danger)}.my-report-status-cerrado{background:var(--soft);color:var(--muted)}.my-reports-state{border:1px dashed var(--line);color:var(--ink);text-align:center;border-radius:8px;place-items:center;gap:8px;min-height:180px;padding:24px;display:grid}.my-reports-state strong{color:var(--ink)}.my-reports-state p{margin:0}.my-report-detail{gap:14px;display:grid}.my-report-detail-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;display:flex}.my-report-detail-header span:first-child{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;font-weight:900}.my-report-detail-header h2{margin:4px 0;font-size:1.45rem;line-height:1.1}.my-report-detail-header p{color:var(--muted);margin:0}.report-authorship{border:1px solid var(--status-warning-border);background:var(--status-warning);color:var(--warning);border-radius:6px;margin:6px 0 0;padding:3px 8px;font-size:.78rem;font-weight:700;display:inline-block}.my-report-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.my-report-info-tile{background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:5px;padding:12px;display:grid}.my-report-info-tile svg{color:var(--brand-2)}.my-report-info-tile span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:900}.my-report-actions{background:var(--surface);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px;display:flex}.my-report-warning,.my-report-muted-action{color:var(--muted);margin:0}.my-report-warning{color:var(--danger);font-weight:800}.my-report-detail-section{border-top:1px solid var(--line);padding-top:12px}.my-report-notes,.my-report-empty-timeline{color:var(--muted);margin:0}.my-report-lines,.my-report-timeline{gap:10px;display:grid}.my-report-line,.my-report-timeline article{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px}.my-report-line header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.my-report-line header div{gap:3px;display:grid}.my-report-line header span,.my-report-line small,.my-report-timeline span{color:var(--muted);font-size:.78rem;font-weight:800}.my-report-line p,.my-report-timeline p{color:var(--ink);margin:8px 0 0}.my-report-line-grid{flex-wrap:wrap;gap:8px;margin-top:9px;display:flex}.my-report-line-grid span{background:var(--soft);color:var(--muted);border-radius:999px;padding:5px 8px;font-size:.75rem;font-weight:800}.my-report-timeline article{gap:3px;display:grid}@media (max-width:1100px){.my-reports-layout{grid-template-columns:1fr}.my-reports-summary,.my-report-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.my-reports-page{padding:14px}.my-reports-header{grid-template-columns:1fr}.my-reports-back,.my-reports-refresh{width:100%}.my-reports-summary,.my-report-detail-grid{grid-template-columns:1fr}.my-reports-filters{padding-bottom:4px;overflow-x:auto}.my-reports-filters button{white-space:nowrap}.my-report-detail-header,.my-report-card-top{flex-direction:column;align-items:flex-start}}*{box-sizing:border-box}body{font-family:var(--font-body,"Inter", Arial, Helvetica, sans-serif);background:var(--bg);color:var(--ink);margin:0;font-size:16px;line-height:1.45}h1,h2,h3{font-family:var(--font-display,"Arial Black", "Impact", sans-serif);margin-top:0}h1{line-height:1.1}code,pre,.tech-data,.field-editor input[type=date],.assignment-editor input[type=date]{font-family:var(--font-mono,"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{background:var(--bg);grid-template-columns:268px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--naes-blue);height:100vh;color:var(--surface);border-right:1px solid color-mix(in srgb, var(--brand-2) 54%, transparent);flex-direction:column;padding:24px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:12px;margin-bottom:28px;display:flex}.brand-mark{background:var(--surface-overlay-14);width:38px;height:38px;color:var(--brand);border-radius:8px;place-items:center;font-weight:800;display:grid}.brand strong{font-size:18px;display:block}.brand span{color:color-mix(in srgb, var(--surface) 74%, transparent);margin-top:2px;font-size:12px;display:block}.nav{gap:20px;display:grid}.nav-section{gap:6px;display:grid}.nav-heading{color:color-mix(in srgb, var(--surface) 62%, transparent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;padding:0 8px;font-size:11px;font-weight:800;display:block}.nav button,.nav a,.manual-link{width:100%;height:42px;color:color-mix(in srgb, var(--surface) 88%, transparent);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 12px;text-decoration:none;display:flex}.nav-group{gap:4px;display:grid}.nav-submenu{gap:3px;padding-left:28px;display:grid}.nav-submenu a{border-left:2px solid var(--surface-overlay-22);height:auto;min-height:34px;color:color-mix(in srgb, var(--surface) 80%, transparent);border-radius:7px;padding:0 10px;font-size:13px;font-weight:700}.nav button.active,.nav a.active,.nav button:hover,.nav a:hover,.manual-link:hover{background:var(--surface-overlay-16);color:var(--surface)}.nav-submenu a.active{border-left-color:var(--naes-yellow);background:var(--surface-overlay-22)}.sidebar-footer{gap:12px;margin-top:auto;padding-top:18px;display:grid}.sidebar-session{border:1px solid var(--surface-overlay-20);background:var(--surface-overlay-10);color:var(--surface);border-radius:8px;margin-top:12px;padding:12px}.sidebar-session .session-label,.sidebar-session small{color:color-mix(in srgb, var(--surface) 64%, transparent)}.sidebar-session strong{color:var(--surface)}.sidebar-session .button.compact{width:100%;margin-top:4px}.version-card{border:1px solid var(--surface-overlay-20);background:var(--surface-overlay-10);color:color-mix(in srgb, var(--surface) 80%, transparent);border-radius:8px;grid-template-columns:18px minmax(0,1fr);gap:9px;margin-top:10px;padding:10px 12px;display:grid}.version-card strong,.version-card span{display:block}.version-card strong{font-size:12px}.version-card span{color:color-mix(in srgb, var(--surface) 62%, transparent);margin-top:2px;font-size:11px;line-height:1.35}.workspace{background:var(--bg);min-width:0;padding:26px clamp(18px,4vw,48px)}.topbar{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.topbar h1{letter-spacing:0;margin:0 0 6px;font-size:clamp(28px,4vw,42px);line-height:1.08}.topbar p{max-width:720px;color:var(--muted);margin:0;line-height:1.55}.api-alert{border:1px solid var(--status-warning-border);background:var(--status-warning);color:var(--warning);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:-8px 0 18px;padding:12px 14px;font-size:14px;font-weight:700;display:flex}.global-dashboard-state .button{margin-top:14px}.session-card{border:1px solid var(--line);background:var(--surface);min-width:240px;box-shadow:var(--shadow);border-radius:8px;padding:14px}.session-card label,.field label{color:var(--muted);text-transform:uppercase;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.session-card select,.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:40px;color:var(--ink);border-radius:7px;padding:8px 10px}.session-card-user{gap:8px;display:grid}.session-card-user strong,.session-card-user small,.session-label{display:block}.session-card-user strong{font-size:15px}.session-card-user small{color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.session-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.login-page,.auth-state-page{background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel,.permission-card{border:1px solid var(--line);background:var(--surface);width:min(100%,440px);box-shadow:var(--shadow);border-radius:8px;gap:18px;padding:24px;display:grid}.login-brand,.login-heading,.permission-card>svg{color:var(--brand)}.login-brand,.login-heading{align-items:center;gap:12px;display:flex}.login-heading h1,.permission-card h1{margin:0 0 5px;font-size:28px;line-height:1.1}.login-heading p,.permission-card p,.login-note{color:var(--muted);margin:0;line-height:1.45}.login-form{gap:14px;display:grid}.login-test-users{border:1px solid var(--line);background:var(--soft);border-radius:8px;gap:8px;padding:10px;display:grid}.login-test-users>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:900}.login-test-users>small{color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.login-test-users>div{flex-wrap:wrap;gap:7px;display:flex}.login-test-users button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--brand);border-radius:8px;padding:0 10px;font-size:12px;font-weight:900}.login-test-users button:hover{border-color:var(--brand);background:var(--surface-strong)}.login-form label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:800;display:grid}.login-form input{border:1px solid var(--line);background:var(--surface);min-height:46px;color:var(--ink);border-radius:8px;padding:10px 12px}.login-submit{min-height:48px}.login-error{border:1px solid var(--danger);background:var(--status-danger);color:var(--danger);border-radius:8px;padding:10px 12px;font-size:13px;font-weight:800}.permission-card{text-align:center;justify-items:center}.permission-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.grid{gap:16px;display:grid}.metrics,.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.panel,.row-card,.form-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;transition:border-color .14s,box-shadow .14s}.metric{padding:18px}.metric span{color:var(--muted);font-size:13px}.metric strong{margin-top:8px;font-size:30px;display:block}.metric-success{border-color:var(--status-success-border);background:color-mix(in srgb, var(--success) 8%, var(--surface))}.metric-success strong{color:var(--success)}.metric-warning{border-color:var(--status-warning-border);background:var(--status-warning)}.metric-warning strong{color:var(--warning)}.metric-danger{border-color:var(--status-danger-border);background:var(--status-danger)}.metric-danger strong{color:var(--danger)}.production-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.global-dashboard{gap:14px;display:grid}.global-dashboard-hero,.dashboard-official-detail{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:16px;display:grid}.global-dashboard-hero{grid-template-columns:minmax(0,1fr) auto;align-items:start}.global-dashboard-hero h2,.dashboard-official-heading h2{margin:7px 0 5px;font-size:24px;line-height:1.15}.global-dashboard-hero p,.dashboard-official-heading p{color:var(--muted);margin:0}.global-dashboard-meta{border:1px solid var(--line);background:var(--soft);text-align:right;border-radius:8px;gap:4px;min-width:180px;padding:10px 12px;display:grid}.global-dashboard-meta strong{font-size:24px}.global-dashboard-meta span,.global-dashboard-meta small{color:var(--muted);font-weight:800}.global-kpis{grid-template-columns:repeat(7,minmax(0,1fr))}.global-executive-strip{grid-template-columns:minmax(220px,.9fr) repeat(3,minmax(0,1fr));gap:12px;display:grid}.global-risk-card,.global-kpi-group{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:126px;box-shadow:var(--shadow);border-radius:8px;align-content:space-between;gap:10px;padding:14px;display:grid}.global-risk-card{border-left:5px solid var(--success)}.global-risk-card.risk-attention{border-left-color:var(--warning);background:color-mix(in srgb, var(--warning) 20%, var(--surface))}.global-risk-card.risk-overload{border-left-color:var(--danger);background:color-mix(in srgb, var(--danger) 16%, var(--surface))}.global-risk-card.risk-empty{border-left-color:var(--muted);background:var(--soft)}.global-risk-card span,.global-kpi-group>strong{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.global-risk-card strong{font-size:30px;line-height:1}.global-risk-card p{color:var(--muted);margin:0;line-height:1.35}.global-kpi-group>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.global-kpi-chip{border:1px solid var(--line);background:var(--card-soft);border-radius:8px;gap:4px;min-width:0;padding:9px;display:grid}.global-kpi-chip small{color:var(--muted);font-size:11px;font-weight:800}.global-kpi-chip b{color:var(--ink);font-size:22px;line-height:1}.global-kpi-chip.chip-success b{color:var(--success)}.global-kpi-chip.chip-warning{border-color:var(--status-warning-border);background:var(--status-warning)}.global-kpi-chip.chip-warning b{color:var(--warning)}.global-kpi-chip.chip-danger{border-color:var(--status-danger-border);background:var(--status-danger)}.global-kpi-chip.chip-danger b{color:var(--danger)}.global-kpi-group-prominent{border-color:var(--line)}.dashboard-state-badge{border:1px solid var(--line);background:var(--soft);min-height:26px;color:var(--success);text-transform:uppercase;border-radius:999px;justify-self:end;align-items:center;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}.dashboard-state-badge.state-attention{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.dashboard-state-badge.state-overload{border-color:var(--status-danger-border);background:var(--status-danger);color:var(--danger)}.dashboard-state-badge.state-empty{border-color:var(--line);background:var(--soft);color:var(--muted)}.global-dashboard-grid{grid-template-columns:1fr;align-items:start;gap:16px;display:grid}.global-dashboard-grid-compact{grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr)}.global-dashboard-state{text-align:center;align-content:center;justify-items:center;min-height:220px}.global-dashboard-error{border-color:var(--status-danger-border);background:var(--status-danger)}.global-legend{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.global-legend span{color:var(--muted);align-items:center;gap:5px;font-size:12px;font-weight:900;display:inline-flex}.global-legend i{border-radius:999px;width:10px;height:10px;display:block}.global-legend .planned{background:var(--brand-2)}.global-legend .reported{background:var(--accent)}.global-legend .validated{background:var(--success)}.global-annual-layout{grid-template-columns:minmax(0,1fr) 150px;align-items:stretch;gap:12px;display:grid}.global-annual-chart{grid-template-columns:repeat(12,minmax(44px,1fr));align-items:end;gap:8px;min-height:230px;display:grid}.global-month{border:1px solid var(--line);background:var(--soft);min-width:0;height:220px;color:var(--ink);cursor:pointer;border-radius:8px;grid-template-rows:auto 1fr auto;gap:8px;padding:8px;display:grid;position:relative}.global-month.active{border-color:var(--brand);background:var(--status-success);box-shadow:inset 0 0 0 2px #1a4d371a}.global-month.peak:after{content:"";background:var(--accent);border-radius:999px;width:8px;height:8px;position:absolute;inset:5px 5px auto auto}.global-month span,.global-month strong{text-align:center;font-size:12px;font-weight:900}.global-month em{color:var(--warning);text-align:center;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:900}.global-month-bars{background:var(--soft);border-radius:7px;flex-direction:column-reverse;align-self:end;min-height:8px;display:flex;overflow:hidden}.global-month-bars i{min-height:2px;display:block}.global-month-bars .planned{background:var(--brand-2)}.global-month-bars .reported{background:var(--accent)}.global-month-bars .validated{background:var(--success)}.global-selected-month{border:1px solid var(--line);background:var(--soft);border-radius:8px;align-content:start;gap:8px;padding:12px;display:grid}.global-selected-month>span,.global-selected-month small{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.global-selected-month>strong{font-size:24px}.global-selected-month div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding-top:6px;display:flex}.global-selected-month b{font-size:15px}.global-monthly-stack,.global-worksite-list{gap:10px;display:grid}.global-monthly-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;gap:10px;display:grid}.global-monthly-card{border:1px solid var(--line);border-left:5px solid var(--brand);background:var(--card-soft);border-radius:8px;gap:10px;padding:12px;display:grid}.global-monthly-card>header,.global-monthly-card>header>div,.global-area-card>header>div{align-items:center;gap:8px;display:flex}.global-monthly-card>header{justify-content:space-between}.area-mark{background:var(--brand);width:28px;height:28px;color:var(--surface);border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.area-obras .area-mark{background:var(--success)}.area-aislamientos .area-mark{background:var(--brand-2)}.area-sin-clasificar .area-mark{background:var(--muted)}.global-area-total-bar{background:var(--soft);border-radius:999px;height:14px;overflow:hidden}.global-area-total-bar>span{border-radius:inherit;min-width:4px;height:100%;display:flex;overflow:hidden}.global-area-total-bar i{min-width:2px;height:100%;display:block}.global-area-total-bar .planned{background:var(--brand-2)}.global-area-total-bar .reported{background:var(--accent)}.global-area-total-bar .validated{background:var(--success)}.global-area-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.global-area-stats span{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:3px;min-width:0;padding:8px;display:grid}.global-area-stats small,.global-monthly-card footer span{color:var(--muted);font-size:11px;font-weight:800}.global-area-stats b{font-size:16px}.global-monthly-card footer{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.global-monthly-card footer strong{color:var(--brand);margin-left:auto;font-size:12px}.global-area-row,.global-worksite-row{border:1px solid var(--line);background:var(--card-soft);border-radius:8px;grid-template-columns:minmax(0,.55fr) minmax(0,1fr);gap:12px;padding:12px;display:grid}.global-area-row>div:first-child,.global-worksite-row>div{gap:4px;min-width:0;display:grid}.global-area-row strong,.global-worksite-row strong{overflow-wrap:anywhere}.global-area-row span,.global-worksite-row span{color:var(--muted);font-size:12px;font-weight:800}.global-area-bars{gap:8px;display:grid}.global-today-grid,.global-area-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.global-today-grid .metric,.global-area-card-grid .metric{box-shadow:none;padding:12px}.global-today-grid .metric strong,.global-area-card-grid .metric strong{font-size:22px}.global-area-section{gap:10px;display:grid}.global-area-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.global-area-card{border:1px solid var(--line);border-left:5px solid var(--brand);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:12px;padding:16px;display:grid}.global-area-card>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.global-area-card>header>div{min-width:0}.global-area-card>header strong{overflow-wrap:anywhere}.global-area-card>header span{color:var(--muted);font-size:12px;font-weight:900}.area-mantenimientos{border-left-color:var(--brand-2)}.area-obras{border-left-color:var(--success)}.area-aislamientos{border-left-color:var(--brand-2)}.area-sin-clasificar{border-left-color:var(--muted)}.global-dashboard-bottom-grid{grid-template-columns:minmax(260px,.82fr) minmax(420px,1.18fr) minmax(320px,.85fr);align-items:start;gap:16px;display:grid}.global-attention-panel{border-color:var(--status-danger-border)}.global-worksite-row{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center}.worksite-rank{background:var(--status-success);width:30px;height:30px;color:var(--brand);border-radius:999px;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:inline-flex}.dashboard-official-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.production-control-grid,.production-deviation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.production-control-grid-wide{align-items:start}.production-panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:16px;display:grid}.production-panel>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.production-panel h2{margin:7px 0 4px;font-size:22px;line-height:1.18}.production-panel p{color:var(--muted);margin:0;line-height:1.45}.production-bars{gap:10px;display:grid}.production-bar{gap:6px;display:grid}.production-bar>div{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:800;display:flex}.production-bar strong{color:var(--ink)}.production-bar i{background:var(--brand);border-radius:999px;height:12px;display:block}.production-bar-planned i{color:var(--muted);background:var(--muted)}.production-bar-reported i{background:var(--accent)}.production-bar-validated i{background:var(--success)}.production-delta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.production-delta-grid>div{border:1px solid var(--line);background:var(--soft);border-radius:8px;min-width:0;padding:11px}.production-delta-grid span,.production-delta-grid small{color:var(--muted);font-size:12px;font-weight:800;display:block}.production-delta-grid strong{margin:5px 0;font-size:22px;display:block}.official-gauge{border:1px solid var(--status-success-border);background:var(--status-success);border-radius:8px;gap:4px;padding:18px;display:grid;position:relative;overflow:hidden}.official-gauge strong{color:var(--success);font-size:34px;line-height:1}.official-gauge span{color:var(--muted);font-size:13px;font-weight:800}.official-gauge i{background:var(--success);border-radius:999px;height:8px;margin-top:8px;display:block}.production-section-panel{margin-bottom:16px}.production-section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.production-section-card{border:1px solid var(--line);border-top:3px solid var(--brand);background:var(--surface);border-radius:8px;gap:10px;padding:12px;display:grid}.production-section-card>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.production-section-meta{flex-wrap:wrap;gap:6px;display:flex}.production-section-meta span{background:var(--status-muted);min-height:24px;color:var(--muted);border-radius:6px;align-items:center;padding:0 7px;font-size:11px;font-weight:800;display:inline-flex}.production-table-wrap{overflow-x:auto}.production-table{min-width:620px}.production-attention-list{gap:9px;display:grid}.production-attention-item{border:1px solid var(--line);border-left:4px solid var(--muted);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.production-attention-item span,.production-attention-item strong,.production-attention-item small{display:block}.production-attention-item>div>span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.production-attention-item p{margin:5px 0}.production-attention-item small{color:var(--muted);font-size:12px;font-weight:700}.severity-critica{border-left-color:var(--danger);background:var(--status-danger)}.severity-alta,.severity-media{border-left-color:var(--warning);background:var(--status-warning)}.severity-baja{border-left-color:var(--success)}.dashboard-filters{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));align-items:end;gap:10px;margin-bottom:16px;padding:14px;display:grid}.dashboard-filters label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:800;display:grid}.dashboard-filters input,.dashboard-filters select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:38px;color:var(--ink);text-transform:none;border-radius:7px;padding:8px 10px}.dashboard-filters select:disabled{background:var(--status-muted);color:var(--brand);font-weight:800}.filter-search span{border:1px solid var(--line);background:var(--surface);border-radius:7px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;padding:0 10px;display:grid}.filter-search input{border:0;min-height:36px;padding:0}.section-workload-overview{gap:14px;margin-top:16px;display:grid}.section-workload-header{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px;display:flex}.dashboard-filters .filter-search{grid-column:span 2}.operations-workspace{align-content:start;gap:16px;display:grid}.operations-header{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px;display:flex}.operations-header h1{margin:7px 0 5px;font-size:30px;line-height:1.1}.operations-header p{color:var(--muted);margin:0}.operations-scope{border:1px solid var(--line);background:var(--soft);text-align:right;border-radius:8px;gap:4px;min-width:210px;padding:10px 12px;display:grid}.operations-scope strong{color:var(--brand-2)}.operations-scope span,.operations-scope small{color:var(--muted);font-size:12px;font-weight:800}.operations-filters{margin-bottom:0}.operations-filters .button{min-height:38px}.operations-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.operations-main-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:14px;display:grid}.operations-main-grid-wide{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.operations-panel{align-content:start;gap:12px;min-width:0;display:grid}.operations-state{align-items:center;gap:12px;padding:16px;display:flex}.operations-state h2{margin:0;font-size:18px}.operations-state p{color:var(--muted);margin:4px 0 0}.operations-status-bars{gap:10px;display:grid}.operations-status-row{grid-template-columns:minmax(120px,1fr) minmax(120px,2fr) 36px;align-items:center;gap:10px;display:grid}.operations-status-row span{color:var(--muted);font-size:12px;font-weight:800}.operations-status-row div{background:var(--soft);border-radius:999px;height:10px;overflow:hidden}.operations-status-row i{border-radius:inherit;background:var(--brand-2);height:100%;display:block}.operations-status-row strong{text-align:right}.operations-table{min-width:760px}.operations-table td strong,.operations-table td small{display:block}.operations-table td small{color:var(--muted);margin-top:3px;font-size:12px}.section-workload-header h2{margin:10px 0 6px;font-size:clamp(22px,2.4vw,30px);line-height:1.1}.section-workload-header p,.workload-comparison-head p{color:var(--muted);margin:0;line-height:1.45}.section-detail-dashboard{gap:14px;margin-top:16px;display:grid}.section-detail-header{border:1px solid var(--line);border-top:4px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px;display:flex}.section-detail-dashboard.section-obras .section-detail-header{border-top-color:var(--success)}.section-detail-dashboard.section-aislamientos .section-detail-header{border-top-color:var(--brand-2)}.section-detail-dashboard.section-mantenimientos .section-detail-header{border-top-color:var(--warning)}.section-detail-header h2{margin:10px 0 6px;font-size:clamp(28px,3vw,42px);line-height:1.05}.section-detail-header p{max-width:860px;color:var(--muted);margin:0;line-height:1.45}.section-detail-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.section-detail-kpi-grid .metric{padding:14px}.section-detail-kpi-grid .metric strong{font-size:24px}.section-detail-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(280px,.85fr);gap:14px;display:grid}.section-detail-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;align-content:start;gap:13px;padding:16px;display:grid}.section-detail-panel>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.section-detail-panel h3{margin:0;font-size:17px}.section-detail-panel header span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.section-detail-rows{gap:8px;display:grid}.section-workload-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.section-workload-card,.workload-comparison{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.section-workload-card{border-top:4px solid var(--line);gap:13px;padding:15px;display:grid}.section-workload-card.is-active{border-color:var(--line);border-top-color:var(--brand);box-shadow:0 18px 45px #17211c1f,inset 0 0 0 1px #1b433214}.section-workload-card.section-obras{border-top-color:var(--success)}.section-workload-card.section-aislamientos{border-top-color:var(--brand-2)}.section-workload-card.section-mantenimientos{border-top-color:var(--warning)}.section-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.section-card-title{color:var(--ink);text-align:left;background:0 0;border:0;gap:2px;padding:0;display:grid}.section-card-title span{color:var(--brand);text-transform:uppercase;font-size:13px;font-weight:900}.section-card-title strong{font-size:32px;line-height:1}.section-card-title small{color:var(--muted);font-size:12px;font-weight:700}.section-load-badge{background:var(--load-bg,var(--soft));min-width:90px;min-height:28px;color:var(--load-ink,var(--brand));border-radius:7px;justify-content:center;align-items:center;padding:0 9px;font-size:12px;font-weight:900;display:inline-flex}.section-card-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.section-card-metrics div{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-content:center;gap:4px;min-height:66px;padding:9px;display:grid}.section-card-metrics span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.section-card-metrics strong{font-size:18px}.section-mini-chart{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:4px;display:grid}.section-mini-month{background:var(--load-bg,var(--soft));min-width:0;min-height:72px;color:var(--load-ink,var(--muted));border:1px solid #0000;border-radius:7px;grid-template-rows:14px 1fr 14px;gap:4px;padding:5px 3px;display:grid}.section-mini-month.is-selected{border-color:color-mix(in srgb, var(--load-color,var(--brand)) 58%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--load-color,var(--brand)) 25%, transparent)}.section-mini-month span,.section-mini-month small{text-align:center;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;font-size:9px;font-weight:900;overflow:hidden}.section-mini-month i{width:100%;height:var(--month-fill,0);background:var(--load-color,var(--line));border-radius:5px 5px 2px 2px;align-self:end;min-height:4px}.section-weekly-load{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.section-weekly-load .compact-row{padding-bottom:6px;font-size:13px}.section-alert-list{gap:7px;display:grid}.section-alert{border:1px solid var(--line);background:var(--soft);color:var(--brand);text-align:left;border-radius:8px;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:7px;padding:9px;font-size:12px;font-weight:800;line-height:1.3;display:grid}.section-alert-warning{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.section-alert-danger{border-color:var(--status-danger-border);background:var(--status-danger);color:var(--danger)}.section-alert-empty{min-height:40px;margin:0;font-size:13px;line-height:1.35}.section-card-actions{flex-wrap:wrap;gap:8px;display:flex}.section-card-actions .button{text-decoration:none}.workload-comparison{padding:16px}.workload-comparison-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.workload-comparison-head h3{margin:0 0 4px;font-size:17px}.workload-ranking{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.workload-ranking-row{border:1px solid var(--line);background:var(--surface);min-height:64px;color:var(--ink);text-align:left;border-radius:8px;align-content:center;gap:4px;padding:10px;display:grid;position:relative;overflow:hidden}.workload-ranking-row.is-active{border-color:var(--brand)}.workload-ranking-row span,.workload-ranking-row strong{z-index:1;position:relative}.workload-ranking-row span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.workload-ranking-row strong{font-size:16px}.workload-ranking-row i{background:var(--brand-2);border-radius:0 6px 6px 0;height:5px;position:absolute;inset:auto auto 0 0}.load-vacia{--load-color:var(--naes-gray);--load-bg:var(--soft);--load-ink:var(--ink)}.load-baja{--load-color:color-mix(in srgb, var(--brand-2) 72%, var(--surface));--load-bg:color-mix(in srgb, var(--brand-2) 12%, var(--surface));--load-ink:var(--brand-2)}.load-media{--load-color:var(--brand-2);--load-bg:color-mix(in srgb, var(--brand-2) 22%, var(--surface));--load-ink:var(--brand-2)}.load-alta{--load-color:var(--accent);--load-bg:var(--status-warning);--load-ink:var(--warning)}.load-sobrecarga{--load-color:var(--danger);--load-bg:var(--status-danger);--load-ink:var(--danger)}.dashboard-anchor{height:1px;margin-top:-1px}.daily-summary{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:16px;margin-top:16px;display:grid}.daily-summary-main,.attention-list,.insight-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.daily-summary-main{padding:20px}.section-kicker{color:var(--brand);align-items:center;gap:8px;font-size:13px;font-weight:800;display:inline-flex}.daily-summary h2{margin:12px 0 8px;font-size:clamp(24px,3vw,36px);line-height:1.08}.daily-summary p{color:var(--muted);margin:0;line-height:1.45}.daily-pills{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.attention-list{align-content:start;gap:10px;padding:16px;display:grid}.attention-list>strong{font-size:16px}.attention-item{color:var(--danger);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:8px;font-size:13px;font-weight:700;line-height:1.35;display:grid}.dashboard-grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:18px;margin-top:18px;display:grid}.dashboard-grid-wide{grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr)}.annual-workload{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.annual-month-card{border:1px solid var(--line);background:var(--surface);min-height:116px;color:var(--ink);text-align:left;border-radius:8px;align-content:start;gap:6px;padding:10px;display:grid}.annual-month-card.active{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.annual-month-card span,.annual-month-card small,.annual-month-card em{display:block}.annual-month-card span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.annual-month-card strong{font-size:20px}.annual-month-card small,.annual-month-card em{color:var(--muted);font-size:11px;font-style:normal;font-weight:700;line-height:1.35}.workload-bar{background:var(--soft);border-radius:999px;height:7px;overflow:hidden}.workload-bar i{border-radius:inherit;background:var(--brand-2);height:100%;display:block}.level-alta .workload-bar i{background:var(--warning)}.level-sobrecarga .workload-bar i{background:var(--danger)}.insight-card{color:var(--brand);grid-template-columns:22px minmax(0,1fr);gap:10px;margin-top:12px;padding:12px;font-weight:700;line-height:1.4;display:grid}.weekly-ops{gap:16px;display:grid}.weekly-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.weekly-day{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-content:center;justify-items:center;gap:4px;min-height:88px;display:grid}.weekly-day span,.weekly-day small{color:var(--muted);font-size:12px;font-weight:700}.weekly-day strong{font-size:24px}.ops-split{grid-template-columns:1fr 1fr;gap:14px;display:grid}.ops-split h3{margin:0 0 10px;font-size:14px}.compact-list,.status-stack{gap:8px;display:grid}.compact-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}.compact-row:last-child{border-bottom:0}.compact-row span{color:var(--muted)}.priority-table th,.priority-table td{font-size:13px}.monthly-summary{gap:14px;display:grid}.monthly-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.monthly-metrics .metric{padding:12px}.monthly-metrics .metric strong{font-size:22px}.compact-card{box-shadow:none}.legacy-dashboard-block{display:none}.asana-page{gap:18px;display:grid}.asana-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.asana-hero h2{margin:10px 0 6px;font-size:clamp(24px,3vw,34px);line-height:1.1}.asana-hero p{max-width:760px;color:var(--muted);margin:0;line-height:1.5}.asana-actions{flex-wrap:wrap;gap:10px;display:flex}.button:disabled{cursor:not-allowed;opacity:.58}.lucide,button .lucide,button svg,.icon-button svg,.nav a svg,.nav button svg,.status svg,.my-report-card svg,.session-card svg{stroke-width:1.85px;flex-shrink:0;width:1.05rem;height:1.05rem}.asana-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.asana-summary-grid .metric{padding:12px}.asana-summary-grid .metric strong{font-size:22px}.asana-guardrail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.success-alert{border-left-color:var(--success);background:var(--status-success);color:var(--success)}.asana-review-summary,.asana-execution-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.asana-review-summary .metric,.asana-execution-grid .metric{padding:12px}.asana-review-summary .metric strong,.asana-execution-grid .metric strong{font-size:21px}.asana-review-filters{grid-template-columns:repeat(3,minmax(160px,1fr)) minmax(220px,1.2fr) auto auto;align-items:end;gap:10px;margin-bottom:14px;display:grid}.asana-review-filters label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;gap:6px;font-size:11px;font-weight:800;display:grid}.asana-review-filters select,.asana-review-filters input[type=text],.asana-review-search input{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);border-radius:8px;padding:0 10px;font-size:13px;font-weight:700}.asana-filter-check{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-auto-columns:max-content;grid-auto-flow:column;align-items:center;min-height:38px;padding:0 10px;color:var(--brand)!important;text-transform:none!important;letter-spacing:0!important;gap:8px!important;display:inline-flex!important}.asana-review-table-wrap{overflow-x:auto}.asana-table-caption{color:var(--muted);justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px;display:flex}.asana-table-caption strong{color:var(--brand)}.asana-review-table th,.asana-review-table td{min-width:120px}.asana-review-table td:first-child,.asana-review-table th:first-child,.asana-review-table td:nth-child(3),.asana-review-table th:nth-child(3){min-width:210px}.asana-link{color:var(--brand);font-weight:800;text-decoration:none}.asana-link:hover{text-decoration:underline}.asana-reasons{color:var(--danger)!important}.asana-execution-stack{gap:12px;display:grid}.asana-writeback-disabled{border:1px solid var(--status-warning-border);background:var(--status-warning);color:var(--warning);border-radius:8px;padding:12px 14px;font-weight:800}.content-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;margin-top:18px;display:grid}.panel{overflow:hidden}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.panel-header h2{margin:0;font-size:18px}.panel-body{padding:18px}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 10px}.table th{color:var(--muted);text-transform:uppercase;font-size:12px}.table tr:last-child td{border-bottom:0}.table-wrap{overflow-x:auto}.table td small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.35;display:block}.selected-row td{background:color-mix(in srgb, var(--brand-2) 8%, var(--surface))}.muted-status{background:var(--status-muted);color:var(--muted)}.status{background:var(--surface-strong);min-height:28px;color:var(--brand);border-radius:7px;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.status.pending{background:var(--status-warning);color:var(--warning)}.status.validated{background:color-mix(in srgb, var(--brand-2) 12%, var(--surface));color:var(--success)}.status.rejected{background:var(--status-danger);color:var(--danger)}.button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 13px;font-weight:700;transition:background-color .14s,border-color .14s,color .14s,filter .14s;display:inline-flex}.button.compact{border-radius:7px;min-height:32px;padding:0 10px;font-size:12px}.button.primary{border-color:var(--brand);background:var(--brand);color:var(--surface)}.button.primary:hover{filter:brightness(.95)}.button.danger{border-color:var(--danger);background:var(--status-danger);color:var(--danger)}.button.danger:hover{background:var(--danger);color:var(--surface)}.button.ghost{color:var(--brand-2);background:0 0;border-color:#0000}.button.ghost:hover{background:var(--surface-strong)}.row-list{gap:12px;display:grid}.row-card{padding:14px;box-shadow:0 10px 24px #0a0a0a0a}.row-card h3{margin:0 0 6px;font-size:16px}.row-card p{color:var(--muted);margin:0;line-height:1.45}.detail-list{gap:10px;display:grid}.worksite-archived-toggle{color:var(--muted);cursor:pointer;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;display:inline-flex}.worksite-detail-actions,.worksite-form-actions,.worksite-section-actions,.worksite-item-actions,.worksite-section-edit,.worksite-add-section{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.worksite-detail-actions{justify-content:flex-end}.worksite-section-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.worksite-provenance{margin-top:-4px;font-size:12px;font-style:italic}.worksite-notice{color:#1e8449;background:#2299541f;border:1px solid #22995459;border-radius:8px;margin-bottom:12px;padding:8px 12px;font-size:13px}.worksite-error{color:#c0392b;background:#c0392b1a;border:1px solid #c0392b59;border-radius:8px;margin-bottom:12px;padding:8px 12px;font-size:13px}.worksite-form{flex-direction:column;gap:12px;display:flex}.worksite-form .field input,.worksite-form .field select{width:100%}.worksite-form-actions{margin-top:4px}.worksite-edit-tools{border-top:1px dashed var(--line);flex-direction:column;gap:16px;margin-top:16px;padding-top:14px;display:flex}.worksite-add-item h4{color:var(--muted);margin:0 0 8px;font-size:13px}.worksite-add-item-fields{flex-wrap:wrap;gap:8px;display:flex}.worksite-add-item-fields input{flex:120px;min-width:0}.worksite-add-item-fields select{flex:140px}.worksites-stack{flex-direction:column;gap:18px;margin-top:18px;display:flex}.worksites-stack>.panel{width:100%}.worksite-list-scroll{-webkit-overflow-scrolling:touch;max-height:360px;overflow:auto}.worksite-list-scroll .worksite-list-table thead th{z-index:1;background:var(--surface);position:sticky;top:0}.worksite-list-name{text-align:left;padding-left:0;padding-right:0}.worksites-manager tr.row-selected td{background:var(--surface-soft,#2166ac14)}.worksites-manager tr.row-selected td:first-child{box-shadow:inset 3px 0 0 var(--brand)}.worksites-manager tr.row-selected .worksite-list-name{color:var(--ink);font-weight:800}.button.quiet-danger{color:var(--danger);background:0 0;border-color:#0000}.button.quiet-danger:hover{background:var(--status-danger);border-color:var(--status-danger-border);color:var(--danger)}.worksite-detail-empty{text-align:center;border:1px dashed var(--line);background:var(--surface-strong);border-radius:10px;padding:30px 18px}.worksite-detail-empty p{margin:0}.worksite-sections{gap:14px}.worksite-section .worksite-section-header{margin-bottom:10px}.worksite-section-empty{margin:4px 0 0}.worksite-items{table-layout:auto}.worksite-items th,.worksite-items td{padding:9px 10px}.worksite-items th.num,.worksite-items td.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.worksite-items td.worksite-item-code strong{white-space:nowrap}.worksite-items td.worksite-item-desc{word-break:break-word;overflow-wrap:anywhere;width:100%}.worksite-items td.worksite-item-unit{white-space:nowrap;color:var(--muted)}.worksite-items td.worksite-item-actions-cell{white-space:nowrap}.worksite-items .worksite-item-actions{flex-wrap:nowrap;justify-content:flex-end;gap:6px;display:flex}.worksite-item-edit-row td{background:var(--surface-strong);padding:10px}.worksite-item-edit{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.worksite-item-edit input{flex:140px;min-width:0}@media (max-width:640px){.worksite-list-scroll{max-height:none}}.worksite-asana-import{border-top:1px dashed var(--line);margin-top:14px;padding-top:12px}.worksite-asana-list ul{flex-direction:column;gap:6px;max-height:320px;margin:10px 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.worksite-asana-list li{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;display:flex}.worksite-asana-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.worksite-asana-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 4px;display:flex}.worksite-asana-search{border:1px solid var(--line);border-radius:8px;flex:200px;min-width:160px;padding:7px 10px;font-size:13px}.worksite-asana-check{cursor:pointer;flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.form-panel{background:var(--surface);padding:18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field.full{grid-column:1/-1}.line-editor{grid-template-columns:minmax(140px,.85fr) minmax(220px,1.35fr) 90px 112px minmax(160px,.9fr) 42px;align-items:end;gap:10px;display:grid}.line-editor>*{min-width:0}.line-editor input,.line-editor select{width:100%}.line-editor .icon-button{width:40px;min-width:40px;padding:0}.create-report-status{border:1px solid var(--line);background:var(--soft);min-height:40px;color:var(--muted);border-radius:7px;align-items:center;padding:8px 10px;font-weight:800;display:flex}.create-report-status.saved{border-color:var(--status-success-border);background:color-mix(in srgb, var(--success) 12%, var(--surface));color:var(--success)}.create-report-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.muted{color:var(--muted)}.admin-stack{gap:18px;display:grid}.worker-admin-layout,.user-admin-layout{grid-template-columns:minmax(0,1fr) clamp(280px,21vw,318px);gap:16px;display:grid}.user-admin-layout{grid-template-columns:minmax(0,1fr) clamp(280px,21vw,318px)}.user-admin-layout-closed,.worker-admin-layout-closed{grid-template-columns:minmax(0,1fr)}.worker-admin-main,.user-admin-main,.worker-editor,.user-editor{min-width:0}.worker-admin-toolbar{align-items:start;gap:14px;margin-bottom:12px;display:grid}.worker-admin-metrics{flex-wrap:wrap;gap:8px;display:flex}.worker-admin-metrics span{border:1px solid var(--line);background:var(--card-soft);min-width:86px;color:var(--muted);text-transform:uppercase;border-radius:8px;padding:9px 10px;font-size:11px;font-weight:800}.worker-admin-metrics strong{color:var(--ink);font-size:20px;display:block}.admin-section-toolbar{justify-content:space-between;align-items:end;gap:14px;margin-bottom:12px;display:flex}.admin-search{width:min(420px,100%)}.admin-metric-buttons button{border:1px solid var(--line);background:var(--card-soft);min-width:86px;color:var(--muted);text-align:left;text-transform:uppercase;border-radius:8px;padding:9px 10px;font-size:11px;font-weight:800}.admin-metric-buttons button:hover{border-color:var(--line);background:var(--soft)}.admin-result-bar{min-height:38px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.admin-result-bar strong{color:var(--warning)}.admin-stack .table-wrap{border:1px solid var(--line);background:var(--surface);max-height:64vh;box-shadow:inset 0 1px 0 var(--surface);border-radius:8px;overflow:auto}.admin-edit-table{table-layout:fixed;min-width:1080px}.user-table.admin-edit-table{min-width:1000px}.worker-table.admin-edit-table{min-width:1010px}.admin-edit-table th{z-index:3;background:var(--soft);box-shadow:inset 0 -1px 0 var(--line);position:sticky;top:0}.admin-edit-table th:first-child,.admin-edit-table .sticky-cell{z-index:2;background:var(--surface);box-shadow:1px 0 0 var(--line);position:sticky;left:0}.admin-edit-table th:first-child{z-index:4;background:var(--soft)}.admin-edit-table th:last-child,.admin-edit-table td:last-child{z-index:2;background:var(--surface);width:110px;min-width:110px;box-shadow:-1px 0 0 var(--line);position:sticky;right:0}.admin-edit-table th:last-child{z-index:4;background:var(--soft)}.admin-edit-table td{background:var(--surface)}.admin-edit-table tr:hover td{background:var(--soft)}.admin-edit-table tr:hover .sticky-cell,.admin-edit-table tr:hover td:last-child,.admin-edit-table .dirty-row .sticky-cell,.admin-edit-table .dirty-row td:last-child{background:inherit}.dirty-row td{background:var(--status-warning)}.dirty-row td:first-child{box-shadow:inset 4px 0 0 var(--warning), 1px 0 0 var(--line)}.inline-edit-shell{background:var(--soft);min-height:34px;color:var(--muted);border:1px solid #0000;border-radius:7px;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:6px;padding:0 9px;display:grid}.inline-edit-shell:focus-within,.inline-edit-shell:hover{border-color:var(--line);background:var(--surface)}.inline-edit-shell input,.inline-select{width:100%;min-height:32px;color:var(--ink);background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.inline-select{border:1px solid var(--line);background:var(--soft);border-radius:7px;padding:0 28px 0 9px}.stacked-inputs,.worker-link-stack{gap:6px;display:grid}.worker-link-stack>span:not(.status),.worker-link-stack>small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.inline-switch{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--muted);border-radius:7px;align-items:center;gap:7px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.inline-switch input{width:16px;height:16px}.inline-switch.permit-on{border-color:var(--status-success-border);background:color-mix(in srgb, var(--success) 16%, var(--surface));color:var(--success)}.popover-cell{position:relative}.inline-popover-trigger{border:1px solid var(--line);background:var(--surface);width:100%;min-height:34px;color:var(--ink);text-align:left;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;display:flex}.inline-popover-trigger:disabled{cursor:default}.inline-popover{z-index:40;border:1px solid var(--line);background:var(--surface);border-radius:8px;width:320px;max-height:390px;padding:12px;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 18px 44px #17211c29}.inline-popover-wide{width:min(460px,70vw);left:0;right:auto}.close-popover{position:absolute;top:8px;right:8px}.popover-check-list{gap:8px;padding-top:20px;display:grid}.popover-check-list label{border:1px solid var(--line);background:var(--soft);border-radius:7px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;padding:7px 8px;display:grid}.popover-check-list span{color:var(--ink);font-size:12px;font-weight:800}.popover-check-list small{color:var(--muted);margin:0}.popover-textarea{color:var(--muted);text-transform:uppercase;gap:8px;font-size:12px;font-weight:800;display:grid}.popover-textarea textarea{border:1px solid var(--line);width:100%;min-height:150px;color:var(--ink);text-transform:none;resize:vertical;border-radius:7px;padding:10px;font-size:13px;font-weight:500}.role-badge-list{flex-wrap:wrap;gap:5px;display:flex}.role-badge{background:var(--status-muted);min-height:24px;color:var(--brand);border-radius:7px;align-items:center;padding:0 8px;font-size:11px;font-weight:900;display:inline-flex}.role-admin,.role-direccion{background:color-mix(in srgb, var(--success) 12%, var(--surface));color:var(--brand-2)}.role-oficina,.role-compras{background:var(--status-warning);color:var(--warning)}.role-encargado,.role-capataz{background:color-mix(in srgb, var(--success) 12%, var(--surface));color:var(--success)}.permission-summary{gap:3px;display:grid}.icon-button{border:1px solid var(--line);background:var(--surface);width:32px;min-width:32px;height:32px;color:var(--brand);border-radius:7px;place-items:center;display:inline-grid}.icon-button:hover{border-color:var(--status-success-border);background:color-mix(in srgb, var(--success) 12%, var(--surface))}.inline-row-actions{justify-content:flex-end;min-width:96px}.toast{z-index:100;border:1px solid var(--line);background:var(--surface);max-width:min(360px,100vw - 48px);color:var(--ink);border-radius:8px;padding:12px 14px;font-size:14px;font-weight:800;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 46px #0a0a0a24}.toast-success{border-color:var(--status-success-border);color:var(--success)}.toast-warning{border-color:var(--status-warning-border);color:var(--warning)}.toast-danger{border-color:var(--status-danger-border);color:var(--danger)}.worker-search{width:min(360px,100%)}.worker-filters{grid-template-columns:repeat(7,minmax(118px,1fr));align-items:end;gap:8px;display:grid}.worker-filters label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:11px;font-weight:800;display:grid}.worker-filters select,.worker-filters input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:36px;color:var(--ink);font:inherit;text-transform:none;border-radius:7px;padding:8px 9px;font-size:12px}.worker-filters .worker-search{width:100%}.worker-table td{min-width:104px}.worker-table td:first-child{min-width:198px}.worker-table th:first-child,.worker-table td:first-child{width:198px}.worker-table th:nth-child(2),.worker-table td:nth-child(2){width:104px}.worker-table th:nth-child(3),.worker-table td:nth-child(3){width:106px}.worker-table th:nth-child(4),.worker-table td:nth-child(4){width:124px}.worker-table th:nth-child(5),.worker-table td:nth-child(5){width:116px}.worker-table th:nth-child(6),.worker-table td:nth-child(6){width:108px}.worker-table th:nth-child(7),.worker-table td:nth-child(7){width:144px}.worker-table th:nth-child(8),.worker-table td:nth-child(8){width:110px}.user-table td{min-width:124px}.user-table td:first-child{min-width:210px}.user-table th:first-child,.user-table td:first-child{width:190px}.user-table th:nth-child(2),.user-table td:nth-child(2){width:155px}.user-table th:nth-child(3),.user-table td:nth-child(3){width:110px}.user-table th:nth-child(4),.user-table td:nth-child(4){width:135px}.user-table th:nth-child(5),.user-table td:nth-child(5){width:145px}.user-table th:nth-child(6),.user-table td:nth-child(6){width:125px}.worker-table td:nth-child(7){min-width:158px}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.worker-editor,.user-editor{border:1px solid var(--line);border-left:3px solid var(--brand);background:linear-gradient(90deg, var(--bg) 0, var(--surface) 18px, var(--surface) 100%);border-radius:8px;align-content:start;gap:12px;max-height:calc(100vh - 112px);padding:14px;display:grid;position:sticky;top:18px;overflow:auto;box-shadow:-12px 0 26px #0a0a0a14}.worker-editor .editor-heading,.user-editor .editor-heading{z-index:2;background:var(--surface);justify-content:space-between;margin:-14px -14px 2px;padding:14px;position:sticky;top:-14px}.editor-heading-main{align-items:flex-start;gap:9px;min-width:0;display:flex}.editor-close{flex:none}.worker-editor label,.user-editor label,.worker-search,.checkbox-field{color:var(--muted);text-transform:uppercase;gap:7px;font-size:12px;font-weight:800;display:grid}.worker-editor input,.worker-editor select,.worker-editor textarea,.user-editor input,.user-editor select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:38px;color:var(--ink);font:inherit;text-transform:none;border-radius:7px;padding:9px 10px;font-size:13px}.worker-editor textarea{resize:vertical;min-height:116px}.editor-group{gap:8px;display:grid}.editor-group>span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.role-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.role-toggle{min-height:34px}.permission-grid{gap:8px;display:grid}.permission-toggle{border:1px solid var(--line);background:var(--surface);text-transform:none;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px}.permission-toggle span{gap:2px;display:grid}.permission-toggle strong{color:var(--ink);font-size:12px}.permission-toggle small{color:var(--muted);font-size:11px}.permission-toggle input{width:18px;min-height:18px;padding:0}.two-col-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.checkbox-field{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--brand);border-radius:7px;grid-template-columns:auto 1fr;align-self:end;align-items:center;padding:0 10px}.checkbox-field input{width:18px;min-height:18px;padding:0}.empty{color:var(--muted);text-align:center;padding:26px}@media (max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.nav{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.sidebar-footer{margin-top:18px}.topbar,.content-grid,.dashboard-filters,.daily-summary,.dashboard-grid,.dashboard-grid-wide,.section-workload-header,.section-detail-header,.section-detail-grid,.worker-admin-layout,.user-admin-layout,.asana-hero,.asana-guardrail-grid,.asana-review-filters{grid-template-columns:1fr;display:grid}.section-workload-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workload-ranking{grid-template-columns:1fr}.annual-workload{grid-template-columns:repeat(4,minmax(0,1fr))}.metrics,.section-detail-kpi-grid,.form-grid,.asana-summary-grid,.asana-review-summary,.asana-execution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.worker-admin-toolbar{align-items:stretch;display:grid}.worker-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-filters .filter-search{grid-column:auto}.daily-report-form-grid,.daily-report-line{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-report-line-index{grid-column:1/-1}.daily-report-line .line-partida,.daily-report-line .line-notes{grid-column:span 2}}@media (max-width:640px){.workspace,.sidebar{padding:18px 12px}.brand{margin-bottom:16px}.metrics,.section-detail-kpi-grid,.form-grid,.line-editor,.role-toggle-grid,.two-col-fields,.worker-filters,.annual-workload,.weekly-days,.ops-split,.monthly-metrics,.field-home-actions,.field-home-actions.compact,.field-home-grid,.section-workload-grid,.section-card-metrics,.section-weekly-load,.asana-summary-grid,.asana-review-summary,.asana-execution-grid{grid-template-columns:1fr}.section-mini-chart{grid-template-columns:repeat(6,minmax(0,1fr))}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.nav button,.nav a,.manual-link{height:auto;min-height:42px}.table{display:block;overflow-x:auto}.field-home{padding:14px}.field-home-header{display:grid}.field-home-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.field-operational-alert{grid-template-columns:auto minmax(0,1fr)}.field-operational-alert .button{grid-column:2;width:fit-content}.daily-report-form-header,.daily-report-lines>header,.daily-report-actions{display:grid}.daily-report-summary{text-align:left;width:100%}.daily-report-form-grid,.daily-report-line{grid-template-columns:1fr}.daily-report-form-grid .span-2,.daily-report-line .line-partida,.daily-report-line .line-notes,.daily-report-line-index{grid-column:auto}.daily-report-actions{position:static}.daily-report-actions>div{margin-right:0}}.field-page{min-height:100vh;padding:26px clamp(14px,3vw,38px)}.field-home{background:var(--bg);align-content:start;gap:16px;min-height:100vh;padding:18px;display:grid}.field-home-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.field-home-header span{color:var(--brand);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.field-home-header h1{margin:6px 0 5px;font-size:clamp(30px,8vw,42px);line-height:1.05}.field-home-header p{color:var(--muted);margin:0;font-weight:700}.field-home-logout{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--ink);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-weight:800;display:inline-flex}.field-home-date,.field-home-panel,.field-home-metrics>div{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.field-home-date{color:var(--brand);grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.field-home-date label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:800;display:grid}.field-home-date input,.field-home-date select{border:1px solid var(--line);border-radius:8px;min-height:42px;padding:8px 10px}.field-home-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.field-home-actions.compact{grid-template-columns:1fr 1fr;margin-top:6px}.field-action{border:1px solid var(--line);background:var(--surface);min-height:64px;color:var(--brand);text-align:center;box-shadow:var(--shadow);border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:12px;font-weight:900;text-decoration:none;display:flex}.field-action.primary{border-color:var(--brand);background:var(--brand);color:var(--surface)}.field-home-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.field-home-metrics>div{align-content:center;gap:6px;min-height:92px;padding:12px;display:grid}.field-home-metrics span{color:var(--muted);font-size:12px;font-weight:800}.field-home-metrics strong{font-size:30px}.field-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field-home-panel{align-content:start;gap:12px;padding:14px;display:grid}.field-home-panel header{color:var(--brand);align-items:center;gap:9px;display:flex}.field-home-list{gap:9px;display:grid}.field-home-item{border:1px solid var(--line);background:var(--card-soft);border-radius:8px;gap:4px;padding:10px;display:grid}.field-home-item span,.field-home-item small,.field-home-panel.future p{color:var(--muted);line-height:1.4}.field-home-assignment{align-items:start}.field-home-assignment p{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.4}.field-home-assignment .status{width:fit-content;margin-top:6px}.field-home-assignment .button{width:fit-content;min-height:34px;margin:8px 0 0}.field-home-item.warning strong{color:var(--warning)}.field-operational-alerts{gap:8px;display:grid}.field-operational-alerts.compact{margin-top:10px}.field-operational-alert{border:1px solid var(--line);background:var(--card-soft);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.field-operational-alert.warning{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.field-operational-alert.info{border-color:color-mix(in srgb, var(--brand) 30%, var(--line));background:color-mix(in srgb, var(--brand) 8%, var(--surface));color:var(--brand)}.field-operational-alert>div{gap:3px;min-width:0;display:grid}.field-operational-alert span,.field-operational-alert small{color:var(--muted);line-height:1.35}.field-operational-alert .button{white-space:nowrap;min-height:32px}.time-clock-panel{gap:14px}.time-clock-status,.time-clock-active{gap:5px;display:grid}.time-clock-status span,.time-clock-active span,.time-clock-select,.time-clock-entries>span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.time-clock-status strong,.time-clock-active strong{font-size:19px;line-height:1.2}.time-clock-active small,.time-clock-select small,.time-clock-entries small{color:var(--muted);line-height:1.35}.time-clock-select{gap:7px;display:grid}.time-clock-select select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:46px;color:var(--ink);border-radius:8px;padding:9px 10px;font-weight:800}.time-clock-button{border:1px solid var(--success);background:var(--success);width:100%;min-height:62px;color:var(--surface);border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:12px;font-size:16px;font-weight:900;display:inline-flex}.time-clock-button.danger{border-color:var(--danger);background:var(--danger)}.time-clock-button:disabled{cursor:not-allowed;opacity:.55}.time-clock-button svg{flex:none}.time-clock-button svg.lucide-loader-circle{animation:.9s linear infinite spin}.time-clock-warning,.time-clock-ok{border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:8px;padding:10px;font-size:13px;font-weight:800;line-height:1.35;display:grid}.time-clock-warning{border:1px solid var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.time-clock-ok{border:1px solid color-mix(in srgb, var(--success) 35%, var(--line));background:color-mix(in srgb, var(--success) 12%, var(--surface));color:var(--success)}.time-clock-entries{gap:8px;padding-top:4px;display:grid}.time-clock-entries div{border-top:1px solid var(--line);gap:3px;padding-top:8px;display:grid}.field-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.field-header h1{letter-spacing:0;margin:10px 0 6px;font-size:clamp(30px,4vw,44px);line-height:1.08}.field-header p{max-width:760px;color:var(--muted);margin:0;line-height:1.5}.field-back{color:var(--brand);align-items:center;gap:7px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.field-back.inline{background:0 0;border:0;width:fit-content;padding:0}.daily-report-page{background:var(--bg)}.daily-report-form-shell,.daily-report-form{gap:14px;max-width:1220px;margin:0 auto;display:grid}.daily-report-form-header,.daily-report-form-grid,.daily-report-lines,.daily-report-assignments,.daily-report-actions,.daily-report-empty{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.daily-report-assignments{gap:10px;padding:14px;display:grid}.daily-report-assignments>header div{gap:3px;display:grid}.daily-report-assignments>header strong{font-size:18px}.daily-report-assignments>header span{color:var(--muted);font-weight:700}.daily-report-assignments-empty{color:var(--muted);margin:0}.daily-report-assignment-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.daily-report-assignment-list li{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.daily-report-assignment-list li.is-applied{border-color:var(--brand)}.daily-report-assignment-info{gap:2px;min-width:0;display:grid}.daily-report-assignment-info small{color:var(--muted);font-weight:700}.daily-report-assignment-existing{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.daily-report-assignment-muted{color:var(--muted);font-size:.85rem;font-weight:700}.daily-report-form-header{justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.daily-report-form-header h1{margin:8px 0 5px;font-size:clamp(30px,5vw,44px);line-height:1.05}.daily-report-form-header p{color:var(--muted);margin:0;font-weight:700}.daily-report-summary{border:1px solid var(--line);background:var(--soft);text-align:right;border-radius:8px;gap:4px;min-width:150px;padding:12px;display:grid}.daily-report-summary span,.daily-report-summary small{color:var(--muted);font-size:12px;font-weight:800}.daily-report-summary strong{font-size:30px}.daily-report-toast{border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-weight:800;display:flex}.daily-report-toast button{width:28px;height:28px;color:inherit;background:#0000000d;border:0;border-radius:999px;font-weight:900}.daily-report-toast-success{border-color:var(--status-success-border);background:var(--status-success);color:var(--success)}.daily-report-toast-warning{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.daily-report-toast-danger{border-color:var(--status-danger-border);background:var(--status-danger);color:var(--danger)}.daily-report-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.daily-report-form-grid label,.daily-report-line label{min-width:0;color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:900;display:grid}.daily-report-form-grid input,.daily-report-form-grid select,.daily-report-form-grid textarea,.daily-report-line input,.daily-report-line select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;color:var(--ink);font:inherit;text-transform:none;border-radius:8px;padding:10px;font-weight:800}.daily-report-form-grid textarea{resize:vertical;line-height:1.45}.daily-report-form-grid .span-2,.daily-report-line .span-2{grid-column:span 2}.daily-report-lines{gap:12px;padding:14px;display:grid}.daily-report-lines>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.daily-report-lines>header div{gap:3px;display:grid}.daily-report-lines>header strong{font-size:18px}.daily-report-lines>header span{color:var(--muted);font-weight:700}.daily-report-line-list{gap:10px;display:grid}.daily-report-line{border:1px solid var(--line);background:var(--card-soft);border-radius:8px;grid-template-columns:34px minmax(140px,.8fr) minmax(220px,1.4fr) 110px 120px minmax(150px,1fr) auto;align-items:end;gap:10px;padding:12px;display:grid}.daily-report-line-index{background:color-mix(in srgb, var(--success) 16%, var(--surface));width:34px;height:34px;color:var(--brand);border-radius:999px;justify-content:center;align-self:center;align-items:center;font-weight:900;display:inline-flex}.daily-report-line small{color:var(--muted);font-size:11px;font-weight:800}.daily-report-actions{z-index:5;justify-content:flex-end;align-items:center;gap:10px;padding:12px;display:flex;position:sticky;bottom:10px}@media (max-width:1100px){.daily-report-lines>header .button,.daily-report-line>.icon-button,.daily-report-actions .button,.daily-report-toast .button{min-width:44px;min-height:44px}}@media (min-width:641px) and (max-width:1100px){.daily-report-line{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-report-line .span-2,.daily-report-line .line-partida,.daily-report-line .line-notes,.daily-report-line-index{grid-column:1/-1}}.daily-report-photos{flex-direction:column;gap:10px;display:flex}.daily-report-photos .photo-grid{flex-wrap:wrap;gap:10px;display:flex}.daily-report-photos .photo-item{position:relative}.daily-report-photos .photo-thumb{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:96px;height:96px;padding:0;display:flex;overflow:hidden}.daily-report-photos .photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.daily-report-photos .photo-thumb-failed{border:1px dashed var(--line);width:96px;height:96px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.daily-report-photos .photo-item .icon-button{padding:4px;position:absolute;top:4px;right:4px}.daily-report-photos .photo-upload{gap:8px;display:grid}.daily-report-photos .photo-upload-options{flex-wrap:wrap;gap:10px;display:flex}.daily-report-photos .photo-upload-options label{color:var(--muted);gap:3px;min-width:220px;font-size:.78rem;font-weight:800;display:grid}.daily-report-photos .photo-upload-buttons{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.daily-report-photos .photo-line-badge{text-overflow:ellipsis;white-space:nowrap;color:#fff;pointer-events:none;background:#0f172ac7;border-radius:5px;max-width:88px;padding:2px 5px;font-size:10px;font-weight:800;position:absolute;bottom:4px;left:4px;overflow:hidden}.daily-report-photos .photo-error{color:var(--danger,#c0392b);margin:0;font-size:13px}.badge{letter-spacing:.02em;text-transform:uppercase;vertical-align:middle;border-radius:6px;align-items:center;gap:4px;margin-left:6px;padding:1px 7px;font-size:10.5px;font-weight:700;display:inline-flex}.badge.extras{background:var(--status-warning);color:var(--warning);border:1px solid color-mix(in srgb, var(--warning) 35%, transparent)}.worksite-add-extras{flex-direction:column;gap:4px;margin-top:10px;display:flex}.worksite-team{border:1px solid var(--border,#0000001f);background:color-mix(in srgb, var(--panel,#fff) 92%, transparent);border-radius:10px;margin:14px 0 18px;padding:14px}.worksite-team-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.worksite-team-header h3{margin:0;font-size:15px}.worksite-team-hint{cursor:help;opacity:.6;font-weight:400}.worksite-team-warning{color:#9a6a00;background:#f39c121f;border:1px solid #f39c1266;border-radius:8px;margin:0 0 8px;padding:7px 11px;font-size:13px}.worksite-team-list{flex-direction:column;gap:6px;display:flex}.worksite-team-row{border-bottom:1px solid var(--border,#00000014);flex-wrap:wrap;align-items:center;gap:8px;padding:7px 0;display:flex}.worksite-team-row:last-child{border-bottom:none}.worksite-team-person{flex:140px;min-width:140px;font-weight:600}.worksite-team-dates{font-size:12px}.worksite-team-state.active{color:#1e8449}.worksite-team-state.future{color:#2471a3}.worksite-team-state.expired{color:#7f8c8d}.worksite-team-actions{margin-left:auto}.worksite-team-add{border:1px dashed var(--border,#0003);border-radius:8px;flex-direction:column;gap:10px;margin-bottom:12px;padding:12px;display:flex}.worksite-team-add .field input,.worksite-team-add .field select{width:100%}.worksite-team-add-dates{flex-wrap:wrap;gap:10px;display:flex}.worksite-team-add-dates .field{flex:140px}.worksite-team-add-actions{gap:8px;display:flex}.worksite-team-inactive{margin-top:10px}.worksite-team-inactive summary{cursor:pointer;color:var(--muted,#667);font-size:13px}.daily-report-incidents{flex-direction:column;gap:12px;display:flex}.daily-report-incidents .incident-error{color:var(--danger,#c0392b);margin:0;font-size:13px}.daily-report-incidents .incident-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.daily-report-incidents .incident-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.daily-report-incidents .incident-card.incident-active{border-color:color-mix(in srgb, var(--warning) 45%, var(--line));background:color-mix(in srgb, var(--status-warning) 30%, var(--surface))}.daily-report-incidents .incident-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.daily-report-incidents .incident-card-header strong{display:block}.daily-report-incidents .incident-type{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-right:6px;font-size:11px;font-weight:700;display:inline-block}.daily-report-incidents .incident-severity{text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--line);color:var(--muted);vertical-align:middle;border-radius:5px;padding:1px 6px;font-size:10px;font-weight:800;display:inline-block}.daily-report-incidents .incident-severity-media{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.daily-report-incidents .incident-severity-alta{border-color:var(--danger,#c0392b);color:var(--danger,#c0392b)}.daily-report-incidents .incident-severity-critica{border-color:var(--danger,#c0392b);background:var(--danger,#c0392b);color:#fff}.daily-report-incidents .incident-description{margin:0;font-size:13px}.daily-report-incidents .incident-meta{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.daily-report-incidents .incident-proposed{color:var(--ink);font-weight:600}.daily-report-pending-proposals{background:#d977061f;border:1px solid #d9770659;border-radius:10px;margin:10px 0 0;padding:10px 12px;font-size:13px}.daily-report-incidents .incident-resolution{border-left:3px solid var(--success);padding-left:10px;font-size:13px}.daily-report-incidents .incident-resolution p{margin:0 0 2px}.daily-report-incidents .incident-resolution small{color:var(--muted)}.daily-report-incidents .incident-actions{flex-wrap:wrap;gap:8px;display:flex}.daily-report-incidents .incident-manage{border-top:1px dashed var(--line);flex-direction:column;gap:8px;padding-top:8px;display:flex}.daily-report-incidents .incident-note,.daily-report-incidents .incident-edit-form textarea,.daily-report-incidents .incident-edit-form input,.daily-report-incidents .incident-edit-form select,.daily-report-incidents .incident-add-grid textarea,.daily-report-incidents .incident-add-grid input,.daily-report-incidents .incident-add-grid select{width:100%}.daily-report-incidents .incident-edit-form,.daily-report-incidents .incident-add-form{flex-direction:column;gap:8px;display:flex}.daily-report-incidents .incident-edit-form label,.daily-report-incidents .incident-add-grid label{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.daily-report-incidents .incident-add-form{border:1px dashed var(--line);border-radius:10px;padding:12px}.daily-report-incidents .incident-add-heading{align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.daily-report-incidents .incident-add-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.daily-report-incidents .incident-add-grid .incident-add-description{grid-column:1/-1}.daily-report-actions>div{flex-wrap:wrap;align-items:center;gap:10px;margin-right:auto;display:flex}.daily-report-footer-totals{color:var(--muted);white-space:nowrap;font-size:.82rem;font-weight:800}.daily-report-empty{color:var(--muted);text-align:center;justify-items:center;gap:8px;padding:22px;display:grid}.daily-report-empty strong{color:var(--ink)}@media (max-width:980px){.daily-report-form-grid,.daily-report-line{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-report-line-index{grid-column:1/-1}.daily-report-line .line-partida,.daily-report-line .line-notes{grid-column:span 2}}@media (max-width:640px){.daily-report-form-header,.daily-report-lines>header,.daily-report-actions{display:grid}.daily-report-summary{text-align:left;width:100%}.daily-report-form-grid,.daily-report-line{grid-template-columns:1fr}.daily-report-form-grid .span-2,.daily-report-line .span-2,.daily-report-line .line-partida,.daily-report-line .line-notes,.daily-report-line-index{grid-column:auto}.daily-report-actions{position:static}.daily-report-actions>div{margin-right:0}}@media (max-width:768px){.daily-report-form-grid input,.daily-report-form-grid select,.daily-report-line input,.daily-report-line select,.daily-report-actions .button{min-height:46px}.daily-report-actions{border-radius:8px 8px 0 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;position:sticky;bottom:0}.daily-report-actions>div{grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;display:flex}}.manual-page{max-width:1180px;margin:0 auto}.manual-version{border:1px solid var(--line);background:var(--surface);min-width:230px;box-shadow:var(--shadow);border-radius:8px;grid-template-columns:20px minmax(0,1fr);gap:10px;padding:12px 14px;display:grid}.manual-version strong,.manual-version span{display:block}.manual-version span{color:var(--muted);margin-top:3px;font-size:12px;font-weight:700}.manual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.manual-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;align-content:start;gap:12px;padding:16px;display:grid}.manual-card header{color:var(--brand);align-items:center;gap:10px;display:flex}.manual-card h2{color:var(--ink);margin:0;font-size:17px}.manual-card ul{color:var(--muted);gap:9px;margin:0;padding-left:18px;font-size:14px;line-height:1.45;display:grid}.manual-shortcuts{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.manual-shortcuts a{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--brand);border-radius:8px;align-items:center;gap:9px;padding:0 13px;font-weight:800;text-decoration:none;display:inline-flex}.manual-shortcuts a:hover{border-color:var(--brand)}.field-header-actions,.week-switcher{align-items:end;gap:8px;display:flex}.field-header label,.field-toolbar label,.field-editor label,.work-palette label,.assignment-editor label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:12px;font-weight:700;display:grid}.field-header input,.field-toolbar select,.field-editor input,.field-editor select,.field-editor textarea,.work-palette input,.work-palette select,.assignment-editor input,.assignment-editor select,.assignment-editor textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:40px;color:var(--ink);text-transform:none;border-radius:7px;padding:8px 10px}.icon-button{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--brand);border-radius:8px;place-items:center;display:grid}.field-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.field-metrics div{border:1px solid var(--line);background:var(--surface);min-height:82px;box-shadow:var(--shadow);border-radius:8px;padding:16px}.field-metrics span{color:var(--muted);font-size:13px}.field-metrics strong{margin-top:8px;font-size:28px;display:block}.field-metrics .metric-warning{border-color:var(--status-danger-border);background:var(--status-danger)}.field-metrics .metric-warning strong{color:var(--danger)}.field-metrics .metric-review{border-color:var(--status-warning-border);background:var(--status-warning)}.field-metrics .metric-review strong{color:var(--warning)}.validation-workspace{max-width:1720px;margin:0 auto}.validation-header{align-items:center}.validation-status-panel{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.validation-toast{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--ink);box-shadow:var(--shadow);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:10px 12px;font-weight:800;display:flex}.validation-toast button{width:28px;height:28px;color:inherit;background:0 0;border:0;border-radius:7px;place-items:center;display:grid}.validation-toast-success{border-color:var(--status-success-border);background:var(--status-success);color:var(--success)}.validation-toast-warning{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.validation-toast-danger{border-color:var(--status-danger-border);background:var(--status-danger);color:var(--danger)}.validation-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.validation-filters{grid-template-columns:140px repeat(6,minmax(126px,1fr)) minmax(190px,1.3fr)}.validation-filters input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:40px;color:var(--ink);text-transform:none;border-radius:7px;padding:8px 10px}.validation-search{min-width:190px}.validation-layout{grid-template-columns:minmax(360px,.9fr) minmax(0,1.7fr);align-items:start;gap:14px;display:grid}.validation-list-panel,.validation-detail-panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow);border-radius:8px}.validation-list-panel{gap:10px;max-height:calc(100vh - 28px);padding:12px;display:grid;position:sticky;top:14px;overflow:hidden}.validation-detail-panel{gap:14px;padding:14px;display:grid}.validation-panel-heading,.validation-section-heading,.validation-detail-header,.validation-card-title,.validation-line header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.validation-panel-heading strong,.validation-panel-heading span,.validation-detail-header h2,.validation-detail-header p,.validation-line header strong,.validation-line header span{display:block}.validation-panel-heading span,.validation-detail-header p,.validation-line header span{color:var(--muted);margin-top:3px;font-size:13px;line-height:1.35}.bulk-panel{border:1px solid var(--line);background:var(--soft);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.bulk-panel-active{border-color:var(--status-warning-border);background:var(--status-warning)}.bulk-panel strong,.bulk-panel span,.bulk-panel em{display:block}.bulk-panel span,.bulk-panel em{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.35}.bulk-panel em{color:var(--warning);font-style:normal;font-weight:800}.validation-report-list{gap:9px;padding-right:2px;display:grid;overflow-y:auto}.validation-report-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.validation-report-card.active{border-color:var(--brand);background:color-mix(in srgb, var(--success) 8%, var(--surface));box-shadow:inset 4px 0 0 var(--brand)}.bulk-check{place-items:center;display:grid}.bulk-check input{width:16px;height:16px}.validation-report-main{min-width:0}.validation-card-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.validation-report-card p{color:var(--muted);margin:6px 0;font-size:13px}.validation-card-meta{flex-wrap:wrap;gap:6px;display:flex}.validation-card-meta span{background:var(--status-muted);min-height:24px;color:var(--muted);border-radius:6px;align-items:center;padding:0 7px;font-size:11px;font-weight:800;display:inline-flex}.validation-card-meta span.meta-warning{background:var(--status-warning);color:var(--warning)}.validation-empty{border:1px dashed var(--line);min-height:120px;color:var(--muted);text-align:center;border-radius:8px;place-items:center;gap:8px;padding:18px;font-weight:800;display:grid}.detail-empty{min-height:360px}.validation-detail-header h2{margin:8px 0 2px;font-size:24px;line-height:1.15}.validation-detail-section{border:1px solid var(--line);background:var(--soft);border-radius:8px;gap:10px;padding:12px;display:grid}.validation-general-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.validation-info-tile{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:5px 8px;min-width:0;padding:10px;display:grid}.validation-info-tile span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.validation-info-tile strong{text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;min-width:0;overflow:hidden}.validation-textarea,.validation-line-notes textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:76px;color:var(--ink);resize:vertical;border-radius:7px;padding:9px 10px}.validation-lines,.validation-comments,.validation-history{gap:10px;display:grid}.validation-line{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:11px;padding:12px;display:grid}.validation-line.changed{border-color:var(--status-warning-border);background:color-mix(in srgb, var(--warning) 20%, var(--surface))}.validation-line-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.comparison-box{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:7px;min-width:0;padding:10px;display:grid}.comparison-box span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.comparison-box strong{font-size:16px}.comparison-box small{color:var(--muted);line-height:1.35}.comparison-box label,.validation-line-notes{color:var(--muted);text-transform:uppercase;gap:5px;font-size:12px;font-weight:800;display:grid}.comparison-box input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:36px;color:var(--ink);border-radius:7px;padding:7px 8px}.difference .negative{color:var(--danger)}.difference .positive{color:var(--success)}.validation-photo-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.validation-photo{border:1px solid var(--line);background:var(--surface);min-height:74px;color:var(--brand);border-radius:8px;gap:5px;padding:10px;font-weight:800;text-decoration:none;display:grid}.validation-photo small{color:var(--muted);font-weight:700}.validation-comments article,.validation-history article{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:20px minmax(0,1fr);gap:9px;padding:10px;display:grid}.validation-comments article{grid-template-columns:minmax(0,1fr)}.validation-comments article div,.validation-history article div{min-width:0}.validation-comments strong,.validation-comments span,.validation-history strong,.validation-history span{display:block}.validation-comments span,.validation-history span{color:var(--muted);margin-top:3px;font-size:12px;font-weight:700}.validation-comments p,.validation-history p{color:var(--muted);margin:7px 0 0;line-height:1.4}.validation-comment-form{gap:8px;display:grid}.validation-actions{z-index:5;border:1px solid var(--line);background:var(--surface-overlay-97);border-radius:8px;gap:10px;padding:12px;display:grid;position:sticky;bottom:0;box-shadow:0 -8px 24px #17211c14}.validation-action-row,.validation-reopen-row{flex-wrap:wrap;gap:8px;display:flex}.validation-reopen-row .validation-textarea{flex:260px;min-height:42px}.annual-summary-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:12px;margin-bottom:14px;padding:14px;display:grid}.annual-summary-panel-collapsed{padding-bottom:14px}.annual-summary-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.annual-summary-title{grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;display:grid}.annual-summary-title svg{color:var(--brand)}.annual-summary-title h2{margin:0;font-size:18px;line-height:1.2}.annual-summary-title p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.4}.annual-summary-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.annual-summary-toggle{white-space:nowrap}.annual-load-legend{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.annual-load-dot{color:var(--muted);text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:900;display:inline-flex}.annual-load-dot:before{background:var(--load-color,var(--brand-2));content:"";border-radius:3px;width:10px;height:10px}.annual-load-dot.load-baja,.annual-month-summary-card.load-baja,.annual-chart-column.load-baja{--load-color:color-mix(in srgb, var(--brand-2) 72%, var(--surface));--load-bg:color-mix(in srgb, var(--brand-2) 12%, var(--surface));--load-ink:var(--brand-2)}.annual-load-dot.load-media,.annual-month-summary-card.load-media,.annual-chart-column.load-media{--load-color:var(--brand-2);--load-bg:color-mix(in srgb, var(--brand-2) 22%, var(--surface));--load-ink:var(--brand-2)}.annual-load-dot.load-alta,.annual-month-summary-card.load-alta,.annual-chart-column.load-alta{--load-color:var(--accent);--load-bg:var(--status-warning);--load-ink:var(--warning)}.annual-load-dot.load-sobrecarga,.annual-month-summary-card.load-sobrecarga,.annual-chart-column.load-sobrecarga{--load-color:var(--danger);--load-bg:var(--status-danger);--load-ink:var(--danger)}.annual-month-summary-card.load-vacia,.annual-chart-column.load-vacia{--load-color:var(--naes-gray);--load-bg:var(--soft);--load-ink:var(--ink)}.annual-chart-panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:10px;padding:12px 12px 10px;display:grid}.annual-chart-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.annual-chart-header h3{text-transform:uppercase;margin:0;font-size:15px;font-weight:900;line-height:1.2}.annual-chart-header p{color:var(--muted);margin:3px 0 0;font-size:12px;font-weight:700}.annual-chart-plot{border-bottom:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:10px;height:210px;padding-top:8px;display:grid}.annual-chart-column{min-width:0;height:100%;color:var(--load-ink);text-align:center;background:0 0;border:0;grid-template-rows:20px minmax(0,1fr) 24px;align-items:end;gap:5px;padding:0;display:grid}.annual-chart-column:hover .annual-chart-bar-fill{filter:saturate(1.08);box-shadow:0 0 0 2px color-mix(in srgb, var(--load-color) 30%, transparent)}.annual-chart-column.is-focused .annual-chart-bar-fill{outline:2px solid var(--brand);outline-offset:2px}.annual-chart-value{min-height:16px;color:var(--load-ink);align-self:end;font-size:12px;font-weight:900;line-height:1}.annual-chart-column.load-vacia .annual-chart-value{color:var(--status-muted)}.annual-chart-bar{justify-content:center;align-items:flex-end;height:100%;display:flex}.annual-chart-bar-fill{width:min(74%,78px);height:var(--bar-height);background:repeating-linear-gradient(to bottom, var(--load-color) 0, var(--load-color) 6px, var(--surface) 6px, var(--surface) 8px);min-height:2px;box-shadow:inset 0 1px 0 var(--surface-overlay-40);border-radius:5px 5px 0 0}.annual-chart-column.load-vacia .annual-chart-bar-fill{background:var(--status-muted);box-shadow:none}.annual-chart-month{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.annual-month-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.annual-month-summary-card{border:1px solid var(--line);border-top:3px solid var(--load-color);background:linear-gradient(180deg, var(--load-bg) 0, var(--surface) 38px);border-radius:8px;align-content:start;gap:8px;min-height:168px;padding:10px;display:grid;box-shadow:0 10px 24px #17211c0a}.annual-month-summary-card.is-expanded{align-content:start}.annual-month-summary-card.is-focused{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand), 0 12px 28px #17211c14}.annual-month-summary-card.is-empty{opacity:.72}.annual-month-head{width:100%;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1px 8px;padding:0;display:grid}.annual-month-head:hover .annual-month-name{color:var(--brand)}.annual-month-name{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:900}.annual-month-head strong{color:var(--ink);font-size:23px;line-height:1}.annual-month-unit{color:var(--muted);font-size:12px;font-weight:800}.annual-load-badge{border:1px solid color-mix(in srgb, var(--load-color) 45%, var(--surface));background:var(--surface);width:fit-content;color:var(--load-ink);text-transform:uppercase;border-radius:999px;justify-self:end;padding:2px 6px;font-size:10px;font-weight:900}.annual-month-card-meta{min-height:24px;color:var(--muted);flex-wrap:wrap;gap:6px;font-size:11px;font-weight:800;display:flex}.annual-month-card-meta span{background:var(--status-muted);border-radius:999px;padding:3px 6px}.annual-month-empty{border:1px dashed var(--line);min-height:54px;color:var(--muted);text-align:center;border-radius:8px;place-items:center;padding:8px;font-size:12px;font-weight:700;display:grid}.annual-month-work-list{gap:6px;display:grid}.annual-month-summary-card.is-expanded .annual-month-work-list{max-height:260px;padding-right:2px;overflow:auto}.annual-work-item{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;border-radius:8px;gap:2px;padding:7px;display:grid}.annual-work-item:hover{border-color:var(--line);background:color-mix(in srgb, var(--brand) 7%, var(--surface))}.annual-work-item.has-alert{border-color:var(--status-danger-border);background:var(--status-danger)}.annual-work-code{color:var(--brand);font-size:11px;font-weight:900}.annual-work-name{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;font-weight:800;line-height:1.28;display:-webkit-box;overflow:hidden}.annual-work-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.annual-status-chip{text-transform:uppercase;border:1px solid #0000;border-radius:999px;width:fit-content;padding:2px 6px;font-size:10px;font-weight:900}.annual-card-more{border:1px solid var(--line);background:var(--surface);width:100%;min-height:30px;color:var(--brand);border-radius:7px;font-size:12px;font-weight:800}.annual-card-more:hover{border-color:var(--brand);background:var(--status-success)}.annual-summary-insight{border:1px solid var(--line);background:var(--status-muted);color:var(--brand-2);border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;padding:9px 11px;font-size:13px;font-weight:800;line-height:1.4;display:grid}.annual-summary-insight.insight-warning{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.annual-summary-insight.insight-danger{border-color:var(--status-danger-border);background:var(--status-danger);color:var(--danger)}.conflict-strip{border:1px solid var(--status-danger-border);background:var(--status-danger);color:var(--danger);border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.conflict-strip strong,.conflict-strip span{display:block}.conflict-strip span{color:var(--danger);margin-top:2px;font-size:13px;line-height:1.4}.field-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:14px;padding:12px;display:flex}.field-team-banner{border:1px solid var(--line);border-left:3px solid var(--brand);background:var(--surface);color:var(--muted);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin:-2px 0 14px;padding:9px 14px;font-size:13px;font-weight:600;display:flex}.field-team-banner .field-team-empty{color:var(--danger);font-weight:700}.field-team-banner .field-team-toggle{white-space:nowrap;margin-left:auto}.field-toolbar label{flex:126px;min-width:126px}.field-toolbar label:first-child{flex:2 320px;min-width:min(360px,100%)}.toolbar-title,.palette-heading,.editor-heading{color:var(--brand);align-items:center;gap:9px;font-weight:800;display:flex}.annual-layout,.weekly-layout{align-items:start;gap:14px;display:grid}.annual-layout{grid-template-columns:minmax(0,1fr) 320px}.weekly-layout{grid-template-columns:384px minmax(0,1fr)}.annual-table-wrap,.week-board-wrap,.field-editor,.work-palette{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.annual-table-wrap,.week-board-wrap{overflow:auto}.annual-table,.week-board{border-collapse:collapse;width:100%;min-width:980px}.week-board{table-layout:fixed}.annual-table th,.annual-table td,.week-board th,.week-board td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:top}.annual-table thead th,.week-board thead th{z-index:1;background:var(--status-success);min-height:48px;color:var(--muted);text-align:left;text-transform:uppercase;padding:12px 10px;font-size:12px;position:sticky;top:0}.annual-table tbody th,.week-board tbody th{background:var(--soft);text-align:left;width:220px;min-width:220px;padding:12px;position:relative}.annual-table tbody th strong,.week-board tbody th strong{color:var(--ink);font-size:14px;display:block}.annual-table tbody th span,.week-board tbody th span,.week-board thead th span{color:var(--muted);text-transform:none;margin-top:3px;font-size:12px;font-weight:600;display:block}.week-board tbody th .worker-permit{letter-spacing:0;text-transform:uppercase;border-radius:999px;width:fit-content;margin-top:7px;padding:3px 6px;font-size:10px;font-weight:900;display:inline-flex}.week-board tbody th .worker-section{border:1px solid var(--status-success-border);background:var(--status-success);width:fit-content;color:var(--brand);letter-spacing:0;text-transform:uppercase;border-radius:999px;margin-top:7px;margin-right:6px;padding:3px 7px;font-size:10px;font-weight:900;display:inline-flex}.week-board tbody th .worker-section-obras{border-color:var(--status-success-border);background:var(--status-success);color:var(--success)}.week-board tbody th .worker-section-aislamientos{border-color:var(--status-accent-border);background:var(--status-accent);color:var(--brand-2)}.week-board tbody th .worker-section-mantenimientos{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.worker-permit.has-permit,.worker-profile.has-permit{border:1px solid var(--status-success-border);background:var(--status-success);color:var(--success)}.worker-permit.no-permit,.worker-profile.no-permit{border:1px solid var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.annual-table td{width:116px;min-width:116px;height:92px;padding:0}.annual-table .annual-cell-focused{background:color-mix(in srgb, var(--brand-2) 12%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--brand-2) 44%, var(--line))}.annual-table .annual-cell-focused .month-cell{background:color-mix(in srgb, var(--brand-2) 18%, var(--surface))}.annual-table .annual-cell-target{z-index:1;box-shadow:inset 0 0 0 2px var(--brand);position:relative}.annual-table .annual-row-highlight th,.annual-table .annual-row-highlight td{background:var(--status-success)}.annual-table .annual-row-highlight .annual-cell-target{background:color-mix(in srgb, var(--success) 18%, var(--surface))}.month-cell,.day-cell{width:100%;height:100%;min-height:92px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-content:start;gap:6px;padding:8px;display:grid}.month-cell:hover,.day-cell:hover{background:var(--soft)}.cell-empty{color:var(--muted);font-size:12px}.planning-badge,.assignment-card{border:1px solid #0000;border-radius:7px;gap:3px;font-size:12px;font-weight:800;line-height:1.25;display:grid}.planning-badge{padding:7px}.planning-badge small,.assignment-card small,.assignment-card em{color:inherit;opacity:.78;font-size:11px;font-style:normal;font-weight:700}.field-editor,.work-palette{gap:12px;padding:14px;display:grid}.editor-heading{border-bottom:1px solid var(--line);align-items:flex-start;padding-bottom:10px}.editor-heading strong{display:block}.editor-heading span{color:var(--muted);margin-top:3px;font-size:12px;font-weight:600;display:block}.worker-profile{border-radius:8px;gap:5px;padding:10px;font-size:12px;line-height:1.35;display:grid}.worker-profile strong{font-size:12px}.worker-profile span{color:inherit;opacity:.82}.field-empty-panel{min-height:220px;color:var(--muted);text-align:center;place-items:center;line-height:1.45;display:grid}.search-field{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:7px;align-items:center;gap:8px;padding:0 10px;display:flex}.search-field input{border:0;min-height:38px;padding:0}.week-board td{width:150px;min-width:150px;height:118px;padding:0}.col-resizer{cursor:col-resize;z-index:4;touch-action:none;-webkit-user-select:none;user-select:none;width:8px;height:100%;position:absolute;top:0;right:0}.row-resizer{cursor:row-resize;z-index:4;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:8px;position:absolute;bottom:0;left:0}.col-resizer:hover,.row-resizer:hover{background:color-mix(in srgb, var(--naes-red) 38%, transparent)}.week-board tr.row-fixed td{position:relative}.week-board tr.row-fixed .day-cell{position:absolute;inset:0;overflow-y:auto}.assignment-card{padding:8px 34px 8px 8px;position:relative;box-shadow:0 8px 18px #17211c14}.assignment-card strong{color:var(--ink);font-size:12px}.assignment-card.assignment-conflict{outline:2px solid var(--danger);outline-offset:1px}.assignment-card.assignment-review{border-color:var(--status-warning-border);background:var(--status-warning);color:var(--warning)}.assignment-review-badge{border:1px solid var(--status-warning-border);background:var(--surface);width:fit-content;color:var(--warning);text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;font-weight:900;display:inline-flex}.assignment-review-panel{border:1px solid var(--status-warning-border);background:var(--status-warning);color:var(--warning);border-radius:8px;grid-template-columns:18px minmax(0,1fr);gap:9px;padding:10px;display:grid}.assignment-review-panel strong,.assignment-review-panel span{display:block}.assignment-review-panel span{margin-top:3px;font-size:12px;line-height:1.4}.assignment-delete{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--line));background:color-mix(in srgb, var(--danger) 14%, var(--surface));width:26px;height:26px;color:var(--danger);cursor:pointer;border-radius:7px;place-items:center;display:grid;position:absolute;bottom:6px;right:6px}.assignment-delete:hover{background:var(--danger);color:var(--surface)}.vehicle-line{align-items:center;gap:5px;display:inline-flex}.editor-actions{flex-wrap:wrap;gap:8px;display:flex}.assignment-editor{gap:12px;padding:14px;display:grid}.floating-panel{z-index:60;resize:both;border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;width:680px;min-width:380px;max-width:calc(100vw - 24px);height:78vh;min-height:420px;max-height:calc(100vh - 24px);display:flex;position:fixed;overflow:hidden;box-shadow:0 18px 48px #00000047}.floating-panel-header{border-bottom:1px solid var(--line);background:var(--surface);cursor:move;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.floating-panel-title{color:var(--brand);align-items:flex-start;gap:9px;font-weight:800;display:flex}.floating-panel-title strong{display:block}.floating-panel-title span{color:var(--muted);margin-top:3px;font-size:12px;font-weight:600;display:block}.floating-panel-close{border:1px solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.floating-panel-close:hover{color:var(--ink);border-color:var(--brand)}.floating-panel-body{flex:auto;min-height:0;overflow-y:auto}.floating-panel-footer{border-top:1px solid var(--line);background:var(--surface);flex-shrink:0;padding:12px 14px}.ia-toolbar{border-bottom:1px solid var(--line);color:var(--brand);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.ia-toolbar input{border:1px solid var(--line);background:var(--surface);min-width:220px;min-height:38px;color:var(--ink);border-radius:7px;flex:1;padding:6px 10px}.ia-toolbar .button{align-items:center;gap:6px;display:inline-flex}.ia-pending{border:1px solid var(--status-accent-border,var(--line));background:var(--status-accent,var(--soft));color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:4px 10px;font-size:12.5px;display:inline-flex}.ia-error{border-bottom:1px solid var(--status-warning-border);background:var(--status-warning);color:var(--warning);margin:0;padding:8px 12px;font-size:12.5px}.assignment-card.suggestion{border:1.5px dashed var(--brand);background:color-mix(in srgb, var(--brand) 6%, var(--surface));padding-bottom:26px;position:relative}.assignment-card.suggestion .suggestion-warning{color:var(--warning)}.suggestion-actions{gap:4px;display:flex;position:absolute;bottom:4px;right:4px}.suggestion-actions button{border:1px solid var(--line);background:var(--surface);cursor:pointer;width:22px;height:22px;color:var(--muted);border-radius:6px;place-items:center;display:grid}.suggestion-actions .suggestion-accept:hover{color:var(--success);border-color:var(--status-success-border);background:var(--status-success)}.suggestion-actions .suggestion-move:hover{color:var(--brand);border-color:var(--brand)}.suggestion-actions .suggestion-reject:hover{color:var(--warning);border-color:var(--status-warning-border);background:var(--status-warning)}.planner-rules{gap:12px;padding:14px;display:grid}.planner-rules-add{align-items:flex-start;gap:8px;display:flex}.planner-rules-add textarea{border:1px solid var(--line);background:var(--surface);color:var(--ink);resize:vertical;border-radius:7px;flex:1;padding:8px 10px}.planner-rules-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.planner-rules-list li{border:1px solid var(--line);background:var(--soft);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.planner-rules-list li.rule-inactive{opacity:.55}.planner-rules-list .rule-text{font-size:13.5px;display:block}.planner-rules-list .rule-meta{color:var(--muted);margin-top:2px;font-size:11px;font-weight:600;display:block}.planner-rules-kpi{border:1px solid var(--status-success-border);background:var(--status-success);color:var(--success);border-radius:8px;gap:4px;padding:10px 12px;display:grid}.planner-rules-kpi span{color:inherit;opacity:.85;font-size:12px}.planner-rules-section h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:11px}.planner-rules-list li.rule-pending{border-style:dashed;border-color:var(--brand);background:color-mix(in srgb, var(--brand) 5%, var(--surface))}.planner-rules-list .rule-evidence{border-left:3px solid var(--line);color:var(--muted);margin-top:4px;padding:6px 8px;font-size:12px;line-height:1.4;display:block}.planner-rules-list .rule-actions{justify-items:end;gap:6px;display:grid}.planner-rules-notice{border:1px solid var(--status-success-border);background:var(--status-success);border-radius:8px;margin:0;padding:8px 12px;font-size:13px}.ai-page{max-width:none}.ai-shell .ai-workspace{background:var(--bg);background-image:radial-gradient(120% 120% at 0% 0%, color-mix(in srgb, var(--brand-2) 2%, var(--bg)) 0%, var(--bg) 50%, var(--bg) 100%);min-width:0;min-height:100vh;color:var(--ink);flex-direction:column;gap:10px;padding:10px clamp(16px,3vw,40px) 12px;display:flex;position:relative;overflow-x:hidden}.ai-shell .ai-workspace:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--brand-2) 3%, transparent) 0%, transparent 70%);filter:blur(80px);pointer-events:none;z-index:0;width:40%;height:40%;position:absolute;top:-10%;right:-10%}.ai-shell .ai-workspace:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--brand) 2%, transparent) 0%, transparent 70%);filter:blur(80px);pointer-events:none;z-index:0;width:35%;height:35%;position:absolute;bottom:-10%;left:-10%}.ai-topbar{border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;gap:16px;padding:4px 4px 14px;display:flex;position:relative}.ai-tabs{align-items:center;gap:6px;display:flex}.ai-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.ai-tab:hover:not(:disabled):not(.is-active){color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 6%, var(--surface))}.ai-tab.is-active{color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 8%, var(--surface));font-weight:800}.ai-tab.is-active:after{content:"";background:linear-gradient(90deg, var(--brand-2), var(--brand));border-radius:2px;height:3px;position:absolute;bottom:0;left:16px;right:16px}.ai-tab:disabled{cursor:not-allowed;opacity:.4}.ai-topbar-right{align-items:center;gap:12px;display:flex}.ai-engine-pill{border:1px solid var(--line);background:var(--surface);color:var(--brand-2);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:800;display:inline-flex}.ai-engine-dot{background:#2563eb;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite aiPulse;box-shadow:0 0 6px #2563eb}.ai-account{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--brand-2);cursor:pointer;border-radius:9px;place-items:center;transition:all .14s;display:grid}.ai-account:hover{border-color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 4%, var(--surface))}.ai-newchat{border:1px solid color-mix(in srgb, var(--brand-2) 30%, var(--line));background:var(--surface);color:var(--brand-2);cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:7px 14px;font-size:13px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 1px 3px #00000005}.ai-newchat:hover{background:color-mix(in srgb, var(--brand-2) 4%, var(--surface));border-color:var(--brand-2);transform:translateY(-1px);box-shadow:0 3px 8px #1f4e7914}.ai-shell .ai-tab-panel{z-index:10;flex:auto;min-height:0;padding-right:4px;position:relative;overflow-y:auto}.ai-panel{border:1px solid var(--line);background:var(--surface);max-width:880px;color:var(--ink);box-shadow:var(--shadow);border-radius:16px;margin:16px auto 0;padding:20px clamp(16px,2.5vw,28px)}.ai-history-head h2{color:var(--ink);margin:0 0 4px;font-size:18px;font-weight:800}.ai-history-head p{color:var(--muted);margin:0 0 14px;font-size:13px}.ai-history-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ai-history-item{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:11px 12px;transition:all .18s;display:flex}.ai-history-item:hover{border-color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 3%, var(--surface))}.ai-history-item.is-active{border-color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 6%, var(--surface));box-shadow:0 2px 8px #1f4e790d}.ai-history-item:disabled{opacity:.5;cursor:default}.ai-history-icon{color:var(--brand-2);flex:none;place-items:center;display:grid}.ai-history-body{flex:1;gap:2px;min-width:0;display:grid}.ai-history-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.ai-history-meta{color:var(--muted);font-size:12px}.ai-history-del{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;transition:all .14s;display:grid}.ai-history-del:hover{background:color-mix(in srgb, var(--brand) 8%, var(--surface));color:var(--brand)}.ai-history-empty{color:var(--muted);align-items:center;gap:8px;padding:8px 0;font-size:14px;display:flex}.ai-shell .ai-hero{box-shadow:none;background:0 0;border:0;border-radius:0;padding:6px 2px 24px}.ai-shell .ai-learn-anchor{color:var(--ink)}.ai-shell .ai-learn-anchor-sub{color:var(--muted)}.ai-layout{z-index:10;grid-template-columns:1fr;gap:22px;display:grid;position:relative}@media (min-width:1100px){.ai-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;height:calc(100vh - 52px)}.ai-shell .ai-workspace{height:100vh;min-height:0;overflow:hidden}.ai-shell .ai-layout{flex:auto;height:auto;min-height:0}.ai-col{min-height:0;padding-right:8px;overflow-y:auto}.ai-col::-webkit-scrollbar{width:6px}.ai-col::-webkit-scrollbar-track{background:0 0}.ai-col::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--brand-2) 12%, transparent);border-radius:99px}.ai-col::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--brand-2) 22%, transparent)}.ai-col-left{flex-direction:column;display:flex}.ai-col-left .ai-chat{flex:1;max-width:none;min-height:0}.ai-col-left .ai-chat-empty,.ai-col-left .ai-chat-messages{flex:1;min-height:0}.ai-col-left .ai-chat:has(.ai-chat-empty){flex:1 0 auto}.ai-col-left .ai-chat-empty{flex:1 0 auto;align-content:space-between}.ai-col-right .ai-learn{flex-direction:column;justify-content:space-between;gap:12px;max-width:none;min-height:100%;margin:0;display:flex}.ai-col-right .ai-loop{gap:8px;max-width:540px;margin:0 auto}.ai-col-right .ai-loop-node{gap:3px;max-width:170px;min-height:0;padding:10px 12px}.ai-col-right .ai-learn-header{padding:10px 18px}.ai-col-right .ai-loop-node-icon{width:36px;height:36px}.ai-col-right .ai-loop-node strong{font-size:12.5px}.ai-col-right .ai-loop-node small{font-size:10.5px;line-height:1.3}.ai-col-right .ai-loop-seal{max-width:150px;padding:14px 12px}.ai-col-right .ai-loop-seal small{font-size:10.5px}.ai-col-right .ai-learn-anchor{font-size:clamp(18px,1.7vw,22px)}.ai-col-right .ai-way-card{gap:6px;padding:10px 14px}.ai-col-right .ai-learn-goldrule{padding:12px 16px;font-size:14.5px}.ai-col-right .ai-thermo{gap:8px;padding:12px 16px}.ai-col-right .ai-learn-limits{padding:10px 14px}.ai-col-right .ai-thermo-spark{height:32px}}.ai-learn-header{border:0;border-bottom:1px solid var(--line);background:0 0;justify-content:center;align-items:center;gap:16px;margin-bottom:4px;padding:8px 4px 18px;display:flex}.ai-learn-header-icon{width:48px;height:48px;color:var(--naes-white);background:radial-gradient(circle at 35% 28%, var(--accent), var(--brand) 55%, var(--brand-2));filter:drop-shadow(0 0 12px color-mix(in srgb, var(--brand) 30%, transparent));border-radius:14px;flex:none;place-items:center;display:grid;box-shadow:0 4px 10px #c000002e}.ai-learn-header h2{color:var(--ink);letter-spacing:-.01em;margin:2px 0 0;font-size:clamp(18px,2.1vw,24px);font-weight:800;line-height:1.15}.ai-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-2);font-size:11px;font-weight:800;display:inline-block}.ai-hero{border:1px solid var(--line);background:radial-gradient(120% 140% at 18% 0%, var(--surface) 0%, color-mix(in srgb, var(--brand-2) 3%, var(--surface)) 75%);color:var(--ink);box-shadow:var(--shadow);border-radius:18px;grid-template-columns:1fr;align-items:center;gap:24px;padding:clamp(24px,4vw,40px) clamp(20px,3.5vw,36px);display:grid;position:relative;overflow:hidden}.ai-hero-copy{z-index:1;text-align:center;position:relative}.ai-hero .field-back{color:var(--brand-2)}.ai-eyebrow-hero{color:var(--brand-2);margin-top:14px;font-weight:800}.ai-hero h1{background:linear-gradient(135deg, var(--brand-2) 15%, var(--brand) 85%);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;margin:8px 0;font-size:clamp(30px,4vw,48px);font-weight:900;line-height:1.05}.ai-hero p{max-width:560px;color:var(--muted);margin:0 auto;font-size:14px;line-height:1.55}.ai-hero-badges{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px;display:flex}.ai-badge{border:1px solid var(--line);background:var(--surface);color:var(--brand-2);border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:600;transition:all .18s;display:inline-flex}.ai-badge svg{color:var(--brand)}.ai-badge:hover{border-color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 2%, var(--surface));transform:translateY(-2px);box-shadow:0 4px 10px #1f4e7914}.ai-hero-orb-wrap{z-index:1;justify-items:center;gap:14px;display:grid;position:relative}.ai-orb{width:124px;height:124px;color:var(--naes-white);background:radial-gradient(circle at 30% 30%, #ffd23f 0%, #ff3b30 40%, var(--brand-2) 75%, #0f1c2a 100%);filter:drop-shadow(0 0 20px color-mix(in srgb, var(--brand-2) 35%, transparent)) drop-shadow(0 0 10px color-mix(in srgb, var(--brand) 20%, transparent));border-radius:50%;place-items:center;animation:5s ease-in-out infinite aiOrbBreathe;display:grid;position:relative;box-shadow:0 4px 25px #1f4e7938,inset 0 -8px 16px #00000073,inset 0 8px 16px #ffffff40}.ai-orb:before,.ai-orb:after{content:"";border:1px solid color-mix(in srgb, var(--brand-2) 20%, transparent);border-radius:50%;position:absolute;inset:-14px}.ai-orb:before{animation:16s linear infinite aiSpin}.ai-orb:after{opacity:.6;border-style:dashed;animation:26s linear infinite reverse aiSpin;inset:-24px}.ai-orb svg{z-index:1;filter:drop-shadow(0 2px 6px #0000004d);color:#fff;width:30px;height:30px;position:relative}.ai-orb-status{color:var(--muted);align-items:center;gap:7px;font-size:12px;font-weight:600;display:inline-flex}.ai-orb-dot{background:#3fb96a;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite aiPulse;box-shadow:0 0 6px #3fb96a}@keyframes aiOrbBreathe{0%,to{transform:scale(1);box-shadow:0 4px 18px #1f4e7926,0 2px 6px #c0000014,inset 0 -8px 16px #00000059}50%{transform:scale(1.04);box-shadow:0 6px 26px #1f4e7940,0 4px 12px #c000002e,inset 0 -8px 16px #00000059}}@keyframes aiSpin{to{transform:rotate(360deg)}}@keyframes aiPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.92)}}.ai-chat{z-index:2;border:1px solid var(--line);background:var(--surface);max-width:960px;box-shadow:var(--shadow);color:var(--ink);border-radius:14px;flex-direction:column;gap:14px;margin:16px auto 0;padding:clamp(16px,3vw,24px);display:flex;position:relative}.ai-chat-empty{color:var(--muted);text-align:center;justify-items:center;gap:14px;padding:36px 16px;display:grid}.ai-chat-empty .ai-chat-orb{width:104px;height:104px;margin:0 0 2px}.ai-chat-welcome{justify-items:center;gap:10px;width:100%;display:grid}.ai-chat-ask{align-self:center;justify-items:stretch;gap:10px;width:100%;display:grid}.ai-chat-ask-label{letter-spacing:.08em;text-transform:uppercase;color:var(--brand-2);justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.ai-chat-ask-label svg{color:var(--brand)}.ai-chat-ask .ai-chat-input{border:1.5px solid color-mix(in srgb, var(--brand-2) 32%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--brand-2) 7%, var(--surface)), var(--surface));width:100%;box-shadow:0 16px 36px #1f4e7929, 0 0 0 5px color-mix(in srgb, var(--brand-2) 6%, transparent);border-radius:18px;gap:12px;padding:10px;transition:box-shadow .22s,border-color .22s}.ai-chat-ask .ai-chat-input:focus-within{border-color:var(--brand-2);box-shadow:0 18px 40px #1f4e7938, 0 0 0 5px color-mix(in srgb, var(--brand-2) 12%, transparent)}.ai-chat-ask .ai-chat-input input{background:var(--surface);border-radius:12px;min-height:56px;font-size:15.5px}.ai-chat-ask .ai-chat-input .button{border-radius:12px;min-height:56px;padding:0 24px;font-size:15px;font-weight:700;box-shadow:0 6px 16px #1f4e7947}.ai-chat-ask .ai-chat-error{width:100%}.ai-chat-empty .ai-ways-chat{text-align:left;width:100%;margin-top:0}.ai-chat-empty .ai-ways-chat .ai-way-card{gap:6px;padding:12px 14px}.ai-chat-empty .ai-ways-chat .ai-way-card h3{font-size:14px}.ai-chat-empty .ai-ways-chat .ai-way-card p{font-size:12px}.ai-chat-empty-orb{width:54px;height:54px;color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 8%, var(--surface));border:1px solid color-mix(in srgb, var(--brand-2) 15%, var(--line));border-radius:50%;place-items:center;display:grid}.ai-chat-empty p{max-width:460px;margin:0;font-size:14.5px;font-weight:500;line-height:1.5}.ai-chat-suggestions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.ai-chat-suggestions button{border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:all .22s cubic-bezier(.4,0,.2,1);animation:.36s both aiFadeUp;display:inline-flex;box-shadow:0 1px 3px #00000003}.ai-chat-suggestions button svg{color:var(--brand-2)}.ai-chat-suggestions button:hover:not(:disabled){border-color:var(--brand-2);background:color-mix(in srgb, var(--brand-2) 2%, var(--surface));color:var(--brand-2);transform:translateY(-2px);box-shadow:0 4px 12px #1f4e7914}.ai-chat-suggestions button:disabled{opacity:.4;cursor:default}@keyframes aiFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ai-chat-messages{gap:14px;max-height:52vh;padding-right:6px;display:grid;overflow-y:auto}.ai-chat-messages::-webkit-scrollbar{width:4px}.ai-chat-messages::-webkit-scrollbar-track{background:0 0}.ai-chat-messages::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--brand-2) 12%, transparent);border-radius:99px}.ai-chat-messages::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--brand-2) 22%, transparent)}.ai-message{align-items:flex-start;gap:12px;animation:.24s ease-out both aiFadeUp;display:flex}.ai-message.user{flex-direction:row-reverse}.ai-message-icon{border:1px solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--muted);border-radius:50%;flex:0 0 32px;place-items:center;display:grid}.ai-message.assistant .ai-message-icon{color:var(--naes-white);background:var(--brand-2);border-color:#0000;box-shadow:0 2px 6px #1f4e7926}.ai-message-body{gap:6px;max-width:80%;display:grid}.ai-message.user .ai-message-body{justify-items:end}.ai-message-text{border:1px solid var(--line);background:var(--surface);white-space:pre-wrap;word-break:break-word;color:var(--ink);border-radius:14px;padding:12px 16px;font-size:14px;line-height:1.55;box-shadow:0 1px 3px #00000003}.ai-message.user .ai-message-text{background:var(--brand-2);border-color:var(--brand-2);color:var(--naes-white);border-bottom-right-radius:4px;box-shadow:0 2px 10px #1f4e791a}.ai-message.assistant .ai-message-text{border-left:4px solid var(--brand);border-bottom-left-radius:4px}.ai-message-loading{color:var(--muted);align-items:center;gap:8px;font-weight:500;display:flex}.ai-dots{gap:3px;display:inline-flex}.ai-dots i{background:var(--brand-2);opacity:.4;border-radius:50%;width:5px;height:5px;animation:1s ease-in-out infinite aiDots}.ai-dots i:nth-child(2){animation-delay:.15s}.ai-dots i:nth-child(3){animation-delay:.3s}@keyframes aiDots{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.ai-message-tools{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.ai-message-tools-label{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.ai-tool-chip{border:1px solid var(--line);background:color-mix(in srgb, var(--brand-2) 6%, var(--surface));color:var(--muted);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600}.ai-tool-chip.is-pending{border-color:color-mix(in srgb, var(--brand) 20%, var(--line));background:color-mix(in srgb, var(--brand) 6%, var(--surface));color:var(--brand)}.ai-chat-error{border:1px solid color-mix(in srgb, var(--brand) 20%, var(--line));background:color-mix(in srgb, var(--brand) 6%, var(--surface));color:var(--brand);border-radius:8px;margin:0;padding:10px 14px;font-size:13px;line-height:1.4}.ai-chat-input{gap:10px;display:flex}.ai-chat-input input{border:1px solid var(--line);background:var(--surface);min-height:46px;color:var(--ink);border-radius:12px;flex:1;padding:10px 16px;font-size:14px;transition:all .25s;box-shadow:inset 0 1px 2px #00000005}.ai-chat-input input:focus{border-color:var(--brand-2);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-2) 15%, transparent), inset 0 1px 2px #00000005;outline:none}.ai-chat-input .button{background:var(--brand-2);min-height:46px;color:var(--naes-white);border:0;border-radius:12px;font-weight:700;transition:all .22s}.ai-chat-input .button:hover:not(:disabled){background:color-mix(in srgb, var(--brand-2) 88%, #000);transform:translateY(-1px);box-shadow:0 4px 12px #1f4e792e}.ai-chat-input .button:disabled{opacity:.4;box-shadow:none;transform:none}.ai-chat-disclaimer{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:8px;margin:0;padding-top:12px;font-size:11.5px;line-height:1.5;display:flex}.ai-chat-disclaimer svg{color:var(--brand-2);flex:none;margin-top:1px}.ai-learn{gap:22px;max-width:960px;margin:44px auto 8px;display:grid}.ai-learn-divider{align-items:center;gap:14px;display:flex}.ai-learn-hairline{background:linear-gradient(90deg, var(--brand-2), var(--accent), var(--brand));border-radius:2px;flex:1;height:2px}.ai-learn-anchor{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:clamp(20px,2.6vw,28px);font-weight:800;line-height:1.25}.ai-learn-anchor mark{color:inherit;background:linear-gradient(transparent 60%, color-mix(in srgb, var(--brand-2) 10%, transparent) 0);padding:0 2px}.ai-learn-anchor-sub{color:var(--muted);margin:-12px 0 0}.ai-learn-goldrule{border-left:3px solid var(--brand-2);background:color-mix(in srgb, var(--brand-2) 4%, var(--surface));border:1px solid var(--line);border-left:4px solid var(--brand-2);color:var(--ink);border-radius:0 12px 12px 0;align-items:flex-start;gap:12px;margin:0;padding:16px 18px;font-size:clamp(14px,1.8vw,16px);font-weight:600;line-height:1.45;display:flex;box-shadow:0 2px 8px #00000003}.ai-learn-goldrule svg{color:var(--brand-2);flex:none;margin-top:2px}.ai-pending-word{color:var(--brand);font-weight:700}.ai-loop{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:".n.""w c e"".s.";place-items:center;gap:14px;max-width:640px;margin:6px auto;padding:12px;display:grid;position:relative}.ai-loop-ring{aspect-ratio:1;border:2px dashed var(--line);pointer-events:none;border-radius:50%;width:min(80%,440px);animation:34s linear infinite aiSpin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ai-loop-node{z-index:1;text-align:center;border:1px solid var(--line);background:var(--surface);border-radius:16px;align-content:center;justify-items:center;gap:5px;width:100%;max-width:172px;min-height:138px;padding:16px 12px;transition:all .25s cubic-bezier(.4,0,.2,1);display:grid;position:relative;box-shadow:0 3px 10px #00000003}.ai-loop-node-0{grid-area:n}.ai-loop-node-1{grid-area:e}.ai-loop-node-2{grid-area:s}.ai-loop-node-3{grid-area:w}.ai-loop-node:hover{border-color:var(--brand-2);transform:translateY(-4px);box-shadow:0 6px 16px #1f4e7914}.ai-loop-node.tone-ia:hover{border-color:var(--brand-2);box-shadow:0 0 10px #1f4e7914,0 6px 16px #1f4e7914}.ai-loop-node.tone-human:hover{border-color:var(--brand);box-shadow:0 0 10px #c0000014,0 6px 16px #1f4e7914}.ai-loop-node strong{color:var(--ink);font-size:13.5px}.ai-loop-node small{color:var(--muted);font-size:11px;line-height:1.35}.ai-loop-node-step{background:var(--brand-2);width:24px;height:24px;color:var(--naes-white);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid;position:absolute;top:-10px;left:-10px;box-shadow:0 2px 5px #1f4e7926}.ai-loop-node-icon{background:color-mix(in srgb, var(--brand-2) 6%, var(--surface));border:1px solid color-mix(in srgb, var(--brand-2) 12%, var(--line));width:42px;height:42px;color:var(--brand-2);border-radius:12px;place-items:center;display:grid}.ai-loop-node.tone-human{border-color:color-mix(in srgb, var(--brand) 20%, var(--line))}.ai-loop-node.tone-human .ai-loop-node-icon{background:color-mix(in srgb, var(--brand) 6%, var(--surface));border-color:color-mix(in srgb, var(--brand) 12%, var(--line));color:var(--brand)}.ai-loop-node.tone-human .ai-loop-node-step{background:var(--brand);box-shadow:0 2px 5px #c0000026}.ai-loop-seal{z-index:2;text-align:center;border:1px solid var(--line);background:var(--surface);width:100%;max-width:160px;color:var(--ink);border-radius:16px;grid-area:c;justify-items:center;gap:3px;padding:16px 14px;display:grid;position:relative;box-shadow:0 4px 15px #00000005}.ai-loop-seal svg{color:var(--brand-2)}.ai-loop-seal strong{font-size:12px;font-weight:700}.ai-loop-seal small{color:var(--muted);font-size:10.5px;line-height:1.3}.ai-ways{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.ai-way-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-content:start;gap:8px;padding:18px;transition:all .25s;display:grid;box-shadow:0 3px 10px #00000003}.ai-way-card:hover{border-color:var(--brand-2);transform:translateY(-2px);box-shadow:0 6px 15px #1f4e7914}.ai-way-icon{background:var(--surface);border:1px solid var(--line);width:40px;height:40px;color:var(--brand-2);border-radius:12px;place-items:center;display:grid}.ai-way-card h3{color:var(--ink);margin:4px 0 0;font-size:15px;font-weight:700}.ai-way-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.ai-way-badge{border:1px solid;border-radius:999px;justify-self:start;margin-top:4px;padding:4px 10px;font-size:10.5px;font-weight:700}.ai-way-badge.tone-ok{background:color-mix(in srgb, var(--brand-2) 6%, var(--surface));border-color:color-mix(in srgb, var(--brand-2) 20%, var(--line));color:var(--brand-2)}.ai-way-badge.tone-pending{background:color-mix(in srgb, var(--accent) 10%, var(--surface));border-color:color-mix(in srgb, var(--accent) 35%, var(--line));color:color-mix(in srgb, var(--accent) 60%, var(--ink))}.ai-thermo{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:14px;padding:20px;display:grid;box-shadow:0 4px 15px #00000003}.ai-thermo-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ai-thermo-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.ai-thermo-head h3{color:var(--ink);margin:4px 0 0;font-size:18px;font-weight:800}.ai-thermo-value{text-align:right;display:grid}.ai-thermo-value strong{font-size:clamp(28px,5vw,40px);line-height:1}.ai-thermo-value span{color:var(--muted);font-size:12px;font-weight:700}.ai-thermo-value.is-alta strong{color:var(--brand-2)}.ai-thermo-value.is-media strong{color:color-mix(in srgb, var(--accent) 60%, var(--ink))}.ai-thermo-value.is-baja strong{color:var(--brand)}.ai-thermo-bar{background:linear-gradient(to right, color-mix(in srgb, var(--brand) 80%, transparent) 0%, color-mix(in srgb, var(--accent) 80%, transparent) 50%, color-mix(in srgb, var(--brand-2) 80%, transparent) 100%);border-radius:999px;height:12px;display:flex;position:relative;box-shadow:inset 0 1px 3px #00000026}.ai-thermo-zone{display:none}.ai-thermo-needle{background:#fff;border:1px solid #0000001a;border-radius:3px;width:6px;height:24px;transition:left .8s cubic-bezier(.34,1.56,.64,1);position:absolute;top:-6px;transform:translate(-50%);box-shadow:0 0 4px #00000026,0 2px 5px #0003}.ai-thermo-needle:after{content:"";background:var(--brand-2);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ai-thermo-spark{border-bottom:1px solid var(--line);align-items:flex-end;gap:5px;height:46px;padding-bottom:4px;display:flex}.ai-thermo-spark-bar{background:color-mix(in srgb, var(--brand-2) 12%, transparent);border:1px solid color-mix(in srgb, var(--brand-2) 6%, transparent);border-radius:4px 4px 0 0;flex:1;min-width:8px;transition:all .2s}.ai-thermo-spark-bar:hover{background:color-mix(in srgb, var(--brand-2) 30%, transparent)}.ai-thermo-sub{color:var(--muted);margin:0;font-size:12.5px;line-height:1.5}.ai-learn-limits{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:14px 16px;display:flex}.ai-learn-limits-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.ai-learn-limits-label svg{color:var(--brand-2)}.ai-limit-pill{border:1px dashed var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:11.5px;font-weight:600}@media (max-width:860px){.ai-hero{grid-template-columns:1fr}.ai-hero-orb-wrap{justify-items:start}.ai-ways{grid-template-columns:1fr}}@media (max-width:680px){.ai-loop{grid-template-columns:1fr;grid-template-areas:"n""e""s""w""c";max-width:360px}.ai-loop-ring{display:none}.ai-loop-node,.ai-loop-seal{max-width:none}}@media (prefers-reduced-motion:reduce){.ai-orb,.ai-orb:before,.ai-orb:after,.ai-orb-dot,.ai-loop-ring,.ai-loop-node,.ai-dots i,.ai-chat-suggestions button{animation:none}}.ai-shell .planner-rules{padding:8px 4px}.ai-shell .planner-rules .muted{color:var(--muted);font-size:13.5px;line-height:1.5}.ai-shell .planner-rules-kpi{background:color-mix(in srgb, var(--brand-2) 5%, var(--surface));border:1px solid color-mix(in srgb, var(--brand-2) 18%, var(--line));color:var(--brand-2);border-radius:12px;padding:12px 16px}.ai-shell .planner-rules-kpi strong{color:var(--brand-2);font-size:14.5px}.ai-shell .planner-rules-kpi span{color:var(--muted);margin-top:2px;font-size:11.5px;font-weight:600}.ai-shell .planner-rules-add textarea{background:var(--surface);border:1px solid var(--line);color:var(--ink);resize:vertical;border-radius:12px;padding:10px 14px;font-size:14px;transition:all .22s}.ai-shell .planner-rules-add textarea:focus{border-color:var(--brand-2);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-2) 15%, transparent);outline:none}.ai-shell button.button.primary,.ai-shell .planner-rules-add .button.primary{background:var(--brand-2);min-height:44px;color:var(--naes-white);border:0;border-radius:12px;justify-content:center;align-self:stretch;align-items:center;gap:6px;font-weight:700;transition:all .22s;display:inline-flex}.ai-shell button.button.primary:hover:not(:disabled),.ai-shell .planner-rules-add .button.primary:hover:not(:disabled){background:color-mix(in srgb, var(--brand-2) 88%, #000);transform:translateY(-1px);box-shadow:0 4px 12px #1f4e792e}.ai-shell button.button.primary:disabled,.ai-shell .planner-rules-add .button.primary:disabled{opacity:.45;cursor:not-allowed;background:var(--brand-2);color:var(--naes-white);box-shadow:none;transform:none}.ai-shell button.button{background:var(--surface);border:1px solid var(--line);color:var(--brand-2);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:700;transition:all .22s;display:inline-flex}.ai-shell button.button:hover:not(:disabled){background:color-mix(in srgb, var(--brand-2) 4%, var(--surface));border-color:var(--brand-2);transform:translateY(-1px)}.ai-shell button.button:disabled{opacity:.45;cursor:not-allowed}.ai-shell .planner-rules-section{margin-top:14px}.ai-shell .planner-rules-section h4{letter-spacing:.1em;text-transform:uppercase;color:var(--brand-2);margin-bottom:8px;font-size:11px;font-weight:800}.ai-shell .planner-rules-list{gap:10px}.ai-shell .planner-rules-list li{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--brand-2);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;transition:all .2s;display:flex}.ai-shell .planner-rules-list li:hover{border-color:var(--brand-2);box-shadow:0 4px 12px #00000008}.ai-shell .planner-rules-list .rule-text{color:var(--ink);font-size:14px;font-weight:500;line-height:1.5}.ai-shell .planner-rules-list .rule-meta{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin-top:4px;font-size:11px;font-weight:600}.ai-shell .planner-rules-list li.rule-pending{background:color-mix(in srgb, var(--accent) 8%, var(--surface));border:1px dashed color-mix(in srgb, var(--accent) 40%, var(--line));border-left:4px solid var(--accent)}.ai-shell .planner-rules-list li.rule-pending:hover{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-color:color-mix(in srgb, var(--accent) 60%, var(--line))}.ai-shell .planner-rules-list .rule-evidence{border-left:3px solid var(--accent);color:color-mix(in srgb, var(--accent) 60%, var(--ink));background:color-mix(in srgb, var(--accent) 6%, var(--surface));border-radius:0 8px 8px 0;margin-top:8px;padding:8px 12px;font-size:12.5px}.ai-shell .planner-rules-list li.rule-inactive{opacity:.6;background:color-mix(in srgb, var(--bg) 40%, var(--surface));border-color:var(--line);border-left-color:var(--line)}.ai-shell .planner-rules-list li.rule-inactive:hover{opacity:.8;border-color:var(--muted);border-left-color:var(--muted)}.ai-shell .planner-rules-list .button.compact{background:var(--surface);border:1px solid var(--line);color:var(--brand-2);border-radius:8px;padding:6px 12px;font-size:12px;transition:all .18s}.ai-shell .planner-rules-list .button.compact:hover{background:color-mix(in srgb, var(--brand-2) 4%, var(--surface));border-color:var(--brand-2)}.ai-shell .planner-rules-list .button.compact.primary{background:var(--brand-2);border-color:var(--brand-2);color:#fff}.ai-shell .planner-rules-list .button.compact.primary:hover{background:color-mix(in srgb, var(--brand-2) 88%, #000)}.ai-shell .planner-rules-notice{background:color-mix(in srgb, var(--brand-2) 5%, var(--surface));border:1px solid color-mix(in srgb, var(--brand-2) 15%, var(--line));color:var(--brand-2);border-radius:8px;margin:8px 0;padding:10px 14px;font-size:13px}.ai-shell .ia-error{background:color-mix(in srgb, var(--brand) 6%, var(--surface));border:1px solid color-mix(in srgb, var(--brand) 15%, var(--line));color:var(--brand);border-radius:8px;margin:8px 0;padding:10px 14px;font-size:13px}.status-sin_planificar{background:var(--status-muted);color:var(--muted);border-color:var(--status-muted-border)}.status-planificada,.status-programada,.status-parte_enviado{background:var(--status-accent);color:var(--brand-2);border-color:var(--status-accent-border)}.status-en_curso,.status-pendiente_parte{background:var(--status-warning);color:var(--warning);border-color:var(--status-warning-border)}.status-parada,.status-incidencia{background:var(--status-danger);color:var(--danger);border-color:var(--status-danger-border)}.status-completada,.status-validada{background:var(--status-accent);color:var(--brand-2);border-color:var(--status-accent-border)}.status-cancelada{background:var(--status-muted);color:var(--muted);border-color:var(--status-muted-border)}.my-week-list{gap:12px;display:grid}.my-day{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:12px;padding:14px;display:grid}.my-day>header{color:var(--brand);align-items:center;gap:10px;display:flex}.my-day>header strong,.my-day>header span{display:block}.my-day>header span{color:var(--muted);font-size:12px;font-weight:700}.my-day.is-today{border-color:color-mix(in srgb, var(--brand-2) 30%, var(--line));box-shadow:0 0 0 1px color-mix(in srgb, var(--brand-2) 10%, transparent)}.my-assignment-list{gap:9px;display:grid}.my-assignment{border:1px solid #0000;border-radius:8px;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:12px;display:grid}.my-assignment strong,.my-assignment span,.my-assignment em,.my-assignment p{display:block}.my-assignment strong{color:var(--ink);font-size:15px}.my-assignment span,.my-assignment em,.my-assignment p{margin-top:4px;font-size:13px;line-height:1.4}.my-assignment em{font-style:normal;font-weight:800}.my-assignment p{color:var(--muted);margin-bottom:0}.my-assignment-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.my-assignment-actions .button{min-height:34px}@media (max-width:1320px){.annual-month-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1500px){.worker-admin-layout,.user-admin-layout{grid-template-columns:1fr}.worker-editor,.user-editor{border-left-width:1px;border-top:3px solid var(--brand);background:var(--surface);max-height:none;box-shadow:none;position:static}}@media (max-width:1180px){.annual-layout,.weekly-layout,.validation-layout,.worker-admin-layout,.user-admin-layout{grid-template-columns:1fr}.validation-list-panel{max-height:none;position:static}.validation-report-list{max-height:none;overflow:visible}.validation-general-grid,.validation-line-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.production-control-grid,.production-deviation-grid,.production-section-grid,.operations-main-grid,.operations-main-grid-wide{grid-template-columns:1fr}.production-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.global-dashboard-grid,.global-dashboard-grid-compact{grid-template-columns:1fr}.global-executive-strip,.global-dashboard-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.global-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.global-annual-layout{grid-template-columns:1fr}.global-selected-month{grid-template-columns:repeat(4,minmax(0,1fr));align-items:center}.global-selected-month div{border-top:0;padding-top:0}.global-area-cards,.annual-month-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.annual-chart-plot{grid-template-columns:repeat(12,minmax(58px,1fr));padding-bottom:2px;overflow-x:auto}.manual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-editor,.work-palette,.worker-editor,.user-editor{max-height:none;position:static}}@media (max-width:760px){.field-header,.field-toolbar,.annual-summary-header,.validation-header,.operations-header,.week-switcher{grid-template-columns:1fr;display:grid}.operations-scope{text-align:left;min-width:0}.validation-status-panel{justify-content:flex-start}.validation-metrics,.validation-general-grid,.validation-line-grid,.validation-filters,.bulk-panel,.validation-report-card,.production-kpis,.production-delta-grid,.operations-kpis,.operations-status-row,.production-attention-item{grid-template-columns:1fr}.production-panel>header{display:grid}.global-dashboard-hero,.dashboard-official-heading,.global-area-row,.global-worksite-row{grid-template-columns:1fr;display:grid}.global-dashboard-meta{text-align:left;min-width:0}.global-annual-chart{grid-template-columns:repeat(12,minmax(54px,1fr));padding-bottom:2px;overflow-x:auto}.global-month{height:190px}.global-kpis,.global-executive-strip,.global-dashboard-bottom-grid,.global-area-cards,.global-today-grid,.global-area-card-grid,.global-kpi-group>div,.global-area-stats,.global-selected-month{grid-template-columns:1fr}.global-selected-month div{border-top:1px solid var(--line);padding-top:6px}.global-worksite-row{grid-template-columns:auto minmax(0,1fr)}.global-worksite-row>div:last-of-type,.global-worksite-row>.status{grid-column:2}.validation-actions{position:static}.annual-load-legend,.annual-summary-actions{justify-content:flex-start}.annual-summary-toggle{width:100%}.annual-month-summary-grid{grid-template-columns:1fr}.annual-chart-panel{padding:10px}.annual-chart-plot{grid-template-columns:repeat(12,minmax(54px,1fr));gap:8px;height:170px}.field-metrics,.manual-grid{grid-template-columns:1fr}.manual-version{min-width:0}.field-toolbar{align-items:stretch}.worker-admin-toolbar,.admin-section-toolbar,.two-col-fields{grid-template-columns:1fr;display:grid}.admin-stack .table-wrap{max-height:none}}.palette-defaults{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px;display:grid}.palette-groups{flex-direction:column;gap:12px;max-height:320px;padding-right:4px;display:flex;overflow-y:auto}.palette-group h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin:0 0 6px;font-size:11px;display:flex}.palette-group h4 span{background:color-mix(in srgb, var(--naes-blue) 12%, transparent);border-radius:999px;padding:1px 8px;font-size:10px}.palette-chip{border:1px solid var(--line);background:var(--surface);cursor:grab;text-align:left;border-radius:10px;align-items:center;gap:8px;width:100%;margin-bottom:6px;padding:7px 10px;transition:border-color .15s,background .15s;display:flex}.palette-chip:hover{border-color:var(--naes-blue)}.palette-chip.selected{border-color:var(--naes-red);background:color-mix(in srgb, var(--naes-red) 7%, var(--surface))}.palette-chip strong{white-space:nowrap;font-size:11px}.palette-chip span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.palette-chip .chip-asana{color:var(--naes-blue);flex-shrink:0}.palette-chip.free-text strong{color:var(--naes-red)}.palette-free-text{flex-direction:column;gap:8px;display:flex}.budget-progress{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:8px;max-height:220px;padding:8px 10px;display:flex;overflow-y:auto}.budget-progress h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px}.progress-row{border-radius:8px;flex-direction:column;gap:2px;padding:4px 6px;font-size:11px;display:flex}.progress-row.selected{background:color-mix(in srgb, var(--naes-blue) 8%, transparent)}.progress-row span{color:var(--muted)}.editor-progress{margin-top:-6px}.crew-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;display:flex}.crew-toolbar input{flex:0 220px}.week-board .crew-row th{background:color-mix(in srgb, var(--naes-blue) 9%, var(--surface));text-align:left;padding:6px 12px;display:table-cell}.crew-title{align-items:center;gap:8px;display:inline-flex}.crew-title em{background:color-mix(in srgb, var(--naes-blue) 16%, transparent);border-radius:999px;padding:1px 8px;font-size:10px;font-style:normal}.crew-actions{gap:4px;margin-left:10px;display:inline-flex}.crew-edit{align-items:center;gap:6px;display:inline-flex}.crew-edit input{padding:3px 8px;font-size:12px}.worker-crew-select{max-width:150px;margin-top:6px;padding:2px 4px;font-size:10px;display:block}.week-board tbody th[draggable=true]{cursor:grab}.day-cell.drop-target,.week-board .crew-row.drop-target th,.week-board tbody th.drop-target{outline:2px dashed var(--naes-red);outline-offset:-3px;background:color-mix(in srgb, var(--naes-red) 6%, var(--surface))}.assignment-card[draggable=true]{cursor:grab}.assignment-card.assignment-carrying{opacity:.55;outline:2px dashed var(--naes-blue)}.assignment-move{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px;position:absolute;top:4px;right:26px}.assignment-move:hover{color:var(--naes-blue)}.carrying-banner{background:var(--naes-blue);color:var(--surface);z-index:60;border-radius:999px;align-items:center;gap:10px;padding:9px 16px;font-size:13px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #0d234359}.carrying-banner .icon-button{color:var(--surface)}.field-filters{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.field-filters label{color:var(--muted);gap:4px;font-size:12px;display:grid}.field-filters select,.field-filters input{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:8px 10px;font-size:14px}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 12px}.data-table thead th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:var(--surface-strong);font-size:12px}.data-table tbody tr:hover{background:var(--surface-strong)}.data-table .row-warning{border-left:3px solid var(--warning-strong)}.time-clock-review-table{min-width:880px}.tc-status{border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.tc-status.tc-open{color:var(--success);border-color:color-mix(in srgb, var(--success) 45%, var(--line))}.tc-status.tc-closed{color:var(--muted)}.tc-status.tc-incident{color:var(--warning-strong);border-color:color-mix(in srgb, var(--warning-strong) 45%, var(--line))}.tc-status.tc-cancelled{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 40%, var(--line))}.tc-location{color:var(--muted);align-items:center;gap:4px;font-size:13px;display:inline-flex}.tc-notes{white-space:pre-wrap;max-width:280px;color:var(--muted)}.tc-foot{align-items:center;gap:6px;margin-top:14px;display:flex}.tc-alerts{margin:16px 0}.tc-alerts-title{align-items:center;gap:6px;margin:0 0 10px;font-size:15px;display:flex}.tc-alerts-list{gap:8px;display:grid}.tc-alert{border:1px solid var(--line);border-left:4px solid var(--muted);background:var(--surface);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.tc-alert.sev-alta{border-left-color:var(--danger)}.tc-alert.sev-media{border-left-color:var(--warning-strong)}.tc-alert.sev-baja{border-left-color:var(--muted)}.tc-alert-body{gap:2px;min-width:0;display:grid}.tc-alert-body strong{font-size:14px}.tc-alert-body span{color:var(--muted);font-size:13px}.tc-alert-badge{background:var(--surface-strong);color:var(--ink);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.tc-alert.sev-alta .tc-alert-badge{background:color-mix(in srgb, var(--danger) 18%, var(--surface));color:var(--danger)}.tc-alert.sev-media .tc-alert-badge{background:color-mix(in srgb, var(--warning-strong) 22%, var(--surface));color:var(--warning-strong)}.tc-alert-type{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);white-space:nowrap;font-size:11px}.stock-section{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin:20px 0;padding:14px 16px}.stock-section-head{align-items:center;gap:8px;margin-bottom:10px;font-size:15px;display:flex}.stock-form{margin-top:10px}.stock-form>summary{cursor:pointer;color:var(--success);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:13px;display:inline-flex}.stock-form .field-filters{align-items:end}.stock-btn{border:1px solid var(--success);background:var(--success);color:var(--surface);cursor:pointer;border-radius:8px;padding:9px 16px;font-size:14px;font-weight:600}.stock-btn:disabled{opacity:.5;cursor:not-allowed}.stock-section-head .stock-btn{align-items:center;gap:6px;margin-left:auto;padding:6px 12px;font-size:13px;display:inline-flex}.stock-btn-ghost{border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;border-radius:7px;padding:5px 10px;font-size:13px}.stock-btn-ghost:hover{border-color:var(--success);color:var(--success)}.stock-form-panel{border:1px solid var(--line);background:var(--surface-2,var(--surface));border-radius:10px;margin:10px 0 14px;padding:12px 14px}.stock-form-panel .field-filters{align-items:end}.stock-form-title{margin-bottom:10px;font-size:14px;font-weight:600}.stock-form-actions{gap:8px;margin-top:10px;display:flex}.stock-check{align-items:center;gap:6px;flex-direction:row!important}.stock-check input{width:auto}.stock-actions{gap:6px;display:flex}.stock-family-badge{border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}.stock-family-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.stock-group-row td{background:var(--surface-2,#f8fafc);padding-top:10px}.stock-row-inactive td{opacity:.55}.stock-counters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.stock-counter{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;min-width:84px;padding:6px 14px;display:flex}.stock-counter.is-active{border-color:var(--success);box-shadow:inset 0 0 0 1px var(--success)}.stock-counter-num{font-size:18px;font-weight:700;line-height:1.1}.stock-counter-label{color:#64748b;font-size:11px}.stock-counter-rotura .stock-counter-num{color:#be123c}.stock-counter-pedir .stock-counter-num{color:#a16207}.stock-counter-ok{font-size:12px}.stock-status{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700;display:inline-block}.stock-status-ok{color:#065f46;background:#ecfdf5}.stock-status-pedir{color:#a16207;background:#fefce8}.stock-status-rotura{color:#be123c;background:#fff1f2}.stock-qty{white-space:nowrap;margin-bottom:3px;font-size:13px}.stock-bar{background:#e5e7eb;border-radius:4px;min-width:90px;height:6px;position:relative}.stock-bar-fill{background:#3b82f6;border-radius:4px;height:100%;position:absolute;top:0;left:0}.stock-bar-marker{width:2px;height:10px;position:absolute;top:-2px}.stock-bar-min{background:#ef4444}.stock-bar-reorder{background:#f97316}.stock-totals{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.stock-total-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;min-width:120px;padding:8px 14px;display:flex}.stock-total-num{font-size:18px;font-weight:700;line-height:1.2}.stock-total-label{color:#64748b;font-size:11px}.stock-subhead{color:#475569;margin:14px 0 6px;font-size:13px;font-weight:600}.stock-head-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.stock-head-actions .stock-btn{margin-left:0}.catalog-summary-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px 16px;margin:8px 0 0;padding:0;list-style:none;display:grid}.catalog-summary-list li{font-size:.9rem}.stock-lines{gap:6px;margin:8px 0;display:grid}.stock-line{border:1px dashed var(--line);border-radius:8px;padding:8px}
