/* Renovation Hero cabinet — light "architect's paper" theme (design canvas 20 Oct 2026) */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--bg:#F5F3EE;--paper:#ECE8DF;--card:#FFFFFF;--ink:#1C1F23;--ink2:#3B4046;--mut:#5E646B;--line:#E2DED6;--line2:#D6D1C7;
  --acc:#1D5C4E;--acc-ink:#FFFFFF;--acc-soft:#DCE9E3;--plan:#F2F5F3;--room:#FFFFFF;--room-sel:#E6F0EB;--wall:#2A2E33;--win:#9CC3E6;
  --warn:#8A4B12;--warn-soft:#FBEBD7;--warn-bar:#C77A2C;--err:#A8231A;--err-soft:#FDECEA;--blue:#2B4C7E;--blue-soft:#E3EAF5;
  --mono:'IBM Plex Mono',ui-monospace,monospace;--r:16px}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 Manrope,system-ui,sans-serif}
a{color:var(--acc)}a:hover{color:#123F35}
h1,h2,h3{margin:0;letter-spacing:-.02em}
.mono{font-family:var(--mono)}.mut{color:var(--mut);font-size:14px}
/* top bar */
.top{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:14px 32px;background:var(--card);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:800;font-size:17px}
.brand svg{flex:0 0 auto}
.topnav{display:flex;gap:4px;flex-wrap:wrap}
.topnav a{text-decoration:none;padding:10px 14px;border-radius:9px;font-weight:600;color:#4A5057}
.topnav a[aria-current]{background:var(--paper);color:var(--ink);font-weight:700}
.sp{flex:1}
.avatar{width:36px;height:36px;border-radius:18px;background:var(--acc-soft);color:var(--acc);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;text-decoration:none}
.page{max-width:1360px;margin:0 auto;padding:28px 32px 56px;display:flex;flex-direction:column;gap:22px}
/* cards, buttons, fields */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px}
.btn{font:inherit;font-weight:700;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border-radius:12px;border:1px solid var(--line2);background:var(--card);color:var(--ink);text-decoration:none;cursor:pointer}
.btn:hover{color:var(--ink);background:#FAF8F4}
.btn.pri{background:var(--acc);border-color:var(--acc);color:var(--acc-ink)}.btn.pri:hover{background:#174C40;color:#fff}
.btn.dark{background:var(--ink);border-color:var(--ink);color:#fff}.btn.dark:hover{background:#000;color:#fff}
.btn.dan{background:var(--err);border-color:var(--err);color:#fff}
.btn.sm{min-height:36px;padding:0 12px;font-size:14px;border-radius:9px}
.btn:disabled{opacity:.5;cursor:default}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:13px;font-weight:600;color:var(--ink2)}
input[type=text],input[type=email],input[type=password],input[type=tel],input[type=search],select{font:inherit;font-size:16px;min-height:48px;padding:0 14px;border-radius:10px;border:1px solid var(--line2);background:#fff;color:var(--ink);width:100%}
input:focus-visible,select:focus-visible,.btn:focus-visible,a:focus-visible{outline:3px solid #9FD3C1;outline-offset:2px}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;color:#4A5057}.chk input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--acc)}
.err{color:var(--err);font-size:14px;min-height:20px}.ok{color:var(--acc)}
/* pills */
.pill{display:inline-block;font-size:13px;font-weight:700;padding:4px 10px;border-radius:99px;background:var(--paper);color:var(--ink2);white-space:nowrap}
.pill.ready,.pill.done{background:var(--acc-soft);color:var(--acc)}
.pill.building,.pill.queued,.pill.claimed,.pill.running,.pill.files{background:var(--warn-soft);color:var(--warn)}
.pill.failed,.pill.blocked{background:var(--err-soft);color:var(--err)}
.pill.ai{background:var(--blue-soft);color:var(--blue)}
/* segmented tabs */
.seg{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:12px;background:var(--paper);align-self:flex-start}
.seg a,.seg button{font:inherit;text-decoration:none;padding:10px 18px;border-radius:9px;font-weight:600;color:#4A5057;border:0;background:transparent;cursor:pointer}
.seg [aria-current],.seg .on{background:#fff;color:var(--ink);font-weight:700}
/* tables */
.tbl{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;color:var(--mut);font-size:12px;text-transform:uppercase;letter-spacing:.04em;font-weight:600;padding:14px 16px}
td{padding:14px 16px;border-top:1px solid #EFEBE4;vertical-align:top}
/* layout helpers */
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.split{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start}
.split>.main{flex:999 1 620px;min-width:0}.split>.side{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:18px}
.band{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;padding:24px 28px;border-radius:18px;background:var(--paper)}
.dlg{position:fixed;inset:0;background:rgba(28,31,35,.5);display:none;align-items:center;justify-content:center;padding:16px;z-index:20}
.dlg .card{max-width:900px;width:100%;max-height:90vh;overflow:auto}
pre.log{white-space:pre-wrap;font:12px/1.5 var(--mono);max-height:50vh;overflow:auto;background:var(--plan);padding:12px;border-radius:10px;margin:0}
@media (max-width:640px){.top{padding:12px 16px}.page{padding:18px 16px 40px}.topnav{display:none}h1{font-size:26px!important}}
[hidden]{display:none!important}
