/* Isolated Phase 1 workspaces and Warlock reference styling; shared site theme. */
.workspace-hero{background:linear-gradient(115deg,var(--night),var(--night-light));color:#f6ede1;border-radius:10px;padding:30px clamp(24px,4vw,44px);margin-bottom:20px}
.workspace-hero h2{font:var(--cdm-display-weight) clamp(30px,4vw,43px)/1.05 var(--cdm-display-font);margin:0 0 12px;color:#f6ead8}
.workspace-hero p{margin:0;max-width:680px;font-size:13px;line-height:1.7;color:#d8dddb}
.workspace-hero-player{background:linear-gradient(115deg,#513d41,#243c46)}
.workspace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:13px;margin:15px 0 24px}
.workspace-tile{display:flex;flex-direction:column;gap:10px;padding:20px 21px;border-radius:8px;background:var(--paper-strong);border:1px solid var(--line);transition:border-color .16s,transform .16s;min-width:0}
.workspace-tile:hover,.workspace-character:hover{border-color:var(--gold);transform:translateY(-2px)}
.workspace-tile-top{font:var(--cdm-display-weight) 25px/1.1 var(--cdm-display-font);display:flex;justify-content:space-between;gap:8px;color:var(--ink)}
.workspace-tile-top span{font:15px 'DM Sans',sans-serif;color:var(--burgundy)}
.workspace-tile small{font-size:12px;line-height:1.6;color:var(--muted)}
.workspace-end,.workspace-saved{border-radius:9px;border:1px solid var(--line);background:var(--paper-strong);padding:25px;margin:24px 0}
.workspace-end h2,.workspace-saved h2{font:var(--cdm-display-weight) 29px/1.2 var(--cdm-display-font);margin:0 0 8px}
.workspace-end p,.workspace-saved p{font-size:13px;color:var(--muted);line-height:1.7}
.workspace-end .workspace-grid{margin-top:18px}
.workspace-section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}
.workspace-characters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}
.workspace-character{display:flex;flex-direction:column;gap:3px;padding:16px;border-radius:7px;border:1px solid var(--line);background:var(--paper);min-width:0;transition:transform .15s,border-color .15s}
.workspace-character strong{font:var(--cdm-display-weight) 24px/1.2 var(--cdm-display-font)}
.workspace-character span{font-size:12px;color:var(--muted)}
.workspace-character em{font-size:11px;font-style:normal;color:var(--burgundy);font-weight:700;margin-top:7px}
.warlock-library{min-width:0}
.warlock-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px}
.warlock-era{display:flex;gap:9px;flex-wrap:wrap}
.warlock-era a{display:inline-flex;align-items:center;min-height:38px;padding:8px 18px;font-size:12px;font-weight:600}
.warlock-era a.active{background:var(--night);border-color:var(--night);color:#fff7e8}
.warlock-facts{display:flex;flex-wrap:wrap;gap:8px;margin:19px 0}
.warlock-facts span{background:var(--aged);border:1px solid var(--line);border-radius:4px;color:var(--ink);padding:7px 10px;font-size:11px}
.warlock-jump{display:flex;flex-wrap:wrap;gap:16px;border-block:1px solid var(--line);padding:12px 0;margin:18px 0 23px}
.warlock-jump a,.warlock-panel-head a{font-size:12px;font-weight:700;color:var(--burgundy)}
.warlock-panel{background:var(--paper-strong);border:1px solid var(--line);border-radius:8px;padding:clamp(18px,3vw,28px);margin:16px 0;scroll-margin-top:100px;min-width:0}
.warlock-panel h2{font:var(--cdm-display-weight) 31px/1.15 var(--cdm-display-font);color:var(--ink);margin:0 0 15px}
.warlock-panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.warlock-panel-head h2{margin:0}
.warlock-note{font-size:12px;line-height:1.65;color:var(--muted);max-width:760px}
.warlock-feature-body{padding:12px 15px;color:var(--ink);font-size:13px;line-height:1.7}
.warlock-feature-body p{margin:0 0 12px}
.warlock-library .char-feature summary{cursor:pointer}
.warlock-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.warlock-card{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid var(--line);background:var(--paper);border-radius:8px;min-width:0;transition:transform .16s,border-color .16s}
.warlock-card:hover{transform:translateY(-2px);border-color:var(--gold)}
.warlock-card[hidden],[data-warlock-empty][hidden]{display:none!important}
.warlock-card-top{display:flex;justify-content:space-between;gap:12px;align-items:start}
.warlock-card .eyebrow{font-size:9px;letter-spacing:1px;line-height:1.5}
.warlock-status{font-size:10px;color:var(--burgundy);border:1px solid var(--line);border-radius:3px;padding:3px 5px;white-space:nowrap}
.warlock-card h3{margin:0;font:var(--cdm-display-weight) 27px/1.1 var(--cdm-display-font);color:var(--ink)}
.warlock-card p{font-size:12px;line-height:1.6;color:var(--muted);margin:0;flex:1}
.warlock-card-bottom{font-size:11px;font-weight:700;color:var(--burgundy);display:flex;justify-content:space-between;gap:10px}
.warlock-filters{display:flex;gap:14px;flex-wrap:wrap;margin:14px 0 20px}
.warlock-filters label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:var(--muted);flex:1;min-width:min(100%,200px)}
.warlock-filters input,.warlock-filters select{min-height:42px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);padding:10px}
.warlock-spell-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:9px}
.warlock-spell{border:1px solid var(--line);border-radius:6px;background:var(--paper);padding:12px;display:flex;flex-direction:column;gap:4px}
.warlock-spell:hover{border-color:var(--gold)}
.warlock-spell strong{font-size:12px}
.warlock-spell small{font-size:10px;color:var(--muted)}
.warlock-not-ready{font-size:13px;border-left:3px solid var(--gold);background:var(--aged);padding:16px;line-height:1.7}
.warlock-intro{font-size:13px;line-height:1.7}
.warlock-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}
.warlock-counterparts{padding:16px}
.warlock-counterparts h3{font:var(--cdm-display-weight) 23px var(--cdm-display-font);margin:0 0 5px}
.warlock-counterparts a{font-size:12px;text-transform:capitalize;text-decoration:underline;text-underline-offset:2px;color:var(--burgundy)}
@media(max-width:650px){.workspace-section-head{align-items:start;flex-wrap:wrap}.warlock-panel{padding:17px}.warlock-panel-head{align-items:start}.warlock-era a{flex:1;justify-content:center}.warlock-jump{gap:12px}.warlock-library .spell-table-wrap{overflow:auto}.warlock-actions .btn{white-space:normal}}

/* Structured mechanical effects in the Hexblade pilot. */
.warlock-rules{display:grid;grid-template-columns:1fr;margin:0;padding:10px 16px 14px;gap:0}
.warlock-rules>div{display:grid;grid-template-columns:minmax(100px,160px) minmax(0,1fr);align-items:start;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.warlock-rules>div:last-child{border-bottom:0}
.warlock-rules dt{font-size:11px;font-weight:700;color:var(--burgundy)}
.warlock-rules dd{font-size:12px;line-height:1.65;margin:0;color:var(--ink)}
.warlock-subheading{font:var(--cdm-display-weight) 26px var(--cdm-display-font);margin:24px 0 7px;color:var(--ink)}
.warlock-expanded-spells td{line-height:2}
.warlock-rule-link{font-weight:700;color:var(--burgundy);text-decoration:underline;text-underline-offset:2px}
.warlock-library-cta{margin:0 0 17px}
@media(max-width:540px){.warlock-rules>div{grid-template-columns:1fr;gap:3px}}
