/* SIMA — explorador macOS dark (ex injectCss de tenants.js + maintenance.js) */

/* === modules/tenants.js === */
#section-tenants .tn-win{border:1px solid var(--win-border);border-radius:10px;overflow:hidden;background:var(--win-bg);box-shadow:0 12px 40px rgba(0,0,0,.5);}
#section-tenants .tn-bar{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--win-bar);border-bottom:1px solid var(--win-border);}
#section-tenants .tn-dots{display:flex;gap:6px;} #section-tenants .tn-dots i{width:11px;height:11px;border-radius:50%;display:inline-block;}
#section-tenants .tn-title{color:var(--win-text);font-size:.82rem;font-weight:600;}
#section-tenants .tn-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;background:var(--win-toolbar);border-bottom:1px solid var(--win-border);}
#section-tenants .tn-toolbar input[type=text],#section-tenants .tn-toolbar select{background:var(--win-bg);border:1px solid var(--win-border);color:var(--win-text);border-radius:7px;padding:7px 10px;font-size:.82rem;font-family:inherit;outline:none;}
#section-tenants .tn-toolbar input[type=text]{flex:1;min-width:160px;}
#section-tenants .tn-head,#section-tenants .tn-row{display:grid;grid-template-columns:34px 26px 2.4fr 1fr 1fr 1fr 1.1fr 1fr;align-items:center;gap:8px;padding:9px 12px;font-size:.82rem;}
#section-tenants .tn-head{background:var(--win-toolbar);color:var(--win-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--win-border);}
#section-tenants .tn-row{border-bottom:1px solid var(--win-border-soft);cursor:pointer;color:var(--win-text);}
#section-tenants .tn-row:hover{background:var(--win-hover);}
#section-tenants .tn-row.sel{background:rgba(var(--accent-rgb),.06);}
#section-tenants .tn-row .chev{transition:transform .2s;color:var(--win-muted);}
#section-tenants .tn-row.open .chev{transform:rotate(90deg);color:var(--matrix-color);}
#section-tenants .tn-exp{background:var(--win-exp);border-bottom:1px solid var(--win-border-soft);padding:14px 18px 18px 52px;}
#section-tenants .tn-card{background:var(--win-card);border:1px solid var(--win-border);border-radius:9px;padding:12px 14px;margin-bottom:12px;}
#section-tenants .tn-kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px 18px;font-size:.8rem;}
#section-tenants .tn-kv div span{color:var(--win-muted);} #section-tenants .tn-kv div b{color:var(--win-text-bright);font-weight:600;}
#section-tenants .tn-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px;}
#section-tenants .tn-sub{width:100%;border-collapse:collapse;font-size:.8rem;margin-top:4px;}
#section-tenants .tn-sub th{text-align:left;color:var(--win-muted);font-weight:600;font-size:.7rem;text-transform:uppercase;padding:5px 8px;border-bottom:1px solid var(--win-border-soft);}
#section-tenants .tn-sub td{padding:6px 8px;border-bottom:1px solid var(--win-border-soft);color:var(--win-text);}
#section-tenants .tn-rolehdr{color:var(--matrix-color);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:10px 0 2px;}
#section-tenants .ios{position:relative;display:inline-block;width:42px;height:24px;}
#section-tenants .ios input{opacity:0;width:0;height:0;}
#section-tenants .ios .sl{position:absolute;inset:0;background:var(--win-border-soft);border-radius:24px;transition:.2s;cursor:pointer;}
#section-tenants .ios .sl:before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;}
#section-tenants .ios input:checked+.sl{background:#22c55e;} #section-tenants .ios input:checked+.sl:before{transform:translateX(18px);}
/* Sub-tabs del detalle inline: pestañas curvas integradas a la card de contenido */
#section-tenants #tn-detail #sima-td-tabs{display:flex;gap:4px;border:none;border-bottom:1px solid var(--win-border);margin:0;padding:0 0 0 4px;}
#section-tenants #tn-detail #sima-td-tabs .tab-btn{border:1px solid var(--win-border);border-bottom:none;border-radius:10px 10px 0 0;background:var(--win-card);color:var(--win-muted);padding:9px 16px;margin-bottom:-1px;font-size:.84rem;}
#section-tenants #tn-detail #sima-td-tabs .tab-btn:hover{background:var(--win-hover);color:var(--win-text-bright);}
#section-tenants #tn-detail #sima-td-tabs .tab-btn.active{background:var(--win-exp);color:var(--matrix-color);border-bottom:1px solid var(--win-exp);}
#section-tenants #tn-detail #sima-td-content{border:1px solid var(--win-border);border-top:none;border-radius:0 10px 10px 10px;background:var(--win-exp);padding:16px;}

