/* FIACA / Grupo Huarpe — sistema editorial 01 */
:root { --primary:#0d1f3c; --primary-container:#142e50; --surface:#f7f5f0; --surface-low:#f0eee8; --on-surface:#19283b; --on-surface-variant:#536071; --outline-variant:#d7dbdd; --coral:#f37021; --coral-dark:#ac4106; --coral-deep:#873306; --coral-fixed:#fce9db; --radius-lg:6px; --radius-xl:10px; --sidebar-w:238px; --topbar-h:88px; }
body { background:var(--surface); }
.topbar { background:#fff; box-shadow:none; border-bottom:1px solid var(--outline-variant); padding:0 36px; }
.topbar-title { font-size:35px; letter-spacing:-1.5px; }
.topbar-sub { text-transform:none; letter-spacing:0; font-weight:500; font-size:11px; }
.topbar-user .btn { border:0; font-size:12px; }
.user-name { background:var(--surface-low); border-radius:24px; padding:9px 15px; }
.sidebar { background:var(--primary); padding:34px 18px 24px; display:flex; flex-direction:column; }
.nav-caption { color:#b8c5d7; font-size:10px; letter-spacing:1.8px; margin:0 14px 22px; }
.nav-list { gap:7px; }
.nav-link { color:#d7e1ee; display:flex; align-items:center; gap:15px; min-height:48px; border-left:0; padding:12px 15px; font-weight:500; }
.nav-link:hover { background:#1b3554; color:#fff; }
.nav-link[aria-current="page"] { background:#fff1e7; color:#0d1f3c; box-shadow:inset 3px 0 #f37021; border:0; font-weight:700; }
.nav-number { font-size:10px; opacity:.75; font-variant-numeric:tabular-nums; }
.sidebar-footer { margin-top:auto; padding:50px 15px 0; }
.sidebar-footer img { width:85px; height:62px; object-fit:contain; background:#fff; padding:8px; border-radius:4px; }
.sidebar-footer p { font-size:11px; line-height:1.8; color:#b8c5d7; margin-top:16px; }
.main { max-width:1440px; width:100%; padding:48px 54px 80px; }
.view-head { align-items:center; gap:24px; margin-bottom:32px; }
.eyebrow { font-size:10px; letter-spacing:1.8px; color:var(--coral-dark); font-weight:700; margin-bottom:13px; }
.view-title { font-size:46px; line-height:1.08; margin-bottom:12px; letter-spacing:-1.1px; }
.view-head .muted { font-size:13px; max-width:540px; line-height:1.8; }
.btn { min-height:42px; padding:11px 17px; }
.btn-primary { background:var(--primary); }
.btn-primary:hover:not(:disabled) { background:#23466e; }
.summary-grid { display:grid; grid-template-columns:repeat(3,1fr); margin:0 0 30px; background:#fff; border:1px solid var(--outline-variant); border-top:3px solid var(--coral); border-radius:8px; }
.summary-item { padding:22px 26px; display:flex; justify-content:space-between; align-items:center; gap:15px; }
.summary-item + .summary-item { border-left:1px solid var(--outline-variant); }
.summary-item span { font-size:12px; color:var(--on-surface-variant); }
.summary-item strong { font:500 32px var(--font-head); color:var(--primary); }
.section-status { font-size:12px; margin:0 0 13px; }
.empty { background:#fff; border:1px dashed #c5cbd0; padding:70px 32px; text-align:center; }
.empty::before { content:'+'; display:grid; place-items:center; width:48px; height:48px; margin:0 auto 23px; background:#fce9db; color:var(--coral-dark); border-radius:50%; font-size:25px; }
.empty strong { font-size:30px; line-height:1.2; margin-bottom:12px; }
.empty span { display:block; max-width:440px; margin:auto; font-size:13px; line-height:1.8; }
.task { background:#fff; border:1px solid var(--outline-variant); box-shadow:none; border-radius:8px; }
.toolbar { background:#fff; padding:20px; border:1px solid var(--outline-variant); border-radius:8px; }
.pending-card { border:1px solid var(--outline-variant); border-top:3px solid var(--coral); padding:32px; }
.login-card { width:min(100%,430px); padding:36px 40px; border:1px solid var(--outline-variant); border-top:4px solid var(--coral); box-shadow:0 18px 60px #0d1f3c10; }
.login-logo { width:100px; height:67px; object-fit:contain; margin-bottom:28px; }
.login-card .brand-title { font-size:52px; letter-spacing:-2px; margin:10px 0; }
.login-card .brand-label { font-size:10px; letter-spacing:1.8px; }
.login-card .field:first-of-type { margin-top:28px; }
.modal { border-top:4px solid var(--coral); }
@media(max-width:1100px) { .main {padding:36px 28px 60px;} .summary-item {padding:20px 16px;} }
@media(max-width:820px) {
 :root {--topbar-h:76px;}
 .topbar {padding:0 20px;} .topbar-title {font-size:30px;}
 .sidebar {padding:8px;display:block;} .nav-caption,.sidebar-footer {display:none;}
 .nav-list {gap:4px;} .nav-link {padding:10px 14px; min-height:42px; white-space:nowrap;}
 .nav-number {display:none;} .nav-link[aria-current="page"] {box-shadow:inset 0 -3px #f37021;}
 .main {padding:28px 20px 50px;} .view-title {font-size:36px;} .view-head {align-items:flex-start;}
 .summary-item {display:block;padding:18px 14px;} .summary-item strong {display:block;margin-top:10px;}
 .empty {padding:44px 24px;} .empty strong {font-size:26px;}
}
@media(max-width:480px) { .view-head {flex-direction:column; gap:18px;} .summary-item span {font-size:10px;} .summary-item {padding:16px 10px;} .login-card {padding:28px;} .view-actions {flex-wrap:wrap;} }

.sidebar-footer img { background:transparent; padding:0; }
.login-logo { background:#0d1f3c; padding:10px; border-radius:4px; }
