:root { color-scheme: dark; --page:#07111f; --surface:#0b1729; --text:#f3f4f6; --muted:#9aadc4; --line:#254666; --cyan:#00c3ff; --gold:#efc16a; --link:var(--cyan); --hover:#ffe0a1; --soft:#11243a; --note:#182439; }
* { box-sizing:border-box; }
body { margin:0; background:var(--page); color:var(--text); font:15px/1.6 Arial,Helvetica,sans-serif; }
body.light { color-scheme:light; --page:#edf4fa; --surface:#ffffff; --text:#142337; --muted:#43566b; --line:#8ba7be; --cyan:#006b8d; --gold:#855500; --link:var(--cyan); --hover:#805200; --soft:#dfeaf5; --note:#e7eff8; }
a { color:var(--link); text-decoration:none; }
a:hover { color:var(--hover); text-decoration:underline; }
button,input { font:inherit; }
button { background:var(--soft); color:var(--text); border:1px solid var(--line); padding:6px 12px; cursor:pointer; border-radius:2px; }
button:hover { border-color:var(--link); }
input { min-width:0; width:100%; background:var(--surface); color:var(--text); border:1px solid var(--line); padding:7px 10px; border-radius:2px; }
:focus-visible { outline:2px solid var(--link); outline-offset:3px; }
.wiki-header { min-height:86px; padding:10px 30px; display:flex; gap:24px; align-items:center; justify-content:space-between; background:var(--surface); border-top:2px solid var(--cyan); border-bottom:1px solid var(--line); }
.wiki-brand { display:flex; align-items:center; gap:18px; color:var(--text); }
.wiki-brand img { object-fit:contain; }
.wiki-brand span { font-size:11px; letter-spacing:2px; color:var(--cyan); }
.wiki-header nav { display:flex; flex-wrap:wrap; gap:24px; font-size:13px; }
.wiki-shell { display:grid; grid-template-columns:200px minmax(0,1fr); max-width:1580px; margin:auto; }
.wiki-sidebar { padding:25px 24px; border-right:1px solid var(--line); font-size:13px; }
.wiki-sidebar h2 { font:600 13px/1.4 Arial,sans-serif; margin:23px 0 8px; color:var(--cyan); border-bottom:1px solid var(--line); padding-bottom:5px; }
.wiki-sidebar h2:first-child { margin-top:0; }
.wiki-sidebar a { display:block; padding:3px 0; }
.wiki-sidebar a[aria-current="page"] { color:var(--gold); font-weight:bold; }
.sidebar-note { border-top:1px solid var(--line); margin-top:25px; padding-top:15px; color:var(--muted); font-size:11px; }
#topics-toggle { display:none; }
main { min-width:0; padding:22px 34px 40px; }
.wiki-toolbar { display:flex; align-items:center; gap:18px; border-bottom:1px solid var(--line); padding-bottom:15px; font-size:13px; }
.wiki-toolbar form { margin-left:auto; display:flex; gap:7px; max-width:400px; width:100%; }
.wiki-toolbar > a,.wiki-toolbar > button { flex-shrink:0; }
.review-note { font-size:11px; color:var(--muted); margin:14px 0 22px; }
h1 { color:var(--gold); font:normal 30px/1.25 Georgia,'Times New Roman',serif; border-bottom:1px solid var(--line); padding-bottom:12px; margin:0 0 22px; overflow-wrap:anywhere; }
h2 { color:var(--cyan); font-size:18px; margin:30px 0 12px; border-bottom:1px solid var(--line); padding-bottom:8px; }
h3 { color:var(--gold); font-size:15px; margin:0 0 12px; }
p { margin:0 0 15px; }
.intro-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:12px; }
.intro-copy,.start-playing { background:var(--surface); padding:20px; border:1px solid var(--line); }
.intro-copy p:last-child,.start-playing p:last-child { margin:0; }
.intro-links { display:flex; flex-wrap:wrap; gap:20px; background:var(--soft); padding:12px 15px; margin:17px 0; font-size:13px; }
.start-playing h2 { color:var(--gold); margin:0 0 12px; padding:0; border:0; font-size:16px; }
.topic-directory { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.directory-column { min-width:0; padding:18px; border:1px solid var(--line); background:var(--surface); }
.directory-column h3 { color:var(--gold); }
ul { padding-left:19px; margin:10px 0; }
li { padding:3px 0; overflow-wrap:anywhere; }
.directory-column ul { font-size:13px; }
.article-intro { color:var(--muted); max-width:900px; }
.status-note { background:var(--note); padding:12px 16px; border-left:3px solid var(--gold); font-size:13px; margin:20px 0; }
.prose { max-width:950px; }
.prose h2 { scroll-margin-top:20px; }
.settings-table { border-collapse:collapse; width:100%; margin:18px 0; font-size:14px; }
.settings-table th,.settings-table td { text-align:left; vertical-align:top; padding:11px 14px; border:1px solid var(--line); overflow-wrap:anywhere; }
.settings-table th { background:var(--soft); width:45%; font-weight:normal; }
.contents { background:var(--soft); border:1px solid var(--line); padding:14px 18px; max-width:460px; font-size:13px; margin:20px 0; }
.contents h2 { font-size:14px; border:0; padding:0; margin:0 0 6px; }
.article-navigation { display:flex; flex-wrap:wrap; gap:12px 24px; border-top:1px solid var(--line); padding-top:15px; margin-top:30px; font-size:13px; }
#wiki-article h2,#wiki-article h3,#wiki-article summary,#wiki-article h1 { scroll-margin-top:20px; }
.search-group > h2 { font-size:16px; }
.search-result { padding:16px 0; border-bottom:1px solid var(--line); }
.search-result p { font-size:13px; color:var(--muted); margin:6px 0 0; }
.topic-directory a,.prose a { overflow-wrap:anywhere; }
code { background:var(--soft); border:1px solid var(--line); padding:2px 6px; }
footer { border-top:1px solid var(--line); margin-top:38px; padding-top:16px; font-size:11px; color:var(--muted); }
.skip-link { position:fixed; top:0; left:20px; transform:translateY(-150%); z-index:10; padding:10px; background:var(--surface); }
.skip-link:focus { transform:none; }
.wiki-recovery-form { max-width:560px; margin:18px 0; }
.wiki-recovery-form label { display:block; }
.wiki-recovery-form input,.wiki-recovery-form button { min-height:44px; }
.wiki-recovery-form button { margin-top:10px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.craft-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:18px 0; }
.craft-directory section { background:var(--surface); border:1px solid var(--line); padding:18px; min-width:0; }
.craft-directory section > a { display:block; margin-bottom:12px; color:var(--gold); font-weight:bold; }
.craft-directory ul { font-size:13px; }
.craft-preview { position:fixed; z-index:100; max-width:calc(100vw - 16px); max-height:calc(100vh - 16px); overflow:hidden; pointer-events:none; width:228px; padding:12px; border:1px solid var(--cyan); background:var(--surface); box-shadow:0 8px 24px #0008; text-align:center; font-size:12px; }
.craft-preview p { color:var(--gold); margin:0 0 8px; }
.craft-preview.touch-preview { pointer-events:auto; overflow:auto; overscroll-behavior:contain; }
.wiki-item-link { display:inline-flex; gap:6px; align-items:center; max-width:100%; }
.wiki-item-link > a { min-width:0; overflow-wrap:anywhere; }
.wiki-preview-button { display:none; flex:none; min-width:44px; min-height:44px; padding:6px; font-size:18px; }
@media(pointer:coarse) { .wiki-preview-button { display:inline-block; } }
.craft-preview small { display:block; color:var(--muted); margin-top:8px; font-size:10px; }
.craft-art { height:132px; display:flex; align-items:center; justify-content:center; }
.craft-art img { display:block; max-height:120px; max-width:190px; object-fit:contain; }
.craft-art[data-art-size="compact"] img { max-height:78px; max-width:123.5px; }
.craft-art[data-art-size="book"] img { max-height:60px; max-width:95px; }
.craft-art[data-art-size="jewel"] img,.craft-art[data-art-size="accessory"] img { max-height:24px; max-width:38px; }
.craft-art[data-art-size="consumable"] img { max-height:36px; max-width:57px; }
.craft-art[data-art-size="seed"] img { max-height:96px; max-width:152px; }
.craft-item-hero { display:flex; flex-wrap:wrap; gap:24px; align-items:center; background:var(--surface); padding:18px; border:1px solid var(--line); margin:20px 0; }
.craft-item-hero .craft-art { flex:0 0 190px; }
.craft-item-hero p { font-size:13px; color:var(--muted); margin:0; flex:1 1 200px; }
.craft-summary { font-size:13px; color:var(--muted); }
.recipe-guide { border-top:1px solid var(--line); margin:30px 0; padding-top:8px; }
.craft-checklist { border:1px solid var(--line); background:var(--surface); padding:16px; margin:20px 0; min-width:0; }
.craft-checklist h3,.checklist-summary { color:var(--cyan); }
.craft-checklist p { font-size:13px; }
.craft-checklist > summary { color:var(--cyan); cursor:pointer; min-height:44px; padding:10px 0; font-weight:bold; }
.checklist-content { margin-top:14px; }
.wiki-breadcrumbs { margin:0 0 18px; font-size:13px; }
.wiki-breadcrumbs ol { display:flex; flex-wrap:wrap; gap:5px 10px; list-style:none; margin:0; padding:0; }
.wiki-breadcrumbs li { padding:0; min-width:0; }
.wiki-breadcrumbs li + li::before { content:'›'; color:var(--muted); margin-right:10px; }
.wiki-breadcrumbs [aria-current="page"] { color:var(--gold); }
.wiki-related { margin-top:28px; border-top:1px solid var(--line); }
.wiki-related ul { display:flex; flex-wrap:wrap; gap:8px 24px; list-style:none; padding:0; }
.wiki-related li { min-width:0; max-width:100%; }
.checklist-row { display:grid; grid-template-columns:24px minmax(0,1fr) 72px 80px; gap:12px; align-items:center; padding:10px 0; border-bottom:1px solid var(--line); cursor:pointer; min-height:44px; }
.checklist-row label { overflow-wrap:anywhere; font-size:13px; min-height:44px; display:flex; align-items:center; cursor:pointer; }
.checklist-row input[type="checkbox"] { width:20px; height:20px; accent-color:var(--cyan); }
.checklist-row input[type="number"] { width:72px; min-height:44px; margin:0; padding:6px; }
.checklist-row small,.checklist-storage { color:var(--muted); font-size:12px; }
.craft-checklist button { min-height:44px; }
.checklist-storage { display:block; margin-top:10px; }
.checklist-missing { font-size:13px; }
.checklist-row:focus-within { outline:2px solid var(--gold); outline-offset:2px; }
@media(max-width:600px) { .checklist-row { grid-template-columns:24px minmax(0,1fr) 64px; gap:8px; } .checklist-row input[type="number"] { width:64px; } .checklist-row small { grid-column:2/4; } }
.recipe-guide > h2 { color:var(--gold); }
.recipe-material { padding:12px 0; border-bottom:1px solid var(--line); }
.recipe-material p { margin:4px 0 0; color:var(--muted); font-size:12px; }
.recipe-material > strong { font-size:13px; color:var(--gold); }
.recipe-item-links { display:flex; flex-wrap:wrap; gap:4px 12px; font-size:13px; }
.recipe-art-board { background:var(--surface); border:1px solid var(--line); padding:16px; margin:16px 0; }
.recipe-art-board h3 { color:var(--cyan); }
.recipe-art-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(115px,1fr)); gap:8px; }
.recipe-art-cell { border:1px solid var(--line); background:var(--soft); padding:10px; text-align:center; font-size:11px; min-width:0; }
.recipe-art-cell .craft-art { height:80px; }
.recipe-art-cell .craft-art img { max-height:72px; max-width:90px; }
.recipe-art-cell .craft-art[data-art-size="jewel"] img,.recipe-art-cell .craft-art[data-art-size="accessory"] img { max-height:24px; max-width:38px; }
.recipe-art-cell .craft-art[data-art-size="consumable"] img { max-height:36px; max-width:57px; }
.recipe-art-cell .craft-art[data-art-size="compact"] img { max-height:47px; max-width:59px; }
.recipe-art-cell .craft-art[data-art-size="book"] img { max-height:36px; max-width:45px; }
.recipe-art-cell .craft-art[data-art-size="seed"] img { max-height:57.6px; max-width:72px; }
.recipe-option-button { padding:0; border:0; background:none; color:var(--cyan); font-size:inherit; text-align:left; }
.recipe-sources { font-size:11px; color:var(--muted); overflow-wrap:anywhere; }
.recipe-art-link { display:block; outline-offset:2px; }
.recipe-art-link:focus-visible { outline:2px solid var(--cyan); }
.recipe-material-sources { border:1px solid var(--line); background:var(--surface); padding:12px 16px; margin:16px 0; min-width:0; }
.recipe-material-sources > summary { color:var(--gold); cursor:pointer; font-size:13px; }
.recipe-material-sources label { display:block; color:var(--muted); font-size:12px; }
.recipe-material-sources select { margin:8px 0 14px; }
.material-source-result { font-size:12px; overflow-wrap:anywhere; }
.material-source-result h4 { color:var(--gold); margin:16px 0 8px; }
.material-drop-rule { margin:8px 0; border-top:1px solid var(--line); padding-top:8px; }
.material-drop-rule summary { color:var(--cyan); cursor:pointer; }
.material-drop-rule ul { columns:2; }
@media(max-width:600px) { .material-drop-rule ul { columns:1; } }
.reference-filters { display:grid; grid-template-columns:minmax(180px,2fr) minmax(140px,1fr) minmax(160px,1fr) auto; gap:12px; align-items:end; padding:16px; background:var(--surface); border:1px solid var(--line); }
.reference-filters label { display:block; font-size:12px; color:var(--muted); }
select { min-width:0; width:100%; font:inherit; background:var(--surface); color:var(--text); padding:8px; border:1px solid var(--line); border-radius:2px; }
select option { background:var(--surface); color:var(--text); }
.reference-count { margin:12px 0; color:var(--gold); font-size:13px; }
.reference-pagination { display:flex; gap:14px; align-items:center; margin:14px 0; font-size:13px; }
button:disabled { opacity:.5; cursor:default; }
.reference-item-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.reference-item-card { min-width:0; border:1px solid var(--line); background:var(--surface); padding:12px; text-align:center; font-size:13px; }
.reference-item-card > a { display:block; overflow-wrap:anywhere; }
.reference-item-card > small { display:block; color:var(--muted); margin-top:6px; }
.reference-item-card .craft-art { height:120px; }
.reference-details { border:1px solid var(--line); padding:12px 16px; margin:12px 0; background:var(--surface); overflow-wrap:anywhere; min-width:0; }
.reference-details summary { cursor:pointer; color:var(--gold); font-size:13px; }
.reference-details > p,.reference-details > div,.reference-details > ul { margin-top:12px; }
.reference-map-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; list-style:none; padding:0; }
.reference-map-list li { min-width:0; padding:12px; border:1px solid var(--line); background:var(--surface); }
.reference-map-list small { display:block; color:var(--muted); font-size:11px; }
.reference-item-list { columns:2; font-size:13px; }
.reference-item-list li { break-inside:avoid; }
.reference-inline-links { display:flex; gap:6px 12px; flex-wrap:wrap; }
.reference-learning { border-bottom:1px solid var(--line); padding:12px 0; }
.reference-learning p { margin:5px 0; font-size:13px; }
.reference-tooltip-line { font-size:11px; line-height:1.35; overflow-wrap:anywhere; }
.reference-tooltip-line.tone-blue { color:#91bdff; }
body.light .reference-tooltip-line.tone-blue { color:#00527e; }
.reference-empty { grid-column:1/-1; }
.verification-note { color:var(--muted); font-size:12px; margin:10px 0; }
.wiki-source-details { margin:24px 0 0; font-size:12px; color:var(--muted); }
.wiki-source-details > summary { cursor:pointer; }
.wiki-personal-actions { display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center; margin:16px 0; font-size:12px; }
.wiki-personal-actions span { color:var(--muted); }
.wiki-personal-actions button[aria-pressed="true"] { color:var(--gold); }
.wiki-favorites-list { list-style:none; padding:0; }
.wiki-favorites-list li { display:flex; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line); padding:12px 0; }
.wiki-favorites-list a { overflow-wrap:anywhere; }
.wiki-favorites-list small { display:block; color:var(--muted); font-size:12px; }
.wiki-favorite-controls { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto; gap:12px; align-items:end; margin:20px 0; }
.wiki-favorite-controls label,.wiki-favorites-transfer label { display:block; font-size:13px; color:var(--muted); }
.wiki-favorite-controls input,.wiki-favorite-controls select { margin-top:6px; }
.wiki-favorites-transfer { border:1px solid var(--line); padding:14px; margin:22px 0; }
.wiki-favorites-transfer > summary { color:var(--cyan); cursor:pointer; }
.wiki-favorites-transfer button { margin:8px 8px 8px 0; }
.wiki-favorites-transfer input { margin:8px 0; }
.wiki-favorites-transfer textarea { width:100%; min-height:160px; background:var(--surface); color:var(--text); font:inherit; }
.wiki-favorites-transfer p[role="status"] { overflow-wrap:anywhere; font-size:13px; }
.wiki-compare-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:16px; background:var(--surface); border:1px solid var(--line); }
.wiki-compare-controls label { display:block; font-size:13px; color:var(--muted); margin-bottom:10px; }
.wiki-compare-controls input,.wiki-compare-controls select { margin-top:6px; }
.wiki-compare-controls > button,.wiki-compare-controls > p { grid-column:1/-1; }
.wiki-compare-controls > p:empty { display:none; }
.wiki-compare-controls .wiki-compare-class { grid-column:1/-1; }
.wiki-compare-class small { display:block; margin-top:6px; }
.wiki-compare-heroes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:20px 0; }
.wiki-compare-heroes section { padding:16px; text-align:center; background:var(--surface); border:1px solid var(--line); min-width:0; }
.wiki-compare-heroes .craft-art img { max-width:min(100%,var(--compare-art-width,190px)); }
.wiki-compare-heroes .craft-art[data-art-size="compact"] { --compare-art-width:123.5px; }
.wiki-compare-heroes .craft-art[data-art-size="book"] { --compare-art-width:95px; }
.wiki-compare-heroes .craft-art[data-art-size="jewel"],.wiki-compare-heroes .craft-art[data-art-size="accessory"] { --compare-art-width:38px; }
.wiki-compare-heroes .craft-art[data-art-size="consumable"] { --compare-art-width:57px; }
.wiki-compare-heroes .craft-art[data-art-size="seed"] { --compare-art-width:152px; }
.wiki-comparison-table { table-layout:fixed; }
.wiki-comparison-table th,.wiki-comparison-table td { width:33.333%; }
.wiki-comparison-table .comparison-different th { border-left:3px solid var(--gold); }
.wiki-comparison-table .comparison-different td { background:var(--note); }
.comparison-difference-label { display:block; color:var(--gold); font-size:11px; margin-top:6px; }
@media(max-width:600px) { .wiki-favorite-controls { grid-template-columns:1fr; } .wiki-favorite-controls button,.wiki-favorites-transfer button,.wiki-compare-controls button { min-height:44px; } }
@media(max-width:600px) { .wiki-compare-controls { grid-template-columns:1fr; } .wiki-comparison-table { font-size:12px; } .wiki-comparison-table th,.wiki-comparison-table td { padding:7px; } .wiki-personal-actions button,.wiki-favorites-list button { min-height:44px; } }
.material-lookup-grid { display:grid; gap:24px; }
.material-lookup-grid > section { min-width:0; overflow-wrap:anywhere; }
@media(min-width:1000px) { .material-lookup-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1100px) { .reference-filters { grid-template-columns:1fr 1fr; } .reference-item-grid,.reference-map-list { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .reference-item-grid,.reference-map-list { grid-template-columns:repeat(2,minmax(0,1fr)); } .reference-item-list { columns:1; } }
@media(max-width:380px) { .reference-filters,.reference-map-list { grid-template-columns:1fr; } .reference-item-card { padding:8px; } .reference-item-card .craft-art:not([data-art-size]),.reference-item-card .craft-art[data-art-size="full"] { min-width:0; } .reference-item-card .craft-art[data-art-size="full"] img { max-width:100%; } .reference-item-card .craft-art { height:100px; } }
@media(max-width:1150px) { .craft-directory { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .craft-directory { grid-template-columns:1fr; } }
@media(max-width:1150px) { .topic-directory { grid-template-columns:repeat(2,minmax(0,1fr)); } .wiki-shell { grid-template-columns:180px minmax(0,1fr); } main { padding:22px; } .wiki-sidebar { padding:25px 18px; } }
@media(max-width:760px) { .wiki-header { padding:10px 16px; flex-wrap:wrap; gap:8px; } .wiki-header nav { gap:18px; width:100%; } .wiki-brand img { width:96px; height:48px; } .wiki-shell { display:block; } .wiki-sidebar { border-right:0; border-bottom:1px solid var(--line); padding:12px 16px; } #topics-toggle { display:block; width:100%; text-align:left; } #wiki-navigation { display:none; } #wiki-navigation.open { display:block; padding-top:16px; } .sidebar-note { display:none; } main { padding:18px 16px 30px; } .wiki-toolbar { flex-wrap:wrap; gap:10px; } .wiki-toolbar form { margin:0; max-width:none; } .intro-layout { grid-template-columns:1fr; } h1 { font-size:26px; } }
@media(max-width:440px) { .topic-directory { grid-template-columns:1fr; } .settings-table th,.settings-table td { padding:9px; } .wiki-brand span { font-size:10px; } }
