:root{color:#f2e7c7;background:#0a100d;font-family:Inter,Segoe UI,system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,kbd{font:inherit}.shell{position:relative;width:100%;height:100%;background:radial-gradient(circle at 50% 40%,#263a2d,#09100c 75%)}.game-canvas,.game-canvas canvas{width:100%!important;height:100%!important;display:block}.veil{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at center,transparent 45%,rgba(3,8,5,.7) 100%);box-shadow:inset 0 0 100px #00000080}.hud{position:absolute;z-index:2;pointer-events:none}.hud--top{top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-start;padding:28px 32px}.hud--top__actions{display:flex;align-items:stretch;gap:9px;pointer-events:auto}.brand__eyebrow{color:#bda86f;font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.brand h1{margin:5px 0 0;font:600 clamp(22px,2vw,31px)/1 Georgia,serif;letter-spacing:.05em;text-shadow:0 2px 15px #000}.connection{display:flex;align-items:center;gap:11px;min-width:190px;padding:11px 14px;border:1px solid rgba(220,201,146,.25);background:linear-gradient(135deg,#0d1811f0,#1a281dd1);box-shadow:0 8px 30px #0000004d}.connection__rune{width:10px;height:10px;transform:rotate(45deg);background:#d0a951;box-shadow:0 0 14px #d0a951}.connection--connected .connection__rune{background:#8ed2a2;box-shadow:0 0 14px #8ed2a2}.connection--offline .connection__rune{background:#b85d50;box-shadow:0 0 14px #b85d50}.connection strong,.connection small{display:block}.connection strong{font-size:12px}.connection small{margin-top:3px;color:#9eaa9f;font-size:10px}.account-chip{min-width:132px;padding:9px 12px;border:1px solid rgba(202,179,108,.38);color:#eee3c3;background:#0b150eeb;cursor:pointer;text-align:left}.account-chip:disabled{cursor:default}.account-chip strong,.account-chip small{display:block}.account-chip strong{font-size:10px;letter-spacing:.05em;text-transform:uppercase}.account-chip small{margin-top:4px;color:#bca96f;font-size:9px}.account-chip--registered{border-color:#7ebe9173}.account-chip--registered small{color:#8fc69f}.account-chip--initializing{border-color:#d0a95173}.account-chip--error{max-width:240px;border-color:#d86556b3}.account-chip--error strong,.account-chip--error small{color:#e49a8e}.account-chip--error small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-panel{position:absolute;z-index:8;top:50%;left:50%;width:min(430px,calc(100vw - 30px));transform:translate(-50%,-50%);padding:22px;border:1px solid #72643d;color:#eee3c3;background:linear-gradient(145deg,#0e1b12fc,#070e0afc);box-shadow:0 25px 90px #000000b3}.account-panel header{display:flex;align-items:flex-start;border-bottom:1px solid rgba(198,174,105,.22);padding-bottom:12px}.account-panel header div{flex:1}.account-panel header small{color:#a99b72;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.account-panel h2{margin:3px 0 0;font:600 24px Georgia,serif}.account-panel header>button{border:0;color:#d7c99f;background:transparent;cursor:pointer;font-size:25px}.account-panel>p{color:#aab5aa;font:13px/1.5 Georgia,serif}.account-panel__tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:14px}.account-panel__tabs button{padding:8px;border:1px solid #425245;color:#9eaa9f;background:#101b13;cursor:pointer;font-size:10px}.account-panel__tabs button[aria-selected=true]{border-color:#b99d59;color:#f0dfad;background:#253122}.account-panel form{display:grid;gap:11px}.account-panel label{display:grid;gap:5px;color:#b9aa7c;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.account-panel input{width:100%;padding:11px 12px;border:1px solid #566453;outline:none;color:#f2e7c7;background:#111b14}.account-panel input:focus{border-color:#c5a65e;box-shadow:0 0 0 2px #c5a65e24}.account-panel form>button{padding:11px;border:1px solid #b99d59;color:#171d15;background:#cbb36e;cursor:pointer;font-weight:700}.account-panel form>button:disabled{opacity:.55;cursor:wait}.account-panel__error{margin:0;color:#e49a8e;font-size:11px}.controls{right:32px;bottom:30px;width:262px;padding:15px;border-left:2px solid #b99d59;background:#09100cd1}.controls>span{color:#c7b577;font:500 11px Georgia,serif;text-transform:uppercase;letter-spacing:.12em}.keys{display:flex;gap:6px;margin:10px 0}kbd{display:grid;place-items:center;min-width:29px;height:29px;padding:0 7px;border:1px solid #6f785f;color:#f5eac8;background:#202b22;box-shadow:inset 0 -3px #111a14}.controls small{color:#8d9a8e;font-size:10px;line-height:1.45}.status{left:32px;bottom:30px;display:flex;align-items:center;gap:12px}.status__diamond{width:28px;height:28px;transform:rotate(45deg);border:1px solid #c5a65e;background:#2a3b2ae6;box-shadow:inset 0 0 0 5px #18271d}.status p{margin:0;font:500 13px Georgia,serif}.status small{color:#9eaa9f;font:400 10px Inter,sans-serif}.memory-notice{top:100px;left:50%;max-width:min(520px,calc(100vw - 40px));padding:12px 18px;transform:translate(-50%);border:1px solid rgba(198,174,105,.55);color:#f2e7c7;background:#0e1912f0;box-shadow:0 10px 35px #0006;font:500 12px Georgia,serif;text-align:center}.memory-notice--error{border-color:#b85d50b3;color:#efb4a9}.memory-notice--quest{border-color:#d0a951b8;color:#f2dda5}.memory-notice--item{border-color:#8ed2a2a6;color:#bfe0c7}.combo-notice{top:150px;left:50%;max-width:min(520px,calc(100vw - 40px));padding:12px 18px;transform:translate(-50%);border:1px solid rgba(123,225,211,.78);color:#fff0b8;background:linear-gradient(135deg,#11302cf5,#301840f5);box-shadow:0 0 28px #8ae5d733,0 10px 35px #00000073;font:600 12px Georgia,serif;letter-spacing:.04em;text-align:center}.controls__combo{display:block;margin-top:8px;color:#b9d9d1!important}.dialogue-panel{position:absolute;z-index:4;left:50%;bottom:28px;width:min(680px,calc(100vw - 40px));max-height:calc(100vh - 56px);box-sizing:border-box;display:grid;grid-template-rows:auto minmax(84px,1fr) auto auto;gap:0;overflow:hidden;padding:18px;transform:translate(-50%);border:1px solid rgba(198,174,105,.62);background:linear-gradient(145deg,#0a140efa,#172319f7);box-shadow:0 20px 60px #0000009e,inset 0 0 35px #748c5b14}.dialogue-panel__header{display:flex;align-items:center;gap:14px;border-bottom:1px solid rgba(198,174,105,.2);padding-bottom:11px}.dialogue-panel__header div{flex:1}.dialogue-panel__header small{color:#9eaa9f;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.dialogue-panel__header h2{margin:2px 0 0;font:600 22px Georgia,serif}.dialogue-panel__provider{padding:5px 8px;border:1px solid rgba(142,210,162,.35);color:#a7d7b4;font-size:10px;text-transform:uppercase}.dialogue-panel__header button{border:0;color:#d7c99f;background:transparent;cursor:pointer;font-size:25px}.dialogue-panel__transcript{min-height:84px;max-height:min(42vh,250px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(189,168,111,.5) transparent;padding:8px 14px 12px 4px;scroll-padding-bottom:12px}.dialogue-panel__transcript-content{display:flow-root;min-height:100%}.dialogue-line{display:grid;gap:3px;width:fit-content;max-width:82%;margin:10px 0;padding:8px 10px;border-left:2px solid rgba(189,168,111,.5);color:#e8ddbd;background:#1d2a1e8c;font:14px/1.45 Georgia,serif}.dialogue-line strong{color:#bda86f;font:600 9px Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase}.dialogue-line--player{margin-left:auto;border-right:2px solid rgba(145,170,151,.48);border-left:0;color:#c3d2c6;background:#18302594;text-align:right}.dialogue-line--player strong{color:#91aa97}.dialogue-panel__form{display:flex;gap:8px;padding-top:10px;border-top:1px solid rgba(198,174,105,.16)}.dialogue-panel__quest{width:100%;margin-bottom:9px;padding:10px;border:1px solid #b99d59;color:#171d15;background:#cbb36e;cursor:pointer;font-weight:700}.dialogue-panel__form input{flex:1;min-width:0;padding:11px 12px;border:1px solid #566453;outline:none;color:#f2e7c7;background:#111b14}.dialogue-panel__form input:focus{border-color:#c5a65e;box-shadow:0 0 0 2px #c5a65e24}.dialogue-panel__form button{padding:0 18px;border:1px solid #b99d59;color:#171d15;background:#cbb36e;cursor:pointer;transition:transform .12s ease-out,filter .12s ease-out}.dialogue-panel__form button:not(:disabled):hover{filter:brightness(1.08)}.dialogue-panel__form button:not(:disabled):active{transform:scale(.96)}.dialogue-panel__form button:disabled{cursor:default;opacity:.45}.dialogue-panel__memory{display:block;margin-top:8px;color:#78877b;font-size:9px;text-align:right}.inventory-panel{position:absolute;z-index:4;inset:50% auto auto 50%;width:min(760px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow-y:auto;padding:20px;transform:translate(-50%,-50%);border:1px solid rgba(198,174,105,.62);background:linear-gradient(145deg,#0a140efa,#172319fa);box-shadow:0 24px 80px #000000b3,inset 0 0 40px #748c5b12}.inventory-panel__header{display:flex;align-items:center;border-bottom:1px solid rgba(198,174,105,.22);padding-bottom:12px}.inventory-panel__header div{flex:1}.inventory-panel__header small,.inventory-quest small{color:#9eaa9f;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.inventory-panel__header h2{margin:2px 0 0;font:600 24px Georgia,serif}.inventory-panel__header button{border:0;color:#d7c99f;background:transparent;cursor:pointer;font-size:25px}.inventory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:16px 0}.inventory-slot{position:relative;min-height:132px;padding:10px;border:1px solid #38483a;background:#0a110cb3}.inventory-slot--filled{border-color:#64755b;background:#182419eb}.inventory-slot strong,.inventory-slot small{display:block}.inventory-slot strong{margin:7px 0 3px;color:#e8ddbd;font:600 12px Georgia,serif}.inventory-slot small{min-height:28px;color:#89958a;font-size:9px;line-height:1.4}.inventory-slot b{position:absolute;top:8px;right:9px;color:#d7c178;font-size:11px}.inventory-slot button{position:absolute;right:8px;bottom:8px;padding:4px 9px;border:1px solid #83a782;color:#d8ead5;background:#263d2b;cursor:pointer;font-size:9px}.inventory-slot__empty{display:grid;place-items:center;height:108px;color:#455348;font-size:9px;text-transform:uppercase}.inventory-slot__icon{display:block;width:25px;height:25px;transform:rotate(45deg);border:2px solid #dbe9ba;background:#8faf6d;box-shadow:0 0 13px #b1d78a59}.inventory-slot__icon--veil-ointment{transform:none;border-radius:45% 45% 35% 35%;border-color:#d7bd76;background:#684b38}.inventory-quests{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.inventory-quest{display:grid;gap:4px;padding:12px 14px;border-left:3px solid #758471;background:#080e0aa6}.inventory-quest--accepted{border-left-color:#d0a951}.inventory-quest--completed{border-left-color:#78b98b}.inventory-quest strong{font:600 14px Georgia,serif}.inventory-quest span{color:#aab5aa;font-size:10px}.inventory-panel__hint{display:block;margin-top:10px;color:#78877b;font-size:9px;text-align:right}.quest-tracker{top:105px;left:32px;display:grid;gap:3px;padding:11px 14px;border-left:2px solid #d0a951;background:#09100cdb}.quest-tracker small{color:#a99255;font-size:8px;letter-spacing:.14em;text-transform:uppercase}.quest-tracker strong{font:600 13px Georgia,serif}.quest-tracker span{color:#aab5aa;font-size:10px}.class-selection{display:grid;place-items:center;min-height:100%;padding:28px;background:radial-gradient(circle at 50% 35%,#304535,#0a100d 72%)}.class-selection__panel{width:min(980px,100%);text-align:center}.class-selection__panel>small{color:#a99b72;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.class-selection__panel h1{margin:8px 0;font:600 clamp(32px,5vw,54px)/1 Georgia,serif}.class-selection__panel>p{margin:0 auto 24px;max-width:590px;color:#aab5aa;font:15px/1.5 Georgia,serif}.class-selection__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.class-card{display:grid;justify-items:center;gap:8px;min-height:300px;padding:28px 22px;border:1px solid #4c5c4d;color:#eee3c3;background:linear-gradient(155deg,#1b2a1efa,#0a120dfa);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.class-card:hover,.class-card:focus-visible{transform:translateY(-5px);border-color:#ccb66f;outline:none;background:linear-gradient(155deg,#263b2b,#111d15)}.class-card strong{margin-top:8px;font:600 24px Georgia,serif}.class-card small{color:#c4af6c;font-size:10px;letter-spacing:.11em;text-transform:uppercase}.class-card p{margin:5px 0;color:#aab5aa;font:13px/1.5 Georgia,serif}.class-card b{margin-top:auto;color:#829886;font-size:10px;font-weight:500}.class-card__sigil{display:block;width:66px;height:66px;border:3px solid currentColor;color:#cfb76d;background:#26362b;box-shadow:0 0 26px #b79e5826}.class-card--bastion .class-card__sigil{border-radius:45% 45% 55% 55%;color:#89aeb4;background:linear-gradient(90deg,#344b52 50%,#263a40 50%)}.class-card--errante .class-card__sigil{clip-path:polygon(100% 50%,18% 0,35% 50%,18% 100%);color:#d2b968;background:#6c5a2c}.class-card--tejedor .class-card__sigil{width:54px;height:54px;margin:6px;transform:rotate(45deg);color:#a68ac4;background:radial-gradient(circle,#9d86ba,#3f3156 62%)}.specialization-selection{position:absolute;z-index:6;inset:0;display:grid;place-items:center;overflow-y:auto;padding:28px;background:radial-gradient(circle at 50% 38%,#273a2bfa,#060b08fc 72%)}.specialization-selection__panel{width:min(760px,100%);text-align:center}.specialization-selection__panel>small{color:#a99b72;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.specialization-selection__panel h1{margin:8px 0;font:600 clamp(30px,5vw,48px)/1 Georgia,serif}.specialization-selection__panel>p{margin:0 auto 24px;max-width:560px;color:#aab5aa;font:15px/1.5 Georgia,serif}.specialization-selection__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.specialization-card{display:grid;justify-items:center;gap:9px;min-height:260px;padding:27px 24px;border:1px solid #526253;color:#eee3c3;background:linear-gradient(155deg,#1d2c20fa,#0a120dfa);cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.specialization-card:hover,.specialization-card:focus-visible{transform:translateY(-4px);border-color:#d0b96f;outline:none;background:linear-gradient(155deg,#2b422f,#111d15)}.specialization-card strong{font:600 25px Georgia,serif}.specialization-card small{color:#c5b16f;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.specialization-card p{margin:5px 0 0;color:#aab5aa;font:13px/1.55 Georgia,serif}.specialization-card__rune{width:54px;height:54px;transform:rotate(45deg);border:2px solid #cbb36e;background:#5469499e;box-shadow:inset 0 0 0 8px #080f0a8c,0 0 24px #cbb36e26}.specialization-card--guardian .specialization-card__rune,.specialization-card--vinculo .specialization-card__rune{border-radius:50%;transform:none;border-color:#8fc9c4}.specialization-card--quebrantador .specialization-card__rune,.specialization-card--catalizador .specialization-card__rune{clip-path:polygon(50% 0,100% 78%,50% 100%,0 78%);border-color:#d28a62}.specialization-card--cazador .specialization-card__rune{clip-path:polygon(100% 50%,15% 0,36% 50%,15% 100%);transform:none}.specialization-card--caminante .specialization-card__rune{border-radius:50%;border-style:dashed;transform:none}.specialization-selection__back{margin-top:18px;padding:9px 14px;border:1px solid #586759;color:#bdc8bd;background:#0d1710d9;cursor:pointer}.specialization-selection__back:hover,.specialization-selection__back:focus-visible{border-color:#bda86f;color:#f2e7c7;outline:none}@media(max-width:700px){.hud--top{padding:18px}.connection{min-width:0}.connection small{display:none}.account-chip{min-width:0}.account-chip small{display:none}.controls{right:18px;bottom:18px}.status{left:18px;bottom:18px}.dialogue-panel{bottom:14px;width:calc(100vw - 28px);max-height:calc(100vh - 28px)}.dialogue-panel__transcript{max-height:min(38vh,190px)}.inventory-panel{width:calc(100vw - 28px);max-height:calc(100vh - 28px);overflow-y:auto}.inventory-grid{grid-template-columns:repeat(2,1fr)}.inventory-quests{grid-template-columns:1fr}.quest-tracker{top:90px;left:18px}.class-selection{overflow-y:auto;place-items:start center}.class-selection__grid{grid-template-columns:1fr}.class-card{min-height:240px}.specialization-selection{place-items:start center;padding:22px 18px}.specialization-selection__grid{grid-template-columns:1fr}.specialization-card{min-height:220px}}
