/* Scoped to the two equipment tools; shared database screens retain their layout. */
.d2-tools{--dt-a:#a9dfe9;--dt-b:#f0d3a1}
.d2-tools [hidden]{display:none!important}
.d2-tools .dt-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.d2-tools .dt-heading h1{margin:4px 0 9px;font-size:30px;letter-spacing:.01em}
.d2-tools .dt-heading p:not(.db-kicker){font-size:13px;color:var(--db-muted);margin:0;line-height:1.8}
.dt-heading nav{display:flex;gap:6px;flex-shrink:0;padding:4px;background:#111f2b;border:1px solid var(--db-line);border-radius:7px}
.dt-heading nav>a{display:flex;align-items:center;gap:7px;padding:9px 12px;font-size:12px;color:#bdcdda!important;border-radius:4px;white-space:nowrap}
.dt-heading nav>a[aria-current=page]{background:#284451;color:#e3f2f5!important}
.dt-panel{background:var(--db-panel);border:1px solid var(--db-line);border-radius:8px;padding:20px;margin:0 0 20px;min-width:0}
.d2-tools .dt-panel h2{font-size:18px;margin:0 0 16px;line-height:1.6}
.dt-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.dt-select-label{display:block;font-size:12px;font-weight:600;color:#c4d6df;margin-bottom:8px}
.d2-tools select,.d2-tools input[type=text],.d2-tools input[type=search]{border:1px solid #456074;border-radius:5px;background:#101f2b;color:#e3eff4;font:inherit;min-width:0}
.d2-tools select{width:100%;padding:10px;font-size:13px;min-height:42px}
.dt-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dt-compare-form>.dt-actions{margin-top:16px}
.dt-compare-form .dt-actions>.dt-note{margin-left:auto}
.dt-button,.dt-text-button{cursor:pointer;font:inherit;font-size:12px;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 12px;border:1px solid #42596a;border-radius:5px;background:#1b2b38;color:#d9e7ee!important;line-height:1.5}
.dt-button:hover{background:#2a404e;border-color:#7295a6}
.dt-text-button{background:transparent;border-color:transparent;color:#b9cfdd!important}
.dt-text-button:hover{color:#ecf5f8!important;background:#233441}
.d2-tools .db-button{display:inline-flex;gap:8px;align-items:center;min-height:38px;font-size:12px}
.d2-tools button:focus-visible,.d2-tools a:focus-visible,.d2-tools input:focus-visible,.d2-tools select:focus-visible,.d2-tools summary:focus-visible{outline:2px solid var(--db-cyan);outline-offset:3px}
.d2-tools .dt-note{font-size:12px;line-height:1.8;color:#abc0cf;margin:10px 0 0;overflow-wrap:anywhere}
.dt-note a,.dt-detail-link{color:var(--db-cyan)!important}
.dt-item-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.dt-item-card{display:flex;gap:18px;align-items:center;position:relative;min-width:0;padding:20px;border:1px solid var(--db-line);background:#162733;border-radius:8px}
.dt-item-card--a{border-top:2px solid var(--dt-a)}
.dt-item-card--b{border-top:2px solid var(--dt-b)}
.dt-side{position:absolute;top:12px;right:14px;font-size:12px;font-weight:700;color:var(--dt-a)}
.dt-item-card--b .dt-side{color:var(--dt-b)}
.dt-art{width:90px;height:96px;display:grid;place-items:center;flex-shrink:0;background:#101e29;border-radius:6px}
.dt-art img{width:84px;height:84px;object-fit:contain}
.dt-art>.db-icon{width:30px;height:30px;color:#7393a8}
.dt-item-copy{min-width:0;padding-right:10px}
.d2-tools .dt-item-card h2{font-size:19px;line-height:1.5;margin:6px 0 2px}
.dt-english{font-size:11px;color:#aac0d0;line-height:1.7;margin:0;overflow-wrap:anywhere}
.dt-chips{display:flex;gap:6px;flex-wrap:wrap}
.dt-chips>span{font-size:10px;line-height:1.6;padding:2px 7px;border:1px solid #3d5668;border-radius:4px;color:#c5d9e5}
.dt-chips>.dt-unique{color:#edd4a7;border-color:#6c604c;background:#2b2b26}
.dt-section-heading{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:16px}
.d2-tools .dt-section-heading h2{margin:0}
.dt-compare-filters{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:8px}
.dt-search{display:flex;gap:8px;align-items:center;flex:1;min-width:180px;max-width:420px;border:1px solid #455f72;background:#101f2b;padding:0 12px;border-radius:5px}
.dt-search>.db-icon{color:#a3bfce;flex-shrink:0}
.d2-tools .dt-search>input{border:0;background:transparent;width:100%;padding:11px 0;font-size:12px;min-height:40px}
.dt-checkbox{display:flex;gap:8px;align-items:center;font-size:12px;color:#c3d6e1;min-height:40px;cursor:pointer}
.dt-checkbox input{accent-color:#8ccfdc;width:16px;height:16px}
.dt-compare-filters>.dt-note{margin:0;margin-left:auto;white-space:nowrap}
.dt-table-scroll{overflow-x:auto;max-width:100%;margin:16px 0 0;border:1px solid var(--db-line);border-radius:6px}
.dt-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.7;table-layout:fixed}
.dt-table th,.dt-table td{padding:10px 14px;border-bottom:1px solid #2c4353;text-align:left;vertical-align:middle;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.dt-table thead{background:#223744}
.dt-table thead th{font-size:12px;font-weight:600;width:24%}
.dt-table thead th:first-child{width:28%}
.dt-table td{color:#e3edf2}
.dt-table tbody th[scope=row]{font-weight:400;color:#bed2dd}
.dt-table tr:last-child>td,.dt-table tr:last-child>th{border-bottom:0}
.dt-table .dt-table-group th{background:#1e313e;font-weight:600;font-size:12px;border-top:1px solid #405b6d;border-bottom:1px solid #405b6d;padding:10px 14px;color:#d8e7ee}
.dt-table-group span{margin-left:10px;font-size:10px;font-weight:400;color:#a4bac8}
.dt-table tbody tr:not(.dt-table-group):hover{background:#1b303c}
.dt-table td.dt-delta{font-size:11px;color:#b9ced9}
.dt-col-side{color:var(--dt-a);font-weight:700}
.dt-table thead th:nth-child(3) .dt-col-side{color:var(--dt-b)}
.dt-filter-empty{padding:26px 12px;font-size:13px;color:#b9cedb;text-align:center}
.dt-effects-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.d2-tools .dt-effects-pair h3{font-size:14px;margin:4px 0 12px}
.dt-effects{list-style:none;padding:0;margin:10px 0;font-size:12px}
.dt-effects li{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:10px 0;border-bottom:1px solid #304758}
.dt-effects a{color:#cae8ee!important;font-weight:550}
.dt-effects span{color:#efd7af;font-variant-numeric:tabular-nums}
.dt-effects p{grid-column:1/-1;font-size:12px;line-height:1.8;color:#adc5d2;margin:0}
.dt-detail-link{display:inline-flex;align-items:center;gap:5px;font-size:12px;margin-top:10px;min-height:28px}
.dt-raw>summary{cursor:pointer;font-size:13px;padding:1px 0;color:#c2d6df}
.dt-raw>summary span{font-size:11px;color:#a0bac9;margin-left:12px}
.dt-raw .dt-table{table-layout:auto;min-width:560px}
.dt-raw .dt-table th:first-child{width:60%;max-width:620px}
.dt-raw code{font-size:10px;font-weight:400;overflow-wrap:anywhere}
.dt-overlap{display:flex;align-items:flex-start;gap:8px;border:1px solid #655e48;background:#292c28;color:#e1d6bc;font-size:12px;line-height:1.9;padding:10px 14px;border-radius:5px;margin:0 0 16px;overflow-wrap:anywhere}
.dt-overlap .db-icon{margin-top:3px;flex-shrink:0}
.dt-examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dt-examples>a{position:relative;display:flex;flex-direction:column;padding:16px;background:#132430;border:1px solid #3b5365;border-radius:6px;gap:6px}
.dt-examples>a>div{display:flex;gap:12px;margin-bottom:5px}
.dt-examples img{object-fit:contain;width:50px;height:50px}
.dt-examples small{font-size:11px;color:#a9c1ce}
.dt-examples strong{font-size:13px;font-weight:550;line-height:1.8}
.dt-examples>a>.db-icon{position:absolute;right:14px;bottom:16px}
.dt-planner{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,1fr);gap:20px;align-items:start}
.dt-planner>div{min-width:0}
.dt-plan-bar>label{font-size:12px;color:#b9cedb;display:block;margin-bottom:14px}
.dt-plan-bar input{display:block;width:100%;padding:11px 12px;margin-top:8px;font-size:13px!important;min-height:42px}
.dt-plan-bar .dt-actions .db-button{flex:1}
.dt-loadout-group{padding:8px 16px 16px}
.dt-loadout-group legend{font-size:15px;font-weight:600;color:#dae9ef;padding:0 7px}
.dt-loadout-group legend>span{font-size:10px;font-weight:400;margin-left:10px;color:#a0b7c6}
.dt-slots{display:grid;grid-template-columns:1fr;gap:10px;margin-top:8px}
.dt-slot{display:flex;gap:12px;align-items:center;min-width:0;background:#12222e;border:1px solid #334e61;border-radius:6px;padding:12px}
.dt-slot-art{position:relative;width:56px;height:64px;display:grid;place-items:center;flex-shrink:0}
.dt-slot-art img{width:54px;height:54px;object-fit:contain;position:relative}
.dt-slot-art>.db-icon{color:#7898ab;width:26px;height:26px}
.dt-slot-art.is-filled>.db-icon{display:none}
.dt-slot-picker{flex:1;min-width:0}
.dt-slot-picker>.dt-select-label{font-size:11px;margin-bottom:6px}
.dt-slot-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px;min-height:18px}
.dt-slot-meta>a{font-size:11px;color:var(--db-cyan)!important}
.dt-slot-meta small{font-size:10px;color:#a2bac9}
.dt-slot-meta label{display:flex;gap:6px;align-items:center;font-size:11px;color:#bbd1de;margin-left:auto}
.d2-tools .dt-slot-meta select{width:48px;min-height:30px;padding:3px 6px;font-size:12px}
.dt-remove{background:transparent;border:0;padding:6px;color:#a4becd;cursor:pointer;width:30px;height:36px;flex-shrink:0}
.dt-remove:disabled{opacity:.35;cursor:default}
.dt-set-fill{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 14px}
.dt-set-fill>label{width:100%;font-size:11px;color:#adc3d0}
.dt-set-fill>select,.dt-set-fill>.ts-wrapper{flex:1;min-width:0}
.dt-set-fill>.dt-button{font-size:11px;white-space:nowrap}
.dt-plan-actions{gap:6px}
.d2-tools .dt-status{font-size:12px;color:#b1dce5;min-height:22px;margin:10px 0 20px;line-height:1.9;overflow-wrap:anywhere}
.dt-status a{color:#a4e3f0!important;text-decoration:underline}
.dt-summary{position:sticky;top:94px;max-height:calc(100vh - 112px);overflow:auto;scrollbar-width:thin;margin:0}
.dt-summary[aria-busy=true]{opacity:.6}
.dt-summary-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}
.d2-tools .dt-summary-heading h2{margin:0;font-size:17px}
.dt-summary-heading>span{font-size:11px;color:#a3bdcc}
.dt-summary-heading strong{font-size:17px;color:#dceff3}
.dt-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0;padding-bottom:18px;border-bottom:1px solid #354d5d}
.dt-counts>div{display:flex;flex-direction:column;gap:4px;text-align:center}
.dt-counts strong{font-size:22px;font-weight:600;color:#dcf0f5;font-variant-numeric:tabular-nums}
.dt-counts span{font-size:10px;color:#adc5d2}
.dt-summary-empty{text-align:center;padding:24px 10px 32px;font-size:12px;color:#a6bfce;line-height:1.9}
.dt-summary-empty>.db-icon{width:30px;height:30px;margin-bottom:14px}
.d2-tools .dt-summary-empty h3{font-size:15px;color:#dae9ef;margin:0 0 6px}
.d2-tools .dt-small-heading{font-size:13px;font-weight:600;margin:20px 0 12px;color:#d1e4ed}
.dt-set-progress>div{background:#12232f;border:1px solid #334d60;padding:12px;border-radius:5px;margin-bottom:8px;font-size:12px}
.dt-set-progress>div>strong{float:right;color:#b9dce7;font-variant-numeric:tabular-nums}
.dt-parts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}
.dt-parts>a{display:flex;flex-direction:column;align-items:center;gap:3px;opacity:.4}
.dt-parts>a.is-equipped{opacity:1;background:#233d49;border-radius:4px}
.dt-parts img{object-fit:contain;width:40px;height:40px}
.dt-parts small{font-size:10px;color:#c9dce5}
.dt-summary-items details{border:1px solid #375163;border-radius:6px;margin-bottom:10px;background:#12232f}
.dt-summary-items summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;padding:12px}
.dt-summary-items summary::-webkit-details-marker{display:none}
.dt-summary-items summary img{width:42px;height:42px;object-fit:contain;flex-shrink:0}
.dt-summary-items summary>span{flex:1;min-width:0}
.dt-summary-items summary small{display:block;font-size:10px;color:#9fbacb;line-height:1.6;margin-bottom:3px}
.dt-summary-items summary strong{font-size:13px;color:#dbeaf1;line-height:1.6}
.dt-summary-items summary>.db-icon{width:14px;height:14px;color:#a1bdcc;flex-shrink:0}
.dt-summary-items details[open] summary{border-bottom:1px solid #2d4658}
.dt-summary-body{padding:2px 12px 12px}
.dt-summary-body dl{font-size:11px;margin:8px 0}
.dt-summary-body dl>div{display:flex;gap:12px;justify-content:space-between;padding:5px 0;color:#b3cbd9}
.dt-summary-body dd{margin:0;color:#d6e7ef;font-variant-numeric:tabular-nums;text-align:right}
.dt-saved-row{display:flex;gap:8px;align-items:center;border-bottom:1px solid #334a5b;padding:12px 0}
.dt-saved-row>div{flex:1;min-width:0}
.dt-saved-row strong{display:block;font-size:13px;color:#d2e5ee;overflow-wrap:anywhere}
.dt-saved-row small{display:block;color:#9fb9ca;font-size:10px;margin-top:5px}
.dt-saved-row button{font-size:11px;padding:7px 10px;flex-shrink:0}
.dt-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
/* Tom Select theme uses the same local database tokens. */
.d2-tools .ts-wrapper{padding:0;min-width:0}
.d2-tools .ts-control{background:#101f2b!important;border:1px solid #456074!important;border-radius:5px;padding:11px 12px!important;box-shadow:none!important;min-height:42px;color:#dceaf1!important;font-size:12px;line-height:1.7;gap:4px}
.d2-tools .ts-control>input{color:#dceaf1!important;font-size:12px!important;line-height:1.7!important}
.d2-tools .ts-control>input::placeholder{color:#9ab5c7}
.d2-tools .ts-control>.item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 12px)}
.d2-tools .ts-dropdown{background:#142632;border:1px solid #5a7c91;border-radius:5px;color:#d1e4ee;font-size:12px;box-shadow:0 8px 24px #07111bc0;z-index:40}
.d2-tools .ts-dropdown-content{max-height:260px;scrollbar-width:thin}
.d2-tools .ts-dropdown .option{padding:10px 12px;color:#cbdfe9;line-height:1.7}
.d2-tools .ts-dropdown .active{background:#284956;color:#effaff}
.d2-tools .ts-dropdown .selected{background:#233d4b;color:#c5edf5}
.d2-tools .ts-dropdown .optgroup-header{padding:8px 12px;background:#1d3442;color:#9dc5d6;font-size:10px;font-weight:600}
.d2-tools .ts-dropdown .no-results{padding:12px;color:#bbd1de}
.d2-tools .ts-wrapper.focus .ts-control{border-color:#9adce8!important;outline:2px solid #9adce850;outline-offset:1px}
@media(min-width:1450px){.dt-slots{grid-template-columns:1fr 1fr}.dt-slot{gap:8px;padding:10px}.dt-slot-art{width:44px}.dt-slot-art img{width:44px;height:44px}.dt-remove{width:24px;padding:4px}.dt-slot-picker .ts-control{padding:9px 10px!important}.dt-planner{grid-template-columns:minmax(0,1.9fr) minmax(320px,1fr)}}
@media(max-width:1050px){.dt-heading{flex-wrap:wrap}.dt-planner{grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);gap:14px}.dt-panel{padding:16px}.dt-loadout-group{padding:8px 12px 12px}.dt-slot{padding:10px;gap:8px}.dt-slot-art{width:44px}.dt-slot-art img{width:44px;height:44px}.dt-examples{grid-template-columns:1fr 1fr}.dt-item-card{padding:16px;gap:12px}.dt-art{width:68px;height:80px}.dt-art img{width:64px;height:64px}}
@media(max-width:850px){.dt-planner{grid-template-columns:1fr}.dt-summary{position:static;max-height:none;grid-row:2}.dt-slots{grid-template-columns:1fr 1fr}.dt-slot-art{width:36px}.dt-slot-art img{width:36px;height:36px}.dt-remove{width:24px;padding:3px}}
@media(max-width:760px){.d2-tools .dt-heading{gap:15px;margin-bottom:18px}.d2-tools .dt-heading h1{font-size:25px}.dt-heading nav{width:100%;justify-content:center}.dt-heading nav>a{flex:1;justify-content:center;min-height:40px}.dt-panel{padding:14px;margin-bottom:16px}.dt-picker-grid{grid-template-columns:1fr;gap:14px}.dt-compare-form .dt-actions>.dt-note{width:100%;margin:0}.dt-item-pair{gap:10px;margin-bottom:16px}.dt-item-card{display:block;padding:14px 10px}.dt-art{width:64px;height:68px;margin-bottom:10px;background:transparent}.dt-art img{width:64px;height:64px}.d2-tools .dt-item-card h2{font-size:16px}.dt-item-copy{padding:0}.dt-item-card .dt-note{font-size:11px}.dt-chips>span{font-size:9px;padding:2px 5px}.dt-section-heading{align-items:flex-start;flex-wrap:wrap}.dt-section-heading .dt-actions{width:100%}.dt-section-heading .dt-actions>button{flex:1}.dt-compare-filters{gap:6px 12px}.dt-search{max-width:none;width:100%;flex-basis:100%}.dt-compare-filters>.dt-note{margin-left:auto}.dt-table{min-width:590px}.dt-table th,.dt-table td{padding:9px 11px;font-size:11px}.dt-table thead th:first-child{width:24%}.dt-table thead th:last-child{width:28%}.dt-effects-pair{grid-template-columns:1fr;gap:24px}.dt-examples{grid-template-columns:1fr}.dt-examples>a{display:grid;grid-template-columns:112px 1fr;gap:4px 10px;padding:12px}.dt-examples>a>div{grid-row:1/3;margin:0;align-self:center}.dt-examples>a small{align-self:end}.dt-examples>a strong{padding-right:18px}.dt-slots{grid-template-columns:1fr}.dt-loadout-group{padding:8px 10px 10px}.dt-slot-art{width:44px}.dt-slot-art img{width:44px;height:44px}.dt-slot{gap:10px;padding:10px}.dt-slot-picker .ts-control{padding:10px!important}.dt-summary{margin-bottom:18px}.dt-saved-row{gap:5px}.dt-plan-actions>.db-button{width:100%;justify-content:center}.dt-plan-actions>.dt-button{flex:1}.dt-plan-actions>.dt-text-button{width:100%}.dt-set-fill>.dt-button{padding:8px}.dt-summary-items summary strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.d2-tools *{transition:none!important;scroll-behavior:auto!important}}
.d2-tools .dt-level-heading{font-size:12px;color:#c7dfe8;margin:18px 0 8px;font-weight:600}
.dt-overview-jump{display:none}
.dt-group-nav{display:flex;gap:8px;margin:0 0 22px;flex-wrap:wrap}
.dt-group-nav a{display:flex;align-items:center;justify-content:center;flex:1;min-height:38px;background:#142632;border:1px solid #3a5568;border-radius:5px;color:#c5dbe6!important;font-size:12px}
.dt-group-nav a:hover{background:#2a4654}
.dt-loadout-group,#loadout-overview{scroll-margin-top:95px}
@media(max-width:850px){.dt-overview-jump{display:inline-flex}.dt-plan-bar .dt-actions{gap:7px}.dt-plan-bar .dt-actions>.db-button{flex-basis:100%}.dt-plan-bar .dt-actions>.dt-button{flex:1}.dt-group-nav{margin-bottom:20px}}
.dt-scroll-hint{display:none}
@media(max-width:760px){.dt-parameters .dt-table{min-width:440px}.dt-parameters .dt-table thead th:first-child{width:110px}.dt-parameters .dt-table thead th:nth-child(2),.dt-parameters .dt-table thead th:nth-child(3){width:90px}.dt-parameters .dt-table thead th:last-child{width:150px}.dt-scroll-hint{display:block;margin-top:4px}}
