body{font-family:Arial,sans-serif;background:#111827;color:#f3f4f6;margin:0;padding:36px;font-size:17px;line-height:1.6}main{max-width:1440px;margin:0 auto}h1{margin-top:0;font-size:46px;line-height:1.08;letter-spacing:-.03em}h2{font-size:36px;line-height:1.14;letter-spacing:-.025em}h3{font-size:24px;line-height:1.22;letter-spacing:-.015em}p,li,td,input,select,textarea,button{font-size:17px}.card{background:#1f2937;padding:30px;border-radius:22px;box-shadow:0 10px 30px rgba(0,0,0,.25)}table{width:100%;border-collapse:collapse;margin-top:18px}th,td{text-align:left;padding:16px 14px;border-bottom:1px solid #374151}th{color:#bfdbfe;font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}td{font-size:17px}::placeholder{color:#64748b;opacity:1}.nav{display:flex;gap:18px;margin:10px 0 24px;flex-wrap:wrap}.nav a{color:#93c5fd;text-decoration:none;font-size:17px;font-weight:700}.app-shell{max-width:1700px;margin:0 auto;display:grid;grid-template-columns:320px minmax(0,1fr);gap:32px;align-items:start}.app-sidebar{position:sticky;top:20px;background:#111827;border:1px solid rgba(148,163,184,.16);border-radius:28px;padding:28px;box-shadow:0 14px 34px rgba(0,0,0,.22)}.app-brand{font-size:32px;font-weight:900;letter-spacing:-.03em;line-height:1.05;color:#60a5fa;margin-bottom:24px}.app-sidebar .nav{display:flex;flex-direction:column;gap:12px;margin:0}.app-sidebar .nav a{display:flex;align-items:center;min-height:58px;padding:0 18px;border-radius:16px;text-decoration:none;font-size:18px;font-weight:700;color:#dbeafe;border:1px solid transparent;background:transparent}.app-sidebar .nav a:hover{background:#172033;border-color:#334155}.app-sidebar .nav a.active{background:#1d4ed8;color:#fff;border-color:#1d4ed8;box-shadow:0 0 0 1px rgba(147,197,253,.15) inset}.app-main{min-width:0}.app-main .page-header{margin-bottom:24px}.app-main .page-header h1{margin-bottom:10px}.app-main .page-subtitle{margin:0;color:#94a3b8;font-size:18px;line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label{display:flex;flex-direction:column;gap:10px;font-size:14px;font-weight:800;color:#cbd5e1;letter-spacing:.015em}.form-grid textarea,.form-grid input,.form-grid select{padding:14px 16px;border-radius:12px;border:1px solid #4b5563;background:#111827;color:#f8fafc;font-size:17px;min-height:52px}.actions{grid-column:1/-1}.actions button,.multi-actions button{padding:14px 20px;border-radius:12px;border:none;background:#2563eb;color:white;font-weight:700;cursor:pointer;font-size:17px}.filter-active{background:#1d4ed8 !important;box-shadow:0 0 0 2px rgba(147,197,253,.35) inset}.stack-form{display:flex;flex-direction:column;gap:18px}.form-section{border:1px solid #374151;border-radius:14px;padding:16px;background:#111827}.form-section h3{margin-top:0;margin-bottom:14px;color:#c4b5fd;font-size:19px}.tech-section{border-color:#4b5563;background:#0f172a}.multi-actions{display:flex;gap:12px;flex-wrap:wrap}button[disabled]{opacity:.45;cursor:not-allowed}.form-grid textarea[name="description"],.form-grid textarea[name="notes"],.form-grid textarea[name="descripcion"],.form-grid textarea[name="note"],.form-grid textarea[name="extractedText"]{min-height:88px}.upload-grid{display:grid;grid-template-columns:360px 1fr;gap:20px;align-items:start}.top-gap{margin-top:18px}.muted{color:#94a3b8;font-size:14px}.error-text{color:#fca5a5}.receipt-preview{margin-top:14px;border:1px dashed #4b5563;border-radius:14px;min-height:220px;display:flex;align-items:center;justify-content:center;background:#0f172a;padding:12px;overflow:hidden}.receipt-preview img{max-width:100%;max-height:420px;border-radius:10px}.receipt-preview.empty{color:#6b7280}.file-pill{padding:10px 14px;border-radius:999px;background:#111827;border:1px solid #374151}.full{grid-column:1/-1}.upload-card input[type="file"]{width:100%}.guided-review{border:1px solid #334155;background:#0f172a}.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}.review-item{padding:12px;border-radius:12px;border:1px solid #374151;background:#111827;display:flex;flex-direction:column;gap:4px}.review-item.review-high{border-color:#166534;background:#052e16}.review-item.review-medium{border-color:#92400e;background:#3f2a0d}.review-item.review-low{border-color:#b91c1c;background:#3f0d12}.review-label{margin:0;font-size:12px;color:#cbd5e1;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.review-value{margin:0;font-size:18px;color:#f9fafb;font-weight:700}.review-reason{margin:0;font-size:13px;color:#9ca3af;min-height:1.4em}.review-item .ghost-button{margin-top:8px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px}.metric-grid-compact{grid-template-columns:repeat(3,1fr)}.metric-card{background:#111827;border:1px solid #374151;border-radius:18px;padding:22px;min-height:150px;display:flex;flex-direction:column;justify-content:space-between}.metric-link{text-decoration:none;display:block;transition:transform .12s ease, box-shadow .12s ease}.metric-link:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.22)}.metric-default{background:#111827}.metric-primary{grid-column:span 2;min-height:180px}.metric-real-cash{border-color:#059669;background:#064e3b}.metric-real-cash .metric-label{color:#a7f3d0}.metric-real-cash .metric-value{color:#ecfdf5;font-size:42px}.metric-safe-withdraw{border-color:#166534;background:#052e16}.metric-safe-withdraw .metric-label{color:#bbf7d0}.metric-safe-withdraw .metric-value{color:#dcfce7}.metric-tax-reserve{border-color:#92400e;background:#3f2a0d}.metric-tax-reserve .metric-label{color:#fde68a}.metric-tax-reserve .metric-value{color:#fef3c7}.metric-irpf-estimate{border-color:#7c3aed;background:#2e1065}.metric-irpf-estimate .metric-label{color:#ddd6fe}.metric-irpf-estimate .metric-value{color:#ede9fe}.metric-receivables{border-color:#1d4ed8;background:#0f172a}.metric-receivables .metric-label{color:#bfdbfe}.metric-receivables .metric-value{color:#dbeafe}.metric-open-invoices{border-color:#334155;background:#111827}.metric-open-invoices .metric-label{color:#cbd5e1}.metric-open-invoices .metric-value{color:#e2e8f0}.metric-cancelled-invoices{border-color:#7f1d1d;background:#3f0d12}.metric-cancelled-invoices .metric-label{color:#fecaca}.metric-cancelled-invoices .metric-value{color:#fee2e2}.metric-dependency-warning{border-color:#92400e;background:#3f2a0d}.metric-dependency-warning .metric-label{color:#fde68a}.metric-dependency-warning .metric-value{color:#fef3c7}.metric-dependency-risk{border-color:#7f1d1d;background:#3f0d12}.metric-dependency-risk .metric-label{color:#fecaca}.metric-dependency-risk .metric-value{color:#fee2e2}.metric-subnote{padding:16px 18px;border-radius:14px;background:#0f172a;border:1px solid #334155;color:#cbd5e1;font-size:16px}.metric-label{font-size:12px;color:#cbd5e1;margin-bottom:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.metric-value{font-size:34px;font-weight:800;color:#f9fafb;letter-spacing:-.03em;line-height:1.08}.risk-list{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:12px}.risk-list li{padding:14px 16px;border-radius:14px;border:1px solid #374151;background:#111827;font-size:16px}.alert-link{color:inherit;text-decoration:none;display:block}.alert-link:hover{text-decoration:underline}.table-link{color:#93c5fd;text-decoration:none;font-weight:700}.table-link:hover{text-decoration:underline}.summary-ok{color:#bbf7d0;font-weight:700}.summary-info{color:#bfdbfe;font-weight:700}.summary-warning{color:#fde68a;font-weight:700}.row-selected td{background:#0f172a !important;box-shadow:inset 0 0 0 1px #1d4ed8}.row-missing-doc td{background:#111827;box-shadow:inset 0 0 0 1px rgba(148,163,184,.22)}.row-draft-review td{background:#0f172a;box-shadow:inset 0 0 0 1px rgba(245,158,11,.28)}.status-pill{display:inline-block;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:800}.status-select{padding:8px 10px;border-radius:10px;border:1px solid #374151;font-weight:700;font-size:14px}.status-select-open{background:#3f2a0d;color:#fde68a;border-color:#92400e}.status-select-paid{background:#052e16;color:#bbf7d0;border-color:#166534}.status-select-cancelled{background:#3f0d12;color:#fecaca;border-color:#7f1d1d}.status-paid{background:#052e16;color:#bbf7d0;border:1px solid #166534}.status-open{background:#3f2a0d;color:#fde68a;border:1px solid #92400e}.status-cancelled{background:#3f0d12;color:#fecaca;border:1px solid #7f1d1d}.status-neutral{background:#0f172a;color:#bfdbfe;border:1px solid #1d4ed8}.alert-high{border-color:#7f1d1d;background:#3f0d12;color:#fecaca}.alert-medium{border-color:#92400e;background:#3f2a0d;color:#fde68a}.alert-info{border-color:#1d4ed8;background:#0f172a;color:#bfdbfe}.alert-ok{border-color:#166534;background:#052e16;color:#bbf7d0}.field-alert{border-color:#b91c1c !important;box-shadow:0 0 0 1px rgba(185,28,28,.45) inset}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:static}}@media (max-width:900px){.upload-grid,.form-grid,.metric-grid,.metric-grid-compact{grid-template-columns:1fr}.metric-primary{grid-column:span 1}.app-brand{font-size:28px}.app-sidebar .nav a{min-height:54px;font-size:17px}}
.demo-banner{margin:12px 0;padding:10px 16px;border:1px dashed #facc15;background:#3b3200;color:#fef9c3;border-radius:12px;text-align:center;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 0 1px rgba(250,204,21,.15) inset}.demo-banner-home{position:sticky;top:10px;z-index:20}
.scan-actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}
.scan-actions button{flex:1 1 220px;font-size:1rem}
.ghost-button{background:#0f172a;border:1px dashed #4b5563;color:#cbd5e1}
.scan-preview{margin-top:14px;border:1px dashed #4b5563;border-radius:14px;min-height:220px;display:flex;align-items:center;justify-content:center;background:#0f172a;padding:12px;overflow:hidden}
.scan-preview img{max-width:100%;max-height:420px;border-radius:10px}
.scan-preview.empty{color:#6b7280}
.scan-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:18px}
.scan-flow-step{padding:10px;border-radius:12px;border:1px solid #374151;text-align:center;font-weight:700;font-size:13px;background:#0f172a;color:#cbd5e1}
.scan-flow-active{border-color:#2563eb;background:#1e3a8a;color:#dbeafe}
.scan-flow-done{border-color:#15803d;background:#064e3b;color:#bbf7d0}
.scan-flow-error{border-color:#b91c1c;background:#3f0d12;color:#fecaca}
@media (max-width:768px){body{padding:18px;font-size:15px;line-height:1.5}p,li,td,input,select,textarea,button{font-size:15px}.card{padding:20px;border-radius:18px}.app-main .page-subtitle,.muted{font-size:13px;line-height:1.45}.form-grid{gap:14px}.form-grid label{gap:6px;font-size:12px}.form-grid textarea,.form-grid input,.form-grid select{padding:10px 12px;min-height:42px;border-radius:10px;font-size:15px}.form-grid textarea[name="description"],.form-grid textarea[name="notes"],.form-grid textarea[name="descripcion"],.form-grid textarea[name="note"],.form-grid textarea[name="extractedText"],.form-grid textarea{min-height:76px}.actions button,.multi-actions button,.save-btn,.toggle-btn{min-height:42px;padding:10px 14px;font-size:14px;border-radius:12px}.form-section{padding:12px;border-radius:12px}.stack-form{gap:14px}.top-gap{margin-top:12px}.file-pill{padding:8px 12px}.receipt-preview,.scan-preview{min-height:180px;padding:10px}.review-grid{gap:10px}.review-item{padding:10px}.review-value{font-size:16px}}
