.bonus-back{display:inline-block;color:#a8c8ee;font-size:.84rem;text-underline-offset:3px;margin-bottom:9px}.bonus-lead{margin:0 0 12px;color:#b8c5d9;font-size:.9rem}.bonus-layout{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(300px,1.05fr);max-width:940px;gap:14px;align-items:start}.bonus-panel{padding:16px}.bonus-panel h2{font-size:1.05rem;margin:0 0 12px;display:flex;align-items:center;gap:7px;color:#ffe29a}.bonus-field{display:block;margin-bottom:11px;font-size:.9rem}.bonus-field>span{display:block;margin-bottom:5px;font-weight:700}.bonus-control{display:block;width:100%;height:38px;border:1px solid #53617a;border-radius:8px;background:#0c1420;color:#edf2fb;font:inherit;padding:7px 10px}.bonus-control:focus-visible{outline:2px solid #e4b84f;outline-offset:2px}.bonus-field small{display:block;font-size:.76rem;color:#aab8cd;margin-top:6px}.bonus-base{display:flex;justify-content:flex-start;gap:14px;align-items:baseline;border-top:1px solid #344158;border-bottom:1px solid #344158;padding:6px 0;margin-bottom:11px;font-size:.83rem;color:#b8c5d9}.bonus-base output{font-size:1.3rem;font-weight:800;color:#edf2fb}.bonus-actions{display:flex;flex-wrap:wrap;gap:8px}.bonus-actions button{font:inherit;font-size:.8rem;border:1px solid #566883;border-radius:7px;background:#23314a;color:#edf2fb;padding:6px 10px;cursor:pointer}.bonus-actions .bonus-example{color:#ffe29a;border-color:#776033;background:#332a1a}.bonus-error{color:#ffb4b4;font-size:.8rem;margin:0 0 10px}.bonus-error:empty{display:none}.bonus-empty{padding:12px 2px;color:#bac6d9;font-size:.88rem;line-height:1.8}.bonus-empty strong{color:#edf2fb;font-size:1rem}.bonus-empty p{margin:9px 0 0}.bonus-result-heading{display:flex;justify-content:flex-start;gap:12px;align-items:baseline;font-size:.9rem}.bonus-result-heading>strong{font-size:.8rem;background:#332a1a;color:#ffe29a;border:1px solid #6d5830;border-radius:6px;padding:3px 8px;white-space:nowrap}.bonus-result-heading b{color:#ffe29a;font-size:1.3rem;margin-left:5px}.bonus-match-note{font-size:.79rem;color:#b8c5d9;margin:8px 0}.bonus-table{border-collapse:collapse;width:100%;max-width:350px;table-layout:fixed;font-size:.88rem}.bonus-table th,.bonus-table td{padding:7px 9px;border-bottom:1px solid #344158;text-align:right}.bonus-table th{font-size:.75rem;font-weight:650;color:#aab8cd;background:#182234}.bonus-table th:first-child,.bonus-table td:first-child{text-align:left}.bonus-table td strong{color:#ffe29a;font-size:1.13rem}.bonus-formula{margin-top:12px;padding:11px 16px;color:#b8c5d9;font-size:.82rem}.bonus-formula summary{color:#ffe29a;cursor:pointer;font-weight:700}.bonus-formula p{overflow-wrap:anywhere;line-height:1.8}.bonus-rules{padding-left:20px;line-height:1.9}.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}.tips-entry+.tips-entry{border-top:1px solid #344158;padding-top:20px;margin-top:20px}.tips-entry p{color:#b8c5d9;font-size:.87rem;line-height:1.7}@media(max-width:740px){.bonus-layout{grid-template-columns:1fr}.bonus-panel{padding:14px}.bonus-result-heading{flex-wrap:wrap}.bonus-table td strong{font-size:1rem}}
.bonus-picker{position:relative}.bonus-picker-trigger{display:flex;align-items:center;gap:7px;text-align:left;cursor:pointer;white-space:nowrap}.bonus-picker-trigger>span:not(.bonus-chevron){overflow:hidden;text-overflow:ellipsis}.bonus-picker .weapon-icon{width:18px;height:18px;flex:none}.bonus-chevron{margin-left:auto;color:#aab8cd}.bonus-picker-menu{position:absolute;z-index:100;top:calc(100% + 5px);left:0;min-width:100%;width:max-content;max-width:min(390px,85vw);max-height:350px;overflow-y:auto;padding:5px;border:1px solid #53617a;border-radius:9px;background:#101827;box-shadow:0 12px 30px #0009}.bonus-picker-menu[hidden],.bonus-field select[hidden]{display:none}.bonus-picker-group{font-size:.72rem;font-weight:800;color:#aab8cd;padding:8px 8px 4px;border-top:1px solid #30394e}.bonus-picker-menu>div:first-child .bonus-picker-group{border-top:0}.bonus-picker-option{display:flex;align-items:center;gap:7px;width:100%;margin:1px 0;padding:5px 9px;min-height:31px;background:transparent;color:#edf2fb;border:1px solid transparent;border-radius:5px;text-align:left;font:inherit;font-size:.84rem;cursor:pointer}.bonus-picker-option[aria-selected=true]{border-color:#ad8d47;background:#342b1a;color:#ffe29a}.bonus-picker-option:hover,.bonus-picker-option:focus-visible{background:#27364c;outline:1px solid #e4b84f}.bonus-forward{margin-top:20px;padding-top:14px;border-top:1px solid #465169}.bonus-forward>h2{font-size:1.25rem;color:#ffe29a;margin:0 0 8px}.bonus-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bonus-forward-context{font-size:.85rem;color:#b8c5d9;margin:0 0 10px}.bonus-forward-value{display:flex;justify-content:flex-start;align-items:baseline;gap:20px;padding:10px 0;border-top:1px solid #344158;border-bottom:1px solid #344158}.bonus-forward-value>span{font-size:.9rem;color:#b8c5d9}.bonus-forward-value output{font-size:2rem;font-weight:850;color:#ffe29a;line-height:1.3}.bonus-forward-breakdown{color:#b8c5d9;font-size:.83rem;line-height:1.65;overflow-wrap:anywhere}.bonus-source{font-size:.73rem;color:#98a6bc;line-height:1.8;margin-top:14px}.bonus-source a{color:#a8c8ee}

/* Shared compact input row in both calculators. */
.bonus-select-row{display:grid;grid-template-columns:minmax(0,1fr) 98px;gap:10px;align-items:start}.bonus-select-row>.bonus-field{min-width:0}.bonus-select-row .bonus-control{font-size:.84rem}.bonus-field:has(#finalAtk){display:grid;grid-template-columns:78px minmax(0,1fr);column-gap:9px;align-items:center}.bonus-field:has(#finalAtk)>span{margin:0}.bonus-field:has(#finalAtk)>small{grid-column:2;margin-top:4px}#finalAtk{max-width:190px}.bonus-forward-breakdown{margin:10px 0 0}.bonus-formula{max-width:940px}.bonus-forward{max-width:940px}.bonus-table th{white-space:nowrap}.bonus-picker-trigger{gap:5px}@media(max-width:740px){.bonus-layout{grid-template-columns:minmax(0,1fr)}.bonus-table{max-width:350px}}@media(max-width:380px){.bonus-select-row{grid-template-columns:minmax(0,1fr) 83px;gap:7px}.bonus-select-row .bonus-control{padding:7px 8px}.bonus-picker .weapon-icon{width:16px;height:16px}.bonus-table th,.bonus-table td{padding:7px 6px}.bonus-field:has(#finalAtk){grid-template-columns:65px minmax(0,1fr)}}
.bonus-section-heading{max-width:940px;color:#ffe29a;font-size:1.25rem;margin:0 0 10px}.bonus-picker-trigger .bonus-picker-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.bonus-picker-atk{flex:none;color:#ffe29a;font-size:.72rem;margin-left:auto;white-space:nowrap}.bonus-picker-trigger .bonus-chevron{margin-left:2px}.bonus-picker-option .bonus-picker-atk{margin-left:auto}.bonus-atk-row{display:flex;gap:8px;align-items:flex-end}.bonus-atk-row .bonus-field:has(#finalAtk){display:block;flex:1;min-width:75px;margin:0}.bonus-atk-row .bonus-field:has(#finalAtk)>span{margin-bottom:5px}.bonus-atk-row #finalAtk{max-width:100%}.bonus-atk-row .bonus-actions{flex-wrap:nowrap;gap:6px}.bonus-atk-row .bonus-actions button,.bonus-forward-controls .bonus-actions button{height:38px;padding:6px 9px;font-size:.76rem;white-space:nowrap}.bonus-range{display:block;color:#aab8cd;font-size:.74rem;margin-top:5px}.bonus-forward-controls{grid-template-columns:minmax(80px,125px) minmax(80px,125px) auto;align-items:end;gap:9px}.bonus-forward-controls>.bonus-field{margin:0}.bonus-forward-controls .bonus-actions{margin:0}.bonus-table{max-width:395px}.bonus-table th:last-child,.bonus-table td:last-child{width:56px}.bonus-save{border:1px solid #89703d;border-radius:6px;background:#382e1c;color:#ffe29a;padding:7px 11px;font:inherit;font-size:.8rem;cursor:pointer}.bonus-save:hover{background:#4d3e24}.bonus-save-small{font-size:.72rem;padding:4px 7px}.bonus-forward-breakdown{margin-bottom:10px}.bonus-saved{max-width:940px;padding:15px 17px;margin-top:22px}.bonus-saved-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.bonus-saved-heading h2{margin:0;font-size:1.05rem;color:#ffe29a}.bonus-saved-heading>span{font-size:.8rem;color:#aab8cd}.bonus-saved-note{font-size:.75rem;color:#aab8cd;line-height:1.6;margin:8px 0}.bonus-save-status{font-size:.8rem;color:#ffe29a;margin:8px 0}.bonus-save-status:empty{display:none}.bonus-saved-scroll{overflow:auto}.bonus-saved-table{border-collapse:collapse;width:100%;min-width:670px;font-size:.8rem}.bonus-saved-table th,.bonus-saved-table td{padding:8px 7px;border-bottom:1px solid #344158;text-align:right;vertical-align:middle}.bonus-saved-table th{color:#aab8cd;font-size:.73rem;white-space:nowrap}.bonus-saved-table th:first-child,.bonus-saved-table td:first-child,.bonus-saved-table th:nth-child(5),.bonus-saved-table td:nth-child(5){text-align:left}.bonus-saved-name{display:flex;align-items:center;gap:6px;white-space:nowrap}.bonus-saved-name svg{width:18px;height:18px;flex:none}.bonus-saved-table td small{display:block;font-size:.7rem;color:#aab8cd;margin:4px 0 0 24px}.bonus-saved-table textarea{resize:vertical;min-height:36px;width:100%;min-width:150px;font:inherit;padding:7px 8px;border:1px solid #465169;border-radius:6px;background:#0c1420;color:#edf2fb}.bonus-delete{border:1px solid #606b80;color:#c5d0e3;background:#222c3b;border-radius:5px;padding:5px 7px;font:inherit;font-size:.72rem;cursor:pointer}.bonus-saved-table td b{color:#ffe29a}@media(max-width:380px){.bonus-atk-row{flex-wrap:wrap}.bonus-atk-row .bonus-field:has(#finalAtk){flex:1 1 85px}.bonus-atk-row .bonus-actions{gap:4px}.bonus-atk-row .bonus-actions button{padding:6px}.bonus-forward-controls{grid-template-columns:1fr 1fr auto;gap:6px}.bonus-forward-controls .bonus-actions button{padding:6px}}
.bonus-save-small{white-space:nowrap}.bonus-table th:last-child,.bonus-table td:last-child{width:64px}.weapon-calculator-page>main>header .title{font-size:clamp(1.35rem,2.1vw,1.7rem);white-space:nowrap}.weapon-calculator-page>main>header{flex-wrap:wrap;gap:12px;margin-bottom:16px}@media(max-width:600px){.weapon-calculator-page>main>header .title{white-space:normal}}

/* Keep ATK aligned with the weapon name, without field-hint margins. */
.bonus-field .bonus-picker-atk{display:inline-flex;align-items:center;align-self:center;margin-top:0;margin-bottom:0;line-height:1.2;color:#ffe29a}
.bonus-saved-table td:nth-child(2),.bonus-saved-table td:nth-child(3),.bonus-saved-table td:nth-child(4){font-size:1.5rem;font-weight:700;line-height:1.2;white-space:nowrap}
.bonus-patterns{max-width:940px;margin-top:18px;padding:15px 17px}.bonus-pattern-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.bonus-pattern-heading h2{margin:0;color:#ffe29a;font-size:1.05rem}.bonus-pattern-heading>span{font-size:.8rem;color:#aab8cd}.bonus-pattern-filter{display:flex;align-items:center;gap:12px;margin:12px 0;font-size:.85rem}.bonus-pattern-filter>span{white-space:nowrap}.bonus-pattern-filter select{max-width:330px;font-size:.85rem}.bonus-pattern-scroll{overflow-x:auto}.bonus-pattern-table{width:100%;min-width:550px;border-collapse:collapse;font-size:.9rem}.bonus-pattern-table th,.bonus-pattern-table td{padding:7px 10px;border-bottom:1px solid #344158;text-align:right;white-space:nowrap}.bonus-pattern-table th{color:#aab8cd;font-size:.75rem;background:#182234}.bonus-pattern-table th:nth-child(2),.bonus-pattern-table td:nth-child(2){text-align:left}.bonus-pattern-table td:first-child{color:#aab8cd;width:45px}.bonus-pattern-table b{color:#ffe29a;font-size:1.05rem}.bonus-pattern-table small{font-size:.74rem;color:#aab8cd;margin-left:auto;padding-left:12px}.bonus-pattern-more>summary{width:fit-content;margin:15px auto 4px;padding:8px 17px;cursor:pointer;border:1px solid #89703d;border-radius:7px;background:#382e1c;color:#ffe29a;font-size:.83rem}.bonus-pattern-more[open]>summary{margin-bottom:14px}

/* Fixed-width numerals keep bonus values aligned, including 1 and 5. */
.bonus-table td:not(:last-child),.bonus-saved-table td:nth-child(2),.bonus-saved-table td:nth-child(3),.bonus-saved-table td:nth-child(4),.bonus-pattern-table td:not(:nth-child(2)),.bonus-forward-value output,.bonus-result-heading b,.bonus-control[type=number]{font-family:Consolas,"Liberation Mono",Menlo,monospace;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1;letter-spacing:0}
.bonus-table td:first-child{text-align:right}
.bonus-inventory-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end;font-size:.78rem;color:#aab8cd}.bonus-inventory-tools button{background:#23314a;border:1px solid #566883;border-radius:6px;color:#edf2fb;font:inherit;padding:5px 9px;cursor:pointer}.bonus-inventory-tools>span{margin-right:5px}.bonus-assessment{font-size:.8rem;color:#e1d3fa;white-space:nowrap;font-variant-numeric:tabular-nums}.bonus-assessment small,.bonus-saved-table td.bonus-assessment small,.bonus-pattern-table td.bonus-assessment small{display:block;font-size:.72rem;color:#b9c6da;margin:3px 0 0;padding:0}.bonus-table{max-width:none;table-layout:auto;font-size:.83rem}.bonus-table th,.bonus-table td{padding:7px 6px}.bonus-table th{font-size:.68rem}.bonus-table td strong{font-size:1rem}.bonus-table th:last-child,.bonus-table td:last-child{width:auto}.bonus-saved-table{min-width:810px}.bonus-saved-table th:nth-child(5),.bonus-saved-table td:nth-child(5){text-align:right}.bonus-saved-table th:nth-child(6),.bonus-saved-table td:nth-child(6){text-align:left}.bonus-saved-table td.bonus-assessment{font-family:Consolas,"Liberation Mono",Menlo,monospace}.bonus-pattern-table{min-width:730px}.bonus-pattern-table .bonus-saved-name{flex-wrap:wrap}.bonus-pattern-table tr.pattern-owned{background:linear-gradient(110deg,#673d773f,#c8539c33 60%,#8067bf33)}.bonus-pattern-table tr.pattern-calculated{background:linear-gradient(110deg,#a777243d,#e4b84f30)}.bonus-pattern-table tr.pattern-owned.pattern-calculated{background:linear-gradient(110deg,#673d7755,#c8539c44 70%,#8067bf44);box-shadow:inset -4px 0 #e4b84f}.bonus-highlight-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:.76rem;margin:10px 0}.owned-state{color:#efa8e5}.calc-state{color:#ffe29a}.pattern-state{font-size:.65rem;border:1px solid currentColor;border-radius:4px;padding:1px 4px}.bonus-panel:has(.bonus-table){overflow-x:auto}
.bonus-saved-controls{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:12px 0}.bonus-saved-controls>label{display:block;min-width:180px;font-size:.8rem}.bonus-saved-controls>label:first-child{width:310px;max-width:100%}.bonus-saved-controls label>span{display:block;margin-bottom:5px}.bonus-saved-controls .bonus-control{font-size:.82rem}.bonus-saved-controls select[hidden],.bonus-pattern-filter select[hidden]{display:none}.bonus-pattern-filter>.bonus-filter-picker{width:330px;max-width:100%}.bonus-filter-picker .bonus-picker-menu{max-height:350px;max-width:min(390px,85vw)}.bonus-filter-picker .bonus-picker-trigger{font-size:.85rem}.bonus-pattern-filter .bonus-control{max-width:none}
