:root{color-scheme:dark;--bg:#0c1118;--panel:#151c25;--panel2:#1b2530;--line:#34404a;--muted:#a9b5bf;--text:#f2eee4;--gold:#e0b36c;--accent:#87bbaf;--danger:#f7a8a1;--radius:16px;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{--bg:#10161d;--panel:#19222a;--panel2:#202c33;--gold:#dfb16f;--line:#38454b;--muted:#adbcc2;--text:#f5f0e7;--accent:#91c5b5;--radius:14px}
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%}
}
