/* Modo mesa y saberes por tirada. */
.nav-table{border:1px solid #dc9a2955;border-radius:6px;margin-bottom:6px}.table-view{max-width:1100px;margin:0 auto;padding:16px 16px 40px;color:var(--ink)}.table-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:14px}.table-head .eyebrow{margin:0}.table-head .button{flex:none;font-size:12px;padding:10px 12px}.table-today{margin:0;font-size:13px;color:var(--muted)}.table-today b{color:var(--gold-soft);font-weight:600}.table-grid{display:grid;gap:18px}.table-main,.table-side{display:flex;flex-direction:column;gap:12px;min-width:0}.table-search input{width:100%;font-size:18px;padding:14px 16px;border-radius:8px;border:1px solid #4a5767;background:#1a2431;color:var(--ink)}.table-search input:focus{outline:2px solid var(--gold);outline-offset:1px}#table-results{display:flex;flex-direction:column;gap:6px}.table-result{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;width:100%;min-height:52px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}.table-result b{font:17px var(--font-serif)}.table-result span{font-size:13px;color:var(--muted)}.table-result.is-first{border-color:var(--gold)}.table-card{border:1px solid var(--gold);border-radius:8px;background:var(--paper);padding:14px 16px;display:flex;flex-direction:column;gap:8px}.table-card p{margin:0;line-height:1.55;font-size:14px}.table-card .dm-box{margin:4px 0 0}.table-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.table-card-head h3{font:22px/1.2 var(--font-serif);margin:0}.table-status{display:flex;flex-direction:column;gap:4px}.table-muted{font-size:12px;color:var(--muted);margin:0}.table-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.table-actions .button{min-height:44px}.table-chips{display:flex;flex-wrap:wrap;gap:6px}.table-chip{min-height:40px;padding:8px 12px;border:1px solid #3e4a59;border-radius:20px;background:#1f2b3a;color:var(--ink-soft);font-size:13px;text-align:left}.table-side section{border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:12px 14px}.table-side .section-caption{margin:0 0 8px}.table-session-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin:0 0 8px}.table-session-head .section-caption{margin:0}.table-session-head .text-btn{margin-left:auto;min-height:44px}.table-session-pick select{min-height:44px;font:600 16px var(--font-ui);color:var(--ink);background:#1a2431;border:1px solid #3e4a59;border-radius:6px;padding:6px 10px}.table-session-world{margin:0 0 6px;font-size:12px;color:var(--gold-soft)}.table-session-summary{margin:0 0 8px;font-size:14px;line-height:1.55;color:var(--ink-soft);white-space:pre-line}.table-session .session-private{margin:8px 0}.table-session .session-private p{margin:0;font-size:13px;line-height:1.5;white-space:pre-line}.table-label{margin:10px 0 6px;font-size:13px;color:var(--muted)}.table-session .npc-change-list li{justify-content:flex-start}.table-notes textarea{width:100%;min-height:140px;font:15px/1.5 var(--font-ui);padding:10px 12px;border-radius:6px;border:1px solid #3e4a59;background:#1a2431;color:var(--ink);resize:vertical}.table-notes .button{margin-top:8px;min-height:44px}@media(min-width:768px){.table-view{padding:24px 28px 48px}.table-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}}.table-card-head .icon-btn{min-width:44px;min-height:44px;font-size:22px}.table-campaign select{max-width:100%;font:24px/1.2 var(--font-serif);color:var(--ink);background:transparent;border:1px solid transparent;border-bottom-color:#4a5767;border-radius:4px;padding:4px 28px 4px 2px;margin:2px 0 4px;min-height:44px}.table-campaign select:focus{outline:2px solid var(--gold);outline-offset:1px}.table-campaign option{background:var(--paper);color:var(--ink);font-size:16px}@media(min-width:768px){.table-campaign select{font-size:30px}}/* Saberes por tirada: tarjetas con el lenguaje de «Para dirigir» (fondo de tarjeta, filete a la
   izquierda, títulos serif); la CD es un medallón; al tirar, lo alcanzado se enciende en dorado. */
