.professions-atlas-wrapper{flex-direction:column;gap:24px;display:flex}.profession-character-hud{background:var(--bg-surface-elevated,#101217);border:1px solid var(--gold-line,#d4af3766);flex-direction:column;gap:10px;padding:14px 18px;display:flex}@media (min-width:640px){.profession-character-hud{flex-direction:row;justify-content:space-between;align-items:center}}.profession-character-hud-left{align-items:center;gap:12px;min-width:0;display:flex}.profession-character-hud-icon{color:var(--gold-ink,#d4af37);flex-shrink:0}.profession-character-hud-text{color:var(--text-primary,#f0f1f5);font-size:.8125rem;line-height:1.4}.profession-character-hud-badges{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.profession-groups-container{flex-direction:column;gap:48px;display:flex}@media (min-width:768px){.profession-groups-container{gap:56px}}.profession-group-section{flex-direction:column;display:flex}.profession-group-header{border-bottom:1px solid var(--border-subtle,#ffffff1f);flex-direction:column;gap:8px;margin-bottom:20px;padding-bottom:12px;display:flex}@media (min-width:640px){.profession-group-header{flex-direction:row;justify-content:space-between;align-items:flex-end}}.profession-group-title-wrap{align-items:center;gap:10px;display:flex}.profession-group-icon{flex-shrink:0}.profession-group-title{font-family:var(--font-heading);color:var(--text-primary,#fff);letter-spacing:.01em;margin:0;font-size:1.5rem;font-weight:700;line-height:1.2}.profession-group-subtitle{color:var(--text-secondary,#8e909a);margin-top:4px;font-size:.8125rem}.profession-group-count-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;align-self:flex-start;padding:3px 10px;font-size:.6875rem;font-weight:700}@media (min-width:640px){.profession-group-count-badge{align-self:auto}}.profession-card{background:var(--bg-surface-card,#0e1014);border:1px solid var(--border-subtle,#ffffff1f);flex-direction:column;justify-content:space-between;height:100%;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.profession-card:hover{border-color:var(--card-accent-border,var(--gold-line));background:#121620}.profession-card:active{transform:scale(.995)}.profession-card.is-learned{border-color:var(--gold-ink,#d4af37);outline:1px solid var(--gold-line,#d4af3780);background:#11151f}.profession-card-accent-bar{width:100%;height:3px;transition:opacity .2s}.profession-card-body{flex-direction:column;flex:1;justify-content:space-between;gap:16px;padding:18px 18px 20px;display:flex}@media (min-width:640px){.profession-card-body{padding:22px}}.profession-card-header{flex-direction:column;gap:14px;display:flex}.profession-card-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profession-card-identity{align-items:center;gap:14px;min-width:0;display:flex}.profession-card-icon-frame{border:1px solid var(--card-accent-border,#ffffff29);background:#000;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;padding:2px;transition:transform .2s;display:flex}.profession-card:hover .profession-card-icon-frame{transform:scale(1.05)}.profession-card-title-wrap{min-width:0}.profession-card-name{font-family:var(--font-heading);color:var(--text-primary,#fff);margin:0;font-size:1.25rem;font-weight:700;line-height:1.2;transition:color .15s}.profession-card:hover .profession-card-name{color:var(--color-accent-hover,#fae07a)}.profession-card-slot-badge{font-family:var(--font-mono);letter-spacing:.04em;align-items:center;gap:4px;margin-top:5px;padding:1px 7px;font-size:.6875rem;font-weight:600;display:inline-flex}.profession-card-learned-badge{font-family:var(--font-mono);letter-spacing:.04em;color:var(--gold-ink,#d4af37);border:1px solid var(--gold-ink,#d4af37);background:#000c;flex-shrink:0;align-items:center;gap:5px;padding:2px 8px;font-size:.625rem;font-weight:700;display:inline-flex}.profession-card-summary{color:var(--text-primary,#f0f1f5);opacity:.88;min-height:48px;margin:0;font-size:.84375rem;line-height:1.55}.profession-card-specs{border-top:1px solid var(--border-subtle,#ffffff1a);flex-direction:column;gap:12px;padding-top:14px;display:flex}.profession-spec-row{font-family:var(--font-mono);flex-direction:column;gap:3px;display:flex}.profession-spec-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted,#6b6e79);font-size:.625rem;font-weight:700}.profession-spec-value-pair{color:var(--text-primary,#f0f1f5);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.profession-spec-pair-tag{color:var(--gold-soft,#e5c158);font-weight:600}.profession-spec-chips-wrap{flex-wrap:wrap;gap:4px;display:flex}.profession-spec-chip{color:var(--text-primary,#f0f1f5);white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff14;padding:2px 7px;font-size:.6875rem}.profession-spec-reagents-text{color:var(--text-secondary,#8e909a);word-break:break-word;font-size:.75rem;line-height:1.4}.profession-card-footer{border-top:1px solid var(--border-subtle,#ffffff1a);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary,#8e909a);background:#0006;justify-content:space-between;align-items:center;padding:12px 18px;font-size:.75rem;font-weight:600;transition:all .15s;display:flex}@media (min-width:640px){.profession-card-footer{padding:13px 22px}}.profession-card:hover .profession-card-footer{color:var(--text-primary,#fff);background:#ffffff08}.profession-card-arrow{color:var(--gold-ink,#d4af37);transition:transform .2s cubic-bezier(.16,1,.3,1)}.profession-card:hover .profession-card-arrow{transform:translate(4px)}.theme-crafting{--card-accent-color:#f59e0b;--card-accent-border:#f59e0b80;--badge-bg:#f59e0b1a;--badge-border:#f59e0b4d;--badge-text:#fbbf24}.theme-gathering{--card-accent-color:#10b981;--card-accent-border:#10b98180;--badge-bg:#10b9811a;--badge-border:#10b9814d;--badge-text:#34d399}.theme-secondary{--card-accent-color:#38bdf8;--card-accent-border:#38bdf880;--badge-bg:#38bdf81a;--badge-border:#38bdf84d;--badge-text:#7dd3fc}.profession-advisor-row{border:1px dashed var(--border-subtle,#ffffff1f);background:#00000040;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.profession-advisor-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--gold-soft,#e5c158);flex-shrink:0;align-items:center;gap:6px;font-size:.6875rem;font-weight:700;display:flex}.profession-advisor-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.profession-advisor-chip{font-family:var(--font-mono);color:var(--text-primary,#f0f1f5);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1f;padding:2px 8px;font-size:.6875rem;font-weight:600;transition:all .15s}.profession-advisor-chip:hover{background:var(--gold-dim,#d4af3726);border-color:var(--gold-line,#d4af3780);color:#fff}.professions-empty-state{text-align:center;border:1px dashed var(--border-subtle,#ffffff29);background:var(--bg-surface-elevated,#101217);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px 24px;display:flex}.professions-empty-icon{color:var(--gold-ink,#d4af37);opacity:.7}.professions-empty-title{font-family:var(--font-heading);color:var(--text-primary,#fff);margin:0;font-size:1.25rem;font-weight:700}.professions-empty-desc{color:var(--text-secondary,#8e909a);max-width:420px;margin:0;font-size:.8125rem;line-height:1.5}.professions-empty-reset-btn{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;background:var(--gold-ink,#d4af37);color:#000;cursor:pointer;border:none;margin-top:6px;padding:8px 18px;font-size:.75rem;font-weight:700;transition:background .15s}.professions-empty-reset-btn:hover{background:var(--color-accent-hover,#fae07a)}.guide-section{flex-direction:column;display:flex}.guide-section-title{font-family:var(--font-heading);color:var(--text-primary,#fff);letter-spacing:.01em;align-items:center;gap:8px;margin:0;font-size:1.35rem;font-weight:700;display:flex}.guide-section-subtitle{color:var(--text-secondary,#8e909a);margin-top:4px;font-size:.8125rem;line-height:1.5}.skill-cap-progress-container{background:var(--bg-surface-card,#0e1014);border:1px solid var(--border-subtle,#ffffff1f);flex-direction:column;gap:20px;padding:clamp(1.5rem,3vw,2rem) clamp(1.5rem,3.5vw,2.5rem);display:flex}.skill-cap-track{border:1px solid var(--border-subtle,#ffffff1f);background:#ffffff0f;width:100%;height:10px;margin:6px 0;position:relative;overflow:hidden}.skill-cap-fill{background:linear-gradient(90deg, #b45309, var(--gold-ink,#d4af37), #fde047);height:100%;transition:width .3s cubic-bezier(.16,1,.3,1)}.skill-cap-ticks{font-family:var(--font-mono);color:var(--text-muted,#6b6e79);flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:8px;font-size:.75rem;display:flex}.skill-cap-tick-active{color:var(--gold-soft,#e5c158);font-weight:700}.shopping-chip-card{background:var(--bg-surface-card,#0e1014);border:1px solid var(--border-subtle,#ffffff1f);align-items:center;gap:16px;padding:16px 20px;text-decoration:none;transition:all .15s;display:flex}.shopping-chip-card:hover{border-color:var(--gold-line,#d4af3780);background:#121620}.shopping-chip-info{flex-direction:column;gap:4px;min-width:0;display:flex}.shopping-chip-title{font-family:var(--font-sans);color:var(--text-primary,#fff);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;transition:color .15s;overflow:hidden}.shopping-chip-card:hover .shopping-chip-title{color:var(--gold-soft,#e5c158)}.shopping-chip-action{font-family:var(--font-mono);color:var(--text-muted,#6b6e79);text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.signature-craft-card{background:var(--bg-surface-card,#0e1014);border:1px solid var(--border-subtle,#ffffff1f);flex-direction:column;justify-content:space-between;gap:20px;padding:22px 24px;transition:all .15s;display:flex;position:relative}.signature-craft-card:hover{border-color:var(--gold-line,#d4af3780);background:#121620}.signature-craft-header{align-items:flex-start;gap:16px;display:flex}.signature-craft-identity{min-width:0}.signature-craft-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--gold-ink,#d4af37);margin-bottom:4px;font-size:.625rem;font-weight:700;display:block}.signature-craft-title{font-family:var(--font-heading);margin:0;font-size:1.05rem;font-weight:700;line-height:1.25}.signature-craft-desc{color:var(--text-secondary,#8e909a);margin-top:6px;font-size:.775rem;line-height:1.5}.signature-craft-footer-link{font-family:var(--font-mono);color:var(--text-muted,#6b6e79);border-top:1px solid var(--border-subtle,#ffffff1a);justify-content:space-between;align-items:center;margin-top:4px;padding-top:12px;font-size:.6875rem;text-decoration:none;transition:color .15s;display:inline-flex}.signature-craft-card:hover .signature-craft-footer-link{color:var(--gold-soft,#e5c158)}.trainer-hub-card{background:var(--bg-surface-card,#0e1014);border:1px solid var(--border-subtle,#ffffff1f);flex-direction:column;gap:20px;padding:clamp(1.5rem,3vw,2rem);display:flex}.trainer-hub-title{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;line-height:var(--leading-snug,1.22);letter-spacing:-.012em;color:var(--text-primary,#fff);align-items:center;gap:10px;margin:0;display:flex}.trainer-hub-entry{border:1px solid var(--border-subtle,#ffffff1a);font-family:var(--font-mono);background:#ffffff05;flex-direction:column;gap:6px;padding:16px 18px;font-size:.8rem;display:flex}.trainer-hub-entry.is-artisan{border-color:var(--gold-line,#d4af3766);background:var(--gold-dim,#d4af3714)}.trainer-hub-faction-tag{text-transform:uppercase;letter-spacing:.06em;font-size:.625rem;font-weight:700}.trainer-hub-name{color:var(--text-primary,#fff);font-weight:600}.trainer-hub-zone{color:var(--text-secondary,#8e909a);font-size:.6875rem}.trainer-hub-notes{color:var(--text-secondary,#8e909a);margin:0;font-size:.6875rem;font-style:italic;line-height:1.4}.spellbook-header{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}@media (min-width:640px){.spellbook-header{flex-direction:row;justify-content:space-between;align-items:flex-end}}.spellbook-title-area{flex-direction:column;gap:4px;display:flex}.spellbook-main-title{font-family:var(--font-heading);color:var(--text-primary,#fff);align-items:center;gap:8px;margin:0;font-size:1.35rem;font-weight:700;display:flex}.spellbook-total-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;background:var(--gold-dim,#d4af3726);border:1px solid var(--gold-line,#d4af3759);color:var(--gold-ink,#d4af37);margin-left:6px;padding:2px 8px;font-size:.6875rem;font-weight:700}.spellbook-subtitle{color:var(--text-secondary,#8e909a);margin:0;font-size:.8125rem}.spellbook-controls{align-items:center;gap:10px;display:flex}.spellbook-search-box{align-items:center;width:100%;display:flex;position:relative}@media (min-width:640px){.spellbook-search-box{width:260px}}.spellbook-search-icon{color:var(--text-muted,#6b6e79);pointer-events:none;position:absolute;left:10px}.spellbook-search-input{border:1px solid var(--border-subtle,#ffffff29);width:100%;height:36px;font-family:var(--font-sans);color:var(--text-primary,#fff);background:#0e121ce6;outline:none;padding:0 32px 0 34px;font-size:.8125rem;transition:all .15s}.spellbook-search-input:focus{border-color:var(--gold-ink,#d4af37);box-shadow:0 0 10px #d4af3733}.spellbook-search-clear{color:var(--text-muted,#6b6e79);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:8px}.spellbook-search-clear:hover{color:#fff}.spellbook-spec-tabs{scrollbar-width:none;border-bottom:1px solid var(--border-subtle,#ffffff1f);align-items:center;gap:0;margin-bottom:16px;display:flex;overflow-x:auto}.spellbook-spec-tabs::-webkit-scrollbar{display:none}.spellbook-spec-tab{font-family:var(--font-mono);text-transform:uppercase;color:var(--text-secondary,#8e909a);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:8px 14px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.spellbook-spec-tab:hover{color:var(--text-primary,#fff);background:#ffffff08}.spellbook-spec-tab.active{border-bottom-color:var(--gold-ink,#d4af37);color:var(--gold-ink,#d4af37);font-weight:700}.spellbook-tab-dot{width:6px;height:6px}.spellbook-tab-dot.tier-all{background:var(--gold-ink,#d4af37)}.spellbook-tab-dot.tier-apprentice{background:#22c55e}.spellbook-tab-dot.tier-journeyman{background:#f97316}.spellbook-tab-dot.tier-expert{background:#3b82f6}.spellbook-tab-dot.tier-artisan{background:#eab308}.spellbook-tab-count{font-family:var(--font-mono);opacity:.75;font-size:.6875rem}.spellbook-grimoire-frame{border:1px solid var(--border-subtle,#ffffff1f);background:0 0;padding:0}.spellbook-slots-grid{grid-template-columns:1fr;gap:0;display:grid}@media (min-width:1024px){.spellbook-slots-grid{grid-template-columns:repeat(2,1fr)}}.spellbook-slot-card{border-bottom:1px solid var(--border-subtle,#ffffff1a);border-right:1px solid var(--border-subtle,#ffffff1a);background:0 0;flex-direction:column;gap:10px;padding:14px 18px;transition:background .15s;display:flex}.spellbook-slot-card:hover{background:#ffffff05}.spell-slot-header{align-items:flex-start;gap:12px;display:flex}.spell-icon-container{flex-shrink:0;position:relative}.spell-icon-level-pill{background:var(--bg-canvas,#0a0b0e);border:1px solid var(--border-subtle,#fff3);color:var(--gold-ink,#d4af37);font-family:var(--font-mono);padding:1px 4px;font-size:.5625rem;font-weight:700;line-height:1;position:absolute;bottom:-4px;right:-4px}.spell-identity{flex:1;min-width:0}.spell-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.spell-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:700;line-height:1.25;text-decoration:none;overflow:hidden}.spell-school-pill{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;font-size:.625rem;font-weight:700}.spell-school-pill.tier-apprentice{color:#86efac}.spell-school-pill.tier-journeyman{color:#fdba74}.spell-school-pill.tier-expert{color:#93c5fd}.spell-school-pill.tier-artisan{color:#fde047}.reagent-chips-cluster{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.reagent-chip-item{border:1px solid var(--border-subtle,#ffffff1f);font-family:var(--font-mono);color:var(--text-secondary,#8e909a);background:0 0;align-items:center;gap:6px;padding:2px 8px 2px 4px;font-size:.72rem;text-decoration:none;transition:all .15s;display:inline-flex}.reagent-chip-item:hover{background:var(--gold-dim,#d4af371f);border-color:var(--gold-line,#d4af3766);color:var(--text-primary,#fff)}.reagent-chip-count{color:var(--gold-ink,#d4af37);font-weight:700}.spellbook-page-turner{border-top:1px solid var(--border-subtle,#ffffff1f);background:#0000004d;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.spellbook-page-arrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--border-subtle,#ffffff1f);color:var(--text-secondary,#8e909a);cursor:pointer;background:#ffffff0a;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.spellbook-page-arrow:hover:not(:disabled){background:var(--gold-dim,#d4af371f);border-color:var(--gold-line,#d4af3766);color:#fff}.spellbook-page-arrow:disabled{opacity:.35;cursor:not-allowed}.spellbook-page-indicator{font-family:var(--font-mono);color:var(--text-secondary,#8e909a);font-size:.75rem}.spellbook-page-indicator strong{color:var(--gold-soft,#e5c158)}.spellbook-empty-state{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 20px;display:flex}.profession-leveling-route{border-bottom:1px solid var(--border-subtle,#ffffff1a);padding-bottom:clamp(2.5rem,5vw,3.5rem)}.leveling-route-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:clamp(1.5rem,3vw,2.25rem);display:flex}.leveling-route-tier-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:clamp(1.75rem,3.5vw,2.5rem);display:grid}@media (max-width:640px){.leveling-route-tier-grid{grid-template-columns:repeat(2,1fr);gap:10px}}.leveling-route-tier-button{background:var(--bg-surface-card,#0e1014);border:1px solid var(--border-subtle,#ffffff1f);cursor:pointer;text-align:center;font-family:var(--font-sans);flex-direction:column;justify-content:space-between;align-items:center;gap:8px;padding:clamp(1rem,2vw,1.35rem) 14px;transition:all .2s;display:flex}.leveling-route-tier-button:hover{background:#141720;border-color:#ffffff40}.leveling-route-tier-button.is-active{background:#ffffff1a;border-color:#ffffff4d;box-shadow:0 4px 20px #0006}.leveling-route-tier-range{font-family:var(--font-mono);color:#fff;font-size:.75rem;font-weight:700;display:block}.leveling-route-tier-rank{font-family:var(--font-heading);color:#fff;margin:2px 0;font-size:1.05rem;font-weight:700;display:block}.leveling-route-tier-req{font-family:var(--font-mono);color:var(--text-muted,#6b6e79);border-top:1px solid #ffffff0f;width:100%;padding-top:8px;font-size:.7rem;display:block}.leveling-route-breakdown-card{background:var(--bg-surface-card,#0e1014);border:1px solid var(--border-subtle,#ffffff1f);flex-direction:column;gap:clamp(1.75rem,3vw,2.25rem);padding:clamp(1.75rem,3.5vw,2.5rem);display:flex;box-shadow:0 8px 32px #00000059}.leveling-route-breakdown-header{border-bottom:1px solid var(--border-subtle,#ffffff1a);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:20px;display:flex}.leveling-route-bracket-badge{font-family:var(--font-mono);color:var(--gold-ink,#d4af37);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:.72rem;font-weight:700;display:block}.leveling-route-focus-title{font-family:var(--font-heading);color:#fff;font-size:clamp(1.2rem,2.2vw,1.45rem);font-weight:700;line-height:var(--leading-snug,1.22);margin:0}.leveling-route-required-pill{font-family:var(--font-mono);color:var(--text-secondary,#8e909a);border:1px solid var(--border-subtle,#ffffff1f);background:#ffffff0a;border-radius:4px;padding:6px 14px;font-size:.75rem}.leveling-route-breakdown-columns{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(1.75rem,3vw,2.5rem);display:grid}.leveling-route-col-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;font-size:.75rem;font-weight:700;display:block}.leveling-route-reagent-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.leveling-route-reagent-row{border:1px solid var(--border-subtle,#ffffff14);font-family:var(--font-sans);color:#fff;background:#ffffff05;align-items:center;gap:12px;padding:10px 14px;font-size:.85rem;display:flex}.leveling-route-reagent-bullet{background:var(--gold-ink,#d4af37);border-radius:50%;flex-shrink:0;width:6px;height:6px}.leveling-route-milestone-card{border:1px solid var(--border-subtle,#ffffff14);font-family:var(--font-sans);font-size:.875rem;line-height:var(--leading-relaxed,1.625);color:var(--text-secondary,#8e909a);background:#ffffff05;margin:0;padding:18px 22px}
