/* V2 additions on top of the prototype styles */
.layout{align-items:start!important}             /* credits panel keeps its own height */
.side{align-self:start}
.brand .mark svg{width:18px;height:18px;color:var(--cream)}
.boot{min-height:100vh;display:flex;align-items:center;justify-content:center}
.authtabs{display:flex;gap:6px;margin:4px 0 6px}
.authtabs button{flex:1;border:1px solid var(--line);background:var(--cream);border-radius:999px;padding:8px;font-size:14px;font-weight:500}
.authtabs button.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.formmsg{font-size:13px;min-height:0;margin:6px 0}
.formmsg.err{color:var(--bad)}
.formmsg.ok{color:var(--ok)}
.linkbtn{background:none;border:none;color:var(--ink-2);font-size:13px;margin-top:12px;padding:0;text-decoration:underline;text-underline-offset:3px}
.linkbtn:hover{color:var(--accent)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 18px}
.tablewrap{overflow:auto;max-height:60vh;border:1px solid var(--line);border-radius:10px}
.ctable{width:100%;border-collapse:collapse;font-size:13px}
.ctable th{position:sticky;top:0;background:var(--cream-2);text-align:left;font-weight:600;padding:8px 10px}
.ctable td{padding:8px 10px;border-top:1px solid var(--cream-2);vertical-align:middle}
.ctable td.num{text-align:right;font-variant-numeric:tabular-nums}
.ctable .adj{display:flex;gap:6px}
.ctable .adj input{width:70px;border:1px solid var(--line);border-radius:8px;padding:5px 7px;background:var(--cream)}
.tile .loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.btn[disabled],.go[disabled]{opacity:.5;cursor:not-allowed}
.go[disabled]:hover{transform:none}
