:root{color-scheme:dark;--bg:#0D1015;--panel:#191D22;--panel2:#24282C;--line:#3B4042;--muted:#ABB3AF;--text:#F4ECDD;--gold:#D6B678;--accent:#83BA9D;--danger:#E18C84;--radius:14px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% -20%,#24333a 0,transparent 38%),var(--bg);color:var(--text);line-height:1.52}
a{color:inherit}a:hover{color:var(--gold)}.site-header{position:sticky;top:0;z-index:10;background:#0d1218eF;border-bottom:1px solid #38434c;backdrop-filter:blur(12px)}
.container{width:min(1190px,calc(100% - 36px));margin-inline:auto}.header-inner{min-height:75px;display:flex;align-items:center;gap:25px;justify-content:space-between}.brand{text-decoration:none;font-weight:800;letter-spacing:.01em;display:flex;align-items:center;gap:12px}.brand-mark{display:inline-grid;place-items:center;width:35px;height:35px;border:1px solid var(--gold);border-radius:11px;color:var(--gold);font-size:21px}.brand span:last-child{font-size:17px}.nav{display:flex;gap:19px;flex-wrap:wrap}.nav a{text-decoration:none;color:#c4ccd2;font-size:13px}.nav a.active{color:var(--gold)}.hero{padding:60px 0 39px}.eyebrow{font-size:11px;color:var(--gold);font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero h1{font-family:Georgia,serif;font-size:clamp(34px,5vw,65px);line-height:1.08;letter-spacing:-.034em;max-width:830px;margin:18px 0 21px}.hero p{max-width:720px;color:var(--muted);font-size:17px}.pill{display:inline-flex;gap:8px;align-items:center;font-size:12px;padding:7px 11px;border:1px solid #617366;border-radius:100px;color:#bedccc;background:#1d2d29}.panel{border:1px solid var(--line);background:linear-gradient(135deg,#17202a,#111820);border-radius:var(--radius);padding:24px;box-shadow:0 15px 35px #0002}.panel h2{margin:0 0 8px;font-size:22px}.panel p{color:var(--muted)}.tool-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:20px;padding-bottom:30px}.results{background:linear-gradient(155deg,#25302e,#161f24);border-color:#46615b}.kpi{font-size:clamp(30px,3.5vw,48px);font-weight:750;letter-spacing:-.04em;line-height:1.15}.metric-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#c4cfca}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:22px}.metric{padding-top:16px;border-top:1px solid #53625f}.metric strong{display:block;font-size:25px;font-variant-numeric:tabular-nums}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;font-weight:600;font-size:13px}input,select{height:46px;border:1px solid #50616b;background:#0e151d;border-radius:10px;color:#f6f1e7;padding:0 13px;font:inherit;min-width:0}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.input-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.stat-field{font-size:12px;color:var(--muted);font-weight:650;min-width:0}.stat-field input{width:100%;margin:6px 0 1px;font-weight:700}.stat-field small{display:block;color:#7f929a;font-size:10px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;background:var(--gold);border:1px solid var(--gold);border-radius:11px;color:#111820;font-weight:750;text-decoration:none;cursor:pointer;font:inherit;transition:transform .16s,filter .16s}.btn:hover{color:#101820;filter:brightness(1.1);transform:translateY(-1px)}.btn.alt{background:transparent;color:var(--gold);margin-left:8px}.feedback{min-height:20px;margin-top:14px;font-size:12px;color:var(--accent)}.feedback.bad{color:var(--danger)}.muted{color:var(--muted)}.info{margin:5px 0 30px}.info ul{color:var(--muted)}.info li{margin:6px 0}.tool-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin:20px 0 50px}.tool-card{text-decoration:none;display:flex;flex-direction:column;min-height:205px;gap:12px;transition:transform .15s}.tool-card:hover{transform:translateY(-3px);color:var(--text)}.tool-card h3{font-size:22px;margin:0}.tool-card p{font-size:14px;margin:0}.tool-card .arrow{margin-top:auto;color:var(--gold);font-size:13px}.section-head h2{font-size:30px;font-family:Georgia,serif;margin:0}.section-head p{color:var(--muted)}.safe-banner{background:#192725;border:1px solid #53675c;border-radius:10px;padding:11px 14px;color:#c3dfcf;font-size:12px;margin:18px 0}.tag{display:inline-block;background:#33473b;border-radius:5px;padding:2px 5px;color:#bfe1ca;font-size:10px}.datatable{width:100%;border-collapse:collapse}.datatable td,.datatable th{text-align:left;border-bottom:1px solid var(--line);padding:12px 5px;font-size:13px}.datatable th{color:var(--muted);font-size:11px}.datatable td:last-child,.datatable th:last-child{text-align:right}.table-wrap{overflow-x:auto}.ratio{height:12px;border-radius:30px;overflow:hidden;background:linear-gradient(to right,#528f85 0 30%,#bda75b 30% 70%,#a97b56 70% 100%);margin:14px 0}.ratio div{height:100%;background:#fff8;outline:2px solid white;max-width:100%}.ratio div[data-tier=overloaded]{background:var(--danger)}.site-footer{padding:30px 0 55px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);margin-top:30px}.site-footer a{color:var(--muted)}.footer-flex{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.note{font-size:12px;color:var(--muted)}.source-links a{color:#ccd9d8}.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}
@media(max-width:840px){.tool-layout{grid-template-columns:1fr}.tool-cards{grid-template-columns:repeat(2,1fr)}.nav{gap:11px}.brand span:last-child{font-size:15px}}
@media(max-width:570px){.container{width:min(100% - 24px,1190px)}.header-inner{flex-direction:column;gap:8px;padding:12px 0}.nav{justify-content:center}.nav a{font-size:12px}.hero{padding:30px 0 22px}.hero p{font-size:14px}.tool-cards{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.panel{padding:17px}.input-two{grid-template-columns:1fr}.btn.alt{margin-left:0;margin-top:8px}.btn{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* weapon AR development-only test surface */
.ar-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:14px 0 20px}
.ar-stat-grid .stat-field input{width:100%;min-width:0}
.ar-check{display:flex;align-items:center;gap:11px;cursor:pointer;font-size:13px;color:var(--muted)}
.ar-check input{height:19px;width:19px;accent-color:var(--gold)}
.ar-button-pair{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
textarea{width:100%;display:block;border:1px solid var(--line);background:#0b121a;color:#e4eee5;border-radius:12px;padding:13px 15px;font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;resize:vertical;min-height:190px}
textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media(max-width:570px){.ar-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ar-button-pair{display:block}}
/* Production design layer: readable, responsive, no external assets. */
/* Root palette is declared once above. All legacy selectors use shared variables. */
body{background:radial-gradient(ellipse 72% 48% at 96% 0%,#293536 0%,transparent 80%),#10161d}::selection{background:#e0b778;color:#111820}
.gold{color:var(--gold)}.header-inner{gap:16px;min-height:72px}.brand{letter-spacing:.07em;white-space:nowrap}.brand-mark{border-radius:50%;width:37px;height:37px;box-shadow:0 0 0 5px #cda15b10}.nav{gap:20px}.nav a{padding:6px 0;white-space:nowrap;font-weight:600}.nav a:hover{color:#f9d69f}.header-status{white-space:nowrap;text-decoration:none;font-size:12px;color:#c9d7d0;border:1px solid #446055;padding:8px 12px;border-radius:20px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:100%;background:#9ac6ac;margin-right:5px}.mobile-menu{display:none}.mobile-menu summary{list-style:none;cursor:pointer;border:1px solid var(--line);padding:8px 12px;border-radius:10px;color:#ecdfcc}.mobile-menu summary::-webkit-details-marker{display:none}
.container{width:min(1220px,calc(100% - 44px))}.hero{padding:54px 0 40px}.hero h1{max-width:930px}.eyebrow{letter-spacing:.13em}.hero-home{display:grid;grid-template-columns:1.12fr .88fr;gap:24px;align-items:center;min-height:490px;position:relative}.hero-inner{z-index:1}.hero-home h1{font-size:clamp(52px,6.6vw,93px);max-width:670px;line-height:1.04;margin:24px 0}.hero-home h1 em{font-weight:400;color:var(--gold);font-family:Georgia,serif}.hero-home p{line-height:1.72;color:#bfcccf;max-width:610px}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:28px 0}.hero-actions .btn{min-width:176px}.btn{font-weight:750;min-height:45px}.btn.alt{margin:0;background:#222a2f;border-color:#586466;color:#f0d3a1}.btn.alt:hover{color:white}.trust-line{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:28px;font-size:11px;color:#aebdbb}.trust-line span:before{content:'✓';color:var(--accent);padding-right:7px}
.hero-visual{height:400px;position:relative;display:grid;place-items:center;isolation:isolate}.hero-visual:before{content:'';position:absolute;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,#d9b6721a 0%,transparent 70%);filter:blur(18px)}.hero-ring{position:absolute;border:1px solid #d5ae6947;border-radius:50%;transform:rotate(-16deg)}.ring-outer{width:345px;height:345px;box-shadow:0 0 0 25px #eac07a06,0 0 0 61px #eac07a04}.ring-outer:before{content:'';position:absolute;inset:17px;border:1px dashed #e0b77744;border-radius:50%}.ring-inner{width:238px;height:238px;border-color:#c9a66a88;border-width:2px}.ring-inner:before{content:'';position:absolute;inset:37px;border:1px solid #e3bc6d55;border-radius:50%}.hero-symbol{font-family:Georgia,serif;font-size:118px;color:#e4b96a;text-shadow:0 0 42px #e9bb6965;line-height:1}.hero-point{position:absolute;min-width:106px;background:#182129eF;border:1px solid #5c5849;border-radius:12px;padding:12px 14px;box-shadow:0 16px 36px #07090a66;display:flex;justify-content:space-between;gap:13px;font-size:11px;letter-spacing:.11em;color:#c6d0cf}.hero-point strong{font-size:20px;color:#e9c589;line-height:1}.point-one{top:25px;right:21px}.point-two{bottom:63px;left:6px}.point-three{bottom:32px;right:26px}.hero-sigil{position:absolute;bottom:-4px;font-size:9px;letter-spacing:.34em;color:#a8a89b}
.home-section{margin:10px 0 70px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-head h2{font-size:clamp(32px,3.5vw,48px);margin:5px 0}.section-head p{max-width:410px;font-size:14px;line-height:1.7}.tool-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:27px}.tool-card{position:relative;padding:25px 22px;min-height:245px;box-shadow:none!important;background:#182128;overflow:hidden}.tool-card:after{content:'';position:absolute;right:-28px;top:-28px;width:100px;height:100px;border:1px solid #bd9a5f29;border-radius:50%;box-shadow:0 0 0 22px #dfb47a05}.tool-card h3{font-family:Georgia,serif;line-height:1.15;font-size:26px}.tool-icon{color:#d4ae74;font-size:11px;letter-spacing:.14em;font-weight:700}.tool-card p{color:#b4c1c4;line-height:1.65}.tool-card .arrow{font-weight:750}.tool-card:hover{border-color:#ad8d5c;transform:translateY(-4px)}
.home-feature{display:grid;grid-template-columns:1fr .85fr;gap:55px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:65px 0}.home-feature h2{font-family:Georgia,serif;font-size:clamp(37px,5vw,61px);line-height:1.08;margin:17px 0}.home-feature p{max-width:540px;color:var(--muted);line-height:1.75}.home-feature a{font-weight:650;color:var(--gold);text-decoration:none}.feature-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature-stats div{min-height:115px;padding:22px;background:#1a2529;border:1px solid var(--line);border-radius:13px}.feature-stats div:last-child{grid-column:span 2}.feature-stats strong{font-family:Georgia,serif;font-size:30px;font-weight:500;color:#e1bd7d;display:block}.feature-stats span{display:block;font-size:12px;color:#b6c4c4;line-height:1.5;margin-top:5px}.home-end{max-width:750px;text-align:center;padding:70px 0 90px;margin:auto}.home-end h2{font-size:36px;font-family:Georgia,serif;margin:12px 0}.home-end p{color:var(--muted);line-height:1.65}.home-end .btn{margin-top:12px}
.panel{background:#19232b;border-color:#36434b;box-shadow:none}.results{background:linear-gradient(155deg,#28372f,#19252b)}.metric-label{color:#b3c9c4}.kpi{color:#f7deac}.stat-grid{gap:10px}.info{box-shadow:none}.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin:20px 0}.editorial-grid h3{font-size:16px;margin:20px 0 6px}.editorial-grid .info{margin:0;line-height:1.65}.editorial-grid p{font-size:14px}.related-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:38px 0 66px}.related-tools a{font-size:12px;text-decoration:none;border:1px solid var(--line);padding:9px 13px;border-radius:9px}.related-tools a:hover{border-color:var(--gold)}.prose{max-width:920px;padding:34px;margin-bottom:60px}.prose h2{font-family:Georgia,serif;margin-top:27px}.prose h2:first-child{margin-top:0}.site-footer{background:#0c1218;padding:40px 0 52px;border-top-color:#2a353b}.footer-brand{color:#e0b879!important;font-weight:800;letter-spacing:.13em;text-decoration:none}.site-footer p{margin:11px 0;color:#a9b5b6}.footer-links{display:flex;gap:20px;align-items:start}.footer-links a{text-decoration:none}.footer-links a:hover{color:var(--gold)}
@media(max-width:1120px){.nav{gap:12px}.nav a{font-size:12px}.header-status{display:none}.tool-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-home{grid-template-columns:1.1fr .9fr}}
@media(max-width:860px){.nav{display:none}.mobile-menu{display:block;position:relative;margin-left:auto}.mobile-menu nav{position:absolute;top:calc(100% + 10px);right:0;z-index:80;width:min(80vw,270px);padding:10px;border:1px solid #435058;background:#141d24;border-radius:12px;box-shadow:0 18px 40px #000a;display:flex;flex-direction:column}.mobile-menu nav a{padding:12px;border-radius:7px;text-decoration:none;font-size:13px;color:#d4dfdc}.mobile-menu nav a.active,.mobile-menu nav a:hover{background:#27352f;color:#efd3a3}.header-inner{flex-direction:row;padding:0}.hero-home{grid-template-columns:1fr;gap:0;min-height:auto}.hero-visual{height:240px;margin-top:-15px;overflow:hidden}.hero-ring.ring-outer{width:210px;height:210px}.ring-inner{width:150px;height:150px}.hero-symbol{font-size:82px}.hero-point{padding:7px 9px;min-width:76px}.hero-point strong{font-size:15px}.point-one{top:16px;right:27%}.point-two{bottom:40px;left:20%}.point-three{bottom:30px;right:20%}.hero-sigil{display:none}.home-feature{grid-template-columns:1fr;gap:22px;padding:40px 0}}
@media(max-width:570px){.container{width:calc(100% - 28px)}.site-header{position:relative}.header-inner{flex-direction:row;min-height:67px;padding:0}.brand span:last-child{font-size:15px}.hero{padding:36px 0 22px}.hero-home h1{font-size:clamp(48px,13vw,67px)}.hero-home p{font-size:15px}.hero-actions{gap:10px}.hero-actions .btn{min-width:0;flex:1}.trust-line{gap:10px}.hero-visual{height:170px}.ring-outer{opacity:.65}.hero-point{display:none}.tool-cards{grid-template-columns:1fr}.section-head{display:block}.section-head h2{font-size:36px}.tool-card{min-height:177px}.editorial-grid{grid-template-columns:1fr}.related-tools .eyebrow{width:100%}.feature-stats{gap:10px}.home-feature h2{font-size:42px}.footer-flex{display:block}.footer-links{margin-top:25px}.prose{padding:20px}.home-end{padding:55px 0}}

/* Cross-tool planning workflow and actionable load guidance. */
.result-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}
.result-actions .btn{margin:0;font-size:13px;padding:11px 13px;text-align:center}
.result-actions [hidden]{display:none!important}
.load-guidance{margin:16px 0 0!important;padding:13px 14px;border:1px solid #567367;border-radius:10px;background:#21352d;color:#d6eee0!important;line-height:1.55;font-size:13px}
@media(max-width:570px){.result-actions{display:grid;grid-template-columns:1fr}.result-actions .btn{width:100%}}

/* Respec planner: dense but legible character comparison. */
.save-actions{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 12px}
.save-actions button{min-height:39px;border:1px solid #64716d;background:#21302f;color:#e3e7db;padding:8px 12px;border-radius:9px;cursor:pointer;font:inherit;font-size:12px}
.save-actions button:hover{border-color:var(--gold);color:var(--gold)}
.save-actions button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.respec-feature{margin:-12px 0 60px;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;gap:26px;border:1px solid #5e594b;border-radius:15px;background:#222b2c}
.respec-feature h2{font-family:Georgia,serif;font-size:clamp(24px,3vw,35px);margin:8px 0}
.respec-feature p{max-width:780px;color:var(--muted);line-height:1.65;margin:0}
.respec-feature .btn{flex-shrink:0}
.respec-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.respec-layout .panel{min-width:0}
.respec-results{margin-top:18px}
.respec-results .metric-grid{grid-template-columns:repeat(3,1fr)}
.respec-state{display:block;color:var(--accent);font-size:18px;margin-top:12px}
.respec-state.over{color:var(--danger)}.respec-state.unused{color:#f2cb8f}
.respec-change-table{width:100%;border-collapse:collapse}
.respec-change-table th,.respec-change-table td{border-bottom:1px solid var(--line);padding:10px;text-align:left;font-size:13px}
.respec-change-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.respec-change-table .up{color:#9ed3ac}.respec-change-table .down{color:#e3bc91}
.respec-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.respec-actions .btn{margin:0}.respec-actions [hidden]{display:none!important}
@media(max-width:840px){.respec-layout{grid-template-columns:1fr}.respec-feature{align-items:start;flex-direction:column}.respec-results .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:570px){.respec-feature{padding:20px;margin:0 0 45px}.respec-feature .btn{width:100%}.respec-results .metric-grid{grid-template-columns:1fr 1fr}.respec-actions{display:grid;grid-template-columns:1fr}.respec-actions .btn{width:100%}.save-actions button{flex:1}}

/* Local-only weapon AR evidence comparator. */
.verification-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.verification-layout .panel{min-width:0}
.verification-layout textarea{width:100%;min-height:320px;resize:vertical;font-size:12px}
.verification-controls{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.verification-controls .btn.alt{margin:0}
.verification-controls [disabled]{opacity:.42;cursor:not-allowed;transform:none}
.verification-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:820px){.verification-layout{grid-template-columns:1fr}.verification-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px){.verification-controls{display:grid;grid-template-columns:1fr}.verification-controls .btn{width:100%}}

/* Manual weapon requirement calculator, locally calculated. */
.requirements-layout,.requirements-results{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.requirements-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.requirements-grid .stat-field{min-width:0}
.requirements-grid .stat-field input{width:100%;min-width:0}
.requirements-results h2{font-size:clamp(20px,2.5vw,29px);margin:10px 0}
.requirements-results .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.requirements-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.requirements-actions .btn{margin:0}
.requirements-spotlight{margin:0 0 55px;background:#1f2c2b}
.requirements-spotlight a{white-space:nowrap}
@media(max-width:1000px){.requirements-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:740px){.requirements-layout,.requirements-results{grid-template-columns:1fr}}
@media(max-width:570px){.requirements-actions{display:grid;grid-template-columns:1fr}.requirements-actions .btn{width:100%}.requirements-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Manual custom armor optimizer. */
.armor-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.armor-layout .panel{min-width:0}
.armor-layout textarea{min-height:320px;white-space:pre;overflow:auto}
.armor-actions{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}
.armor-actions .btn.alt{margin:0}
.armor-file{display:inline-flex;align-items:center;border:1px solid #616b67;border-radius:10px;padding:9px 13px;min-height:45px;cursor:pointer;font-size:13px}
.armor-file:focus-within{outline:2px solid var(--gold);outline-offset:2px}
.armor-file input{width:1px;height:1px;position:absolute;opacity:0;pointer-events:none}
.armor-table td:nth-child(2){min-width:240px;white-space:normal;line-height:1.5}
.armor-table th,.armor-table td{vertical-align:top}
.armor-spotlight{margin-bottom:45px}
@media(max-width:850px){.armor-layout{grid-template-columns:1fr}}
@media(max-width:570px){.armor-actions{display:grid;grid-template-columns:1fr}.armor-actions .btn{width:100%}.armor-file{justify-content:center}}

/* Slot-specific, reversible armor exclusions in manual-input research optimizer. */
.armor-exclusion-panel{margin:18px 0;padding:14px;border:1px solid var(--line);border-radius:12px;background:#152228}
.armor-exclusion-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.armor-exclusion-head h3{font-size:15px;margin:0;color:#eed6aa}
.armor-exclusion-head .btn{min-height:40px;margin:0}
#armor-clear-exclusions[hidden]{display:none!important}
#armor-excluded-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:12px 0 0}
#armor-excluded-list:empty{display:none}
#armor-excluded-list li{display:inline-flex;align-items:center;gap:8px;padding:5px 7px 5px 12px;border:1px solid #566454;border-radius:9px;max-width:100%;overflow-wrap:anywhere;background:#202c30}
.armor-result-piece{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:5px 0;border-bottom:1px solid #39464b}
.armor-result-piece:last-child{border-bottom:0}
.armor-result-piece span{overflow-wrap:anywhere;min-width:110px;flex:1}
.armor-exclude-piece,.armor-undo-piece{appearance:none;border:1px solid #8b8067;background:#2b302f;color:#f5dba7;padding:8px 11px;border-radius:8px;cursor:pointer;min-height:40px;font:inherit;font-size:12px;font-weight:700}
.armor-exclude-piece:hover,.armor-undo-piece:hover{background:#465044}
.armor-exclude-piece:focus-visible,.armor-undo-piece:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
@media(max-width:570px){.armor-exclusion-head .btn{width:100%}.armor-result-piece span{min-width:90px}}

/* Weapon upgrade material planner */
.upgrade-inventory{padding:14px;border:1px solid var(--line);border-radius:12px;margin:16px 0;background:#142024}
.upgrade-inventory>summary,.upgrade-steps>summary{cursor:pointer;color:#efd2a3;font-weight:650}
.inventory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:17px 0}
.inventory-field{min-width:0;display:flex;justify-content:space-between;align-items:center;gap:8px;color:#c3d2d2;font-size:12px}
.inventory-field input{width:90px;min-width:75px;height:38px}
.upgrade-steps{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}
.upgrade-steps ol{padding-left:23px;color:var(--muted);line-height:1.8}
.upgrade-spotlight{margin-bottom:46px}
.datatable .need-more{color:#efd19f;font-weight:750}
@media(max-width:570px){.inventory-grid{grid-template-columns:1fr}.inventory-field input{width:110px}}

/* Versioned local weapon data workbench — controlled, responsive and no uploads. */
.workbench-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:12px 0 18px}
.workbench-grid>.panel{min-width:0}
.workbench-grid .field input[type="search"],.workbench-grid .field input[type="text"]{width:100%}
.workbench-grid .field select{max-width:100%;min-width:0}
.workbench-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 8px}
.workbench-actions .btn{margin:0}
.workbench-stats-panel{margin-bottom:18px}
.workbench-stats-panel .ar-stat-grid{max-width:900px}
.workbench-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.workbench-metrics .metric strong{overflow-wrap:anywhere}
#arw-comparison[hidden]{display:none!important}
#arw-feedback{min-height:34px}
@media(max-width:830px){.workbench-grid{grid-template-columns:1fr}.workbench-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.workbench-actions{display:grid;grid-template-columns:1fr}.workbench-actions .btn{width:100%}.workbench-metrics{grid-template-columns:1fr 1fr}}

/* Single build-generated navigation for all tool pages. */
.header-more{position:relative;flex:none}
.header-more>summary{list-style:none;cursor:pointer;white-space:nowrap;border:1px solid #56625b;background:#1b282a;color:#f1d49c;padding:9px 13px;border-radius:9px;font-size:12px}
.header-more>summary::-webkit-details-marker{display:none}
.header-more>summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.header-more-list{position:absolute;right:0;top:calc(100% + 8px);z-index:90;display:grid;min-width:235px;padding:9px;background:#172128;border:1px solid #516157;border-radius:12px;box-shadow:0 24px 50px #000b}
.header-more-list a{padding:11px;text-decoration:none;color:#e2eae3;font-size:13px;border-radius:7px}
.header-more-list a:hover,.header-more-list a:focus-visible{background:#2b3a34;color:#f3d49e}
.mobile-menu nav{max-height:min(70vh,640px);overflow-y:auto}
.tool-card:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:860px){.header-more{display:none}}
@media(min-width:861px) and (max-width:1120px){.header-more>summary{padding:8px 10px;font-size:11px}}

/* Side-by-side imported weapon AR comparison */
.workbench-pair-panel{margin:18px 0 32px}
.workbench-pair-panel .input-two{grid-template-columns:repeat(3,minmax(0,1fr))}
.workbench-pair-panel .field{min-width:0}
.workbench-pair-panel select{width:100%;min-width:0}
.workbench-pair-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0}
.workbench-pair-metrics .metric strong{overflow-wrap:anywhere}
#arw-compare-results[hidden]{display:none!important}
@media(max-width:760px){.workbench-pair-panel .input-two{grid-template-columns:1fr}.workbench-pair-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* In-browser complete dataset review, research-only */
.workbench-audit-panel{margin:18px 0 24px}
.workbench-audit-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin:18px 0}
.workbench-audit-metrics strong{overflow-wrap:anywhere}
.workbench-audit-panel button:disabled{opacity:.48;cursor:not-allowed}
#arw-audit-results[hidden]{display:none!important}
@media(max-width:740px){.workbench-audit-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Structural vs limited-model audit coverage, mobile friendly. */
.workbench-audit-panel h3{font-size:15px;margin:20px 0 9px}
.workbench-audit-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.workbench-audit-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.workbench-audit-metrics{grid-template-columns:1fr}}

/* Weapon reference: responsive, text-first, zero game assets. */
.catalog-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:8px 0 22px}
.catalog-kpi{display:grid;gap:6px;padding:20px;min-width:0}
.catalog-kpi>strong{font-size:clamp(21px,3vw,37px);color:var(--gold);font-variant-numeric:tabular-nums}
.catalog-kpi>span:last-child{font-size:12px;color:var(--muted)}
.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:20px;margin-bottom:24px}
.catalog-browser,.catalog-detail-col{min-width:0}
.catalog-list{display:grid;gap:7px;margin:13px 0}
.catalog-row{appearance:none;display:grid;grid-template-columns:1fr auto;text-align:left;gap:4px 12px;background:#172327;border:1px solid #42534b;border-radius:12px;color:#e9eee8;cursor:pointer;padding:12px 14px;width:100%}
.catalog-row:hover,.catalog-row:focus-visible,.catalog-row.selected{border-color:#d9b97c;background:#26352e}
.catalog-row-title{font-weight:720;font-size:14px;grid-column:1}
.catalog-row-desc{color:#a8bbaf;font-size:12px;grid-column:1}
.catalog-row-tag{grid-column:2;grid-row:1/span 2;align-self:center;color:#d6bd8c;font-size:11px}
.catalog-detail-col{display:grid;align-content:start;gap:18px}
.catalog-character .catalog-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.catalog-stats .stat-field{min-width:0;font-size:12px}
.catalog-stats input{min-width:0;width:100%}
.catalog-detail h3{font-size:15px;margin:21px 0 9px}
.catalog-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0}
.catalog-detail-grid>div{padding:12px;border:1px solid #47584c;border-radius:10px;min-width:0}
.catalog-detail-grid strong{display:block;overflow-wrap:anywhere;font-size:17px;margin-top:7px}
.catalog-values{display:grid;gap:8px}
.catalog-value{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #39483f}
.catalog-value strong{color:#dfc48e}
.catalog-warnings p{color:#e8ca8f;border-left:3px solid #b58c50;padding:7px 12px;background:#2a2823;font-size:13px}
.catalog-check-button{margin-top:16px}
@media(max-width:920px){.catalog-layout{grid-template-columns:1fr}}
@media(max-width:650px){.catalog-overview{grid-template-columns:1fr 1fr}.catalog-character .catalog-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:440px){.catalog-overview{grid-template-columns:1fr}.catalog-character .catalog-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Real weapon filtering: compact and accessible on phone */
.catalog-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.catalog-filter-grid .field{min-width:0}
.catalog-filter-grid .field input,.catalog-filter-grid .field select{width:100%;min-width:0}
.catalog-filter-grid .field:last-child{grid-column:1 / -1}
@media(max-width:520px){.catalog-filter-grid{grid-template-columns:1fr}.catalog-filter-grid .field:last-child{grid-column:auto}}

/* Reference-only weapon comparison: explicit unknown fields and mobile table scroll. */
.catalog-compare{margin-top:22px}
.compare-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}
.compare-heading h2{margin:8px 0 0;font-family:Georgia,serif;font-size:clamp(22px,3vw,30px)}
.reference-compare-table{border-collapse:collapse;width:100%;min-width:560px;margin:15px 0}
.reference-compare-table th,.reference-compare-table td{padding:11px 13px;min-width:130px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);font-size:13px;overflow-wrap:anywhere}
.reference-compare-table th:first-child,.reference-compare-table td:first-child{min-width:165px;position:sticky;left:0;background:var(--panel);z-index:1}
.reference-compare-table th{font-size:12px;color:var(--text)}
.reference-compare-table td{font-variant-numeric:tabular-nums}
.reference-compare-table .compare-name{display:block;font-weight:700;margin-bottom:8px}
.reference-compare-table .compare-remove{font-size:12px;cursor:pointer;border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:8px;padding:7px 10px;min-height:36px}
.reference-compare-table .compare-remove:hover{border-color:var(--gold)}
.compare-controls{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.compare-controls .btn.alt{margin:0}
.compare-controls button:disabled{opacity:.5;cursor:not-allowed}
.compare-share{margin:0}.compare-share input{width:100%;font-size:12px}
@media(max-width:570px){.reference-compare-table th:first-child,.reference-compare-table td:first-child{min-width:125px}.reference-compare-table th,.reference-compare-table td{min-width:145px;padding:11px 9px}.compare-controls{display:grid;grid-template-columns:1fr 1fr}.compare-controls .btn{width:100%;font-size:12px;padding:10px 6px}.catalog-compare{padding:17px}}

/* Build Planner optional weapon reference: content packs are separate, and facts are not AR. */
.build-content-check{display:flex;align-items:flex-start;gap:11px;margin:14px 0;font-size:13px;color:var(--text);line-height:1.5}
.build-content-check input{width:19px;height:19px;margin:1px 0 0;flex:0 0 auto;accent-color:var(--gold)}
.build-weapon-panel{margin:23px 0 10px;padding:17px 18px;border-radius:12px;border:1px solid var(--line);background:var(--panel2)}
.build-weapon-panel h3{margin:0 0 8px;font:600 19px Georgia,serif}
.build-weapon-panel .field{margin:15px 0 8px}
.build-weapon-panel .note{line-height:1.65}
.build-weapon-summary{min-height:45px;margin:14px 0 11px;padding:12px 14px;border:1px solid var(--line);background:var(--panel);border-radius:9px;color:var(--text);font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.build-weapon-panel .btn.alt{margin-left:0}
.build-weapon-panel input:disabled,.build-weapon-panel select:disabled{opacity:.55;cursor:wait}
@media(max-width:570px){.build-weapon-panel{padding:14px 12px}.build-weapon-panel .btn{width:100%}}


/* Manual multi-weapon smithing planner: compact, touch-friendly, mobile scrollable. */
.multi-upgrade-table{min-width:670px}
.multi-upgrade-table td{vertical-align:middle}
.multi-upgrade-table td:first-child{min-width:185px}
.multi-upgrade-table input,.multi-upgrade-table select{
 height:41px;width:100%;min-width:70px;font-size:13px;padding:0 9px
}
.multi-upgrade-table input[type="number"]{width:88px;max-width:100%}
.multi-upgrade-table td:nth-child(2){min-width:132px}
.multi-upgrade-table td:last-child{min-width:92px}
.multi-upgrade-table .btn{padding:10px 12px;font-size:12px}
#multi-upgrade-results{margin-top:21px}
#multi-upgrade-results[hidden]{display:none!important}
#multi-upgrade-results .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#multi-upgrade-results .metric strong{font-size:clamp(20px,2.7vw,30px)}
#multi-upgrade-results h3{margin-top:24px}
#multi-upgrade-feedback{min-height:22px}
@media(max-width:680px){
 #multi-upgrade-results .metric-grid{grid-template-columns:1fr 1fr}
 #multi-upgrade-results .metric strong{font-size:23px}
}


/* Build -> smithing shortlist: distinct from saved stats, no background sync. */
#build-smithing-shortlist-panel{margin-top:20px;padding:15px;border:1px solid #53645b;border-radius:12px;background:#111d22}
#build-smithing-shortlist-panel h3{margin:0 0 8px}
.build-smithing-list{margin:15px 0;padding:0;list-style:none;display:grid;gap:8px}
.build-smithing-list li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:9px 12px;border-radius:10px;background:#1b2b2b;border:1px solid #465950;min-width:0}
.build-smithing-list li span{overflow-wrap:anywhere;font-size:13px}
.build-smithing-list .btn{margin:0;flex-shrink:0;padding:9px 12px}
#build-smithing-shortlist-panel .workbench-actions button:disabled{opacity:.46;cursor:not-allowed}
#build-smithing-open{display:inline-flex;margin-top:8px}
#build-smithing-open[hidden]{display:none!important}
.multi-weapon-hint{display:block;margin-top:6px;font-size:11px;line-height:1.4;color:#d8c18e;max-width:260px}
@media(max-width:560px){.build-smithing-list li{align-items:flex-start}.build-smithing-list .btn{font-size:12px}}


/* Temporary, source-cautioned Build A/B comparison on the existing planner. */
.build-ab-panel{margin-bottom:22px}
.build-ab-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.build-ab-cards>div{padding:16px;border:1px solid #4b6155;background:#142328;border-radius:12px;min-width:0}
.build-ab-cards strong{display:block;margin-top:7px;font-size:19px;overflow-wrap:anywhere;color:#f4deab}
.build-ab-cards p{margin:8px 0 0;line-height:1.55;font-size:13px}
.build-ab-table{margin-top:17px}
.build-ab-table th:first-child{min-width:185px}
.build-ab-table td,.build-ab-table th{font-variant-numeric:tabular-nums}
.build-ab-table td:last-child,.build-ab-table th:last-child{text-align:right}
.build-ab-changed td:last-child{color:#efce92;font-weight:750}
.build-ab-weapons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.build-ab-weapons p{border:1px solid #40564f;background:#142328;padding:14px;border-radius:10px;line-height:1.65;overflow-wrap:anywhere}
#build-ab-status{min-height:18px}
#build-ab-results[hidden]{display:none!important}
@media(max-width:650px){
 .build-ab-cards,.build-ab-weapons{grid-template-columns:1fr}
 .build-ab-table{min-width:485px}
 .build-ab-panel .workbench-actions{display:grid;grid-template-columns:1fr}
}


/* Build shortlist wield planning: independently evaluated weapon candidates. */
.build-wield-panel{margin:18px 0;padding:16px;border:1px solid #495f55;border-radius:14px;background:#152328}
.build-wield-panel h4{font-size:16px;margin:0 0 8px;color:#efd4a8}
.build-wield-panel h5{font-size:13px;margin:0 0 8px;color:#f0d49d}
.build-wield-table{min-width:650px}
.build-wield-table td,.build-wield-table th{vertical-align:top;line-height:1.55}
.build-wield-table th:first-child{min-width:160px}
.build-wield-table td:last-child,.build-wield-table th:last-child{text-align:right}
.build-wield-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.build-wield-targets>div{border:1px solid #425c52;background:#112127;padding:14px;border-radius:12px;min-width:0}
.build-wield-targets p{font-size:12px;line-height:1.65;min-height:44px}
.build-wield-targets button{width:100%;white-space:normal}
#build-wield-plan[hidden]{display:none!important}
@media(max-width:670px){.build-wield-targets{grid-template-columns:1fr}.build-wield-targets p{min-height:0}.build-wield-panel{padding:12px}}


/* Explicit equipped-slot planner; community weapon facts + in-game manual gear weights. */
#equipment-loadout-builder{margin:24px 0}
.equipment-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:20px 0}
.equipment-builder-grid>div{min-width:0}
.equipment-builder-grid h3{font-size:17px;color:#edd4a7;margin:0 0 14px}
.equipment-builder-fields{display:grid;gap:12px}
.equipment-builder-fields .field{min-width:0}
.equipment-builder-fields select{width:100%;max-width:100%;min-width:0;text-overflow:ellipsis}
.equipment-manual-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.equipment-builder-bottom{border-top:1px solid #384a46;padding-top:20px}
.equipment-builder-bottom>.field{max-width:450px}
.equipment-builder-bottom .build-content-check{display:flex;margin:14px 0;align-items:start}
#equipment-feedback,#equipment-unknown{overflow-wrap:anywhere}
#equipment-loadout-builder .metric-grid{margin:20px 0}
@media(max-width:740px){
 .equipment-builder-grid{grid-template-columns:1fr;gap:22px}
 .equipment-manual-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
 #equipment-loadout-builder{margin:16px 0}
}
@media(max-width:400px){
 .equipment-manual-row{grid-template-columns:1fr}
}


/* Equipped A/B uses explicit gear slots, not a wishlist or a computed AR. */
.equipment-ab-summaries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}
.equipment-ab-summaries>div{border:1px solid #486153;border-radius:12px;padding:16px;background:#142328;min-width:0}
.equipment-ab-summaries h3{margin:0 0 9px;color:#ead2a5;font-size:15px}
.equipment-ab-summaries p{margin:0;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.equipment-ab-table{min-width:580px}
.equipment-ab-table th:first-child{min-width:185px}
.equipment-ab-table td{min-width:185px;overflow-wrap:anywhere;vertical-align:top}
.equipment-ab-changed td{color:#f0d59d}
#equipment-ab-difference,#equipment-ab-status,#equipment-save-feedback{overflow-wrap:anywhere}
#equipment-ab-results[hidden]{display:none!important}
@media(max-width:690px){.equipment-ab-summaries{grid-template-columns:1fr}.equipment-ab-table{min-width:560px}}

/* Real-game discrepancy evidence form: local files stay in the browser. */
#conflict-capture{margin:24px 0}
#conflict-capture .equipment-builder-grid{align-items:start}
.conflict-capture-values{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.conflict-capture-values>.field{min-width:0}
.conflict-capture-values input{width:100%;min-width:0;font-variant-numeric:tabular-nums}
#conflict-capture .field input[type=file]{width:100%;font-size:12px;overflow-wrap:anywhere}
#conflict-capture .field input[type=text],
#conflict-capture .field input[type=date],
#conflict-capture .field select{width:100%;max-width:100%}
#conflict-capture .build-content-check{display:flex;align-items:start;gap:9px}
#conflict-capture .build-content-check input{margin-top:3px;flex-shrink:0}
#conflict-capture #conflict-capture-feedback{overflow-wrap:anywhere}
#conflict-capture .workbench-actions{margin:18px 0}
#conflict-capture-progress th{min-width:200px}
#conflict-capture-progress td{overflow-wrap:anywhere}
@media(max-width:900px){.conflict-capture-values{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:540px){
 .conflict-capture-values{grid-template-columns:repeat(2,minmax(0,1fr))}
 #conflict-capture{margin:16px 0}
 #conflict-capture .workbench-actions{display:grid;grid-template-columns:1fr}
 #conflict-capture .workbench-actions button{width:100%}
}

/* Reopen previously exported seven-case evidence in the browser; no uploads. */
#conflict-evidence-recheck{margin:24px 0}
#conflict-evidence-recheck .field{min-width:0}
#conflict-evidence-recheck input[type=file]{width:100%;font-size:12px;min-width:0}
#conflict-evidence-recheck select{width:100%;max-width:100%}
#conflict-evidence-recheck .workbench-actions{margin:14px 0}
#conflict-recheck-results[hidden]{display:none!important}
#conflict-recheck-feedback,#conflict-recheck-hash-result,
#conflict-recheck-summary{overflow-wrap:anywhere;line-height:1.65}
@media(max-width:540px){
 #conflict-evidence-recheck{margin:16px 0}
 #conflict-evidence-recheck .workbench-actions{display:grid;grid-template-columns:1fr}
 #conflict-evidence-recheck .workbench-actions button{width:100%}
}


/* SEO intent: crawlable, calculator-backed level-cost chart.
 * Static HTML is complete before JS; interaction is an enhancement only. */
.rune-level-reference{scroll-margin-top:22px}
.rune-level-reference h2{line-height:1.22}
.rune-level-reference .rune-chart-scroller{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border-radius:12px}
.rune-level-reference .rune-chart-scroller:focus-visible{outline:2px solid #edc57a;outline-offset:3px}
.rune-chart-table{width:100%;min-width:580px;border-collapse:collapse}
.rune-chart-table caption{caption-side:top;text-align:left;font-size:.8rem;line-height:1.5;padding:.35rem .2rem .75rem;color:#bbc8c4}
.rune-chart-table th,.rune-chart-table td{text-align:left;vertical-align:middle}
.rune-chart-table td:nth-child(2),.rune-chart-table td:nth-child(3){font-variant-numeric:tabular-nums;white-space:nowrap}
.rune-chart-table th[scope=row]{white-space:nowrap;color:#efcf8c}
.rune-chart-table .rune-chart-use{min-height:42px;font-size:.82rem;white-space:normal;line-height:1.3;padding:.45rem .65rem}
@media(max-width:600px){.rune-chart-table{min-width:530px}.rune-level-reference .rune-chart-scroller{margin-inline:-.25rem;padding-inline:.25rem}.rune-chart-table .rune-chart-use{min-width:114px}}


/* SEO Build Planner intent: visible task navigation and genuine sourced
 * class/stat example cards, no new URL or default animation. */
.build-seo-jumps{display:flex;flex-wrap:wrap;gap:.55rem;margin:.85rem 0 1rem}
.build-seo-jumps a{display:inline-flex;align-items:center;min-height:43px;padding:.45rem .75rem;border:1px solid #546a64;border-radius:9px;color:#e7d39c;text-decoration:none;background:#1e2b30;font-size:.88rem}
.build-seo-jumps a:hover,.build-seo-jumps a:focus-visible{border-color:#e3bb76;outline-offset:2px}
#build-character{scroll-margin-top:18px}
.build-seo-examples{margin:1rem 0;padding:1rem;border:1px solid #536b65;border-radius:13px;background:#1a262a;scroll-margin-top:16px}
.build-seo-examples h3{font-size:clamp(1.08rem,2vw,1.35rem);margin:.25rem 0 .65rem;color:#edd09b;line-height:1.3}
.build-seo-examples>p{line-height:1.6}
.build-seo-examples-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}
.build-seo-sample{min-width:0;padding:.8rem;border:1px solid #536164;border-radius:10px;background:#222e30;display:flex;flex-direction:column;align-items:stretch}
.build-seo-sample-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem}
.build-seo-sample h4{font-size:1rem;line-height:1.3;margin:0;color:#f1cc87}
.build-seo-alloc{font-size:.72rem;color:#c6d0c9}
.build-seo-sample>p{font-size:.84rem;line-height:1.55;margin:.5rem 0}
.build-seo-statline{margin:.55rem 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem}
.build-seo-statline>div{display:flex;flex-direction:column;min-width:0;align-items:center;padding:.3rem .1rem;border-radius:6px;background:#172427}
.build-seo-statline dt{font-size:.66rem;color:#b9c7c2}
.build-seo-statline dd{margin:0;font-size:.95rem;font-weight:750;color:#f0d7a4;font-variant-numeric:tabular-nums}
.build-seo-sample .build-seo-runes{margin-top:auto}
.build-seo-sample button{min-height:44px;line-height:1.35;white-space:normal}
#build-example-feedback{border-left:3px solid #b99d61;padding:.55rem .75rem;background:#233036}
@media(max-width:1100px){.build-seo-examples-grid{grid-template-columns:1fr}}
@media(max-width:530px){.build-seo-examples{padding:.75rem}.build-seo-jumps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.build-seo-jumps a{padding:.5rem .45rem;font-size:.8rem}.build-seo-sample{padding:.65rem}}


/* Source-calculated static guides for starting classes and roll thresholds.
 * Crawlable without JS; horizontal tables must not widen mobile layouts. */
.seo-intent-reference{scroll-margin-top:20px}
.seo-intent-reference h2{line-height:1.32}
.seo-intent-reference p{line-height:1.65}
.seo-intent-reference .seo-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border-radius:10px}
.seo-intent-reference .seo-table-scroll:focus-visible{outline:2px solid #e9bf77;outline-offset:3px}
.seo-intent-reference table{width:100%;border-collapse:collapse}
.seo-intent-reference table caption{text-align:left;caption-side:top;padding:.5rem .15rem;color:#bfc9c2;font-size:.83rem;line-height:1.4}
.seo-class-stats{min-width:840px}
.seo-equip-table{min-width:600px}
.seo-intent-reference th,.seo-intent-reference td{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:left}
.seo-intent-reference th[scope="row"]{color:#e8c890;font-weight:700}
.seo-intent-reference td .btn{min-height:42px;padding:.5rem .7rem;font-size:.83rem;white-space:normal;line-height:1.3}
.seo-class-stats tr:hover,.seo-equip-table tr:hover{background:rgba(225,197,139,.07)}
#class-seo-target-feedback,#equip-seo-feedback{border-left:3px solid #b8995f;padding:.55rem .75rem;background:#243035}
@media(max-width:600px){.seo-intent-reference .seo-table-scroll{margin-inline:-.25rem;padding-inline:.25rem}.seo-intent-reference th,.seo-intent-reference td{font-size:.8rem}.seo-intent-reference td .btn{min-width:98px}}

/* Keep Google's reviewed core utility intent visually distinct from the
 * separately accessible, not-yet-indexable research/reference surfaces. */
.home-research{margin-top:0}
.home-research .section-head p{max-width:560px}
.home-research .section-head p a{color:#e5bf85}
.research-cards .tool-card{border-color:#3b464b;background:#151e25;min-height:225px}
.research-cards .tool-card .tool-icon{color:#b8c9ca}
.research-cards .tool-card h3{font-size:clamp(18px,2vw,23px)}
@media(max-width:700px){.home-research .section-head{align-items:start;flex-direction:column;gap:.45rem}}

/* Crawlable respec worked examples remain useful before JS enhancement. */
.respec-extra-toggle{display:inline-flex;gap:.65rem;align-items:center;font-size:.86rem;line-height:1.5;color:#e7d1a4;cursor:pointer;padding:.5rem 0}
.respec-extra-toggle input{width:20px;height:20px;flex-shrink:0;accent-color:var(--gold)}
.respec-seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.respec-seo-example{border:1px solid #465b60;border-radius:12px;padding:.85rem;background:#1b2830;min-width:0;display:flex;flex-direction:column;gap:.5rem}
.respec-seo-example h3{font-size:1.05rem;color:#f1ce9c;line-height:1.35;margin:0}
.respec-seo-example p{font-size:.83rem;line-height:1.6;margin:0}
.respec-seo-example .table-wrap{overflow-x:auto;max-width:100%}
.respec-seo-example table{min-width:280px;font-variant-numeric:tabular-nums}
.respec-seo-example .datatable th,.respec-seo-example .datatable td{font-size:.74rem;padding:.38rem .3rem}
.respec-seo-example .btn{margin-top:auto;min-height:44px;white-space:normal;line-height:1.4}
#respec-example-feedback{border-left:3px solid #b89a63;padding:.5rem .75rem;background:#243139}
@media(max-width:1100px){.respec-seo-grid{grid-template-columns:1fr}}
@media(max-width:520px){.respec-seo-example{padding:.7rem}.respec-seo-grid{gap:.55rem}}

/* Source-attributed soft caps knowledge base with strict, accessible point-gap UI. */
.soft-caps-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border-radius:12px}
.soft-caps-table-scroll:focus-visible{outline:2px solid #e6c285;outline-offset:3px}
.soft-caps-table .datatable{width:100%;min-width:770px}
.soft-caps-table td,.soft-caps-table th{vertical-align:top;line-height:1.48}
.soft-caps-table td:nth-child(3){white-space:nowrap;color:#efd29e;font-variant-numeric:tabular-nums}
.soft-caps-table td:last-child{min-width:270px;font-size:.86rem}
.soft-caps-interactive .soft-caps-form{display:flex;align-items:end;flex-wrap:wrap;gap:.75rem;margin:1rem 0}
.soft-caps-interactive .soft-caps-form .field{min-width:170px;flex:1}
.soft-caps-interactive .soft-caps-form button{min-height:44px}
.soft-caps-interactive .results{margin:.5rem 0 1rem}
.soft-caps-interactive .results h3{margin:.2rem 0 .5rem;color:#ecd097;font-size:1.1rem}
.soft-caps-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.soft-caps-notes article{border:1px solid #425960;border-radius:10px;background:#1b272e;padding:.9rem}
.soft-caps-notes h3{margin:0 0 .55rem;color:#efd19b;font-size:1rem}
.soft-caps-notes p{margin:0;line-height:1.7}
@media(max-width:760px){.soft-caps-notes{grid-template-columns:1fr}.soft-caps-interactive .soft-caps-form{flex-direction:column;align-items:stretch}.soft-caps-interactive .soft-caps-form .field{width:100%;min-width:0;flex:auto}.soft-caps-table td:last-child{min-width:220px}}


/* Reviewed Smithing Stone page: original static examples, accessible on
   no-JavaScript/crawler views. All motion is user-triggered and optional. */
.smithing-seo{margin-block:24px}
.smithing-seo>.eyebrow,.smithing-seo-faq>h2{margin-bottom:14px}
.smithing-seo-grid,.smithing-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:20px 0}
.smithing-example-grid article{min-width:0;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}
.smithing-example-grid h3{font-family:Georgia,serif;font-size:clamp(18px,2vw,22px);line-height:1.3;margin:0 0 12px;color:var(--text)}
.smithing-example-grid article p{line-height:1.65;font-size:14px;margin:0 0 14px}
.smithing-example-grid article strong{color:#f5dda7}
.smithing-example-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.smithing-example-table{min-width:355px;font-variant-numeric:tabular-nums}
.smithing-example-table caption{text-align:left;color:var(--muted);font-size:12px;padding:6px 0 12px}
.smithing-example-table th,.smithing-example-table td{padding:9px 10px}
.smithing-example-table th:first-child{text-align:left;min-width:155px}
.smithing-seo-faq h3{margin:24px 0 8px;font-size:17px}
.smithing-seo-faq p{line-height:1.7;margin:0 0 12px}
@media(max-width:740px){.smithing-example-grid{grid-template-columns:1fr}.smithing-example-grid article{padding:16px}}


/* Existing indexable Equip Load page: source-scoped Endurance planner,
   original no-JavaScript examples, no third-party assets or animations. */
.endurance-target-panel{margin:20px 0 28px;min-width:0}
.endurance-target-panel>p{max-width:900px;line-height:1.7}
.endurance-target-inputs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:14px;margin:22px 0}
.endurance-target-inputs .field{margin:0}
.endurance-target-inputs .btn{min-height:46px}
.endurance-target-results{border:1px solid var(--line);border-radius:12px;padding:18px;background:var(--panel2);margin:16px 0}
.endurance-target-results[hidden]{display:none!important}
.endurance-target-results .metric-grid{margin-top:0}
.endurance-target-results .metric strong{font-size:clamp(17px,2.5vw,24px);overflow-wrap:anywhere;line-height:1.4}
#endurance-target-feedback[data-state=error]{color:var(--danger)}
.endurance-examples{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}
.endurance-examples h3{font-family:Georgia,serif;font-size:clamp(20px,2.5vw,25px);line-height:1.25}
.endurance-examples p{max-width:930px;line-height:1.7}
.endurance-example-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin:16px 0}
.endurance-example-table{min-width:900px;font-variant-numeric:tabular-nums}
.endurance-example-table th,.endurance-example-table td{text-align:left;vertical-align:top;padding:12px}
.endurance-example-table caption{text-align:left;color:var(--muted);font-size:12px;padding:6px 0 12px}
.endurance-example-table td:nth-child(4){min-width:210px}
.endurance-example-table td:nth-child(5){min-width:230px}
@media(max-width:850px){.endurance-target-inputs{grid-template-columns:1fr 1fr}.endurance-target-inputs button{grid-column:1 / -1}}
@media(max-width:570px){.endurance-target-inputs{grid-template-columns:1fr}.endurance-target-inputs button{grid-column:auto}.endurance-target-results .metric-grid{grid-template-columns:1fr}}


/* Single-URL Build target RL125/150/200 budget. No animation or API. */
.build-target-budget{min-width:0}
.build-target-budget .field{max-width:220px;margin:14px 0}
.build-target-budget .workbench-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.build-target-budget .workbench-actions button{min-height:44px}
.build-target-budget .metric-grid{margin:16px 0}
.build-target-budget .metric strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:clamp(17px,2vw,22px)}
.build-target-budget>#build-target-rune-link{margin-top:10px}
#build-target-summary[hidden]{display:none!important}
.build-target-budget-reference{margin:20px 0;min-width:0}
.build-target-budget-reference h3{font:600 clamp(18px,2vw,23px)/1.3 Georgia,serif;margin:24px 0 10px}
.build-target-budget-reference p{max-width:930px;line-height:1.7}
.build-target-budget-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.build-target-budget-table{min-width:590px;font-variant-numeric:tabular-nums}
.build-target-budget-table th,.build-target-budget-table td{padding:11px 14px;text-align:left}
.build-target-budget-table th:first-child{min-width:135px}
.build-target-budget-table caption{text-align:left;font-size:12px;color:var(--muted);padding:10px 0}
@media(max-width:570px){.build-target-budget .workbench-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.build-target-budget .workbench-actions button{padding-inline:4px;font-size:13px}}


/* Explicit portable Build JSON workflow, on the existing indexed Build page. */
.build-portable-json{padding:20px 0 12px;margin:20px 0 12px;border-top:1px solid var(--line);min-width:0}
.build-portable-json h3{font:600 clamp(19px,2.1vw,23px)/1.3 Georgia,serif;margin:0 0 12px}
.build-portable-json p{line-height:1.7}
.build-portable-json .field{min-width:0;max-width:520px;margin:15px 0}
.build-portable-json input[type=file]{display:block;width:100%;max-width:100%;min-height:44px;margin-top:8px;overflow:hidden}
.build-portable-json .workbench-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.build-portable-json .workbench-actions button{min-height:44px}
#build-portable-feedback[data-state=error]{color:var(--danger)}
@media(max-width:570px){.build-portable-json .workbench-actions{display:grid;grid-template-columns:1fr}.build-portable-json .workbench-actions button{width:100%}}


/* One-file Build + equipped slots backup: works with existing two modules. */
.build-combined-backup{border-top:1px solid var(--line);margin-top:24px;padding-top:24px;min-width:0}
.build-combined-backup .field{max-width:550px}
.build-combined-backup input[type=file]{display:block;min-height:44px;width:100%;max-width:100%;overflow:hidden;margin-top:8px}
.build-combined-backup .workbench-actions{display:flex;flex-wrap:wrap;gap:10px}
.build-combined-backup .workbench-actions button{min-height:44px}
#build-combined-status[data-state=error]{color:var(--danger)}
@media(max-width:570px){.build-combined-backup .workbench-actions{display:grid;grid-template-columns:1fr}.build-combined-backup .workbench-actions button{width:100%}}


/* Source-scoped Build → Equip Load handoff: hidden by default, opt-in only. */
#draft-build-equipment[hidden]{display:none!important}
.equip-draft-handoff{margin:0 0 20px;min-width:0}
.equip-draft-handoff p{line-height:1.7;max-width:920px}
.equip-draft-handoff .metric-grid{margin:16px 0}
.equip-draft-handoff .metric strong{font-size:clamp(17px,2vw,25px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.equip-draft-handoff .workbench-actions{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}
.equip-draft-handoff .workbench-actions button{min-height:44px}
#equip-draft-feedback[data-state=error]{color:var(--danger)}
@media(max-width:570px){.equip-draft-handoff .workbench-actions{display:grid;grid-template-columns:1fr}.equip-draft-handoff .workbench-actions button{width:100%}}


/* Original, source-free equip-weight action targets on existing Equip URL. */
.equip-weight-goals{margin-block:22px;min-width:0}
.equip-weight-goals h2{max-width:850px}
.equip-weight-goals p{max-width:950px;line-height:1.7}
.equip-goals-table-scroll,.equip-goal-examples-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin:16px 0}
.equip-goals-table,.equip-goals-example-table{min-width:770px;font-variant-numeric:tabular-nums}
.equip-goals-table th,.equip-goals-table td,.equip-goals-example-table th,.equip-goals-example-table td{padding:11px 13px;text-align:left;vertical-align:middle}
.equip-goals-table th:first-child,.equip-goals-example-table th:first-child{min-width:165px}
.equip-goals-table td[colspan]{color:var(--muted);text-align:left}
.equip-goals-table caption,.equip-goals-example-table caption{text-align:left;color:var(--muted);font-size:12px;padding:8px 0 12px}
.equip-goals-examples{margin-top:26px;border-top:1px solid var(--line);padding-top:18px}
.equip-goals-examples h3{font:600 clamp(19px,2.3vw,23px)/1.35 Georgia,serif;margin:21px 0 10px}
#equip-goals-feedback[data-state=error]{color:var(--danger)}
#equip-goals-feedback[data-state=source-only]{font-weight:600}
@media(max-width:570px){.equip-weight-goals{padding:17px}.equip-goals-table,.equip-goals-example-table{min-width:780px}}

/* Class Optimizer: legible side-by-side objectives, touch-friendly actions.
 * Transitions are not required to read results and honor reduced motion. */
.class-sort-field{margin-top:18px;max-width:430px}
.class-sort-field select{width:100%}
.class-rune-table{max-width:100%;margin-top:18px;overscroll-behavior-x:contain}
.class-rune-table table{min-width:740px}
.class-rune-table td,.class-rune-table th{font-variant-numeric:tabular-nums;white-space:nowrap}
.class-rune-table th[scope="row"]{color:var(--text)}
.class-rune-table tbody tr:first-child{background:#263831}
.class-rune-table tbody tr:hover{background:#202c32}
.class-plan-link{display:inline-flex;min-height:44px;min-width:60px;align-items:center;justify-content:center;padding:4px 8px;border:1px solid #806b48;border-radius:8px;color:var(--gold);text-decoration:none;font-weight:700}
.class-plan-link:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
body[data-page="class"] .tool-layout > .panel{min-width:0}
body[data-page="class"] .class-rune-table{display:block;width:100%;min-width:0;max-width:100%;overflow-x:auto}
body[data-page="class"] .class-rune-table table{width:max-content;min-width:760px}
.class-rune-example-table{min-width:620px}
.class-rune-example-table td,.class-rune-example-table th{vertical-align:middle}
.class-rune-example-table .btn{min-height:44px;min-width:100px;white-space:nowrap}
@media(max-width:570px){.class-sort-field{max-width:100%}.class-rune-table{margin-inline:0}.class-rune-table table{min-width:760px}}

/* Respec-only editing workbench. No animation or network dependency. */
body[data-page="respec"] .respec-quick-edit{margin:18px 0 24px}
body[data-page="respec"] .respec-quick-edit > p{max-width:840px;line-height:1.6}
body[data-page="respec"] .respec-helper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
body[data-page="respec"] .respec-helper-item{min-width:0;border:1px solid var(--line);border-radius:12px;padding:18px;background:#0e171e}
body[data-page="respec"] .respec-helper-item h3{margin:0 0 10px;font-size:17px;line-height:1.35}
body[data-page="respec"] .respec-helper-item .note{min-height:46px;line-height:1.6}
body[data-page="respec"] .respec-helper-item .btn.alt{margin:2px 0 0}
body[data-page="respec"] .respec-helper-item .field{min-width:0}
body[data-page="respec"] .respec-helper-item select,body[data-page="respec"] .respec-helper-item input{width:100%}
@media(max-width:700px){
 body[data-page="respec"] .respec-helper-grid{grid-template-columns:1fr}
 body[data-page="respec"] .respec-helper-item{padding:15px}
 body[data-page="respec"] .respec-helper-item .note{min-height:0}
}

/* Compact missing-stone checklists: readable without CSV or clipboard access. */
body[data-page="upgrade"] .smithing-missing-copy{min-width:0}
body[data-page="upgrade"] .smithing-missing-copy p{line-height:1.65}
body[data-page="upgrade"] .smithing-missing-copy details{margin-top:14px}
body[data-page="upgrade"] .smithing-missing-copy textarea{display:block;width:100%;max-width:100%;box-sizing:border-box;min-height:155px;height:auto;resize:vertical;padding:14px;margin-top:8px;line-height:1.55;font-size:13px;white-space:pre-wrap}
body[data-page="upgrade"] .smithing-missing-copy .workbench-actions{margin:14px 0 6px}
body[data-page="upgrade"] .smithing-missing-copy button:disabled{opacity:.45;cursor:not-allowed;transform:none}


/* BUILD LAB 2026 visual system: CSS-only finishes, no network or game data. */
:root{
 --ui-edge:var(--line);
 --ui-edge-focus:var(--gold);
 --ui-ink:var(--text);
 --ui-quiet:var(--muted);
 --ui-ease:cubic-bezier(.22,1,.36,1);
 --ui-fast:180ms;
 --ui-normal:240ms;
}
body{
 background:radial-gradient(ellipse 75% 26% at 90% 0%,rgba(76,92,76,.24),transparent 74%),
 radial-gradient(ellipse 60% 37% at 0% 68%,rgba(32,61,60,.15),transparent 80%),#10161d;
}
.site-header{border-bottom-color:#45534b;background:rgba(13,19,24,.96)}
.site-header .brand-mark{transition:border-color var(--ui-fast),box-shadow var(--ui-fast)}
.site-header .brand:hover .brand-mark{border-color:#edc98e;box-shadow:0 0 0 5px rgba(224,180,109,.11)}
.site-header .nav a.active{position:relative;color:#f0d29d}
.site-header .nav a.active:after{content:'';height:2px;background:#d8ad6c;position:absolute;left:0;right:0;bottom:0;border-radius:3px}
body[data-page="home"] .hero-home{border-bottom:1px solid rgba(218,183,120,.14);padding-bottom:30px}
body[data-page="home"] .hero-inner{position:relative}
body[data-page="home"] .hero-inner .eyebrow{display:inline-flex;align-items:center;gap:9px}
body[data-page="home"] .hero-inner .eyebrow:before{content:'';width:21px;height:1px;background:#dabb83;flex:none}
body[data-page="home"] .hero-inner h1{letter-spacing:-.043em;text-wrap:balance}
body[data-page="home"] .hero-inner h1 em{text-shadow:0 10px 35px rgba(205,150,73,.16)}
body[data-page="home"] .hero-visual{pointer-events:none}
body[data-page="home"] .hero-ring{backface-visibility:hidden}
body[data-page="home"] .hero-ring.ring-outer{
 animation:ui-orbit-outer 36s linear infinite;
 border-color:rgba(228,190,119,.53);
 box-shadow:0 0 0 25px rgba(234,192,122,.04),0 0 0 61px rgba(234,192,122,.025);
}
body[data-page="home"] .hero-ring.ring-inner{animation:ui-orbit-inner 48s linear infinite}
body[data-page="home"] .hero-ring.ring-outer:after{
 content:'';position:absolute;left:50%;top:-4px;width:7px;height:7px;
 transform:translateX(-50%);border-radius:50%;background:#f6d69b;
 box-shadow:0 0 0 5px rgba(224,180,109,.12),0 0 14px rgba(246,214,155,.24);
}
body[data-page="home"] .hero-point{border-color:rgba(232,195,126,.46);background:rgba(22,32,36,.95)}
@keyframes ui-orbit-outer{from{transform:rotate(-16deg)}to{transform:rotate(344deg)}}
@keyframes ui-orbit-inner{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}
/* One visual grammar for reviewed and exploratory tool cards. */
body[data-page="home"] .tool-card{
 border:1px solid #3a4947;border-radius:15px;
 background:linear-gradient(155deg,#1b292a 0%,#172127 52%,#151d24 100%);
 box-shadow:inset 0 1px 0 rgba(245,214,158,.045)!important;
 min-width:0;isolation:isolate;
 transition:transform var(--ui-normal) var(--ui-ease),border-color var(--ui-normal),background-color var(--ui-normal),box-shadow var(--ui-normal);
}
body[data-page="home"] .tool-card:before{
 content:'';position:absolute;left:22px;right:22px;top:0;height:2px;
 background:linear-gradient(90deg,rgba(232,195,128,.92),rgba(232,195,128,0));
 opacity:.54;transform-origin:left center;transform:scaleX(.65);
 transition:transform var(--ui-normal) var(--ui-ease),opacity var(--ui-normal);
}
body[data-page="home"] .tool-card .tool-icon{color:#d6b681;font-size:11px}
body[data-page="home"] .tool-card h3{text-wrap:balance}
body[data-page="home"] .tool-card p{font-size:13px;line-height:1.75}
body[data-page="home"] .tool-card .arrow{color:#e7c68c;margin-top:auto}
body[data-page="home"] .home-research .tool-card{
 background:linear-gradient(155deg,#19232a,#151d24);
 border-color:#344047;
}
body[data-page="home"] .home-research .tool-card:before{opacity:.24}
@media(hover:hover) and (pointer:fine){
 body[data-page="home"] .tool-card:hover{
  transform:translateY(-3px);border-color:#ad9063;
  box-shadow:0 12px 30px rgba(3,7,9,.19),inset 0 1px 0 rgba(245,214,158,.075)!important;
 }
 body[data-page="home"] .tool-card:hover:before{transform:scaleX(1);opacity:1}
}
body[data-page="home"] .tool-card:focus-visible{
 outline:3px solid #eac784;outline-offset:4px;transform:none;
}
body[data-page="home"] .hero-actions .btn{min-height:48px}
.home-feature .feature-stats>div{background:linear-gradient(145deg,#202f2e,#19252a);border-color:#42524d}
.home-feature .feature-stats strong{font-variant-numeric:tabular-nums}
/* Calculation workbench: controls first, readable outcomes second. */
main .tool-layout>.panel{min-width:0}
main .tool-layout>.panel:first-child{
 border-color:#41504e;border-top:2px solid #8b7655;
 background:linear-gradient(156deg,#1b282b,#17212a 55%,#151d25);
}
main .tool-layout>.panel.results{
 position:relative;border:1px solid #4d665d;border-top:2px solid #b69b6b;
 background:linear-gradient(150deg,#293b34 0%,#1e2f31 53%,#182328 100%);
}
main .tool-layout>.panel.results:before{
 content:'';position:absolute;top:14px;right:16px;width:45px;height:45px;
 border-top:1px solid rgba(229,201,150,.35);border-right:1px solid rgba(229,201,150,.35);
 border-radius:0 10px 0 0;pointer-events:none;
}
main .tool-layout>.panel.results .kpi,
main .tool-layout>.panel.results .metric strong,
main .respec-results .metric strong{font-variant-numeric:tabular-nums}
main .tool-layout>.panel.results .kpi{color:#f4d89b;overflow-wrap:anywhere}
main .metric-grid .metric{min-width:0}
main .metric-grid .metric strong{overflow-wrap:anywhere}
main :is(.field,.stat-field) input,
main :is(.field,.stat-field) select{
 border-color:#526661;background:#101c22;
 transition:border-color var(--ui-fast),background-color var(--ui-fast),box-shadow var(--ui-fast);
 font-variant-numeric:tabular-nums;
}
main :is(.field,.stat-field) :is(input,select):hover:not(:disabled){border-color:#81917f}
main :is(.field,.stat-field) :is(input,select):focus{
 border-color:#dab777;outline:2px solid rgba(234,198,137,.78);outline-offset:2px;
 box-shadow:0 0 0 4px rgba(222,178,105,.1);background:#14232a;
}
main :is(.field,.stat-field) :is(input,select):disabled{opacity:.65;cursor:not-allowed}
main .btn{
 transition:transform var(--ui-fast) var(--ui-ease),
 background-color var(--ui-fast),border-color var(--ui-fast),filter var(--ui-fast);
}
@media(hover:hover) and (pointer:fine){
 main .btn:not(:disabled):hover{transform:translateY(-2px)}
}
main .btn:not(:disabled):active{transform:translateY(1px);filter:brightness(.94)}
main button:disabled{cursor:not-allowed}
main .feedback{line-height:1.55}
main .ratio #load-bar{transition:width 260ms var(--ui-ease);transform:translateZ(0)}
main .related-tools a{transition:color var(--ui-fast),border-color var(--ui-fast),background-color var(--ui-fast)}
main .related-tools a:hover{background:#26342e}
/* Longer forms retain their content; links into sections remain discoverable. */
main [id]{scroll-margin-top:100px}
main .build-seo-jumps{border-color:#41514d}
main .datatable{font-variant-numeric:tabular-nums}
main .datatable tbody tr{transition:background-color var(--ui-fast)}
@media(max-width:860px){
 body[data-page="home"] .hero-home{padding-bottom:12px}
 body[data-page="home"] .hero-visual{margin-top:0}
 .mobile-menu[open] summary{border-color:#c9a66a;background:#25332c}
 .mobile-menu summary:focus-visible{outline:3px solid #eac784;outline-offset:3px}
}
@media(max-width:570px){
 body[data-page="home"] .hero-home{gap:10px}
 body[data-page="home"] .hero-home h1{font-size:clamp(39px,11.4vw,55px);line-height:1.12}
 body[data-page="home"] .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
 body[data-page="home"] .hero-actions .btn{width:100%;min-width:0}
 body[data-page="home"] .hero-visual{height:145px;margin:0}
 body[data-page="home"] .hero-ring.ring-outer{animation:none}
 body[data-page="home"] .hero-ring.ring-inner{animation:none}
 body[data-page="home"] .tool-card{min-height:170px;padding:20px}
 body[data-page="home"] .tool-card:before{left:20px;right:20px}
 main .tool-layout>.panel{padding:19px 17px}
 main .tool-layout>.panel.results .kpi{font-size:clamp(29px,9vw,42px)}
 main .stat-grid{gap:9px}
 main .stat-field input{min-height:48px}
 main .metric-grid{gap:11px}
 main .metric-grid .metric strong{font-size:clamp(19px,6vw,24px)}
 main [id]{scroll-margin-top:24px}
}
@media(prefers-reduced-motion:reduce){
 body[data-page="home"] .hero-ring.ring-outer,
 body[data-page="home"] .hero-ring.ring-inner{animation:none!important}
 main .ratio #load-bar{transition:none!important}
 body[data-page="home"] .tool-card,
 body[data-page="home"] .tool-card:before{transition:none!important}
}

/* Final Build Planner UX polish: one compact inline mirror + direct, nonsticky section access.
   Scoped to the existing route so other verified calculators keep their layout. */
body[data-page="build"] .build-journey-nav{gap:9px;margin:14px 0 20px}
body[data-page="build"] .build-journey-nav a{
 display:inline-flex;justify-content:center;align-items:center;min-height:46px;
 padding:9px 14px;border:1px solid #53665f;border-radius:10px;
 background:linear-gradient(150deg,#1d2d2c,#1b272e);font-weight:650;font-size:12px;
 color:#e9dab9;text-decoration:none;transition:border-color var(--ui-fast),background-color var(--ui-fast);
}
body[data-page="build"] .build-journey-nav a[href="#build-result-panel"]{
 border-color:#a98a56;background:linear-gradient(140deg,#3c382c,#27312d);color:#f5d99f;
}
body[data-page="build"] .build-journey-nav a:focus-visible,
body[data-page="build"] .build-inline-preview-link:focus-visible,
body[data-page="build"] .build-result-nav a:focus-visible{
 outline:3px solid #e7c584;outline-offset:3px;
}
body[data-page="build"] .build-inline-preview{
 margin:16px 0 24px;padding:17px 19px;min-width:0;
 border:1px solid #68765e;border-top:2px solid #c7a56e;border-radius:13px;
 background:linear-gradient(138deg,#23332d,#1c2a2a 64%,#1a2529);
 box-shadow:inset 0 1px 0 rgba(237,203,145,.09);
}
body[data-page="build"] .build-inline-preview-head{
 display:flex;justify-content:space-between;gap:10px;align-items:center;
}
body[data-page="build"] .build-inline-preview .eyebrow{font-size:10px;letter-spacing:.11em}
body[data-page="build"] .build-preview-note{
 font-size:11px;color:#bac9bd;text-align:right;line-height:1.4;
}
body[data-page="build"] .build-inline-preview-values{
 display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
 gap:14px;margin:16px 0 14px;
}
body[data-page="build"] .build-inline-preview-values>div{min-width:0}
body[data-page="build"] .build-inline-preview-values>div+div{
 border-left:1px solid #4f665a;padding-left:15px;
}
body[data-page="build"] .build-inline-preview .metric-label{
 display:block;margin-bottom:4px;letter-spacing:.085em;font-size:10px;color:#bbcbc1;
}
body[data-page="build"] .build-inline-preview output{
 display:block;min-height:29px;font-size:clamp(20px,2.4vw,29px);
 font-weight:780;color:#f4d59a;font-variant-numeric:tabular-nums;
 letter-spacing:-.03em;line-height:1.15;overflow-wrap:anywhere;
}
body[data-page="build"] .build-inline-preview-link{
 display:inline-flex;align-items:center;justify-content:center;min-height:44px;
 margin-top:1px;padding:9px 14px;border:1px solid #b29a69;border-radius:9px;
 background:#253831;text-decoration:none;font-size:12px;font-weight:750;color:#f1d6a5;
}
body[data-page="build"] .build-inline-preview-link:hover{background:#334337;color:#ffe5b4}
body[data-page="build"] .build-inline-preview p.note{
 margin:10px 0 0;max-width:570px;line-height:1.5;
}
body[data-page="build"] .build-result-nav{
 display:flex;align-items:center;justify-content:space-between;gap:14px;
 margin-bottom:22px;padding-bottom:13px;border-bottom:1px solid #526057;
}
body[data-page="build"] .build-result-nav a{
 display:inline-flex;align-items:center;justify-content:center;min-height:44px;
 color:#f0d2a0;border:1px solid #897858;border-radius:9px;
 padding:8px 12px;text-decoration:none;font-size:12px;font-weight:700;
}
body[data-page="build"] .build-result-nav a:hover{background:#344139;color:#fff0c6}
@media(max-width:650px){
 body[data-page="build"] .build-journey-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 body[data-page="build"] .build-journey-nav a{min-width:0;min-height:46px;padding:8px 6px;text-align:center}
 body[data-page="build"] .build-inline-preview{margin-top:13px;padding:15px}
 body[data-page="build"] .build-inline-preview-head{display:block}
 body[data-page="build"] .build-preview-note{display:block;text-align:left;margin-top:5px}
 body[data-page="build"] .build-inline-preview-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body[data-page="build"] .build-inline-preview-values>div+div{padding-left:10px}
 body[data-page="build"] .build-inline-preview output{font-size:clamp(18px,5.2vw,24px)}
 body[data-page="build"] .build-inline-preview-link{display:flex;width:100%}
 body[data-page="build"] .build-result-nav{align-items:flex-start;flex-direction:column;gap:10px}
 body[data-page="build"] .build-result-nav a{width:100%}
}
@media(prefers-reduced-motion:reduce){
 body[data-page="build"] .build-journey-nav a{transition:none!important}
}


/* Search-visible, accessible route breadcrumbs. Names match BreadcrumbList JSON-LD. */
.seo-breadcrumb{margin:20px 0 0;max-width:100%;color:#b9c8c0}
.seo-breadcrumb ol{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 8px;margin:0;padding:0;list-style:none;max-width:100%}
.seo-breadcrumb li{font-size:12px;line-height:1.6;min-width:0;overflow-wrap:anywhere}
.seo-breadcrumb li+li:before{content:'›';display:inline-block;margin-right:8px;color:#a88e64}
.seo-breadcrumb a{color:#ead1a6;text-decoration:none;text-underline-offset:3px}
.seo-breadcrumb a:hover{text-decoration:underline}
.seo-breadcrumb a:focus-visible{outline:2px solid #f1d39e;outline-offset:3px;border-radius:2px}
.seo-breadcrumb li[aria-current="page"]{color:#b8c7c1}
.seo-breadcrumb+.hero{padding-top:20px}
@media(max-width:570px){
 .seo-breadcrumb{margin-top:13px}
 .seo-breadcrumb ol{gap:2px 7px}
 .seo-breadcrumb li{font-size:11px}
 .seo-breadcrumb+.hero{padding-top:20px}
}


/* Answer-first homepage tool selection: real use cases, no extra routes or scripts. */
body[data-page="home"] .home-intent-guide{margin:0 0 68px;padding:27px 29px}
body[data-page="home"] .home-intent-guide>h2{font:500 clamp(24px,2.9vw,35px)/1.19 Georgia,serif;letter-spacing:-.025em;margin:11px 0 12px}
body[data-page="home"] .home-intent-guide>p{max-width:870px;line-height:1.65}
body[data-page="home"] .home-intent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:20px 0}
body[data-page="home"] .home-intent-grid>div{border:1px solid #45554d;background:#142125;border-radius:12px;padding:18px 17px;min-width:0}
body[data-page="home"] .home-intent-grid h3{font-size:17px;line-height:1.3;margin:0 0 9px;color:#f3dbb1}
body[data-page="home"] .home-intent-grid p{line-height:1.7;font-size:13px;margin:0}
body[data-page="home"] .home-intent-grid a{color:#efd09b;text-decoration:underline;text-decoration-color:#aa956e;text-underline-offset:3px}
body[data-page="home"] .home-intent-grid a:hover{color:#fff1c9}
@media(max-width:900px){body[data-page="home"] .home-intent-grid{grid-template-columns:1fr}}
@media(max-width:570px){
 body[data-page="home"] .home-intent-guide{padding:20px 18px;margin-bottom:45px}
 body[data-page="home"] .home-intent-grid>div{padding:15px}
}


/* OBSIDIAN / ANTIQUE GOLD — approved site-wide palette (2026-11-03).
   One brand gold; reserved green/red indicate validation states.
   CSS-only recolor: no changes to content, math, animation or layout. */
body{
 background:radial-gradient(ellipse 78% 34% at 94% -12%,rgba(214,182,120,.065),transparent 73%),var(--bg);
 color:var(--text);
}
::selection{background:var(--gold);color:var(--bg)}
.site-header{background:rgba(13,16,21,.96);border-bottom-color:var(--line)}
.site-header .brand-mark{border-color:var(--gold);color:var(--gold);box-shadow:0 0 0 5px rgba(214,182,120,.045)}
.site-header .brand:hover .brand-mark{border-color:#E6C994;box-shadow:0 0 0 5px rgba(214,182,120,.08)}
.site-header .nav a{color:#C8C8C2}
.site-header .nav a.active,.site-header .nav a:hover{color:var(--gold)}
.site-header .nav a.active:after{background:var(--gold)}
.header-status{border-color:#57544B;background:#1A1D20;color:#E1DBC9}
.status-dot{background:var(--accent)}
.mobile-menu summary{background:var(--panel);border-color:var(--line);color:var(--text)}
.mobile-menu nav{background:#191D22;border-color:#5B574D;box-shadow:0 14px 35px rgba(0,0,0,.25)}
.mobile-menu[open] summary{background:#292923;border-color:var(--gold)}
.mobile-menu nav a{color:var(--text)}
.site-footer{background:var(--bg);border-top-color:var(--line)}
.site-footer .footer-brand{color:var(--gold)!important}
.site-footer p,.site-footer a{color:var(--muted)}
.hero p,.panel p,.note,.muted,.section-head p{color:var(--muted)}
.eyebrow,.gold{color:var(--gold)}
.pill{border-color:#736448;background:#24241E;color:#E8D7B3}
.panel{background:var(--panel);border-color:var(--line);box-shadow:0 10px 27px rgba(0,0,0,.10)}
main .tool-layout>.panel:first-child{
 background:linear-gradient(155deg,#202328,#191D22 62%,#171B20);
 border-color:var(--line);border-top:2px solid #9D875D;
}
main .tool-layout>.panel.results,main .panel.results{
 background:linear-gradient(154deg,#262823,#1D2021 58%,var(--panel));
 border-color:#5A5347;border-top:2px solid var(--gold);
}
main .tool-layout>.panel.results:before{border-color:rgba(214,182,120,.24)}
main .tool-layout>.panel.results .kpi,main .kpi{color:var(--gold)}
main .metric-label{color:#C2C5BC}
main .metric-grid .metric{border-top-color:#4C4C46}
main .feedback{color:var(--accent)}
main .feedback.bad,main [data-state="error"],main [aria-invalid="true"] + .feedback{color:var(--danger)}
main .btn,.hero-actions .btn{background:var(--gold);border-color:var(--gold);color:#15171A}
main .btn.alt,.hero-actions .btn.alt{
 background:#25282A;border-color:#74664D;color:#E9CD98;
}
main .btn:not(:disabled):hover,.hero-actions .btn:not(:disabled):hover{filter:brightness(1.06)}
main .btn.alt:not(:disabled):hover{background:#2C2E2B;color:#F4DBA8;border-color:var(--gold)}
main :is(.field,.stat-field) :is(input,select),main input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),main select,main textarea{
 background:#13171B;border-color:#555852;color:var(--text);
}
main :is(.field,.stat-field) :is(input,select):hover:not(:disabled){border-color:#988361}
main :is(.field,.stat-field) :is(input,select):focus,
main input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
main select:focus,main textarea:focus{
 background:#191D20;border-color:var(--gold);
 outline:2px solid var(--gold);outline-offset:2px;
 box-shadow:0 0 0 4px rgba(214,182,120,.075);
}
main .table-wrap{border-color:var(--line)}
main .datatable :is(td,th){border-bottom-color:var(--line)}
main .related-tools a{border-color:#56534A;background:#1D2021;color:#DDC594}
main .related-tools a:hover{background:#2B2C26;border-color:var(--gold)}
.safe-banner{background:#1A2721;border-color:#617C69;color:#CAE3D1}
body[data-page="home"] .hero-home{border-bottom-color:rgba(214,182,120,.16)}
body[data-page="home"] .hero-inner h1 em{color:var(--gold)}
body[data-page="home"] .hero-inner .eyebrow:before{background:var(--gold)}
body[data-page="home"] .hero-ring.ring-outer{border-color:rgba(214,182,120,.55)}
body[data-page="home"] .hero-ring.ring-inner{border-color:#A88B58}
body[data-page="home"] .hero-symbol{color:var(--gold);text-shadow:0 0 34px rgba(214,182,120,.22)}
body[data-page="home"] .hero-ring.ring-outer:after{background:#F0D39B;box-shadow:0 0 0 5px rgba(214,182,120,.11),0 0 14px rgba(214,182,120,.19)}
body[data-page="home"] .hero-point{border-color:#76694F;background:#1A1D1F;color:var(--text)}
body[data-page="home"] .tool-card{
 background:linear-gradient(155deg,#202328,#191D22 70%,#171B1F);
 border-color:#444640;box-shadow:inset 0 1px 0 rgba(214,182,120,.04)!important;
}
body[data-page="home"] .home-research .tool-card{background:linear-gradient(155deg,#1C2024,#16191E);border-color:#393D3E}
body[data-page="home"] .tool-card:before{background:linear-gradient(90deg,var(--gold),transparent)}
body[data-page="home"] .tool-card .tool-icon,body[data-page="home"] .tool-card .arrow{color:var(--gold)}
body[data-page="home"] .tool-card p{color:var(--muted)}
@media(hover:hover) and (pointer:fine){
 body[data-page="home"] .tool-card:hover{border-color:#A38A5E}
}
body[data-page="home"] .home-feature .feature-stats>div{background:#1D2224;border-color:#494943}
body[data-page="home"] .home-intent-grid>div{background:#171B20;border-color:#474640}
body[data-page="home"] .home-intent-grid h3{color:#E9D4AC}
body[data-page="home"] .home-intent-grid a{color:var(--gold);text-decoration-color:#8B784F}
body[data-page="build"] .build-inline-preview{
 background:linear-gradient(136deg,#242722,#1D2121 65%,#1A1D21);
 border-color:#706348;border-top-color:var(--gold);
}
body[data-page="build"] .build-inline-preview .eyebrow,
body[data-page="build"] .build-inline-preview output{color:var(--gold)}
body[data-page="build"] .build-inline-preview-values>div+div{border-left-color:#595348}
body[data-page="build"] .build-journey-nav a{
 background:#202326;border-color:#57564E;color:#E0D0AE;
}
body[data-page="build"] .build-journey-nav a[href="#build-result-panel"]{
 background:#2C2B24;border-color:var(--gold);color:#E9D1A1;
}
body[data-page="build"] .build-inline-preview-link,
body[data-page="build"] .build-result-nav a{background:#292A25;border-color:#84724E;color:#EFD6A1}
body[data-page="build"] .build-inline-preview-link:hover,
body[data-page="build"] .build-result-nav a:hover{background:#35332A;color:#FFEDC7}
body[data-page="build"] .build-result-nav{border-bottom-color:#55524B}
body[data-page="respec"] .respec-helper-item,
.soft-caps-notes article{background:#191D22;border-color:#454740}
.seo-breadcrumb a,.seo-breadcrumb li+li:before{color:var(--gold)}
.seo-breadcrumb li[aria-current="page"]{color:var(--muted)}
/* All functional animations retain their existing CSS timing and reduced-motion gates. */


/* Elden Ring Calculator identity — compact readable wordmark across 26 routes.
   Brand text is real HTML for users, assistive tech and static crawlers. */
.site-header .brand{gap:10px;min-width:0;letter-spacing:0}
.site-header .brand .brand-name{
 display:inline-block;min-width:0;max-width:100%;
 font-size:clamp(11px,1.2vw,15px);font-weight:800;letter-spacing:.035em;
 line-height:1.18;white-space:nowrap;color:var(--text);
}
.site-header .brand .brand-name>.gold{font-size:inherit;color:var(--gold);letter-spacing:inherit}
.site-footer .footer-brand{letter-spacing:.035em}
@media(min-width:861px) and (max-width:1120px){
 .site-header .header-inner{gap:10px}
 .site-header .nav{gap:11px}
 .site-header .brand .brand-name{font-size:12px;letter-spacing:0}
}
@media(max-width:480px){
 .site-header .brand .brand-name{font-size:12px;letter-spacing:.015em}
}