.lore-tab{display:flex;flex-direction:column;gap:14px;margin:6px 0 4px}.lore-tab-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:18px 0 0}.lore-tab-head .section-caption{margin:0}.lore-tab-head .text-btn{font-size:12px}.lore-skill{margin:0 0 4px;font:600 9px var(--font-label);letter-spacing:1.6px;text-transform:uppercase;color:#e1a745}.lore-card{background:#233142;border-left:2px solid #62758c;padding:18px 20px 16px;display:flex;flex-direction:column;gap:12px;transition:border-color .2s}.lore-card:has(.is-unlocked){border-left-color:#e1a745}.lore-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px 18px;flex-wrap:wrap}.lore-card-title h4{margin:0;font:400 19px/1.3 var(--font-serif);color:var(--ink)}.lore-roll-form{display:flex;align-items:stretch;gap:8px}.lore-roll-form input{width:84px;min-height:44px;text-align:center;font:400 20px var(--font-serif);color:var(--ink);background:#1a2431;border:1px solid #4a5767;border-radius:6px;padding:4px 8px}.lore-roll-form input:focus{outline:2px solid var(--gold);outline-offset:1px}.lore-roll-form .button{min-height:44px;padding:10px 16px}.lore-roll-error{margin:0;font-size:12px;color:#e39a84}.lore-ladder{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.lore-step{display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;align-items:start}.lore-step p{margin:3px 0 0;font:400 15px/1.6 var(--font-serif);color:#c4ccd4}.lore-dc{display:flex;flex-direction:column;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1px solid #62758c;color:#a8b1bb;background:#1d2938;line-height:1}.lore-dc small{font:600 8px var(--font-label);letter-spacing:1.2px}.lore-dc b{font:400 20px var(--font-serif);margin-top:2px}.lore-step.is-unlocked .lore-dc{border-color:#e1a745;color:#f0c879;background:#2c3542;box-shadow:0 0 0 3px #e1a74522}.lore-step.is-unlocked p{color:var(--ink)}.lore-step.is-locked{opacity:.55}.lore-step.is-locked .lore-dc{border-style:dashed}.lore-veiled{font-style:italic;color:#7f8c99!important;font-size:14px!important}.lore-card-foot{border-top:1px solid #33414f;padding-top:12px;display:flex;flex-direction:column;gap:10px}.lore-verdict{margin:0;display:flex;align-items:baseline;gap:10px;font-size:13px;color:#a8b1bb}.lore-verdict b{font:400 22px var(--font-serif);color:#f0c879}.lore-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}.lore-note-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.lore-share .button,.lore-share .text-btn{min-height:44px}.lore-target input{min-height:44px;width:180px;max-width:100%;padding:8px 12px;border-radius:6px;border:1px solid #3e4a59;background:#1a2431;color:var(--ink);font-size:14px}.lore-empty{background:#233142;border-left:2px solid #62758c;padding:24px 22px;display:flex;flex-direction:column;gap:8px;margin-top:18px}.lore-empty h4{margin:0;font:400 21px/1.3 var(--font-serif);color:var(--ink)}.lore-empty p{margin:0;font-size:13px;line-height:1.6;color:#a8b1bb}.lore-empty .lore-skill{color:#e1a745}.lore-empty-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.lore-empty-actions .button{min-height:44px}.lore-editor{display:flex;flex-direction:column;gap:14px;margin-top:18px}.lore-editor-head .section-caption{margin:0 0 6px}.lore-editor-head p{margin:0;font-size:12px;line-height:1.6;color:#8e9aa6}.lore-block{background:#233142;border:0;border-left:2px solid #62758c;padding:16px 18px;margin:0 0 12px;display:flex;flex-direction:column;gap:14px;min-width:0}.lore-block-head{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr) 36px;gap:12px;align-items:start}.lore-field{display:flex;flex-direction:column;gap:6px;min-width:0}.lore-field>span{font:600 9px var(--font-label);letter-spacing:1.2px;text-transform:uppercase;color:#8e9aa6}.lore-field input,.lore-field select,.lore-field textarea{width:100%;min-height:42px;padding:9px 11px;border-radius:5px;border:1px solid #3e4a59;background:#1a2431;color:var(--ink);font:14px/1.5 var(--font-ui)}.lore-field textarea{resize:vertical;font-family:var(--font-serif);font-size:15px}.lore-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.lore-row{display:grid;grid-template-columns:64px minmax(0,1fr) 36px;gap:12px;align-items:start}.lore-row .lore-icon,.lore-block-head .lore-icon{margin-top:21px}.lore-dc-field input{text-align:center;font:400 18px var(--font-serif)}.lore-icon{width:36px;height:42px;border:1px solid transparent;border-radius:5px;background:none;color:#8e9aa6;font-size:20px;line-height:1;cursor:pointer}.lore-icon:hover,.lore-icon:focus-visible{color:#e39a84;border-color:#5a3a33}.lore-add{align-self:flex-start;min-height:40px;padding:8px 14px;border:1px dashed #4a5767;border-radius:5px;background:none;color:#c4ccd4;font-size:12px;cursor:pointer}.lore-add:hover{border-color:var(--gold);color:var(--gold-soft)}.lore-editor-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.lore-editor-tools .text-btn{min-height:40px}.lore-editor-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid #33414f;padding-top:14px}.lore-spacer{flex:1}.lore-editor-foot .button,.lore-editor-foot .text-btn{min-height:44px}.lore-table{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--line);padding-top:12px}.lore-table .section-caption{margin:0}.lore-table .lore-card{padding:14px 14px 12px}.lore-table.is-empty{gap:6px}@media(max-width:560px){.lore-card{padding:16px 14px}.lore-card-head{flex-direction:column}.lore-roll-form{width:100%}.lore-roll-form label{flex:0 0 auto}.lore-roll-form .button{flex:1}.lore-step{grid-template-columns:46px minmax(0,1fr);gap:12px}.lore-dc{width:46px;height:46px}.lore-block-head{grid-template-columns:minmax(0,1fr) 36px}.lore-block-head .lore-topic{grid-column:1/2}.lore-block-head .lore-icon{grid-row:1;grid-column:2}.lore-row{grid-template-columns:56px minmax(0,1fr) 36px}}.lore-display{position:fixed;inset:0;z-index:1000;background:#0d131b;color:#f3ead8;overflow-y:auto;display:flex;align-items:center;justify-content:center;padding:28px 20px}.lore-display[hidden]{display:none}.lore-display-inner{max-width:680px;width:100%;display:flex;flex-direction:column;gap:14px}.lore-display h2{font:34px/1.15 var(--font-serif);margin:0}.lore-display p{font-size:20px;line-height:1.6;margin:0}.lore-display .eyebrow{font-size:13px;color:var(--gold)}.lore-display .button{align-self:flex-start;margin-top:12px;min-height:48px;padding:12px 22px}
