.renamer-page [hidden] { display:none !important; }
.renamer-main { padding:62px 0 110px; }
.renamer-intro { max-width:980px; margin-bottom:32px; }
.renamer-intro h1 { margin:0 0 16px; font-size:clamp(2.8rem,7vw,6.4rem); line-height:.94; letter-spacing:-.06em; }
.renamer-intro h1 span { color:var(--accent); }
.renamer-intro > p { max-width:820px; margin:0; color:var(--muted); font-size:1.08rem; }
.truth-card,.workspace-card,.preview-card,.info-grid article { border:1px solid var(--line); border-radius:var(--radius); background:rgba(16,23,19,.88); box-shadow:var(--shadow); }
.truth-card { display:grid; grid-template-columns:auto 1fr; gap:18px; padding:24px 28px; margin-bottom:18px; border-color:rgba(198,223,136,.28); background:linear-gradient(145deg,rgba(198,223,136,.07),rgba(16,23,19,.9)); }
.truth-mark { min-width:48px; height:44px; display:grid; place-items:center; border:1px solid var(--line-strong); border-radius:14px; color:var(--accent); font-weight:850; }
.truth-card h2 { margin:0 0 7px; font-size:1.08rem; }
.truth-card p { margin:0; color:var(--muted); font-size:.9rem; }
.workspace-card,.preview-card { padding:clamp(18px,4vw,36px); }
.message { margin-bottom:16px; padding:13px 15px; border:1px solid var(--line); border-radius:12px; color:var(--muted); }
.message.error { color:var(--danger); border-color:rgba(255,155,143,.35); background:rgba(255,155,143,.06); }
.message.success { color:var(--success); border-color:rgba(169,220,145,.35); background:rgba(169,220,145,.05); }
.source-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(250px,.45fr); gap:16px; }
.drop-zone { min-height:190px; display:grid; place-items:center; align-content:center; gap:8px; padding:28px; border:1px dashed var(--line-strong); border-radius:18px; background:rgba(0,0,0,.14); text-align:center; outline:none; }
.drop-zone.dragover,.drop-zone:focus-visible { border-color:var(--accent); background:rgba(198,223,136,.055); }
.drop-zone strong { font-size:1.2rem; }
.drop-zone > span { color:var(--muted); font-size:.83rem; }
.drop-actions,.source-summary > div,.selection-actions,.export-actions { display:flex; flex-wrap:wrap; gap:8px; }
.drop-actions { justify-content:center; margin-top:8px; }
.source-summary { display:flex; flex-direction:column; justify-content:center; padding:22px; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.018); }
.source-summary p { margin:0 0 5px; color:var(--accent); font-size:.69rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.source-summary strong { font-size:1.8rem; }
.source-summary > span { margin:4px 0 18px; color:var(--muted); }
.primary-button,.ghost-button,.file-button { min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:0 16px; border-radius:12px; border:0; cursor:pointer; font-weight:750; }
.primary-button { background:var(--accent); color:#10160f; }
.ghost-button,.file-button { border:1px solid var(--line); background:rgba(255,255,255,.025); color:var(--text); }
.ghost-button:hover,.file-button:hover { border-color:var(--line-strong); background:rgba(255,255,255,.05); }
.primary-button:disabled,.ghost-button:disabled { opacity:.45; cursor:not-allowed; }
.file-button { position:relative; }
.file-button input { position:absolute; width:1px; height:1px; opacity:0; overflow:hidden; }
.rules-heading,.preview-heading,.preview-controls,.export-panel { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.rules-heading { margin:30px 0 14px; }
.rules-heading p,.result-kicker { margin:0 0 4px; color:var(--accent); font-size:.69rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.rules-heading h2,.preview-heading h2,.export-panel h2 { margin:0; }
.rules-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.rule-card { min-width:0; padding:17px; border:1px solid var(--line); border-radius:16px; background:rgba(0,0,0,.12); }
.rule-card legend { padding:0 7px; color:var(--accent); font-size:.73rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.rule-card > label,.two-col label,.three-col label { display:grid; gap:6px; margin-bottom:11px; color:var(--muted); font-size:.78rem; font-weight:700; }
.rule-card input[type="text"],.rule-card input[type="number"],.rule-card select,.search-box input { width:100%; min-height:41px; padding:0 11px; border:1px solid var(--line); border-radius:10px; background:#0b110e; color:var(--text); }
.rule-card input:focus,.rule-card select:focus,.search-box input:focus { outline:1px solid var(--accent); border-color:var(--accent); }
.two-col,.three-col { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.three-col { grid-template-columns:repeat(3,minmax(0,1fr)); }
.check-row,.check-stack { display:flex; flex-wrap:wrap; gap:9px 16px; }
.check-stack { flex-direction:column; }
.check-row label,.check-stack label,.switch-label { color:var(--muted); font-size:.79rem; }
.switch-label.compact { align-content:end; }
.token-note,.rule-note { margin:0 0 12px; color:var(--soft); font-size:.72rem; line-height:1.55; }
.token-note code { display:inline-block; margin:2px 2px 2px 0; padding:2px 5px; border:1px solid var(--line); border-radius:5px; color:var(--muted); }
.preview-card { margin-top:18px; }
.preview-heading { align-items:flex-start; }
.preview-heading > div > p:not(.result-kicker),.export-panel p { margin:7px 0 0; color:var(--muted); }
.stats { display:grid; grid-template-columns:repeat(4,minmax(72px,1fr)); gap:8px; }
.stats div { min-width:76px; padding:12px; border:1px solid var(--line); border-radius:13px; text-align:center; background:rgba(255,255,255,.02); }
.stats strong { display:block; font-size:1.25rem; }
.stats span { color:var(--soft); font-size:.66rem; text-transform:uppercase; letter-spacing:.08em; }
.preview-controls { margin:20px 0 12px; flex-wrap:wrap; }
.search-box { display:grid; gap:5px; color:var(--muted); font-size:.73rem; }
.search-box input { min-width:280px; }
.table-shell { max-height:640px; overflow:auto; border:1px solid var(--line); border-radius:15px; background:#080d0a; }
.rename-table { width:100%; min-width:800px; border-collapse:collapse; font:12.5px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace; }
.rename-table th { position:sticky; top:0; z-index:2; padding:10px 11px; background:#121b16; color:var(--accent); text-align:left; border-bottom:1px solid var(--line); }
.rename-table td { padding:8px 11px; border-bottom:1px solid rgba(220,231,224,.07); vertical-align:top; overflow-wrap:anywhere; }
.rename-table tr:nth-child(even) td { background:rgba(255,255,255,.012); }
.rename-table .old-name { color:var(--muted); }
.rename-table .new-name { color:#d9f4ce; }
.rename-table tr.collision .new-name { color:var(--danger); }
.status-badge { display:inline-flex; padding:3px 7px; border:1px solid var(--line); border-radius:999px; font:750 .66rem/1.3 system-ui,sans-serif; white-space:nowrap; }
.status-badge.changed { color:var(--success); border-color:rgba(169,220,145,.3); }
.status-badge.same { color:var(--soft); }
.status-badge.collision { color:var(--danger); border-color:rgba(255,155,143,.35); }
.row-warning { display:block; margin-top:4px; color:var(--warning); font:11px/1.4 system-ui,sans-serif; }
.render-note { margin:10px 0 0; color:var(--soft); font-size:.75rem; }
.export-panel { margin-top:18px; padding:20px; border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.015); flex-wrap:wrap; }
.export-panel > div:first-child { max-width:600px; }
.export-actions { justify-content:flex-end; max-width:580px; }
.progress-wrap { flex:1 0 100%; }
.progress-track { height:8px; overflow:hidden; border-radius:999px; background:#080d0a; border:1px solid var(--line); }
.progress-track span { display:block; width:0; height:100%; background:var(--accent); transition:width .15s ease; }
.progress-wrap p { margin:7px 0 0; color:var(--muted); font-size:.76rem; }
.info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:18px; }
.info-grid article { padding:24px; }
.info-grid h2 { margin:0 0 8px; font-size:1rem; }
.info-grid p { margin:0; color:var(--muted); font-size:.84rem; }
@media (max-width:920px) { .source-grid,.rules-grid,.info-grid { grid-template-columns:1fr; } .preview-heading { flex-direction:column; } .stats { width:100%; } .export-panel { align-items:flex-start; flex-direction:column; } .export-actions { justify-content:flex-start; max-width:none; } }
@media (max-width:620px) { .renamer-main { padding-top:38px; } .workspace-card,.preview-card { padding:15px; } .rules-heading,.preview-controls { align-items:stretch; flex-direction:column; } .two-col,.three-col { grid-template-columns:1fr; } .stats { grid-template-columns:repeat(2,1fr); } .search-box,.search-box input { width:100%; min-width:0; } .selection-actions > *, .export-actions > * { flex:1; } }
