:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text:#2b2b33;--text-sub:#6b6b78;--bg:#f4f5f7;--panel-bg:#fff;--border:#d9dbe1;--accent:#1f5eff;--best:#0a7d33;--best-bg:#e2f5e8;--good:#1258c9;--good-bg:#e4edfc;--caution:#b26a00;--caution-bg:#fdf1dc;--excluded:#71717a;--excluded-bg:#ececef;--warning-tag-bg:#fff2f0;--warning-tag-text:#b3261e;--warning-tag-border:#f0c4c0}*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:var(--text);background:var(--bg);font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic UI,Meiryo,-apple-system,Segoe UI,sans-serif;font-size:13px;line-height:1.6}input,select,button{font:inherit;color:inherit}.app{max-width:1500px;margin:0 auto;padding:16px 20px 60px}.app-header h1{margin:0;font-size:20px}.app-header__sub{color:var(--text-sub);margin:4px 0 16px}.panel{background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:12px;padding:12px 16px}.panel__title{color:var(--text-sub);margin:0 0 10px;font-size:13px;font-weight:700}.panel--collapsible{padding:0}.panel__summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-sub);align-items:baseline;gap:12px;padding:10px 16px;font-size:13px;font-weight:700;list-style:none;display:flex}.panel__summary::-webkit-details-marker{display:none}.panel__summary:before{content:"▸";font-size:11px;transition:transform .15s}.panel--collapsible[open]>.panel__summary:before{transform:rotate(90deg)}.panel__summary:hover{color:var(--accent)}.panel__summary-hint{color:var(--text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400;overflow:hidden}.panel__body{padding:2px 16px 12px}.panel__grid{flex-wrap:wrap;align-items:flex-end;gap:10px 18px;display:flex}.field{flex-direction:column;gap:2px;display:flex}.field__label{color:var(--text-sub);font-size:11px}.field input[type=number],.field input[type=search],.field select{border:1px solid var(--border);background:#fff;border-radius:5px;width:170px;padding:4px 8px}.field--checkbox{flex-direction:row;align-items:center;gap:6px;padding-bottom:4px}.rate-row{align-items:center;gap:8px;display:flex}.rate-row input[type=number]{border:1px solid var(--border);background:#fff;border-radius:5px;width:100px;padding:4px 8px}.rate-row input[type=number]:disabled{color:var(--text-sub);background:#f0f1f4}.rate-row__auto{white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:flex}.field__note{color:var(--best);font-size:11px}.field__note--error{color:var(--warning-tag-text)}.upload-row{flex-wrap:wrap;gap:24px;display:flex}.uploader__label{margin-bottom:4px;font-size:12px;font-weight:700}.uploader__status{margin-top:2px;font-size:12px}.uploader__loaded{color:var(--best);font-weight:600}.uploader__empty{color:var(--text-sub)}.uploader__errors{color:var(--caution);max-width:380px;font-size:11px}.uploader__errors ul{margin:4px 0;padding-left:18px}.uploader--sample{flex-direction:column;justify-content:flex-start;display:flex}.btn{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:6px;padding:6px 14px}.btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn--primary:hover:not(:disabled){color:#fff;background:#1a4fd6}.actions{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:12px;display:grid}.summary-card{background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;padding:10px 14px}.summary-card__label{color:var(--text-sub);font-size:11px}.summary-card__value{font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.summary-card__sub{color:var(--text-sub);font-size:11px}.summary-card--emphasis .summary-card__value{color:var(--best)}.table-wrapper{background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;overflow-x:auto}.result-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:1250px}.result-table th,.result-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;vertical-align:top;padding:6px 10px}.result-table thead th{color:var(--text-sub);z-index:1;background:#f0f1f4;font-size:11px;position:sticky;top:0}.result-table .num{text-align:right}.result-table tbody tr:hover{background:#f7f9ff}.row--negative{opacity:.45}.cell-name{font-weight:600}.cell-profit{font-weight:700}.cell-profit--strong{color:var(--best);background:var(--best-bg)}.cell-profit--negative{color:var(--excluded);font-weight:400}.cell-credit{color:var(--text-sub)}.cell-warnings{white-space:normal;max-width:260px}.cell-note{white-space:normal;max-width:200px;color:var(--text-sub)}.judgement{text-align:center;border-radius:5px;min-width:26px;padding:1px 6px;font-weight:700;display:inline-block}.judgement--best{color:var(--best);background:var(--best-bg)}.judgement--good{color:var(--good);background:var(--good-bg)}.judgement--caution{color:var(--caution);background:var(--caution-bg)}.judgement--excluded{color:var(--excluded);background:var(--excluded-bg)}.warning-tag{color:var(--warning-tag-text);background:var(--warning-tag-bg);border:1px solid var(--warning-tag-border);border-radius:4px;margin:1px 3px 1px 0;padding:0 5px;font-size:11px;display:inline-block}.table-empty{text-align:center;color:var(--text-sub);background:var(--panel-bg);border:1px dashed var(--border);border-radius:8px;padding:24px}.data-status{flex-wrap:wrap;align-items:center;gap:6px 18px;display:flex}.data-status__badge{color:var(--best);font-weight:700}.data-status__badge--stale{color:var(--caution)}.data-status__counts{color:var(--text-sub)}.data-status__loading{color:var(--text-sub);margin:0}.data-status__error{color:var(--warning-tag-text);margin:0;font-weight:700}.data-status__hint{color:var(--text-sub);margin:6px 0 0}.data-status__hint code{background:#f0f1f4;border-radius:4px;padding:1px 5px}.data-status__warnings{color:var(--caution);margin-top:6px;font-size:12px}.panel--error{border-color:var(--warning-tag-border);background:var(--warning-tag-bg)}.table-notice{color:var(--caution);background:var(--caution-bg);border-bottom:1px solid var(--border);margin:0;padding:8px 12px;font-size:12px}.result-table a{color:inherit;text-underline-offset:2px;-webkit-text-decoration:underline #b9c6e8;text-decoration:underline #b9c6e8}.result-table a:hover{color:var(--accent)}