/* === modules/maintenance.js === */
#section-maintenance .mnt-win{border:1px solid var(--win-border);border-radius:10px;overflow:hidden;background:var(--win-bg);box-shadow:0 12px 40px rgba(0,0,0,.5);}
#section-maintenance .mnt-bar{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--win-bar);border-bottom:1px solid var(--win-border);}
#section-maintenance .mnt-dots{display:flex;gap:6px;}
#section-maintenance .mnt-dots i{width:11px;height:11px;border-radius:50%;display:inline-block;}
#section-maintenance .mnt-title{color:var(--win-text);font-size:.82rem;font-weight:600;letter-spacing:.02em;}
#section-maintenance .mnt-tabs{display:flex;gap:0;background:var(--win-toolbar);padding:6px 8px 0;border-bottom:1px solid var(--win-border);overflow-x:auto;}
#section-maintenance .mnt-tab{display:flex;align-items:center;gap:7px;padding:8px 14px;font-size:.82rem;color:var(--win-muted);background:var(--win-hover);border:1px solid var(--win-border);border-bottom:none;border-radius:8px 8px 0 0;margin-right:4px;cursor:pointer;white-space:nowrap;position:relative;top:1px;transition:background .15s,color .15s;}
#section-maintenance .mnt-tab:hover{color:var(--win-text-bright);background:var(--win-hover);}
#section-maintenance .mnt-tab.active{background:var(--win-bg);color:var(--matrix-color);border-bottom:1px solid var(--win-bg);}
#section-maintenance .mnt-content{padding:14px;background:var(--win-bg);min-height:320px;}
#section-maintenance .mnt-pathbar{display:flex;align-items:center;gap:8px;background:var(--win-toolbar);border:1px solid var(--win-border);border-radius:7px;padding:6px 10px;margin-bottom:10px;font-family:monospace;font-size:.78rem;color:var(--win-text);}
#section-maintenance .mnt-rows{border:1px solid var(--win-border);border-radius:8px;overflow:hidden;}
#section-maintenance .mnt-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--win-border-soft);cursor:default;font-size:.83rem;color:var(--win-text);}
#section-maintenance .mnt-row:last-child{border-bottom:none;}
#section-maintenance .mnt-row:hover{background:var(--win-hover);}
#section-maintenance .mnt-row .nm{flex:1;font-family:monospace;font-size:.78rem;word-break:break-all;color:var(--win-text);}
#section-maintenance .mnt-row .ic{font-size:1.05rem;color:#7fb0ff;flex-shrink:0;}
#section-maintenance .mnt-seg{display:inline-flex;border:1px solid var(--win-border);border-radius:7px;overflow:hidden;}
#section-maintenance .mnt-seg button{background:var(--win-hover);color:var(--win-muted);border:none;padding:6px 12px;font-size:.78rem;cursor:pointer;font-family:inherit;}
#section-maintenance .mnt-seg button.active{background:var(--matrix-color);color:#000;font-weight:700;}
#section-maintenance .mnt-tag{font-size:.68rem;padding:1px 7px;border-radius:10px;font-weight:600;flex-shrink:0;}
#section-maintenance .mnt-tag.used{background:rgba(var(--accent-rgb),.12);color:#22c55e;border:1px solid rgba(var(--accent-rgb),.3);}
#section-maintenance .mnt-tag.orphan{background:rgba(255,68,68,.12);color:#ff6666;border:1px solid rgba(255,68,68,.3);}
#section-maintenance .mnt-viewer{position:relative;background:#111;border:1px solid var(--win-border);border-radius:8px;height:70vh;display:flex;align-items:center;justify-content:center;overflow:auto;}
#section-maintenance .mnt-viewer img{max-width:100%;max-height:100%;}
#section-maintenance .mnt-viewer iframe{width:100%;height:100%;border:none;background:#fff;}

