.grimoire-launcher{position:fixed;right:34px;top:94px;display:flex;gap:12px;align-items:center;padding:11px 13px;background:#0b201bdd;border:1px solid #c5b17c55;border-radius:4px;color:#ded6bb;z-index:3;font-size:13px;text-align:left;box-shadow:0 8px 24px #0002}.grimoire-launcher small{display:block;font-size:9px;color:#9bab9e;margin-top:3px}.grimoire-launcher kbd{font-size:10px;border:1px solid #c2c9af3b;padding:3px 5px}.book-mark{font-size:28px;color:#e0c98f}.grimoire-launcher:hover{background:#18382c}
#grimoire{padding:0;border:1px solid #b8b78d55;border-radius:7px;background:#0c1c19;color:#e7e9de;width:min(1330px,calc(100vw - 52px));max-width:none;max-height:calc(100vh - 40px);height:790px;overflow:hidden;box-shadow:0 30px 140px #0009}#grimoire::backdrop{background:#020b0bc7;backdrop-filter:blur(8px)}.grimoire-shell{display:flex;flex-direction:column;height:100%;background:radial-gradient(ellipse at 55% 0%,#29463866,transparent 55%)}.grimoire-header{display:flex;justify-content:space-between;padding:27px 30px 19px;border-bottom:1px solid #aab59423}.grimoire-header h1{font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.1;margin:7px 0;color:#eee5cf}.grimoire-header h1 span{font-family:serif;color:#d5bd8377;font-size:29px;margin-left:17px}.grimoire-header p{margin:0;color:#a3b3a7;font-size:12px}.grimoire-header button{align-self:flex-start;background:transparent;border:1px solid #becbb338;border-radius:3px;color:#bbc7b7;width:32px;height:32px;font-size:23px}
.grimoire-tabs{display:flex;align-items:center;gap:22px;padding:0 30px;border-bottom:1px solid #aab59423;min-height:49px;flex-wrap:wrap}.grimoire-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:15px 0 13px;color:#8fa296;font-size:11px}.grimoire-tabs button[aria-pressed=true]{color:#e1cfa5;border-bottom-color:#d5bd83}.grimoire-tabs small{margin-left:6px;color:#708b7c}.grimoire-tabs>span{margin-left:auto;color:#91a693;font-size:10px}.grimoire-body{display:grid;grid-template-columns:168px minmax(0,1fr) 285px;min-height:0;flex:1}.grimoire-elements{padding:25px 16px;border-right:1px solid #aab59423;overflow-y:auto}.grimoire-elements>.eyebrow{font-size:7px;display:block;margin:0 7px 17px}.element-button{display:flex;width:100%;align-items:center;gap:12px;background:transparent;border:1px solid transparent;border-radius:4px;margin:5px 0;padding:10px 8px;text-align:left;font-size:13px;color:#b8c8bc}.element-button small{display:block;font-size:8px;color:#718c7e;margin-top:4px}.element-mark{font-family:serif;font-size:28px;color:var(--art);width:30px;text-align:center}.element-button.active{background:#92bba412;border-color:#c0c6a83d;color:var(--art)}.element-button:hover{background:#92bba417}.grimoire-note{font-size:9px;line-height:1.7;color:#789385;margin:24px 7px 0;border-top:1px solid #aab59423;padding-top:15px}
.grimoire-canvas{padding:25px 24px;overflow:auto;min-width:0;background-image:radial-gradient(#b3b78d13 1px,transparent 1px);background-size:22px 22px}.path-heading .eyebrow{font-size:8px;color:var(--art,#d5bd83)}.path-heading h2{font:400 33px var(--serif);margin:6px 0;color:#e8e2d1}.path-heading p{font-size:11px;line-height:1.6;margin:0;color:#93aa9b;max-width:480px}.tree-labels{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;margin:27px 0 10px;color:#698677;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.tree-layout{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,154px);gap:18px;align-items:center}.tree-layout>svg{position:absolute;inset:0;height:100%;width:100%;stroke:#bda77855;stroke-width:1.5;pointer-events:none;z-index:0}.tree-layout>div{z-index:1}.tree-root{grid-column:1;grid-row:1 / span 2}.tree-branch-one{grid-column:2;grid-row:1}.tree-branch-two{grid-column:2;grid-row:2}.tree-crown{grid-column:3;grid-row:1 / span 2}.art-node{position:relative;display:flex;flex-direction:column;width:100%;min-height:140px;border:1px solid #9eb49b36;background:#10231f;padding:13px 11px;text-align:left;border-radius:5px;overflow:hidden;color:#e1e4d4;transition:border-color .15s,background .15s}.art-node:hover{border-color:var(--art);background:#19322b}.art-node.chosen{border-color:var(--art);box-shadow:0 0 0 1px color-mix(in srgb,var(--art),transparent 60%),0 9px 35px #0003}.art-node.locked{background:#10201de8;color:#9bad9f}.node-status{display:flex;justify-content:space-between;width:100%;font-size:7px;letter-spacing:.1em;color:var(--art);opacity:.85}.locked .node-status{color:#7d9184}.node-status>span{font-size:12px}.art-node strong{font:500 21px/1.1 var(--serif);margin:10px 0 6px}.node-form{font-size:8px;color:#92a99a;text-transform:capitalize;line-height:1.5}.node-rule{font-size:8px;line-height:1.5;color:#789182;margin-top:auto;padding-top:12px}.node-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#8aa17f18}.node-progress i{display:block;height:100%;background:var(--art)}.tree-caption{font-size:10px;color:#809a8a;line-height:1.8;margin-top:23px}.tree-caption strong{font-weight:500;color:#b7c8b7}
.convergence-grid,.art-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.convergence-recipe .art-node{min-height:125px}.recipe-elements{display:flex;gap:8px;align-items:center;font-size:9px;margin:0 3px 8px}.recipe-elements b{color:#708a78;font-weight:400}.art-library .art-node{min-height:135px}.grimoire-detail{padding:25px 22px;background:#08161277;border-left:1px solid #aab59423;overflow:auto}.grimoire-detail>.eyebrow{color:var(--art);font-size:8px}.grimoire-detail h2{font:400 31px/1.08 var(--serif);margin:10px 0 12px}.detail-tags{display:flex;gap:6px;flex-wrap:wrap}.detail-tags span{border:1px solid #a9b59828;color:#9fb69f;padding:4px 6px;font-size:8px;text-transform:capitalize;border-radius:3px}.detail-description{font-size:11px;color:#adbeae;line-height:1.8;margin:18px 0}.mastery-label{display:flex;justify-content:space-between;color:#94b197;font-size:9px}.mastery-track{height:3px;background:#a4b58e1c;margin-top:8px}.mastery-track i{display:block;height:100%;background:var(--art)}.detail-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:22px 0}.detail-stats small{display:block;color:#748f7e;font-size:8px}.detail-stats strong{display:block;font-family:var(--serif);font-weight:400;font-size:23px;margin-top:4px;color:#dedcc9}.detail-invocation{font-size:10px;line-height:1.8;color:#ccb98c;border-block:1px solid #aab59423;padding:12px 0}.detail-invocation kbd{font:9px var(--sans);border:1px solid #b5aa7840;padding:2px 5px}.rank-growth{color:#6f8c7c;font-size:9px;line-height:1.7}.unlock-requirement{font-size:10px;color:#a19473;line-height:1.6;padding:12px;border:1px dashed #b5aa7835}.unlock-requirement strong{display:block;font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#c6b98b;margin-bottom:5px}.equip-heading{text-transform:uppercase;font-size:8px;letter-spacing:.1em;color:#97a990;margin:20px 0 9px}.equip-slots{display:grid;gap:5px}.equip-slots button{display:flex;align-items:center;gap:8px;text-align:left;background:#14271e;color:#afbfaa;border:1px solid #b4c5a225;border-radius:3px;padding:7px 9px;font-size:10px}.equip-slots button:hover{border-color:#c9bb7d88}.equip-slots button.equipped{border-color:var(--art);color:var(--art)}.equip-slots button:disabled{opacity:.4}.equip-slots kbd{font-family:var(--sans);font-size:9px;color:#c7c6a2}.equip-slots b{margin-left:auto}#equip-message{font-size:10px;color:var(--art)}
.grimoire-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:17px 30px;border-top:1px solid #aab59423;background:#0b1b16}.grimoire-footer p{max-width:740px;margin:0;font-size:9px;line-height:1.7;color:#7f9987}.grimoire-footer strong{color:#b6c5aa;font-weight:500}.grimoire-footer button{background:#c7b988;color:#14221c;border:0;border-radius:3px;padding:11px 17px;font-size:11px;white-space:nowrap}.grimoire-footer button span{margin-left:17px}.slot-mastery{position:absolute;bottom:0;left:0;right:0;height:2px;background:#c5cd9e15}.slot-mastery i{display:block;background:var(--slot-color);height:100%;width:0;transition:width .2s}
.grimoire-header,.grimoire-tabs,.grimoire-footer{flex-shrink:0}.grimoire-equipment{flex-shrink:0;display:grid;grid-template-columns:245px minmax(0,1fr);gap:8px 20px;padding:14px 24px 10px;border-top:1px solid #c7b78066;background:linear-gradient(110deg,#213529,#10271f);box-shadow:0 -10px 30px #0002}.equip-selection{display:flex;flex-direction:column;gap:5px;min-width:0}.equip-selection>.eyebrow{color:#d4c28a;font-size:8px}.equip-selection>strong{font:400 23px/1.1 var(--serif);color:var(--art)}.equip-selection>span:last-child{font-size:10px;line-height:1.5;color:#b7c5af}.grimoire-equipment .equip-slots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;align-content:start}.grimoire-equipment .equip-slots button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;min-width:0;min-height:59px;padding:9px;color:#ece3bd;border-color:#cbbd7866;background:#334431}.equip-action{display:flex;width:100%;align-items:center;justify-content:space-between;gap:5px;font-size:11px;white-space:nowrap}.equip-action kbd{border:1px solid #cbbd7855;border-radius:2px;padding:2px 5px;background:#10241b}.equip-current{font-size:9px;line-height:1.3;color:#a8baa7;overflow-wrap:anywhere}.grimoire-equipment .equip-slots button.equipped{border-color:var(--art);background:#172f25}.grimoire-equipment .equip-slots button:disabled{opacity:.4;background:#17251e}.grimoire-equipment #equip-message{grid-column:1/-1;margin:0;min-height:15px;font-size:10px;line-height:1.5;color:#dbd0a6}.node-status .node-equipped{font:8px var(--sans);letter-spacing:0;color:#e4d7ab}.art-node:focus-visible,.equip-slots button:focus-visible{outline:2px solid var(--art);outline-offset:3px}
@media(max-width:1100px){.grimoire-body{grid-template-columns:125px minmax(0,1fr) 240px}.grimoire-elements{padding:20px 9px}.grimoire-detail{padding:20px 16px}.grimoire-canvas{padding:22px 15px}.tree-layout{gap:10px}.art-node{padding:10px 8px}.art-node strong{font-size:18px}.element-button{gap:5px}.grimoire-launcher{right:20px}.grimoire-tabs{gap:17px}}
@media(max-width:760px){#grimoire{width:calc(100vw - 16px);max-height:calc(100vh - 16px);height:calc(100vh - 16px)}.grimoire-header{padding:17px}.grimoire-header h1{font-size:31px}.grimoire-tabs{padding:0 16px;gap:12px}.grimoire-tabs>span{display:none}.grimoire-body{display:block;overflow:auto}.grimoire-elements{display:flex;gap:4px;overflow-x:auto;border-right:0;padding:8px 10px}.grimoire-elements>.eyebrow,.grimoire-note{display:none}.element-button{min-width:95px;padding:7px 4px}.element-mark{font-size:22px}.grimoire-canvas{overflow:visible;min-height:400px;padding:20px 15px}.grimoire-detail{border-left:0;border-top:1px solid #aab59423;overflow:visible}.grimoire-footer{padding:10px 15px}.grimoire-footer p{display:none}.grimoire-footer button{margin-left:auto}.tree-layout{grid-template-rows:repeat(2,145px)}.art-node strong{font-size:18px}.grimoire-launcher{right:16px;top:92px;padding:8px}.grimoire-launcher small{display:none}}
@media(max-width:950px){.grimoire-equipment{grid-template-columns:190px minmax(0,1fr);gap:8px 12px;padding:12px 16px}.equip-action{font-size:10px}.grimoire-equipment .equip-slots button{padding:7px 5px}}
@media(max-width:760px){.grimoire-equipment{grid-template-columns:1fr;padding:10px;gap:9px}.equip-selection{gap:3px}.equip-selection>strong{font-size:21px}.grimoire-equipment .equip-slots{gap:4px}.equip-action{font-size:9px;gap:2px}.equip-action kbd{padding:2px 3px}.equip-current{font-size:8px}.grimoire-equipment #equip-message{font-size:9px}.grimoire-footer{padding:8px 12px}}

.evolutions-heading{margin-top:28px}.evolution-entry{display:grid;gap:4px}.evolution-entry small{color:#c9b98a;font-size:10px;letter-spacing:.04em}
