/* Experiencia transversal SIGED: consistencia visual, accesibilidad, móvil e impresión. */
.siged-context-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:10px 12px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--card) 94%,var(--primary) 6%);box-shadow:0 5px 18px var(--shadow)}
.siged-breadcrumb{display:flex;align-items:center;gap:7px;min-width:0;color:var(--muted);font-size:.79rem;font-weight:750;line-height:1.35}
.siged-breadcrumb strong{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.siged-breadcrumb-separator{opacity:.58}
.siged-context-actions{display:flex;gap:7px;flex:0 0 auto}.siged-context-actions button{min-height:38px;padding:7px 11px;border-radius:11px;font-size:.79rem}
.siged-context-more{display:none;min-width:42px;min-height:42px;padding:4px 10px;border-radius:11px;font-size:1.35rem;line-height:1}

#moduleContent :where(.card,[class$="-card"],[class*="-card "]){scroll-margin-top:88px}
#moduleContent :where(h1,h2,h3){text-wrap:balance}
#moduleContent :where(p,.hint,td,th,label){overflow-wrap:anywhere}
#moduleContent :where(button,.btn,[role="button"]){min-height:42px}
#moduleContent button:disabled,#moduleContent .btn:disabled{cursor:not-allowed;transform:none!important;opacity:.56}
#moduleContent :where(input,select,textarea)[aria-invalid="true"]{border-color:#b42318!important;box-shadow:0 0 0 3px rgba(180,35,24,.13)!important}
.siged-required-label::after{content:" *";color:#b42318;font-weight:900}.siged-field-error{display:block;margin:-3px 0 8px;color:#9d241b;font-size:.78rem;font-weight:750;line-height:1.35}
.siged-form-summary{margin:0 0 14px;padding:11px 13px;border:1px solid #e49a92;border-left:5px solid #b42318;border-radius:12px;background:#fff0ee;color:#762018}.siged-form-summary strong{display:block;margin-bottom:3px}
.siged-char-count{display:block;margin:-5px 2px 8px;text-align:right;color:var(--muted);font-size:.72rem}.siged-char-count.near-limit{color:#9d5810;font-weight:850}
.siged-nav-locked,.nav-item[aria-disabled="true"]{cursor:not-allowed!important;opacity:.58;filter:saturate(.45)}.siged-nav-locked::after,.nav-item[aria-disabled="true"]::after{content:"";margin-left:auto;font-size:.62rem;letter-spacing:.04em;text-transform:uppercase}body.siged-permissions-ready .siged-nav-locked::after,body.siged-permissions-ready .nav-item[aria-disabled="true"]::after{content:""}.siged-nav-locked,.nav-item[aria-disabled="true"]{display:none!important}
.siged-session-clock{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 9px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--muted);font-size:.73rem;font-weight:800;white-space:nowrap}.siged-session-clock.warning{border-color:#d59d27;background:#fff4d6;color:#76500a}.siged-session-clock.danger{border-color:#bd4d42;background:#fde4e1;color:#8d241b}

.siged-module-skeleton{position:absolute;inset:0;min-height:420px;z-index:40;display:grid;align-content:start;gap:13px;padding:18px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);pointer-events:all;animation:siged-skeleton-enter .2s ease both}.siged-module-skeleton-line,.siged-module-skeleton-card{position:relative;overflow:hidden;border-radius:12px;background:color-mix(in srgb,var(--border) 78%,var(--card) 22%)}.siged-module-skeleton-line{width:min(420px,72%);height:21px}.siged-module-skeleton-card{height:118px;border:1px solid var(--border);background:color-mix(in srgb,var(--card) 90%,transparent)}.siged-module-skeleton-line::after,.siged-module-skeleton-card::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);animation:siged-skeleton 1.25s infinite}@keyframes siged-skeleton{to{transform:translateX(100%)}}@keyframes siged-skeleton-enter{from{opacity:0}to{opacity:1}}
#moduleContent{position:relative;min-height:320px}#moduleContent> *{transition:opacity .2s ease}#moduleContent.siged-content-transitioning> :not(.siged-module-skeleton){opacity:.42;pointer-events:none;user-select:none}

.siged-print-portal,.siged-print-letterhead{display:none}.siged-screen-reader-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.siged-print-heading{display:none}.siged-print-heading h1{margin:0 0 4px;font-size:18pt}.siged-print-heading p{margin:0;color:#4b5563;font-size:9pt}

@media(max-width:850px){
  .topbar{position:sticky;top:0;z-index:90;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
  #moduleTitle{max-width:min(44vw,280px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1rem}
  .siged-context-bar{position:relative;top:auto;z-index:10;margin:0 0 10px;border-radius:12px;padding:7px 10px;box-shadow:none}
  .siged-context-more{display:inline-grid;place-items:center;flex:0 0 auto}
  .siged-context-actions{display:none;position:absolute;right:8px;top:calc(100% + 5px);z-index:20;min-width:180px;padding:7px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:0 12px 30px var(--shadow)}
  .siged-context-open .siged-context-actions{display:grid;gap:6px}
  .siged-context-actions button{width:100%;min-height:44px;padding:8px 12px;justify-content:flex-start}.siged-context-action-label{display:inline}
  .siged-session-clock{display:none}
  #moduleContent :where(button,.btn,[role="button"]){min-height:44px}
}
@media(max-width:520px){.siged-breadcrumb>span{display:none}.siged-breadcrumb-separator{display:none}.siged-breadcrumb strong{font-size:.86rem}.siged-context-bar{gap:7px}}
@media(prefers-reduced-motion:reduce){.siged-module-skeleton,.siged-module-skeleton-line::after,.siged-module-skeleton-card::after{animation:none}#moduleContent> *{transition:none}}

@media print{
  @page{size:letter portrait;margin:33mm 14mm 24mm}
  body.siged-printing>*:not(.siged-print-portal){display:none!important}
  body.siged-printing .siged-print-portal{display:block!important;position:relative!important;color:#111!important;background:transparent!important;font-family:Arial,sans-serif!important}
  body.siged-printing .siged-print-letterhead{display:block!important;position:fixed!important;top:-33mm!important;left:-14mm!important;width:216mm!important;height:279mm!important;object-fit:fill!important;z-index:0!important}
  body.siged-printing .siged-print-portal>*:not(.siged-print-letterhead){position:relative!important;z-index:1!important}
  body.siged-printing .siged-print-heading{display:block!important;margin-bottom:9mm;padding-bottom:4mm;border-bottom:2px solid #7a1120}
  body.siged-printing .siged-print-portal :where(button,.btn,.no-print,[data-close],[data-siged-no-print]){display:none!important}
  body.siged-printing .siged-print-portal :where(.card,[class$="-card"],[class*="-card "]){break-inside:avoid;box-shadow:none!important;border-color:#bbb!important}
  body.siged-printing .siged-print-portal table{width:100%!important;min-width:0!important;border-collapse:collapse!important;font-size:8.5pt!important}
  body.siged-printing .siged-print-portal th,body.siged-printing .siged-print-portal td{padding:5px!important;border:1px solid #bbb!important;color:#111!important;background:#fff!important}
  body.siged-printing .siged-print-portal a{color:#111!important;text-decoration:none!important}
}
