.forge-v2 { --f2-paper:var(--paper,#fcf7ed); --f2-card:var(--card,#f8f2e5); --f2-line:var(--border,#cbb895); --f2-ink:var(--text,#2f2921); --f2-muted:var(--text-dim,#71634f); --f2-rust:var(--accent,#9b3d30); color:var(--f2-ink); font-size:14px; line-height:1.6; }
.forge-v2 *, .forge-v2 *::before, .forge-v2 *::after { box-sizing:border-box; }
.forge-v2 [hidden] { display:none !important; }
.forge-v2 :is(h2,h3,h4,p) { margin:0; }
.forge-v2 :is(h2,h3) { font-family:"Songti SC","STSong",serif; }
.forge-v2 h2 { font-size:clamp(24px,3vw,31px); line-height:1.25; }
.forge-v2 h3 { font-size:19px; }
.forge-v2 h4 { font-size:13px; }
.forge-v2 :is(button,input,select) { font:inherit; }
.forge-v2 :is(button,input,select,summary):focus-visible { outline:2px solid var(--f2-rust); outline-offset:3px; }
.forge-v2 :is(input,select) { width:100%; min-width:0; min-height:38px; padding:7px 10px; color:var(--f2-ink); border:1px solid var(--f2-line); border-radius:4px; background:var(--f2-paper); }
.forge-v2 input[type="checkbox"] { width:16px; height:16px; min-height:0; padding:0; accent-color:var(--f2-rust); flex:0 0 auto; }
.forge-v2 button { min-height:38px; padding:7px 12px; border:1px solid var(--f2-line); border-radius:4px; background:var(--f2-card); color:var(--f2-ink); cursor:pointer; }
.forge-v2 button:hover { background:var(--paper-shade,#e8dcc4); border-color:var(--f2-rust); }
.forge-v2 button:disabled { cursor:default; opacity:.5; }
.forge-v2 .f2-primary { color:var(--f2-paper); background:var(--f2-rust); border-color:var(--f2-rust); }
.forge-v2 .f2-primary:hover { background:#823226; }
.f2-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; padding:4px 0 16px; }
.f2-heading p { margin-top:7px; color:var(--f2-muted); }
.f2-version { white-space:nowrap; padding:4px 9px; border:1px solid var(--f2-line); color:var(--f2-rust); }
.f2-status { min-height:24px; color:var(--f2-muted); margin-bottom:12px !important; overflow-wrap:anywhere; }
.f2-status.is-error { color:var(--red,#a63932); }
.f2-empty { padding:35px 22px; border:1px solid var(--f2-line); background:var(--f2-paper); text-align:center; }
.f2-empty p { color:var(--f2-muted); margin-top:8px; }
.f2-layout { display:grid; grid-template-columns:minmax(230px,285px) minmax(0,1fr); gap:20px; align-items:start; }
.f2-sidebar { min-width:0; padding:18px; border:1px solid var(--f2-line); background:var(--f2-card); }
.f2-source { font-size:12px; color:var(--f2-muted); padding-bottom:13px; border-bottom:1px solid var(--f2-line); margin-bottom:15px !important; overflow-wrap:anywhere; }
.f2-group { border:0; padding:0; margin:0 0 16px; min-width:0; }
.f2-group legend { padding:0; margin-bottom:8px; font-weight:600; }
.f2-checks { display:grid; gap:8px; }
.f2-check { display:flex; align-items:center; gap:7px; color:var(--f2-muted); font-size:12px; }
.f2-type-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.f2-field { display:flex; min-width:0; flex-direction:column; gap:5px; margin-bottom:12px; }
.f2-field > span { color:var(--f2-muted); font-size:12px; }
.f2-pair { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.f2-note { color:var(--f2-muted); font-size:12px; overflow-wrap:anywhere; }
.f2-threshold { padding-top:12px; border-top:1px solid var(--f2-line); margin-top:17px; }
.f2-threshold legend { padding-top:13px; }
.f2-percent-input { display:flex; align-items:center; gap:8px; }
.f2-percent-input input { flex:1; }
.f2-percent-input > span { white-space:nowrap; color:var(--f2-muted); font-size:12px; }
.f2-presets { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0; }
.f2-presets button { min-height:30px; padding:3px 10px; font-size:12px; }
.f2-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:14px; }
.f2-scan-actions .f2-primary { flex:1; }
.f2-refine-settings { padding-top:16px; border-top:1px solid var(--f2-line); margin-top:18px; }
.f2-refine-settings > summary { cursor:pointer; font-weight:600; }
.f2-refine-settings > p { margin:10px 0; }
.f2-main { min-width:0; }
.f2-result-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.f2-sort { min-width:155px; margin:0; }
.f2-result-filters { display:flex; gap:14px; align-items:center; margin-bottom:10px; }
.f2-result-filters > input { max-width:430px; flex:1; }
.f2-result-filters > label { white-space:nowrap; }
.f2-progress { min-height:20px; font-size:12px; color:var(--f2-rust); margin-bottom:6px !important; }
.f2-warnings { border-left:3px solid var(--f2-rust); padding:9px 12px; color:var(--f2-muted); background:var(--f2-card); font-size:12px; margin:0 0 12px; }
.f2-warnings p + p { margin-top:4px; }
.f2-table-wrap { width:100%; min-width:0; max-height:min(65vh,640px); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; border:1px solid var(--f2-line); background:var(--f2-paper); }
.f2-table { width:100%; border-collapse:collapse; table-layout:fixed; }
.f2-table th { position:sticky; top:0; z-index:1; text-align:left; font-size:12px; color:var(--f2-muted); font-weight:500; background:var(--f2-card); border-bottom:1px solid var(--f2-line); padding:12px 10px; }
.f2-table th:first-child { width:26%; }
.f2-table th:nth-child(2) { width:21%; }
.f2-table th:nth-child(3) { width:15%; }
.f2-table th:nth-child(4) { width:22%; }
.f2-table th:nth-child(5) { width:16%; }
.f2-table td { padding:12px 10px; border-top:1px solid var(--ink-line,#dfd0b3); vertical-align:top; overflow-wrap:anywhere; }
.f2-table tr.is-selected td { background:var(--gold-soft,#eee1bf); }
.forge-v2 .f2-row-select { min-height:24px; padding:0; text-align:left; font-weight:650; border:0; background:transparent; overflow-wrap:anywhere; }
.forge-v2 .f2-row-select:hover { background:transparent; text-decoration:underline; }
.f2-row-select.green { color:#3f6d4b; }
.f2-row-select.blue { color:#49728a; }
.f2-row-select.purple { color:#76518a; }
.f2-row-select.orange { color:#936126; }
.f2-row-select.red { color:var(--f2-rust); }
.f2-row-meta { display:block; color:var(--f2-muted); font-size:11px; margin-top:4px; }
.f2-emphasis { color:var(--f2-rust); font-size:18px; font-variant-numeric:tabular-nums; }
.f2-affix-stack { display:grid; gap:4px; font-size:12px; }
.f2-table-empty td { padding:28px 15px; color:var(--f2-muted); font-size:13px; }
.f2-star { color:var(--f2-rust); font-size:12px; }
.f2-more { display:flex; align-items:center; justify-content:center; gap:14px; margin:12px 0 18px; }
.f2-detail { border:1px solid var(--f2-line); background:var(--f2-paper); padding:20px; margin-top:16px; }
.f2-detail-heading { display:flex; align-items:start; justify-content:space-between; gap:12px; padding-bottom:15px; border-bottom:1px solid var(--f2-line); }
.f2-detail-heading h3 { font-size:23px; }
.f2-detail-heading p { margin-top:4px; }
.f2-detail-heading button[aria-pressed="true"] { color:var(--f2-rust); background:var(--gold-soft,#eee1bf); }
.f2-detail-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:17px 0; border-bottom:1px solid var(--ink-line,#dfd0b3); }
.f2-detail-summary span { display:block; color:var(--f2-muted); font-size:12px; }
.f2-detail-summary strong { display:block; margin-top:4px; font-size:22px; font-variant-numeric:tabular-nums; }
.f2-detail-summary small { color:var(--f2-muted); }
.f2-detail-affixes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; padding:16px 0 20px; }
.f2-detail-affixes h4 { margin-bottom:7px; }
.f2-attachment { padding-top:18px; border-top:1px solid var(--f2-line); }
.f2-attachment h3 { margin-bottom:15px; }
.f2-attachment-fields { display:grid; grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr); gap:12px; }
.f2-attachment > .f2-note { margin-top:10px; }
.f2-best { border-left:3px solid var(--f2-rust); padding:12px 15px; background:var(--f2-card); margin-top:18px; }
.f2-best > span { display:block; color:var(--f2-muted); font-size:12px; }
.f2-best > strong { display:block; color:var(--f2-rust); font-size:25px; margin-top:5px; }
.f2-best > p { color:var(--f2-muted); font-size:12px; margin-top:4px; }
.f2-plan-summary { margin-top:12px !important; font-size:13px; }
.f2-step-details { border:1px solid var(--f2-line); padding:12px 15px; margin-top:15px; }
.f2-step-details > summary { cursor:pointer; font-weight:600; }
.f2-steps { list-style:none; margin:10px 0 0; padding:0; max-height:330px; overflow-y:auto; scrollbar-width:thin; }
.f2-steps li { display:flex; flex-wrap:wrap; gap:5px 12px; align-items:baseline; padding:9px 0; border-top:1px solid var(--ink-line,#dfd0b3); }
.f2-steps li > span, .f2-steps li > small { color:var(--f2-muted); font-size:12px; }
.f2-steps li > strong { font-weight:500; }
.f2-tabs { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:16px; }
.f2-tabs button { flex:1; min-width:90px; font-size:13px; }
.f2-tabs button[aria-pressed="true"] { color:var(--f2-rust); background:var(--gold-soft,#eee1bf); border-color:var(--f2-rust); }
.f2-color-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.f2-location-more { margin-top:10px; }
.f2-location-more > summary,.f2-advanced > summary { color:var(--f2-muted); font-size:12px; cursor:pointer; margin-bottom:9px; }
.f2-location-more .f2-checks { padding:6px 0; }
.f2-advanced { border-top:1px solid var(--f2-line); padding-top:12px; margin-top:14px; }
.f2-tool-tabs { border-bottom:1px solid var(--f2-line); padding-bottom:15px; margin-bottom:0; }
.f2-tool-tabs button { flex:0 1 auto; min-width:75px; }
.f2-cultivation { padding-top:18px; }
.f2-cultivation-layout { display:grid; grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr); gap:22px; align-items:start; }
.f2-cultivation-controls { min-width:0; padding-right:20px; border-right:1px solid var(--f2-line); }
.f2-cultivation-controls > .f2-note { margin:8px 0 14px; }
.f2-cultivation-controls [data-f2-protected-slots] { display:grid; gap:8px; }
.f2-cultivation .f2-best { margin-top:0; }
.f2-slot-decisions { display:grid; gap:8px; margin-top:14px; }
.f2-slot-decisions > div { padding:9px 12px; border-left:2px solid var(--f2-line); background:var(--f2-card); }
.f2-slot-decisions > .is-accept { border-left-color:var(--f2-rust); }
.f2-slot-decisions :is(span,strong,small) { display:block; overflow-wrap:anywhere; }
.f2-slot-decisions :is(span,small) { color:var(--f2-muted); font-size:12px; }
.f2-slot-decisions strong { margin:2px 0; }
.f2-route-heading { margin-top:16px !important; }
.f2-confirmations { max-height:none; }
.f2-steps li details { width:100%; font-size:12px; }
.f2-steps li details summary { color:var(--f2-muted); cursor:pointer; }
.f2-steps li details p { padding-top:3px; }
.f2-search-note { margin-top:13px !important; }
.f2-red-workbench { margin-top:18px; padding:14px 16px; border:1px solid var(--f2-line); background:var(--f2-paper); }
.f2-red-workbench > summary { cursor:pointer; font-weight:600; }
.f2-red-workbench [data-f2-red-content] { margin-top:16px; }
@media (max-width:1100px) { .f2-layout { grid-template-columns:minmax(210px,245px) minmax(0,1fr); gap:14px; } .f2-sidebar,.f2-detail { padding:14px; } .f2-table :is(th,td) { padding:10px 8px; } }
@media (max-width:800px) { .f2-layout { grid-template-columns:1fr; } .f2-sidebar { display:grid; grid-template-columns:1fr 1fr; gap:0 18px; } .f2-source,.f2-scan-actions,.f2-refine-settings { grid-column:1/-1; } .f2-scan-actions .f2-primary { flex:0 1 240px; } }
@media (max-width:680px) { .f2-table-wrap { max-height:70vh; } }
@media (max-width:1100px) { .f2-cultivation-layout { grid-template-columns:1fr; gap:16px; } .f2-cultivation-controls { border-right:0; padding-right:0; border-bottom:1px solid var(--f2-line); padding-bottom:16px; } }
@media (max-width:680px) { .f2-heading { align-items:start; } .f2-heading p { font-size:12px; } .f2-version { display:none; } .f2-sidebar { display:block; } .f2-checks { grid-template-columns:1fr 1fr; } .f2-type-options { grid-template-columns:repeat(4,minmax(0,1fr)); } .f2-result-toolbar { flex-wrap:wrap; align-items:start; } .f2-result-toolbar > div { flex:1; } .f2-sort { min-width:150px; max-width:180px; } .f2-result-filters { flex-wrap:wrap; gap:8px; } .f2-result-filters input { flex-basis:100%; max-width:none; } .f2-table thead { display:none; } .f2-table,.f2-table tbody { display:block; } .f2-table tr { display:grid; grid-template-columns:1fr 1fr; border-bottom:1px solid var(--f2-line); } .f2-table tr:last-child { border-bottom:0; } .f2-table td { display:block; border:0; padding:9px 12px; } .f2-table td::before { content:attr(data-label); display:block; margin-bottom:4px; font-size:11px; color:var(--f2-muted); } .f2-table td:first-child { grid-column:1/-1; border-bottom:1px solid var(--ink-line,#dfd0b3); padding:12px; } .f2-table td:first-child::before { display:none; } .f2-table-empty { display:block !important; } .f2-table-empty td { padding:25px 14px !important; } .f2-table-empty td::before { display:none; } .f2-detail-summary { grid-template-columns:1fr 1fr; } .f2-detail-affixes { grid-template-columns:1fr; gap:13px; } .f2-detail-affixes > div { display:grid; grid-template-columns:85px minmax(0,1fr); } .f2-attachment-fields { grid-template-columns:minmax(0,1fr) 95px; } .f2-attachment-fields > label:last-child { grid-column:1/-1; } .f2-scan-actions .f2-primary { flex:1; } .f2-more { flex-wrap:wrap; } }
@media (prefers-reduced-motion:reduce) { .forge-v2 * { scroll-behavior:auto !important; } }
/* Dense workspace: context above, controls left, results right. */
.forge-v2 .f2-heading { align-items:center; justify-content:flex-start; padding:2px 0 10px; gap:14px; min-height:0; text-align:left; }
.forge-v2 .f2-heading h2 { font-size:23px; line-height:1.3; }
.forge-v2 .f2-heading p { margin:0; font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.f2-status:empty,.f2-progress:empty { display:none; }
.forge-v2 .f2-status { min-height:0; margin-bottom:8px !important; font-size:12px; }
.f2-sidebar { padding:14px; }
.f2-source { padding-bottom:8px; margin-bottom:10px !important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.f2-result-toolbar { margin-bottom:8px; }
.f2-result-toolbar h3 { font-size:17px; }
.f2-table th { padding:8px 10px; }
.f2-table td { padding:9px 10px; }
.f2-selectable-row { cursor:pointer; outline-offset:-2px; }
.f2-selectable-row:hover td { background:var(--paper-shade,#e8dcc4); }
.f2-selectable-row:focus-visible { outline:2px solid var(--f2-rust); }
.f2-row-select { display:block; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-weight:650; }
.f2-row-meta { margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.f2-pity-tag { display:inline-block; margin-left:6px; font-size:10px; color:var(--f2-muted); font-weight:400; }
.f2-affix-stack { gap:1px; }
.f2-affix-stack > span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.f2-more { margin:8px 0 10px; }
.f2-detail { padding:16px; margin-top:10px; }
.f2-detail-heading { padding-bottom:10px; }
.f2-detail-heading h3 { font-size:21px; }
.f2-detail-summary { padding:12px 0; gap:10px; }
.f2-detail-affixes { padding:12px 0 14px; }
.f2-detail-heading > div { min-width:0; }
[data-f2-detail-subtitle] { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.f2-refine-stats { margin-top:12px; border-top:1px solid var(--f2-line); padding-top:10px; }
.f2-refine-stats summary { cursor:pointer; font-weight:600; font-size:13px; }
.f2-stats-table { width:100%; border-collapse:collapse; font-size:12px; }
.f2-stats-table :is(th,td) { padding:6px 7px; text-align:left; border-bottom:1px solid var(--ink-line,#dfd0b3); }
.f2-refine-stat-scroll { max-height:260px; overflow:auto; margin-top:7px; }
@media(min-width:1101px) { .f2-cultivation-layout { grid-template-columns:minmax(210px,.7fr) minmax(0,1.3fr); } }
@media(max-width:680px) { .forge-v2 .f2-heading p { display:none; } }
.seq-app-header > .f2-global-heading { grid-area:combat; align-self:center; display:flex; align-items:center; gap:12px; min-width:0; margin:0; padding:0; color:var(--text); }
.seq-app-header > .f2-global-heading[hidden] { display:none; }
.seq-app-header > .f2-global-heading h2 { flex:0 0 auto; font-family:"Songti SC","STSong",serif; font-size:20px; line-height:1.3; margin:0; }
.seq-app-header > .f2-global-heading p { min-width:0; font-size:12px; line-height:1.3; color:var(--text-dim); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin:0; }
.forge-v2 .f2-result-toolbar { align-items:end; gap:14px; }
.forge-v2 .f2-result-toolbar .f2-result-filters { flex:1; min-width:0; margin:0; }
.forge-v2 [data-f2-refine-settings] { padding-top:12px; border-top:1px solid var(--f2-line); }
.forge-v2 .f2-original-affixes { margin-top:6px; font-size:12px; color:var(--f2-muted); }
.forge-v2 .f2-original-affixes summary { cursor:pointer; }
.forge-v2 .f2-planning-summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid var(--f2-line); font-size:12px; color:var(--f2-muted); }
.forge-v2 .f2-planning-summary p + p { margin-top:3px; }
.forge-v2 .f2-planning-summary p > span { font-weight:600; margin-right:8px; color:var(--f2-ink); }
.forge-v2 .f2-planning-summary button { flex:0 0 auto; font-size:12px; min-height:30px; padding:4px 8px; }
.forge-v2 .f2-table.is-current-attack th:first-child { width:30%; }
.forge-v2 .f2-table.is-current-attack th:nth-child(2) { width:24%; }
.forge-v2 .f2-table.is-current-attack th:nth-child(4) { width:28%; }
.forge-v2 .f2-table.is-current-attack th:nth-child(5) { width:18%; }
@media(max-width:1100px) { .seq-app-header.is-forge-workspace > .f2-global-heading { justify-self:start; } }
@media(max-width:680px) { .seq-app-header > .f2-global-heading p { display:none; } .forge-v2 .f2-result-toolbar { flex-wrap:wrap; } .forge-v2 .f2-result-toolbar .f2-result-filters { flex-basis:100%; } }
