
:root{--bg:#131817;--panel:#1c2321;--paper:#e7e3d6;--muted:#a5afa5;--line:#35413b;--accent:#d8b67c;--green:#9bbca4;--danger:#e0a097;color-scheme:dark;font-family:Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--accent);color:var(--accent);background:transparent;border-radius:3px;padding:10px 18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:24px;line-height:1.4;font-weight:600}button:hover,.button:hover{background:#d8b67c18}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--green);outline-offset:3px}.primary,.button:not(.secondary){background:var(--accent);color:#17201b}.primary:hover,.button:not(.secondary):hover{background:#e8c892}.secondary{border-color:var(--line);color:var(--paper)}.masthead{height:104px;display:flex;align-items:center;justify-content:space-between;margin:auto;max-width:1440px;padding:20px 48px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:18px;align-items:center;font-weight:700;letter-spacing:3px;font-size:17px}.brand small{display:block;font-size:9px;letter-spacing:3.5px;font-weight:400;color:var(--muted);margin-top:4px}.brand-mark{border:1px solid var(--accent);width:53px;height:57px;color:var(--accent);font-family:Georgia,serif;font-size:26px;line-height:30px;text-align:center;letter-spacing:0}.brand-mark span{display:block;font:10px monospace;letter-spacing:4px}.edition{font-size:10px;letter-spacing:2px;color:var(--muted)}.edition b{margin-left:24px;color:var(--accent)}main{max-width:1440px;margin:0 auto;padding:36px 48px 150px}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;padding:50px 0 80px;align-items:center}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:2.2px;color:var(--accent);text-transform:uppercase;margin:0 0 14px}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.18;margin:0 0 18px}h1{font-size:64px;letter-spacing:-2px}h1 em{font-weight:400;color:var(--accent)}h2{font-size:34px}h3{font-size:25px;margin-top:8px}.lead{color:var(--muted);font-size:17px;max-width:490px;margin:26px 0 32px}.hero-seal{aspect-ratio:1;max-width:350px;border:1px solid #596154;outline:1px solid #35413b;outline-offset:18px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(circle,#6f775926,transparent 67%);transform:rotate(-8deg);justify-self:center;width:100%}.hero-seal strong{font-family:Georgia,serif;font-size:94px;font-weight:400;color:var(--accent);line-height:1.5}.hero-seal span,.hero-seal small{font-size:10px;letter-spacing:4px;color:var(--muted)}section{margin-bottom:34px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin:20px 0}.section-heading span{font-size:12px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px}.card,.choice-card{padding:24px;border:1px solid var(--line);background:#ffffff03;border-radius:4px}.character-card:hover{border-color:var(--accent)}.character-card h3{font-size:30px}.character-card small{color:var(--accent)}.character-card p{color:var(--muted)}.panel{padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:4px;margin-bottom:24px}.panel>p{color:var(--muted)}label{display:flex;flex-direction:column;font-size:13px;gap:7px;margin:14px 0}label small{color:var(--muted);font-size:11px;font-weight:400}input:not([type=checkbox]),select,textarea{width:100%;min-height:44px;padding:10px 12px;background:#131a17;color:var(--paper);border:1px solid #465248;border-radius:3px}textarea{resize:vertical}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.check{display:flex;flex-direction:row;align-items:center;gap:10px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.fields.five{grid-template-columns:repeat(5,minmax(0,1fr))}.race-reference{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.race-reference details{padding:12px;border:1px solid var(--line);font-size:12px}.race-reference summary{font-size:12px}.form-note{display:block;margin-top:18px;color:var(--muted);font-size:12px}details{margin:15px 0}summary{cursor:pointer;font-weight:600;list-style-position:outside;margin-left:15px;padding:8px 0;font-size:16px}details[open]>summary{margin-bottom:16px}.alert{border:1px solid #8b5952;background:#4b2926;color:#f4d4cd;padding:20px;border-radius:4px;margin-bottom:22px}.character-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:42px}.sidebar{padding:6px 24px 0 0;border-right:1px solid var(--line)}.sidebar h1{font-size:38px;overflow-wrap:anywhere;letter-spacing:-.5px}.back{font-size:12px;color:var(--muted);display:block;margin-bottom:35px}.sidebar>p{color:var(--muted)}.step{display:flex;gap:16px;padding:13px 0;font-size:13px;color:var(--muted)}.step span{font:11px monospace;line-height:22px;color:#697c6d}.step.active{color:var(--accent)}.step.active span{color:var(--accent)}.sidebar-note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding:22px 0;margin-top:20px}.sidebar .button,.sidebar button{font-size:12px;width:100%;margin-bottom:12px}.journey{min-width:0}.metrics{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);margin:20px 0 26px;background:linear-gradient(110deg,#2a3328,#19211c)}.metrics>div{padding:18px 12px;border-right:1px solid var(--line)}.metrics>div:last-child{border:0}.metrics strong{display:block;font:34px Georgia,serif;color:var(--accent)}.metrics span{display:block;font-size:8px;letter-spacing:1.3px;color:var(--muted);margin-top:8px}.saved{white-space:nowrap}.die{display:inline-block;padding:7px 18px;border:1px solid var(--accent);font:35px Georgia,serif;color:var(--accent);margin:0 0 15px}.die.small{font-size:24px;margin-left:7px}.choice-card p{font-size:14px;color:#c3cbbf}.choice-card small{display:block;color:var(--muted);margin:20px 0}.choice-card button{width:100%}.test-result{text-align:center;padding:40px}.roll-result{font:100px Georgia,serif;color:var(--accent);line-height:1.3}.actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin:20px 0}.actions form{flex:1;min-width:180px}.primary-attributes{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:24px 0}.primary-attributes>div{text-align:center;padding:15px 4px;background:#131a17;border-top:2px solid var(--accent)}.primary-attributes span{font:12px monospace;color:var(--muted)}.primary-attributes strong{display:block;font:34px Georgia,serif}.primary-attributes small{font-size:10px;color:var(--muted)}.attribute{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.attribute small{color:var(--muted)}.derived-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}.derived-grid>div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:8px 0;font-size:11px}.derived-grid span{color:var(--muted)}.muted{color:var(--muted);font-size:12px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:var(--accent);font-size:10px;letter-spacing:1px;font-weight:500}th,td{padding:11px 9px;border-bottom:1px solid var(--line)}td small{display:block;color:var(--muted);font-size:10px}tbody tr:hover{background:#ffffff03}.effect-card{border-top:1px solid var(--line);padding:24px 0 10px}.effect-card p,.effect-card li{font-size:13px}.effect-card ul{color:var(--green)}.resolution{border-left:2px solid var(--green);padding-left:14px;color:var(--green)}.history{padding-left:20px;font-size:12px;line-height:2}.warning-list{font-size:13px;color:var(--danger)}.musicbar{position:fixed;bottom:0;width:100%;padding:15px 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;background:#151d19f5;backdrop-filter:blur(12px);z-index:5}.musicbar .eyebrow{font-size:8px;margin-bottom:4px}.musicbar span:not(.eyebrow){display:block;font-size:13px}.musicbar small{display:block;font-size:10px;color:var(--muted)}.musicbar audio{width:260px;height:34px}.file-button{display:block;padding:8px 15px;border:1px solid var(--line);cursor:pointer;font-size:11px;white-space:nowrap}code{overflow-wrap:anywhere}button:disabled{opacity:.45;cursor:wait}@media(max-width:1050px){.masthead{padding:20px 25px}main{padding:25px 25px 160px}.character-layout{grid-template-columns:190px minmax(0,1fr);gap:24px}.sidebar{padding-right:15px}.panel{padding:22px}.race-reference{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.derived-grid{grid-template-columns:repeat(3,1fr)}.hero h1{font-size:54px}.hero-seal{max-width:260px}.hero-seal strong{font-size:75px}}@media(max-width:720px){.masthead{height:80px;padding:15px 18px}.brand{font-size:12px;letter-spacing:2px;gap:12px}.brand small{font-size:8px}.brand-mark{width:43px;height:48px;font-size:22px;line-height:25px}.edition{display:none}main{padding:20px 16px 180px}.hero{grid-template-columns:1fr;padding:20px 0 30px;gap:35px}.hero h1{font-size:48px}.hero-seal{display:none}.character-layout{display:block}.sidebar{border-right:0;padding:0}.sidebar nav{display:flex;overflow-x:auto;gap:18px;margin:20px 0}.step{white-space:nowrap;gap:6px}.sidebar h1{font-size:36px}.sidebar .back{margin-bottom:20px}.sidebar-note{display:none}.sidebar .button,.sidebar button{width:auto;display:inline-flex;margin-right:8px}.section-heading{align-items:flex-start;flex-direction:column;gap:0}.metrics{grid-template-columns:repeat(5,1fr)}.metrics strong{font-size:27px}.metrics>div{padding:14px 7px}.metrics span{font-size:7px;letter-spacing:0}.panel{padding:19px}.fields{grid-template-columns:1fr}.fields.five{grid-template-columns:repeat(5,1fr);gap:7px}.cards{grid-template-columns:1fr}.musicbar{padding:9px 16px;gap:8px;flex-wrap:wrap}.musicbar>div{width:100%}.musicbar audio{flex:1;max-width:240px}.file-button{margin:0;padding:7px}.primary-attributes{gap:7px}.derived-grid{grid-template-columns:repeat(2,1fr)}h2{font-size:29px}.race-reference{grid-template-columns:1fr 1fr}.choice-card{padding:18px}}@media print{body{background:white;color:black;font-size:10pt}.masthead{height:auto;border-color:#aaa;padding:10px 0}.brand,.brand-mark,.brand small{color:black;border-color:black}main{padding:0}.sidebar,.musicbar,.journey>.section-heading .saved,.journey>section:not(.sheet-section),form button,form input,form select,.effect-card form,details:not(.sheet-section),.back{display:none!important}.character-layout{display:block}.panel{background:white;color:black;border-color:#ccc;padding:12px;margin:10px 0;break-inside:auto}.panel p,.muted,.eyebrow,td small,.derived-grid span{color:#444}h1,h2,h3{color:black}h3{font-size:15pt}.metrics,.metrics>div,.attribute,th,td{border-color:#ccc}.metrics{background:white}.metrics strong,th,.primary-attributes strong{color:black}.primary-attributes>div{background:white;border-color:#444}.derived-grid{grid-template-columns:repeat(4,1fr)}.table-scroll{overflow:visible}table{font-size:9pt}tr{break-inside:avoid}thead{display:table-header-group}.effect-card{break-inside:avoid}.sheet-section textarea{display:block;background:white;color:black;border:0;height:auto;min-height:60px;padding:0;overflow:visible}summary{list-style:none}.history{font-size:9pt}}

.print-only{display:none}@media print{.print-only{display:block}form{display:none!important}.journey>.print-only{margin:18px 0}.journey>.print-only h1{font-size:24pt}}
.attribute-budget-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:18px}.attribute-budget-heading h3{margin:0}.attribute-budget-heading p{margin:5px 0 0;color:var(--muted);font-size:12px}.attribute-budget-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.attribute-budget-heading strong{padding:5px 9px;border:1px solid var(--green);color:#c9e7cd;font-size:12px}.attribute-budget-heading strong.invalid{border-color:var(--danger);color:#f0b2aa}.randomize-attributes{padding:7px 11px;font-size:12px}.setup-next:disabled{cursor:not-allowed}.attribute-columns{margin:16px 0 22px}.attribute-column{display:grid;grid-template-rows:auto auto auto minmax(30px,auto) auto auto;gap:7px;align-items:center;margin:0;padding:13px 10px;text-align:center;border:1px solid #50634f;background:linear-gradient(#102018,#08140f);box-shadow:inset 0 2px #a9925a55}.attribute-code{font:22px Georgia,serif;color:#ead298}.attribute-column span{display:block}.attribute-column small{display:block;color:#95a79a;font-size:9px;letter-spacing:.04em}.attribute-racial b{font:25px Georgia,serif;color:#dce9d9}.attribute-allocation input{min-height:36px;margin-top:3px;padding:4px;text-align:center;font-size:18px}.attribute-adjustment{align-self:center;line-height:1.35;color:#b8c8b8!important}.attribute-total{padding-top:6px;border-top:1px solid #6c795855}.attribute-total b{display:block;font:30px Georgia,serif;color:#f2d17f}.attribute-cap{color:#d0bd8c!important}

/* One decision at a time. The full sheet remains available on demand. */
.character-layout{display:block;max-width:1060px;margin:0 auto}.character-layout .sidebar{position:relative;top:auto;width:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0;border:0;border-bottom:1px solid var(--line);margin-bottom:25px}.sidebar strong,.sidebar span{display:block}.sidebar .back{margin:0}.progress-menu{position:relative}.progress-menu nav{position:absolute;z-index:5;right:0;min-width:220px;padding:18px;background:#16211f;box-shadow:0 8px 35px #0008}.decision-resources{display:flex;gap:24px;font-size:13px;color:#b2bcb5;margin:0 0 20px}.journey>.panel{padding:28px 32px;min-height:250px}.journey .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-card:has(input:checked){border-color:#d6ad71;background:#24382e;box-shadow:0 0 0 1px #d6ad71}.choice-card input[type=radio]{width:18px;height:18px;accent-color:#d6ad71}.sheet-drawer{margin:28px 0 0;border-top:1px solid #3b4941;padding-top:20px}.sheet-drawer>summary{color:#bbc4bc;padding:8px 0}.sheet-drawer[open]>summary{margin-bottom:20px}.selection-help{padding:13px 16px;border-left:3px solid #bc9666;background:#14211c;margin:10px 0 18px;font-size:14px;line-height:1.65;color:#cbd3cb}.selection-help:empty{display:none}.advanced-review{margin-top:25px}.musicbar{gap:14px}.musicbar audio{width:230px}.musicbar #music-toggle{white-space:nowrap;font-size:12px;padding:10px}.race-reference details{margin:10px 0}.vocation-cards label{cursor:pointer;font-weight:normal}.vocation-cards h3{margin:8px 0}.decision-resources span{white-space:nowrap}[hidden]{display:none!important}
@media(max-width:700px){.character-layout .sidebar{gap:12px;flex-wrap:wrap}.journey .cards{grid-template-columns:1fr}.journey>.panel{padding:22px 18px}.decision-resources{gap:10px;flex-wrap:wrap}.musicbar audio{width:180px}.musicbar{position:static}.progress-menu nav{right:0}.section-heading h2{font-size:30px}}

.character-card-link{display:block}
.delete-character{margin:13px 0 0;border-top:1px solid var(--line)}
.delete-character summary{margin:0;padding:8px 0 0;font-size:11px;color:var(--muted)}
.delete-character[open]>summary{margin-bottom:6px}
.delete-character p{font-size:11px;margin:4px 0 9px}
.danger-button{padding:6px 10px;border-color:#a75f57;color:#efaaa1;font-size:11px}
@media print{.character-layout .sidebar,.decision-resources,.sheet-drawer>summary{display:none}.sheet-drawer{border:0}}

.rulebook-status{margin:50px 0 38px;padding:30px;border:1px solid var(--line);background:linear-gradient(135deg,#1b2420,#151b19)}
.rulebook-status>.section-heading{margin:0 0 24px}
.rulebook-status .section-heading h2{margin:0}
.rulebook-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.rulebook-card{padding:24px;border:1px solid #465249;background:#101715}
.rulebook-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rulebook-card-heading .eyebrow{margin-bottom:6px}
.rulebook-card h3{margin:0;font-size:29px}
.status-pill,.edition-pending{border:1px solid #748c78;border-radius:99px;padding:4px 10px;color:#bfd1bb;font-size:11px;white-space:nowrap}
.rulebook-version{color:var(--muted);font-size:12px;margin:14px 0}
.edition-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.edition-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}
.edition-list b,.edition-list small{display:block}.edition-list b{font-size:13px}.edition-list small{font-size:11px;color:var(--muted);margin-top:2px}
.edition-list a,.rulebook-manifest-link a{color:var(--accent);font-size:12px;white-space:nowrap}.edition-pending{color:#e3c28a;border-color:#997a47}
.rulebook-note{font-size:11px;line-height:1.55;color:#b9c1b9;margin:14px 0 0}
.product-pending{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.product-pending summary{cursor:pointer;color:var(--accent);font-size:13px}
.pending-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px 20px;margin-top:14px}
.pending-grid p{font-size:11px;color:var(--muted);margin:0 0 8px}.pending-grid b{color:var(--paper);font-size:12px}
.rulebook-manifest-link{margin:15px 0 0;font-size:11px}
@media(max-width:760px){.rulebook-status{padding:20px 16px;margin:35px 0}.rulebook-grid{grid-template-columns:1fr}.rulebook-status>.section-heading{display:block}.rulebook-status>.section-heading>span{display:block;margin-top:4px}.rulebook-card{padding:18px}.edition-list li{align-items:flex-start}}

body:has(.character-layout) .masthead{height:74px;padding-top:10px;padding-bottom:10px}main:has(.character-layout){padding-top:16px}.character-layout .sidebar{padding:6px 0;margin-bottom:12px}.journey>.section-heading{margin:8px 0}.journey>.section-heading h2{margin-bottom:10px;font-size:30px}.decision-resources{margin-bottom:10px}.journey>.panel{padding:22px 26px}.current-decision h3{font-size:23px}.current-decision .eyebrow{margin-bottom:8px}.current-decision p{margin:10px 0}.race-reference{display:block}.race-reference details{max-width:none}.vocation-cards input[type=radio]{min-height:18px;padding:0;align-self:flex-start}

.embedded .masthead{display:none}.embedded main{padding:16px 20px 110px}.embedded .hero{padding:10px 0 25px}.embedded .hero-seal{display:none}.embedded .hero{grid-template-columns:1fr}.embedded .hero h1{font-size:38px}.embedded .musicbar{padding:8px 18px}.embedded .hero .lead{margin:12px 0}.embedded .sidebar{margin-top:0}

.journey form.choice-card{position:relative;display:flex;flex-direction:column;padding:18px}.journey form.choice-card .die{position:absolute;right:16px;top:16px;margin:0;padding:5px;min-width:40px;width:40px;height:40px;font-size:22px;line-height:28px}.journey form.choice-card h3{font-size:22px;padding-right:44px;margin:5px 0 12px}.journey form.choice-card p{font-size:14px;line-height:1.55;margin:8px 0 14px}.journey form.choice-card button{margin-top:auto}.journey form.choice-card small{margin-bottom:12px}.journey form.choice-card .eyebrow{margin-bottom:10px}

.journey .vocation-cards,.journey .path-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vocation-cards label.choice-card{position:relative;padding:13px;margin:0;gap:2px}.vocation-cards label h3{font-size:20px;margin:0 0 5px;padding-left:24px}.vocation-cards label input[type=radio]{position:absolute;top:18px;left:12px}.vocation-cards label strong{font-size:13px}.vocation-cards label p{font-size:12px;line-height:1.5;margin:5px 0}.journey .path-cards form.choice-card{padding:14px}.journey .path-cards h3{padding:0}.journey .path-cards p{font-size:12px;margin:6px 0}.journey .path-cards summary{font-size:12px}.journey .path-cards details{margin:6px 0}.journey .path-cards .eyebrow{font-size:9px}.journey .path-cards button{font-size:12px;padding:8px}.journey>.panel>h3{font-size:23px}
@media(max-width:800px){.journey .vocation-cards,.journey .path-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.journey .path-cards{grid-template-columns:1fr}.journey .vocation-cards{grid-template-columns:1fr}.vocation-cards label.choice-card{padding:12px 12px 12px 38px}.vocation-cards label h3{padding-left:0}.vocation-cards label input[type=radio]{top:17px}.vocation-cards label strong,.vocation-cards label p{display:block}}

/* Compact attribute graph inspired by classic character builders. */
.attribute-columns{position:relative;align-items:end;gap:0;margin:16px 0 8px;padding:16px 12px 10px;border:1px solid #50634f;background:linear-gradient(180deg,#07120eeb,#0d2118);box-shadow:inset 0 2px #a9925a55}
.attribute-column{display:grid;grid-template-rows:48px 128px auto auto auto minmax(28px,auto) auto;justify-items:center;gap:5px;min-width:0;margin:0;padding:0 12px;text-align:center;border:0;border-right:1px solid #53624e55;background:none;box-shadow:none}
.attribute-column:last-child{border-right:0}.attribute-total{align-self:end;padding:0;border:0}.attribute-total small{font-size:8px}.attribute-total b{font:30px Georgia,serif;color:#f2d17f;line-height:1}
.attribute-meter{position:relative;display:block;width:min(58px,72%);height:128px;border-bottom:2px solid #d0bd8c;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#8190782c calc(25% - 1px),#8190782c 25%)}
.attribute-meter i{position:absolute;bottom:0;display:block;max-height:100%;transition:height .18s ease-out}.attribute-meter-cap{left:4%;right:4%;height:var(--attribute-cap,0);border:1px solid #baa96b88;border-bottom:0;background:linear-gradient(180deg,#ccb86b18,#7d77552e);box-shadow:inset 0 0 14px #ccb86b17}.attribute-meter-cap em{position:absolute;top:-13px;left:50%;transform:translateX(-50%);width:max-content;color:#cdbb77;font:normal 7px Segoe UI,Arial,sans-serif;letter-spacing:.06em}.attribute-meter-result{left:17%;right:17%;height:var(--attribute-result,0);background:#d39f35;box-shadow:0 0 10px #d39f3544}.attribute-meter-base{left:17%;right:17%;height:var(--attribute-base,0);background:#4fc878}
.attribute-code{font:22px Georgia,serif;color:#ead298}.attribute-racial{display:flex!important;align-items:baseline;gap:5px;color:#aebcaf}.attribute-racial b{font:18px Georgia,serif;color:#dce9d9}.attribute-column small{font-size:8px}.attribute-allocation{width:min(86px,100%)}.attribute-allocation input{min-height:32px;margin-top:2px;padding:2px 4px;font-size:17px}.attribute-adjustment{line-height:1.2}.attribute-cap{color:#d0bd8c!important}.attribute-legend{display:flex;justify-content:center;gap:20px;margin:0 0 22px;color:#aebcaf;font-size:10px}.attribute-legend span{display:flex;align-items:center;gap:6px}.attribute-legend i{display:inline-block;width:9px;height:9px}.cap-swatch{border:1px solid #baa96b;background:#8e875133}.racial-swatch{background:#4fc878}.added-swatch{background:#d39f35}
.chosen-race{display:flex;align-items:baseline;gap:12px;padding:10px 14px;margin:4px 0 12px;border-left:3px solid #d59a4b;background:#321e0d55}.chosen-race span{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:#d9b477}.chosen-race strong{font:27px Georgia,serif;color:#eea34e}.racial-cap-controls{margin:10px 0 16px;padding:10px 14px;border:1px solid #a9945a88;background:#1e291b}.racial-cap-controls:not(:has(label:not([hidden]))){display:none}.racial-cap-controls:has(label:not([hidden])):before{content:"Potencial racial · elige dónde aumenta el CAP";grid-column:1/-1;color:#e0c886;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.racial-cap-controls label{margin:4px 0}.racial-cap-controls label[hidden]{display:none!important}
.cap-explanation{margin:8px 0 4px;color:#b8c3b9;font-size:11px}.cap-explanation strong{color:#d7c27d}
@media(max-width:560px){.chosen-race{justify-content:space-between}.chosen-race strong{font-size:22px}.racial-cap-controls{grid-template-columns:1fr 1fr}.racial-cap-controls label{font-size:10px}.racial-cap-controls select{min-height:38px;padding:6px}.attribute-legend{gap:10px;flex-wrap:wrap}.attribute-meter-cap{left:0;right:0}}

.edition{text-align:right}.build-version{display:block;margin-top:4px;font-size:8px;letter-spacing:1.3px;color:#75847a;text-transform:uppercase}
@media(max-width:720px){.edition{display:block;font-size:0}.edition b{display:none}.edition .build-version{font-size:8px;margin:0}}
.race-reference small{display:block}.race-reference small+small{margin-top:4px;color:var(--green)}

/* Race selector: compact dossier + illustrated catalogue, without growing the setup card. */
.setup-page:first-of-type>.fields{grid-template-columns:1.1fr 1fr .72fr}.race-showcase{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.6fr);height:258px;min-height:258px;margin:12px 0 0;border:1px solid #48604f;background:linear-gradient(105deg,#0b1913,#06110d);overflow:hidden}.race-showcase-copy{min-width:0;padding:16px 18px;border-right:1px solid #48604f}.race-showcase-copy article{height:100%;display:flex;flex-direction:column}.race-showcase-copy header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.race-showcase-copy h3{margin:0;font-size:27px}.race-showcase-copy header p{margin:8px 0 0;color:#ccb982;font-size:11px;white-space:nowrap}.race-showcase-copy .eyebrow{margin:0 0 3px;font-size:8px}.racial-stat-chart{position:relative;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;height:92px;margin:8px 0 7px;padding:4px 5px 17px;border-bottom:1px solid #70806c55}.racial-average{position:absolute;z-index:1;left:0;right:0;bottom:53px;border-top:1px solid #d5c58d88}.racial-average span{position:absolute;right:2px;top:-13px;color:#aeb7aa;font:7px Segoe UI,Arial,sans-serif;letter-spacing:.08em}.racial-stat{position:relative;z-index:2;display:grid;grid-template-rows:14px 1fr 14px;justify-items:center;align-self:stretch}.racial-stat b{font:15px Georgia,serif}.racial-stat span{align-self:end;width:21px;height:calc(var(--race-stat) * 9px);max-height:63px;background:#a59562;box-shadow:0 0 8px #a5956233}.racial-stat small{font-size:8px;color:#bdc5bc}.racial-stat.is-strong b{color:#83d79c}.racial-stat.is-strong span{background:#4abf72}.racial-stat.is-weak b{color:#ef9a91}.racial-stat.is-weak span{background:#c65b52}.racial-traits{display:grid;grid-template-columns:105px 1fr;gap:9px;margin:2px 0 5px;font-size:10px;line-height:1.35}.racial-traits strong{color:#d8c37d}.racial-traits span{color:#c6cec5}.racial-fineprint{margin-top:auto;color:#91a096;font-size:8px;line-height:1.35}.racial-fineprint span+span{margin-top:2px;color:#7fc99c}.race-lineup{position:relative;min-width:0;height:100%;margin:0;overflow:hidden;background:repeating-linear-gradient(to top,#aeb9ae22 0,#aeb9ae22 1px,transparent 1px,transparent 10%),linear-gradient(to top,#91a49322 0,#91a49322 2px,transparent 2px,transparent 50%),radial-gradient(ellipse at center bottom,#315b3a55,transparent 67%)}.race-lineup:before{content:"ALTURA";position:absolute;z-index:0;right:7px;top:7px;color:#91a096;font:7px Segoe UI,Arial,sans-serif;letter-spacing:.16em}.race-lineup img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom}.race-lineup-muted{filter:grayscale(1) contrast(.92) brightness(.78);opacity:.7}.race-lineup-selected{filter:saturate(1.16) contrast(1.08) brightness(1.04) drop-shadow(0 0 8px #5bcf8b55);transition:clip-path .2s ease}.race-lineup figcaption{position:absolute;z-index:2;right:11px;bottom:7px;padding:2px 6px;background:#07110dcc;color:#aab7aa;font-size:8px;letter-spacing:.05em;text-transform:uppercase}.race-showcase [hidden]{display:none!important}
@media(max-width:820px){.setup-page:first-of-type>.fields{grid-template-columns:1fr 1fr}.race-showcase{grid-template-columns:1fr;height:430px}.race-showcase-copy{height:230px;border-right:0;border-bottom:1px solid #48604f}.race-lineup{height:198px}}
@media(max-width:560px){.setup-page:first-of-type>.fields{grid-template-columns:1fr}.race-showcase{height:455px}.race-showcase-copy{height:270px;padding:12px}.race-lineup{height:183px}.racial-traits{grid-template-columns:1fr;gap:2px}}

/* Ficha antropometrica: la ilustracion aprobada permanece intacta; el tratamiento
   policial se aplica en la interfaz y la raza elegida recupera todo el color. */
.race-lineup{
  isolation:isolate;
  background:
    linear-gradient(to right,transparent 0,transparent 42px,#29332d26 42px,#29332d26 43px,transparent 43px),
    repeating-linear-gradient(to top,#26342d2e 0,#26342d2e 1px,transparent 1px,transparent 21px),
    repeating-linear-gradient(to top,transparent 0,transparent 83px,#1e2b244f 83px,#1e2b244f 85px),
    linear-gradient(105deg,#d6d7cf,#bfc4bc 58%,#aeb6ad);
  box-shadow:inset 0 0 42px #26382d30;
}
.race-lineup:before{display:none}
.race-lineup:after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,#fff5,transparent 28%,transparent 72%,#15231a18);pointer-events:none}
.race-lineup img{z-index:2}
.race-lineup-muted{filter:grayscale(1) contrast(1.28) brightness(.82);opacity:.32;mix-blend-mode:multiply}
.race-lineup-selected{z-index:3;filter:saturate(1.13) contrast(1.07) brightness(1.02) drop-shadow(0 2px 5px #13211988);mix-blend-mode:normal}
.race-height-scale{position:absolute;z-index:4;left:7px;top:12px;bottom:12px;width:34px;color:#26342dc7;font:7px Segoe UI,Arial,sans-serif;pointer-events:none}
.race-height-scale span{position:absolute;left:0;padding-right:4px;background:#d2d5cdbd}
.race-height-scale span:nth-child(1){top:17%}.race-height-scale span:nth-child(2){top:58.5%}.race-height-scale span:nth-child(3){bottom:0}
.racial-stat-chart{height:76px;margin:6px 0 5px;padding-bottom:14px}.racial-average{bottom:43px}.racial-stat{grid-template-rows:13px 1fr 12px}.racial-stat span{height:calc(var(--race-stat) * 7px);max-height:49px}
.race-showcase{grid-template-columns:minmax(380px,1.05fr) minmax(0,1.55fr)}.racial-traits{margin-bottom:4px}.racial-traits>div{min-width:0}.racial-traits ul{max-height:58px;margin:3px 0 0;padding:0 3px 0 13px;overflow:auto;color:#d0d8d1;font-size:9.5px;line-height:1.3;scrollbar-width:thin}.racial-traits li+li{margin-top:3px}.racial-traits li b{color:#e1c97d}.racial-fineprint{display:grid;gap:2px;margin-top:auto;padding-top:4px;border-top:1px solid #52635455;font-size:9px}.racial-fineprint span,.racial-fineprint span+span{display:block;margin:0;color:#b9c5bb}.racial-fineprint b{color:#d8c37d}
.race-showcase[data-race-edition="lf100"] .race-lineup{background:repeating-linear-gradient(to top,#26342d2e 0,#26342d2e 1px,transparent 1px,transparent 8.3%),repeating-linear-gradient(to top,transparent 0,transparent calc(41.5% - 2px),#1e2b244f calc(41.5% - 2px),#1e2b244f 41.5%),linear-gradient(105deg,#d6d7cf,#bfc4bc 58%,#aeb6ad)}
.race-showcase[data-race-edition="classic"] .race-lineup-selected{filter:saturate(1.2) contrast(1.08) brightness(1.05) drop-shadow(0 0 10px #d1a94f99);transition:none}
@media(max-width:820px){.race-showcase{grid-template-columns:1fr}}

/* Keep the fixed dossier height honest: long racial notes scroll inside their
   own reading area instead of stretching and being clipped by the panel. */
.race-showcase{gap:0}
.race-showcase-copy{min-height:0;overflow:hidden}
.race-showcase-copy article{min-height:0;overflow:hidden}
.race-showcase-copy header,.racial-stat-chart,.racial-fineprint{flex:0 0 auto}
.racial-traits{flex:1 1 auto;min-height:0}
.racial-traits>div{min-height:0;overflow:auto;scrollbar-width:thin}
.racial-traits ul{max-height:none;overflow:visible}
.race-lineup{min-height:0}

/* Keep racial rules legible without enlarging the fixed showcase. */
.race-showcase-copy{padding:10px 14px}
.race-showcase-copy .eyebrow{margin-bottom:0}
.race-showcase-copy h3{font-size:24px;line-height:1.1}
.race-showcase-copy header p{margin-top:5px}
.racial-stat-chart{height:68px;margin:3px 0 2px;padding-bottom:12px}
.racial-average{bottom:38px}
.racial-stat{grid-template-rows:12px 1fr 11px}
.racial-stat span{height:calc(var(--race-stat) * 6px);max-height:42px}
.racial-traits{font-size:11px;line-height:1.4}
.racial-traits ul{font-size:11px;line-height:1.4}
.racial-fineprint{font-size:10px;line-height:1.25}

/* The LF100 meter uses the displayed artwork's scale, recalculated on resize. */
.race-showcase[data-race-edition="lf100"] .race-lineup{background:repeating-linear-gradient(to top,#26342d2e 0,#26342d2e 1px,transparent 1px,transparent 16px),linear-gradient(105deg,#d6d7cf,#bfc4bc 58%,#aeb6ad)}
.race-meter-lines{position:absolute;z-index:1;inset:0;pointer-events:none}
.race-meter-lines span{position:absolute;left:0;right:0;border-top:1px solid #354c3ca8}
.race-meter-lines span:nth-child(1){top:var(--race-line-2m,17%)}
.race-meter-lines span:nth-child(2){top:var(--race-line-1m,58.5%)}
.race-meter-lines span:nth-child(3){top:var(--race-line-zero,94%)}
.race-height-scale{top:0;bottom:0}
.race-height-scale span:nth-child(1){top:var(--race-line-2m,17%)}
.race-height-scale span:nth-child(2){top:var(--race-line-1m,58.5%)}
.race-height-scale span:nth-child(3){top:var(--race-line-zero,94%);bottom:auto}

/* Switching races changes the precise cutout at once; interpolating between
   distant silhouettes briefly colours unrelated figures. */
.race-lineup-selected{transition:none}

.language-links{display:flex;gap:.5rem;align-items:center;font-size:.8rem}.language-links a{padding:.3rem .5rem;border:1px solid currentColor;border-radius:3px;text-decoration:none}.language-links a[aria-current]{color:#f2d68b;font-weight:bold}
