:root{--bg:#0d0b07;--bg2:#13100a;--bg3:#1a1510;--surface:#1f1a12;--surface2:#261f15;--border:#3a2e1e;--border2:#4a3c28;--gold:#c9a84c;--gold2:#e8c96a;--text:#e8dcc8;--text2:#b8a888;--text3:#7a6a50;--red:#8b2020;--green:#2a5c2a}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:Georgia,serif;font-size:16px}.app{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:24px 28px}.coming-soon{text-align:center;padding:80px 20px}.coming-soon h2{color:var(--gold2);margin-bottom:16px;font-size:1.8rem}.coming-soon p{color:var(--text3);font-size:1rem}h1,h2,h3{color:var(--gold2)}button{cursor:pointer}input,select,textarea{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:8px 12px;font-family:Georgia,serif;font-size:.9rem}input:focus,select:focus,textarea:focus{border-color:var(--gold);outline:none}select option{background:var(--surface)}.skills-pts-label{letter-spacing:.15em;color:var(--text3);text-transform:uppercase;margin-bottom:2px;font-family:Georgia,serif;font-size:.55rem}.skills-pts-value{font-family:Georgia,serif;font-size:1.1rem;font-weight:600}.skills-tabs-row{gap:6px;display:flex}.skills-subtabs-row{gap:4px;display:flex}.subtab-label-mobile{display:none}.subtab-label-desktop{display:inline}.skills-tabs-wrap{align-items:center;gap:8px;display:flex}.skills-save-desktop{margin-left:auto}.skills-save-mobile{display:none}.skills-search-wrap{align-items:center;gap:8px;display:flex}.skills-search-input{flex:1}.skills-filter-row{gap:8px;display:flex}.mcl-chip{display:inline-block}@media (width<=600px){.app-main{padding:12px 6px}.header-desktop{display:none!important}.header-mobile{display:flex!important}.skills-tabs-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.skills-tab-btn{white-space:nowrap;text-align:center;width:100%}.subtab-label-mobile{display:inline}.subtab-label-desktop{display:none}.skills-pts-label{letter-spacing:.1em;font-size:.48rem}.skills-pts-value{font-size:.95rem}.skills-tabs-wrap{display:block}.skills-save-desktop{display:none}.skills-search-wrap{flex-direction:column;align-items:stretch}.skills-search-input{width:100%}.skills-filter-row{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.skills-save-mobile{width:100%;display:block}.mcl-chip{display:none}}.handbook{background:#000;min-height:100vh;padding:32px 24px}.handbook-back{color:#aaa;cursor:pointer;background:0 0;border:1px solid #444;border-radius:4px;margin-bottom:28px;padding:6px 14px;font-family:Georgia,serif;font-size:.82rem;display:inline-block}.handbook-back:hover{color:#fff;border-color:#888}.handbook-content{color:#f0f0f0;max-width:960px;margin:0 auto;font-family:Georgia,serif;font-size:.92rem;line-height:1.75}.handbook-content h1{color:#e1e4d0;letter-spacing:.04em;text-align:center;border-bottom:2px solid #333;margin:48px 0 20px;padding-bottom:20px;font-size:2.5rem}.handbook-content h1:first-child{margin-top:0}.handbook-content h2{color:#e8c96a;letter-spacing:.03em;margin:0 0 12px;padding-bottom:5px;font-size:1.1rem}.handbook-content h3{color:#ccc;margin:24px 0 8px;font-size:.95rem}.handbook-content p{color:#e1e4d0;margin-bottom:12px}.race-section{align-items:start;gap:32px;margin:40px 0;display:grid}.race-section--img-right{grid-template-columns:1fr auto}.race-section--img-left{grid-template-columns:auto 1fr}.race-section__image{width:280px}.race-image{width:100%;height:auto;display:block}.race-section__text{min-width:0}.race-stat-block{background:#111;border-left:3px solid #555;border-radius:0 4px 4px 0;margin:12px 0 0;padding:12px 14px}.race-stat-block p{color:#bbb;margin-bottom:5px;font-size:.88rem;line-height:1.6}.race-stat-block p:last-child{margin-bottom:0}.race-stat-block strong{color:#e8c96a}.race-special-rules{font-style:italic;color:#999!important}.rule-link{color:#e8c96a;text-underline-offset:3px;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.rule-link:hover{color:#fff}.rule-link-missing{color:#c44;cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.rule-modal-overlay{z-index:1000;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.rule-modal{background:#111;border:1px solid #444;border-radius:8px;width:90%;max-width:480px;padding:24px 28px}.rule-modal-header{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.rule-modal-header h3{color:#e8c96a;letter-spacing:.03em;border:none;margin:0;padding:0;font-size:1rem}.rule-modal-close{color:#666;cursor:pointer;background:0 0;border:none;padding:0 0 0 16px;font-size:1rem;line-height:1}.rule-modal-close:hover{color:#fff}.rule-modal-body{color:#e0e0e0;margin:0;font-size:.9rem;line-height:1.7}@media (width<=600px){.race-section--img-right,.race-section--img-left{grid-template-columns:1fr}.race-section--img-right .race-section__image,.race-section--img-left .race-section__image{order:-1;width:100%}.race-section__image{width:100%}}.skill-table-wrap{margin:20px 0 32px;overflow-x:auto}.skill-table{border-collapse:collapse;table-layout:fixed;width:100%;font-family:Georgia,serif}.skill-table th{color:#e8c96a;text-align:center;text-transform:uppercase;white-space:normal;vertical-align:bottom;background:#1a1a1a;border-bottom:2px solid #444;padding:4px;font-size:.65rem;font-weight:400;line-height:1.2}.skill-table td{color:#e0e0e0;vertical-align:top;border-bottom:1px solid #1a1a1a;padding:4px 6px;font-size:.82rem;overflow:hidden}.handbook-content .hb-gap{height:1.2em}.handbook-content .hb-pov,.handbook-content .hb-pov p{color:#4f6af3;font-style:italic}.handbook-content .hb-pov{margin-left:2em;margin-right:3em}.handbook-content .hb-pov p{text-indent:1.5em}.handbook-content .hb-play,.handbook-content .hb-play p{color:#774cec}.handbook-content .hb-play{margin-left:6em}.handbook-content .hb-play p{text-indent:0;margin:.12em 0}.handbook-content .hb-img{border-radius:6px;max-width:100%}.handbook-content .hb-img--center{margin:16px auto;display:block}.handbook-content .hb-img--left{float:left;max-width:45%;margin:6px 16px 12px 0}.handbook-content .hb-img--right{float:right;max-width:45%;margin:6px 0 12px 16px}.handbook-content .hb-cols{align-items:flex-start;gap:32px;display:flex}.handbook-content .hb-col{flex:1;min-width:0}@media (width<=768px){.handbook-content .hb-cols{flex-direction:column;gap:0}}.handbook-content .attr-table{border-collapse:collapse;width:100%;margin:12px 0 20px;font-family:Georgia,serif;font-size:.9rem}.handbook-content .attr-table th,.handbook-content .attr-table td{border:1px solid var(--border,#333);text-align:center;padding:6px 10px}.handbook-content .attr-table th{color:var(--gold,#c9a84c);font-weight:600}.skill-table .row-even td{background:#0a0a0a}.skill-table .row-odd td{background:#111}.skill-table tr:hover td{background:#1a1a1a}.skill-table th:first-child{text-align:left;width:9%}.skill-table th:nth-child(2){text-align:left;width:11%}.skill-table th:nth-child(3){text-align:left;width:auto}.skill-table th:nth-child(4){width:5%}.skill-table th:nth-child(5),.skill-table th:nth-child(6){width:4%}.skill-table th:nth-child(7){width:5%}.skill-table .col-prereq{color:#aaa}.skill-table .col-name{color:#fff;font-style:italic}.skill-table .col-description{line-height:1.45}.skill-table .col-costPerRank,.skill-table .col-maxRank{text-align:center}.skill-table .col-mcl,.skill-table .col-maintenancePerRank{text-align:center;color:#aaa}