/* ── PERMISOS — ventana macOS + matriz multi-rol ──────────────────────────── */
#section-permissions .pm-win{border:1px solid var(--win-border);border-radius:10px;overflow:hidden;background:var(--win-bg);box-shadow:0 12px 40px rgba(0,0,0,.5);}
#section-permissions .pm-bar{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--win-bar);border-bottom:1px solid var(--win-border);}
#section-permissions .pm-dots{display:flex;gap:6px;} #section-permissions .pm-dots i{width:11px;height:11px;border-radius:50%;display:inline-block;}
#section-permissions .pm-title{color:var(--win-text);font-size:.82rem;font-weight:600;}
#section-permissions .pm-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;background:var(--win-toolbar);border-bottom:1px solid var(--win-border);}
#section-permissions .pm-toolbar input[type=text]{flex:1;min-width:160px;background:var(--win-bg);border:1px solid var(--win-border);color:var(--win-text);border-radius:7px;padding:7px 10px;font-size:.82rem;font-family:inherit;outline:none;}
#section-permissions .pm-matrix-wrap{max-height:64vh;overflow:auto;background:var(--win-bg);}
#section-permissions .pm-matrix{border-collapse:separate;border-spacing:0;width:100%;font-size:.82rem;}
#section-permissions .pm-matrix th,#section-permissions .pm-matrix td{border-bottom:1px solid var(--win-border-soft);}
#section-permissions .pm-matrix thead th{position:sticky;top:0;z-index:3;background:var(--win-toolbar);color:var(--win-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;padding:9px 12px;text-align:center;}
#section-permissions .pm-corner{position:sticky;left:0;z-index:4;text-align:left!important;min-width:210px;}
#section-permissions .pm-rolehdr{min-width:108px;}
#section-permissions .pm-rolehdr div{color:var(--win-text);font-weight:700;font-size:.74rem;text-transform:none;letter-spacing:0;}
#section-permissions .pm-def{margin-top:4px;background:none;border:1px solid var(--win-border);color:var(--win-muted);border-radius:6px;padding:1px 7px;cursor:pointer;font-size:.72rem;}
#section-permissions .pm-def:hover{color:var(--matrix-color);border-color:var(--matrix-color);}
#section-permissions .pm-modrow{cursor:pointer;background:var(--win-card);}
#section-permissions .pm-modrow:hover{background:var(--win-hover);}
#section-permissions .pm-modrow td{padding:8px 12px;color:var(--win-text);position:sticky;left:0;}
#section-permissions .pm-modrow b{color:var(--win-text-bright);}
#section-permissions .pm-chev{color:var(--win-muted);margin-right:4px;}
#section-permissions .pm-code{color:var(--win-muted);font-size:.7rem;font-family:monospace;margin-left:4px;}
#section-permissions .pm-count{display:inline-block;margin-left:8px;background:rgba(var(--accent-rgb),.14);color:var(--matrix-color);border-radius:20px;padding:0 8px;font-size:.7rem;font-weight:700;}
#section-permissions .pm-permrow:hover{background:var(--win-hover);}
#section-permissions .pm-perm{position:sticky;left:0;z-index:2;background:var(--win-bg);color:var(--win-text);padding:8px 12px 8px 28px;white-space:nowrap;}
#section-permissions .pm-permrow:hover .pm-perm{background:var(--win-hover);}
#section-permissions .pm-cell{text-align:center;padding:6px 12px;}

