/* MotoTraders Hub panel. */
:root{--k:#161b16;--forest:#1b241b;--lime:#d8f36a;--lime-deep:#c9e750;--olive:#566b22;--paper:#fbfaf6;--sand:#f1efe7;--line:#e4e2d7;--muted:#5f6659;--bad:#a23b26;--warn:#7a4b00;--ok:#2f5a14;--display:"Archivo","Inter",system-ui,sans-serif;--text:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--k);font:15px/1.55 var(--text)}
a{color:var(--k)}
h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;line-height:1.15;margin:0 0 12px}
h1{font-size:30px}h2{font-size:21px;margin-top:30px}h3{font-size:17px}
p{margin:0 0 12px}
.top{position:fixed;inset:0 0 auto 0;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:var(--k);color:#fff;z-index:20}
.brand{color:#fff;text-decoration:none;font:800 20px/1 var(--display);letter-spacing:-.04em}.brand span{color:var(--lime)}.brand small{font:600 11px var(--text);letter-spacing:.12em;text-transform:uppercase;color:#aeb8a8;margin-left:6px}
.menu{display:none;background:none;border:1px solid #ffffff40;color:#fff;border-radius:99px;padding:6px 14px;font:inherit}
.side{position:fixed;top:60px;bottom:0;left:0;width:230px;padding:18px 12px;background:var(--forest);overflow:auto;display:flex;flex-direction:column;gap:2px;z-index:15}
.side a{color:#d6ddd0;text-decoration:none;padding:9px 14px;border-radius:10px;font-weight:500}
.side a:hover{background:#ffffff12;color:#fff}.side a[aria-current]{background:var(--lime);color:var(--k);font-weight:650}
.side form{margin-top:auto;padding:12px 14px 0}.side .link{background:none;border:0;color:#aeb8a8;font:13px var(--text);cursor:pointer;padding:0;text-align:left}
.main{margin:60px 0 0 230px;padding:30px 36px 80px;max-width:1240px}.main.wide{max-width:none}
.main.solo{margin:0 auto;max-width:460px;padding:80px 20px}
.flash{padding:12px 16px;margin-bottom:18px;border-radius:12px;background:#edf7cd;color:#344b15}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin-bottom:18px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:14px 0 22px}
.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}.stat b{display:block;font:650 26px/1.1 var(--display)}.stat span{color:var(--muted);font-size:13px}
.muted{color:var(--muted)}.small{font-size:13px}
.warnings{list-style:none;padding:0;margin:0 0 18px}.warnings li{padding:11px 14px 11px 40px;margin-bottom:8px;border-radius:12px;background:#fcf3df;color:#5c3d00;position:relative}.warnings li::before{content:"!";position:absolute;left:14px;top:11px;width:18px;height:18px;border-radius:50%;background:#c58a1a;color:#fff;font:700 12px/18px var(--text);text-align:center}
table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:14px}
th,td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--sand);font-weight:600;font-size:12.5px;color:#3d443a}
tr:last-child td{border-bottom:0}
.table-wrap{overflow-x:auto;margin-bottom:18px}
.pill{display:inline-block;padding:2px 10px;border-radius:99px;font-size:12px;font-weight:600;background:#eceae2;color:#3d443a;white-space:nowrap}.pill.ok{background:#e4f2d5;color:var(--ok)}.pill.warn{background:#fcf0d9;color:var(--warn)}.pill.bad{background:#fbe4e1;color:var(--bad)}
.btn{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 18px;border:1px solid transparent;border-radius:99px;font:600 14px var(--text);cursor:pointer;text-decoration:none;color:var(--k)}
.btn.primary{background:var(--lime)}.btn.primary:hover{background:var(--lime-deep)}.btn.ghost{background:#fff;border-color:#d6d3c7}.btn.ghost:hover{border-color:var(--k)}.btn.danger{background:#fff;border-color:#e8b8ae;color:var(--bad)}
.btn.small{min-height:32px;padding:0 12px;font-size:13px}
.inline{display:inline}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0}
form.stack{display:grid;gap:14px}
.cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px 18px}
.field{display:grid;gap:5px;font-size:13px;font-weight:600}.field small{color:var(--muted);font-weight:400}
.field input,.field select,.field textarea,.filters input,.filters select{width:100%;min-height:42px;padding:9px 12px;border:1px solid #d6d3c7;border-radius:10px;background:#fff;color:var(--k);font:15px var(--text)}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--k);box-shadow:0 0 0 3px #d8f36a80}
.check{display:flex;gap:8px;align-items:center;font-size:14px;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--olive)}
.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 16px;max-height:340px;overflow:auto;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.filters input,.filters select{width:auto;min-width:160px}
.copy{display:flex;gap:8px;align-items:flex-start}.copy textarea{flex:1;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--k);color:var(--lime);font:13px/1.5 ui-monospace,Consolas,monospace;resize:vertical}
pre.log{background:var(--k);color:var(--lime);padding:14px;border-radius:12px;overflow:auto;font-size:12.5px;line-height:1.55;max-height:420px}
details summary{cursor:pointer}
.thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;background:var(--sand);vertical-align:middle}
.switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-bottom:1px solid var(--line)}.switch:last-child{border-bottom:0}
.issue{background:#fff;border:1px solid var(--line);border-left:5px solid #c58a1a;border-radius:14px;padding:16px 18px;margin-bottom:14px}
.issue.bad{border-left-color:var(--bad)}.issue.info{border-left-color:var(--olive)}
.issue-head{display:flex;gap:12px;align-items:flex-start}.issue-head h3{margin:0 0 4px;font-size:16.5px}.issue-head p{margin:0}
.issue .dot{flex:none;width:12px;height:12px;border-radius:50%;margin-top:5px;background:#c58a1a}.issue.bad .dot{background:var(--bad)}.issue.info .dot{background:var(--olive)}
.issue details{margin:10px 0 0}.issue ul.problems{margin:8px 0 0;padding-left:20px;max-height:260px;overflow:auto}.issue ul.problems li{margin-bottom:6px;word-break:break-word}
.fix-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:14px 0 10px}
.fix-opts .opt{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.fix-opts h4{margin:0 0 8px;font:650 12px var(--text);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.fix-opts p{margin:8px 0 0}
.fix-opts summary.btn{list-style:none}.fix-opts summary.btn::-webkit-details-marker{display:none}
ol.steps{margin:10px 0 0;padding-left:20px}ol.steps li{margin-bottom:8px}
.issue footer{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding-top:8px;border-top:1px solid var(--line)}
.result{border-color:var(--olive)}
.nowrap{white-space:nowrap}
table.logtable td{font-size:13.5px}table.logtable tr.lv-error td{background:#fdf3f1}table.logtable tr.lv-warn td{background:#fffaf0}
table.logtable pre,.result pre{white-space:pre-wrap;word-break:break-word;background:var(--sand);padding:8px;border-radius:8px;margin:6px 0 0}
textarea.code{font:13px/1.5 ui-monospace,Consolas,monospace;width:100%;padding:12px;border:1px solid #d6d3c7;border-radius:10px;background:#fff;white-space:pre;overflow:auto}
td a,li a{word-break:break-word}
table.edit input,table.edit select{min-height:34px;padding:5px 8px;border:1px solid #d6d3c7;border-radius:8px;font:14px var(--text);max-width:100%}
table.edit td{vertical-align:middle}
@media (max-width:900px){.menu{display:inline-block}.side{transform:translateX(-100%);transition:transform .2s;width:250px}.nav-open .side{transform:none}.main{margin-left:0;padding:24px 16px 70px}h1{font-size:25px}}
