#focusToggle[aria-expanded="true"]{border-color:#a7c3ce;color:#e9f7fa;background:#31505b}
.focus-panel{position:absolute;z-index:8;top:99px;right:20px;bottom:78px;width:min(1080px,calc(100vw - 40px));display:flex;flex-direction:column;overflow:auto;scrollbar-width:thin}
.focus-heading{flex:none}.focus-heading h2{margin-top:3px}.focus-toolbar{display:flex;align-items:end;gap:9px;padding:12px 16px;border-bottom:1px solid #8ab0bf24;flex:none}.focus-toolbar button{min-height:40px}.focus-select-label{flex:1;min-width:150px;margin:0}.focus-select-label select{display:block;margin-top:5px}.focus-content{padding:14px 16px;min-height:180px}.focus-empty{min-height:180px;display:grid;align-content:center;justify-items:center;gap:9px;border:1px dashed #8eacbb44;background:#0c1d2766;color:#e2eaf0;text-align:center;padding:25px}.focus-empty span{color:#96aebb}.focus-tree-intro{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}.focus-tree-intro>div:first-child{min-width:0}.focus-tree-intro .eyebrow{font-size:15px;color:#d5c68d;font-weight:700}.focus-tree-intro p{margin-top:5px;color:#b5c5cc;font-size:14px;line-height:1.45}.focus-progress{width:190px;flex:none;display:grid;grid-template-columns:auto 1fr;gap:4px 9px;align-items:center}.focus-progress strong{font-size:22px;color:#b9dcef}.focus-progress span{font-size:12px;color:#a0b5bd;text-align:right}.focus-progress i{grid-column:1/-1;height:7px;overflow:hidden;background:#0b1a21;border:1px solid #77939d55}.focus-progress i b{display:block;height:100%;background:linear-gradient(90deg,#688e94,#d0ba76)}.focus-legend{display:flex;gap:14px;margin:0 0 8px;color:#9fb1b8;font-size:12px}.focus-legend span::before{content:"";display:inline-block;width:8px;height:8px;margin-right:6px;border:1px solid currentColor;background:#223a44}.focus-legend .available::before{color:#d5bb70}.focus-legend .completed::before{color:#77c3a0;background:#285043}.focus-legend .locked::before{color:#70838a;background:#243139}.focus-graph-scroll{max-height:min(43vh,470px);min-height:170px;overflow:auto;border:1px solid #7395a52b;background:linear-gradient(135deg,#0d2029a8,#152a32a8);scrollbar-width:thin;touch-action:pan-x pan-y;overscroll-behavior:contain}.focus-tree-map{position:relative;min-width:max(100%,calc(var(--focus-cols)*245px));min-height:100%;padding:12px 10px}.focus-lanes{position:relative;z-index:1;display:grid;grid-template-columns:repeat(var(--focus-cols),minmax(220px,1fr));align-items:center;gap:12px;min-height:160px}.focus-lane{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0}.focus-lane-label{align-self:flex-start;color:#829da8;font-size:11px;letter-spacing:.14em;padding:0 4px 4px}.focus-links{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.focus-links path{fill:none;stroke:#738f98;stroke-width:1.5;opacity:.6}.focus-links path.done{stroke:#87cbb0;stroke-width:2.1;opacity:.92}.focus-node{position:relative;z-index:2;width:min(100%,245px);min-height:76px;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;text-align:left;padding:8px;border:1px solid #677f865e;background:linear-gradient(115deg,#233941,#172a31);box-shadow:0 4px 12px #07131b44;transition:border-color .16s,background .16s,transform .16s}.focus-node:hover{transform:translateY(-1px)}.focus-node.selected{border-color:#dcc77c;box-shadow:0 0 0 1px #dcc77c44,0 5px 14px #06131a66}.focus-node.available{border-left:3px solid #c6ae67}.focus-node.completed{border-left:3px solid #71c49b;background:linear-gradient(115deg,#24483e,#182e32)}.focus-node.locked,.focus-node.excluded{opacity:.55;border-style:dashed;filter:saturate(.45)}.focus-node-icon{width:48px;height:48px;display:grid;place-items:center;overflow:hidden;border:1px solid #bfaf6a;background:radial-gradient(circle,#405158,#14252b);color:#e5d28a;font:700 28px Bahnschrift,Inter,sans-serif;box-shadow:inset 0 0 12px #040e15}.focus-node-icon img,.focus-detail-art img{width:100%;height:100%;object-fit:contain}.focus-node-copy{min-width:0}.focus-node-copy strong,.focus-node-copy small{display:block}.focus-node-copy strong{font-size:14px;line-height:1.28;overflow-wrap:anywhere}.focus-node-copy small{margin-top:5px;font-size:12px;color:#a4b7bd}.focus-node.completed .focus-node-copy small{color:#92d4ae}.focus-node-detail{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;margin-top:13px;padding:14px;border:1px solid #82969b55;background:linear-gradient(130deg,#1c333b,#132830)}.focus-detail-art{width:72px;height:72px;display:grid;place-items:center;border:1px solid #c1ae68;background:#10232a;color:#e2cf8a;font:700 38px Bahnschrift,Inter,sans-serif}.focus-detail-copy{min-width:0}.focus-detail-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.focus-detail-head h3{font-size:19px;margin-top:3px;overflow-wrap:anywhere}.focus-detail-head button{flex:none}.focus-story{margin-top:10px;color:#d1dce0;font-size:15px;line-height:1.55;white-space:pre-wrap}.focus-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.focus-detail-columns section{padding:10px 12px;background:#0d202977;border:1px solid #7897a027}.focus-detail-columns h4{font-size:13px;color:#d8c886;margin:0 0 7px}.focus-detail-columns ul{margin:0;padding-left:19px;color:#c3d0d4;font-size:14px;line-height:1.55}.focus-detail-columns li+li{margin-top:3px}.focus-muted,.focus-gate{color:#91a7af;font-size:13px}.focus-gate{margin-top:10px}.focus-editor{margin:0 16px 16px;padding:13px;border:1px solid #81979a45;background:#0f242c88;overflow:visible}.focus-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid #81979a33}.focus-editor-heading h3,.focus-editor-heading h4{margin:3px 0;font-size:16px}.focus-editor-heading h4{color:#e2d391}.focus-danger{color:#edb2a5;border-color:#c5817650;padding:7px 10px}.focus-editor>label{margin-top:10px}.focus-editor input:not([type=checkbox]),.focus-editor textarea{margin-top:5px}.focus-editor textarea{min-height:48px}.focus-icon-line{display:flex;align-items:center;gap:9px;margin-top:11px}.focus-icon-line label{margin:0}.focus-icon-preview{width:56px;height:56px;display:grid;place-items:center;border:1px solid #b9a967;background:#15272c;color:#ddcb88;font-size:28px;font-weight:700}.focus-icon-preview img{width:100%;height:100%;object-fit:contain}.focus-icon-upload{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:8px 11px;border:1px solid #7894a04c;background:#253b42;color:#e0e9e8;border-radius:7px;cursor:pointer}.focus-relations{margin:12px 0 0;padding:10px;border:1px solid #78949d4c}.focus-relations legend{color:#c9bd88;font-size:13px}.focus-relations>label{max-width:360px}.focus-relations>label select{margin-top:5px}.focus-relations>.eyebrow{margin-top:10px}.focus-relation-option{display:inline-flex;align-items:center;gap:6px;width:min(100%,240px);margin:5px 7px 0 0;padding:7px 9px;border:1px solid #78949d35;background:#1b3038;cursor:pointer}.focus-relation-option input{accent-color:#d3be73}.focus-relation-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.focus-editor-actions{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:11px;margin-top:12px;background:#10242bef}.focus-editor-actions [role=status]{font-size:13px;color:#94d2a8}.focus-editor-actions .primary{min-width:155px}.focus-panel .focus-empty strong{font-size:17px}
@media(max-width:900px){.focus-panel{right:12px;width:min(900px,calc(100vw - 24px))}}
@media(max-width:620px){.topactions{max-width:calc(100vw - 190px);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;flex:none}.topactions::-webkit-scrollbar{display:none}.topactions button{flex:none}.focus-panel{position:fixed;z-index:12;inset:72px 6px 7px;width:auto;max-height:none;border-radius:10px}.focus-toolbar{padding:8px;gap:6px;flex-wrap:wrap}.focus-toolbar button{padding:8px;font-size:13px}.focus-select-label{flex:1 1 100%;min-width:0;margin:0}.focus-content{padding:10px;min-height:100px}.focus-tree-intro{align-items:flex-start;flex-direction:column;gap:7px}.focus-progress{width:100%;grid-template-columns:auto auto}.focus-progress span{margin-left:auto}.focus-progress i{margin-top:1px}.focus-graph-scroll{max-height:30dvh;min-height:145px;overscroll-behavior:contain}.focus-tree-map{min-width:0;padding:8px}.focus-lanes{grid-template-columns:minmax(0,1fr);gap:8px;align-items:stretch}.focus-lane{gap:7px;align-items:stretch}.focus-lane-label{padding-top:5px}.focus-node{width:100%;min-height:62px;grid-template-columns:44px minmax(0,1fr);padding:6px}.focus-node-icon{width:40px;height:40px;font-size:23px}.focus-links{display:none}.focus-node-detail{grid-template-columns:52px minmax(0,1fr);gap:9px;padding:9px}.focus-detail-art{width:50px;height:50px;font-size:27px}.focus-detail-head{align-items:flex-start;flex-direction:column;gap:7px}.focus-detail-head h3{font-size:17px}.focus-detail-columns{grid-template-columns:1fr;gap:7px}.focus-editor{margin:0 9px 10px;padding:10px}.focus-editor-heading{align-items:flex-start}.focus-editor-heading button{font-size:12px;padding:7px}.focus-icon-line{flex-wrap:wrap}.focus-editor-actions{bottom:-1px}.focus-editor-actions [role=status]{font-size:12px}.focus-editor-actions .primary{min-width:125px;padding:9px}}
.focus-panel{overflow:hidden}
.focus-workspace{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.85fr);flex:1;min-height:0;overflow:hidden}
.focus-workspace.focus-player-view{grid-template-columns:minmax(0,1fr)}
.focus-content{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}
.focus-editor{min-width:0;min-height:0;max-height:none;margin:0;padding:14px;border:0;border-left:1px solid #81979a45;overflow-y:auto;overscroll-behavior:contain}
.focus-editor-actions{bottom:0}
@media(max-width:900px){.focus-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;overflow-y:auto;overflow-x:hidden}.focus-content{overflow:visible}.focus-editor{border-left:0;border-top:1px solid #81979a45}.focus-workspace.focus-player-view{grid-template-columns:minmax(0,1fr)}}
@media(max-width:620px){.focus-workspace{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.focus-content{flex:none;padding:10px}.focus-editor{flex:none;margin:0 9px 10px;padding:10px}.focus-workspace.focus-player-view .focus-content{overflow:visible}}
/* Tramas: cronología vertical con ramificación horizontal por fase. */
.focus-graph-scroll{max-height:min(58vh,640px);min-height:220px;overflow:auto}
.focus-tree-map{min-width:max(100%,calc(var(--focus-cols)*245px + 32px));min-height:max(100%,calc(var(--focus-rows)*116px + 24px))}
.focus-lanes{display:flex;flex-direction:column;align-items:stretch;gap:22px;min-height:calc(var(--focus-rows)*116px)}
.focus-lane{display:grid;grid-template-columns:repeat(var(--focus-lanes),minmax(220px,1fr));align-items:center;justify-items:center;gap:8px 14px;min-height:104px}
.focus-lane-label{grid-column:1/-1;align-self:center;justify-self:stretch;text-align:center;padding:0 4px;color:#9cb3bd}
.focus-links{pointer-events:none}
@media(max-width:620px){.focus-graph-scroll{max-height:44dvh;min-height:190px}.focus-tree-map{min-width:100%;min-height:max(100%,calc(var(--focus-rows)*118px + 24px))}.focus-lanes{gap:18px}.focus-lane{grid-template-columns:minmax(0,1fr);gap:7px;min-height:0}.focus-lane-label{grid-column:1}.focus-links{display:block}}