:root{--color-surface-dark:#4b4c3a;--color-surface:#f3e9d2;--color-surface-soft:#faf6ec;--color-surface-overlay:#0006;--color-surface-glass:#ffffff1f;--color-surface-glass-border:#fff3;--color-sand:#baa594;--color-text:#2a2a24;--color-text-muted:#6b6852;--color-text-subtle:#9a9684;--color-text-inv:#f3e9d2;--color-text-inv-muted:#f3e9d2b3;--color-text-inv-subtle:#f3e9d280;--color-on-accent:#1f2017;--color-accent:#dd9b4a;--color-accent-hover:#b67332;--color-accent-soft:#dd9b4a2e;--color-success:#88b27c;--color-success-soft:#88b27c2e;--color-success-text:#5a7a4f;--color-success-text-on-dark:#a8c79c;--color-warn:#dd9b4a;--color-warn-soft:#dd9b4a2e;--color-warn-text:#8a5a18;--color-danger:#c25240;--color-danger-hover:#a23e2e;--color-danger-soft:#c2524026;--color-danger-text:#8a3527;--color-danger-text-on-dark:#e08577;--color-admin:#7c3aed;--color-admin-hover:#6b2fd6;--color-admin-light:#8b5cf6;--color-admin-bg:#f5f3ff;--color-admin-soft:#7c3aed1f;--color-admin-border:#8b5cf640;--color-admin-shadow:#7c3aed4d;--color-border:#d4caac;--color-border-muted:#e8e0c8;--color-border-strong:#4b4c3a;--color-border-inv:#f3e9d233;--color-border-inv-strong:#f3e9d266;--color-util-text:#1f1f1f;--color-util-text-muted:#5c5a4a;--color-util-surface:#f6f4ee;--color-util-border:#cdc8b8;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono",Menlo,Monaco,"Courier New",monospace;--text-xs:11px;--text-xs-lh:16px;--text-sm:12px;--text-sm-lh:18px;--text-base:14px;--text-base-lh:22px;--text-md:16px;--text-md-lh:24px;--text-lg:18px;--text-lg-lh:26px;--text-xl:22px;--text-xl-lh:30px;--text-2xl:28px;--text-2xl-lh:34px;--text-3xl:36px;--text-3xl-lh:42px;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--radius-xs:4px;--radius-sm:8px;--radius:14px;--radius-lg:18px;--radius-xl:22px;--radius-full:9999px;--shadow-sm:0 1px 3px #1f201714;--shadow:0 4px 12px #1f20171a;--shadow-lg:0 20px 60px #1f201733;--z-base:0;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-overlay:1000;--z-modal:2000;--z-toast:3000;--z-tooltip:4000;--dur-fast:120ms;--dur:200ms;--dur-slow:320ms;--ease:cubic-bezier(0.4,0,0.2,1);--ease-out:cubic-bezier(0,0,0.2,1)}html{height:-webkit-fill-available}#root,body,html{background:#4b4c3a;overflow-x:hidden}#root,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-sans);margin:0;max-width:100%;min-height:100vh;min-height:-webkit-fill-available;padding:0 0 env(safe-area-inset-bottom);width:100%}:root{--chrome-gap:var(--space-5);--chrome-floor:calc(var(--chrome-gap) + env(safe-area-inset-bottom, 0px))}code{font-family:var(--font-mono)}.Button_btn__Y62t4{align-items:center;border:1px solid #0000;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-weight:var(--weight-medium);gap:var(--space-2);justify-content:center;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur-fast) var(--ease),box-shadow var(--dur) var(--ease);-webkit-user-select:none;user-select:none;white-space:nowrap}.Button_btn__Y62t4:focus-visible{box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}.Button_btn__Y62t4:disabled,.Button_btn__Y62t4[aria-disabled=true]{cursor:not-allowed;opacity:.5;pointer-events:none}.Button_sm__5SAh2{font-size:var(--text-sm);line-height:1;min-height:30px;padding:var(--space-2) var(--space-3)}.Button_md__O\+dtN{font-size:var(--text-base);line-height:1;min-height:38px;padding:var(--space-3) var(--space-5)}.Button_lg__72Z8p{font-size:var(--text-md);line-height:1;min-height:46px;padding:var(--space-4) var(--space-6)}.Button_primary__NGIIN{background:var(--color-accent);border-color:var(--color-accent);color:#1f2017}.Button_primary__NGIIN:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:var(--shadow);transform:translateY(-1px)}.Button_primary__NGIIN:active{box-shadow:none;transform:translateY(0)}.Button_secondary__FdhUX{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.Button_secondary__FdhUX:hover{background:var(--color-surface-soft);border-color:var(--color-border-strong)}.Button_secondary__FdhUX.Button_onDark__4gFyP{background:#0000;border-color:var(--color-border-inv);color:var(--color-text-inv)}.Button_secondary__FdhUX.Button_onDark__4gFyP:hover{background:#f3e9d214;border-color:var(--color-border-inv-strong)}.Button_soft__G4cUB{background:var(--color-surface);border-color:var(--color-surface);color:var(--color-text)}.Button_soft__G4cUB:hover{background:#e8dcbd;border-color:#e8dcbd;box-shadow:var(--shadow);transform:translateY(-1px)}.Button_soft__G4cUB:active{box-shadow:none;transform:translateY(0)}.Button_danger__JkvcV{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.Button_danger__JkvcV:hover{background:var(--color-danger-hover);border-color:var(--color-danger-hover)}.Button_ghost__tLrp\+{background:#0000;border-color:#0000;color:var(--color-text)}.Button_ghost__tLrp\+:hover{background:#4b4c3a14}.Button_ghost__tLrp\+.Button_onDark__4gFyP{color:var(--color-text-inv)}.Button_ghost__tLrp\+.Button_onDark__4gFyP:hover{background:#f3e9d214}.Button_fullWidth__2QJA6{width:100%}.Button_spinner__Cv0WC{animation:Button_btn-spin__MicFu .7s linear infinite;border:2px solid;border-radius:50%;border-top:2px solid #0000;height:14px;width:14px}@keyframes Button_btn-spin__MicFu{to{transform:rotate(1turn)}}.IconButton_btn__CjtAr{align-items:center;-webkit-appearance:none;appearance:none;border:1px solid #0000;color:var(--color-text);cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;padding:0;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.IconButton_btn__CjtAr:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.IconButton_btn__CjtAr:disabled{cursor:not-allowed;opacity:.45}.IconButton_btn__CjtAr svg{height:60%;width:60%}.IconButton_sm__vcJlR{height:28px;width:28px}.IconButton_md__W99JX{height:32px;width:32px}.IconButton_lg__8gaKg{height:40px;width:40px}.IconButton_circle__YojfA{border-radius:var(--radius-full)}.IconButton_square__evHW3{border-radius:var(--radius-sm)}.IconButton_ghost__gAvxH{background:#0000;color:var(--color-text-muted)}.IconButton_ghost__gAvxH:hover:not(:disabled){background:#4b4c3a0f;color:var(--color-text)}.IconButton_soft__wPPLm{background:var(--color-surface-soft);color:var(--color-text)}.IconButton_soft__wPPLm:hover:not(:disabled){background:var(--color-surface)}.IconButton_filled__kqqfN{background:var(--color-accent);color:var(--color-on-accent)}.IconButton_filled__kqqfN:hover:not(:disabled){background:var(--color-accent-hover)}.IconButton_danger__AUv8q{background:#0000;color:var(--color-danger)}.IconButton_danger__AUv8q:hover:not(:disabled){background:var(--color-danger-soft)}.IconButton_onDark__kRBnU.IconButton_ghost__gAvxH{color:var(--color-text-inv-muted)}.IconButton_onDark__kRBnU.IconButton_ghost__gAvxH:hover:not(:disabled){background:#f3e9d214;color:var(--color-text-inv)}.IconButton_onDark__kRBnU.IconButton_soft__wPPLm{background:#f3e9d21f;color:var(--color-text-inv)}.IconButton_onDark__kRBnU.IconButton_soft__wPPLm:hover:not(:disabled){background:#f3e9d22e}.Input_wrap__FOEFK{display:flex;flex-direction:column;font-family:var(--font-sans);gap:var(--space-2)}.Input_label__yzrjW{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--text-sm-lh)}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_label__yzrjW{color:var(--color-text-inv-muted)}.Input_field__dAZUI{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);display:block;font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--text-base-lh);padding:var(--space-3) var(--space-4);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease);width:100%}@media (pointer:coarse){.Input_field__dAZUI,.Input_sm__kAHIB .Input_field__dAZUI{font-size:16px}}.Input_inputWrap__ENfVy{align-items:center;display:flex;position:relative}.Input_inputWrap__ENfVy .Input_field__dAZUI{width:100%}.Input_inputWrap__ENfVy.Input_hasLeading__voQCH .Input_field__dAZUI{padding-left:44px}.Input_inputWrap__ENfVy.Input_hasTrailing__5LvqE .Input_field__dAZUI{padding-right:var(--space-12)}.Input_leading__W6vEZ,.Input_trailing__gEStc{align-items:center;color:var(--color-text-subtle);display:inline-flex;justify-content:center;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.Input_leading__W6vEZ{height:20px;left:var(--space-3);width:20px}.Input_trailing__gEStc{min-height:20px;min-width:20px;right:var(--space-3)}.Input_trailing__gEStc.Input_interactive__W9Bzp{pointer-events:auto}.Input_leading__W6vEZ>svg,.Input_trailing__gEStc>svg{height:20px;width:20px}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_leading__W6vEZ,.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_trailing__gEStc{color:var(--color-text-inv-subtle)}.Input_field__dAZUI::placeholder{color:var(--color-text-subtle)}.Input_field__dAZUI:focus{border-color:var(--color-border-strong);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}.Input_field__dAZUI:disabled{background:var(--color-surface-soft);cursor:not-allowed;opacity:.6}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_field__dAZUI{background:#f3e9d214;border-color:var(--color-border-inv);color:var(--color-text-inv);font-weight:var(--weight-light)}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_field__dAZUI::placeholder{color:var(--color-text-inv-subtle)}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_field__dAZUI:focus{background:#f3e9d21f;border-color:var(--color-border-inv-strong);box-shadow:0 0 0 3px #f3e9d214}.Input_wrap__FOEFK.Input_error__pDIqY .Input_field__dAZUI{border-color:var(--color-danger)}.Input_wrap__FOEFK.Input_error__pDIqY .Input_field__dAZUI:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.Input_helpText__\+wn2o{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--text-sm-lh)}.Input_wrap__FOEFK.Input_error__pDIqY .Input_helpText__\+wn2o{color:var(--color-danger)}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_helpText__\+wn2o{color:var(--color-text-inv-muted)}.Input_wrap__FOEFK.Input_onDark__VGrnw.Input_error__pDIqY .Input_helpText__\+wn2o{color:var(--color-danger)}.Input_sm__kAHIB .Input_field__dAZUI{font-size:var(--text-sm);line-height:1;padding:var(--space-2) var(--space-3)}.Input_lg__IRZ4o .Input_field__dAZUI{font-size:var(--text-md);line-height:1;padding:var(--space-4) var(--space-5)}.Input_textarea__XKODp{line-height:var(--text-base-lh);min-height:96px;resize:vertical}.Input_selectWrap__5UpBc{position:relative}.Input_selectWrap__5UpBc select.Input_field__dAZUI{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:var(--space-10)}.Input_chevron__GYl0J{color:var(--color-text-muted);font-size:10px;pointer-events:none;position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%)}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_chevron__GYl0J{color:var(--color-text-inv-muted)}.Input_field__dAZUI:-webkit-autofill,.Input_field__dAZUI:-webkit-autofill:active,.Input_field__dAZUI:-webkit-autofill:focus,.Input_field__dAZUI:-webkit-autofill:hover{-webkit-text-fill-color:var(--color-text);-webkit-box-shadow:0 0 0 1000px var(--color-surface) inset;caret-color:var(--color-text);-webkit-transition:background-color 9999s ease-in-out 0s;transition:background-color 9999s ease-in-out 0s}.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_field__dAZUI:-webkit-autofill,.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_field__dAZUI:-webkit-autofill:active,.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_field__dAZUI:-webkit-autofill:focus,.Input_wrap__FOEFK.Input_onDark__VGrnw .Input_field__dAZUI:-webkit-autofill:hover{-webkit-text-fill-color:var(--color-text-inv);-webkit-box-shadow:0 0 0 1000px var(--color-surface-dark) inset;caret-color:var(--color-text-inv);-webkit-transition:background-color 9999s ease-in-out 0s;transition:background-color 9999s ease-in-out 0s}.Checkbox_wrapper__kKJ9J{align-items:center;color:var(--color-text);cursor:pointer;display:inline-flex;font-family:var(--font-sans);gap:var(--space-2);-webkit-user-select:none;user-select:none}.Checkbox_input__kXpkn{height:0;opacity:0;pointer-events:none;position:absolute;width:0}.Checkbox_box__Yrb-5{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xs);color:#0000;display:inline-flex;flex-shrink:0;justify-content:center;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.Checkbox_sm__lp8iv .Checkbox_box__Yrb-5{height:16px;width:16px}.Checkbox_md__bm66s .Checkbox_box__Yrb-5{height:18px;width:18px}.Checkbox_lg__Frrae .Checkbox_box__Yrb-5{height:22px;width:22px}.Checkbox_check__lnoG3{height:70%;width:70%}.Checkbox_input__kXpkn:checked+.Checkbox_box__Yrb-5{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.Checkbox_input__kXpkn:focus-visible+.Checkbox_box__Yrb-5{outline:2px solid var(--color-accent);outline-offset:2px}.Checkbox_wrapper__kKJ9J:hover .Checkbox_input__kXpkn:not(:disabled)+.Checkbox_box__Yrb-5{border-color:var(--color-border-strong)}.Checkbox_wrapper__kKJ9J:hover .Checkbox_input__kXpkn:checked:not(:disabled)+.Checkbox_box__Yrb-5{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.Checkbox_label__EDkUm{font-size:var(--text-base);line-height:var(--text-base-lh)}.Checkbox_sm__lp8iv .Checkbox_label__EDkUm{font-size:var(--text-sm);line-height:var(--text-sm-lh)}.Checkbox_disabled__tbUqr{cursor:not-allowed;opacity:.55}.Checkbox_onDark__a7oqk{color:var(--color-text-inv)}.Checkbox_onDark__a7oqk .Checkbox_box__Yrb-5{background:#f3e9d21a;border-color:var(--color-border-inv)}.Checkbox_onDark__a7oqk .Checkbox_input__kXpkn:checked+.Checkbox_box__Yrb-5{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.Checkbox_onDark__a7oqk.Checkbox_wrapper__kKJ9J:hover .Checkbox_input__kXpkn:not(:disabled)+.Checkbox_box__Yrb-5{border-color:var(--color-border-inv-strong)}.Card_card__fzgN8{border-radius:var(--radius-lg);display:block;font-family:var(--font-sans)}.Card_default__L3t3r{box-shadow:var(--shadow-sm)}.Card_default__L3t3r,.Card_elevated__5mZ\+6{background:var(--color-surface);border:1px solid var(--color-border-muted);color:var(--color-text)}.Card_elevated__5mZ\+6{box-shadow:var(--shadow)}.Card_glass__tgxnW{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#baa59438;border:1px solid var(--color-border-inv);color:var(--color-text-inv)}.Card_flat__m0HRM{background:var(--color-surface-soft);border:1px solid var(--color-border-muted);color:var(--color-text)}.Card_psm__3BaRG{padding:var(--space-3)}.Card_pmd__DGaaH{padding:var(--space-5)}.Card_plg__CWUT2{padding:var(--space-6)}.Card_pxl__2uRVS{padding:var(--space-8)}.Card_interactive__AOk66{cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}.Card_interactive__AOk66:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.Card_glass__tgxnW.Card_interactive__AOk66:hover{background:#baa59452;border-color:var(--color-border-inv-strong)}.Chip_chip__mPc\+E{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-family:var(--font-sans);font-weight:var(--weight-semibold);gap:var(--space-1);line-height:1;white-space:nowrap}.Chip_size-sm__CS290{font-size:var(--text-xs);min-height:18px;padding:var(--space-1) var(--space-2)}.Chip_size-md__KDlrN{font-size:var(--text-sm);min-height:24px;padding:var(--space-2) var(--space-3)}.Chip_tone-default__vqIPI{background:#2b2a2414;color:var(--color-text-muted)}.Chip_tone-accent__iz0u6{background:var(--color-accent-soft);color:var(--color-accent-hover)}.Chip_tone-success__OGIpG{background:var(--color-success-soft);color:var(--color-success-text)}.Chip_tone-warn__0f9DZ{background:var(--color-warn-soft);color:var(--color-warn-text)}.Chip_tone-danger__yBpqE{background:var(--color-danger-soft);color:var(--color-danger-text)}.Chip_icon__\+dZeK{align-items:center;display:inline-flex;justify-content:center}.Chip_icon__\+dZeK svg{display:block;height:1em;width:1em}.Modal_overlay__mVooO{align-items:center;animation:Modal_overlay-in__DrLyv var(--dur) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--color-surface-overlay);display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}@keyframes Modal_overlay-in__DrLyv{0%{opacity:0}to{opacity:1}}.Modal_container__KKDde{animation:Modal_container-in__nDe5p var(--dur) var(--ease);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--color-text);display:flex;flex-direction:column;font-family:var(--font-sans);max-height:calc(100vh - var(--space-12));overflow:hidden;width:100%}@keyframes Modal_container-in__nDe5p{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.Modal_sm__eMFcT{max-width:380px}.Modal_md__OHp7b{max-width:480px}.Modal_lg__v0GDw{max-width:640px}.Modal_xl__lz92J{max-width:820px}.Modal_xxl__WfQL4{max-width:1200px}.Modal_header__5DgrE{align-items:flex-start;display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-5) var(--space-6) var(--space-3)}.Modal_title__Cs0uQ{color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:var(--text-xl-lh);margin:0}.Modal_subtitle__kul6A{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--text-base-lh);margin:var(--space-1) 0 0}.Modal_close__JIiwm{align-items:center;-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:var(--radius-full);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;line-height:1;transition:background var(--dur) var(--ease),color var(--dur) var(--ease);width:32px}.Modal_close__JIiwm:hover{background:#2b2a2414;color:var(--color-text)}.Modal_subheader__vxy3r{border-bottom:1px solid var(--color-border-muted);border-top:1px solid var(--color-border-muted);flex:none}.Modal_body__SA47w{color:var(--color-text-muted);flex:1 1 auto;font-size:var(--text-base);line-height:var(--text-base-lh);min-height:0;overflow-y:auto;padding:var(--space-2) var(--space-6) var(--space-5)}.Modal_actions__GknLr{border-top:1px solid var(--color-border-muted);display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-6) var(--space-5)}.Modal_actions__GknLr.Modal_equal__a98\+E>*{flex:1 1}.Modal_actions__GknLr.Modal_end__ltgme{justify-content:flex-end}@media (max-width:639.98px){.Modal_overlayFull__cDQQn{align-items:stretch;padding:0}.Modal_containerFull__kT72D{border-radius:0;height:100%;max-height:100%;max-width:none;width:100%}.Modal_containerFull__kT72D .Modal_header__5DgrE{padding:var(--space-4) var(--space-4) var(--space-2)}.Modal_containerFull__kT72D .Modal_title__Cs0uQ{font-size:var(--text-lg);line-height:var(--text-lg-lh)}.Modal_containerFull__kT72D .Modal_body__SA47w{padding:0 var(--space-4) var(--space-4)}.Modal_containerFull__kT72D .Modal_actions__GknLr{padding:var(--space-3) var(--space-4);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom, 0px))}}.PageContainer_container__oCIZ0{box-sizing:border-box;margin:0 auto;padding:0 var(--space-4);width:100%}.PageContainer_form__zScyu{max-width:500px}.PageContainer_readable__3-\+Wl{max-width:580px}.PageContainer_wide__2YVZX{max-width:760px}.PageContainer_app__peyzO{max-width:1080px}.PageContainer_desktop__v5NO1{max-width:1280px}.PageContainer_fluid__-gN08{max-width:none;padding:0}.Badge_badge__9V7Q-{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);gap:var(--space-1);letter-spacing:.3px;line-height:1;padding:var(--space-1) var(--space-2);text-transform:uppercase}.Badge_default__JH1Mw{background:var(--color-accent-soft);color:var(--color-accent-hover)}.Badge_neutral__efyFh{background:#2b2a2414;color:var(--color-text-muted)}.Badge_success__5H4Gd{background:var(--color-success-soft);color:var(--color-success-text)}.Badge_warn__rWOAR{background:var(--color-warn-soft);color:var(--color-warn-text)}.Badge_danger__OgMeH{background:var(--color-danger-soft);color:var(--color-danger-text)}.Badge_onDark__rIJBf.Badge_default__JH1Mw{background:#dd9b4a2e;color:var(--color-accent)}.Badge_onDark__rIJBf.Badge_neutral__efyFh{background:#f3e9d21f;color:var(--color-text-inv-muted)}.Badge_onDark__rIJBf.Badge_success__5H4Gd{background:#88b27c33;color:var(--color-success-text-on-dark)}.Badge_onDark__rIJBf.Badge_warn__rWOAR{background:#dd9b4a33;color:var(--color-accent)}.Badge_onDark__rIJBf.Badge_danger__OgMeH{background:#c2524033;color:var(--color-danger-text-on-dark)}.Badge_admin__q6G\+D,.Badge_onDark__rIJBf.Badge_admin__q6G\+D{background:var(--color-admin);color:#fff}.Badge_pill__yH2a7{border-radius:var(--radius-full);padding:var(--space-1) var(--space-3)}.Badge_dot__jgUmv{background:currentColor;border-radius:var(--radius-full);display:inline-block;height:6px;width:6px}.Disclosure_disclosure__B7hzg{font-family:var(--font-sans);width:100%}.Disclosure_default__LfY9O{background:var(--color-surface);border:1px solid var(--color-border-muted);border-radius:var(--radius)}.Disclosure_flat__Q95Of{background:#0000;border:none;border-bottom:1px solid var(--color-border-muted)}.Disclosure_summary__FHv1x{align-items:center;-webkit-appearance:none;appearance:none;background:none;border:none;border-radius:var(--radius);color:var(--color-text);cursor:pointer;display:flex;font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-medium);gap:var(--space-3);justify-content:space-between;padding:var(--space-3) var(--space-4);text-align:left;transition:background var(--dur-fast) var(--ease);width:100%}.Disclosure_summary__FHv1x:hover{background:#4b4c3a0a}.Disclosure_summary__FHv1x:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.Disclosure_summaryText__l84eo{flex:1 1;min-width:0}.Disclosure_titleBlock__NQyxi{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);min-width:0}.Disclosure_title__Eh6aL{color:inherit;font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--text-lg-lh)}.Disclosure_subtitle__5LrZO{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:var(--text-sm-lh)}.Disclosure_onDark__hLx4C .Disclosure_subtitle__5LrZO{color:var(--color-text-inv-muted)}.Disclosure_chevron__8-4hU{color:var(--color-text-muted);flex-shrink:0;height:18px;transition:transform var(--dur) var(--ease);width:18px}.Disclosure_chevronOpen__BW09Q{transform:rotate(180deg)}.Disclosure_contentWrap__9Hf-w{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur) var(--ease)}.Disclosure_contentWrapOpen__xXGtO{grid-template-rows:1fr}.Disclosure_contentInner__1vCbM{min-height:0;overflow:hidden}.Disclosure_content__\+ZTuS{color:var(--color-text);font-size:var(--text-base);line-height:var(--text-base-lh);padding:var(--space-3) var(--space-4) var(--space-4)}.Disclosure_flat__Q95Of .Disclosure_content__\+ZTuS{padding-left:0;padding-right:0}.Disclosure_onDark__hLx4C.Disclosure_default__LfY9O{background:#baa5942e;border-color:var(--color-border-inv)}.Disclosure_onDark__hLx4C .Disclosure_summary__FHv1x{color:var(--color-text-inv)}.Disclosure_onDark__hLx4C .Disclosure_summary__FHv1x:hover{background:#f3e9d20f}.Disclosure_onDark__hLx4C .Disclosure_chevron__8-4hU{color:var(--color-text-inv-muted)}.Disclosure_onDark__hLx4C .Disclosure_content__\+ZTuS{color:var(--color-text-inv)}.Tabs_tabs__NCuYr{display:flex;flex-direction:column;width:100%}.Tabs_tablist__IVKV1{display:flex;flex-shrink:0;gap:0}.Tabs_tab__IUmJ-{-webkit-appearance:none;appearance:none;background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-medium);padding:var(--space-2) var(--space-5);transition:color var(--dur) var(--ease),background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.Tabs_tab__IUmJ-:hover:not(:disabled){color:var(--color-text)}.Tabs_tab__IUmJ-:disabled{cursor:not-allowed;opacity:.5}.Tabs_tab__IUmJ-.Tabs_active__QrvGX{color:var(--color-accent)}.Tabs_onDark__DftAm{color:var(--color-text-inv-muted)}.Tabs_onDark__DftAm:hover:not(:disabled){color:var(--color-text-inv)}.Tabs_onDark__DftAm.Tabs_active__QrvGX{color:var(--color-accent)}.Tabs_panel__8GbiP{padding-top:var(--space-4)}.Tabs_tablist-underline__3MJlK{border-bottom:1px solid var(--color-border-muted)}.Tabs_tab-underline__eOzpi{border-bottom:2px solid #0000;margin-bottom:-1px}.Tabs_onDark__DftAm.Tabs_tab-underline__eOzpi.Tabs_active__QrvGX,.Tabs_tab-underline__eOzpi.Tabs_active__QrvGX{border-bottom-color:var(--color-accent);color:var(--color-accent)}.Tabs_tablist-folder__IiM1V{border-bottom:1px solid var(--color-border)}.Tabs_tab-folder__1dFv4{background:var(--color-surface-soft);border:1px solid var(--color-border);border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;color:var(--color-text-muted);margin-bottom:-1px}.Tabs_tab-folder__1dFv4:hover:not(:disabled){color:var(--color-text)}.Tabs_tab-folder__1dFv4.Tabs_active__QrvGX{background:var(--color-surface);border-color:var(--color-border);border-bottom-color:var(--color-surface);color:var(--color-text);font-weight:var(--weight-semibold)}.Tabs_onDark__DftAm.Tabs_tab-folder__1dFv4{background:#0000;border-color:#0000;color:var(--color-text-inv-muted)}.Tabs_onDark__DftAm.Tabs_tab-folder__1dFv4:hover:not(:disabled):not(.Tabs_active__QrvGX){background:#f3e9d20a;color:var(--color-text-inv)}.Tabs_onDark__DftAm.Tabs_tab-folder__1dFv4.Tabs_active__QrvGX{background:#0000;border-color:var(--color-border-inv);border-bottom:1px solid var(--color-surface-dark);color:var(--color-text-inv);font-weight:var(--weight-semibold);z-index:1}.Tabs_tablist-folder__IiM1V.Tabs_onDark__DftAm{border-bottom:1px solid var(--color-border-inv)}.Table_wrapper__7QNxT{overflow-x:auto;width:100%}.Table_table__yZcKI{border-collapse:collapse;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--text-base-lh);width:100%}.Table_thead__dfqTi{background:var(--color-surface-soft)}.Table_tr__7Xc4A{border-bottom:1px solid var(--color-border-muted);transition:background var(--dur-fast) var(--ease)}.Table_tbody__jC\+1l .Table_tr__7Xc4A:last-child{border-bottom:none}.Table_tbody__jC\+1l .Table_tr__7Xc4A:hover{background:#4b4c3a0a}.Table_trMuted__vlYsd td{color:var(--color-text-subtle);font-style:italic}.Table_trTotal__Chb\+F{border-top:2px solid var(--color-border)}.Table_trTotal__Chb\+F,.Table_trTotal__Chb\+F:hover{background:var(--color-surface-soft)}.Table_trTotal__Chb\+F td{font-weight:var(--weight-semibold)}.Table_th__PFjlK{border-bottom:1px solid var(--color-border-muted);font-weight:var(--weight-semibold);text-align:left;white-space:nowrap}.Table_td__Ql49\+,.Table_th__PFjlK{color:var(--color-text);padding:var(--space-3) var(--space-4)}.Table_numeric__p-lFM{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.Table_mono__xUEGP{color:var(--color-text-muted);font-family:var(--font-mono);font-size:13px;font-weight:var(--weight-medium)}.Table_align-left__1G7A4{text-align:left}.Table_align-right__zb26g{text-align:right}.Table_align-center__746WH{text-align:center}@media (max-width:768px){.Table_table__yZcKI{font-size:var(--text-sm)}.Table_td__Ql49\+,.Table_th__PFjlK{padding:var(--space-2) var(--space-3)}}.Typography_heading__1LKLK{color:var(--color-text);font-family:var(--font-sans);letter-spacing:-.2px;margin:0}.Typography_h1__rmNHP{font-size:var(--text-3xl);font-weight:var(--weight-light);letter-spacing:-.6px;line-height:var(--text-3xl-lh)}.Typography_h2__dG2PX{font-size:var(--text-2xl);font-weight:var(--weight-light);letter-spacing:-.3px;line-height:var(--text-2xl-lh)}.Typography_h3__gMHmX{font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--text-lg-lh)}.Typography_h4__yYheQ{font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:var(--text-md-lh)}.Typography_text__pc455{color:var(--color-text);font-family:var(--font-sans);margin:0}.Typography_size-xs__Bteip{font-size:var(--text-xs);line-height:var(--text-xs-lh)}.Typography_size-sm__bLsrB{font-size:var(--text-sm);line-height:var(--text-sm-lh)}.Typography_size-base__Tp86X{font-size:var(--text-base);line-height:var(--text-base-lh)}.Typography_size-md__ZboTK{font-size:var(--text-md);line-height:var(--text-md-lh)}.Typography_size-lg__IAbgj{font-size:var(--text-lg);line-height:var(--text-lg-lh)}.Typography_muted__KQdyt{color:var(--color-text-muted)}.Typography_subtle__5scQ7{color:var(--color-text-subtle)}.Typography_onDark__l-sgU{color:var(--color-text-inv)}.Typography_onDark__l-sgU.Typography_muted__KQdyt{color:var(--color-text-inv-muted)}.Typography_onDark__l-sgU.Typography_subtle__5scQ7{color:var(--color-text-inv-subtle)}.Typography_label__hWAk-{color:var(--color-text-muted);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:1.2px;line-height:1;margin:0;text-transform:uppercase}.Typography_label__hWAk-.Typography_onDark__l-sgU{color:var(--color-text-inv-muted)}.not-found-page{-webkit-font-smoothing:antialiased;align-items:center;background:var(--color-surface-dark);box-sizing:border-box;color:var(--color-text-inv);font-family:var(--font-sans);min-height:100vh;padding:var(--space-8) var(--space-4)}.not-found-inner,.not-found-page{display:flex;justify-content:center}.not-found-card{align-items:center;display:flex;flex-direction:column;gap:var(--space-4);text-align:center;width:100%}.not-found-eyebrow{color:var(--color-accent);font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:2px;line-height:var(--text-2xl-lh);text-transform:uppercase}.not-found-title{margin:0}.not-found-body{margin:0;max-width:420px}.not-found-cta{margin-top:var(--space-2)}.login-container{align-items:center;background:var(--color-surface-dark);display:flex;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;justify-content:center;min-height:100vh;position:relative}.login-box{background:#0000;border-radius:25px;max-width:400px;padding:2rem;width:100%;z-index:1}.logo-container{margin-bottom:1rem;text-align:center}.logo-container .logo{height:auto;max-width:300px;width:100%}.preview-title{color:var(--color-text-inv);font-size:1.25rem;font-weight:300;letter-spacing:.5px;margin:1rem 0 .5rem;text-align:center}.subtitle{color:#f3e9d2cc;font-size:.9rem;font-weight:400;margin:0 0 2rem;text-align:center}.subtitle-link{color:var(--color-accent);text-decoration:none;transition:opacity .3s}.subtitle-link:hover{opacity:.8}.login-box h2{color:var(--color-text-inv);font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.form-group{margin-bottom:1rem}.input-icon-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:#515d4980;height:20px;left:.75rem;pointer-events:none;position:absolute;width:20px;z-index:1}.form-group input{background-color:#f3e9d2f2;border:none;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#515d49;font-size:.9rem;padding:.75rem 3rem;transition:all .3s;width:100%}.form-group input::placeholder{color:#515d4980}.input-icon-wrapper input{padding-left:45px!important}.form-group input:focus{box-shadow:0 4px 12px #00000026;outline:none;transform:translateY(-1px)}.form-group input:disabled{background-color:#f3e9d2b3;cursor:not-allowed}.login-form{gap:var(--space-3);margin-bottom:var(--space-5)}.login-form,.login-oauth{display:flex;flex-direction:column}.login-oauth{gap:var(--space-2)}.error-message{background-color:#ff3b301a;border:1px solid #ff3b3033;margin-bottom:1rem;padding:.75rem}.auth-link{border-top:1px solid #f3e9d21a;color:#f3e9d2cc;font-size:.95rem;margin-top:2rem;padding-top:1.5rem;text-align:center}.auth-link a{border:2px solid var(--color-accent);border-radius:25px;color:var(--color-accent);display:inline-block;font-weight:600;margin-top:.5rem;padding:.75rem 2rem;text-decoration:none;transition:all .3s}.auth-link a:hover{background-color:#dd9b4a1a;transform:translateY(-1px)}.divider{margin:2rem 0;position:relative;text-align:center}.divider:before{background-color:#f3e9d24d;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.divider span{background:var(--color-surface-dark);color:#f3e9d2cc;font-size:.85rem;font-weight:300;letter-spacing:.5px;padding:0 1rem;position:relative}.reset-description{color:#f3e9d2cc;font-size:.95rem;line-height:1.5;margin-bottom:1.5rem;text-align:center}.success-message{background-color:#34c7591a;border:1px solid #34c75933;border-radius:12px;color:var(--color-success);margin-bottom:1rem;padding:.75rem;text-align:center}.forgot-password-link{margin-bottom:.5rem;margin-top:-.25rem;text-align:right}.forgot-password-link a{color:var(--color-accent);font-size:.875rem;font-weight:400;text-decoration:none;transition:opacity .3s}.forgot-password-link a:hover{opacity:.8}.waitlist-button{background-color:initial;border:2px solid var(--color-accent);border-radius:25px;color:var(--color-accent);cursor:pointer;font-size:1.125rem;font-weight:600;margin-bottom:1rem;padding:1rem;transition:all .3s;width:100%}.waitlist-button:hover:not(:disabled){background-color:#dd9b4a1a;transform:translateY(-2px)}.waitlist-button:disabled{cursor:not-allowed;opacity:.6}.divider-text{color:#f3e9d2b3;font-size:.95rem;margin:1.5rem 0;text-align:center}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}.shake{animation:shake .5s ease-in-out}.waitlist-info{color:#f3e9d2cc;font-size:.95rem;line-height:1.5;margin:1.5rem 0 2rem;text-align:center}.sign-out-button{background-color:#baa5944d;border:1px solid #f3e9d24d;border-radius:25px;color:var(--color-text-inv);cursor:pointer;font-size:1.125rem;font-weight:600;padding:1rem;transition:all .3s;width:100%}.sign-out-button:hover{background-color:#baa59466;border-color:#f3e9d280}.text-button{background:none;border:none;color:#f3e9d2b3;cursor:pointer;font-size:.95rem;margin-top:1rem;padding:.5rem;transition:color .3s}.text-button:hover:not(:disabled){color:#f3e9d2e6;text-decoration:underline}.text-button:disabled{cursor:not-allowed;opacity:.5}.welcome-content{max-width:400px;padding:2rem;text-align:center;width:100%;z-index:1}.welcome-tagline{color:#f3e9d2cc;font-size:1rem;font-weight:400;line-height:1.5;margin:.75rem 0 0}.welcome-contact{color:#f3e9d280;font-size:.8rem;font-weight:300;line-height:1.5;margin:.5rem 0 0}.welcome-contact a{color:#f3e9d2b3;text-decoration:none;transition:color .3s}.welcome-contact a:hover{color:#f3e9d2}.back-to-welcome{align-items:center;color:#f3e9d2b3;display:inline-flex;font-size:.9rem;font-weight:400;gap:.25rem;left:1.5rem;position:absolute;text-decoration:none;top:1.5rem;transition:color .3s;z-index:2}.back-to-welcome:hover{color:#f3e9d2}.back-to-welcome svg{height:16px;width:16px}.welcome-dropdown{background-color:var(--color-accent);border-radius:var(--radius-xl);box-shadow:var(--shadow);margin:var(--space-8) auto 0 auto;overflow:hidden;transition:border-radius var(--dur-slow) var(--ease),box-shadow var(--dur-slow) var(--ease);width:220px}.welcome-dropdown-open{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.welcome-dropdown-trigger{align-items:center;background:none;border:none;color:var(--color-on-accent);cursor:pointer;display:flex;font-size:var(--text-base);font-weight:var(--weight-semibold);gap:var(--space-2);justify-content:center;padding:var(--space-3) var(--space-5);transition:background-color var(--dur) var(--ease);width:100%}.welcome-dropdown-trigger:hover{background-color:#0000000d}.welcome-dropdown-chevron{flex-shrink:0;height:16px;transition:transform var(--dur-slow) var(--ease);width:16px}.welcome-dropdown-open .welcome-dropdown-chevron{transform:rotate(180deg)}.welcome-dropdown-options{background-color:var(--color-surface);max-height:0;overflow:hidden;transition:max-height var(--dur-slow) var(--ease)}.welcome-dropdown-open .welcome-dropdown-options{max-height:100px}.welcome-dropdown-option{border-top:1px solid var(--color-border-muted);color:var(--color-text);cursor:pointer;display:block;font-size:var(--text-base);font-weight:var(--weight-semibold);padding:var(--space-2) var(--space-5);text-align:center;text-decoration:none;transition:background-color var(--dur) var(--ease);width:100%}.welcome-dropdown-option:hover{background-color:var(--color-accent-soft)}.house-loader{color:var(--color-text-inv);height:60px;width:60px}.house-path{stroke-dasharray:160;stroke-dashoffset:160;animation:drawHouse 2s ease-in-out infinite}@keyframes drawHouse{0%{stroke-dashoffset:160;opacity:0}10%{opacity:1}30%,88%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}.app-loading-container{align-items:center;background:var(--color-surface-dark);display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:var(--z-overlay)}.loading-content{align-items:center;display:flex;flex-direction:column;gap:var(--space-6)}.loading-message{color:var(--color-text-inv);font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--text-md-lh);max-width:300px;text-align:center}*{box-sizing:border-box;margin:0;padding:0}body{background:#4b4c3a;color:#333;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;line-height:1.6;min-height:100vh}.App,.home-container{display:flex;flex-direction:column;min-height:100vh}.app-header{align-items:center;background-color:#2c3e50;box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1rem 2rem}.app-header h1{font-size:1.8rem;font-weight:500}.user-info{gap:1rem}.logout-button{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;font-size:.9rem;transition:background-color .3s}.logout-button:hover{background-color:#c0392b}.app-content{display:flex;flex:1 1;padding:1rem}@media (max-width:768px){.app-content{flex-direction:column}}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;max-width:500px;padding:1rem}.app-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;color:#6c757d;font-size:.9rem;padding:1rem 2rem;text-align:center}.highlight-animation{animation:highlight 2s ease-in-out}@keyframes highlight{0%,to{background-color:initial}25%,75%{background-color:#7c3aed1a;box-shadow:0 0 10px #7c3aed4d}}.chat-toggle-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;left:20px;position:fixed;top:20px;transition:all .3s ease;width:48px;z-index:1000}.chat-toggle-button:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:scale(1.05)}.chat-menu{animation:slideIn .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;height:600px;left:20px;max-height:calc(100vh - 40px);max-width:calc(100vw - 40px);position:fixed;top:20px;width:400px;z-index:1001}.chat-menu.minimized{height:auto}.chat-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;color:#fff;display:flex;flex-shrink:0;justify-content:space-between;padding:16px}.chat-header-title{align-items:center;font-size:16px;font-weight:600}.chat-header-actions,.chat-header-title{display:flex;gap:8px}.chat-header-button{align-items:center;background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;transition:background .2s ease;width:32px}.chat-header-button:hover{background:#ffffff4d}.chat-messages{background:#f9fafb;flex:1 1;gap:12px;overflow-y:auto;padding:16px}.chat-empty,.chat-messages{display:flex;flex-direction:column}.chat-empty{align-items:center;color:#9ca3af;height:100%;justify-content:center;text-align:center}.chat-empty svg{color:#d1d5db;margin-bottom:12px}.chat-empty p{font-size:14px;margin:4px 0}.chat-empty-hint{color:#9ca3af;font-size:12px!important}.chat-message{animation:fadeIn .3s ease;display:flex;gap:8px}.chat-message.user{flex-direction:row-reverse}.chat-message-avatar{align-items:center;background:#e5e7eb;border-radius:50%;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.chat-message.user .chat-message-avatar{background:#ddd6fe;color:#7c3aed}.chat-message.assistant .chat-message-avatar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.chat-message-content{display:flex;flex-direction:column;gap:4px;max-width:75%}.chat-message-text{word-wrap:break-word;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;line-height:1.5;padding:8px 12px}.chat-message.user .chat-message-text{background:#7c3aed;border-color:#7c3aed;color:#fff}.chat-message-text strong{font-weight:600}.chat-message-text em{font-style:italic}.chat-message-text code{background:#f3f4f6;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:2px 4px}.chat-message-text pre{background:#1f2937;border-radius:6px;color:#f3f4f6;margin:8px 0;overflow-x:auto;padding:12px}.chat-message-text pre code{background:#0000;color:inherit;padding:0}.chat-message-text pre{font-size:11px;line-height:1.3;max-height:600px;overflow-y:auto}.chat-message-text pre code{font-size:11px}.chat-message-tools{color:#6b7280;font-size:12px;padding-left:12px}.chat-message-time{color:#9ca3af;font-size:11px;padding-left:12px}.chat-message.user .chat-message-time{padding-left:0;padding-right:12px;text-align:right}.chat-progress{animation:fadeIn .3s ease;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px}.chat-progress-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.chat-progress-status{font-size:14px;font-weight:500}.chat-progress-bar{background:#e5e7eb;border-radius:2px;height:4px;margin-bottom:12px;overflow:hidden}.chat-progress-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);height:100%;transition:width .3s ease}.chat-activity-feed{display:flex;flex-direction:column;gap:6px}.chat-activity-text{color:#374151;font-size:13px;line-height:1.5;white-space:pre-wrap}.chat-progress-steps{display:flex;flex-direction:column;gap:6px}.chat-progress-step{align-items:center;display:flex;font-size:13px;gap:6px}.chat-progress-step-name{font-weight:500}.chat-progress-step-result{color:#6b7280;font-size:12px;margin-left:4px}.chat-progress-step-result:before{content:"— "}.chat-error{animation:fadeIn .3s ease;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;padding:8px 12px}.chat-input-container{background:#fff;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:8px;padding:16px}.chat-input{border:1px solid #d1d5db;border-radius:6px;flex:1 1;font-family:inherit;font-size:14px;max-height:120px;min-height:40px;outline:none;padding:8px 12px;resize:none;transition:border-color .2s ease}.chat-input:focus{border-color:#7c3aed}.chat-input:disabled{background:#f9fafb;color:#9ca3af}.chat-send-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;transition:all .2s ease;width:40px}.chat-send-button:hover:not(:disabled){box-shadow:0 4px 6px -1px #0000001a;transform:scale(1.05)}.chat-send-button:disabled{cursor:not-allowed;opacity:.5}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-spin{animation:spin 1s linear infinite}@media (max-width:640px){.chat-menu{height:calc(100vh - 100px);width:calc(100vw - 40px)}.chat-message-content{max-width:85%}}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#f3f4f6}.chat-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#9ca3af}.text-green-500{color:#10b981}.text-green-600{color:#059669}.text-blue-500{color:#3b82f6}.text-blue-600{color:#2563eb}.text-red-500{color:#ef4444}.text-red-600{color:#dc2626}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-purple-600{color:#9333ea}.clickable-logo{cursor:pointer;transition:transform .2s ease}.clickable-logo:hover{transform:scale(1.05)}.logo-popup-overlay{bottom:0;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:1002}.logo-popup-content{animation:growFromLogo .15s ease-out;background:#f3e9d2;border-radius:12px;box-shadow:0 4px 20px #00000026;left:16px;overflow:visible;pointer-events:all;position:absolute;top:16px;transform-origin:48px 48px;width:400px}@keyframes growFromLogo{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.logo-popup-content.closing{animation:shrinkToLogo .15s ease-in}@keyframes shrinkToLogo{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}.logo-popup-header{position:absolute;right:-10px;top:-10px;z-index:1}.logo-popup-close{align-items:center;background:#f3e9d2;border:1px solid #baa594;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#54524f;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;transition:all .2s;width:32px}.logo-popup-close:hover{background-color:#baa594;transform:scale(1.1)}.logo-popup-body{padding:80px 16px 16px;position:relative}.popup-logo-container{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.popup-logo{height:48px;width:auto}.logo-text{color:#54524f;font-size:1.25rem;font-weight:600}.input-container{border:2px solid #baa594;border-radius:8px;margin-bottom:0;overflow:hidden;position:relative;transition:border-color .2s}.input-container:focus-within{border-color:#dd9b4a}.logo-popup-input{background:#f3e9d2;border:none;box-sizing:border-box;display:block;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:1rem;height:100%;margin:0;min-height:120px;outline:none;padding:1rem;resize:none;width:100%}.quick-command-hint{bottom:-20px;color:#888;font-size:11px;left:0;opacity:.7;position:absolute;right:0;text-align:center;transition:opacity .2s}.quick-command-hint:hover{opacity:1}.logo-popup-input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed;margin:0}.logo-popup-input:disabled::placeholder{color:#888;font-style:italic}.microphone-icon{color:#54524f;cursor:pointer;transition:all .2s}.microphone-icon:hover{opacity:.8;transform:scale(1.1)}.microphone-icon.recording{animation:pulse 1.5s infinite;color:red}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.send-icon{cursor:pointer;transition:transform .2s ease,opacity .2s ease}.send-icon:hover{transform:scale(1.1)}.logo-popup-chat-container{display:flex;flex-direction:column;height:500px;margin-top:0}.logo-popup-messages{background:#ffffff4d;border-radius:8px;flex:1 1;margin-bottom:16px;min-height:0;overflow-y:auto;padding:16px}.logo-popup-input-wrapper{margin-top:auto;position:relative}.logo-popup-chat-input{background:#fff;border:1px solid #ddd;border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;max-height:120px;min-height:40px;outline:none;overflow-y:auto;padding:10px 40px;resize:none;transition:border-color .2s,height .1s ease;width:100%}.logo-popup-chat-input:focus{border-color:#007aff}.logo-popup-chat-input:disabled{background:#f5f5f5;cursor:not-allowed}.action-buttons-container{box-sizing:border-box;display:flex;flex-direction:column;gap:.5rem;left:0;margin-top:12px;max-height:calc(100vh - 300px);overflow-y:auto;padding:2px 4px 8px 2px;position:absolute;top:100%;width:100%}.action-buttons{display:flex;flex-direction:row;gap:.5rem;width:100%}.logo-popup-content .action-button{align-items:center!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#f3e9d2!important;border:2px solid #f3e9d24d!important;border-radius:22px!important;box-shadow:0 2px 8px #0000001a!important;color:#dd9b4a!important;cursor:pointer;display:inline-flex!important;font-size:13px!important;font-weight:600!important;gap:8px!important;justify-content:center!important;outline:none;padding:10px 20px!important;transition:all .15s ease!important;white-space:nowrap}.logo-popup-content .action-button:disabled,.logo-popup-content .action-button:disabled:hover{background-color:#f3e9d2!important;box-shadow:0 2px 8px #0000001a!important;color:inherit!important;cursor:not-allowed;opacity:.5;transform:none!important}.logo-popup-content .action-button:hover{background-color:#dd9b4a!important;box-shadow:0 4px 16px #00000026!important;color:#f3e9d2!important;transform:scale(1.02)!important}.action-button svg{flex-shrink:0}.logout-row{display:flex;width:100%}.logout-row .action-button{width:auto}.logo-popup-content .logout-action{color:#b67332!important}.logo-popup-content .logout-action:hover{background-color:#b67332!important;color:#f3e9d2!important}.logo-popup-content .admin-action-button{background-color:var(--color-admin)!important;border:2px solid var(--color-admin)!important;color:#fff!important}.logo-popup-content .admin-action-button:hover{background-color:var(--color-admin-hover)!important;border-color:var(--color-admin-hover)!important;color:#fff!important}.ios-dialog{flex-direction:column;gap:var(--space-5);padding:var(--space-8) var(--space-2) var(--space-4);position:relative;text-align:center}.ios-dialog,.ios-dialog__close{align-items:center;display:flex}.ios-dialog__close{-webkit-appearance:none;appearance:none;background:#0000;border:none;border-radius:var(--radius-full);color:var(--color-text-muted);cursor:pointer;font-size:22px;height:32px;justify-content:center;line-height:1;position:absolute;right:0;top:0;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease);width:32px}.ios-dialog__close:hover{background:var(--color-accent-soft);color:var(--color-text);transform:scale(1.05)}.ios-dialog__icon-wrap{align-items:center;background:linear-gradient(135deg,var(--color-success) 0,var(--color-surface-dark) 100%);border-radius:var(--radius-lg);color:var(--color-text-inv);display:inline-flex;height:80px;justify-content:center;margin:0;width:80px}.ios-dialog__title{color:var(--color-text);font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--text-2xl-lh);margin:0}.ios-dialog__body{color:var(--color-text-muted);margin:0;max-width:480px}.ios-dialog__features{text-align:left;width:100%}.ios-dialog__features-title{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--text-lg-lh);margin:0 0 var(--space-3) 0}.ios-dialog__features-list{list-style:none;margin:0;padding:0}.ios-dialog__features-list li{color:var(--color-text-muted);line-height:var(--text-base-lh);margin-bottom:var(--space-2);padding-left:var(--space-6);position:relative}.ios-dialog__features-list li:last-child{margin-bottom:0}.ios-dialog__features-list li:before{color:var(--color-success-text);content:"✓";font-weight:var(--weight-bold);left:0;position:absolute}.ios-dialog__download-title{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--text-lg-lh);margin:var(--space-2) 0 0 0}.ios-dialog__store-btn{align-items:center;display:inline-flex;justify-content:center;transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease)}.ios-dialog__store-btn:hover{opacity:.9;transform:translateY(-2px)}.ios-dialog__store-badge{display:block;height:40px}.ios-dialog__qr{align-items:center;background:var(--color-surface-soft);border-radius:var(--radius);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4)}.ios-dialog__qr-image{border-radius:var(--radius-sm);display:block;height:120px;width:120px}.ios-dialog__qr-caption{color:var(--color-text-muted);margin:0}.user-home-container{background:var(--color-surface-dark);display:flex;flex-direction:column;font-family:var(--font-sans);max-width:100%;min-height:100vh;overflow-x:hidden;width:100%}.user-home-header{background-color:initial;box-sizing:border-box;padding:var(--space-8);width:100%}.user-home-header-content{align-items:center;display:flex;justify-content:space-between;max-width:100%;width:100%}.user-home-header-left{align-items:center;display:flex;gap:var(--space-4)}.welcome-text{color:var(--color-text-inv);font-size:var(--text-lg);font-weight:var(--weight-light);letter-spacing:.5px}.user-home-main{box-sizing:border-box;flex:1 1;overflow-x:hidden;padding:var(--space-6) var(--space-4);width:100%}.projects-section{background-color:initial;box-sizing:border-box;overflow:visible;width:100%}.user-home-section-header{align-items:center;display:flex;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-6)}.user-home-empty-state{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-16) var(--space-8);text-align:center}.projects-list{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:var(--space-6);padding-top:4px}.project-item{cursor:pointer;flex-direction:column;min-height:160px;position:relative;text-align:center}.project-icon,.project-item{align-items:center;display:flex}.project-icon{color:var(--color-text-inv);flex-shrink:0;height:140px;justify-content:center;margin-bottom:var(--space-4);width:100%}.project-icon svg{height:48px;width:48px}.project-icon.project-icon-photo{background-color:#00000026;border-radius:8px;overflow:hidden}.project-cover-image{display:block;height:100%;object-fit:cover;width:100%}.project-content{align-items:center;display:flex;flex-direction:column;gap:var(--space-2)}.project-item .project-name{color:var(--color-text-inv);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:1.4;margin:0}.project-item .project-date{color:var(--color-text-inv-muted);font-size:var(--text-sm)}.new-project-item{border-style:dashed!important}.new-project-item .project-icon{opacity:.7;transition:opacity var(--dur) var(--ease)}.new-project-item:hover .project-icon{opacity:1}.project-menu-container{position:absolute;right:var(--space-3);top:var(--space-3);z-index:var(--z-raised)}.project-menu-dropdown{background-color:#54524f;border:1px solid var(--color-border-inv);border-radius:var(--radius-sm);box-shadow:var(--shadow);margin-top:4px;min-width:150px;overflow:hidden;position:absolute;right:0;top:100%;z-index:var(--z-dropdown)}.menu-item{align-items:center;background:none;border:none;color:var(--color-text-inv);cursor:pointer;display:flex;font-size:var(--text-base);gap:var(--space-2);padding:10px 16px;text-align:left;transition:background-color var(--dur) var(--ease);width:100%}.menu-item:hover{background-color:#f3e9d21a}.menu-item.delete-item{color:var(--color-danger)}.error-message,.menu-item.delete-item:hover{background-color:var(--color-danger-soft)}.error-message{border:1px solid #c2524040;border-radius:var(--radius-sm);color:var(--color-danger);font-size:var(--text-base);margin-bottom:var(--space-6);padding:var(--space-4)}@media (max-width:1024px){.projects-list{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media (max-width:768px){.user-home-header{padding:var(--space-6)}.user-home-header-content{flex-wrap:wrap;gap:var(--space-4)}.user-home-header-left{flex:1 1}.welcome-text{font-size:var(--text-md)}.user-home-main{padding:var(--space-4) 0}.projects-section{padding:var(--space-4)}.projects-list{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.project-item{min-height:140px}.project-icon{height:100px}.project-icon svg{height:40px;width:40px}.project-item .project-name{font-size:var(--text-sm)}}@media (max-width:480px){.projects-list{grid-template-columns:repeat(2,1fr)}}.admin-section{border-top:1px solid var(--color-border-inv);margin-top:var(--space-12);padding-top:var(--space-8)}.admin-section .user-home-section-header{margin-bottom:var(--space-4)}.admin-section-notice{align-items:center;background-color:var(--color-warn-soft);border:1px solid #dd9b4a59;border-radius:var(--radius-sm);color:var(--color-text-inv);display:flex;font-size:var(--text-base);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4)}.other-project{position:relative}.project-item .project-owner{color:var(--color-text-inv-subtle);display:block;font-size:var(--text-sm);font-style:italic;margin-top:4px}@media (max-width:768px){.admin-section{margin-top:var(--space-8)}.admin-section-notice{font-size:var(--text-sm);padding:10px 12px}}.shared-section{margin-top:var(--space-12)}.shared-section-notice{align-items:center;background:#f3e9d20d;border:1px solid var(--color-border-inv);border-radius:var(--radius-sm);color:var(--color-text-inv-muted);display:flex;font-size:var(--text-base);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4)}.shared-indicator{align-items:center;background:#f3e9d21a;border-radius:var(--radius-full);color:var(--color-text-inv);display:flex;justify-content:center;padding:6px;position:absolute;right:var(--space-3);top:var(--space-3)}.project-info{margin-bottom:var(--space-4);margin-top:calc(var(--space-3)*-1)}.project-info h3{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--text-lg-lh);margin:0 0 var(--space-2) 0}.share-description{color:var(--color-text-muted);margin:0}.alert,.share-description{font-size:var(--text-base);line-height:var(--text-base-lh)}.alert{align-items:flex-start;border:1px solid #0000;border-radius:var(--radius-sm);display:flex;margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4)}.alert-error{background:var(--color-danger-soft);border-color:#c2524059;color:#8a3527}.alert-success{background:var(--color-success-soft);border-color:#88b27c59;color:#5a7a4f}.collaborators-section{margin-top:0}.add-viewer-section,.owner-section,.pending-invitations-section,.viewers-section{margin-bottom:var(--space-6)}.collaborators-section h4{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.06em;line-height:var(--text-sm-lh);margin:0 0 var(--space-3) 0;text-transform:uppercase}.user-card{align-items:center;background:#4b4c3a0a;border:1px solid var(--color-border-muted);border-radius:var(--radius-sm);display:flex;justify-content:space-between;margin-bottom:var(--space-2);padding:var(--space-3) var(--space-4);transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.user-card:hover{background:#4b4c3a12;border-color:var(--color-border)}.user-info{align-items:center;display:flex;gap:var(--space-3)}.user-name{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--text-base-lh);margin-bottom:2px}.invitation-meta,.user-email{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--text-sm-lh)}.invitation-meta{margin-top:var(--space-1)}.invitation-actions{display:flex;gap:var(--space-2)}.viewers-list{margin-top:0}.no-viewers{background:var(--color-surface-soft);border:1px dashed var(--color-border-muted);border-radius:var(--radius-sm);color:var(--color-text-subtle);font-size:var(--text-base);font-style:italic;line-height:var(--text-base-lh);margin:var(--space-3) 0;padding:var(--space-5);text-align:center}.add-viewer-form{display:flex;flex-direction:column;gap:var(--space-3)}.email-form-row{align-items:stretch;display:flex;gap:var(--space-2)}.email-form-row>*{align-self:stretch}.adding-message{color:var(--color-text-muted);flex:1 1;font-size:var(--text-base);font-style:italic;line-height:var(--text-base-lh);padding:var(--space-3) var(--space-4)}.invite-option{background:var(--color-accent-soft);border:1px solid var(--color-accent);border-radius:var(--radius-sm);margin-top:var(--space-2);padding:var(--space-4)}.invite-suggestion{color:var(--color-accent-hover);font-size:var(--text-base);line-height:var(--text-base-lh);margin:0 0 var(--space-3) 0}.homeowner-section{display:flex;flex-direction:column;gap:var(--space-4)}.homeowner-section h4{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.06em;line-height:var(--text-sm-lh);margin:0;text-transform:uppercase}.homeowner-description,.homeowner-loading,.homeowner-single-scan{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--text-base-lh);margin:0}.homeowner-subheading{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--text-base-lh);margin:0 0 var(--space-2) 0}.homeowner-subheading-row{align-items:baseline;display:flex;gap:var(--space-2);justify-content:space-between;margin-bottom:var(--space-2)}.homeowner-subheading-row .homeowner-subheading{margin:0}.homeowner-save-status{font-size:var(--text-sm);line-height:var(--text-sm-lh);white-space:nowrap}.homeowner-save-status--saving{color:var(--color-text-muted)}.homeowner-save-status--saved{color:#5a7a4f}.homeowner-save-status--error{color:#8a3527}.homeowner-field,.homeowner-room-list{display:flex;flex-direction:column}.homeowner-room-list{background:#4b4c3a0a;border:1px solid var(--color-border-muted);border-radius:var(--radius-sm);gap:var(--space-2);padding:var(--space-3) var(--space-4)}.homeowner-link-card{align-items:center;display:flex;gap:var(--space-2)}.homeowner-link-copy{flex:1 1;min-width:0}@media (max-width:480px){.add-viewer-form{flex-direction:column}}.ai-renderings-container{width:100%}.ai-renderings-controls{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.group-by-controls{align-items:center;display:flex;gap:.75rem}.group-by-controls span{color:#f3e9d299;font-size:.875rem}.group-by-controls button{background:#0000;border:1px solid #f3e9d24d;border-radius:6px;color:#f3e9d2cc;cursor:pointer;font-size:.875rem;padding:.375rem .75rem;transition:all .2s ease}.group-by-controls button:hover{background:#baa59433;border-color:#f3e9d280}.group-by-controls button.active{background:#baa59466;border-color:#f3e9d299;color:#f3e9d2}.enhancement-count{color:#f3e9d299;font-size:.875rem}.ai-renderings-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:2rem}.ai-rendering-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#baa5944d;border:2px solid #f3e9d233;border-radius:12px;cursor:pointer;overflow:hidden;transition:all .2s ease}.ai-rendering-card:hover{background-color:#baa59466;border-color:#f3e9d24d;transform:translateY(-2px)}.ai-rendering-card img{display:block;height:200px;object-fit:cover;width:100%}.ai-rendering-info{padding:1rem}.ai-rendering-style{color:#f3e9d2;font-size:.9rem;font-weight:400;margin:0 0 .25rem;text-transform:capitalize}.ai-rendering-room{color:#f3e9d299;font-size:.8rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-renderings-grouped{width:100%}.ai-rendering-group{margin-bottom:2.5rem}.ai-rendering-group h3{border-bottom:1px solid #f3e9d233;color:#f3e9d2;font-size:1.1rem;font-weight:400;margin:0 0 1rem;padding-bottom:.5rem}.ai-renderings-error,.ai-renderings-loading,.ai-renderings-placeholder{background-color:#baa5944d;border:2px dashed #f3e9d233;border-radius:12px;padding:3rem;text-align:center}.ai-renderings-error p,.ai-renderings-loading p,.ai-renderings-placeholder p{color:#f3e9d2cc;font-size:1rem;margin:0}.ai-renderings-hint{color:#f3e9d299!important;font-size:.875rem!important;margin-top:.5rem!important}.ai-rendering-modal{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.ai-rendering-modal-content{background:#2a2b22;border-radius:12px;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;overflow:hidden;position:relative}.close-modal{align-items:center;background:#00000080;border:none;border-radius:50%;color:#f3e9d2;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:40px;z-index:1}.close-modal:hover{background:#000000b3;transform:scale(1.1)}.ai-rendering-modal-content img{max-height:70vh;max-width:100%;object-fit:contain}.modal-info{background:#0000004d;padding:1.5rem}.modal-info h3{color:#f3e9d2;font-size:1.25rem;font-weight:400;margin:0 0 .5rem;text-transform:capitalize}.modal-info p{color:#f3e9d2cc;font-size:.875rem;margin:0}.enhancement-prompt{color:#f3e9d299!important;font-style:italic;margin-top:1rem!important}@media (max-width:768px){.ai-renderings-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.ai-rendering-card img{height:150px}.ai-renderings-controls{align-items:flex-start;flex-direction:column;gap:1rem}.group-by-controls{width:100%}}.project-detail-container{background:#4b4c3a;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,Arial,sans-serif;min-height:100vh}.project-detail-header{background-color:initial;padding:2rem}.header-content{justify-content:space-between}.header-content,.header-left{align-items:center;display:flex}.header-left{gap:1rem}.header-logo{height:48px;width:auto}.project-detail-title{font-size:1.125rem;font-weight:var(--weight-light);letter-spacing:.5px;margin:0}.project-detail-admin-badge{align-self:center;margin-left:var(--space-4)}.admin-warning-banner{align-items:center;background-color:var(--color-admin);border-bottom:2px solid var(--color-admin-soft);color:#fff;display:flex;font-size:var(--text-base);font-weight:var(--weight-medium);justify-content:center;padding:var(--space-3) var(--space-8)}.admin-warning-banner__badge{margin-right:var(--space-3)}.admin-warning-banner{gap:var(--space-4)}.admin-warning-banner .copy-project-button{background:#fff;border-color:#fff;color:var(--color-admin)}.admin-warning-banner .copy-project-button:hover{background:#f5f5f5;border-color:#f5f5f5;color:var(--color-admin)}.header-actions{align-items:center;display:flex;gap:2rem}.logout-button{background-color:initial;border:1px solid #f3e9d24d;border-radius:6px;color:#f3e9d2;cursor:pointer;font-size:.875rem;font-weight:300;letter-spacing:.3px;padding:.5rem 1rem;transition:all .2s ease}.logout-button:hover{background-color:#baa5944d;border-color:#f3e9d280}.project-detail-main{flex:1 1;padding:1.5rem 0;width:100%}.project-overview{align-items:flex-start;display:flex;gap:2rem;margin-bottom:3rem}.project-image-container{flex-shrink:0;height:200px;width:300px}.project-image{border-radius:12px;object-fit:cover}.project-image,.project-image-placeholder{border:2px solid #f3e9d233;height:100%;width:100%}.project-image-placeholder{align-items:center;background-color:#baa5944d;border-radius:12px;display:flex;justify-content:center}.project-image-placeholder svg{color:#f3e9d266;height:60px;width:60px}.project-details{color:#f3e9d2;flex:1 1}.project-details h2{font-size:1.25rem;font-weight:300;letter-spacing:.5px;margin:0 0 1rem}.project-details p{color:#f3e9d2cc;font-size:1rem;line-height:1.6;margin:0}.content-section{margin-bottom:3rem;overflow:visible;position:relative}.collapsible-section{overflow:visible}.collapsible-section .collapsible-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:1.5rem;-webkit-user-select:none;user-select:none}.collapsible-section .collapsible-header:hover{opacity:.8}.collapsible-section .collapsible-header h2{margin:0}.collapsible-header-content{align-items:center;display:flex;gap:1.5rem}.saved-address{color:#f3e9d2b3;font-size:.9rem;font-weight:300;letter-spacing:.3px}.collapse-icon{color:#f3e9d2;transition:transform .3s ease}.collapse-icon.collapsed{transform:rotate(-90deg)}.structures-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));overflow:visible;position:relative}.structures-grid--below-empty{margin-top:var(--space-8)}.visually-hidden-file{display:none}.structure-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#baa5944d;border:2px solid #f3e9d233;border-radius:12px;cursor:pointer;overflow:visible;padding:0;position:relative;transition:all .2s ease}.structure-card:has(.room-menu-dropdown),.structure-card:has(.structure-menu-dropdown){z-index:10}.structure-card:hover{background-color:#baa59466;border-color:#f3e9d24d;transform:translateY(-2px)}.structure-card-header{background-color:#2d4a2b;border-radius:10px 10px 0 0;margin:0;padding:1rem;position:relative}.structure-card-header h3{color:#f3e9d2;font-size:.9rem;font-weight:400;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.structure-thumbnail{border-radius:0;height:150px;object-fit:cover;width:100%}.structure-thumbnail-placeholder{align-items:center;background-color:#baa59426;border-radius:0;display:flex;height:150px;justify-content:center;width:100%}.structure-thumbnail-placeholder svg{color:#f3e9d24d;height:50px;width:50px}.structure-meta-info{border-radius:0 0 10px 10px;overflow:hidden;padding:.75rem 1rem}.structure-room-count{color:#f3e9d2cc;font-size:.875rem;font-weight:500;margin:0 0 .25rem}.structure-date{color:#f3e9d299;font-size:.75rem;margin:0}.new-room-scan-card{background:#baa59426;border:2px dashed #f3e9d24d}.new-room-scan-card:hover{background:#baa5944d;border-color:#f3e9d280}.new-room-scan-card .structure-thumbnail-placeholder{opacity:.7}.new-room-scan-card:hover .structure-thumbnail-placeholder{opacity:1}.room-menu-container,.structure-menu-container{position:absolute;right:8px;top:8px;z-index:20}.room-menu-button,.structure-menu-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#f3e9d299;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.room-menu-button:hover,.structure-menu-button:hover{background-color:#f3e9d21a;color:#f3e9d2}.room-menu-dropdown,.structure-menu-dropdown{background-color:#54524f;border:1px solid #f3e9d233;border-radius:8px;box-shadow:0 4px 12px #0000004d;margin-top:4px;min-width:150px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.scan-filter-controls{align-items:baseline;display:flex;gap:var(--space-8)}.scan-toggle{align-items:center;display:inline-flex;gap:0}.scan-toggle__label{color:var(--color-text-inv-subtle);font-size:var(--text-base);margin-right:var(--space-2)}.scan-toggle__btn{-webkit-appearance:none;appearance:none;background:#0000;border:1px solid var(--color-border-inv);color:var(--color-text-inv-muted);cursor:pointer;font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-regular);line-height:1.5;outline:none;padding:var(--space-2) var(--space-3);transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.scan-toggle__btn:first-of-type{border-bottom-left-radius:var(--radius-xs);border-right-width:0;border-top-left-radius:var(--radius-xs)}.scan-toggle__btn:last-of-type{border-bottom-right-radius:var(--radius-xs);border-top-right-radius:var(--radius-xs)}.scan-toggle__btn:hover{background:#baa59433;border-color:var(--color-border-inv-strong)}.scan-toggle__btn:focus-visible{box-shadow:0 0 0 2px var(--color-accent-soft)}.scan-toggle__btn.is-active{background:#baa59466;border-color:var(--color-border-inv-strong);color:var(--color-text-inv)}.room-card .structure-card-header{min-height:75px}.room-meta-info{margin-top:.5rem}.room-structure-name{color:#f3e9d280;font-size:.75rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-debug-category{color:#f3e9d266;font-size:.7rem;font-style:italic;margin:.2rem 0 0}.documents-placeholder{background-color:#baa5944d;border:2px solid #f3e9d233;border-radius:12px;padding:2rem}.documents-placeholder p{color:#f3e9d299;font-size:.9rem;margin:0}.empty-state{color:#f3e9d2cc;padding:3rem 2rem;text-align:center}.empty-state p{font-size:1rem;margin:.5rem 0}.empty-state-hint{color:#f3e9d299;font-size:.875rem}.error-message{background-color:#ff00001a;border:1px solid #f003;border-radius:12px;color:#ff6b6b;margin:2rem auto;max-width:600px;padding:2rem;text-align:center}.error-message .back-button{margin-top:var(--space-4)}@media (max-width:1024px){.project-overview{flex-direction:column}.project-image-container{max-width:400px;width:100%}}@media (max-width:768px){.project-detail-header{padding:1.5rem}.header-content{flex-wrap:wrap;gap:1rem}.header-left{flex:1 1}.header-logo{height:40px}.project-detail-header h1{font-size:1rem}.project-detail-main{padding:1rem 0}.structures-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.structure-thumbnail,.structure-thumbnail-placeholder{height:120px}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.scan-filter-controls{flex-direction:column;gap:var(--space-4);width:100%}.scan-toggle{justify-content:center;width:100%}}.documents-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.construction-documents-section{background-color:#4b4c3a4d;border-top:2px solid #f3e9d233;margin-top:3rem;padding-top:2rem}.document-actions{border-top:1px solid #f3e9d21a;display:flex;gap:.5rem;padding:.75rem 1.5rem}.document-actions .edit-button{align-items:center;background:#0000;border:1px solid #f3e9d24d;border-radius:6px;color:#f3e9d2;cursor:pointer;display:flex;font-size:.875rem;gap:.375rem;padding:.375rem .75rem;transition:all .2s ease}.document-actions .edit-button:hover{background:#baa5944d;border-color:#f3e9d280}.document-icon{color:#f3e9d2;flex-shrink:0}.document-info{flex:1 1;min-width:0}.document-info h4{color:#f3e9d2;font-size:1rem;font-weight:400;margin:0 0 .25rem}.document-filename{color:#f3e9d2b3;font-size:.8rem;margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-date{color:#f3e9d299;font-size:.75rem;margin:0}.document-feature{color:#72945fe6;font-size:.75rem;font-style:italic;margin:.25rem 0 0}.documents-placeholder{color:#f3e9d299;padding:3rem 2rem;text-align:center}.documents-placeholder p{margin:0 0 .5rem}.documents-hint{color:#f3e9d280;font-size:.9rem}.admin-menu-item{align-items:center;display:flex;justify-content:space-between;width:100%}.admin-menu-item__label{align-items:center;display:inline-flex;gap:var(--space-2)}.admin-menu-item__pill{align-items:center;background-color:var(--color-admin);border-radius:var(--radius-xs);color:#fff;display:inline-flex;font-size:var(--text-xs);font-weight:var(--weight-semibold);justify-content:center;padding:2px var(--space-2)}.admin-menu-item__pill-icon{margin-right:2px}.view-only-banner{align-items:center;background:linear-gradient(90deg,#7b1fa2,#9c27b0);box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;font-size:14px;gap:16px;justify-content:center;padding:12px 24px}.view-only-label{background:#fff3;border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.view-only-message{flex:1 1;text-align:center}.view-only-banner .copy-project-button{background:#fff;border-color:#fff;color:#7b1fa2}.view-only-banner .copy-project-button:hover{background:#f5f5f5;border-color:#f5f5f5;color:#7b1fa2}.header-right{align-items:center;display:flex;gap:var(--space-3)}.project-notes{margin-top:var(--space-4);position:relative}.project-notes__textarea{background:#0003;border:1px solid #f3e9d233;border-radius:10px;color:#f3e9d2;font-family:inherit;font-size:.875rem;line-height:1.6;min-height:300px;outline:none;padding:1rem;resize:vertical;transition:border-color .2s ease;width:100%}.project-notes__textarea:focus{border-color:#f3e9d266}.project-notes__textarea::placeholder{color:#f3e9d24d}.project-notes__textarea:disabled{cursor:not-allowed;opacity:.6}.project-notes__save-status{color:#f3e9d280;font-size:.8rem;margin-top:.5rem;min-height:1.2em}.scan-delete-confirm__lead{margin-bottom:var(--space-4);margin-top:var(--space-4)}.scan-delete-confirm__list{margin-bottom:var(--space-4);margin-left:var(--space-6)}.scan-delete-confirm__warning{color:#ff6b6b;font-weight:var(--weight-bold)}.scan-delete-confirm__note{color:var(--color-text-inv-muted);margin-top:var(--space-4)}.parcel-map-container{border:1px solid #e0e0e0;border-radius:8px;margin-top:16px;overflow:hidden;position:relative;width:100%}.map-overlay-message{background:#ffffffe6;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#666;font-size:14px;left:50%;padding:16px 24px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1000}.parcel-adjustment-controls{background:#fffffff2;border-radius:8px;bottom:20px;box-shadow:0 2px 10px #0000001a;padding:15px;position:absolute;right:20px;z-index:1000}.control-label{color:#333;font-size:12px;font-weight:600;margin-bottom:10px;text-align:center}.control-buttons{align-items:center;flex-direction:column}.control-buttons,.control-row{display:flex;gap:5px}.control-btn{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.control-btn:hover{background:#f0f0f0;border-color:#999}.control-btn:active{background:#e0e0e0;transform:scale(.95)}.reset-btn{font-size:20px}.offset-indicator{color:#666;font-size:11px;font-style:italic;margin-top:8px;text-align:center}.distance-label{background:none!important;border:none!important}.distance-label-text{background:#fffffff2;border-radius:4px;box-shadow:0 1px 3px #0003;color:#333;font-size:12px;font-weight:600;padding:2px 8px;pointer-events:none;white-space:nowrap}.address-input{display:flex;flex-direction:column;font-family:var(--font-sans);gap:var(--space-5)}.address-input__form{display:flex;flex-direction:column;gap:var(--space-4)}.address-input__row{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:1fr 88px 128px}.address-input--dark .address-input__error,.address-input__error{color:var(--color-danger)}.address-input__buttons{display:flex;gap:var(--space-3);margin-top:var(--space-1)}.address-input__property{display:flex;flex-direction:column;gap:var(--space-3)}.address-input__property-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.address-input__details{border-top:1px solid var(--color-border-muted);display:flex;flex-direction:column;margin-top:var(--space-2)}.address-input--dark .address-input__details{border-top-color:var(--color-border-inv)}.address-input__detail-row{align-items:baseline;border-bottom:1px solid var(--color-border-muted);display:flex;font-size:var(--text-sm);gap:var(--space-4);justify-content:space-between;line-height:var(--text-sm-lh);padding:var(--space-2) 0}.address-input--dark .address-input__detail-row{border-bottom-color:var(--color-border-inv)}.address-input__detail-row:last-child{border-bottom:none}.address-input__detail-label{color:var(--color-text-muted);font-weight:var(--weight-medium)}.address-input--dark .address-input__detail-label{color:var(--color-text-inv-muted)}.address-input__detail-value{color:var(--color-text);text-align:right}.address-input--dark .address-input__detail-value{color:var(--color-text-inv)}.address-input__detail-link{color:var(--color-accent);font-size:var(--text-xs);margin-left:var(--space-2);text-decoration:none}.address-input__detail-link:hover{color:var(--color-accent-hover);text-decoration:underline}@media (max-width:600px){.address-input__row{grid-template-columns:1fr}.address-input__buttons{flex-direction:column}}.documents-hub{background:var(--color-surface-dark);font-family:var(--font-sans);min-height:100vh;padding:var(--space-8) var(--space-12)}.documents-hub--embedded{background:#0000;min-height:auto;padding:0}.documents-hub__status{align-items:center;display:flex;justify-content:center;min-height:200px}.documents-hub__status--error{color:var(--color-danger)}.documents-hub__header{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-8)}.documents-hub__back-btn{align-self:flex-start;margin-bottom:var(--space-2);padding-left:0;padding-right:0}.documents-hub__project-info{margin-bottom:var(--space-6);overflow:hidden;padding:0}.documents-hub__info-header-text{display:flex;flex-direction:column;gap:var(--space-1)}.documents-hub__info-body{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:1fr 1fr 1fr;padding-inline:var(--space-4)}.documents-hub__info-section{display:flex;flex-direction:column;gap:var(--space-2)}@media (max-width:900px){.documents-hub__info-body{grid-template-columns:1fr}}.documents-hub__grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.doc-type-card--disabled{cursor:default;opacity:.5}.doc-type-card__header{align-items:center;display:flex;gap:var(--space-3)}.doc-type-card__icon{align-items:center;border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.doc-type-card__info{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);min-width:0}.doc-type-card__title{font-weight:var(--weight-medium);line-height:1.3}.doc-type-card__add-btn{align-items:center;background:none;border:1.5px solid var(--color-border-inv);border-radius:var(--radius-full);color:var(--color-text-inv);cursor:pointer;display:flex;flex-shrink:0;font-size:20px;height:32px;justify-content:center;line-height:1;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease);width:32px}.doc-type-card__add-btn:hover:not(:disabled){background:#baa59466;border-color:var(--color-border-inv-strong)}.doc-type-card__add-btn:disabled{cursor:not-allowed;opacity:.3}.doc-type-card__note{font-style:italic;margin:var(--space-2) 0 0 52px}.doc-type-card__disabled-reason{color:var(--color-warn);margin:var(--space-1) 0 0 52px}.doc-list__header{margin-bottom:var(--space-6)}.doc-list__empty,.doc-list__header{align-items:center;display:flex;gap:var(--space-3)}.doc-list__empty{flex-direction:column;padding:var(--space-12) var(--space-6);text-align:center}.doc-list__create-btn{margin-top:var(--space-3)}.doc-list__items{display:flex;flex-direction:column;gap:var(--space-2)}.doc-list__item{align-items:center;display:flex;overflow:hidden;padding:0}.doc-list__item-content{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.doc-list__item-indicator{border-radius:2px;flex-shrink:0;height:32px;width:4px}.doc-list__item-info{display:flex;flex-direction:column;gap:var(--space-1)}.doc-list__item-delete{background:none;border:none;color:var(--color-text-inv-subtle);cursor:pointer;font-size:20px;padding:var(--space-3) var(--space-4);transition:color var(--dur) var(--ease)}.doc-list__item-delete:hover{color:var(--color-danger)}.doc-list__item-delete:disabled{cursor:wait}@media (max-width:500px){.documents-hub{padding:var(--space-4)}.documents-hub__grid{grid-template-columns:1fr}}.pre-transformed-viewer-modal{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.viewer-container{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;display:flex;flex-direction:column;height:90%;max-height:800px;max-width:1200px;width:90%}.viewer-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px 20px}.viewer-header h3{font-size:18px;font-weight:600;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.close-button:hover{background-color:#f0f0f0}.viewer-canvas{flex:1 1;overflow:hidden;position:relative}.error-overlay,.loading-overlay{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:10}.loading-spinner{border:3px solid #f3f3f3;margin:0 auto 12px}.error-overlay{color:#d32f2f;font-weight:500}.viewer-info{align-items:center;background-color:#f8f8f8;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:12px 20px}.viewer-info p{color:#666;font-size:14px;margin:0}.viewer-controls{color:#999;font-size:12px}.ifc-export-info{align-items:flex-start;background:var(--color-surface-soft);border-radius:var(--radius-sm);color:var(--color-text-muted);display:flex;font-size:var(--text-base);gap:var(--space-3);line-height:var(--text-base-lh);margin-bottom:var(--space-5);padding:var(--space-4)}.ifc-export-info p{margin:0}.ifc-export-info-icon{flex-shrink:0;margin-top:2px}.ifc-export-dialog-subtitle{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--text-base-lh);margin:0 0 var(--space-5) 0}.ifc-export-source-options{display:flex;flex-direction:column;gap:var(--space-3)}.ifc-export-source-option{align-items:flex-start;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex;padding:var(--space-4);transition:all var(--dur) var(--ease)}.ifc-export-source-option.selected,.ifc-export-source-option:hover{background-color:var(--color-accent-soft);border-color:var(--color-accent)}.ifc-export-source-option input[type=radio]{accent-color:var(--color-accent);flex-shrink:0;margin-right:var(--space-3);margin-top:2px}.ifc-export-source-info{display:flex;flex-direction:column;gap:var(--space-1)}.ifc-export-source-label{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--text-base-lh)}.ifc-export-source-description{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--text-sm-lh)}.ifc-export-advanced{margin-top:var(--space-5)}.ifc-export-advanced-summary{align-items:center;display:flex;gap:var(--space-2);width:100%}.ifc-export-advanced-label{flex:1 1}.ifc-export-advanced-panel-help{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--text-sm-lh);margin:0 0 var(--space-3) 0}@media (max-width:480px){.ifc-export-source-option{padding:var(--space-3)}}.dxf-export-info{align-items:flex-start;background:var(--color-surface-soft);border-radius:var(--radius-sm);color:var(--color-text-muted);display:flex;font-size:var(--text-base);gap:var(--space-3);line-height:var(--text-base-lh);margin-bottom:var(--space-5);padding:var(--space-4)}.dxf-export-info p{margin:0}.dxf-export-info-icon{flex-shrink:0;margin-top:2px}.dxf-export-section{margin-bottom:var(--space-6)}.dxf-export-section:last-child{margin-bottom:0}.dxf-export-dialog-subtitle{color:var(--color-text-muted);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--text-base-lh);margin:0 0 var(--space-4) 0}.dxf-export-mode-options,.dxf-export-source-options{display:flex;flex-direction:column;gap:var(--space-3)}.dxf-export-mode-option,.dxf-export-source-option{align-items:flex-start;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex;padding:var(--space-4);transition:all var(--dur) var(--ease)}.dxf-export-mode-option.selected,.dxf-export-mode-option:hover,.dxf-export-source-option.selected,.dxf-export-source-option:hover{background-color:var(--color-accent-soft);border-color:var(--color-accent)}.dxf-export-mode-option input[type=radio],.dxf-export-source-option input[type=radio]{accent-color:var(--color-accent);flex-shrink:0;margin-right:var(--space-3);margin-top:2px}.dxf-export-mode-info,.dxf-export-source-info{display:flex;flex-direction:column;gap:var(--space-1)}.dxf-export-mode-label,.dxf-export-source-label{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--text-base-lh)}.dxf-export-mode-description,.dxf-export-source-description{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--text-sm-lh)}.dxf-export-advanced{margin-top:var(--space-5)}.dxf-export-advanced-summary{align-items:center;display:flex;gap:var(--space-2);width:100%}.dxf-export-advanced-label{flex:1 1}.dxf-export-advanced-panel-help{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--text-sm-lh);margin:0 0 var(--space-3) 0}@media (max-width:480px){.dxf-export-mode-option,.dxf-export-source-option{padding:var(--space-3)}.dxf-export-section{margin-bottom:var(--space-6)}}.modal-overlay{background-color:#00000080;bottom:0;left:0;right:0;top:0}.modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:#333;font-size:20px;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.modal-close:hover{background-color:#f0f0f0}.modal-body{flex:1 1;overflow-y:auto;padding:24px}.generation-type-selector{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:24px}.type-button{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:20px;text-align:center;transition:all .2s}.type-button:hover{background-color:#f8fbff;border-color:#4a90e2}.type-button.active{background-color:#e8f4ff;border-color:#4a90e2}.type-icon{font-size:36px;margin-bottom:8px}.type-label{color:#333;font-size:16px;font-weight:600;margin-bottom:4px}.type-description{color:#666;font-size:13px;line-height:1.4}.scan-selection-section{margin-top:8px}.scan-selection-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.scan-selection-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.select-buttons{display:flex;gap:8px}.deselect-all-button,.select-all-button{background:none;border:1px solid #ddd;border-radius:4px;color:#4a90e2;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s}.deselect-all-button:hover,.select-all-button:hover{background-color:#f0f0f0;border-color:#4a90e2}.scan-list{border:1px solid #e0e0e0;border-radius:6px;max-height:300px;overflow-y:auto;padding:8px}.scan-checkbox-label{align-items:center;border-radius:4px;cursor:pointer;display:flex;padding:12px;transition:background-color .2s}.scan-checkbox-label:hover{background-color:#f8f8f8}.scan-checkbox-label input[type=checkbox]{cursor:pointer;height:18px;margin-right:12px;width:18px}.scan-info{display:flex;flex:1 1;flex-direction:column}.scan-name{color:#333;font-size:14px;font-weight:500;margin-bottom:2px}.scan-metadata{color:#999;font-size:12px}.selection-summary{color:#666;font-size:13px;margin-top:12px;text-align:right}.no-scans-message{color:#999;font-size:14px;padding:32px;text-align:center}.progress-section{background-color:#f8f8f8;border-radius:6px;margin-top:24px;padding:16px}.progress-bar-container{background-color:#e0e0e0;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden;width:100%}.progress-bar-fill{background-color:#4a90e2;height:100%;transition:width .3s ease}.progress-text{color:#4a90e2;font-size:14px;font-weight:600;text-align:center}.modal-footer{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.cancel-button,.generate-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s}.cancel-button{background-color:#f0f0f0;color:#666}.cancel-button:hover:not(:disabled){background-color:#e0e0e0}.generate-button{background-color:#4a90e2;color:#fff}.generate-button:hover:not(:disabled){background-color:#3a7bc8}.cancel-button:disabled,.generate-button:disabled{cursor:not-allowed;opacity:.5}.modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.merge-modal{background:#fff;border-radius:10px;box-shadow:0 12px 40px #00000040;max-width:92vw;overflow:hidden;width:460px}.merge-modal-header{align-items:center;border-bottom:1px solid #ececec;display:flex;justify-content:space-between;padding:16px 20px}.merge-modal-header h2{font-size:16px;margin:0}.merge-modal-close{background:none;border:none;color:#888;cursor:pointer;font-size:22px;line-height:1}.merge-modal-close:disabled{cursor:default;opacity:.4}.merge-modal-body{padding:18px 20px}.merge-modal-hint{color:#666;font-size:13px;margin:0 0 14px}.merge-file-picker{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.merge-file-label{font-size:13px;font-weight:600}.merge-file-name{color:#888;font-size:12px}.merge-file-picker input[type=file]{font-size:12px}.merge-modal-status{color:#2563eb;font-size:13px;margin:8px 0 0}.merge-modal-error{color:#dc2626;font-size:13px;margin:8px 0 0}.merge-modal-result p{font-size:13px;margin:6px 0}.merge-modal-success{font-weight:600}.merge-modal-warn{color:#b45309}.merge-modal-footer{border-top:1px solid #ececec;display:flex;gap:10px;justify-content:flex-end;padding:14px 20px}.merge-modal-cancel,.merge-modal-primary{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:13px;padding:8px 16px}.merge-modal-cancel{background:#f3f4f6;border-color:#e5e7eb}.merge-modal-primary{background:#2563eb;color:#fff}.merge-modal-primary:disabled{cursor:default;opacity:.5}.project-photo-gallery{position:relative}.project-photo-gallery__header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.project-photo-gallery__header-info{align-items:baseline;display:flex;gap:.75rem}.project-photo-gallery__title{color:#f3e9d2;font-size:1.25rem;font-weight:300;letter-spacing:.5px;margin:0}.project-photo-gallery__count{color:#f3e9d299;font-size:.85rem}.project-photo-gallery__upload-btn{background-color:#baa5944d;border:1px solid #f3e9d24d;border-radius:8px;color:#f3e9d2;cursor:pointer;font-size:.875rem;font-weight:500;letter-spacing:.3px;padding:.5rem 1rem;transition:all .15s ease}.project-photo-gallery__upload-btn:hover:not(:disabled){background-color:#baa59480;border-color:#f3e9d280}.project-photo-gallery__upload-btn:disabled{cursor:not-allowed;opacity:.6}.project-photo-gallery__upload-btn--primary{background-color:#dd9b4a;border-color:#dd9b4a;color:#f3e9d2;padding:.65rem 1.5rem}.project-photo-gallery__upload-btn--primary:hover:not(:disabled){background-color:#b67332;border-color:#b67332}.project-photo-gallery__error{align-items:center;background-color:#ef444426;border:1px solid #ef444466;border-radius:8px;color:#f3e9d2;display:flex;font-size:.875rem;gap:.75rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.project-photo-gallery__error-close{background:none;border:none;color:#f3e9d2;cursor:pointer;font-size:1.25rem;line-height:1;padding:0 .25rem}.project-photo-gallery__empty{align-items:center;background-color:#baa59433;border:2px dashed #f3e9d24d;border-radius:12px;display:flex;flex-direction:column;gap:1rem;padding:3rem 1.5rem;text-align:center}.project-photo-gallery__empty-icon{color:#f3e9d280;height:56px;width:56px}.project-photo-gallery__empty-icon svg{height:100%;width:100%}.project-photo-gallery__empty-text{color:#f3e9d2cc;font-size:1rem;margin:0}.project-photo-gallery__grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.project-photo-tile{aspect-ratio:1/1;background-color:#0003;border:2px solid #f3e9d226;border-radius:8px;cursor:pointer;overflow:hidden;position:relative;transition:all .15s ease}.project-photo-tile:hover{border-color:#f3e9d259;transform:translateY(-1px)}.project-photo-tile.is-cover{border-color:#dd9b4a}.project-photo-tile__img{display:block;height:100%;object-fit:cover;width:100%}.project-photo-tile__cover-badge{background-color:#dd9b4a;border-radius:4px;box-shadow:0 2px 6px #00000040;color:#f3e9d2;font-size:.7rem;font-weight:600;left:.5rem;letter-spacing:.4px;padding:.2rem .5rem;pointer-events:none;position:absolute;text-transform:uppercase;top:.5rem}.project-photo-tile__actions{background:linear-gradient(0deg,#000000bf 0,#00000059 70%,#0000);display:flex;gap:.4rem;inset:auto 0 0 0;opacity:0;padding:.5rem;position:absolute;transition:opacity .15s ease}.project-photo-tile:focus-within .project-photo-tile__actions,.project-photo-tile:hover .project-photo-tile__actions{opacity:1}.project-photo-tile__action{background-color:#ffffffd9;border:none;border-radius:6px;color:#54524f;cursor:pointer;flex:1 1;font-size:.75rem;font-weight:600;min-width:0;overflow:hidden;padding:.35rem .5rem;text-overflow:ellipsis;transition:background-color .15s ease;white-space:nowrap}.project-photo-tile__action:hover:not(:disabled){background-color:#fff}.project-photo-tile__action:disabled{cursor:not-allowed;opacity:.6}.project-photo-tile__action--danger{background-color:#ef4444f2;color:#fff}.project-photo-tile__action--danger:hover:not(:disabled){background-color:#dc2626}.project-photo-gallery__toast{animation:project-photo-toast-in .2s ease-out;background-color:#000000d9;border-radius:8px;bottom:2rem;box-shadow:0 8px 24px #0000004d;color:#f3e9d2;font-size:.9rem;left:50%;padding:.75rem 1.25rem;position:fixed;transform:translateX(-50%);z-index:11000}@keyframes project-photo-toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.project-photo-lightbox{align-items:center;animation:project-photo-lightbox-in .15s ease-out;background-color:#000000eb;display:flex;flex-direction:column;inset:0;justify-content:center;position:fixed;z-index:10500}@keyframes project-photo-lightbox-in{0%{opacity:0}to{opacity:1}}.project-photo-lightbox__close{align-items:center;background-color:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;line-height:1;position:absolute;right:1rem;top:1rem;transition:background-color .15s ease;width:40px;z-index:1}.project-photo-lightbox__close:hover{background-color:#ffffff40}.project-photo-lightbox__nav{align-items:center;background-color:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:2.5rem;height:56px;justify-content:center;line-height:1;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .15s ease;width:56px;z-index:1}.project-photo-lightbox__nav:hover{background-color:#ffffff40}.project-photo-lightbox__nav--prev{left:1rem}.project-photo-lightbox__nav--next{right:1rem}.project-photo-lightbox__stage{align-items:center;display:flex;justify-content:center;max-height:80vh;max-width:90vw}.project-photo-lightbox__img{box-shadow:0 12px 40px #00000080;max-height:80vh;max-width:100%;object-fit:contain}.project-photo-lightbox__bar{align-items:center;background:linear-gradient(0deg,#000c,#0000);bottom:0;color:#f3e9d2;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;left:0;padding:1rem 1.5rem;position:absolute;right:0}.project-photo-lightbox__meta{align-items:center;display:flex;flex-wrap:wrap;font-size:.875rem;gap:.75rem}.project-photo-lightbox__counter{color:#f3e9d2b3}.project-photo-lightbox__date{color:#f3e9d2d9}.project-photo-lightbox__cover-badge{background-color:#dd9b4a;border-radius:4px;color:#f3e9d2;font-size:.7rem;font-weight:600;letter-spacing:.4px;padding:.2rem .55rem;text-transform:uppercase}.project-photo-lightbox__actions{display:flex;gap:.5rem}.project-photo-lightbox__btn{background-color:#ffffffe6;border:none;border-radius:8px;color:#54524f;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:background-color .15s ease}.project-photo-lightbox__btn:hover:not(:disabled){background-color:#fff}.project-photo-lightbox__btn:disabled{cursor:not-allowed;opacity:.6}.project-photo-lightbox__btn--danger{background-color:#ef4444f2;color:#fff}.project-photo-lightbox__btn--danger:hover:not(:disabled){background-color:#dc2626}@media (max-width:600px){.project-photo-gallery__grid{grid-template-columns:repeat(3,1fr)}.project-photo-tile__action{font-size:.7rem;padding:.3rem .4rem}.project-photo-lightbox__nav{font-size:2rem;height:44px;width:44px}.project-photo-lightbox__nav--prev{left:.5rem}.project-photo-lightbox__nav--next{right:.5rem}}.floor-plan-viewer{box-sizing:border-box;display:flex;flex-direction:column;height:100%;width:100%}.floor-plan-container{height:100%;overflow:hidden;position:relative;width:100%}.floor-plan-canvas{background-color:#f0f0f0;cursor:grab;height:100%;width:100%}.floor-plan-canvas:active{cursor:grabbing}.floor-plan-controls button{background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s,border-color .2s}.floor-plan-controls button:hover{background-color:#f0f0f0;border-color:#999}.floor-plan-controls button:active{background-color:#e0e0e0;transform:translateY(1px)}.floor-plan-details{background-color:#ffffffe6;border-radius:4px;box-shadow:0 2px 8px #00000026;max-height:calc(100% - 30px);overflow-y:auto;padding:15px;position:absolute;right:15px;top:15px;width:250px;z-index:10}.floor-plan-details h3{border-bottom:1px solid #ddd;color:#333;font-size:16px;margin-bottom:10px;margin-top:0;padding-bottom:5px}.floor-plan-details p{font-size:14px;line-height:1.4;margin:5px 0}.floor-plan-details strong{color:#555;font-weight:600}.item-attributes{border-top:1px dashed #eee;margin-top:10px;padding-top:5px}.item-attributes p{font-weight:600;margin-bottom:5px}.item-attributes ul{font-size:12px;list-style-type:disc;margin:5px 0 0;padding-left:20px}.item-attributes li{color:#666;margin-bottom:3px}.floor-plan-error,.floor-plan-loading{align-items:center;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;display:flex;flex-direction:column;height:400px;justify-content:center}.floor-plan-error p,.floor-plan-loading p{color:#666;font-size:14px;margin-top:15px}.floor-plan-error p{color:#d32f2f;max-width:80%;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:15px;width:40px}.floor-plan-legend{background-color:#fffc;border-radius:4px;bottom:70px;box-shadow:0 2px 4px #0000001a;font-size:12px;left:15px;padding:10px;position:absolute;z-index:10}.legend-title{font-size:13px;font-weight:600;margin-bottom:5px}.legend-item{align-items:center;display:flex;margin-bottom:4px}.legend-color{border:1px solid #0003;height:12px;margin-right:5px;width:12px}.room-label{background-color:#ffffffb3;border-radius:2px;color:#555;font-size:12px;padding:3px 6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none}.floor-plan-tooltip{background-color:#000c;color:#fff;pointer-events:none;transition:opacity .2s;z-index:20}.floor-plan-tooltip,.scale-indicator{border-radius:3px;font-size:12px;padding:5px 8px;position:absolute}.scale-indicator{background-color:#fffc;bottom:15px;color:#666;right:15px}@media print{.floor-plan-controls,.floor-plan-details,.floor-plan-legend{display:none!important}.floor-plan-container{border:none;height:100vh;page-break-inside:avoid}.floor-plan-canvas{background-color:#fff}}@keyframes spin{to{transform:rotate(1turn)}}.floor-plan-test-overlay{opacity:0;pointer-events:none;position:absolute;z-index:10}
/*# sourceMappingURL=main.4b9da4c4.css.map*/