/* Mesa del expediente F3/F4. Hojas sin PDF, sin estilos calculados ni observers. */
.gexp-workspace { display:flex; flex-direction:column; min-height:0; height:100%; color:var(--atlas-stone-900,#1A1D2A); background:var(--atlas-ivory-50,#FAF8F2); font-size:13px; }
.gexp-workspace [hidden] { display:none !important; }
.gexp-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:16px; border-bottom:1px solid var(--atlas-stone-200,#E5E2DA); }
.gexp-heading h1,.gexp-heading h2 { font-size:18px; font-weight:800; margin:0; color:var(--atlas-navy-900,#0E1A3A); }
.gexp-heading p { font-size:12px; margin:4px 0 0; color:var(--atlas-stone-700,#5D6477); }
.gexp-workspace button,.gexp-drawer button,.gexp-viewer button { min-height:36px; padding:6px 10px; border-radius:6px; }
.gexp-workspace button:focus-visible,.gexp-drawer button:focus-visible,.gexp-viewer button:focus-visible,.gexp-cell:focus-visible { outline:2px solid var(--atlas-navy-500,#3D4FA3); outline-offset:2px; }
.gexp-workspace button:disabled,.gexp-drawer button:disabled { opacity:.55; cursor:default; }
.gexp-filters { padding:12px 16px; position:sticky; top:0; background:var(--atlas-ivory-50,#FAF8F2); z-index:1; }
.gexp-list-status { display:flex; gap:12px; flex-wrap:wrap; padding:0 16px 8px; color:var(--atlas-stone-700,#5D6477); }
.gexp-columns { display:grid; grid-template-columns:280px minmax(0,1fr); flex:1; min-height:0; }
.gexp-operation-list { overflow:auto; border-right:1px solid var(--atlas-stone-200,#E5E2DA); padding:8px; }
.gexp-op { width:100%; display:flex; flex-direction:column; align-items:stretch; text-align:left; gap:6px; border:1px solid transparent; border-bottom-color:var(--atlas-stone-200,#E5E2DA); }
.gexp-op:hover,.gexp-op[aria-pressed=true] { background:white; border-color:var(--atlas-navy-500,#3D4FA3); }
.gexp-op strong,.gexp-summary { font-family:var(--font-mono,monospace); font-variant-numeric:tabular-nums; }
.gexp-op small { color:var(--atlas-stone-700,#5D6477); }
.gexp-progress { display:grid; grid-template-columns:repeat(10,1fr); gap:3px; }
.gexp-progress i { height:4px; background:var(--atlas-stone-200,#E5E2DA); border-radius:1px; }
.gexp-progress .gexp-progress-done { background:var(--atlas-navy-700,#1E2D6B); }
.gexp-operation { min-width:0; overflow:auto; padding:8px 16px; }
.gexp-tabs { display:flex; flex-wrap:wrap; gap:4px; padding:12px 0; }
.gexp-tabs [aria-selected=true] { background:var(--atlas-navy-900,#0E1A3A); color:white; }
.gexp-summary { padding-bottom:12px; }
.gexp-grid { border:1px solid var(--atlas-stone-200,#E5E2DA); border-radius:8px; overflow:hidden; }
.gexp-grid-head,.gexp-row { display:grid; grid-template-columns:minmax(160px,1.6fr) repeat(6,minmax(65px,1fr)); }
.gexp-grid-head { font-size:11px; font-weight:700; background:var(--atlas-stone-100,#F0EEE8); position:sticky; top:0; z-index:1; }
.gexp-grid-head>div { padding:10px 6px; }
.gexp-row { border-bottom:1px solid var(--atlas-stone-200,#E5E2DA); background:white; }
.gexp-row>[role=rowheader] { padding:4px 6px; }
.gexp-row small { display:block; font-size:11px; padding:0 10px; overflow-wrap:anywhere; color:var(--atlas-stone-700,#5D6477); }
.gexp-row button { font-weight:700; text-align:left; }
.gexp-group { background:var(--atlas-stone-100,#F0EEE8); color:var(--atlas-navy-900,#0E1A3A); padding:8px 12px; font-weight:800; }
.gexp-cell { padding:8px 4px; display:flex; flex-direction:column; justify-content:center; gap:4px; border-left:1px solid var(--atlas-stone-100,#F0EEE8); font-size:11px; overflow-wrap:anywhere; }
.gexp-state { padding:3px 4px; border-radius:4px; color:var(--atlas-stone-700,#5D6477); }
.gexp-state-hecho { color:#15803D; background:#f0fdf4; }
.gexp-state-cur { color:var(--atlas-navy-700,#1E2D6B); background:var(--atlas-stone-100,#F0EEE8); }
.gexp-state-atencion { color:#B45309; background:#fffbeb; }
.gexp-state-rechazado,.gexp-state-no_leido { color:#B91C1C; background:#fef2f2; }
.gexp-state-na { color:var(--atlas-stone-700,#5D6477); }
.gexp-mobile-label { display:none; }
.gexp-links { padding:16px 0; }
.gexp-link { display:grid; grid-template-columns:1fr 80px 1fr; align-items:center; gap:8px; color:var(--atlas-navy-700,#1E2D6B); font-size:12px; margin-bottom:8px; }
.gexp-link svg { width:80px; height:24px; }
.gexp-link small { grid-column:1/-1; color:var(--atlas-stone-700,#5D6477); }
.gexp-unlinked,.gexp-notice,.gexp-notices,.gexp-read-status { color:#B45309; overflow-wrap:anywhere; }
.gexp-drawer { position:fixed; inset:0; z-index:400; display:flex; justify-content:flex-end; background:rgb(14 26 58 / .35); }
.gexp-drawer-card { display:flex; flex-direction:column; width:min(560px,100%); height:100%; box-shadow:-8px 0 24px rgb(14 26 58 / .15); }
.gexp-drawer-body { padding:16px; flex:1; min-height:0; overflow:auto; }
.gexp-stack { display:flex; flex-wrap:wrap; padding:12px 8px 24px; gap:8px; }
.gexp-sheet { width:190px; background:var(--atlas-ivory-50,#FAF8F2); border:1px solid var(--atlas-stone-300,#D4D2CC); border-radius:4px; box-shadow:0 4px 8px rgb(14 26 58 / .1); transform:rotate(-3deg); transition:transform 180ms ease-out; }
.gexp-sheet:nth-child(even) { transform:rotate(3deg); }
.gexp-sheet:hover,.gexp-sheet:focus-within { transform:rotate(0) translateY(-4px); }
.gexp-sheet>button { width:100%; min-height:150px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:12px; text-align:left; }
.gexp-sheet strong { color:var(--atlas-navy-900,#0E1A3A); font-family:var(--font-mono,monospace); }
.gexp-sheet-tools { display:flex; flex-wrap:wrap; border-top:1px solid var(--atlas-stone-200,#E5E2DA); font-size:11px; }
.gexp-detail-section { margin:20px 0; overflow-wrap:anywhere; }
.gexp-detail-section h3,.gexp-drawer-body h3 { font-size:15px; font-weight:800; margin:16px 0 8px; }
.gexp-detail-section h4 { font-size:13px; font-weight:700; margin:16px 0 8px; }
.gexp-mail,.gexp-correction { border-left:2px solid var(--atlas-stone-300,#D4D2CC); padding:8px 12px; margin:8px 0; background:var(--atlas-ivory-50,#FAF8F2); }
.gexp-correction dt { font-weight:700; }
.gexp-correction dd,.gexp-mail p { padding:2px 0; margin:0; }
[data-exp-historial] { list-style:none; padding:0; }
[data-exp-historial] li { display:flex; flex-direction:column; gap:4px; border-left:2px solid var(--atlas-stone-300,#D4D2CC); margin:8px 0; padding:8px 12px; overflow-wrap:anywhere; }
.gexp-viewer { position:fixed; inset:0; z-index:500; display:flex; background:var(--atlas-navy-900,#0E1A3A); }
.gexp-viewer-card { width:100%; height:100dvh; display:flex; flex-direction:column; animation:gexp-sheet-flight 180ms ease-out; }
.gexp-viewer-body { flex:1; min-height:0; overflow:auto; display:flex; }
.gexp-viewer-body iframe,.gexp-viewer-body embed { width:100%; height:100%; }
@keyframes gexp-sheet-flight { from { transform:translateY(12px) scale(.98); opacity:.7; } to { transform:none; opacity:1; } }
@media (max-width:1100px) { .gexp-columns { grid-template-columns:220px minmax(0,1fr); } .gexp-grid-head,.gexp-row { grid-template-columns:minmax(140px,1.5fr) repeat(6,minmax(0,1fr)); } }
@media (max-width:767px) {
    .gexp-workspace { height:auto; overflow:auto; font-size:16px; }
    .gexp-columns { display:flex; flex-direction:column; }
    .gexp-operation-list { max-height:320px; border-right:0; border-bottom:1px solid var(--atlas-stone-200,#E5E2DA); }
    .gexp-operation { overflow:visible; padding:12px; }
    .gexp-grid-head { display:none; }
    .gexp-row { display:block; padding:8px; margin:8px; border:1px solid var(--atlas-stone-200,#E5E2DA); border-radius:8px; }
    .gexp-cell { flex-direction:row; justify-content:space-between; border-left:2px solid var(--atlas-stone-200,#E5E2DA); margin:4px 12px; gap:12px; font-size:13px; }
    .gexp-mobile-label { display:block; min-width:100px; }
    .gexp-drawer { align-items:flex-end; }
    .gexp-drawer-card { height:90dvh; border-radius:12px 12px 0 0; }
    .gexp-drawer button,.gexp-workspace button,.gexp-viewer button { min-height:44px; }
    .gexp-link { grid-template-columns:1fr 32px 1fr; } .gexp-link svg { width:32px; }
}
@media (prefers-reduced-motion:reduce) { .gexp-sheet,.gexp-viewer-card { animation:none; transition:none; transform:none; } .gexp-sheet:nth-child(even),.gexp-sheet:hover,.gexp-sheet:focus-within { transform:none; } }
