:root{color-scheme:dark;--bg:#11151c;--pane:#1a222c;--border:#35404d;--ink:#eef3f8;--muted:#a4b2bf;--primary:#79b7ff;--button:#3669b1}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif}
.panel{max-width:760px;margin:4vh auto 6vh;padding:26px 30px;background:var(--pane);border:1px solid var(--border);border-radius:16px}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--border);flex-wrap:wrap}
.brand{font-size:21px;font-weight:760;letter-spacing:-.5px}nav{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
a,.link-button{color:var(--primary);text-decoration:none}.link-button{border:0;background:none;padding:0;font:inherit;cursor:pointer}
nav form{margin:0}h1{font-size:23px;margin:22px 0 14px}h2{font-size:17px;margin:0 0 16px}
.stack{display:flex;flex-direction:column;gap:10px}label{font-weight:600;font-size:14px}input,textarea{background:#101722;border:1px solid #465469;border-radius:9px;color:var(--ink);padding:12px 13px;min-width:0;width:100%;font:inherit}textarea{resize:vertical;min-height:160px}
input:focus,textarea:focus{outline:2px solid #6daeff;outline-offset:2px}button,.button{border:1px solid #49668b;background:#27394d;color:white;font:inherit;padding:10px 15px;border-radius:8px;cursor:pointer}button:hover,.button:hover{filter:brightness(1.12)}button.primary{background:var(--button);border-color:var(--button);font-weight:700}button.subtle{background:transparent;border-color:var(--border);font-size:13px;padding:6px 10px}
.muted,small{color:var(--muted)}p.muted{margin:0 0 15px}.toolbar,.result-row,.export-row{display:flex;align-items:center;justify-content:space-between;gap:15px}.toolbar{margin:0 0 3px}
.results,.settings{border-top:1px solid var(--border);margin-top:23px;padding-top:19px}.result-row{padding:6px 0}.result-row span{color:var(--muted)}.export-form{border-top:1px solid var(--border);padding-top:22px;margin-top:16px}.export-row{align-items:center;flex-wrap:wrap}code{font-family:ui-monospace,Consolas,monospace;font-size:16px;letter-spacing:.4px}.hidden{display:none}
.settings{margin-top:24px}.settings form{max-width:430px}.settings form button{align-self:flex-start}.error,.success{padding:12px;border-radius:8px}.error{background:#4a2430;color:#ffccd6}.success{background:#214136;color:#c5f5dc}
@media(max-width:700px){.panel{margin:0;min-height:100vh;border:0;border-radius:0;padding:22px 18px}.export-row{align-items:flex-start}}

/* DataTables: dark palette, responsive scroll for narrow screens */
.panel:has(.table-results){max-width:1050px}
.table-results{overflow-x:auto}
.table-results table{min-width:440px}
.table-results .dt-container{color:var(--ink)}
.table-results .dt-container .dt-input{background:#101722;color:var(--ink);border-color:var(--border);width:auto}
.table-results table.dataTable tbody tr{background:#18212c;color:var(--ink)}
.table-results table.dataTable tbody tr:nth-child(2n){background:#202c39}
.table-results table.dataTable th,.table-results table.dataTable td{color:var(--ink);border-color:var(--border)}
.table-results .dt-container .dt-paging .dt-paging-button{color:var(--ink)!important}
.table-results .dt-container .dt-paging .dt-paging-button.current{background:#2c4665!important;border:1px solid #476789!important}
.table-results .dt-container .dt-info{color:var(--muted)}
