:root{--bg:#181818;--surface:#262626;--line:#383838;--fg:#f2f2f2;--muted:#a3a3a3;--accent:#1677ff;--err:#ff4d4f;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 Roboto,system-ui,sans-serif}
.wrap{max-width:960px;margin:0 auto;padding-inline:16px}
header{background:var(--surface);border-bottom:1px solid var(--line)}
header .wrap{display:flex;gap:12px;align-items:center;padding-block:14px}
header span{color:var(--muted);padding-left:12px;border-left:1px solid var(--line)}
header .lk{margin-left:16px;align-self:center}header #trocar{margin-left:auto}
h1{font-size:26px;margin:32px 0 16px}
.box{max-width:380px;display:flex;flex-direction:column;gap:12px}
label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
input{height:40px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--fg);padding:0 12px;font:inherit}
.btn{height:40px;border-radius:6px;border:1px solid var(--accent);background:var(--accent);color:#fff;font:inherit;font-weight:500;cursor:pointer}
.lk{border:0;background:none;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit;font-size:13px;align-self:flex-start;padding:0}
.msg{font-size:13px;color:var(--muted);min-height:1em}.msg.err{color:var(--err)}
.lista{display:flex;flex-direction:column;gap:10px;padding-bottom:48px}
.obra{display:flex;flex-direction:column;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:inherit;text-decoration:none}
.obra:hover{border-color:var(--accent)}
.obra b{font-size:19px}.obra span{color:var(--muted);font-size:14px}
.vazio{color:var(--muted);padding:24px;border:1px dashed var(--line);border-radius:8px}
