.aux-page { --aux-border: var(--line, #323b35); --aux-muted: var(--muted, #acb5ab); }
.aux-page [hidden] { display:none !important; }
.aux-top { padding-bottom:32px; }
.aux-quiz-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(240px,.7fr); gap:40px; align-items:start; }
.aux-panel,.aux-saved-card,.aux-macro-card { background:var(--panel,#17201a); border:1px solid var(--aux-border); border-radius:4px; }
.aux-panel { padding:32px; }
.aux-quiz-progress { display:flex; align-items:center; gap:22px; margin-bottom:28px; color:var(--aux-muted); font-size:.82rem; }
.aux-quiz-progress progress { flex:1; height:5px; accent-color:var(--gold,#c6ac72); }
.aux-panel fieldset { padding:0; margin:0 0 26px; border:0; min-width:0; }
.aux-panel legend { font-size:clamp(1.25rem,2.2vw,1.65rem); font-weight:600; line-height:1.35; padding:0; margin:0 0 12px; }
.aux-step-number { display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--gold,#c6ac72); color:var(--gold,#c6ac72); border-radius:50%; width:30px; height:30px; margin-right:12px; font-size:.9rem; vertical-align:middle; }
.aux-options { display:grid; gap:10px; margin-top:22px; }
.aux-option { display:flex; align-items:center; gap:14px; padding:17px 18px; border:1px solid var(--aux-border); border-radius:3px; cursor:pointer; transition:border-color .15s,background .15s; min-height:68px; }
.aux-option:hover,.aux-option:has(input:checked) { border-color:var(--gold,#c6ac72); background:rgba(198,172,114,.055); }
.aux-option:focus-within { outline:2px solid var(--gold,#c6ac72); outline-offset:3px; }
.aux-option input { width:18px; height:18px; flex:0 0 18px; accent-color:var(--gold,#c6ac72); }
.aux-option span { display:grid; gap:5px; }
.aux-option strong { font-size:.98rem; font-weight:550; }
.aux-option small { color:var(--aux-muted); font-size:.8rem; line-height:1.5; }
.aux-quiz-controls { display:flex; justify-content:space-between; gap:16px; margin-top:25px; }
.aux-page button { cursor:pointer; }
.aux-page button:disabled { cursor:not-allowed; opacity:.4; }
.aux-notes { padding-top:16px; }
.aux-notes h2 { font-size:1.6rem; margin:16px 0; }
.aux-notes p,.aux-build-help p { color:var(--aux-muted); line-height:1.8; }
.aux-status { color:var(--gold,#c6ac72); font-size:.9rem; line-height:1.6; min-height:1.4em; margin:16px 0 0; }
.aux-status:empty { min-height:0; margin:0; }
.aux-result-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.aux-result-card { padding:26px; border:1px solid var(--aux-border); background:var(--panel,#17201a); border-top:3px solid var(--class-color,#c6ac72); }
.aux-result-title { display:flex; align-items:center; gap:15px; margin-bottom:18px; }
.aux-result-title img,.aux-class-reference img,.aux-saved-title img,.aux-macro-title img,.aux-macro-class-heading img { border-radius:4px; border:1px solid var(--aux-border); object-fit:cover; }
.aux-result-title h3 { margin:0; font-size:1.4rem; }
.aux-result-card p { color:var(--aux-muted); font-size:.91rem; line-height:1.65; }
.aux-match-reasons { padding-left:20px; color:var(--gold,#c6ac72); font-size:.88rem; line-height:1.75; }
.aux-result-card .aux-match-tradeoff { font-size:.82rem; border-top:1px solid var(--aux-border); padding-top:16px; }
.aux-result-links { display:flex; flex-wrap:wrap; gap:15px; margin-top:20px; font-size:.84rem; }
.aux-result-links a { text-decoration:underline; text-underline-offset:4px; }
.aux-class-reference { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 28px; }
.aux-class-reference article { display:flex; align-items:flex-start; gap:15px; padding:24px 0; border-top:1px solid var(--aux-border); }
.aux-class-reference article img { flex:0 0 40px; }
.aux-class-reference h3 { font-size:1.05rem; margin:0 0 8px; color:var(--class-color); }
.aux-class-reference p { font-size:.85rem; margin:0 0 8px; color:var(--aux-muted); line-height:1.55; }
.aux-class-reference small { font-size:.72rem; color:var(--aux-muted); }
.aux-workspace { padding-bottom:48px; }
.aux-build-section-tabs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:26px; }
.aux-build-section-tabs a { display:flex; align-items:center; gap:12px; border:1px solid var(--aux-border); padding:13px 20px; min-height:46px; font-size:.9rem; }
.aux-build-section-tabs a:hover { border-color:var(--gold,#c6ac72); }
.aux-build-section-tabs span { font-size:.75rem; color:var(--gold,#c6ac72); }
.aux-workspace,.aux-community { scroll-margin-top:100px; }
.aux-community { border-top:1px solid var(--aux-border); padding-top:42px; }
.aux-community-total { flex:0 0 auto; color:var(--gold,#c6ac72); font-size:.88rem; }
.aux-community .notice { display:block; }
.aux-community .notice p { font-size:.86rem; color:var(--aux-muted); line-height:1.7; margin:8px 0 0; }
.aux-community-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:20px; }
.aux-community-card { border:1px solid var(--aux-border); border-top:2px solid var(--class-color); background:var(--panel,#17201a); padding:23px; min-width:0; scroll-margin-top:100px; }
.aux-community-card h3 { margin:0 0 7px; font-size:1.04rem; }
.aux-community-card .aux-saved-title p { color:var(--aux-muted); font-size:.74rem; }
.aux-community-spread { font-size:1.7rem; letter-spacing:.06em; color:var(--gold,#c6ac72); margin:8px 0 14px; }
.aux-community-card .aux-saved-summary { font-size:.74rem; gap:8px 12px; }
.aux-community-rules,.aux-community-source { font-size:.75rem; color:var(--aux-muted); line-height:1.65; margin:12px 0; overflow-wrap:anywhere; }
.aux-community-card .aux-saved-actions { align-items:stretch; margin-top:20px; }
.aux-community-card .aux-saved-actions .button { flex:1 1 auto; padding:10px 12px; text-align:center; }
.aux-community-card small { color:var(--aux-muted); font-size:.7rem; line-height:1.7; display:block; }
.aux-community-status { font-size:.8rem; color:var(--gold,#c6ac72); line-height:1.7; margin:12px 0; }
.aux-community-status:empty { display:none; }
.aux-community-credit { color:var(--aux-muted); font-size:.83rem; line-height:1.8; margin-top:28px; }
.spec-top { padding-top:30px; padding-bottom:38px; }
.spec-hero { border-top:1px solid var(--aux-border); padding-top:32px; margin-top:20px; }
.spec-hero-identity { display:flex; align-items:center; gap:24px; }
.spec-hero-identity>img { border-radius:5px; border:1px solid var(--class-color); flex:0 0 76px; }
.spec-hero h1 { font-size:clamp(2rem,4vw,3.65rem); margin:11px 0 14px; line-height:1.1; }
.spec-hero-identity p { max-width:740px; color:var(--aux-muted); line-height:1.6; margin:0; }
.spec-hero-data { display:flex; flex-wrap:wrap; gap:10px 20px; color:var(--aux-muted); font-size:.79rem; margin:23px 0 24px; }
.spec-hero-data>span:first-child { color:var(--class-color); }
.spec-reading>article { min-width:0; }
.spec-reading>article>section { margin-bottom:48px; scroll-margin-top:100px; }
.spec-reading h2 { font-size:clamp(1.45rem,2.2vw,1.85rem); margin:0 0 19px; }
.spec-reading p { line-height:1.8; }
.spec-reading .spec-answer { font-size:1.15rem; color:var(--text,#e0e5d8); }
.spec-role-row { display:flex; flex-wrap:wrap; gap:9px; margin:23px 0; }
.spec-role-row span { border:1px solid var(--aux-border); border-radius:3px; color:var(--aux-muted); padding:8px 11px; font-size:.77rem; }
.spec-reading .notice { display:block; }
.spec-reading .notice p { font-size:.9rem; margin:8px 0 0; }
.spec-key-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; margin:24px 0; }
.spec-key-card { border:1px solid var(--aux-border); background:var(--panel,#17201a); padding:24px; min-width:0; }
.spec-talent-heading { display:flex; align-items:center; gap:13px; }
.spec-talent-heading img { border:1px solid var(--aux-border); border-radius:4px; flex-shrink:0; }
.spec-talent-heading h3 { font-size:1.04rem; margin:5px 0 0; overflow-wrap:anywhere; }
.spec-rank-label { display:block; font-size:.73rem; color:var(--gold,#c6ac72); margin:18px 0 9px; }
.spec-key-card .spec-source-text,.spec-node .spec-source-text { white-space:pre-line; font-size:.88rem; line-height:1.7; color:var(--aux-muted); }
.spec-key-card .spec-cost,.spec-node .spec-cost { font-size:.76rem; line-height:1.6; color:var(--gold,#c6ac72); }
.spec-conditions { border-top:1px solid var(--aux-border); padding-top:15px; padding-left:18px; font-size:.76rem; color:var(--aux-muted); line-height:1.8; margin:18px 0 0; }
.spec-reading .spec-phase-note { color:var(--gold,#c6ac72); font-size:.79rem; line-height:1.7; }
.spec-row-gates { display:flex; gap:8px; flex-wrap:wrap; margin:22px 0; }
.spec-row-gates span { display:flex; flex-direction:column; gap:6px; border:1px solid var(--aux-border); padding:11px 13px; font-size:.71rem; color:var(--aux-muted); }
.spec-row-gates b { color:var(--text,#e0e5d8); font-weight:500; }
.spec-inline-links { display:flex; flex-wrap:wrap; gap:12px 24px; font-size:.84rem; margin:23px 0 0; }
.spec-inline-links a { text-decoration:underline; text-underline-offset:4px; }
.spec-example-card { border:1px solid var(--aux-border); border-left:3px solid var(--gold,#c6ac72); padding:28px; background:var(--panel,#17201a); }
.spec-example-title { display:flex; gap:15px; align-items:center; }
.spec-example-title img { border-radius:4px; border:1px solid var(--aux-border); }
.spec-example-title h3 { margin:0 0 7px; font-size:1.23rem; }
.spec-example-title p { font-size:.79rem; margin:0; color:var(--aux-muted); }
.spec-example-spread { font-size:2.3rem; letter-spacing:.07em; color:var(--gold,#c6ac72); margin:25px 0 17px; }
.spec-example-details { display:flex; flex-wrap:wrap; gap:10px 17px; font-size:.76rem; color:var(--aux-muted); }
.spec-tree-breakdown { display:flex; flex-wrap:wrap; gap:10px 24px; margin:20px 0; padding-top:18px; border-top:1px solid var(--aux-border); color:var(--aux-muted); font-size:.82rem; }
.spec-tree-breakdown b { margin-left:8px; color:var(--gold,#c6ac72); }
.spec-example-card>p { font-size:.88rem; color:var(--aux-muted); }
.spec-example-card small { display:block; margin-top:16px; color:var(--aux-muted); font-size:.73rem; }
.spec-example-card .spec-source-links { font-size:.79rem; overflow-wrap:anywhere; }
.spec-leveling-details { border:1px solid var(--aux-border); }
.spec-leveling-details>summary { padding:18px; cursor:pointer; min-height:48px; color:var(--gold,#c6ac72); font-size:.9rem; }
.spec-order-table { min-width:530px; }
.spec-order-table th,.spec-order-table td { font-size:.78rem; }
.spec-order-talent { display:flex; align-items:center; gap:9px; }
.spec-order-talent img { border-radius:3px; flex:0 0 25px; }
.spec-full-tree { display:grid; gap:8px; margin-top:22px; }
.spec-node { border:1px solid var(--aux-border); background:var(--panel,#17201a); scroll-margin-top:100px; min-width:0; }
.spec-node>summary { display:flex; align-items:center; gap:12px; padding:15px 17px; min-height:62px; cursor:pointer; }
.spec-node>summary::after { content:'+'; color:var(--gold,#c6ac72); margin-left:4px; }
.spec-node[open]>summary::after { content:'−'; }
.spec-node>summary img { border:1px solid var(--aux-border); border-radius:3px; flex:0 0 34px; }
.spec-node-name { font-size:.94rem; flex:1; }
.spec-node-meta { color:var(--aux-muted); font-size:.71rem; white-space:nowrap; }
.spec-node-content { border-top:1px solid var(--aux-border); padding:20px 22px; }
.spec-node-requirements { display:flex; flex-wrap:wrap; gap:10px 16px; font-size:.75rem; color:var(--gold,#c6ac72); margin:0 0 15px; }
.spec-ranks { list-style:none; padding:0; margin:0; }
.spec-ranks li { border-top:1px solid var(--aux-border); padding:17px 0 5px; }
.spec-ranks strong { font-weight:500; font-size:.77rem; color:var(--gold,#c6ac72); }
.spec-node-content>.text-link { font-size:.84rem; margin-top:15px; display:inline-block; }
.spec-ability-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:24px 0; }
.spec-ability-grid article { border:1px solid var(--aux-border); padding:22px; min-width:0; }
.spec-ability-grid .spec-talent-heading h3 { margin:0 0 6px; }
.spec-ability-grid p { color:var(--aux-muted); font-size:.87rem; }
.spec-ability-grid small { font-size:.72rem; color:var(--aux-muted); }
.spec-ability-grid .inline-sources { font-size:.75rem; overflow-wrap:anywhere; }
.spec-related { border-top:1px solid var(--aux-border); }
.spec-sibling-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; margin-top:25px; }
.spec-sibling-grid>a { display:flex; align-items:center; gap:13px; padding:21px 18px; border:1px solid var(--aux-border); }
.spec-sibling-grid>a[aria-current=page] { border-color:var(--gold,#c6ac72); }
.spec-sibling-grid img { border-radius:3px; flex:0 0 38px; }
.spec-sibling-grid strong { font-size:.97rem; }
.spec-sibling-grid small { display:block; color:var(--aux-muted); font-size:.74rem; line-height:1.6; margin-top:7px; }
.spec-sibling-grid>a>span:last-child { margin-left:auto; color:var(--gold,#c6ac72); }
.aux-workspace-top { display:flex; justify-content:space-between; align-items:start; gap:28px; padding:25px 0; border-top:1px solid var(--aux-border); border-bottom:1px solid var(--aux-border); }
.aux-storage-note { display:flex; gap:16px; max-width:720px; }
.aux-storage-note img { flex:0 0 42px; border-radius:4px; }
.aux-storage-note p { color:var(--aux-muted); font-size:.88rem; line-height:1.6; margin:6px 0 0; }
.aux-workspace-top>.button { flex:0 0 auto; }
.aux-workspace-toolbar,.aux-macro-filter { display:flex; align-items:center; flex-wrap:wrap; gap:13px; padding:24px 0; }
.aux-workspace-toolbar label,.aux-macro-filter label { font-size:.85rem; color:var(--aux-muted); }
.aux-page select,.aux-page input[type=text] { background:var(--bg,#101713); color:inherit; border:1px solid var(--aux-border); border-radius:3px; padding:11px 13px; min-height:44px; font:inherit; }
.aux-workspace-toolbar select { width:220px; }
.aux-workspace-toolbar p,.aux-macro-filter>span { margin-left:auto; font-size:.82rem; color:var(--aux-muted); }
.aux-saved-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:22px; }
.aux-saved-card { padding:24px; min-width:0; }
.aux-saved-title { display:flex; gap:14px; align-items:center; padding-bottom:18px; }
.aux-saved-title>div { min-width:0; }
.aux-saved-title h2 { font-size:1.15rem; margin:0 0 6px; overflow-wrap:anywhere; }
.aux-saved-title p { margin:0; color:var(--class-color,#c6ac72); font-size:.85rem; }
.aux-saved-summary { display:flex; flex-wrap:wrap; gap:10px 20px; font-size:.82rem; color:var(--aux-muted); border-top:1px solid var(--aux-border); padding:15px 0; }
.aux-saved-spread { font-size:.87rem; line-height:1.65; color:var(--aux-muted); overflow-wrap:anywhere; margin:0 0 12px; }
.aux-saved-date { font-size:.76rem; color:var(--aux-muted); display:block; margin:10px 0 16px; }
.aux-saved-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.aux-saved-actions .button,.aux-rename-form .button { padding:10px 15px; min-height:44px; font-size:.82rem; }
.aux-saved-actions .aux-quiet-button { background:none; border:0; color:var(--aux-muted); font:inherit; min-height:44px; padding:9px; text-decoration:underline; text-underline-offset:4px; }
.aux-rename-form { display:grid; gap:12px; border-top:1px solid var(--aux-border); padding-top:18px; margin-top:18px; }
.aux-rename-form label { font-size:.85rem; }
.aux-rename-form>div { display:flex; gap:10px; }
.aux-delete-notice { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:15px 20px; background:rgba(198,172,114,.08); border:1px solid var(--aux-border); margin-top:18px; }
.aux-delete-notice p { margin:0; font-size:.88rem; overflow-wrap:anywhere; }
.aux-empty-state { padding:70px 24px; border:1px dashed var(--aux-border); text-align:center; margin-top:26px; }
.aux-empty-state h2 { font-size:clamp(1.5rem,3vw,2.1rem); margin:16px 0; }
.aux-empty-state p { max-width:650px; color:var(--aux-muted); line-height:1.75; margin:0 auto 25px; }
.aux-saved-invalid { color:var(--gold,#c6ac72); font-size:.84rem; line-height:1.6; }
.aux-build-help { border-top:1px solid var(--aux-border); max-width:850px; margin-bottom:35px; }
.aux-build-help h2 { font-size:1.5rem; }
.aux-macro-intro { display:block; margin-bottom:18px; }
.aux-macro-intro .notice { margin:0; display:block; }
.aux-macro-intro p,.aux-macro-howto li { color:var(--aux-muted); line-height:1.7; font-size:.9rem; }
.aux-macro-howto h2 { font-size:1.2rem; margin-top:0; }
.aux-macro-howto ol { padding-left:22px; }
.aux-macro-howto li { margin:0 0 8px; }
.aux-macro-howto { margin-top:12px; border:1px solid var(--aux-border); padding:0 16px; border-radius:4px; }
.aux-macro-howto summary { cursor:pointer; font-size:.9rem; color:var(--text,#e0e5d8); min-height:44px; padding:10px 28px 10px 0; display:flex; align-items:center; line-height:1.45; }
.aux-macro-howto>summary:after { top:9px; line-height:1; }
#macro-browser { scroll-margin-top:100px; }
.aux-macro-class-nav { display:flex; flex-wrap:wrap; gap:10px; padding-top:22px; padding-bottom:22px; border-top:1px solid var(--aux-border); border-bottom:1px solid var(--aux-border); }
.aux-macro-class-nav a { display:flex; align-items:center; gap:8px; padding:8px 12px; min-height:44px; font-size:.83rem; border:1px solid var(--aux-border); border-radius:3px; }
.aux-macro-class-nav img { border-radius:3px; }
.aux-macro-class-nav a:hover { border-color:var(--gold,#c6ac72); }
.aux-macro-section { padding:30px 0; scroll-margin-top:100px; }
.aux-macro-class-heading { display:flex; align-items:center; gap:15px; margin-bottom:20px; }
.aux-macro-class-heading h2 { font-size:1.5rem; margin:0 0 6px; color:var(--class-color); }
.aux-macro-class-heading a { font-size:.82rem; color:var(--aux-muted); }
.aux-macro-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.aux-macro-card { padding:25px; min-width:0; }
.aux-macro-title { display:flex; align-items:center; gap:13px; }
.aux-macro-title h3 { margin:5px 0 0; font-size:1.05rem; }
.aux-macro-card p { font-size:.9rem; line-height:1.7; color:var(--aux-muted); }
.aux-macro-meta { display:flex; gap:8px 15px; flex-wrap:wrap; font-size:.75rem; color:var(--aux-muted); margin:15px 0; }
.aux-macro-card .aux-macro-caution { color:var(--gold,#c6ac72); font-size:.8rem; }
.aux-macro-card pre { padding:17px; border:1px solid var(--aux-border); background:var(--bg,#0f1712); overflow:auto; line-height:1.65; font-size:.82rem; tab-size:2; }
.aux-macro-card code { white-space:pre; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; }
.aux-macro-actions { display:flex; align-items:center; gap:15px; flex-wrap:wrap; margin:15px 0 22px; }
.aux-macro-actions .button { font-size:.8rem; min-height:44px; padding:10px 16px; }
.aux-copy-status { font-size:.8rem; color:var(--gold,#c6ac72); }
.aux-macro-card details { border-top:1px solid var(--aux-border); padding-top:16px; font-size:.82rem; }
.aux-macro-card summary { cursor:pointer; min-height:32px; color:var(--aux-muted); }
.aux-macro-card details a { display:inline-block; margin-right:10px; overflow-wrap:anywhere; line-height:1.8; }
.aux-page :is(a,button,select,input):focus-visible { outline:2px solid var(--gold,#c6ac72); outline-offset:4px; }
@media(max-width:1000px) {
  .aux-quiz-layout { grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr); gap:25px; }
  .aux-panel { padding:25px; }
  .aux-result-grid { gap:14px; }
  .aux-result-card { padding:20px; }
  .aux-community-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:800px) {
  .aux-quiz-layout,.aux-macro-intro { grid-template-columns:1fr; gap:25px; }
  .aux-notes { padding:0; }
  .aux-class-reference { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .aux-result-grid { grid-template-columns:1fr; }
  .aux-result-card { padding:24px; }
  .aux-saved-grid,.aux-macro-grid { grid-template-columns:1fr; }
  .aux-workspace-top { flex-wrap:wrap; }
  .spec-sibling-grid { grid-template-columns:1fr; }
}
@media(max-width:480px) {
  .aux-top { padding-bottom:22px; }
  .aux-panel { padding:21px 17px; }
  .aux-option { padding:15px 12px; gap:12px; }
  .aux-option small { font-size:.78rem; }
  .aux-quiz-controls { gap:12px; }
  .aux-quiz-controls .button { min-height:46px; padding:12px 17px; }
  .aux-class-reference { grid-template-columns:1fr; }
  .aux-workspace-top { gap:20px; }
  .aux-workspace-toolbar { align-items:start; }
  .aux-workspace-toolbar label { padding-top:13px; }
  .aux-workspace-toolbar p { width:100%; margin:0; }
  .aux-saved-card,.aux-macro-card { padding:20px 17px; }
  .aux-delete-notice { align-items:start; flex-direction:column; gap:12px; }
  .aux-empty-state { padding:42px 18px; }
  .aux-macro-class-nav { gap:8px; }
  .aux-macro-class-nav a { padding:7px 9px; }
  .aux-macro-card pre { padding:13px; font-size:.76rem; max-width:100%; }
  .aux-macro-filter select { max-width:220px; }
  .aux-community-grid { grid-template-columns:1fr; }
  .aux-community-card { padding:22px 18px; }
  .aux-community-total { margin-top:12px; }
  .spec-hero-identity { gap:15px; align-items:start; }
  .spec-hero-identity>img { width:52px; height:52px; flex:0 0 52px; margin-top:4px; }
  .spec-hero h1 { font-size:1.95rem; margin-top:9px; }
  .spec-hero .eyebrow { font-size:.6rem; letter-spacing:.08em; }
  .spec-key-grid,.spec-ability-grid { grid-template-columns:1fr; }
  .spec-key-card { padding:22px 18px; }
  .spec-example-card { padding:24px 18px; }
  .spec-example-details { gap:9px 13px; }
  .spec-node>summary { padding:13px 12px; gap:9px; flex-wrap:wrap; }
  .spec-node-meta { width:calc(100% - 43px); margin-left:43px; }
  .spec-node>summary::after { position:absolute; right:18px; }
  .spec-node { position:relative; }
  .spec-node-name { padding-right:17px; font-size:.9rem; }
  .spec-node-content { padding:18px 15px; }
}
@media(prefers-reduced-motion:reduce) { .aux-page * { scroll-behavior:auto !important; transition:none !important; } }

/* Optional preference flow and a complete filtered macro view. */
.aux-page :is(button,a,input,select,textarea,summary,pre):focus-visible { outline:2px solid var(--gold,#c6ac72); outline-offset:4px; }
.aux-page .aux-quiet-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; border:1px solid var(--aux-border); border-radius:3px; background:transparent; color:var(--gold,#c6ac72); font:inherit; font-size:.83rem; line-height:1.5; text-align:left; }
.aux-page .aux-quiet-button:hover { border-color:var(--gold,#c6ac72); }
.aux-page .aux-quiet-button:focus-visible { outline:2px solid var(--gold,#c6ac72); outline-offset:4px; }
.aux-page :is(input,select,textarea) { color:var(--text,#e0e5d8); background:var(--bg,#0f1712); border:1px solid var(--aux-border); border-radius:3px; font:inherit; min-width:0; }
.aux-page select,.aux-page input[type=search],.aux-page input[type=text] { min-height:46px; padding:10px 12px; }
.aux-optional { color:var(--aux-muted); font-size:.78rem; line-height:1.65; margin:20px 0 0; }
.aux-loading-note { color:var(--aux-muted); font-size:.85rem; line-height:1.75; padding-top:15px; padding-bottom:15px; }
.aux-loading-note a { color:var(--gold,#c6ac72); text-decoration:underline; text-underline-offset:3px; }
.aux-question-select { display:grid; gap:10px; }
.aux-question-select label { font-size:.85rem; color:var(--aux-muted); }
.aux-question-select select { width:100%; max-width:100%; }
.aux-quiz-shortcuts { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:20px; }
.aux-quiz-shortcuts .aux-quiet-button { min-height:44px; text-align:left; padding:10px 12px; }
.aux-quiz-controls { flex-wrap:wrap; }
.aux-quiz-controls .button { min-width:110px; justify-content:center; }
.aux-live-summary { display:grid; gap:9px; padding:17px 0; margin:16px 0; border-top:1px solid var(--aux-border); border-bottom:1px solid var(--aux-border); font-size:.83rem; line-height:1.6; }
.aux-live-summary strong { color:var(--gold,#c6ac72); }
.aux-live-summary span { color:var(--aux-muted); }
.aux-method { margin:18px 0 22px; }
.aux-method summary { cursor:pointer; min-height:44px; padding:10px 0; color:var(--gold,#c6ac72); }
.aux-method p { font-size:.83rem; }
.aux-notes .text-link { display:block; margin-top:13px; }
.aux-race-input-note { color:var(--gold,#c6ac72); font-size:.86rem; line-height:1.7; }
.aux-race-input-note:empty { display:none; }
.aux-results,.aux-quiz-layout { scroll-margin-top:100px; }
.aux-results { scroll-margin-top:0; padding-top:28px; }
.aux-result-controls { display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
.aux-answer-summary { display:flex; flex-wrap:wrap; gap:9px; margin:20px 0 26px; }
.aux-answer-edit { border:1px solid var(--aux-border); color:var(--aux-muted); background:var(--panel,#17201a); border-radius:3px; padding:10px 13px; min-height:44px; font:inherit; font-size:.82rem; line-height:1.5; text-align:left; }
.aux-answer-edit:hover { border-color:var(--gold,#c6ac72); }
.aux-result-notices p { padding:16px 19px; border:1px solid var(--aux-border); line-height:1.7; }
.aux-result-card { min-width:0; overflow-wrap:anywhere; }
.aux-result-grid>.aux-result-card:only-child { grid-column:1 / -1; max-width:960px; }
.aux-result-card .aux-match-conflict,.aux-match-conflict { color:var(--gold,#c6ac72); }
.aux-result-card .aux-match-neutral { font-size:.8rem; }
.aux-spec-paths { padding:18px 0; border-top:1px solid var(--aux-border); margin-top:20px; }
.aux-spec-paths h4 { margin:0 0 10px; font-size:.94rem; }
.aux-spec-paths .aux-match-switch { font-size:.83rem; color:var(--gold,#c6ac72); }
.aux-spec-path { padding:15px 0; border-bottom:1px solid var(--aux-border); }
.aux-spec-path strong { font-size:.92rem; }
.aux-spec-path p { margin:10px 0; }
.aux-spec-path .aux-result-links { gap:10px 16px; margin-top:12px; }
.aux-spec-path .aux-result-links a { min-height:40px; display:flex; align-items:center; }
.aux-race-result { margin:0 0 15px; }
.aux-race-result summary { min-height:44px; padding:10px 0; cursor:pointer; font-size:.9rem; }
.aux-race-result p { font-size:.79rem; }
.aux-race-choices { display:flex; flex-wrap:wrap; gap:8px; }
.aux-race-choices a { border:1px solid var(--aux-border); border-radius:3px; min-height:38px; padding:9px 10px; font-size:.75rem; }
[data-quiz-alternatives]>h3 { font-size:1.3rem; margin:34px 0 18px; }
.aux-macro-filter { display:block; border-bottom:1px solid var(--aux-border); }
.aux-filter-fields { display:grid; grid-template-columns:1fr 1fr 1fr 1.15fr; gap:15px; }
.aux-filter-fields label { display:grid; align-content:start; gap:9px; }
.aux-filter-fields label:last-child { grid-column:span 2; }
.aux-filter-fields :is(input,select) { width:100%; max-width:100%; }
.aux-filter-actions { display:flex; align-items:center; flex-wrap:wrap; gap:14px; margin-top:20px; }
.aux-filter-actions p { margin:0 auto 0 0; color:var(--gold,#c6ac72); font-size:.86rem; }
.aux-filter-actions .button { min-height:44px; font-size:.82rem; padding:10px 16px; }
.aux-macro-class-nav a.active { color:var(--gold,#c6ac72); border-color:var(--gold,#c6ac72); background:rgba(198,172,114,.065); }
.aux-macro-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:17px; }
.aux-macro-tags span { font-size:.71rem; color:var(--gold,#c6ac72); border:1px solid var(--aux-border); border-radius:3px; padding:5px 8px; }
.aux-macro-card .aux-macro-condition { padding-left:14px; border-left:2px solid var(--gold,#c6ac72); font-size:.84rem; }
.aux-macro-card .aux-macro-condition strong { color:var(--text,#e0e5d8); }
.aux-macro-card .aux-macro-language-note { font-size:.77rem; color:var(--gold,#c6ac72); }
.aux-macro-card .aux-macro-focus-note { color:var(--gold,#c6ac72); border:1px solid var(--aux-border); border-radius:3px; padding:12px; font-size:.8rem; }
.aux-macro-phase { font-weight:600; }
.aux-macro-card .aux-macro-next { border-top:1px solid var(--aux-border); padding-top:13px; font-size:.8rem; }
.aux-macro-next a { display:inline-block; min-height:28px; line-height:1.8; }
.aux-macro-target-choice { margin-bottom:16px; }
.aux-macro-card code { overflow-wrap:normal; word-break:normal; }
.aux-manual-copy,.aux-share-manual { display:grid; gap:10px; margin:20px 0; }
.aux-manual-copy label,.aux-share-manual label { font-size:.8rem; color:var(--gold,#c6ac72); }
.aux-manual-copy textarea { width:100%; max-width:100%; resize:vertical; padding:14px; line-height:1.7; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; white-space:pre; overflow:auto; font-size:.8rem; }
.aux-share-manual input { width:100%; }
.aux-ability-access { border-bottom:1px solid var(--aux-border); padding:12px 0; }
.aux-ability-access:last-child { border-bottom:0; }
.aux-ability-access h4 { font-size:.9rem; margin:10px 0; }
.aux-ability-access dl { display:grid; gap:10px; font-size:.78rem; line-height:1.6; }
.aux-ability-access dl>div { display:grid; grid-template-columns:90px minmax(0,1fr); gap:13px; }
.aux-ability-access dt { color:var(--aux-muted); }
.aux-ability-access dd { margin:0; overflow-wrap:anywhere; }
.aux-empty-actions { display:flex; flex-wrap:wrap; gap:12px; }
.aux-page .aux-empty-state { scroll-margin-top:110px; }
@media(max-width:1100px) {
  .aux-filter-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .aux-result-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:800px) {
  .aux-result-grid { grid-template-columns:1fr; }
}
@media(min-width:801px) {
  .aux-result-grid>.aux-result-card:only-child .aux-spec-paths { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; }
  .aux-result-grid>.aux-result-card:only-child .aux-spec-paths>h4,
  .aux-result-grid>.aux-result-card:only-child .aux-spec-paths>p,
  .aux-result-grid>.aux-result-card:only-child .aux-spec-path:only-of-type { grid-column:1 / -1; }
}
@media(max-width:600px) {
  .aux-results>.section-heading { flex-direction:column; align-items:stretch; gap:18px; }
  .aux-results>.section-heading>div:first-child { width:100%; }
  .aux-result-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; width:100%; }
  .aux-result-controls :is(.button,.aux-quiet-button) { min-width:0; justify-content:center; text-align:center; }
}
@media(max-width:480px) {
  .aux-quiz-controls { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .aux-quiz-controls [data-quiz-next] { grid-column:span 2; }
  .aux-quiz-controls .button { min-width:0; padding:12px 10px; }
  .aux-result-controls { width:100%; }
  .aux-result-controls .button { width:100%; text-align:center; }
  .aux-macro-filter .aux-filter-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 10px; }
  .aux-macro-filter .aux-filter-fields label { min-width:0; gap:7px; }
  .aux-macro-filter .aux-filter-fields label:nth-child(n+5) { grid-column:1/-1; }
  .aux-macro-filter .aux-filter-fields :is(input,select) { min-width:0; min-height:44px; font-size:.82rem; padding-inline:10px; }
  .aux-macro-filter select { max-width:100%; }
  .aux-filter-actions { gap:10px; }
  .aux-filter-actions p { width:100%; }
  .aux-filter-actions .button { flex:1 1 130px; justify-content:center; text-align:center; }
  .aux-macro-card pre { max-width:100%; }
  .aux-macro-card :is(pre,code) { white-space:pre-wrap; overflow-wrap:anywhere; word-break:normal; }
  .aux-macro-title { align-items:start; }
  .aux-macro-title img { flex:0 0 40px; }
  .aux-macro-title h3 { line-height:1.5; }
  .aux-ability-access dl>div { grid-template-columns:70px minmax(0,1fr); gap:9px; }
}
@media (max-width:480px) { .aux-build-section-tabs { flex-wrap:nowrap; } .aux-build-section-tabs a { flex:1 1 0; justify-content:center; padding:12px 10px; gap:8px; font-size:.84rem; } }
