:root { --ink:#1d2521; --muted:#68736d; --line:#d8ddd9; --line-dark:#bdc6c0; --paper:#f4f6f3; --white:#fff; --green:#174b3b; --green-dark:#10372c; --lime:#d8f879; --small:#fff6d9; --small-strong:#ffe9a3; --large:#eaf3fb; --large-strong:#d5e9f8; --danger:#a83d36; }
* { box-sizing:border-box; }
html { color-scheme:light; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif; font-size:14px; }
button,input,select { font:inherit; }
button { cursor:pointer; }
.topbar { min-height:68px; padding:10px max(12px,calc((100% - 1920px)/2 + 12px)); display:flex; align-items:center; justify-content:space-between; gap:24px; background:var(--green-dark); color:#fff; border-bottom:3px solid var(--lime); }
.brand { display:flex; align-items:center; gap:12px; }
.brand__mark { display:grid; place-items:center; width:40px; height:40px; border:1px solid #54776c; border-radius:5px; color:var(--lime); font-weight:900; letter-spacing:-.05em; }
h1 { margin:0; font-size:20px; letter-spacing:.02em; }
.brand p { margin:3px 0 0; color:#a9beb7; font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
.rule-note { display:flex; align-items:center; gap:4px; color:#e8efeb; font-size:11px; }.rule-note a{padding:7px 9px;border-radius:4px;color:#dce9e3;text-decoration:none}.rule-note a:hover{background:#1b5542;color:var(--lime)}
main { max-width:1920px; margin:auto; padding:14px 10px 32px; }
.sheet-section { overflow:hidden; background:var(--white); border:1px solid var(--line); border-radius:8px; box-shadow:0 3px 14px rgba(25,45,36,.06); }
.sheet-toolbar { min-height:72px; padding:13px 16px; display:flex; align-items:center; justify-content:space-between; gap:18px; border-bottom:1px solid var(--line); }
.toolbar-title{flex:0 1 auto}.toolbar-title>span{display:block;margin-bottom:3px;color:#718078;font-size:8px;font-weight:900;letter-spacing:.15em}
h2 { margin:0; font-size:20px; }
.sheet-toolbar p { margin:5px 0 0; color:var(--muted); font-size:12px; }
.toolbar-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; }
.storage-actions{display:flex;gap:4px}.storage-button{display:inline-flex;align-items:center;justify-content:center;padding:7px 8px;font-size:10px;cursor:pointer}.local-storage-note{padding:3px 7px;border-radius:3px;background:#e8f1fb;color:#315b7b}.local-storage-note b{color:#174f77}
.reset-button{border-color:#d9aaa6;color:#963e38}.reset-button:hover{border-color:#b8645d;background:#fff3f2}
.target-size-switch{display:flex;padding:3px;border:1px solid #bdc9c2;border-radius:5px;background:#f3f6f4}.target-size-switch button{min-width:54px;border:0;border-radius:3px;padding:7px 10px;background:transparent;color:#627069;font-size:11px;font-weight:800}.target-size-switch button[aria-pressed="true"]{background:var(--green);color:#fff;box-shadow:0 1px 3px rgba(20,50,38,.18)}
.global-settings-button{display:flex;min-width:94px;flex-direction:column;align-items:center;padding:5px 9px}.global-settings-button span{font-size:11px}.global-settings-button small{margin-top:2px;color:#8a5a2e;font-size:8px;font-weight:850}
.undead-toggle{display:flex;align-items:center;gap:5px;margin-left:3px;padding:0 8px;border-left:1px solid #c8d0cb;color:#68522f;font-size:10px;font-weight:900;cursor:pointer;white-space:nowrap}.undead-toggle input{width:16px;height:16px;margin:0;accent-color:#9a5b19}.undead-toggle:has(input:checked){border-radius:3px;background:#fff0d7;color:#8b4c0c}
#global-status { color:var(--muted); font-size:11px; }
.primary-button { display:flex; gap:7px; align-items:center; border:0; border-radius:4px; padding:10px 14px; background:var(--green); color:#fff; font-weight:700; white-space:nowrap; }
.primary-button:hover { background:#0f3a2d; }
.secondary-button { border:1px solid #bfc9c3; border-radius:4px; padding:9px 11px; background:#fff; color:#405049; font-weight:700; white-space:nowrap; }
.sheet-help { min-height:34px; display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; padding:6px 16px; background:#f8faf8; border-bottom:1px solid var(--line); color:var(--muted); font-size:10px; }
.sheet-help span { display:flex; align-items:center; gap:6px; }
.sheet-help .regen-assumption{padding:3px 7px;border-radius:3px;background:#fff0dc;color:#7d5627}.regen-assumption b{color:#a35c18}
.dot { width:9px; height:9px; border-radius:2px; display:inline-block; border:1px solid; }
.dot--small { background:var(--small); border-color:#e1ca75; }.dot--large { background:var(--large); border-color:#91b9d7; }
.table-shell { width:100%; overflow-x:auto; position:relative; }
table { border-collapse:separate; border-spacing:0; width:100%; min-width:1320px; table-layout:fixed; }
.col-baseline{width:42px}.col-drag{width:32px}.col-name{width:90px}.col-class{width:58px}.col-level{width:62px}.col-attribute{width:104px}.col-weapon{width:108px}.col-enhance{width:56px}.col-weapon-buff{width:104px}.col-wind-buff{width:84px}.col-transformation{width:88px}.col-speed-toggle{width:52px}.col-range{width:94px}.col-average{width:74px}.col-compare{width:105px}.col-hit{width:58px}.col-dpm{width:74px}.col-monster{width:100px}.col-actions{width:72px}
th { height:48px; padding:7px 6px; position:sticky; top:0; z-index:2; background:#edf1ee; border-right:1px solid var(--line); border-bottom:1px solid var(--line-dark); color:#4e5a54; font-size:11px; line-height:1.35; font-weight:700; text-align:left; }
th:last-child,td:last-child { border-right:0; }
.result-head { text-align:center; }.result-head--target{background:#f8edc6;color:#67551d}.target-large .result-head--target{background:#dfeef8;color:#315873}.result-head--target small{font-size:9px}.result-head--hit{background:#e4f2e9;color:#286044}.result-head--compare{background:#f0ebfa;color:#58457d}.result-head--speed{background:#eaf5ef;color:#255c43}.result-head--monster{padding:4px;background:#f7eee8;color:#764a32}.result-head--monster label{display:block;font-size:9px}.result-head--monster small{display:block;margin-top:1px;font-size:9px}.monster-select{width:100%;margin-top:2px;border:1px solid #d3bbaa;border-radius:3px;background:#fffaf7;color:#633c25;font-size:11px;font-weight:800}.baseline-head{text-align:center;color:#385c4d}
td { height:58px; padding:7px 5px; border-right:1px solid #e3e7e4; border-bottom:1px solid var(--line); background:#fff; vertical-align:middle; }
.scenario-row { transition:opacity .12s,box-shadow .12s; }.scenario-row:hover td:not(.result-cell){background:#fbfcfb}.scenario-row.is-dragging{opacity:.4}.scenario-row.is-calculating .result-cell{color:transparent;position:relative}.scenario-row.is-calculating .result-cell::after{content:'···';color:#849089;position:absolute;inset:0;display:grid;place-items:center}.scenario-row.has-error .result-cell{color:var(--danger);font-size:10px;white-space:normal;line-height:1.25}
.drag-cell { text-align:center; background:#f6f8f6; }.drag-handle { border:0; padding:8px 5px; background:transparent; color:#718079; font-size:17px; line-height:1; cursor:grab; }.drag-handle:active{cursor:grabbing}.drag-handle:disabled{opacity:.25;cursor:not-allowed}
.baseline-cell{text-align:center;background:#f1f7f3}.baseline-radio{width:17px;height:17px;accent-color:var(--green);cursor:pointer}.baseline-radio:disabled{opacity:.3;cursor:not-allowed}
.speed-toggle-head{text-align:center;background:#edf6f0;color:#285d44}.speed-toggle-cell{padding:3px;text-align:center;background:#f4f9f6}.speed-toggle-cell label{display:flex;min-height:42px;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#526159;font-size:10px;font-weight:900;cursor:pointer}.two-stage{width:19px;height:19px;margin:0;accent-color:#b9661e;cursor:pointer}.two-stage:checked+span{color:#a45616}.speed-toggle-cell.is-unavailable{background:#f5f6f5;opacity:.55}.speed-toggle-cell.is-unavailable label{cursor:not-allowed}
.cell-input { width:100%; height:36px; padding:5px 7px; border:1px solid transparent; border-radius:3px; background:transparent; color:var(--ink); outline:none; font-size:14px; font-weight:650; }
.scenario-row select.cell-input,.monster-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:none;padding-right:4px}.scenario-row select.cell-input::-ms-expand,.monster-select::-ms-expand{display:none}
.cell-input:hover { border-color:#cdd4cf; background:#fff; }.cell-input:focus { border-color:var(--green); background:#fff; box-shadow:0 0 0 2px rgba(23,75,59,.1); }
.attribute-cell{background:#f0f7f3;transition:background .15s}.attribute-field{position:relative;display:flex;align-items:center;gap:3px}.attribute-field[hidden]{display:none}.attribute-label{display:flex;flex:0 0 25px;flex-direction:column;align-items:center;justify-content:center;line-height:1}.attribute-label small{color:#415e51;font-size:9px;font-weight:900}.attribute-bonus{margin-top:4px;color:#c23b32;font-size:14px;font-weight:950;font-variant-numeric:tabular-nums}.attribute-bonus.is-estimated{color:#d15b16}.attribute-field input{min-width:0;flex:1;width:31px;padding-left:3px;appearance:textfield;font-size:15px;font-weight:800}.attribute-field input::-webkit-inner-spin-button,.attribute-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.attribute-stepper{position:absolute;top:50%;right:0;z-index:2;display:flex;visibility:hidden;width:24px;flex-direction:column;gap:2px;opacity:0;transform:translateY(-50%);transition:opacity .12s}.attribute-field:has(.weapon-strength-bonus:not(:empty)) .attribute-stepper{right:22px}.attribute-cell:hover .attribute-stepper,.attribute-cell:focus-within .attribute-stepper{visibility:visible;opacity:1}.attribute-step{width:24px;height:18px;padding:0;border:1px solid #8ca99b;border-radius:3px;background:#fff;color:#1c6448;font-size:11px;font-weight:900;line-height:1;cursor:pointer}.attribute-step:hover{border-color:#36775d;background:#e5f3eb}.attribute-step:active{background:#cfe8da;transform:translateY(1px)}.attribute-step:focus-visible{outline:2px solid #3c8265;outline-offset:1px}.weapon-strength-bonus{flex:0 0 auto;color:#c63d32;font-size:14px;font-weight:950;white-space:nowrap}.buff-cell{padding:3px}.buff-options{display:grid;grid-template-columns:1fr 1fr;gap:2px}.buff-options label{display:flex;align-items:center;justify-content:center;gap:1px;min-height:20px;border:1px solid #d7ddd9;border-radius:3px;background:#fff;color:#3e5047;font-size:11px;font-weight:900;cursor:pointer}.buff-options label:has(input:checked){border-color:#4b806d;background:#eaf5ef;color:#174b3b}.buff-options input{width:13px;height:13px;margin:0;accent-color:var(--green)}.buff-options .berserk-option{grid-column:1/-1;color:#913e34}.buff-options .berserk-option:has(input:checked){border-color:#b85b4f;background:#fff0ed;color:#8f3127}.buff-options label.is-unavailable{opacity:.42;cursor:not-allowed}
.attribute-cell.is-estimated-attribute{position:relative;background:#fff4df}.attribute-cell.is-estimated-attribute::after{content:'推估';position:absolute;right:2px;bottom:1px;color:#a45b13;font-size:7px;font-weight:900}
.number-input { padding-left:6px; padding-right:4px; font-size:15px; line-height:1.2; font-weight:800; font-variant-numeric:tabular-nums; }.level.number-input{min-width:0;padding-left:7px;padding-right:7px;appearance:textfield;font-size:16px}.level.number-input::-webkit-inner-spin-button,.level.number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.enhance-input { display:flex; align-items:center; }.enhance-input>span { margin-right:-4px; font-weight:700; color:var(--green); z-index:1; }.enhance-input input { padding-left:7px; }.enhance-input.is-not-applied{position:relative}.enhance-input.is-not-applied::after{content:'不計';position:absolute;right:1px;bottom:-5px;padding:0 2px;border-radius:2px;background:#777;color:#fff;font-size:7px;font-weight:800}.enhance-input.is-not-applied input:disabled{color:#777;opacity:1;text-decoration:line-through;background:#e2e4e3;-webkit-text-fill-color:#777}.enhance-input.is-not-applied>span{color:#777}
.result-cell { padding:6px; text-align:center; font-size:15px; font-weight:850; font-variant-numeric:tabular-nums; white-space:nowrap; }.result-cell--hit { background:#edf7f0; color:#246043; font-size:16px; }
.target-metric-cell{background:var(--small);color:#5c4c18;font-size:15px}.result-average.target-metric-cell{background:var(--small-strong);font-size:18px}.target-large .target-metric-cell{background:var(--large);color:#294e67}.target-large .result-average.target-metric-cell{background:var(--large-strong)}
.damage-range{position:relative}.show-undead-damage .result-head--target{box-shadow:inset 0 3px #c47722}.undead-bonus-active .damage-range::after,.undead-bonus-missing .damage-range::after{position:absolute;right:2px;bottom:1px;font-size:7px;font-weight:900}.undead-bonus-active .damage-range::after{content:'+1～20';color:#9a570f}.undead-bonus-missing .damage-range::after{content:'無加成';color:#8b8580}
.comparison-cell{padding:4px 6px;text-align:center;background:#f7f4fc;color:#5d4b78;font-variant-numeric:tabular-nums;line-height:1.12}.comparison-cell strong{display:block;font-size:13px}.comparison-cell small{display:block;margin-top:3px}.comparison-cell .dpm-percent{display:block;margin-top:2px;font-size:15px;font-style:normal;font-weight:950}.comparison-cell .hit-diff{display:inline-block;padding:2px 5px;border-radius:3px;background:#e1eaf8;color:#173f79;font-size:11px;font-weight:900}.comparison-cell.is-gain strong,.comparison-cell.is-gain .dpm-percent{color:#13704b}.comparison-cell.is-loss strong,.comparison-cell.is-loss .dpm-percent{color:#a6423a}.comparison-cell.is-baseline{font-size:12px;font-weight:800;color:var(--green)}
.metric-cell{padding:5px;text-align:center;background:#f3f8f5;color:#1f5b3e;font-weight:850;font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap}.monster-cell{padding:0;background:#fcf6f2;color:#67442f}.monster-detail-button{width:100%;height:100%;padding:4px 2px;border:0;background:transparent;color:inherit}.monster-detail-button:hover{background:#f7e9df}.monster-detail-button strong,.monster-detail-button em,.monster-detail-button small{display:block}.monster-detail-button strong{font-size:14px}.monster-detail-button em{margin-top:1px;color:#7e5e4b;font-size:9px;font-style:normal;font-weight:700}.monster-detail-button small{margin-top:3px;color:#5f3b26;font-size:13px;font-weight:900}.monster-detail-button:focus-visible{outline:2px solid #a56e4a;outline-offset:-2px}
.actions-cell { position:relative; padding-left:2px;padding-right:2px;white-space:nowrap; text-align:center; }.icon-button { border:1px solid #ccd3ce; border-radius:3px; padding:4px 4px; background:#fff; color:#435049; font-size:8px; line-height:1.1; }.icon-button:hover{border-color:#7e8d84}.delete-button{color:var(--danger)}.row-status{position:absolute;left:2px;right:2px;bottom:1px;color:#2f7256;font-size:7px;font-weight:800;text-align:center;pointer-events:none}
.empty-state { min-height:180px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:7px; color:var(--muted); }.empty-state strong{color:var(--ink)}
.empty-state[hidden] { display:none; }
.mobile-hint { display:none; margin:8px 14px 12px; color:var(--muted); font-size:10px; }
.data-guide{display:grid;grid-template-columns:180px repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--muted)}.data-guide__title{padding:8px 6px}.data-guide__title>span,.data-card>span{color:#7b8982;font-size:8px;font-weight:900;letter-spacing:.14em}.data-guide__title h3{margin:5px 0 4px;color:var(--ink);font-size:18px}.data-guide__title p{margin:0;font-size:9px;line-height:1.5}.data-card{min-width:0;padding:11px 13px;border-top:3px solid;border-radius:5px;background:#f6f8f7}.data-card--known{border-color:#4f9272;background:#f1f8f4}.data-card--estimated{border-color:#d69b2c;background:#fff8e9}.data-card--custom{border-color:#668ab2;background:#f1f6fb}.data-card h4{margin:4px 0 5px;color:var(--ink);font-size:12px}.data-card p{margin:0;color:#56635c;font-size:10px;line-height:1.55}.data-card a,.data-card button{display:inline-block;margin-top:7px;border:0;background:transparent;color:#175b42;font-size:9px;font-weight:900;text-decoration:underline;cursor:pointer}.data-card--estimated button{padding:0;color:#9b5b13}.data-card--custom div{display:flex;gap:12px}.data-card--custom a{color:#315f8c}
.probability-dialog{width:min(760px,calc(100% - 24px));max-height:88vh;padding:0;border:0;border-radius:8px;color:var(--ink);box-shadow:0 20px 70px rgba(10,30,20,.3)}.probability-dialog::backdrop{background:rgba(11,30,22,.62)}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:var(--green-dark);color:#fff}.dialog-head span{color:var(--lime);font-size:9px;font-weight:800;letter-spacing:.15em}.dialog-head h3{margin:5px 0 0;font-size:20px}.dialog-head button{width:34px;height:34px;border:1px solid #57776b;border-radius:50%;background:transparent;color:#fff;font-size:22px}.probability-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.probability-summary div{padding:12px;background:#fff}.probability-summary span,.probability-summary strong{display:block}.probability-summary span{color:var(--muted);font-size:10px}.probability-summary strong{margin-top:4px;font-size:15px}.probability-assumption{margin:0;padding:10px 20px;background:#fff8e8;color:#795b26;font-size:11px;line-height:1.5}.probability-table-wrap{max-height:52vh;overflow:auto;padding:0 20px 20px}.probability-table{min-width:560px}.probability-table th{position:sticky;top:0;height:38px;background:#edf1ee}.probability-table td{height:42px;padding:7px 10px;font-size:13px}.probability-bar{height:7px;background:#e4ebe7;border-radius:10px;overflow:hidden}.probability-bar i{display:block;height:100%;border-radius:10px;background:#26694f}
.global-settings-dialog{width:min(560px,calc(100% - 24px));padding:0;border:0;border-radius:8px;color:var(--ink);box-shadow:0 20px 70px rgba(10,30,20,.3)}.global-settings-dialog::backdrop{background:rgba(11,30,22,.62)}.global-settings-content{padding:18px 20px}.global-settings-content>p{margin:0 0 14px;color:var(--muted);font-size:11px;line-height:1.6}.global-settings-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.global-settings-fields label>span{display:block;margin-bottom:5px;color:#4f5f56;font-size:10px;font-weight:850}.global-settings-fields label>div{display:flex;align-items:center;overflow:hidden;border:1px solid #c7d1cb;border-radius:4px;background:#fff}.global-settings-fields input{min-width:0;width:100%;height:42px;padding:7px 8px;border:0;outline:0;color:#173d2f;font-size:18px;font-weight:900}.global-settings-fields label>div:focus-within{border-color:var(--green);box-shadow:0 0 0 2px rgba(23,75,59,.1)}.global-settings-fields b{padding:0 8px;color:#758078;font-size:10px}.global-settings-fields small{display:block;margin-top:4px;color:#8d6336;font-size:8px}.global-settings-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--line);background:#f6f8f6}
.damage-breakdown-tooltip{position:fixed;z-index:40;width:min(410px,calc(100vw - 20px));overflow:hidden;border:1px solid #9fb6aa;border-radius:7px;background:#fff;color:#18271f;box-shadow:0 12px 38px rgba(15,42,30,.28);pointer-events:none}.damage-breakdown-tooltip[hidden]{display:none}.breakdown-head{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;background:#193d2f;color:#fff}.breakdown-head strong{font-size:15px}.breakdown-head span{color:#d6f1e1;font-size:12px;font-weight:900}.breakdown-list{margin:0;padding:8px 14px 6px;list-style:none}.breakdown-item{display:grid;grid-template-columns:118px minmax(0,1fr) 48px;align-items:center;gap:7px;min-height:32px;border-bottom:1px solid #e3ebe6;font-size:12px}.breakdown-item b{color:#263a30;font-size:12px}.breakdown-item small{overflow:hidden;color:#465a50;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.breakdown-item em{color:#176245;font-size:14px;font-style:normal;font-weight:950;text-align:right}.breakdown-item.is-zero{color:#737e78}.breakdown-item.is-zero b,.breakdown-item.is-zero small,.breakdown-item.is-zero em{color:#737e78}.breakdown-item.is-random{background:#edf5fa}.breakdown-item.is-undead{background:#fff4df}.breakdown-item.is-undead em{color:#a64e09}.breakdown-equation{padding:9px 14px;background:#f2f5f3;color:#394c42;font-size:11px;font-weight:700;line-height:1.5}.breakdown-total{display:flex;align-items:baseline;justify-content:space-between;padding:10px 14px;border-top:1px solid #cbded3;background:#e2f2e9;color:#103f2d}.breakdown-total span{font-size:13px;font-weight:900}.breakdown-total strong{font-size:23px}
.toast { position:fixed; right:20px; bottom:20px; z-index:10; padding:11px 15px; border-radius:4px; background:#14251d; color:#fff; border-left:3px solid var(--lime); opacity:0; transform:translateY(8px); pointer-events:none; transition:.18s; box-shadow:0 4px 18px rgba(0,0,0,.18); }.toast.is-visible{opacity:1;transform:none}
.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; }
.catalog-page{max-width:1260px}.catalog-intro{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;padding:24px 4px}.catalog-intro span,.rule-grid article>span{color:#76867e;font-size:9px;font-weight:800;letter-spacing:.14em}.catalog-intro h2{margin:7px 0}.catalog-intro p{max-width:720px;margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.7}.catalog-intro>strong{font-size:28px;color:var(--green)}.catalog-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:6px;background:#fff}.catalog-table{min-width:920px}.weapon-catalog-table{min-width:1320px}.catalog-table th{position:static}.catalog-table td{height:52px;padding:9px 12px;font-size:12px}.catalog-table td:first-child strong,.catalog-table td:first-child small,.catalog-table td:nth-child(2) small{display:block}.catalog-table td:first-child small,.catalog-table td:nth-child(2) small{margin-top:3px;color:#89938d;font-size:9px}.rule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.rule-grid article{padding:17px;background:#fff;border:1px solid var(--line);border-radius:5px}.rule-grid h3{margin:6px 0 12px}.rule-grid small{display:block;margin-top:12px;color:#8b6b35;line-height:1.5}.rule-grid ul{margin:0;padding-left:18px;line-height:1.9;font-size:12px}.range-rules{display:flex;flex-wrap:wrap;gap:6px}.range-rules span{padding:6px 8px;background:#f2f5f3;border-radius:3px;font-size:10px}.range-rules b{margin-left:4px;color:var(--green)}.pending-speed{display:block;color:#936b43;font-size:9px;line-height:1.25;white-space:normal}
.source-panel{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(420px,1.4fr);gap:24px;margin-bottom:16px;padding:18px 20px;border:1px solid #d9d2c8;border-radius:6px;background:#fffaf4}.source-panel span,.speed-rule-title span{display:block;color:#8a7869;font-size:9px;font-weight:900;letter-spacing:.14em}.source-panel strong{display:block;margin-top:7px;font-size:14px}.source-panel p{margin:5px 0 0;color:var(--muted);font-size:10px}.source-panel ul{margin:0;padding-left:18px;color:#665b53;font-size:11px;line-height:1.75}.speed-rule-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.speed-rule-card{min-width:0;padding:14px;border:1px solid var(--line);border-radius:6px;background:#fff}.speed-rule-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.speed-rule-title h3{margin:4px 0 0;font-size:17px}.speed-rule-title small{display:block;margin-top:3px;color:#9a765a;font-size:9px}.speed-rule-title>b{padding:4px 7px;border-radius:3px;background:#edf4ef;color:#356047;font-size:9px}.speed-catalog-table{min-width:420px}.speed-catalog-table td{height:34px;padding:6px 10px}.speed-catalog-table td:nth-child(n+3){text-align:center;font-variant-numeric:tabular-nums}.speed-catalog-table td:nth-child(4){background:#f2f7f3;color:#286044}.unknown-value{color:#b5aaa2}
@media(max-width:800px){.source-panel,.speed-rule-sections{grid-template-columns:1fr}.source-panel{gap:12px}}
.attribute-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.attribute-rule-card{min-width:0;padding:16px;border:1px solid var(--line);border-radius:6px;background:#fff}.attribute-card-title{display:flex;align-items:flex-start;justify-content:space-between}.attribute-card-title span,.class-damage-panel>div>span{color:#76867e;font-size:9px;font-weight:900;letter-spacing:.14em}.attribute-card-title h3,.class-damage-panel h3{margin:5px 0 0;font-size:18px}.attribute-card-title>b{padding:4px 7px;border-radius:3px;background:#edf4ef;color:#356047;font-size:9px}.attribute-rule-card>p{min-height:38px;margin:10px 0;color:var(--muted);font-size:11px;line-height:1.6}.attribute-table{min-width:420px}.attribute-table td{height:36px;padding:7px 12px}.attribute-table td:nth-child(2),.attribute-table td:nth-child(3){text-align:center}.attribute-table tr.is-estimated-rule td{background:#fff8eb}.attribute-damage-value{color:var(--green);font-size:14px;font-weight:900}.is-estimated-rule .attribute-damage-value{color:#a75c14}.rule-status{display:inline-block;min-width:38px;padding:3px 7px;border-radius:10px;font-size:9px;font-weight:900}.rule-status--known{background:#e7f3eb;color:#326348}.rule-status--estimated{background:#ffebc8;color:#99530f}.class-damage-panel{display:grid;grid-template-columns:260px 1fr;gap:22px;margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:6px;background:#fff}.class-damage-panel p{color:var(--muted);font-size:11px;line-height:1.6}.class-damage-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.class-damage-rules article{padding:13px;border-radius:5px;background:#f3f6f4}.class-damage-rules strong,.class-damage-rules b,.class-damage-rules small{display:block}.class-damage-rules b{margin-top:6px;color:var(--green);font-size:13px}.class-damage-rules small{margin-top:5px;color:#748179;font-size:9px}.estimate-disclaimer{display:flex;gap:14px;margin-top:14px;padding:13px 16px;border:1px solid #e5c58e;border-radius:5px;background:#fff6e7;color:#765226;font-size:11px;line-height:1.6}.estimate-disclaimer strong{white-space:nowrap;color:#99530f}
@media(max-width:800px){.attribute-rule-grid,.class-damage-panel{grid-template-columns:1fr}.class-damage-rules{grid-template-columns:1fr}.estimate-disclaimer{display:block}.estimate-disclaimer strong{display:block;margin-bottom:5px}}
@media(max-width:1100px){.topbar{align-items:flex-start;flex-direction:column;gap:7px}.rule-note{width:100%;overflow-x:auto}.sheet-toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%;justify-content:flex-start}.data-guide{grid-template-columns:repeat(3,minmax(0,1fr))}.data-guide__title{grid-column:1/-1}}
@media(max-width:760px){.topbar{min-height:64px;padding:9px 10px}.brand__mark{width:34px;height:34px}.brand p{display:none}h1{font-size:17px}.rule-note{font-size:10px}.rule-note a{padding:5px 7px;white-space:nowrap}main{padding:8px 5px 22px}.sheet-toolbar{padding:11px;min-height:70px}.sheet-toolbar p{display:none}.toolbar-actions{gap:6px}.target-size-switch button{min-width:42px;padding:7px 6px}.primary-button,.secondary-button{padding:8px 9px;font-size:11px}.sheet-help{padding:6px 10px;gap:7px 12px}.sheet-help .local-storage-note{order:3}.mobile-hint{display:block}.data-guide{grid-template-columns:1fr;margin-top:8px;padding:8px}.data-guide__title{grid-column:auto}.toast{left:12px;right:12px;bottom:12px;text-align:center}}
@media(max-width:760px){.rule-grid{grid-template-columns:1fr}.catalog-intro{align-items:flex-start}.catalog-intro>strong{font-size:20px}}
@media(max-width:760px){.probability-summary{grid-template-columns:repeat(2,1fr)}.probability-summary div:last-child{grid-column:1/-1}.probability-table-wrap{padding:0 12px 14px}.dialog-head{padding:14px}.probability-assumption{padding:9px 14px}}
@media(max-width:560px){.global-settings-fields{grid-template-columns:1fr}.global-settings-actions{flex-direction:column}.global-settings-actions button{justify-content:center;width:100%}}
.catalog-page{max-width:1500px}
.custom-data-page{max-width:1320px}.custom-editor-card{padding:16px;border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 2px 8px rgba(25,45,36,.04)}.custom-data-form{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px}.custom-data-form label>span,.class-choice legend{display:block;margin-bottom:5px;color:#506058;font-size:10px;font-weight:850}.custom-data-form input:not([type="checkbox"]),.custom-data-form select{width:100%;height:38px;padding:7px 9px;border:1px solid #cbd4ce;border-radius:4px;background:#fff;color:var(--ink);font-size:14px;font-weight:700}.custom-data-form input:focus,.custom-data-form select:focus{border-color:var(--green);outline:2px solid rgba(23,75,59,.12)}.custom-data-form label small{display:block;margin-top:3px;color:#9b4c42;font-size:9px}.wide-field{grid-column:span 2}.class-choice{grid-column:span 2;margin:0;padding:9px 10px;border:1px solid #d5dcd8;border-radius:4px}.class-choice div{display:flex;flex-wrap:wrap;gap:7px}.class-choice label,.check-field{display:flex;align-items:center;gap:5px;min-height:30px;padding:4px 8px;border-radius:3px;background:#f3f6f4;color:#405148;font-size:11px;font-weight:800}.class-choice input,.check-field input{width:17px;height:17px;margin:0;accent-color:var(--green)}.check-field>span{margin:0!important}.form-actions{display:flex;align-items:center;gap:8px}.form-actions #custom-weapon-status,.form-actions #custom-monster-status{color:#6c7771;font-size:10px}.custom-list-section{margin-top:16px}.custom-list-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:8px;padding:0 3px}.custom-list-title span{color:#79877f;font-size:9px;font-weight:900;letter-spacing:.14em}.custom-list-title h3{margin:4px 0 0;font-size:17px}.custom-list-title small{color:var(--muted);font-size:10px}.custom-data-table{min-width:920px}.custom-data-table td{height:48px}.custom-data-table td:first-child strong,.custom-data-table td:first-child small{display:block}.custom-data-table td:first-child small{margin-top:2px;color:#438066;font-size:8px}.compact-action{padding:5px 7px;font-size:9px}.danger-action{margin-left:3px;color:var(--danger)}.compact-empty{padding:28px;border:1px dashed #cbd3ce;border-radius:5px;background:#f8faf8;color:var(--muted);text-align:center}.compact-empty[hidden]{display:none}.signed-hit{color:#244f85;font-size:14px;font-weight:900}.built-in-reference{margin-top:24px}.monster-data-form{grid-template-columns:repeat(4,minmax(130px,1fr))}.monster-custom-table{min-width:720px}
@media(max-width:760px){.custom-data-form,.monster-data-form{grid-template-columns:repeat(2,minmax(0,1fr))}.wide-field,.class-choice{grid-column:1/-1}.custom-list-title{align-items:flex-start;flex-direction:column;gap:4px}}
