.connection-button{white-space:nowrap;font-size:12px;padding:8px 12px;min-height:34px}
.connection-dialog{width:min(440px,calc(100vw - 32px));padding:28px;border:1px solid #d8e2ee;border-radius:18px;color:#21364f;background:#fff}
.connection-dialog::backdrop{background:#102b48a6}
.connection-dialog .field{margin-top:16px;display:flex;gap:7px;flex-direction:column}
.connection-dialog input{font:inherit;border:1px solid #cdd8e5;border-radius:8px;padding:12px;width:100%;box-sizing:border-box}
.connection-dialog .dialog-intro{line-height:1.6;color:#64758b}
.connection-status{padding:12px 14px;background:#edf4fc;border-radius:9px;font-size:13px;line-height:1.5;margin:16px 0}
.connection-status.error{background:#fff0ee;color:#9c3829}
.connection-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
body[data-source="supabase"] button:disabled{cursor:not-allowed;opacity:.48}
body[data-source="supabase"] .profile-demo-settings{display:none}
.readonly-banner{color:#486384;background:#eef4fb;border:1px solid #dce6f2;border-radius:9px;padding:10px 14px;margin-bottom:20px;font-size:13px;line-height:1.5}
@media(max-width:700px){.topbar-right .topbar-date,.topbar-right .topbar-divider{display:none}.connection-button{font-size:11px;padding:7px 9px}}

.project-text-dialog{width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto}.project-text-dialog fieldset{border:0;margin:0;padding:0;min-width:0}.project-text-dialog textarea{font:inherit;line-height:1.6;width:100%;padding:12px;border:1px solid #cdd8e5;border-radius:8px;resize:vertical;min-height:180px}.project-text-dialog .eyebrow{display:block;color:#171717;overflow-wrap:anywhere}.project-text-dialog button:disabled{opacity:.5;cursor:wait}

.project-text-dialog{width:min(860px,calc(100vw - 32px));box-sizing:border-box}.project-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.project-edit-section{padding:22px 0;border-top:1px solid #e1e8ef}.project-edit-section h3{margin:0;font-size:16px}.project-edit-note{font-size:13px;line-height:1.6;color:#61728a;margin:12px 0 0}.project-text-dialog textarea{box-sizing:border-box;min-height:120px}.project-edit-image{min-width:0}.project-edit-image img{display:block;max-width:100%;height:100px;object-fit:contain;margin:14px 0}.project-edit-image img[hidden]{display:none}.project-edit-image small{display:block;overflow-wrap:anywhere;color:#61728a;margin:10px 0}.project-edit-image input{font-size:12px}.project-edit-locked{background:#f3f6fa;padding:18px;border-radius:10px;font-size:13px;line-height:1.7}.project-text-dialog .connection-actions{position:sticky;bottom:-28px;background:#fff;padding:16px 0;margin-top:0;border-top:1px solid #e1e8ef}.project-text-dialog .connection-status{position:sticky;bottom:50px;box-shadow:0 4px 16px #102b4820}@media(max-width:600px){.project-edit-grid{grid-template-columns:1fr}.project-text-dialog{padding:20px}.project-text-dialog .connection-actions{bottom:-20px}.project-edit-section{padding:18px 0}}

.system-design-fields{align-items:end}.system-design-fields .field{min-width:0}.system-design-fields [data-system-temp-unit]{white-space:nowrap}
.system-plan-preview{margin-top:16px;padding:14px;border:1px solid #dce6f1;border-radius:10px;background:#f8fafd}
.system-plan-preview img{display:block;width:100%;max-height:320px;object-fit:contain;background:white}.system-plan-preview a{display:inline-block;margin-top:12px;font-size:12px;color:#315f93}.system-plan-preview[hidden]{display:none}
.system-plan-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}.system-plan-actions button[hidden]{display:none}

/* Layout and airflow share one stable dialog frame during room navigation. */
#spaceEditDialog,.workspace-dialog.airflow-live-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(900px,calc(100vw - 32px));max-width:calc(100vw - 32px);height:min(900px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:28px;border:1px solid #d8e2ee;border-radius:18px;overflow-y:auto;scrollbar-gutter:stable}
#spaceEditDialog::backdrop,.workspace-dialog.airflow-live-dialog::backdrop{background:#13284366;backdrop-filter:blur(3px)}
#spaceEditDialog>form,.workspace-dialog.airflow-live-dialog>form{padding:0;min-height:100%;display:flex;flex-direction:column}
#spaceEditDialog .dialog-heading,.airflow-live-dialog .dialog-heading{position:sticky;top:-28px;background:#fff;z-index:4;border-bottom:1px solid #edf1f6}
#spaceEditDialog .connection-actions,.airflow-live-dialog .dialog-footer{position:sticky;bottom:-28px;margin:auto 0 0;padding:16px 0;background:#fff;border-top:1px solid #e1e8ef;z-index:4;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
#spaceEditDialog .connection-actions>.button,.airflow-live-dialog .dialog-footer>.button{height:44px;flex-shrink:0}
#spaceEditDialog .connection-actions>.secondary,.airflow-live-dialog .dialog-footer>.secondary{min-width:84px}
#spaceEditDialog .connection-actions>.primary,.airflow-live-dialog .dialog-footer>.primary{min-width:154px}
.airflow-live-dialog .dialog-footer>span{flex:1 1 auto;margin:0 auto 0 0}
.airflow-live-dialog .dialog-footer>[data-flow-refresh]{min-width:182px}
@media(max-width:720px){.airflow-live-dialog .dialog-footer>span{display:none}}
@media(max-width:600px){#spaceEditDialog,.workspace-dialog.airflow-live-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);padding:20px}#spaceEditDialog .dialog-heading,.airflow-live-dialog .dialog-heading{top:-20px}#spaceEditDialog .connection-actions,.airflow-live-dialog .dialog-footer{bottom:-20px}}

.subscription-card{max-width:680px;margin:7vh auto;padding:40px;background:white;border:1px solid #dce5ef;border-radius:18px;box-shadow:0 12px 40px #1b38520b}.subscription-card h1{font-size:30px;line-height:1.2;color:#183451;margin:12px 0}.subscription-card p{line-height:1.65;color:#526478}.subscription-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#57769b;font-weight:700}.subscription-email{font-weight:600;overflow-wrap:anywhere}.subscription-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:26px 0}.subscription-note{font-size:13px;border-top:1px solid #e5ebf2;padding-top:20px}.subscription-blocked #portfolioPage,.subscription-blocked #dashboardPage,.subscription-blocked #projectPage,.subscription-blocked #realWriteNotice,.subscription-blocked #recentProjects,.subscription-blocked #sandboxAccountButton{display:none!important}.subscription-blocked .demo-badge{display:none}.subscription-blocked #connectionBanner{margin:16px 0}.subscription-blocked .nav-count{visibility:hidden}@media(max-width:600px){.subscription-card{padding:24px;margin:24px 0}.subscription-card h1{font-size:25px}.subscription-actions{align-items:stretch;flex-direction:column}}

.readonly-banner.error{background:#fff0ee;color:#9c3829;border-color:#f0c8c0}
