body:not(.admin-role) #planificador393,body:not(.admin-role) [data-tab="planificador393"]{display:none!important}
.p393Card{background:white;border:1px solid #d6e5e9;border-radius:16px;padding:18px;margin:16px 0}
#planificador393{--p-ink:#152d3c;--p-accent:#007f99;color:var(--p-ink);max-width:1150px;margin:auto;padding-bottom:70px}
.p393Hero{padding:25px;background:linear-gradient(120deg,#063d54,#087f92);color:white;border-radius:20px;margin:15px 0}
.p393Hero h2{color:white;margin:8px 0;font-size:27px}.p393Hero p{color:#dbf4f6;max-width:700px;line-height:1.5}.p393Eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:2px}
.p393Controls{display:flex;gap:14px;flex-wrap:wrap;align-items:end}.p393Controls label{display:flex;flex-direction:column;gap:5px;flex:1;min-width:140px;font-size:13px;font-weight:700}.p393Controls input,.p393Controls select{min-height:43px;width:100%;box-sizing:border-box}
#planificador393 button{cursor:pointer;min-height:40px}.p393Actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.p393Actions button{flex:1}.p393Status{padding:12px 0;line-height:1.5;white-space:pre-wrap}.p393Stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.p393Stat{padding:17px;background:#eaf4f6;border-radius:12px}.p393Stat b{font-size:25px;display:block}.p393Stat span{font-size:12px}
.p393Day{background:white;border:1px solid #d6e5e9;border-radius:15px;margin:16px 0;overflow:hidden}.p393Day header{padding:15px 18px;background:#eef5f7;display:flex;justify-content:space-between;align-items:center;gap:10px}.p393Day h3{margin:0;font-size:16px}.p393Day small{font-size:12px}.p393Job{display:grid;grid-template-columns:1fr 160px 100px 75px;align-items:center;gap:10px;border-top:1px solid #e7eef1;padding:13px 18px}.p393Job b{display:block;font-size:14px}.p393Job small{display:block;color:#546b79;font-size:12px;margin-top:5px;line-height:1.45}.p393Job input{width:100%;box-sizing:border-box;min-height:36px}.p393Job button{background:#fff1ef!important;color:#9e3025!important;border:1px solid #efc9c4!important;font-size:12px}.p393Existing{background:#f7f9fa;color:#5c6b77}.p393Badge{display:inline-block;padding:3px 7px;border-radius:5px;background:#e7f4eb;color:#206947;font-size:11px;margin-bottom:5px}.p393Alert{padding:14px 18px;border-radius:12px;background:#fff3dc;margin:12px 0;line-height:1.5}.p393Error{background:#fff0ee;color:#982719}.p393Alert ul{padding-left:20px;max-height:280px;overflow:auto}.p393Sources{font-size:13px;line-height:1.6}.p393Sources summary{cursor:pointer;font-weight:700}.p393Pending{width:100%;border-collapse:collapse;font-size:13px}.p393Pending th,.p393Pending td{text-align:left;vertical-align:top;padding:10px;border-bottom:1px solid #e3ebef}.p393Scroll{overflow:auto}.p393Muted{color:#5a7280;font-size:13px}.p393Job label{font-size:11px;color:#5a7280}.p393Job label small{margin:0}.p393Rule{border-bottom:1px solid #e8eff2;padding:8px 0}.p393Launcher{width:100%;margin-bottom:14px}.p393Save{background:#087747!important;color:white!important}.p393Disabled, #planificador393 button:disabled{opacity:.45;cursor:default}
@media(max-width:650px){.p393Hero{padding:19px}.p393Hero h2{font-size:23px}.p393Job{grid-template-columns:1fr 1fr;padding:13px}.p393Job>div:first-child{grid-column:1/-1}.p393Job>button{grid-column:2}.p393Day header{display:block}.p393Day header small{display:block;margin-top:5px}.p393Stats{gap:6px}.p393Stat{padding:12px 8px}.p393Stat b{font-size:22px}.p393Actions button{flex:1 0 140px}.p393Controls label{min-width:120px}}
.p407ImportText{width:100%;min-height:180px;box-sizing:border-box;border:1px solid #b8cdd3;border-radius:12px;padding:12px;font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;resize:vertical;background:#fbfdfe}
.p407ImportCard .p393Actions{margin-top:10px}

/* v417: importación directa JSON/ZIP */
.p417FileImport{margin:.75rem 0}.p417FileImport label{display:block;font-weight:700}.p417FileImport input[type=file]{display:block;width:100%;margin-top:.4rem;padding:.7rem;border:1px dashed #8aa4b1;border-radius:12px;background:#f7fbfd}
