:root{--hub-bg:#f5f4ef;--hub-ink:#183b38;--hub-muted:#73807a;--hub-line:#e1e5de;--hub-soft:#e8f0e9}
.hub-sidebar{position:fixed!important;left:0;top:0;width:282px;height:100dvh;overflow-y:auto;background:#fff;color:var(--hub-ink);border-right:1px solid var(--hub-line);padding:25px 18px;z-index:50;font:14px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;display:flex;flex-direction:column;gap:8px}
.hub-sidebar a{text-decoration:none!important;color:inherit}.hub-brand{font:28px/1.07 Georgia,serif;padding:2px 13px 20px;display:block}.hub-brand small{display:block;font:10px/1.5 -apple-system,sans-serif;letter-spacing:2px;text-transform:uppercase;margin-top:14px;color:var(--hub-muted)}
.hub-workspace{padding:11px 12px;font-weight:650}.hub-portals{border-left:1px solid var(--hub-line);margin-left:15px;padding-left:8px}.hub-portal-title{display:flex;align-items:center;justify-content:space-between;padding:11px 10px;border-radius:8px;font-weight:600}.hub-portal.selected>.hub-portal-title{background:var(--hub-soft);color:#176758}.hub-submenu{margin:5px 0 12px 13px;border-left:1px solid var(--hub-line);padding-left:9px}
.hub-submenu nav{display:block!important;padding:0!important}.hub-submenu a,.hub-submenu #nav button{display:block!important;width:100%;text-align:left;border:0;background:transparent;color:#63716c;font:13px/1.4 -apple-system,sans-serif;padding:8px 10px;margin:1px 0;border-radius:6px;white-space:normal;box-shadow:none}
.hub-submenu #nav button small{display:none}.hub-submenu #nav button span{font:inherit}.hub-submenu a:hover,.hub-submenu #nav button:hover{background:#f3f5ef}.hub-submenu #nav button.active,.hub-submenu a[aria-current=page]{background:var(--hub-soft);color:#176758;font-weight:650}.hub-catalog-links{border-top:1px solid var(--hub-line);margin-top:8px;padding-top:7px}.hub-global{border-top:1px solid var(--hub-line);padding-top:12px;margin-top:6px;display:block}.hub-global a{display:block;padding:10px 12px;font-size:13px;margin:0;color:var(--hub-muted)}.hub-account{display:block;margin-top:auto;padding:18px 12px 0;color:var(--hub-muted);font-size:12px;text-decoration:none}.hub-account:hover{color:var(--hub-ink,#1d2b28);text-decoration:underline}
body.hub-portal-page{background:var(--hub-bg)}body.hub-portal-page .app{display:block!important;margin-left:282px;min-height:100dvh}body.hub-portal-page .workspace{padding:0 38px 70px;min-width:0;width:auto}body.hub-portal-page .topbar{position:sticky;top:0;z-index:20;background:var(--hub-bg);flex-wrap:wrap;gap:14px;padding:22px 0;box-shadow:none}body.hub-portal-page .project-tools{flex-wrap:wrap}.hub-preparing{position:fixed;inset:0 0 0 282px;background:var(--hub-bg);z-index:40;display:grid;place-content:center;gap:15px;text-align:center;padding:40px;font:16px/1.5 -apple-system,sans-serif;color:var(--hub-ink)}.hub-preparing strong{font:30px Georgia,serif}.hub-portal-page #authScreen{display:none!important}
.hub-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.hub-inline-actions button{font:13px -apple-system,sans-serif;padding:10px 14px;border:1px solid var(--hub-line);background:white;color:var(--hub-ink);border-radius:8px;cursor:pointer}.hub-output{border:1px solid var(--hub-line);border-radius:12px;padding:18px;margin:18px 0;background:white}.hub-output p{margin:0 0 10px}.hub-dialog{max-width:560px;width:calc(100% - 30px);border:1px solid var(--hub-line);border-radius:14px;padding:28px;font:15px/1.5 -apple-system,sans-serif}.hub-dialog label{display:block;margin:14px 0 6px}.hub-dialog input{width:100%;padding:12px;border:1px solid var(--hub-line);border-radius:8px}.hub-dialog::backdrop{background:#102a2555}.hub-dialog .hub-error{color:#9b382b}.hub-notice{position:fixed;bottom:20px;right:24px;max-width:500px;padding:15px 20px;background:#183b38;color:white;border-radius:10px;z-index:200;font:14px/1.5 -apple-system,sans-serif}
.layout{grid-template-columns:282px minmax(0,1fr)}.layout>.hub-sidebar{position:sticky!important}.layout>#hubSidebar{width:282px}.layout .sidebar{width:282px}body[data-theme=dark] .hub-sidebar{background:#1b302c;color:#e3eee7;--hub-line:#354942;--hub-muted:#a5b9af;--hub-soft:#26483e}
@media(max-width:900px){.hub-sidebar{width:235px;padding:20px 12px}.hub-brand{font-size:25px}body.hub-portal-page .app{margin-left:235px}body.hub-portal-page .workspace{padding:0 22px 50px}.hub-preparing{left:235px}.layout{grid-template-columns:235px minmax(0,1fr)}.layout>#hubSidebar{width:235px}}
@media(max-width:650px){.hub-sidebar{position:relative!important;width:100%!important;height:auto;max-height:46vh}.hub-brand{font-size:22px;padding-bottom:8px}.hub-global{display:flex;flex-wrap:wrap}.hub-account{display:none}body.hub-portal-page .app{margin-left:0}.hub-preparing{left:0;top:46vh}.layout{display:block}}

body.hub-portal-page .workspace a{color:#176758;text-decoration:none}body.hub-portal-page .workspace a:hover{text-decoration:underline}

/* Compact editing header: two rows; only the project name follows scrolling. */
body.hub-portal-page .workspace{font-size:14px;line-height:1.55}
body.hub-portal-page .workspace h1{font-size:26px}
body.hub-portal-page .workspace h2{font-size:21px}
body.hub-portal-page .workspace h3{font-size:17px}
body.hub-portal-page .topbar{position:relative!important;top:auto;display:grid!important;grid-template-columns:minmax(0,1fr);gap:8px;padding:12px 0 14px;backdrop-filter:none;z-index:10}
body.hub-portal-page .topbar>div:first-child{display:flex;align-items:baseline;gap:12px;min-width:0;overflow:hidden;white-space:nowrap}
body.hub-portal-page .topbar .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.4;margin:0;max-width:38%;overflow:hidden;text-overflow:ellipsis;flex-shrink:1}
body.hub-portal-page .topbar h2,body.hub-portal-page .topbar #currentName{font-size:18px;line-height:1.35;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}
body.hub-portal-page .topbar #saveStatus,body.hub-portal-page .topbar .save-state{display:block;font-size:11px;max-width:25%;overflow:hidden;text-overflow:ellipsis;margin:0;line-height:1.4}
body.hub-portal-page .topbar .project-tools{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) auto auto;align-items:center;gap:8px;margin:0;width:100%;min-width:0}
body.hub-portal-page .topbar .project-tools>*{grid-column:auto!important;min-width:0!important;max-width:100%;height:34px!important;margin:0;font-size:13px;line-height:1.3;border-radius:7px}
body.hub-portal-page .topbar .project-tools input,body.hub-portal-page .topbar .project-tools select{width:100%;padding:5px 9px}
body.hub-portal-page .topbar .project-tools button{padding:5px 13px;white-space:nowrap}
body.hub-portal-page .workspace .card{padding:18px}
body.hub-portal-page .workspace .field input,body.hub-portal-page .workspace .field select{font-size:14px;height:38px}
body.hub-portal-page .workspace textarea{font-size:14px;line-height:1.5}
body.hub-portal-page .workspace .section-note,body.hub-portal-page .workspace .working-note{font-size:13px;line-height:1.55}
.hub-project-jump{position:fixed;left:320px;right:38px;top:0;z-index:35;height:36px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;border:1px solid var(--hub-line);border-top:0;border-radius:0 0 8px 8px;background:var(--paper,#fff);color:var(--ink);font:600 13px/1.4 Montserrat,Arial,sans-serif;box-shadow:0 3px 12px #30383e12;cursor:pointer;text-align:left}
.hub-project-jump[hidden]{display:none!important}.hub-project-jump span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hub-project-jump small{font-size:11px;color:var(--muted);white-space:nowrap;font-weight:400}
@media(max-width:1180px) and (min-width:651px){.hub-sidebar{width:224px;padding:18px 12px}.hub-brand img{width:180px}body.hub-portal-page .app{margin-left:224px}body.hub-portal-page .workspace{padding-left:20px;padding-right:20px}.hub-preparing{left:224px}.hub-project-jump{left:244px;right:20px}}
@media(max-width:650px){body.hub-portal-page .topbar .eyebrow{display:none}body.hub-portal-page .topbar .project-tools{gap:5px}body.hub-portal-page .topbar .project-tools button{padding:5px 8px;font-size:12px}.hub-project-jump{left:14px;right:14px}.hub-project-jump small{display:none}body.hub-portal-page .workspace h1{font-size:23px}body.hub-portal-page .workspace .card{padding:15px}}
.drive-place-dialog h2{font-size:20px;margin:0 0 16px}.drive-place-dialog .drive-place{display:block;width:100%;margin:8px 0;padding:13px 15px;border:1px solid var(--line,#dee2e6);border-radius:9px;background:var(--panel,#fff);color:var(--ink,#30383e);text-align:left;cursor:pointer}.drive-place strong,.drive-place span{display:block}.drive-place strong{font-size:14px;color:var(--brand,#8f2835)}.drive-place span{font-size:12px;line-height:1.5;margin-top:4px;color:var(--muted,#6c757d)}.drive-place:hover{border-color:var(--brand,#8f2835)}
body.hub-portal-page .topbar #contextPicker{margin:0;max-width:none;font-size:13px}
.hub-inline-actions a{display:inline-flex;align-items:center;padding:8px 3px;font-size:13px;color:var(--brand,#8f2835);text-decoration:none}.drive-save-dialog form>button{display:block;margin-top:20px}.drive-save-dialog .hub-inline-actions{margin-bottom:16px}.drive-save-dialog strong{display:block;overflow-wrap:anywhere}
.legislation-backup{margin-bottom:20px}.legislation-backup form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.legislation-backup form label{flex:1;min-width:230px}.legislation-backup form input{display:block;width:100%;margin-top:6px}.legislation-match{border-top:1px solid var(--line);padding:14px 0}.legislation-match h3{font-size:17px}.legislation-match p{font-size:13px;line-height:1.5}.legislation-text{width:min(1000px,95vw);max-width:1000px;max-height:90vh}.legislation-text pre,.legislation-preview{white-space:pre-wrap;overflow:auto;max-height:60vh;font:14px/1.6 Montserrat,Arial,sans-serif}

#workspaceModules [hidden]{display:none!important} #workspaceModules{min-width:0} .main[hidden]{display:none!important} [data-ai-scope]{border:1px solid #ddd;border-radius:10px;padding:14px;margin:14px 0} [data-ai-scope] legend{font-weight:600} [data-ai-scope] input[type=checkbox]{width:auto;margin-right:8px} #workspaceModules>section{min-width:0}

/* Sections a module hides for the current project or service stay hidden despite the display rule above. */
.hub-submenu a[hidden]{display:none!important}