/* ── Componente REUTILIZABLE: ventana macOS + pestañas curvas (theme-aware) ── */
#sima-panel .mac-win{border:1px solid var(--win-border);border-radius:10px;overflow:hidden;background:var(--win-bg);box-shadow:0 12px 40px rgba(0,0,0,.4);}
#sima-panel .mac-bar{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--win-bar);border-bottom:1px solid var(--win-border);}
#sima-panel .mac-dots{display:flex;gap:6px;flex-shrink:0;} #sima-panel .mac-dots i{width:11px;height:11px;border-radius:50%;display:inline-block;}
#sima-panel .mac-title{color:var(--win-text);font-size:.82rem;font-weight:600;display:flex;align-items:center;gap:7px;}
#sima-panel .mac-tools{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
#sima-panel .mac-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;background:var(--win-toolbar);border-bottom:1px solid var(--win-border);}
#sima-panel .mac-tabs{display:flex;gap:4px;padding:8px 0 0 8px;background:var(--win-toolbar);border-bottom:1px solid var(--win-border);overflow-x:auto;}
#sima-panel .mac-tab{border:1px solid var(--win-border);border-bottom:none;border-radius:10px 10px 0 0;background:var(--win-card);color:var(--win-muted);padding:8px 16px;margin-bottom:-1px;font-size:.82rem;cursor:pointer;font-family:inherit;white-space:nowrap;display:flex;align-items:center;gap:6px;}
#sima-panel .mac-tab:hover{background:var(--win-hover);color:var(--win-text-bright);}
#sima-panel .mac-tab.active{background:var(--win-bg);color:var(--matrix-color);font-weight:600;border-bottom:1px solid var(--win-bg);}
#sima-panel .mac-tab .mac-badge{background:var(--warn);color:#000;border-radius:10px;padding:0 6px;font-size:.66rem;font-weight:700;}
#sima-panel .mac-body{background:var(--win-bg);padding:16px;color:var(--win-text);min-height:120px;}
#sima-panel .mac-toolbar input[type=text],#sima-panel .mac-toolbar select{background:var(--win-bg);border:1px solid var(--win-border);color:var(--win-text);border-radius:7px;padding:7px 10px;font-size:.82rem;font-family:inherit;outline:none;}
#sima-panel .mac-bar select,#sima-panel .mac-tools select{background:var(--win-bg);border:1px solid var(--win-border);color:var(--win-text);border-radius:7px;padding:5px 9px;font-size:.8rem;font-family:inherit;cursor:pointer;outline:none;}

/* Cristal: la ventana se transparenta/desenfoca según el tema (--win-blur) */
#sima-panel .mac-win,#section-tenants .tn-win,#section-maintenance .mnt-win,#section-permissions .pm-win{backdrop-filter:blur(var(--win-blur,0px));-webkit-backdrop-filter:blur(var(--win-blur,0px));}

/* ── Cohesión: el contenido DENTRO de una ventana hereda sus superficies ───── */
#sima-panel .mac-body table th{color:var(--win-muted);border-bottom-color:var(--win-border);}
#sima-panel .mac-body td{border-bottom:1px solid var(--win-border-soft);}
#sima-panel .mac-body tr:hover td{background:var(--win-hover);}
#sima-panel .mac-body .glass-card,#sima-panel .mac-body .glass{background:var(--win-card);border-color:var(--win-border);backdrop-filter:blur(var(--win-blur,0px));-webkit-backdrop-filter:blur(var(--win-blur,0px));}

/* ── Botones macOS (rojo/amarillo/verde) — clickables ──────────────────────── */
#sima-panel .mac-dots i,#section-tenants .tn-dots i,#section-maintenance .mnt-dots i,#section-permissions .pm-dots i{cursor:pointer;transition:filter .15s;}
#sima-panel .mac-dots i:hover,#section-tenants .tn-dots i:hover,#section-maintenance .mnt-dots i:hover,#section-permissions .pm-dots i:hover{filter:brightness(1.25);}

/* Verde = pantalla completa: la ventana cubre todo el viewport (oculta el resto). */
#sima-panel .mac-win.mac-fullscreen,
#section-tenants .tn-win.mac-fullscreen,
#section-maintenance .mnt-win.mac-fullscreen,
#section-permissions .pm-win.mac-fullscreen{
  position:fixed;inset:0;z-index:9000;border-radius:0;overflow:auto;box-shadow:none;
}
#sima-panel .mac-body .stat-card{background:var(--win-card);border:1px solid var(--win-border);}
#sima-panel .mac-body .stat-value{color:var(--matrix-color);}
#sima-panel .mac-body .form-input,#sima-panel .mac-body .form-select,#sima-panel .mac-body textarea.form-input{background:var(--win-bg);border:1px solid var(--win-border);color:var(--win-text);}
#sima-panel .mac-body .field label{color:var(--win-muted);}
