:root{--bg: #0f1222;--panel: #141832;--panel-2: #1a1f3f;--text: #e7e9ff;--muted: #aab0d4;--brand: #6e7bff;--brand-2: #4cd1ff;--ok: #53e3a6;--warn: #ffd166;--danger: #ff6b6b;--border: 1px solid rgba(255, 255, 255, .08);--radius: 12px;--cell-w: 180px;--rowhead-w: 160px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:transparent;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji"}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:url(https://grabador.imcyc.com/formatoscampo/buenos/Fondo.png) center/cover no-repeat;filter:blur(8px) brightness(.3);transform:scale(1.05);z-index:-1}.app{display:grid;grid-template-rows:auto 1fr;height:100vh}.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000a}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.6px}.brand .logo-img{width:28px;height:28px;border-radius:8px;object-fit:contain}.brand .name{text-transform:uppercase;color:#111827}.brand .tag{color:#6b7280;font-weight:600;font-size:12px}.toolbar{display:flex;align-items:center;gap:8px}.button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e5e7eb;background:#fff;color:#111827;padding:8px 12px;border-radius:10px;font-weight:600;cursor:pointer;transition:transform .06s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease}.button:hover{box-shadow:0 2px 8px #00000014}.button:active{transform:translateY(1px) scale(.99)}.button.primary{background:linear-gradient(180deg,#2563eb,#1d4ed8);border-color:transparent;color:#fff}.button.ghost{background:#f9fafb}.page-controls{display:flex;align-items:center;gap:8px}.page-indicator{color:#6b7280;font-weight:600;font-size:14px;min-width:120px;text-align:center}.main{display:grid;grid-template-rows:auto 1fr;padding:14px 18px;gap:16px}.top-logo{display:flex;justify-content:flex-start;align-items:flex-start}.top-logo img{max-height:120px;width:auto;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25))}.sheet-toolbar{display:flex;gap:8px}.grid-wrap{background:transparent;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;box-shadow:0 10px 25px #00000014}.grid{width:100%;height:calc(100vh - 160px);overflow:auto}.table{width:max-content;border-collapse:separate;border-spacing:14px 10px}th,td{border:none;vertical-align:middle}th{position:static;background:transparent;color:var(--muted);font-weight:600;padding:0;text-align:left;font-size:inherit}.row-head{position:static;background:transparent;color:var(--muted);font-weight:600;width:calc(var(--cell-w) + 16px);text-align:left;padding:6px 8px;font-size:inherit}.cell{padding:6px 8px}.input{width:var(--cell-w);min-width:120px;max-width:280px;height:36px;padding:8px 10px;border:1px solid #d1d5db;background:#fff;color:#111827;border-radius:8px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.input:hover{border-color:#9ca3af}.input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb40;background:#fff}.small{font-size:12px;color:var(--muted)}.text{min-height:36px;display:flex;align-items:center;color:#fff;padding:8px 10px;background:transparent;border:none;border-radius:0}.header-text,.cell-text{width:var(--cell-w)}.section{display:grid;gap:8px}.section-header{display:flex;align-items:center;gap:8px}.section-title{font-weight:700;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.6px}.header-input,.row-head .header-input{width:var(--cell-w)}.button.edit{padding:8px 10px}.muted{color:var(--muted)}.head-cell{position:relative;display:inline-block;padding:0 8px}.mini-btn{position:absolute;width:20px;height:20px;border-radius:10px;border:1px solid #e5e7eb;background:#f9fafb;color:#ef4444;cursor:pointer;line-height:18px;font-weight:700}.mini-btn-col{top:-26px;left:50%;transform:translate(-50%)}.mini-btn-row{left:-26px;top:50%;transform:translateY(-50%)}.mini-btn:hover{background:#fff;box-shadow:0 1px 4px #00000014}.cell-wrap{position:relative;display:inline-block}.spacer-row td{height:48px;padding:0}tr.first-row .input{height:54px;font-size:1.5em}tr.first-row .text{min-height:54px;font-size:1.5em}@media (max-width: 900px){.input{width:140px}.top-logo img{max-height:84px}}.palette{display:flex;align-items:center;gap:8px}.swatch{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:28px;height:28px;border-radius:6px;border:2px solid #e5e7eb;background:transparent;cursor:pointer;box-shadow:0 1px 2px #00000014;transition:transform .08s ease,box-shadow .2s ease,border-color .2s ease}.swatch:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001f}.swatch.selected{outline:2px solid #111827;outline-offset:2px;border-color:transparent}.gantt-wrap{background:transparent;border:1px solid #e5e7eb;border-radius:14px;overflow:auto;box-shadow:0 10px 25px #00000014}.gantt-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.gantt-table thead th{position:sticky;top:0;background:#fff;z-index:3;padding:12px;border-bottom:1px solid #e5e7eb;color:#6b7280;font-weight:700;font-size:14px}.gantt-table th.week-head{width:120px}.gantt-table .sticky{position:sticky;left:0;background:#fff;z-index:2;min-width:220px;border-right:1px solid #f3f4f6;color:#111827}.gantt-table tbody td,.gantt-table tbody th{padding:10px 12px;border-bottom:1px solid #f3f4f6}.week-head{text-align:center;color:#6b7280;font-weight:600}.task-cell{position:relative;width:120px;height:32px}.task-cell.editable{cursor:col-resize}.task-bar{position:absolute;top:6px;right:6px;bottom:6px;left:6px;background:#e5e7eb;border-radius:6px}.task-fill{position:absolute;left:6px;top:6px;bottom:6px;width:0;background:linear-gradient(180deg,#34d399,#10b981);border-radius:6px;transition:width .2s ease}.task-fill.draft{background:#3b82f659}.progress-head,.progress-cell{text-align:right;width:72px;color:#111827;font-weight:700}
