:root{--bg: #f5f7fa;--surface: #ffffff;--surface-muted: #f9fafb;--border: #e5e7eb;--text: #111827;--text-secondary: #6b7280;--accent: #df1f18;--accent-soft: #fde8e7;--success: #15803d;--warning: #d97706;--error: #b45309;--danger: #b42318;--shadow: 0 12px 30px rgba(17, 24, 39, .08)}.auth-shell,.dashboard-layout,.admin-workspace{--accent: #df1f18;--accent-soft: #fde8e7}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Segoe UI,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text)}body{min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.brand-mark{display:inline-flex;align-items:center;color:var(--accent)}.brand-logo{display:inline-flex;align-items:center;min-width:0;gap:.7rem}.brand-logo__icon{width:44px;height:44px;object-fit:contain;flex:0 0 auto}.brand-logo__label{display:inline-flex;align-items:center;color:#176c3d;font-size:clamp(1.55rem,2.6vw,2.6rem);font-weight:900;letter-spacing:.03em;line-height:1;white-space:nowrap}.brand-logo--icon-only{gap:0}.brand-logo--icon-only .brand-logo__icon{width:30px;height:30px}.brand-logo--auth{justify-self:start}.brand-logo--auth .brand-logo__icon{width:54px;height:54px}.brand-logo--auth .brand-logo__label{font-size:clamp(1.9rem,3.2vw,3rem)}.brand-logo--footer .brand-logo__label{font-size:clamp(1.25rem,2vw,1.8rem)}.brand-logo--planner .brand-logo__icon{width:42px;height:42px}.brand-logo--planner .brand-logo__label{font-size:clamp(1.2rem,1.45vw,1.78rem);letter-spacing:.08em}.roseart-brand-logo{--roseart-brand-accent: #df1f18;display:inline-flex;align-items:center;min-width:0;gap:.72rem;color:currentColor;line-height:1}.roseart-brand-logo__image{display:block;width:auto;max-width:190px;max-height:54px;object-fit:contain}.roseart-brand-logo__fallback-lockup{display:inline-flex;align-items:center;min-width:0;gap:.72rem}.roseart-brand-logo__mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:4px;background:#df1f18;color:#fff;font-size:1.95rem;font-weight:950;line-height:1}.roseart-brand-logo__copy{display:grid;gap:2px;min-width:0}.roseart-brand-logo__copy strong{color:currentColor;font-size:clamp(1.25rem,1.9vw,1.75rem);font-weight:500;letter-spacing:0;white-space:nowrap}.roseart-brand-logo__copy strong span,.roseart-brand-logo__copy em,.roseart-brand-logo__tagline{color:var(--roseart-brand-accent)}.roseart-brand-logo__copy small{color:currentColor;font-size:.66rem;font-weight:800;letter-spacing:.28em}.roseart-brand-logo__copy em,.roseart-brand-logo__tagline{font-size:.64rem;font-style:normal;font-weight:800;letter-spacing:0;white-space:nowrap}.roseart-brand-logo--image{align-items:center}.roseart-brand-logo--image .roseart-brand-logo__tagline{display:inline-flex;max-width:16rem}.roseart-brand-logo--icon-only{gap:0}.roseart-brand-logo--icon-only .roseart-brand-logo__image,.roseart-brand-logo--icon-only .roseart-brand-logo__mark{width:42px;height:42px}.roseart-brand-logo.brand-logo--auth .roseart-brand-logo__image{max-width:230px;max-height:68px}.roseart-brand-logo.brand-logo--auth .roseart-brand-logo__mark{width:54px;height:54px}.roseart-brand-logo.brand-logo--auth .roseart-brand-logo__copy strong{font-size:clamp(1.75rem,3vw,2.7rem)}.eyebrow{display:inline-flex;margin-bottom:.65rem;color:var(--accent);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.centered-state{min-height:100vh;display:grid;place-items:center;gap:12px;padding:32px;text-align:center;color:var(--text-secondary)}.centered-state strong{color:var(--text-primary)}.centered-state__actions{display:flex;justify-content:center}.centered-state__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid var(--border);border-radius:12px;color:var(--text-primary);text-decoration:none;background:#fff}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:40px;padding:0 16px;border:1px solid transparent;border-radius:12px;cursor:pointer;font-size:.94rem;font-weight:600;line-height:1.2;text-align:center;box-shadow:0 1px 2px #0f172a0a;transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease}.ui-button svg{width:16px;height:16px;flex:0 0 auto}.ui-button--full{width:100%}.ui-button--primary{background:var(--accent);color:#fff}.ui-button--secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.ui-button--ghost{background:transparent;color:var(--text-secondary)}.ui-button--danger{background:#fff1f2;border-color:#fecdd3;color:var(--danger)}.ui-button:disabled{opacity:.55;cursor:not-allowed}.ui-button:hover:not(:disabled),.planner-chrome-button:hover:not(:disabled),.planner-topbar__popover-action:hover,.planner-camera-preset-row__capture:hover,.planner-topbar__popover-primary:hover,.planner-chip:hover{transform:translateY(-1px)}.ui-field{display:grid;gap:8px}.ui-field--error .ui-input{border-color:#f0a3ad;box-shadow:0 0 0 3px #dc262614}.ui-field__label{font-size:.85rem;color:var(--text-secondary)}.ui-input{width:100%;min-height:42px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font-size:.94rem;line-height:1.25}.ui-textarea{min-height:112px;padding:12px 14px;resize:vertical}.ui-field__feedback{font-size:.79rem;line-height:1.45}.ui-field__feedback--hint{color:#64748b}.ui-field__feedback--error{color:#b42318;font-weight:600}.ui-guidance{--guidance-accent: #2563eb;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:flex-start;padding:15px 16px;border:1px solid color-mix(in srgb,var(--guidance-accent) 22%,rgba(15,23,42,.1));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--guidance-accent) 10%,transparent),transparent 44%),#fffffff5;box-shadow:0 16px 38px #0f172a14}.ui-guidance--compact{padding:12px 14px}.ui-guidance--success{--guidance-accent: #df1f18}.ui-guidance--error{--guidance-accent: #dc2626}.ui-guidance--warning{--guidance-accent: #d97706}.ui-guidance--info{--guidance-accent: #2563eb}.ui-guidance--hint{--guidance-accent: #0891b2}.ui-guidance--next_step{--guidance-accent: #0f766e}.ui-guidance__icon{display:grid;place-items:center;width:36px;height:36px;border-radius:14px;background:color-mix(in srgb,var(--guidance-accent) 12%,#ffffff);color:var(--guidance-accent)}.ui-guidance__icon svg{width:24px;height:24px}.ui-guidance__icon circle,.ui-guidance__icon path{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.ui-guidance__body{display:grid;gap:6px;min-width:0}.ui-guidance__body strong{color:#102419;font-size:.95rem}.ui-guidance__body p{margin:0;color:#475569;font-size:.88rem;line-height:1.48}.ui-guidance__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.ui-guidance__action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;text-decoration:none;font-size:.78rem;font-weight:800;cursor:pointer}.ui-guidance__action--primary{border:1px solid color-mix(in srgb,var(--guidance-accent) 18%,transparent);background:color-mix(in srgb,var(--guidance-accent) 10%,#ffffff);color:color-mix(in srgb,var(--guidance-accent) 80%,#102419)}.ui-guidance__action--secondary{border:1px solid #dbe2ea;background:#fff;color:#334155}.ui-guidance__dismiss{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:#ffffffb8;color:#64748b;font-size:1.1rem;line-height:1;cursor:pointer}.ui-empty-state{display:grid;align-items:start}.dashboard-guidance{margin-bottom:18px}.ui-validation-summary{display:grid;gap:8px;padding:14px 16px;border:1px solid #f3c7ce;border-radius:16px;background:#fff6f7;color:#8c2430}.ui-validation-summary strong{color:#8c2430}.ui-validation-summary ul{margin:0;padding-left:18px;display:grid;gap:5px}.ui-panel--catalog-editor{gap:12px;padding:14px}.ui-panel--catalog-editor .ui-panel__header p{font-size:.82rem;line-height:1.45}.ui-panel--catalog-editor .ui-panel__content{gap:12px}.ui-panel--catalog-editor .ui-field{gap:6px}.ui-panel--catalog-editor .ui-field__label{font-size:.78rem}.ui-panel--catalog-editor .ui-input{min-height:38px;padding:0 12px;border-radius:10px;font-size:.92rem}.ui-panel--catalog-editor .ui-textarea{min-height:88px;padding:10px 12px}.ui-panel{display:grid;gap:14px;align-content:start;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.ui-panel__header h3{margin:0;font-size:1rem}.ui-panel__header p{margin:4px 0 0;color:var(--text-secondary);font-size:.88rem}.ui-panel__content{display:grid;gap:14px}.ui-badge{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:0 10px;border-radius:999px;background:var(--surface-muted);border:1px solid var(--border);color:var(--text-secondary);font-size:.82rem}.example-strip article,.dashboard-project-card{padding:24px;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.stack-page{display:grid;gap:24px}.section-heading h1{margin:0;font-size:2.3rem}.section-heading p{margin:10px 0 0;color:var(--text-secondary)}.dashboard-project-card__meta{display:flex;justify-content:space-between;align-items:center;color:var(--text-secondary);font-size:.85rem}.example-strip,.dashboard-project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(460px,100%);display:grid;gap:16px;padding:28px;border-radius:28px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.auth-card h1{margin:0}.auth-card p,.auth-footer{margin:0;color:var(--text-secondary)}.auth-card__actions{display:grid;gap:12px}.auth-card__actions--stack .auth-footer{text-align:center}.auth-shell--premium{background:radial-gradient(circle at top,rgba(28,120,72,.1),transparent 34%),linear-gradient(180deg,#fbfcfa,#f2f5f1 58%,#eef2ed)}.auth-card--premium{width:min(720px,100%);gap:18px;padding:30px 34px 24px;border-radius:28px;border:1px solid rgba(15,61,37,.08);background:#fffffff2;box-shadow:0 40px 80px #0e301c14}.auth-card__brand,.auth-card__copy,.auth-options,.auth-email-form,.auth-legal{display:grid;gap:10px}.auth-card__copy h1{margin:0;max-width:18ch;font-size:clamp(2.35rem,4.1vw,3.4rem);line-height:1.02;letter-spacing:-.04em;color:#0d2016}.auth-card__copy p{max-width:40rem;font-size:1rem;line-height:1.55;color:#55655c}.auth-card--email-active{gap:12px;padding-block:24px}.auth-card--email-active .auth-card__brand{gap:6px}.auth-card--email-active .auth-card__copy{gap:7px}.auth-card--email-active .auth-card__copy h1{max-width:34ch;font-size:clamp(1.42rem,2.4vw,1.78rem);line-height:1.08}.auth-card--email-active .auth-helper-copy{font-size:.86rem;line-height:1.42}.auth-card--email-active .auth-card__copy p,.auth-card--email-active .auth-card__proof,.auth-card--email-active .auth-helper-copy{display:none}.auth-card--email-active .auth-options{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-card--email-active .auth-mode-switch__item{padding-block:8px}.auth-card--email-active .auth-option{min-height:46px;padding-inline:12px;border-radius:14px;font-size:.9rem}.auth-card--email-active .auth-email-form{gap:10px}.auth-card__proof{display:flex;flex-wrap:wrap;gap:8px 12px;max-width:40rem}.auth-card__proof span{display:inline-flex;align-items:center;gap:8px;padding:0;color:#183a28;font-size:.88rem;font-weight:700;line-height:1.35}.auth-card__proof span:before{content:"";width:7px;height:7px;border-radius:999px;background:#1f7a49;box-shadow:0 0 0 5px #1f7a4914}.auth-mode-switch{width:100%;display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;border:1px solid rgba(15,61,37,.1);border-radius:16px;background:#f4f7f3}.auth-mode-switch__item{padding:10px 16px;border-radius:12px;color:#607066;font-weight:700;text-align:center;transition:background-color .14s ease,color .14s ease,box-shadow .14s ease}.auth-mode-switch__item.is-active{background:#fff;color:#103723;box-shadow:0 10px 20px #0e301c0d}.auth-options{gap:10px}.auth-option{width:100%;display:flex;align-items:center;justify-content:center;gap:14px;min-height:56px;padding:0 18px;border-radius:999px;border:1px solid rgba(15,61,37,.12);background:#fff;color:#232926;font-size:.98rem;font-weight:700;cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.auth-option:hover:not(:disabled){transform:translateY(-1px);border-color:#0f5c3733;box-shadow:0 14px 28px #10351f0f}.auth-option:disabled{opacity:.72;cursor:not-allowed;transform:none;box-shadow:none}.auth-option--google{border-color:#111;background:#111;color:#fff}.auth-option--email{background:#fff}.auth-option__icon{width:20px;height:20px;flex:0 0 auto}.auth-option__icon--outline{color:#111}.auth-email-form{padding-top:2px}.auth-helper-copy{margin:2px 0 0;font-size:.9rem;line-height:1.5;color:#6b786f}.auth-remember{display:inline-grid;grid-template-columns:18px auto;align-items:center;gap:10px;color:#43574b;font-size:.92rem;font-weight:600}.auth-remember input{width:16px;height:16px;margin:0;accent-color:#df1f18}.auth-security-check{display:grid;gap:8px;padding:12px 14px;border:1px solid rgba(15,61,37,.1);border-radius:14px;background:#f4f7f3d1}.turnstile-slot{min-height:58px}.auth-security-check__message{margin:0;font-size:.94rem;line-height:1.55;color:#7a5c2e}.auth-legal{gap:10px;padding-top:2px}.auth-legal p{max-width:36rem;font-size:.92rem;line-height:1.5;color:#6b786f}.auth-card--onboarding{width:min(620px,100%)}.auth-onboarding-summary{display:grid;gap:4px;padding:14px 16px;border:1px solid rgba(15,61,37,.1);border-radius:16px;background:#f4f7f3d9}.auth-onboarding-summary strong{color:#103723;font-size:1rem}.auth-onboarding-summary span{color:#55655c;font-size:.92rem}.auth-onboarding-summary__provider{color:#1b6f43;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}@media(max-width:760px){.auth-card--premium{width:min(100%,100%);padding:24px 20px 20px}.auth-card__copy h1{max-width:14ch;font-size:clamp(2rem,8.8vw,2.8rem);line-height:1.02}.auth-card__copy p{max-width:100%;font-size:1rem}.auth-card__proof{display:grid;gap:10px}.auth-card--onboarding{width:min(100%,100%)}}.auth-checkbox{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:12px;color:#5d6c63;line-height:1.5}.auth-checkbox--required{padding:12px 14px;border:1px solid rgba(15,61,37,.12);border-radius:14px;background:#f7faf7;color:#20362a}.auth-checkbox input{width:18px;height:18px;margin:2px 0 0;accent-color:#df1f18}.auth-checkbox a{color:#145c38;font-weight:700}.auth-footer--compact{font-size:.96rem}.form-error{padding:12px 14px;border-radius:12px;background:#fff7ed;color:var(--error)}.form-success{padding:12px 14px;border-radius:12px;background:#ecfdf3;color:#17603a}.dashboard-header__actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:14px}.dashboard-user{display:flex;align-items:center;gap:12px;color:var(--text-secondary)}.dashboard-user__avatar,.profile-avatar{width:48px;height:48px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:#e8f2ec;border:1px solid rgba(19,94,56,.12);color:#135e38;font-weight:700}.dashboard-user__avatar img,.profile-avatar img{width:100%;height:100%;object-fit:cover}.dashboard-user__meta{display:grid;gap:2px}.dashboard-user__meta strong{color:var(--text-primary)}.dashboard-user__meta span{font-size:.9rem;color:var(--text-secondary)}.dashboard-lead{margin:10px 0 0;color:var(--text-secondary);max-width:68rem;line-height:1.55}.dashboard-toolbar,.dashboard-filters,.dashboard-project-card__actions,.planner-topbar__status,.planner-topbar__actions,.status-bar,.inspector-inline-actions,.pricing-summary div{display:flex;align-items:center;gap:12px}.dashboard-toolbar,.dashboard-filters{justify-content:space-between}.dashboard-filters{flex-wrap:wrap;justify-content:flex-start}.dashboard-filters>.ui-field{flex:1 1 220px;min-width:min(100%,220px)}.dashboard-toolbar__actions,.profile-avatar-card__actions,.profile-form__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dashboard-filters{align-items:end}.dashboard-project-card{display:grid;gap:16px}.dashboard-page--profile,.profile-grid,.profile-form,.profile-avatar-card,.profile-avatar-card__details{display:grid;gap:18px}.profile-grid{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:start}.profile-avatar{width:96px;height:96px;border-radius:24px;font-size:1.6rem}.profile-avatar-card__details strong{font-size:1.1rem}.profile-avatar-card__details p,.profile-feedback{margin:0;color:var(--text-secondary)}.profile-avatar-card__input{display:none}.profile-feedback--success{color:#17603a}.profile-feedback--error{color:#b42318}.dashboard-layout{min-height:100vh;background:linear-gradient(180deg,rgba(7,38,22,.03),transparent 180px),#f5f7f2}.dashboard-header{display:grid;gap:0;padding:14px 24px;border-bottom:1px solid rgba(15,61,37,.1);background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.dashboard-header__bar,.dashboard-header__resource-strip{display:grid;gap:14px 18px}.dashboard-header__bar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity actions" "nav nav";align-items:start}.dashboard-brand{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px 12px;color:var(--text-primary);min-width:0}.dashboard-brand .brand-logo{gap:8px}.dashboard-brand .brand-logo__icon{width:40px;height:40px}.dashboard-brand .brand-logo__label{font-size:clamp(1.75rem,2.35vw,2.45rem);letter-spacing:.14em}.dashboard-brand__divider{width:1px;height:24px;background:#12121229}.dashboard-brand__product{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(18,18,18,.12);border-radius:999px;background:#ffffffe0;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#df1f18}.dashboard-header__identity{display:grid;grid-area:identity;min-width:0;gap:6px}.dashboard-header__subtitle{margin:0;max-width:44rem;font-size:.88rem;line-height:1.48;color:#5f6065}.dashboard-header__nav{grid-area:nav;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin:0;overflow:visible}.dashboard-header__nav a{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border:1px solid rgba(18,18,18,.08);border-radius:999px;background:#ffffffe6;color:#3f4247;font-size:.88rem;font-weight:600;transition:border-color .14s ease,background-color .14s ease,color .14s ease,transform .14s ease}.dashboard-header__nav a:hover{border-color:#df1f183d;color:#181818;transform:translateY(-1px)}.dashboard-header__nav a.is-active{border-color:#df1f184d;background:#df1f1814;color:#df1f18}.dashboard-header__actions{grid-area:actions;justify-content:flex-end;align-self:center;min-width:0}.dashboard-user{gap:12px;min-width:min(100%,320px);padding:8px 10px;border:1px solid rgba(18,18,18,.08);border-radius:18px;background:#fcfdfceb}.dashboard-user__avatar,.profile-avatar{border-radius:18px;background:linear-gradient(180deg,#fff5f4,#f3eceb);border:1px solid rgba(223,31,24,.16);color:#df1f18}.dashboard-user__avatar{width:44px;height:44px}.dashboard-user__meta{min-width:0}.dashboard-user__meta strong{overflow:hidden;font-size:.93rem;text-overflow:ellipsis;white-space:nowrap}.dashboard-user__meta span{overflow:hidden;font-size:.74rem;letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:#6a7a70}.dashboard-header__logout{min-height:42px;padding-inline:14px;white-space:nowrap}.dashboard-header__resource-strip{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:stretch;padding:14px 16px;border:1px solid rgba(15,61,37,.08);border-radius:18px;background:linear-gradient(180deg,#fffffffa,#f5f9f5f2)}.dashboard-main__resource-strip{width:100%}.dashboard-header__resource-intro{display:grid;gap:6px;align-content:start}.dashboard-header__resource-intro strong{font-size:1.05rem;color:#113a25}.dashboard-header__resource-intro small{color:#647469;line-height:1.45}.dashboard-usage-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-usage-card{display:grid;gap:4px;padding:14px;border:1px solid rgba(15,61,37,.08);border-radius:14px;background:#fff}.dashboard-usage-card span,.dashboard-usage-card small{color:#647469}.dashboard-usage-card strong{font-size:1.24rem;color:#123a26}.catalog-product-artwork{width:100%;height:100%;display:block}.catalog-product-artwork--commercial{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:10%;border-radius:18px;background:var(--catalog-symbol-surface, #ffffff);color:#54657a;box-sizing:border-box}.catalog-product-artwork__symbol{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.catalog-product-artwork--admin{width:64px;height:64px}.planner-print-capture{position:fixed;left:-20000px;top:-20000px;width:1600px;height:1100px;pointer-events:none;opacity:0;overflow:hidden}.planner-print-capture__frame{width:100%;height:100%;background:#fff}.dashboard-main{display:grid;align-content:start;gap:22px;padding:32px 28px 40px}.dashboard-page,.app-page-shell{display:grid;gap:22px}.app-page-shell__header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.dashboard-toolbar{align-items:flex-end}.dashboard-project-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.resource-album-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.dashboard-project-grid>*{min-width:0}.dashboard-project-card,.resource-album-panel.ui-panel{border-radius:18px;border:1px solid rgba(15,61,37,.08);background:linear-gradient(180deg,#fffffffa,#f9fbf8fa);box-shadow:0 18px 42px #13301f0f}.dashboard-project-card{padding:22px;gap:18px;min-width:0;overflow:hidden}.dashboard-project-card h3{margin:0;font-size:1.18rem;line-height:1.25;color:#102f1f;overflow-wrap:anywhere;word-break:break-word}.dashboard-project-card__meta span:first-child{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#edf4ee;color:#df1f18;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-project-card__facts{display:grid;gap:6px}.dashboard-project-card__facts p{margin:0;color:#647469}.dashboard-project-card__status{margin-top:0;min-width:0}.dashboard-project-card__status .ui-input{min-width:0;max-width:100%}.dashboard-project-card__actions{flex-wrap:wrap;align-items:stretch}.dashboard-project-card__actions .ui-button{flex:1 1 120px;min-width:0}.resource-album-panel .ui-panel__header{padding-bottom:0}.resource-album-panel .ui-panel__header h3{font-size:1.1rem}.resource-album-panel__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:4px;color:#647469;font-size:.9rem}.resource-album-panel__toolbar a{color:#df1f18;font-weight:600}.rendering-album{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.rendering-tile{display:grid;gap:12px;padding:12px;border:1px solid rgba(15,61,37,.08);border-radius:14px;background:#fff}.rendering-tile__media{aspect-ratio:1.45;overflow:hidden;border-radius:10px;background:#edf2ed}.rendering-tile__media img{width:100%;height:100%;object-fit:cover;display:block}.rendering-tile__meta,.document-row__meta,.document-row__summary{display:grid;gap:4px}.rendering-tile__meta span,.rendering-tile__meta small,.document-row__meta span,.document-row__meta small,.document-row__summary span{color:#647469}.rendering-tile__actions,.document-row__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.document-stack{display:grid;gap:12px}.document-row{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding:16px;border:1px solid rgba(15,61,37,.08);border-radius:14px;background:#fff}.document-row__meta strong,.rendering-tile__meta strong{color:#102f1f}.document-row__summary{text-align:right}.package-create-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid rgba(15,61,37,.08);border-radius:16px;background:#fff}.package-create-toolbar>div{display:grid;gap:4px;min-width:0}.package-create-toolbar strong{color:#102f1f;font-size:1rem}.package-create-toolbar span{color:#647469;font-size:.9rem;line-height:1.4}.package-create-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.package-create-grid--compact,.package-plan-editor__grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))}.package-create-grid .ui-field:nth-child(4),.package-create-grid .ui-field:nth-child(5),.package-create-grid .ui-field:nth-child(9){grid-column:span 2}.package-create-grid--compact .ui-field:nth-child(4),.package-create-grid--compact .ui-field:nth-child(5),.package-create-grid--compact .ui-field:nth-child(9){grid-column:auto}.package-type-selector{display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr));margin:14px 0 12px}.package-type-selector--editor{margin:0}.package-type-card{min-height:48px;padding:0 14px;border:1px solid rgba(15,23,42,.12);border-radius:12px;background:#fff;color:#18202b;font-size:.9rem;font-weight:800;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.package-type-card:hover{border-color:#df1f1859;color:#df1f18}.package-type-card.is-active{border-color:#df1f18;background:#df1f18;color:#fff;box-shadow:0 14px 28px #df1f182e}.package-capability-strip{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:14px;padding:14px;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#fbfbfa}.package-plan-list{display:grid;gap:12px}.package-plan-card{overflow:hidden;border:1px solid rgba(15,61,37,.08);border-radius:18px;background:#fff;box-shadow:0 12px 30px #13301f0b;transition:border-color .14s ease,box-shadow .14s ease}.package-plan-card.is-editing{border-color:#1f7a4d3d;box-shadow:0 22px 46px #13301f14}.package-plan-card__summary{display:grid;grid-template-columns:minmax(220px,1.15fr) minmax(140px,.6fr) minmax(260px,1.05fr) minmax(250px,1fr) auto;gap:14px;align-items:center;padding:14px}.package-plan-card__toggle{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.package-plan-card__chevron{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#fde8e7;color:#df1f18;transition:transform .14s ease}.package-plan-card.is-editing .package-plan-card__chevron{transform:rotate(180deg)}.package-plan-card__title{min-width:0;display:grid;gap:2px}.package-plan-card__title strong{overflow:hidden;color:#102f1f;font-size:1.02rem;text-overflow:ellipsis;white-space:nowrap}.package-plan-card__title small,.package-plan-card__price span{color:#647469;font-size:.82rem}.package-plan-card__price{display:grid;gap:2px}.package-plan-card__price strong{color:#102f1f}.package-plan-card__limits{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.package-plan-card__limits span{display:grid;gap:2px;min-height:46px;align-content:center;padding:8px 10px;border-radius:12px;background:#f5f8f5;color:#647469;font-size:.78rem;line-height:1.15}.package-plan-card__limits strong{color:#123a26;font-size:1rem}.package-plan-card__badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.package-badge{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid rgba(15,61,37,.08);border-radius:999px;background:#f7faf7;color:#51645a;font-size:.8rem;font-weight:700;line-height:1}.package-badge--highlighted{border-color:#1f7a4d33;background:#fde8e7;color:#df1f18}.package-badge--muted{background:#f4f4f2;color:#7a756e}.package-plan-card__actions{display:flex;justify-content:flex-end;gap:8px}.package-icon-button{white-space:nowrap}.package-plan-editor{display:grid;gap:14px;padding:0 14px 14px;border-top:1px solid rgba(15,61,37,.08);background:linear-gradient(180deg,#f7faf7b8,#fffffffa)}.package-plan-editor__section{display:grid;gap:10px;padding-top:14px}.package-plan-editor__section h4{margin:0;color:#123a26;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase}.package-plan-editor__grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.package-plan-editor__grid--text{grid-template-columns:repeat(3,minmax(0,1fr))}.package-plan-editor__grid--limits{grid-template-columns:repeat(5,minmax(0,1fr))}.package-plan-editor .ui-textarea{min-height:96px}.package-plan-editor__toggles,.package-plan-editor__footer{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.package-plan-editor__footer{justify-content:space-between;padding-top:4px}.package-plan-editor__footer span{color:#647469;font-size:.9rem;font-weight:700}@media(max-width:1320px){.package-plan-card__summary{grid-template-columns:minmax(220px,1fr) minmax(230px,.95fr) auto}.package-plan-card__price,.package-plan-card__badges{grid-column:span 1}.package-plan-card__limits{grid-column:1 / 3}.package-plan-editor__grid,.package-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-type-selector,.package-plan-editor__grid--limits{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.package-create-grid,.package-plan-editor__grid,.package-plan-editor__grid--text,.package-plan-editor__grid--limits{grid-template-columns:1fr}.package-type-selector{grid-template-columns:repeat(2,minmax(0,1fr))}.package-create-grid .ui-field:nth-child(4),.package-create-grid .ui-field:nth-child(5),.package-create-grid .ui-field:nth-child(9){grid-column:auto}.package-plan-card__summary{grid-template-columns:1fr}.package-plan-card__limits{grid-column:auto}.package-plan-card__actions,.package-plan-editor__footer{justify-content:flex-start}}@media(max-width:640px){.package-create-toolbar{align-items:stretch;flex-direction:column}.package-create-toolbar .ui-button{width:100%}.package-plan-card__limits{grid-template-columns:1fr}.package-plan-card__actions .ui-button,.package-plan-editor__footer .ui-button{width:100%}.package-type-selector{grid-template-columns:1fr}}.user-access-panel .ui-panel__content{gap:16px}.user-access-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.user-access-summary__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:12px 14px;border:1px solid rgba(15,61,37,.08);border-radius:8px;background:#fff}.user-access-summary__item svg{width:18px;height:18px;color:#2f6f60}.user-access-summary__item span{min-width:0;color:var(--text-secondary);font-size:.88rem}.user-access-summary__item strong{color:var(--text-primary);font-size:1.05rem}.user-access-role-guide{border-top:1px solid rgba(15,61,37,.08);padding-top:12px}.user-access-role-guide summary{display:inline-flex;align-items:center;gap:8px;color:var(--text-primary);cursor:pointer;font-weight:700}.user-access-role-guide summary::-webkit-details-marker{display:none}.user-access-role-guide[open] summary svg{transform:rotate(180deg)}.user-access-role-guide svg{width:16px;height:16px;transition:transform .14s ease}.user-access-role-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:12px}.user-access-role-card{display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(15,61,37,.08);border-radius:8px;background:#fff}.user-access-role-card strong{color:var(--text-primary);font-size:.9rem}.user-access-role-card span,.user-access-role-card p,.user-access-role-card small{margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.35}.user-access-create{display:grid;gap:16px}.user-access-fieldset{display:grid;gap:10px;min-width:0}.user-access-fieldset h4{margin:0;color:var(--text-primary);font-size:.92rem}.user-access-form-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;align-items:start}.user-access-form-grid--identity{grid-template-columns:minmax(140px,.8fr) minmax(140px,.8fr) minmax(220px,1.4fr)}.user-access-form-grid--security{grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr)}.user-access-create__security{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:start}.user-access-toggle-group{display:flex;align-items:end;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:23px}.user-access-create__actions,.user-access-edit-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.user-access-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(160px,220px) minmax(160px,220px);gap:10px;align-items:end}.user-access-table-wrap{border-radius:8px}.user-access-table{min-width:980px;table-layout:auto}.user-access-table th,.user-access-table td{vertical-align:middle}.user-access-table th{letter-spacing:0}.user-access-table td div{margin-top:0;color:inherit}.user-access-table tr.is-expanded>td{background:#f8faf8}.user-access-person{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px}.user-access-person strong,.user-access-person span,.user-access-person small,.user-access-cell-title{display:block;min-width:0}.user-access-person strong,.user-access-cell-title{color:var(--text-primary);font-weight:700}.user-access-person span{color:var(--text-primary);overflow-wrap:anywhere}.user-access-person small,.user-access-muted{color:var(--text-secondary);font-size:.82rem;line-height:1.35}.user-access-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e9f4ee;color:#1f5d47;font-size:.86rem;font-weight:800}.user-access-role-pill,.user-access-status,.user-access-login-state{display:inline-flex;align-items:center;width:fit-content;min-height:28px;padding:0 10px;border-radius:999px;font-size:.8rem;font-weight:700}.user-access-role-pill{margin-bottom:6px;background:#edf3f1;color:#21463f}.user-access-status-stack{display:grid;gap:6px}.user-access-status--active{background:#fde8e7;color:#1d6b45}.user-access-status--suspended{background:#fff8e6;color:#8a5f00}.user-access-status--blocked{background:#fff1f2;color:#a52323}.user-access-login-state{background:#f3f6f4;color:var(--text-secondary)}.user-access-login-state.is-disabled{background:#fff1f2;color:#a52323}.user-access-count-button{min-height:34px;padding:0 12px;border-radius:8px;font-size:.88rem}.user-access-row-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.user-access-row-actions .ui-button{min-height:36px;padding:0 12px}.user-access-edit-row td{padding:0;background:#f8faf8;border-bottom-color:#0f3d251a}.user-access-edit-panel{display:grid;gap:16px;padding:16px;border-top:1px solid rgba(15,61,37,.08)}.user-access-edit-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,1.2fr) minmax(240px,.9fr);gap:18px;align-items:start}.user-access-projects{display:grid;gap:8px;padding-top:2px}.user-access-projects>strong{color:var(--text-primary);font-size:.9rem}.user-access-project-list{display:flex;gap:8px;flex-wrap:wrap}.user-access-project-list span{display:inline-flex;min-height:30px;align-items:center;padding:0 10px;border:1px solid rgba(15,61,37,.08);border-radius:999px;background:#fff;color:var(--text-secondary);font-size:.82rem}@media(max-width:1180px){.user-access-form-grid,.user-access-form-grid--identity,.user-access-form-grid--security,.user-access-edit-grid,.user-access-create__security{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.user-access-summary,.user-access-toolbar,.user-access-form-grid,.user-access-form-grid--identity,.user-access-form-grid--security,.user-access-edit-grid,.user-access-create__security{grid-template-columns:1fr}.user-access-toggle-group,.user-access-create__actions,.user-access-edit-actions{justify-content:stretch}.user-access-create__actions .ui-button,.user-access-edit-actions .ui-button{width:100%}.user-access-table{min-width:760px}}.planner-shell{height:100vh;display:grid;grid-template-rows:64px 1fr 38px;background:var(--bg)}.planner-shell--has-board-notice{grid-template-rows:64px auto minmax(0,1fr)}.planner-topbar{position:relative;z-index:80;overflow:visible;border-bottom:1px solid var(--border);background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.planner-board-notice{position:relative;z-index:45;display:flex;align-items:center;justify-content:center;min-width:0;padding:7px clamp(18px,3vw,34px);border-bottom:1px solid color-mix(in srgb,var(--accent) 42%,rgba(15,23,42,.12));background:var(--accent);color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 22%,transparent)}.planner-board-notice span{display:-webkit-box;width:100%;min-width:0;max-width:1600px;margin:0 auto;color:#fff;font-size:.92rem;font-weight:700;line-height:1.35;letter-spacing:0;text-align:center;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.planner-topbar__inner{position:relative;height:100%;padding:0 20px;display:grid;grid-template-columns:minmax(320px,1fr) auto auto;align-items:center;gap:20px}.planner-topbar__brand{display:flex;align-items:center;gap:16px}.planner-topbar__brand h1{margin:0;font-size:1rem}.planner-topbar__brand p,.planner-save-state{margin:0;font-size:.84rem;color:var(--text-secondary)}.segmented-control{display:inline-flex;padding:4px;border-radius:14px;border:1px solid var(--border);background:var(--surface-muted)}.segmented-control button{min-width:64px;min-height:34px;border:0;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer}.segmented-control .is-active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0000000a}.planner-body{min-height:0;display:grid;grid-template-columns:320px minmax(0,1fr) 360px}.planner-sidebar{min-height:0;overflow:auto;border-right:1px solid var(--border);background:var(--surface)}.planner-sidebar--inspector{border-right:0;border-left:1px solid var(--border)}.planner-workspace{position:relative;min-width:0;min-height:0;background:radial-gradient(circle at top left,rgba(31,122,77,.08),transparent 28%),linear-gradient(180deg,#f8fafc,#eef2f6)}.planner-workspace--readonly{display:flex}.planner-workspace--readonly>.canvas-stage--planner{flex:1 1 auto;min-width:0}.viewer-mode-switch{position:absolute;top:18px;left:18px;z-index:28;display:inline-flex;gap:4px;padding:4px;border:1px solid rgba(15,23,42,.1);border-radius:999px;background:#fffffff0;box-shadow:0 14px 34px #0f172a1f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.viewer-mode-switch button{min-height:32px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:#475569;font-weight:800;cursor:pointer}.viewer-mode-switch button.is-active{background:#df1f18;color:#fff}.viewer-mode-switch button:disabled{cursor:not-allowed;opacity:.55}.catalog-sidebar,.inspector-panel{display:grid;gap:18px;padding:20px}.catalog-sidebar__header h2{margin:0}.catalog-sidebar__header p{margin:6px 0 0;color:var(--text-secondary)}.catalog-filter-list{display:flex;flex-wrap:wrap;gap:8px}.catalog-filter{min-height:32px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface-muted);color:var(--text-secondary);cursor:pointer}.catalog-filter.is-active{background:var(--accent-soft);color:var(--accent);border-color:#1f7a4d26}.catalog-products{display:grid;gap:12px}.catalog-card{display:grid;gap:10px;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--surface);cursor:grab;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.catalog-card:hover,.catalog-card.is-armed{border-color:#1f7a4d33;box-shadow:0 10px 24px #0f172a14;transform:translateY(-1px)}.catalog-card.is-armed{background:linear-gradient(180deg,#fff,#f5fbf7)}.catalog-card__media,.inspector-item-title,.pricing-summary,.validation-list{display:grid;gap:10px}.catalog-card__media{grid-template-columns:1fr auto;align-items:center}.catalog-card__content h3{margin:0 0 6px;font-size:.98rem}.catalog-card__content p{margin:0 0 10px;color:var(--text-secondary);font-size:.9rem}.catalog-card__hint{color:var(--accent);font-size:.82rem;font-weight:600}.canvas-stage{position:relative;height:100%;display:grid;place-items:center;padding:22px;user-select:none;-webkit-user-select:none}.canvas-2d{position:relative;border:1px solid #d7dce4;border-radius:24px;background:linear-gradient(to right,rgba(107,114,128,.09) 1px,transparent 1px),linear-gradient(to bottom,rgba(107,114,128,.09) 1px,transparent 1px),#fff;background-size:24px 24px;box-shadow:inset 0 1px #ffffffe6,var(--shadow);overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}.canvas-2d[data-placement-mode=true]{cursor:crosshair;box-shadow:inset 0 1px #ffffffe6,0 0 0 3px #1f7a4d1f,var(--shadow)}.canvas-placement-hint{position:absolute;left:16px;top:16px;z-index:2;padding:8px 10px;border:1px solid rgba(17,24,39,.18);border-radius:0;background:#fffffff5;color:#111827;font-size:.76rem;box-shadow:none}.canvas-item{position:absolute;border:0;cursor:pointer;background:transparent;box-shadow:none;transition:outline-color .12s ease}.canvas-item.is-selected{outline:none}.canvas-item--container{display:block;border-radius:0;color:#1f2937;font-size:.72rem;font-weight:600}.canvas-item--mounted{background:transparent;border-radius:0}.canvas-item--furniture{border-radius:0;background:transparent}.canvas-item--stair{border-radius:0;background:transparent;color:#fff;font-size:.7rem}.canvas-3d{width:100%;height:100%}.inspector-section,.inspector-grid{display:grid;gap:12px}.inspector-subsection,.inspector-option-group,.inspector-color-choices{display:grid;gap:10px}.inspector-subsection h4{margin:0;font-size:.95rem}.inspector-field-note{margin:-4px 0 0;color:var(--text-secondary);font-size:.84rem;line-height:1.45}.inspector-inline-toggle{width:100%}.inspector-slider-field{display:grid;gap:8px}.inspector-slider-field span{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-secondary);font-size:.84rem;font-weight:700}.inspector-slider-field strong{color:var(--text-primary);font-size:.86rem}.inspector-slider-field input[type=range]{width:100%;accent-color:var(--accent)}.inspector-slider-field input:disabled{opacity:.45;cursor:not-allowed}.inspector-grid{grid-template-columns:1fr 1fr}.wall-elevation{display:grid;gap:10px;margin-top:8px;padding-top:12px;border-top:1px solid var(--border)}.wall-elevation__heading,.wall-elevation__report{display:flex;align-items:center;justify-content:space-between;gap:12px}.wall-elevation__heading h4{margin:0;font-size:.86rem}.wall-elevation__heading span,.wall-elevation__report{color:var(--text-secondary);font-size:.72rem}.wall-elevation__heading strong{color:var(--text-primary);font-size:.72rem}.wall-elevation__canvas{position:relative;width:100%;min-height:118px;max-height:220px;overflow:hidden;border:1px solid #cfd4d8;background:linear-gradient(to right,rgba(40,45,50,.06) 1px,transparent 1px),linear-gradient(to top,rgba(40,45,50,.06) 1px,transparent 1px),#f5f4f1;background-size:10% 10%}.wall-elevation__eye-line{position:absolute;right:0;left:0;z-index:1;border-top:1px dashed #c93624;pointer-events:none}.wall-elevation__item{position:absolute;z-index:2;min-width:4px;min-height:4px;padding:0;border:1px solid #5f6870;border-radius:0;background:#d7d3ca}.wall-elevation__item.is-artwork{background:#ece8df;box-shadow:inset 0 0 0 3px #26292c;cursor:pointer}.wall-elevation__item.is-selected{outline:2px solid #c93624;outline-offset:1px}.wall-elevation__item.has-collision{background:#f0b5ad}.wall-elevation__item:disabled{opacity:.45}.wall-elevation__coordinates{grid-template-columns:1fr}.wall-elevation__toolbar{display:grid;grid-template-columns:repeat(8,minmax(28px,1fr));gap:4px}.wall-elevation__toolbar button{display:inline-grid;width:100%;aspect-ratio:1;place-items:center;padding:0;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text-primary)}.wall-elevation__toolbar button:hover:not(:disabled){border-color:#c93624;color:#c93624}.wall-elevation__toolbar button:disabled{opacity:.35}.wall-elevation__report.has-warning strong{color:#b12818}.inspector-color-input{min-height:48px;padding:6px;cursor:pointer}.inspector-color-swatches{display:grid;grid-template-columns:1fr 1fr;gap:8px}.inspector-color-swatches--container{grid-template-columns:1fr 1fr}.inspector-color-group{display:grid;gap:7px}.inspector-color-group-label{display:block;margin:12px 0 0;color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:0}.inspector-color-group-help{margin:-2px 0 0;color:var(--text-secondary);font-size:.78rem;line-height:1.35}.inspector-color-swatch{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.inspector-color-swatch--large{min-height:72px;padding:14px 16px}.inspector-color-swatch:hover{border-color:#1f7a4d33;transform:translateY(-1px)}.inspector-color-swatch.is-selected{border-color:#1f7a4d6b;box-shadow:0 0 0 3px #1f7a4d1f}.inspector-color-swatch:disabled{cursor:default;opacity:.7}.inspector-color-swatch__chip{width:18px;height:18px;border-radius:999px;border:1px solid rgba(15,23,42,.14);flex:0 0 auto}.inspector-color-swatch__chip--custom{background:linear-gradient(135deg,#f8fafc,#e2e8f0 49%,#d1d5db 50%,#475569)}.inspector-color-swatch__label{font-size:.84rem;font-weight:600}.inspector-color-swatch__content{display:grid;gap:2px;min-width:0}.inspector-color-swatch__meta{color:var(--text-secondary);font-size:.74rem;font-weight:600;line-height:1.3}.inspector-finish-summary,.inspector-finish-summary__group,.inspector-finish-summary__list,.inspector-finish-summary__copy,.inspector-finish-summary__empty,.inspector-finish-summary__preview{display:grid;gap:10px}.inspector-finish-summary__hero p{margin:4px 0 0;color:var(--text-secondary);font-size:.78rem;line-height:1.4}.inspector-finish-summary__empty,.inspector-finish-summary__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--border);border-radius:14px;background:#f8fafce0}.inspector-finish-summary__empty{grid-template-columns:minmax(0,1fr)}.inspector-finish-summary__swatch{width:42px;height:42px;border-radius:12px;border:1px solid rgba(18,24,38,.08);background-position:center;background-size:cover;background-repeat:no-repeat;flex-shrink:0}.inspector-finish-summary__copy strong,.inspector-finish-summary__empty strong{font-size:.86rem}.inspector-finish-summary__copy span,.inspector-finish-summary__empty span{color:var(--text-secondary);font-size:.77rem;line-height:1.35}.inspector-finish-action{min-height:34px;padding:0 12px;border:1px solid rgba(31,122,77,.24);border-radius:10px;background:#1f7a4d14;color:#145c38;font-size:.78rem;font-weight:700}.inspector-finish-action--secondary{border-color:var(--border);background:var(--surface);color:var(--text)}.inspector-finish-action:disabled{opacity:.54;cursor:default}.inspector-grid--custom-colors{margin-top:2px}.inspector-empty,.validation-empty{color:var(--text-secondary)}.pricing-summary div{justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border)}.validation-item{padding:12px 14px;border-radius:14px}.validation-item--warning{background:#fff7ed;color:var(--warning)}.validation-item--error{background:#fef2f2;color:#b91c1c}.planner-floating-output{position:absolute;right:20px;bottom:20px;display:grid;gap:8px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow)}.planner-status{border-top:1px solid var(--border);background:#ffffffe6}.status-bar{height:100%;padding:0 20px;justify-content:space-between;color:var(--text-secondary);font-size:.84rem}.status-bar select{min-height:28px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}@media(max-width:1200px){.planner-body{grid-template-columns:280px minmax(0,1fr) 320px}}@media(max-width:980px){.dashboard-header,.dashboard-main{padding-left:20px;padding-right:20px}.profile-grid{grid-template-columns:1fr}.planner-body{grid-template-columns:280px minmax(0,1fr)}.planner-sidebar--inspector{position:absolute;right:16px;top:80px;width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 140px);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}}@media(max-width:760px){.planner-shell{grid-template-rows:84px 1fr 42px}.planner-shell--has-board-notice{grid-template-rows:84px auto minmax(0,1fr)}.planner-board-notice{min-height:40px;padding:8px 14px}.planner-topbar__inner{grid-template-columns:1fr;gap:8px;padding-top:8px;padding-bottom:8px}.planner-body{grid-template-columns:1fr}.planner-sidebar--catalog,.planner-sidebar--inspector{display:none}}.planner-shell--immersive{min-height:100vh;height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:#edf2f6}.planner-shell--immersive.planner-shell--has-board-notice{grid-template-rows:auto auto minmax(0,1fr)}.planner-shell--immersive.planner-shell--tour-active{grid-template-rows:minmax(0,1fr)}.planner-shell--immersive.planner-shell--tour-active.planner-shell--has-board-notice{grid-template-rows:auto minmax(0,1fr)}.planner-shell--immersive .planner-topbar{border-bottom:1px solid #e4e8ee;background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.planner-shell--viewer-active .planner-toast,.planner-shell--viewer-active .planner-share-chip{opacity:0;pointer-events:none;transform:translateY(-10px)}.planner-topbar__inner--immersive{min-height:52px;padding:10px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px}.planner-topbar__inner--readonly .planner-topbar__title-group span{display:none}.planner-topbar__left,.planner-topbar__center,.planner-topbar__right,.planner-topbar__crumb,.planner-topbar__title-group,.planner-topbar__stats,.planner-topbar__quick-actions,.planner-mode-toggle,.planner-stage-shell,.planner-toolrail__stack,.planner-category-grid,.planner-product-card__meta,.canvas-selection-toolbar,.canvas-3d-toolbar,.canvas-3d-panel{display:flex;align-items:center}.planner-topbar__left{gap:12px;min-width:0;overflow:hidden}.planner-topbar__project-meta{display:inline-flex;align-items:center;gap:12px;min-width:0;max-width:100%;overflow:hidden;flex:1 1 auto}.planner-topbar__brandmark{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;padding:0;border:none;border-radius:0;background:transparent;flex:0 0 auto;min-width:0}.planner-topbar__center{justify-content:center}.planner-topbar__right{justify-content:flex-end;gap:14px}.planner-topbar__crumb{gap:8px;min-height:34px;padding:0 10px;border-radius:999px;color:#4b5563}.planner-topbar__crumb--level{position:relative;min-width:136px}.planner-topbar__crumb--level select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:32px;padding:0 28px 0 0;border:none;background:transparent;color:#111827;font-weight:600;cursor:pointer}.planner-topbar__crumb--level select:focus{outline:none}.planner-topbar__crumb--icon{justify-content:center;width:34px;padding:0;border:1px solid #e5e7eb;background:#fff}.planner-topbar__crumb--current{border:1px solid #e5e7eb;background:#f9fafb}.planner-topbar__title-group{gap:8px;min-width:0;white-space:nowrap;overflow:hidden}.planner-topbar__title-button{display:inline-flex;align-items:center;gap:8px;min-width:0;padding:0;border:0;background:transparent;color:#111827;font:inherit;cursor:text}.planner-topbar__title-group strong{overflow:hidden;text-overflow:ellipsis}.planner-topbar__title-button strong{max-width:min(320px,26vw)}.planner-topbar__title-button:hover .planner-topbar__icon--muted{color:#df1f18}.planner-topbar__title-input{width:clamp(180px,24vw,340px);min-height:36px;padding:0 12px;border:1px solid #d5dee7;border-radius:12px;background:#fff;color:#111827;font:inherit;font-weight:700;box-shadow:0 10px 24px #0f172a14}.planner-topbar__title-input:focus{outline:none;border-color:#1f7a4d8f;box-shadow:0 0 0 3px #1f7a4d24}.planner-topbar__title-group span,.planner-topbar__stats{font-size:.82rem;color:#6b7280}.planner-topbar__stats{gap:10px}.planner-topbar__quick-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.planner-topbar__action-strip,.planner-topbar__final-strip{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.planner-topbar__menu-anchor{position:relative}.planner-topbar__camera-launcher{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;border-radius:999px;background:transparent;color:#2d984b;cursor:pointer;transition:background-color .14s ease,color .14s ease}.planner-topbar__camera-launcher:hover:not(:disabled){background:#4da5581a;color:#df1f18}.planner-topbar__camera-launcher.is-active{background:#4da55829;color:#df1f18}.planner-topbar__camera-launcher:disabled{opacity:.55;cursor:not-allowed}.planner-topbar__popover{position:absolute;top:44px;right:0;z-index:60;width:min(290px,calc(100vw - 28px));display:grid;gap:12px;padding:14px;border:1px solid #e5e7eb;border-radius:18px;background:#fffffffa;box-shadow:0 28px 60px #0f172a29;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow-wrap:anywhere}.planner-topbar__popover .planner-inline-toggle button{overflow:visible;white-space:normal}.planner-topbar__popover--camera-hub{width:min(360px,calc(100vw - 28px));gap:14px;max-height:min(560px,calc(100svh - 104px));overflow-y:auto}.planner-topbar__popover--export{width:min(380px,calc(100vw - 28px))}.planner-topbar__popover--save{width:min(360px,calc(100vw - 28px))}.planner-topbar__popover--scene{width:min(430px,calc(100vw - 28px));max-height:min(720px,calc(100svh - 104px));overflow-y:auto}.planner-topbar__popover strong{font-size:.95rem}.planner-topbar__popover p{margin:0;color:#6b7280;font-size:.84rem;line-height:1.55}.inspector-panel .planner-topbar__popover{position:static;top:auto;right:auto;width:100%;max-width:none;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.inspector-panel .planner-topbar__popover--camera-hub{width:100%;max-height:none}.planner-camera-hub__hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}.planner-camera-hub__hero-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:15px;background:linear-gradient(180deg,#e1f4e8fa,#f5fbf7eb);color:#df1f18}.planner-camera-hub__hero-copy{display:grid;gap:4px}.planner-camera-hub__hero-copy strong{font-size:1rem}.planner-camera-hub__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.planner-camera-hub__summary-card,.planner-camera-hub__section{border:1px solid #e5e7eb;border-radius:16px;background:#fff}.planner-camera-hub__summary-card{display:grid;gap:4px;padding:12px 13px}.planner-camera-hub__summary-card span{color:#64748b;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.planner-camera-hub__summary-card strong{font-size:.98rem}.planner-camera-hub__summary-card small{color:#64748b;line-height:1.35}.planner-camera-hub__section{display:grid;gap:10px;padding:12px;background:#f8fafccc}.planner-camera-hub__section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.planner-camera-hub__section-head>div{display:grid;gap:4px}.planner-camera-hub__section-chip{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 8px;border-radius:999px;background:#fff;color:#df1f18;font-size:.72rem;font-weight:800;white-space:nowrap}.planner-camera-hub__section-note{padding:0 2px}.planner-shell-surface-list{display:grid;gap:10px}.planner-shell-surface-list__item{display:grid;gap:8px}.planner-shell-surface-list__item>span{font-size:.8rem;font-weight:600;color:#1f2937}.planner-topbar__popover-list{display:grid;gap:8px}.planner-camera-preset-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:stretch}.planner-camera-preset-row__view{justify-content:flex-start;text-align:left}.planner-camera-preset-row__capture{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:40px;border-radius:12px;border:1px solid rgba(31,122,77,.18);background:#fde8e7;color:#155d3a;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.planner-topbar__popover-action,.planner-topbar__popover-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-width:0;min-height:40px;padding:0 14px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;color:#111827;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.planner-topbar__popover-primary{border-color:#1f7a4d2e;background:#fde8e7;color:#155d3a;font-weight:700}.planner-topbar__popover-action--stacked,.planner-topbar__popover-primary--stacked{display:grid;justify-items:start;gap:6px;min-height:78px;padding:14px 16px;text-align:left}.planner-topbar__popover-action--stacked>span,.planner-topbar__popover-primary--stacked>span{display:inline-flex;align-items:center;gap:8px;font-weight:700}.planner-topbar__popover-action--stacked>small,.planner-topbar__popover-primary--stacked>small{color:#64748b;font-size:.8rem;line-height:1.45}.planner-topbar__popover-action:disabled,.planner-topbar__popover-primary:disabled{opacity:.55;cursor:not-allowed}.planner-inline-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.planner-inline-toggle--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.planner-inline-toggle--lighting{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-inline-toggle--lighting button{display:grid;justify-items:start;align-content:start;gap:4px;min-height:62px;padding:10px 12px;text-align:left;white-space:normal;overflow:hidden}.planner-inline-toggle--lighting button span{display:block;width:100%;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.planner-inline-toggle--lighting button small{display:block;width:100%;color:currentColor;font-size:.7rem;font-weight:600;line-height:1.25;opacity:.68;overflow-wrap:break-word}.planner-lighting-advanced{display:grid;gap:10px;padding:10px 0 0;border-top:1px solid rgba(15,23,42,.08)}.planner-lighting-advanced[open]{gap:12px}.planner-lighting-advanced summary{display:flex;align-items:center;justify-content:space-between;min-height:36px;padding:0 2px;color:#111827;font-weight:800;cursor:pointer;list-style:none}.planner-lighting-advanced summary::-webkit-details-marker{display:none}.planner-lighting-advanced summary:after{content:"+";color:#ef1d18;font-size:1.15rem;line-height:1}.planner-lighting-advanced[open] summary:after{content:"-"}.planner-lighting-quality{display:grid;gap:8px}.planner-lighting-quality>span{color:#4b5563;font-size:.8rem;font-weight:700}.planner-shell-controls{display:grid;gap:10px;padding-top:12px;border-top:1px solid rgba(15,23,42,.08)}.planner-shell-controls__head{display:grid;gap:4px}.planner-shell-controls__head strong{font-size:.9rem}.planner-shell-controls__head p{font-size:.78rem;line-height:1.45}.planner-lighting-color-control{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:8px;align-items:end}.planner-lighting-color-control label{display:grid;gap:7px;color:#4b5563;font-size:.8rem;font-weight:700}.planner-lighting-color-control input[type=color]{width:100%;height:38px;padding:3px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.planner-lighting-color-control input[type=text],.planner-custom-lighting__save input{width:100%;min-height:38px;padding:0 10px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;color:#111827;font:inherit}.planner-custom-lighting{display:grid;gap:10px;padding:12px;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#f8fafcbd}.planner-custom-lighting__save{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:8px}.planner-custom-lighting__list{display:grid;gap:8px}.planner-custom-lighting__row{display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:8px}.planner-custom-lighting__row .planner-topbar__popover-action{justify-content:flex-start;overflow:hidden;text-overflow:ellipsis}.planner-custom-lighting__delete{min-height:40px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;color:#6b7280;font-size:.76rem;font-weight:800;cursor:pointer}.planner-inline-toggle button,.planner-checkbox{display:inline-flex;align-items:center;gap:10px}.planner-inline-toggle button{justify-content:center;width:100%;min-width:0;min-height:38px;padding:0 10px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;color:#4b5563;font-size:.84rem;line-height:1.1;cursor:pointer;text-align:center;line-height:1.2;white-space:nowrap}.planner-inline-toggle button.is-active{border-color:#1f7a4d2e;background:#fde8e7;color:#155d3a}.planner-checkbox{min-height:40px;padding:0 2px;color:#374151}.planner-checkbox span{min-width:0}.planner-checkbox input{width:16px;height:16px}.planner-topbar__field{display:grid;gap:6px}.planner-topbar__field span{font-size:.82rem;font-weight:700;color:#475569}.planner-topbar__field input{width:100%;min-height:42px;padding:0 14px;border:1px solid #d9e2dc;border-radius:14px;background:#fff;color:#102419;outline:none}.planner-topbar__field input:focus{border-color:#1f7a4d6b;box-shadow:0 0 0 3px #1f7a4d1f}.planner-topbar__field input:disabled{background:#f8faf8;color:#94a3b8}.planner-topbar__field-error{display:block;margin-top:-4px;color:#b91c1c;font-size:.78rem;line-height:1.4}.planner-topbar__icon{width:18px;height:18px;flex:0 0 auto}.planner-topbar__icon--muted{color:#6b7280}.planner-topbar__icon--button{width:16px;height:16px}.planner-mode-toggle{padding:4px;border-radius:999px;background:#f1f4f7;border:1px solid #e5e7eb;gap:4px}.planner-mode-toggle button{min-width:56px;min-height:30px;border:0;border-radius:999px;background:transparent;color:#4b5563;font-weight:600;cursor:pointer}.planner-mode-toggle .is-active{background:#55b45f;color:#fff}.planner-chrome-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;border:1px solid #e5e7eb;background:#fff;color:#4b5563;cursor:pointer}.planner-chrome-button.is-active{border-color:#1f7a4d38;background:#e1f4e8f5;color:#df1f18}.planner-chrome-button:disabled{cursor:not-allowed;opacity:.5}.planner-chrome-button--small{width:30px;height:30px}.planner-pill-action{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 14px;border:0;border-radius:999px;background:linear-gradient(180deg,#6f69f4,#5851e6);color:#fff;font-weight:600;cursor:pointer;box-shadow:0 10px 20px #5851e638}.planner-pill-action:disabled{opacity:.62;cursor:not-allowed;box-shadow:none}.planner-pill-action--readonly{background:#f3f4f6;color:#6b7280}.planner-pill-action--secondary{background:#fff;color:#1f2937;border:1px solid #e5e7eb;box-shadow:0 10px 20px #0f172a14}.planner-pill-action--manual{background:#fff;color:#df1f18;border:1px solid rgba(31,122,77,.22);box-shadow:0 10px 20px #1f7a4d1a}.planner-pill-action--manual:hover{background:#fde8e7}.planner-pill-action--secondary.is-active{border-color:#1f7a4d42;background:#f0f9f3;color:#155d3a}.planner-command-palette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:start center;padding:72px 24px 24px;pointer-events:none}.planner-command-palette__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#f1f5f99e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto}.planner-command-palette__panel{position:relative;z-index:1;width:min(760px,calc(100vw - 40px));max-height:min(78vh,860px);display:grid;gap:14px;padding:18px;border:1px solid rgba(15,23,42,.08);border-radius:28px;background:#fffffff5;box-shadow:0 28px 80px #0f172a29;pointer-events:auto}.planner-command-palette__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.planner-command-palette__title{display:grid;gap:4px}.planner-command-palette__title strong{font-size:1.05rem}.planner-command-palette__title span,.planner-command-palette__empty span{color:#64748b;line-height:1.5}.planner-command-palette__search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:54px;padding:0 16px;border:1px solid #dbe4ea;border-radius:18px;background:#f8fafc}.planner-command-palette__search input{width:100%;border:0;outline:0;background:transparent;color:#0f172a;font-size:.98rem}.planner-command-palette__search span,.planner-command-palette__item-shortcut{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 8px;border:1px solid #dbe4ea;border-radius:999px;background:#fff;color:#64748b;font-size:.72rem;font-weight:700}.planner-command-palette__body{overflow:auto;display:grid;gap:18px;padding-right:4px}.planner-command-palette__group{display:grid;gap:10px}.planner-command-palette__group h3{margin:0;color:#df1f18;font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.planner-command-palette__list{display:grid;gap:8px}.planner-command-palette__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 16px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;color:#0f172a;text-align:left;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,transform .14s ease}.planner-command-palette__item:hover,.planner-command-palette__item.is-active{border-color:#1f7a4d52;background:#f6fbf8;box-shadow:0 12px 28px #1f7a4d14;transform:translateY(-1px)}.planner-command-palette__item:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.planner-command-palette__item-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#eef6f1;color:#df1f18}.planner-command-palette__item-copy{display:grid;gap:4px;min-width:0}.planner-command-palette__item-copy strong{font-size:.95rem}.planner-command-palette__item-copy small{color:#64748b;line-height:1.45}.planner-command-palette__empty{display:grid;gap:4px;padding:20px;border:1px dashed #cbd5e1;border-radius:18px;background:#f8fafc}.planner-layers-panel{position:absolute;top:18px;bottom:94px;right:18px;z-index:24;width:min(320px,calc(100vw - 36px));display:grid;gap:14px;padding:18px;border:1px solid rgba(15,23,42,.08);border-radius:24px;background:#fffffff5;box-shadow:0 18px 42px #0f172a1f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:auto;overscroll-behavior:contain}.planner-layers-panel__header,.planner-layers-panel__footer{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.planner-layers-panel__title{display:grid;gap:4px}.planner-layers-panel__title span{color:#64748b;line-height:1.45}.planner-layers-panel__list{display:grid;gap:8px}.planner-layers-panel__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;color:#0f172a;text-align:left;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.planner-layers-panel__item.is-active{border-color:#1f7a4d47;background:#f6fbf8;box-shadow:0 12px 24px #1f7a4d14}.planner-layers-panel__item-icon,.planner-layers-panel__item-meta{display:inline-flex;align-items:center;justify-content:center}.planner-layers-panel__item-icon{width:34px;height:34px;border-radius:12px;background:#eef6f1;color:#df1f18}.planner-layers-panel__item-copy{display:grid;gap:4px;min-width:0}.planner-layers-panel__item-copy small{color:#64748b;line-height:1.4}.planner-layers-panel__item-meta{flex-direction:column;gap:4px;min-width:68px;color:#64748b;font-size:.75rem;text-align:right}.planner-layers-panel__item-meta em{font-style:normal;font-size:.95rem;font-weight:700;color:#0f172a}.planner-stage-shell{position:relative;min-height:0;height:100%;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:stretch}.planner-stage-shell--viewer-active{grid-template-columns:minmax(0,1fr)}.planner-toolrail{display:flex;flex-direction:column;justify-content:space-between;padding:14px 10px;border-right:1px solid #e5e7eb;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30}.planner-toolrail__stack{display:flex;flex-direction:column;gap:10px}.planner-toolrail__stack--catalog{flex:1;justify-content:flex-start;padding:14px 0 0}.planner-toolrail__stack--secondary{padding-top:12px;border-top:1px solid #e5e7eb}.planner-toolrail__button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;border:1px solid #d7dde5;background:#fff;color:#667085;cursor:pointer;box-shadow:0 8px 18px #0f172a14}.planner-toolrail__button.is-active{border-color:#4da55852;background:#fff;color:#4da558}.planner-toolrail__button--catalog{position:relative;width:42px;height:42px;border-radius:14px;border-color:#d7dde5;color:#4da558;background:#fff;box-shadow:0 8px 18px #0f172a14}.planner-toolrail__button--catalog:after{display:none}.planner-toolrail__button--catalog.is-active:after{display:none}.planner-toolrail__button--catalog.is-active{border-color:#4da55857;background:#fff;color:#2d984b;box-shadow:0 0 0 3px #4da5581f,0 12px 24px #0f172a14}.planner-toolrail__button--tool{margin-top:2px}.planner-toolrail__icon{width:20px;height:20px}.planner-toolrail__button--catalog .planner-toolrail__icon{width:24px;height:24px}.planner-floating-panel{position:absolute;left:74px;top:24px;bottom:94px;z-index:35;width:318px;max-height:none;overflow:hidden}.catalog-sidebar--planner{display:flex;flex-direction:column;gap:16px;height:100%;min-height:0;padding:12px;border:1px solid #e5e7eb;border-radius:20px;background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 28px 60px #0f172a1f}.catalog-sidebar__panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.catalog-sidebar__panel-head h2{margin:0;font-size:1rem}.catalog-sidebar__panel-head p{margin:4px 0 0;color:#6b7280;font-size:.83rem;line-height:1.45}.planner-search-input{position:relative;display:block}.planner-search-input input{width:100%;min-height:40px;padding:0 14px 0 40px;border:1px solid #e5e7eb;border-radius:999px;background:#fff}.planner-search-input__icon{position:absolute;left:14px;top:11px;width:18px;height:18px;color:#9ca3af}.planner-suggestion-strip{display:grid;gap:10px}.planner-suggestion-strip>span{color:#6b7280;font-weight:600}.planner-topbar__popover-divider{width:100%;height:1px;background:#e5e7eb}.planner-camera-list{display:grid;gap:8px}.planner-camera-list__item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}.planner-camera-list__item.is-selected{border-color:#1f7a4d47;box-shadow:inset 0 0 0 1px #1f7a4d1f}.planner-camera-list__item.is-active{background:#fde8e7}.planner-camera-list__main,.planner-camera-list__view{border:0;background:transparent;cursor:pointer}.planner-camera-list__main{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:center;color:#111827;text-align:left}.planner-camera-list__main span{font-weight:700}.planner-camera-list__main small{grid-column:2;color:#6b7280}.planner-camera-list__view{min-height:34px;padding:0 10px;border-radius:10px;color:#155d3a;font-weight:700}.planner-slider-field{display:grid;gap:10px;color:#111827;font-size:.86rem}.planner-slider-field span{display:flex;align-items:center;justify-content:space-between;gap:12px}.planner-slider-field strong{font-size:.84rem;color:#df1f18}.planner-slider-field input[type=range]{width:100%;accent-color:#df1f18;cursor:pointer}.planner-ground-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px}.planner-ground-card{display:grid;gap:8px;padding:10px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;color:#111827;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.planner-ground-card:hover{border-color:#1f7a4d33;box-shadow:0 10px 24px #0f172a14;transform:translateY(-1px)}.planner-ground-card.is-active{border-color:#1f7a4d6b;box-shadow:0 0 0 3px #1f7a4d1f}.planner-ground-card__preview{display:grid;place-items:center;width:100%;aspect-ratio:1.35 / 1;overflow:hidden;border:1px solid #e5e7eb;border-radius:12px;background:#f3f4f6}.planner-ground-card__preview img{width:100%;height:100%;object-fit:cover}.planner-ground-card__preview--empty{color:#6b7280;font-weight:700;letter-spacing:.04em}.planner-ground-card__label{font-size:.84rem;font-weight:700}.planner-chip-list{display:flex;flex-wrap:wrap;gap:8px}.planner-chip{min-height:30px;padding:0 12px;border:1px solid #e5e7eb;border-radius:999px;background:#f9fafb;color:#4b5563}.planner-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;flex-wrap:wrap;gap:10px}.planner-category-tile{display:grid;grid-template-rows:auto minmax(2.35em,auto) minmax(2.2em,auto) auto;align-content:start;gap:8px;min-height:156px;padding:16px 14px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;text-align:left;cursor:pointer}.planner-category-tile.is-active{border-color:#55b45f3d;box-shadow:inset 0 0 0 2px #55b45f1f}.planner-category-tile--templates{background:linear-gradient(180deg,#f7fbf8,#fff)}.planner-category-tile__icon{color:#55b45f;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px}.planner-category-tile__icon svg{width:40px;height:40px}.planner-category-tile strong{font-size:1.02rem;line-height:1.15;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.planner-category-tile span,.planner-category-tile em{color:#6b7280;font-style:normal;font-size:.8rem;line-height:1.35}.planner-category-tile span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.planner-category-tile em{margin-top:auto}.planner-catalog-browser{display:flex;flex:1 1 auto;flex-direction:column;gap:10px;min-height:0}.planner-catalog-sections{display:grid;gap:16px}.planner-catalog-section{display:grid;gap:12px;padding:14px;border:1px solid #e5e7eb;border-radius:18px;background:#fff}.planner-catalog-section__header,.planner-catalog-section__summary{display:flex;align-items:center;gap:12px}.planner-catalog-section__header{justify-content:space-between}.planner-catalog-section__summary{min-width:0}.planner-catalog-section__summary>div{display:grid;gap:2px;min-width:0}.planner-catalog-section__summary strong{font-size:.95rem}.planner-catalog-section__summary span{color:#6b7280;font-size:.8rem}.planner-catalog-section__icon{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#df1f18;background:transparent;flex:0 0 42px}.planner-catalog-browser__header{display:flex;align-items:center;gap:10px}.planner-catalog-browser__header{justify-content:space-between;align-items:flex-start}.planner-catalog-browser__header--home{justify-content:flex-start}.planner-catalog-browser__actions{display:inline-flex;align-items:center;gap:8px}.planner-catalog-browser__summary{min-width:0;display:grid;gap:0;flex:1}.planner-catalog-browser__summary strong{font-size:.94rem;line-height:1.1}.planner-catalog-browser__summary span{color:#6b7280;font-size:.78rem}.planner-category-tool{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px solid rgba(223,31,24,.16);border-radius:18px;background:linear-gradient(180deg,#fff6f6e6,#fff);text-align:left}.planner-category-tool.is-active{border-color:#df1f186b;box-shadow:inset 0 0 0 2px #df1f181f}.planner-category-tool__icon{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:14px;background:transparent;color:#df1f18;flex:0 0 50px}.planner-category-tool__icon svg{width:34px;height:34px}.planner-category-tool__body{display:grid;gap:1px}.planner-category-tool__body strong{font-size:.94rem}.planner-category-tool__body span{color:#6b7280;font-size:.79rem;line-height:1.3}.catalog-products--planner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start;flex:1 1 auto;min-height:0;max-height:none;overflow:auto;padding:0 4px 8px 0;scrollbar-gutter:stable}.catalog-products--planner-section{max-height:none;overflow:visible;padding-right:0}.catalog-products--planner-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-products--templates{grid-template-columns:1fr}.planner-product-card{display:grid;gap:10px;padding:10px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;cursor:grab;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.planner-product-card:hover,.planner-product-card.is-armed{transform:translateY(-1px);border-color:#55b45f33;box-shadow:0 14px 28px #0f172a14}.planner-product-card__preview{position:relative;min-height:108px;border-radius:14px;overflow:hidden;border:1px solid #eef2f7;background:linear-gradient(180deg,#f4f6f8,#fff)}.planner-product-card__preview.has-image{background:#eef2f6}.planner-product-card__preview.has-image:before,.planner-product-card__preview.has-image:after{display:none}.planner-product-card__image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none}.catalog-product-artwork--card{position:absolute;top:2px;right:2px;bottom:2px;left:2px;width:calc(100% - 4px);height:calc(100% - 4px);pointer-events:none}.planner-product-card--compact{align-content:start}.planner-product-card--compact .planner-product-card__preview{min-height:0;aspect-ratio:1 / 1}.planner-product-card--compact .planner-product-card__image{object-fit:contain;padding:10px;background:#f3f5f8}.planner-product-card--compact .planner-product-card__body{gap:8px}.planner-product-card--compact .planner-product-card__body p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.planner-product-card--compact .planner-product-card__meta{gap:6px;align-items:start}.planner-product-card__preview:before,.planner-product-card__preview:after{content:"";position:absolute;top:20px;right:20px;bottom:20px;left:20px;border-radius:10px}.planner-product-card__preview.is-container:before{top:20px;right:18px;bottom:20px;left:18px;border:8px solid #b2b9c1;background:repeating-linear-gradient(90deg,#f1f4f7 0,#f1f4f7 12px,#e6ebf0 12px,#e6ebf0 14px)}.planner-product-card__preview.is-door:before{top:14px;right:40px;bottom:14px;left:40px;border:4px solid #d8dde2;background:#fff}.planner-product-card__preview.is-window:before{top:18px;right:30px;bottom:18px;left:30px;border:6px solid #e5e8ec;background:linear-gradient(90deg,#5a60684d 0,#5a60684d 38%,#393e44cc 38%,#393e44cc)}.planner-product-card__preview.is-stair:before{top:18px;right:26px;bottom:18px;left:26px;background:repeating-linear-gradient(135deg,#d3d8de 0,#d3d8de 8px,#eef2f5 8px,#eef2f5 16px);clip-path:polygon(0 100%,100% 10%,100% 30%,25% 100%)}.planner-product-card__preview.is-furniture:before{top:24px;right:24px;bottom:24px;left:24px;background:linear-gradient(180deg,#c9d2dc,#edf2f7)}.planner-product-card__preview.is-finish:before{top:18px;right:18px;bottom:18px;left:18px;border-radius:8px;border:1px solid rgba(31,122,77,.18);background:repeating-linear-gradient(135deg,#d7b78a 0,#d7b78a 10px,#a67546 10px,#a67546 18px)}.planner-product-card__preview.is-accessory:before{top:26px;right:26px;bottom:26px;left:26px;border-radius:999px;background:radial-gradient(circle at 40% 40%,#cfd8df,#8b9aa8)}.planner-product-card__body{display:grid;gap:8px}.planner-product-card__body h3{margin:0;font-size:.97rem}.planner-product-card__body p{margin:0;color:#6b7280;font-size:.85rem;line-height:1.45}.planner-product-card__meta{gap:8px;font-size:.82rem;color:#6b7280}.planner-product-card__meta strong{color:#111827;font-size:.9rem}.planner-template-card{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;padding:10px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.planner-template-card:hover{transform:translateY(-1px);border-color:#55b45f33;box-shadow:0 14px 28px #0f172a14}.planner-template-card__preview{display:grid;place-items:center;height:104px;min-height:104px;overflow:hidden;border:1px solid #eef2f7;border-radius:14px;background:linear-gradient(180deg,#f4f6f8,#fff);color:#55b45f}.planner-template-card__preview svg{width:38px;height:38px}.planner-template-card__preview.has-image{background:#eef2f6}.planner-template-card__preview img{width:100%;height:100%;object-fit:cover}.planner-template-card__body{display:grid;gap:6px;min-width:0}.planner-template-card__body span{color:#df1f18;font-size:.72rem;font-weight:700;line-height:1.2}.planner-template-card__body h3{margin:0;font-size:.95rem;line-height:1.15;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.planner-template-card__body p{margin:0;color:#6b7280;font-size:.78rem;line-height:1.35;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.planner-template-card__action{justify-self:start;min-height:30px;padding:0 12px;border:1px solid rgba(85,180,95,.24);border-radius:999px;background:#fde8e7;color:#155d3a;font-size:.78rem;font-weight:800}.planner-template-card__action:disabled{opacity:.6;cursor:wait}.planner-catalog-browser__hint{padding:0 4px;color:#6b7280;font-size:.77rem;font-weight:600;line-height:1.3}.planner-catalog-browser__callout{margin:2px 0 6px;pointer-events:none}.planner-finish-paint-targets{display:grid;gap:8px;padding:10px;border:1px solid #d7e0d8;border-radius:14px;background:#fff}.planner-finish-paint-targets__header{display:grid;gap:2px}.planner-finish-paint-targets__header strong{font-size:.82rem;line-height:1.15}.planner-finish-paint-targets__header span{color:#6b7280;font-size:.72rem;line-height:1.25}.planner-finish-paint-targets__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.planner-finish-paint-target{min-height:34px;border:1px solid #dbe2ea;border-radius:10px;background:#f8fafc;color:#1f2937;font-size:.74rem;font-weight:800}.planner-finish-paint-target.is-active{border-color:#229a5480;background:#ecf8ef;color:#17693a;box-shadow:inset 0 0 0 1px #229a5426}.planner-empty-results,.planner-validation-empty{display:grid;gap:6px;padding:16px;border:1px dashed #dbe2ea;border-radius:16px;background:#fafbfc}.planner-empty-results p,.planner-validation-empty p{margin:0;color:#6b7280}.planner-validation-panel{display:grid;gap:10px}.planner-validation-item{display:grid;gap:4px;padding:14px;border-radius:16px}.planner-validation-item p{margin:0}.planner-validation-item--warning{background:#fff7ed;color:#c26a08}.planner-validation-item--error{background:#fef2f2;color:#b91c1c}.planner-workspace{position:relative;min-width:0;min-height:0;height:100%;overflow:hidden;background:radial-gradient(circle at top left,rgba(85,180,95,.06),transparent 24%),linear-gradient(180deg,#f9fbfd,#eef3f7)}.planner-workspace--interaction-lock,.planner-workspace--interaction-lock *{user-select:none!important;-webkit-user-select:none!important}body.planner-body--interaction-lock{user-select:none;-webkit-user-select:none}.planner-workspace--3d{background:linear-gradient(180deg,#eef3f7,#e6edf3)}.planner-workspace--viewer-active{background:linear-gradient(180deg,#e8eff5,#dde7ef)}.planner-guidance-stack{position:absolute;top:18px;left:18px;z-index:25;display:grid;gap:10px;width:min(520px,calc(100% - 36px));pointer-events:none}.planner-guidance-stack .ui-guidance{pointer-events:auto}.planner-tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11020;pointer-events:none;isolation:isolate}.planner-tour__overlay,.planner-tour__clip-svg,.planner-tour__scrim,.planner-tour__focus-ring{position:fixed}.planner-tour__overlay{top:0;right:0;bottom:0;left:0;z-index:0}.planner-tour__clip-svg{top:0;right:0;bottom:0;left:0;z-index:-1;opacity:0;pointer-events:none}.planner-tour__scrim{top:0;right:0;bottom:0;left:0;background:#0f172a7a;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:background-color .18s ease}.planner-tour__focus-ring{z-index:1;border:2px solid rgba(129,222,153,.96);border-radius:var(--tour-spotlight-radius, 18px);background:#ffffff08;box-shadow:0 0 0 1px #ffffffeb,0 0 0 8px #81de9929,0 18px 52px #0f172a3d;transition:top .22s ease,left .22s ease,width .22s ease,height .22s ease,border-radius .22s ease}.planner-tour__card{position:fixed;z-index:2;display:grid;gap:14px;max-height:min(540px,calc(100vh - 36px));overflow:visible;padding:18px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow:0 24px 64px #0f172a29;pointer-events:auto;transition:top .22s ease,left .22s ease,transform .18s ease,opacity .18s ease}.planner-tour__card:before{content:"";position:absolute;width:16px;height:16px;border:inherit;border-right:0;border-bottom:0;background:inherit;transform:translate(-50%,-50%) rotate(45deg)}.planner-tour__card--top:before{left:var(--tour-arrow-x, 50%);bottom:-8px;transform:translate(-50%) rotate(225deg)}.planner-tour__card--bottom:before{left:var(--tour-arrow-x, 50%);top:-8px}.planner-tour__card--left:before{right:-8px;top:var(--tour-arrow-y, 50%);transform:translateY(-50%) rotate(135deg)}.planner-tour__card--right:before{left:-8px;top:var(--tour-arrow-y, 50%);transform:translateY(-50%) rotate(-45deg)}.planner-tour__card--center:before{display:none}.planner-tour__eyebrow,.planner-tour__actions,.planner-tour__actions-main{display:flex;align-items:center}.planner-tour__eyebrow,.planner-tour__actions{justify-content:space-between;gap:12px}.planner-tour__eyebrow-pill,.planner-tour__progress{border-radius:999px}.planner-tour__eyebrow-pill{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0 12px;background:#e1f4e8f5;color:#df1f18;font-size:.82rem;font-weight:700}.planner-tour__eyebrow-icon{width:16px;height:16px}.planner-tour__eyebrow strong{color:#64748b;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.planner-tour__progress{width:100%;height:6px;overflow:hidden;background:#e2e8f0}.planner-tour__progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#55b45f,#2d984b)}.planner-tour__copy{display:grid;gap:8px}.planner-tour__copy h2{margin:0;color:#0f172a;font-size:1.28rem}.planner-tour__copy p{margin:0;color:#475569;line-height:1.6}.planner-tour__actions-main{gap:10px;margin-left:auto}.planner-tour__button{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid #d7dde5;font:inherit;font-weight:700;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease,box-shadow .14s ease}.planner-tour__button:disabled{opacity:.45;cursor:not-allowed}.planner-tour__button--ghost,.planner-tour__button--secondary{background:#fff;color:#334155}.planner-tour__button--primary{border-color:#1f7a4d2e;background:#fde8e7;color:#155d3a;box-shadow:0 12px 24px #1f7a4d14}.planner-tour__button:not(:disabled):hover{border-color:#1f7a4d42}.planner-stage-shell--placement-active .planner-guidance-stack .ui-guidance,.planner-stage-shell--placement-active .planner-inspector-surface,.planner-stage-shell--placement-active .planner-floating-output{pointer-events:none}.planner-inspector-surface{position:absolute;top:22px;bottom:94px;right:22px;z-index:26;width:340px;max-height:none;overflow:auto;padding-right:6px}.planner-inspector-surface .inspector-panel{gap:14px;padding:0}.planner-inspector-surface .ui-panel{border-radius:20px;background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 60px #0f172a1f}.planner-floating-panel,.planner-floating-output,.planner-layers-panel,.planner-status--floating,.canvas-selection-toolbar,.canvas-2d-context-menu{user-select:none;-webkit-user-select:none}.planner-toast,.planner-share-chip{position:absolute;left:22px;z-index:24;display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid #e5e7eb;background:#fffffff5;box-shadow:0 16px 34px #0f172a1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.planner-toast{top:22px}.planner-toast strong{font-size:.88rem;font-weight:600}.planner-toast a,.planner-toast button,.planner-share-chip{color:#155d3a;font-size:.84rem;font-weight:700}.planner-toast button{border:0;background:transparent;cursor:pointer;font-family:inherit;padding:0}.planner-share-chip{top:70px}.offer-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:32;background:#0f172a29;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.offer-drawer{position:absolute;top:18px;right:18px;bottom:18px;width:min(860px,calc(100% - 36px));display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:16px;padding:20px;border:1px solid #e5e7eb;border-radius:24px;background:#fffffffa;box-shadow:0 24px 60px #0f172a2e;overflow:hidden}.offer-drawer__header,.offer-drawer__actions,.offer-drawer__section-head,.offer-drawer__group header,.offer-drawer__totals div{display:flex;align-items:center;justify-content:space-between;gap:12px}.offer-drawer__header h2{margin:0 0 4px;font-size:1.25rem}.offer-drawer__header p,.offer-drawer__share p{margin:0;color:var(--text-secondary)}.offer-drawer__actions{flex-wrap:wrap}.offer-drawer__actions>*{flex:1 1 180px}.offer-drawer__share{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface-muted)}.offer-drawer__pdf-status{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#ffffffe0}.offer-drawer__pdf-status-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.offer-drawer__pdf-status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase}.offer-drawer__pdf-status--pending{border-color:#f59e0b3d;background:#fffbebeb}.offer-drawer__pdf-status--pending .offer-drawer__pdf-status-badge{background:#f59e0b24;color:#b45309}.offer-drawer__pdf-status--processing{border-color:#3b82f633;background:#eff6ffeb}.offer-drawer__pdf-status--processing .offer-drawer__pdf-status-badge{background:#3b82f61f;color:#1d4ed8}.offer-drawer__pdf-status--ready{border-color:#10b98133;background:#ecfdf5eb}.offer-drawer__pdf-status--ready .offer-drawer__pdf-status-badge{background:#10b9811f;color:#047857}.offer-drawer__pdf-status--failed{border-color:#ef444433;background:#fef2f2eb}.offer-drawer__pdf-status--failed .offer-drawer__pdf-status-badge{background:#ef44441f;color:#b91c1c}.offer-drawer__share a,.offer-drawer__link-button{color:var(--accent);font-weight:700;word-break:break-all}.offer-drawer__link-button{width:fit-content;padding:0;border:0;background:transparent;cursor:pointer}.offer-drawer__body{display:grid;gap:16px;min-height:0;overflow:auto;padding-right:6px}.offer-drawer__section{display:grid;gap:14px}.offer-drawer__summary-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(160px,1fr))}.offer-drawer__summary-grid article{display:grid;gap:8px;align-content:start;min-height:104px;padding:14px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.offer-drawer__summary-grid article span{color:var(--text-secondary);font-size:.82rem}.offer-drawer__summary-grid article strong{font-size:1rem}.offer-drawer__summary-grid article.is-accent{background:var(--accent-soft);border-color:#1f7a4d29}.offer-drawer__groups{display:grid;gap:14px}.offer-drawer__group{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.offer-drawer__group header strong{color:var(--accent)}.offer-drawer__table{display:grid;gap:8px;overflow-x:auto}.offer-drawer__table-head,.offer-drawer__table-row{display:grid;grid-template-columns:minmax(260px,1.8fr) 84px 140px 140px;gap:12px;min-width:648px}.offer-drawer__table-head{color:var(--text-secondary);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.offer-drawer__table-row{align-items:start;padding:10px 0;border-top:1px solid #eef2f7}.offer-drawer__table-row strong,.offer-drawer__table-row span,.offer-drawer__table-row small{display:block}.offer-drawer__table-row span,.offer-drawer__table-row small{color:var(--text-secondary)}.offer-drawer__table-row small{margin-top:4px;font-size:.78rem;line-height:1.45}.offer-drawer__totals{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface-muted)}.offer-drawer__totals div.is-accent span,.offer-drawer__totals div.is-accent strong{color:var(--accent)}.viewer-ar-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:34;background:#0f172a2e;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.viewer-ar-drawer{position:absolute;top:18px;right:18px;bottom:18px;width:min(520px,calc(100% - 36px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;padding:20px;border:1px solid #e5e7eb;border-radius:24px;background:#fffffffa;box-shadow:0 24px 60px #0f172a2e}.viewer-ar-drawer__header,.viewer-ar-drawer__footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.viewer-ar-drawer__header h2{margin:0 0 4px;font-size:1.25rem}.viewer-ar-drawer__header p,.viewer-ar-drawer__summary span,.viewer-ar-drawer__summary p,.viewer-ar-drawer__item span,.viewer-ar-drawer__empty{margin:0;color:var(--text-secondary)}.viewer-ar-drawer__body{display:grid;gap:14px;min-height:0;overflow:hidden}.viewer-ar-drawer__summary{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface-muted)}.viewer-ar-drawer__list{display:grid;gap:10px;min-height:0;overflow:auto;padding-right:4px}.viewer-ar-drawer__item,.viewer-ar-drawer__empty{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface);text-align:left}.viewer-ar-drawer__item{cursor:pointer;transition:border-color .14s ease,background-color .14s ease,transform .14s ease}.viewer-ar-drawer__item:hover{border-color:#1f7a4d38;background:#f8fcf9;transform:translateY(-1px)}.viewer-ar-drawer__item.is-active{border-color:#1f7a4d47;background:var(--accent-soft)}.planner-floating-output{position:absolute;left:22px;bottom:88px;z-index:22;display:grid;gap:8px;padding:14px 16px;border:1px solid #e5e7eb;border-radius:18px;background:#fffffff5;box-shadow:0 18px 40px #0f172a1f}.planner-ground-panel{width:min(420px,calc(100% - 44px));max-height:min(58vh,480px);overflow:auto;z-index:21}.planner-ground-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.planner-ground-panel__title-group{display:grid;gap:4px}.planner-ground-panel__title-group strong{color:#0f172a;font-size:.95rem}.planner-ground-panel__title-group span{color:#475569;font-size:.82rem;line-height:1.4}.planner-ground-panel__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(148,163,184,.22);border-radius:12px;background:#fff;color:#334155;cursor:pointer;flex:0 0 auto}.planner-ground-panel__grid{margin-top:2px}.planner-status--floating{position:absolute;left:22px;right:22px;bottom:18px;z-index:20;border:0;border-radius:20px;background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 16px 34px #0f172a1a;overflow:hidden;pointer-events:none}.status-bar--planner{display:flex;align-items:center;gap:18px;min-height:64px;padding:8px 14px;overflow:hidden;scrollbar-width:none;pointer-events:none}.status-bar--alert{pointer-events:auto}.status-bar__alert-slot{flex:0 1 min(520px,38vw);min-width:0;max-width:min(620px,42vw);overflow:hidden;padding-right:6px;pointer-events:auto}.status-bar__metrics{display:flex;align-items:center;gap:6px;min-width:0;flex:1 1 auto;overflow-x:auto;padding-right:6px;pointer-events:none}.status-bar--planner::-webkit-scrollbar,.status-bar__metrics::-webkit-scrollbar,.status-bar__actions::-webkit-scrollbar{display:none}.status-bar__metric,.status-bar__context{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border:0;border-radius:12px;background:#f8fbf9f5;white-space:nowrap}.status-bar__metric-icon,.status-bar__context-icon,.status-bar__action-icon{width:22px;height:22px}.status-bar__metric-icon,.status-bar__context-icon{color:#2d984b}.status-bar__metric-copy,.status-bar__context-copy{display:inline-flex;align-items:baseline;gap:6px}.status-bar__metric-copy strong,.status-bar__context-copy strong{color:#111827;font-size:.92rem;line-height:1}.status-bar__metric-copy span,.status-bar__context-copy span{color:#6b7280;font-size:.74rem;font-weight:700;line-height:1.1;letter-spacing:.02em}.status-bar__aside,.status-bar__actions,.status-bar__action-group{display:flex;align-items:center}.status-bar__aside{flex:0 0 auto;gap:10px;margin-left:auto;min-width:0;padding-left:4px;background:linear-gradient(90deg,#fff0,#fffffff5 18px);pointer-events:none}.status-bar__finish-toolbar{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:6px 8px;border-radius:14px;background:#f8fbf9f5;pointer-events:auto}.status-bar__finish-toolbar-copy{display:flex;flex-direction:column;min-width:0;padding:0 4px 0 2px}.status-bar__finish-toolbar-copy strong{color:#df1f18;font-size:.82rem;line-height:1.1}.status-bar__finish-toolbar-copy span{color:#5b6574;font-size:.75rem;line-height:1.1}.status-bar__finish-toolbar-actions{display:inline-flex;align-items:center;gap:6px}.status-bar__finish-target{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border:1px solid rgba(31,122,77,.12);border-radius:10px;background:#fff;color:#304055;font-size:.8rem;font-weight:700;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease}.status-bar__finish-target.is-active{border-color:#1f7a4d47;background:#edf8ef;color:#df1f18}.status-bar__finish-target--exit{border-color:#7f1d1d24;color:#7f1d1d}.status-bar__finish-target--exit:hover{border-color:#7f1d1d38;background:#fef2f2}.status-bar__actions{gap:0;min-width:0;overflow:visible;pointer-events:auto}.status-bar__action-group{gap:4px;pointer-events:auto}.status-bar__action-group+.status-bar__action-group{margin-left:10px;padding-left:10px;border-left:1px solid rgba(148,163,184,.22)}.status-bar__action{display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;min-height:42px;padding:0;border:0;border-radius:10px;background:transparent;color:#2d984b;cursor:pointer;white-space:nowrap;transition:background-color .14s ease,color .14s ease;pointer-events:auto}.status-bar__action:hover{transform:none;background:#4da5581a;color:#df1f18}.status-bar__action.is-active{background:#4da55829;color:#df1f18}.status-bar__action:disabled{opacity:.32;cursor:not-allowed}.status-bar__alert{--planner-status-alert-accent: #2563eb;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:48px;padding:8px 10px 8px 12px;border:1px solid color-mix(in srgb,var(--planner-status-alert-accent) 20%,rgba(15,23,42,.08));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--planner-status-alert-accent) 10%,transparent),transparent 48%),#fffffffa;box-shadow:inset 0 1px #ffffffe0;pointer-events:auto}.status-bar--alert-error .status-bar__alert{--planner-status-alert-accent: #dc2626}.status-bar--alert-warning .status-bar__alert{--planner-status-alert-accent: #d97706}.status-bar--alert-success .status-bar__alert{--planner-status-alert-accent: #df1f18}.status-bar--alert-hint .status-bar__alert{--planner-status-alert-accent: #0891b2}.status-bar__alert-icon{width:26px;height:26px;color:var(--planner-status-alert-accent)}.status-bar__alert-copy{display:grid;gap:2px;min-width:0}.status-bar__alert-copy strong{color:#111827;font-size:.86rem;line-height:1.15}.status-bar__alert-copy span,.status-bar__alert-copy small{min-width:0;overflow:hidden;color:#475569;font-size:.76rem;font-weight:650;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.status-bar__alert-copy small{color:color-mix(in srgb,var(--planner-status-alert-accent) 74%,#334155);font-weight:750}.status-bar__alert-actions{display:inline-flex;align-items:center;gap:6px}.status-bar__alert-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 10px;border:1px solid color-mix(in srgb,var(--planner-status-alert-accent) 24%,rgba(100,116,139,.16));border-radius:10px;background:#fff;color:var(--planner-status-alert-accent);font-size:.78rem;font-weight:800;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer}.status-bar__alert-action:hover{background:color-mix(in srgb,var(--planner-status-alert-accent) 8%,#ffffff)}.status-bar__alert-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(100,116,139,.14);border-radius:10px;background:#ffffffb8;color:#64748b;cursor:pointer}.status-bar__alert-close:hover{border-color:color-mix(in srgb,var(--planner-status-alert-accent) 24%,rgba(100,116,139,.2));color:var(--planner-status-alert-accent)}.status-bar__alert-close-icon{width:18px;height:18px}.planner-shell--roseart-workspace{--roseart-red: #df1f18;--roseart-ink: #111111;--roseart-panel: rgba(18, 18, 18, .94);--roseart-panel-soft: rgba(255, 255, 255, .94);--roseart-line: rgba(255, 255, 255, .12);--roseart-status-safe-bottom: max(12px, env(safe-area-inset-bottom, 0px));--roseart-status-height: 78px;--roseart-status-compact-height: 58px;height:100vh;height:100dvh;min-height:0;overflow:hidden;grid-template-rows:82px minmax(0,1fr);background:#f4f4f1}.planner-shell--roseart-workspace.planner-shell--has-board-notice{grid-template-rows:82px auto minmax(0,1fr)}.planner-shell--roseart-workspace.planner-shell--mode-tour{grid-template-rows:minmax(0,1fr)}.planner-shell--roseart-workspace.planner-shell--mode-tour.planner-shell--has-board-notice{grid-template-rows:auto minmax(0,1fr)}.planner-shell--roseart-workspace .planner-topbar{border-bottom:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at 7% 0%,rgba(223,31,24,.24),transparent 30%),linear-gradient(180deg,#191919,#0f0f0f);color:#fff;box-shadow:0 12px 28px #0000002e}.planner-shell--roseart-workspace .planner-topbar__inner--immersive{min-height:82px;padding:0 24px 0 22px;grid-template-columns:minmax(320px,430px) minmax(320px,390px) minmax(300px,1fr);gap:16px}.planner-topbar__roseart-brand{display:inline-flex;align-items:center;min-width:236px;color:#fff;text-decoration:none}.planner-topbar__roseart-brand .roseart-brand-logo__image{max-width:230px;max-height:58px}.planner-shell--roseart-workspace .planner-topbar__left{gap:10px}.planner-shell--roseart-workspace .planner-topbar__project-meta{max-width:172px;padding-left:8px}.planner-shell--roseart-workspace .planner-topbar__crumb{min-height:34px;border-color:#ffffff1f;background:#ffffff0f;color:#ffffffd1}.planner-shell--roseart-workspace .planner-topbar__crumb:not(.planner-topbar__crumb--icon){display:none}.planner-shell--roseart-workspace .planner-topbar__crumb--icon{width:36px;border-radius:10px}.planner-shell--roseart-workspace .planner-topbar__crumb--level{display:none}.planner-shell--roseart-workspace .planner-topbar__title-group{min-width:120px}.planner-shell--roseart-workspace .planner-topbar__title-button,.planner-shell--roseart-workspace .planner-topbar__title-group>strong{color:#fff}.planner-shell--roseart-workspace .planner-topbar__title-button strong{max-width:132px}.planner-shell--roseart-workspace .planner-topbar__title-group span{color:#ffffff85}.planner-shell--roseart-workspace .planner-mode-toggle{width:390px;max-width:min(390px,32vw);height:44px;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:4px;background:#ffffff0f;overflow:hidden}.planner-shell--roseart-workspace .planner-mode-toggle button{flex:1 1 0;min-width:0;height:44px;min-height:44px;border-radius:0;color:#ffffffe0;font-size:.74rem;font-weight:850;text-transform:uppercase}.planner-shell--roseart-workspace .planner-mode-toggle button:disabled{opacity:.42;cursor:not-allowed}.planner-shell--roseart-workspace .planner-mode-toggle .is-active{background:linear-gradient(180deg,#ff3029,#d71914);color:#fff}.planner-shell--roseart-workspace .planner-topbar__quick-actions{gap:8px;justify-content:flex-end}.planner-shell--roseart-workspace .planner-topbar__action-strip,.planner-shell--roseart-workspace .planner-topbar__final-strip{gap:8px}.planner-shell--roseart-workspace .planner-topbar__separator{width:1px;height:34px;margin:0 4px;background:#ffffff24}.planner-shell--roseart-workspace .planner-chrome-button,.planner-shell--roseart-workspace .planner-pill-action{width:38px;height:38px;min-height:38px;padding:0;border:0;border-radius:4px;background:transparent;color:#ffffffe0;box-shadow:none}.planner-shell--roseart-workspace .planner-pill-action span{display:none}.planner-shell--roseart-workspace .planner-chrome-button:hover:not(:disabled),.planner-shell--roseart-workspace .planner-pill-action:hover:not(:disabled),.planner-shell--roseart-workspace .planner-chrome-button.is-active,.planner-shell--roseart-workspace .planner-pill-action.is-active{background:#df1f18e6;color:#fff}.planner-shell--roseart-workspace .planner-chrome-button:disabled{opacity:.34}.planner-shell--roseart-workspace .planner-topbar__popover{top:50px;border:1px solid rgba(17,17,17,.08);border-radius:8px;background:#fffffffa;box-shadow:0 24px 70px #0000003d}.planner-shell--roseart-workspace .planner-topbar__popover .planner-inline-toggle button,.planner-shell--roseart-workspace .planner-topbar__popover .planner-topbar__popover-action,.planner-shell--roseart-workspace .planner-topbar__popover .planner-topbar__popover-primary,.planner-shell--roseart-workspace .planner-topbar__popover .planner-camera-preset-row__capture,.planner-shell--roseart-workspace .planner-lighting-color-control input,.planner-shell--roseart-workspace .planner-custom-lighting,.planner-shell--roseart-workspace .planner-custom-lighting__delete,.planner-shell--roseart-workspace .planner-custom-lighting__save input,.planner-shell--roseart-workspace .planner-ground-card,.planner-shell--roseart-workspace .planner-ground-panel__close{border-radius:4px}.planner-shell--roseart-workspace .planner-topbar__popover .planner-inline-toggle button.is-active,.planner-shell--roseart-workspace .planner-topbar__popover .planner-topbar__popover-primary,.planner-shell--roseart-workspace .planner-topbar__popover .planner-camera-preset-row__capture:hover,.planner-shell--roseart-workspace .planner-camera-list__item.is-active,.planner-shell--roseart-workspace .planner-ground-card.is-active{border-color:#df1f186b;background:var(--roseart-red);color:#fff;box-shadow:none}.planner-shell--roseart-workspace .planner-topbar__popover .planner-topbar__popover-primary:disabled{background:#df1f1829;color:#8f1713}.planner-shell--roseart-workspace .planner-topbar__popover .planner-topbar__popover-action:hover:not(:disabled),.planner-shell--roseart-workspace .planner-topbar__popover .planner-inline-toggle button:hover:not(.is-active),.planner-shell--roseart-workspace .planner-camera-list__item.is-selected,.planner-shell--roseart-workspace .planner-camera-list__view:hover,.planner-shell--roseart-workspace .planner-ground-card:hover{border-color:#df1f1847;background:#df1f1814;color:#111}.planner-shell--roseart-workspace .planner-topbar__popover .planner-slider-field strong,.planner-shell--roseart-workspace .planner-camera-list__view,.planner-shell--roseart-workspace .planner-topbar__popover .planner-checkbox input:checked{color:var(--roseart-red);accent-color:var(--roseart-red)}.planner-shell--roseart-workspace .planner-topbar__popover input[type=range],.planner-shell--roseart-workspace .planner-ground-panel input[type=range],.planner-shell--roseart-workspace .status-bar__finish-toolbar input[type=range],.planner-shell--roseart-workspace .planner-topbar__popover input[type=checkbox]{accent-color:var(--roseart-red)}.planner-shell--roseart-workspace .planner-topbar__popover input:focus,.planner-shell--roseart-workspace .planner-topbar__popover select:focus,.planner-shell--roseart-workspace .planner-ground-panel input:focus,.planner-shell--roseart-workspace .planner-ground-panel select:focus{border-color:#df1f186b;box-shadow:0 0 0 3px #df1f181f;outline:none}.planner-shell--roseart-workspace .planner-stage-shell{grid-template-columns:248px minmax(0,1fr);background:#f4f4f1}.planner-shell--roseart-workspace .planner-stage-shell--viewer-active{grid-template-columns:minmax(0,1fr)}.planner-shell--roseart-workspace.planner-shell--mode-tour .planner-stage-shell{grid-row:1 / -1;height:100%;min-height:0}.planner-shell--roseart-workspace.planner-shell--mode-tour.planner-shell--has-board-notice .planner-stage-shell{grid-row:2}.planner-shell--roseart-workspace .planner-toolrail{gap:18px;padding:18px 0;border-right:0;background:linear-gradient(180deg,#22272afa,#101213fa),#161819;color:#fff;box-shadow:14px 0 30px #00000029}.planner-toolrail__main{display:grid;gap:14px;min-height:0;overflow:auto;scrollbar-width:thin}.planner-shell--roseart-workspace .planner-toolrail__stack{gap:4px;padding:0 8px}.planner-shell--roseart-workspace .planner-toolrail__stack--catalog{flex:0 0 auto;padding-top:0}.planner-shell--roseart-workspace .planner-toolrail__stack--actions{padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}.planner-shell--roseart-workspace .planner-toolrail__stack--secondary{margin:0 8px;padding:12px 0 0;border-top:1px solid rgba(255,255,255,.08)}.planner-toolrail__section-label{display:block;padding:7px 12px 9px;color:var(--roseart-red);font-size:.78rem;font-weight:850;line-height:1;text-transform:uppercase}.planner-shell--roseart-workspace .planner-toolrail__button{justify-content:flex-start;width:100%;height:46px;gap:12px;padding:0 14px;border:0;border-radius:3px;background:transparent;color:#ffffffdb;box-shadow:none;text-decoration:none}.planner-shell--roseart-workspace .planner-toolrail__button:hover:not(:disabled),.planner-shell--roseart-workspace .planner-toolrail__button.is-active{background:#ffffff14;color:#fff}.planner-shell--roseart-workspace .planner-toolrail__button.is-active{box-shadow:inset 4px 0 0 var(--roseart-red)}.planner-shell--roseart-workspace .planner-toolrail__button:disabled{opacity:.36;cursor:not-allowed}.planner-shell--roseart-workspace .planner-toolrail__button--catalog{color:#ffffffdb}.planner-shell--roseart-workspace .planner-toolrail__icon{width:23px;height:23px;flex:0 0 auto}.planner-shell--roseart-workspace .planner-toolrail__button--catalog .planner-toolrail__icon{width:23px;height:23px}.planner-toolrail__label{min-width:0;overflow:hidden;font-size:.92rem;font-weight:650;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.planner-shell--roseart-workspace .planner-floating-panel{left:268px;top:22px;bottom:calc(var(--roseart-status-height) + var(--roseart-status-safe-bottom) + 12px);width:340px;border-radius:8px;border-color:#11111114;box-shadow:0 24px 70px #0000002e}.planner-shell--roseart-workspace .planner-workspace{background:radial-gradient(circle at 50% 38%,rgba(0,0,0,.04),transparent 45%),#f8f8f6}.planner-shell--roseart-workspace .planner-workspace--3d{background:#ececeb}.planner-workspace-toolbar{position:absolute;top:22px;left:50%;z-index:24;display:inline-flex;align-items:center;gap:2px;max-width:min(760px,calc(100% - 410px));padding:6px;border:1px solid rgba(17,17,17,.08);border-radius:8px;background:#fffffff5;box-shadow:0 18px 48px #11111124;transform:translate(-50%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto}.planner-shell--roseart-workspace .planner-workspace-toolbar{display:none}.planner-workspace-toolbar__button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;height:44px;padding:0 12px;border:0;border-radius:4px;background:transparent;color:#151515;font-size:.82rem;font-weight:760;cursor:pointer;white-space:nowrap}.planner-workspace-toolbar__button:hover:not(:disabled),.planner-workspace-toolbar__button.is-active{background:var(--roseart-red);color:#fff}.planner-workspace-toolbar__button:disabled{opacity:.4;cursor:not-allowed}.planner-workspace-toolbar__icon{width:20px;height:20px}.planner-shell--roseart-workspace .planner-inspector-surface{top:0;right:0;bottom:calc(var(--roseart-status-height) + var(--roseart-status-safe-bottom));width:360px;padding:0;border-left:1px solid rgba(17,17,17,.08);background:#fffffff5;box-shadow:-16px 0 42px #00000014}.planner-shell--roseart-workspace .planner-inspector-surface .ui-panel{border-radius:0;border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.planner-shell--roseart-workspace .planner-inspector-surface .inspector-panel{padding:0}.planner-shell--roseart-workspace .planner-status--floating{left:12px;right:12px;bottom:var(--roseart-status-safe-bottom);z-index:34;height:var(--roseart-status-height);max-height:var(--roseart-status-height);border-top:1px solid rgba(17,17,17,.08);border-radius:8px;background:#fffffffa;box-shadow:0 -14px 34px #00000014;contain:layout paint;overflow-x:auto;overflow-y:hidden;pointer-events:auto;scrollbar-width:thin}.planner-shell--roseart-workspace .status-bar--planner{height:var(--roseart-status-height);min-height:var(--roseart-status-height);max-height:var(--roseart-status-height);padding:8px 20px;gap:16px;width:max-content;min-width:100%;overflow-x:visible;overflow-y:hidden;pointer-events:auto}.planner-shell--roseart-workspace .status-bar--alert{gap:10px}.planner-shell--roseart-workspace .status-bar--alert .status-bar__alert-slot{flex-basis:min(560px,34vw);max-width:min(620px,38vw);max-height:calc(var(--roseart-status-height) - 12px)}.planner-shell--roseart-workspace .status-bar__alert{min-height:0;height:calc(var(--roseart-status-height) - 16px);max-height:calc(var(--roseart-status-height) - 16px);overflow:hidden}.planner-shell--roseart-workspace .status-bar__metric,.planner-shell--roseart-workspace .status-bar__context,.planner-shell--roseart-workspace .status-bar__finish-toolbar{max-height:calc(var(--roseart-status-height) - 18px);min-height:54px;padding:0 18px;border-right:1px solid rgba(17,17,17,.08);border-radius:0;background:transparent}.planner-shell--roseart-workspace .status-bar__metrics{gap:0;flex:1 1 auto;min-width:max-content;overflow:visible}.planner-shell--roseart-workspace .status-bar__metric-icon,.planner-shell--roseart-workspace .status-bar__context-icon,.planner-shell--roseart-workspace .status-bar__action-icon{color:var(--roseart-red)}.planner-shell--roseart-workspace .status-bar__metric-copy{display:grid;gap:5px;min-width:0}.planner-shell--roseart-workspace .status-bar__context{max-width:min(280px,30vw)}.planner-shell--roseart-workspace .status-bar__context-copy,.planner-shell--roseart-workspace .status-bar__finish-toolbar-copy{min-width:0}.planner-shell--roseart-workspace .status-bar__context-copy strong,.planner-shell--roseart-workspace .status-bar__context-copy span,.planner-shell--roseart-workspace .status-bar__finish-toolbar-copy strong,.planner-shell--roseart-workspace .status-bar__finish-toolbar-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-shell--roseart-workspace .status-bar__finish-toolbar{max-width:min(620px,44vw);overflow:hidden}.planner-shell--roseart-workspace .status-bar__finish-toolbar-actions{flex:0 0 auto}.planner-shell--roseart-workspace .status-bar__metric-copy strong{order:2;color:#151515;font-size:1rem;font-weight:850}.planner-shell--roseart-workspace .status-bar__metric-copy span{order:1;color:#5c626b;font-size:.66rem;font-weight:850;letter-spacing:.02em;text-transform:uppercase}.planner-shell--roseart-workspace .status-bar__aside{gap:10px;flex-shrink:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.98) 20px)}.planner-shell--roseart-workspace .status-bar__zoom-readout{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1px solid rgba(17,17,17,.08);border-radius:4px;background:#fff;color:#151515;white-space:nowrap}.planner-shell--roseart-workspace .status-bar__zoom-readout span{color:#5c626b;font-size:.68rem;font-weight:850;text-transform:uppercase}.planner-shell--roseart-workspace .status-bar__zoom-readout strong{font-size:.88rem;font-weight:850}.planner-shell--roseart-workspace .status-bar__finish-toolbar-copy strong{color:#151515}.planner-shell--roseart-workspace .status-bar__finish-target{border-color:#11111114;border-radius:4px;color:#151515}.planner-shell--roseart-workspace .status-bar__finish-target:hover,.planner-shell--roseart-workspace .status-bar__finish-target.is-active{border-color:#df1f186b;background:#df1f181a;color:var(--roseart-red)}.planner-shell--roseart-workspace .status-bar__finish-target--exit{color:#8f1713}.planner-shell--roseart-workspace .status-bar__action{border-radius:4px;border:1px solid rgba(17,17,17,.08);background:#fff;color:#171717}.planner-shell--roseart-workspace .status-bar__action:hover,.planner-shell--roseart-workspace .status-bar__action.is-active{background:var(--roseart-red);color:#fff}.planner-shell--roseart-workspace .status-bar__action.is-active .status-bar__action-icon,.planner-shell--roseart-workspace .status-bar__action:hover .status-bar__action-icon{color:#fff}@media(max-width:1280px){.planner-shell--roseart-workspace{--roseart-status-height: 68px;grid-template-rows:74px minmax(0,1fr)}.planner-shell--roseart-workspace.planner-shell--has-board-notice{grid-template-rows:74px auto minmax(0,1fr)}.planner-shell--roseart-workspace .planner-topbar__inner--immersive{min-height:74px;grid-template-columns:minmax(220px,1fr) minmax(260px,320px) minmax(220px,auto);gap:10px;padding:0 14px}.planner-topbar__roseart-brand{min-width:180px}.planner-topbar__roseart-brand .roseart-brand-logo__image{max-width:190px;max-height:48px}.planner-shell--roseart-workspace .planner-mode-toggle{width:320px;max-width:30vw}.planner-shell--roseart-workspace .planner-stage-shell{grid-template-columns:220px minmax(0,1fr)}.planner-shell--roseart-workspace .planner-floating-panel{left:238px;width:min(320px,calc(100% - 258px))}.planner-shell--roseart-workspace .planner-inspector-surface{width:min(340px,32vw)}.planner-shell--roseart-workspace .status-bar--planner{height:var(--roseart-status-height);min-height:var(--roseart-status-height);max-height:var(--roseart-status-height);gap:10px;padding:6px 12px}.planner-shell--roseart-workspace .status-bar__metric,.planner-shell--roseart-workspace .status-bar__context,.planner-shell--roseart-workspace .status-bar__finish-toolbar{max-height:calc(var(--roseart-status-height) - 12px);min-height:48px;padding:0 12px}}@media(max-width:980px){.planner-shell--roseart-workspace{--roseart-status-height: var(--roseart-status-compact-height)}.planner-shell--roseart-workspace .planner-topbar__inner--immersive{grid-template-columns:minmax(170px,1fr) minmax(220px,280px) auto;overflow-x:auto;scrollbar-width:thin}.planner-shell--roseart-workspace .planner-mode-toggle{width:280px;max-width:none;flex:0 0 280px}.planner-shell--roseart-workspace .planner-stage-shell{grid-template-columns:72px minmax(0,1fr)}.planner-shell--roseart-workspace .planner-toolrail{padding-inline:8px}.planner-shell--roseart-workspace .planner-toolrail__section-label,.planner-shell--roseart-workspace .planner-toolrail__label{display:none}.planner-shell--roseart-workspace .planner-toolrail__button{justify-content:center;width:54px;height:44px;padding:0}.planner-shell--roseart-workspace .planner-floating-panel{left:86px;right:12px;width:auto}.planner-shell--roseart-workspace .planner-inspector-surface{width:min(320px,calc(100vw - 96px))}.planner-shell--roseart-workspace .planner-status--floating{left:8px;right:8px}.planner-shell--roseart-workspace .status-bar--planner{height:var(--roseart-status-height);min-height:var(--roseart-status-height);max-height:var(--roseart-status-height);padding:5px 10px}.planner-shell--roseart-workspace .status-bar__metric,.planner-shell--roseart-workspace .status-bar__context,.planner-shell--roseart-workspace .status-bar__finish-toolbar{max-height:calc(var(--roseart-status-height) - 10px);min-height:44px;padding:0 10px}.planner-shell--roseart-workspace .status-bar--alert .status-bar__alert-slot{flex-basis:min(360px,42vw);max-width:min(360px,42vw)}.planner-shell--roseart-workspace .status-bar__alert{height:calc(var(--roseart-status-height) - 12px);max-height:calc(var(--roseart-status-height) - 12px);gap:8px;padding:6px 8px;border-radius:6px}.planner-shell--roseart-workspace .status-bar__alert-copy small{display:none}.planner-shell--roseart-workspace .status-bar__metric-icon,.planner-shell--roseart-workspace .status-bar__context-icon,.planner-shell--roseart-workspace .status-bar__action-icon{width:19px;height:19px}.planner-shell--roseart-workspace .status-bar__metric-copy{gap:2px}.planner-shell--roseart-workspace .status-bar__metric-copy strong{font-size:.86rem}.planner-shell--roseart-workspace .status-bar__metric-copy span{max-width:96px;overflow:hidden;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap}.planner-shell--roseart-workspace .status-bar__zoom-readout{min-height:34px;padding-inline:10px}.planner-shell--roseart-workspace .status-bar__action{width:34px;min-width:34px;min-height:34px}}@media(max-height:680px){.planner-shell--roseart-workspace{--roseart-status-height: var(--roseart-status-compact-height)}.planner-shell--roseart-workspace .planner-floating-panel,.planner-shell--roseart-workspace .planner-inspector-surface{bottom:calc(var(--roseart-status-height) + var(--roseart-status-safe-bottom) + 8px)}.planner-shell--roseart-workspace .planner-status--floating{left:8px;right:8px;bottom:max(14px,env(safe-area-inset-bottom,0px))}.planner-shell--roseart-workspace .status-bar--planner{height:var(--roseart-status-height);min-height:var(--roseart-status-height);max-height:var(--roseart-status-height);padding-block:5px}.planner-shell--roseart-workspace .status-bar__metric,.planner-shell--roseart-workspace .status-bar__context,.planner-shell--roseart-workspace .status-bar__finish-toolbar{max-height:calc(var(--roseart-status-height) - 10px);min-height:44px}}@media(max-height:540px){.planner-shell--roseart-workspace{--roseart-status-height: 48px;grid-template-rows:58px minmax(0,1fr)}.planner-shell--roseart-workspace.planner-shell--has-board-notice{grid-template-rows:58px auto minmax(0,1fr)}.planner-shell--roseart-workspace .planner-topbar__inner--immersive{min-height:58px;padding-block:0}.planner-topbar__roseart-brand .roseart-brand-logo__image{max-height:38px}.planner-shell--roseart-workspace .planner-toolrail{gap:8px;padding-block:8px}.planner-shell--roseart-workspace .planner-toolrail__button{height:38px}.planner-shell--roseart-workspace .planner-status--floating{max-height:52px}.planner-shell--roseart-workspace .status-bar--planner{height:var(--roseart-status-height);min-height:var(--roseart-status-height);max-height:var(--roseart-status-height);padding:4px 8px}.planner-shell--roseart-workspace .status-bar__metric,.planner-shell--roseart-workspace .status-bar__context,.planner-shell--roseart-workspace .status-bar__finish-toolbar{max-height:calc(var(--roseart-status-height) - 8px);min-height:38px;padding-inline:8px}.planner-shell--roseart-workspace .status-bar--alert .status-bar__alert-slot{flex-basis:280px;max-width:280px}.planner-shell--roseart-workspace .status-bar__alert{height:calc(var(--roseart-status-height) - 8px);max-height:calc(var(--roseart-status-height) - 8px);grid-template-columns:auto minmax(0,1fr) auto;padding:4px 6px}.planner-shell--roseart-workspace .status-bar__alert-copy span,.planner-shell--roseart-workspace .status-bar__alert-action,.planner-shell--roseart-workspace .status-bar__metric-copy span,.planner-shell--roseart-workspace .status-bar__zoom-readout span,.planner-shell--roseart-workspace .status-bar__context-copy span,.planner-shell--roseart-workspace .status-bar__finish-toolbar-copy span{display:none}.planner-shell--roseart-workspace .status-bar__zoom-readout,.planner-shell--roseart-workspace .status-bar__action{min-height:32px}}.inspector-item-description{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.canvas-stage--planner{height:100%;padding:0;place-items:stretch}.canvas-viewport{position:relative;width:100%;height:100%;overflow:hidden;cursor:default;touch-action:none;background:linear-gradient(to right,rgba(88,94,101,.22) 1px,transparent 1px),linear-gradient(to bottom,rgba(88,94,101,.22) 1px,transparent 1px),linear-gradient(to right,rgba(132,137,143,.13) 1px,transparent 1px),linear-gradient(to bottom,rgba(132,137,143,.13) 1px,transparent 1px),#f8fafc;background-size:96px 96px,96px 96px,24px 24px,24px 24px}.canvas-viewport--no-grid{background:#fff}.canvas-viewport__world{position:absolute;left:0;top:0;transform-origin:top left}.canvas-viewport__world[data-placement-mode=true]{cursor:crosshair}.canvas-viewport__world[data-placement-mode=true] .canvas-item,.canvas-viewport__world[data-placement-mode=true] .canvas-shared-wall-zone{pointer-events:none}.canvas-viewport[data-draw-wall-mode=true],.canvas-viewport__world[data-draw-wall-mode=true]{cursor:crosshair}.canvas-selection-toolbar button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid rgba(17,24,39,.22);border-radius:0;background:#fffffff5;color:#111827;cursor:pointer}.canvas-placement-hint{position:absolute;left:0;top:-52px;z-index:2;display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid rgba(17,24,39,.18);border-radius:0;background:#fffffff5;color:#111827;font-size:.76rem}.canvas-empty-state{position:absolute;left:50%;top:50%;z-index:2;display:grid;gap:6px;width:min(360px,calc(100% - 48px));padding:14px 16px;border:1px solid rgba(17,24,39,.18);border-radius:0;background:#fffffff5;transform:translate(-50%,-50%);text-align:center}.canvas-empty-state p{margin:0;color:#6b7280;font-size:.9rem;line-height:1.45}.canvas-opening-dimension-label{position:absolute;z-index:5;pointer-events:none;display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:14px;padding:1px 5px;border:1px solid rgba(15,23,42,.08);border-radius:999px;background:#ffffff9e;color:#0f172a80;font-size:.46rem;font-weight:600;line-height:1;white-space:nowrap;transform:translate(-50%,-50%) scale(var(--canvas-opening-dimension-scale, 1));transform-origin:center;box-shadow:0 2px 8px #0f172a0a}.canvas-item{position:absolute;box-sizing:border-box;border:0;margin:0;padding:0;cursor:pointer;background:transparent;box-shadow:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;user-select:none;-webkit-user-select:none;transition:outline-color .12s ease;contain:layout paint}.canvas-item.is-selected{outline:calc(1.5px * var(--canvas-inverse-scale, 1)) solid rgba(31,122,77,.78);outline-offset:calc(2px * var(--canvas-inverse-scale, 1))}.canvas-item--container{display:block;padding:0;border:0;border-radius:0;background:#fffefc;--container-wall-thickness: 5px;--container-wall-rgb: 17, 24, 39;--container-wall-north-opacity: 1;--container-wall-south-opacity: 1;--container-wall-east-opacity: 1;--container-wall-west-opacity: 1;background-color:#fffefc;background-image:linear-gradient(rgba(var(--container-wall-rgb),var(--container-wall-north-opacity)),rgba(var(--container-wall-rgb),var(--container-wall-north-opacity))),linear-gradient(rgba(var(--container-wall-rgb),var(--container-wall-east-opacity)),rgba(var(--container-wall-rgb),var(--container-wall-east-opacity))),linear-gradient(rgba(var(--container-wall-rgb),var(--container-wall-south-opacity)),rgba(var(--container-wall-rgb),var(--container-wall-south-opacity))),linear-gradient(rgba(var(--container-wall-rgb),var(--container-wall-west-opacity)),rgba(var(--container-wall-rgb),var(--container-wall-west-opacity)));background-position:top left,top right,bottom left,top left;background-repeat:no-repeat;background-size:100% var(--container-wall-thickness),var(--container-wall-thickness) 100%,100% var(--container-wall-thickness),var(--container-wall-thickness) 100%;box-shadow:inset 0 0 0 1px #0f172a0f;overflow:hidden}.canvas-item--container:before{content:none}.canvas-item--gallery-room{background-color:#fbfaf5;--container-wall-rgb: 31, 41, 55}.canvas-item--ghost-level{opacity:.34;border:5px dashed #6b7280;background-image:none;border-style:dashed;background:transparent;pointer-events:none}.canvas-item--ghost-level:before{content:none}.canvas-toast{pointer-events:none}.canvas-item__area-label,.canvas-item__area-pill{display:none}.canvas-item--mounted,.canvas-item--furniture,.canvas-item--stair{display:block;contain:layout}.canvas-item--furniture.is-selected,.canvas-item--stair.is-selected{box-shadow:inset 0 0 0 calc(1px * var(--canvas-inverse-scale, 1)) #1f7a4db8}.canvas-item--mounted{overflow:visible;z-index:5}.canvas-item--furniture,.canvas-item--stair{overflow:hidden}.canvas-item--gallery-light,.canvas-item--gallery-light .plan-symbol-shell,.canvas-item--gallery-light .plan-symbol{overflow:visible}.plan-symbol-shell--gallery-light{overflow:visible;z-index:2}.plan-symbol--gallery-light{width:100%;height:320%;overflow:visible;transform:translateY(-7%);filter:drop-shadow(0 2px 3px rgba(15,23,42,.16))}.canvas-item__perf-glyph{position:absolute;top:0;right:0;bottom:0;left:0;border:calc(1px * var(--canvas-inverse-scale, 1)) solid currentColor;border-radius:calc(8px * var(--canvas-inverse-scale, 1));background:#0f172a14;pointer-events:none}.canvas-item__perf-glyph--door{border-radius:0;border-width:0 0 calc(2px * var(--canvas-inverse-scale, 1)) 0;background:linear-gradient(135deg,transparent 0,transparent 46%,currentColor 47%,currentColor 53%,transparent 54%,transparent 100%)}.canvas-item__perf-glyph--window{border-radius:0;background:linear-gradient(currentColor,currentColor) center / calc(1px * var(--canvas-inverse-scale, 1)) 100% no-repeat,linear-gradient(currentColor,currentColor) center / 100% calc(1px * var(--canvas-inverse-scale, 1)) no-repeat,#7dd3fc24}.canvas-item__perf-glyph--accessory{top:18%;right:18%;bottom:18%;left:18%;border-radius:999px;background:#0f172a29}.canvas-item__perf-glyph--furniture{background:linear-gradient(0deg,#0f172a1f,#0f172a1f),#ffffffd1}.canvas-item__perf-glyph--stair{background:repeating-linear-gradient(180deg,rgba(15,23,42,.12) 0,rgba(15,23,42,.12) calc(3px * var(--canvas-inverse-scale, 1)),transparent calc(3px * var(--canvas-inverse-scale, 1)),transparent calc(6px * var(--canvas-inverse-scale, 1))),#ffffffe0}.plan-symbol-shell{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;transform-origin:center;overflow:hidden}.plan-symbol{width:100%;height:100%;overflow:hidden;shape-rendering:geometricPrecision}.plan-symbol-svg{display:block;width:100%;height:100%;line-height:0;overflow:hidden}.plan-symbol-svg svg{display:block;width:100%;height:100%;overflow:hidden;shape-rendering:geometricPrecision;color:inherit}.plan-symbol-generic-footprint{position:relative;display:block;width:100%;height:100%;overflow:hidden;container-type:size}.plan-symbol--generic-footprint svg [data-plan-symbol-label=true]{display:none}.plan-symbol-generic-label{position:absolute;left:50%;top:50%;z-index:2;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:calc(100% - min(calc(8px * var(--canvas-inverse-scale, 1)),18%));max-height:calc(100% - min(calc(6px * var(--canvas-inverse-scale, 1)),18%));min-height:min(calc(18px * var(--canvas-inverse-scale, 1)),86%);padding:min(calc(3px * var(--canvas-inverse-scale, 1)),12%) min(calc(8px * var(--canvas-inverse-scale, 1)),14%);border:calc(1px * var(--canvas-inverse-scale, 1)) solid rgba(31,122,77,.28);border-radius:calc(5px * var(--canvas-inverse-scale, 1));background:#fffffff5;color:#df1f18;box-shadow:0 calc(1px * var(--canvas-inverse-scale, 1)) calc(4px * var(--canvas-inverse-scale, 1)) #0f172a14;font-family:Inter,SF Pro Text,Segoe UI,Arial,sans-serif;font-size:min(clamp(calc(9px * var(--canvas-inverse-scale, 1)),calc(var(--plan-symbol-label-font-size, 12px) * var(--canvas-inverse-scale, 1)),calc(16px * var(--canvas-inverse-scale, 1))),var(--plan-symbol-label-container-font-limit, 46cqh));font-weight:500;line-height:1.13;letter-spacing:0;text-align:center;text-rendering:geometricPrecision;overflow:hidden;transform:translate(-50%,-50%) rotate(var(--plan-symbol-label-counter-rotation, 0deg));transform-origin:center;pointer-events:none}.plan-symbol-generic-label__text{display:-webkit-box;max-width:100%;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:var(--plan-symbol-label-lines, 1)}.commercial-object-svg{display:block;width:100%;height:100%;line-height:0}.commercial-object-svg svg{display:block;width:100%;height:100%;overflow:visible;shape-rendering:geometricPrecision;color:inherit}.commercial-object-svg svg rect,.commercial-object-svg svg line,.commercial-object-svg svg path,.commercial-object-svg svg circle,.commercial-object-svg svg ellipse,.commercial-object-svg svg polygon,.commercial-object-svg svg polyline{vector-effect:none}.plan-symbol--commercial{color:#111827}.plan-symbol-shell--mounted{top:0;right:0;bottom:0;left:0;overflow:visible}.canvas-item--mounted .plan-symbol-shell,.canvas-item--mounted .plan-symbol,.canvas-item--mounted .plan-symbol-svg,.canvas-item--mounted .plan-symbol-svg svg{overflow:visible}.canvas-item--door,.canvas-item--window,.canvas-item--mounted-accessory{background:transparent;border-radius:0;box-shadow:none}.canvas-item--interior-wall{display:block;border-radius:0;border:0;background:#111827;cursor:move}.canvas-item--interior-wall.is-selected{outline:calc(2px * var(--canvas-inverse-scale, 1)) solid rgba(31,122,77,.42);outline-offset:calc(3px * var(--canvas-inverse-scale, 1))}.inspector-wall-colors{display:grid;gap:8px}.wall-color-picker{position:relative;min-width:0}.wall-color-picker__trigger{width:100%;min-height:46px;display:grid;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:7px 9px;color:#1f2933;text-align:left;background:#fff;border:1px solid #d9dde2;border-radius:6px;cursor:pointer}.wall-color-picker__trigger:disabled{cursor:not-allowed;opacity:.58}.wall-color-picker__trigger>span:nth-child(2){min-width:0;display:grid;gap:2px}.wall-color-picker__trigger strong,.wall-color-picker__trigger small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wall-color-picker__trigger strong{font-size:12px}.wall-color-picker__trigger small{color:#667085;font:600 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.wall-color-picker__swatch{width:30px;height:30px;border:1px solid rgba(15,23,42,.18);border-radius:3px;box-shadow:inset 0 0 0 1px #ffffff4d}.inspector-wall-surface-editor{display:grid;gap:12px}.inspector-selected-surface-header{display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(18,24,38,.08);border-radius:8px;background:#f8fafcdb}.inspector-selected-surface-header strong{color:#121826;font-size:.92rem;line-height:1.2}.inspector-selected-surface-header small{color:#667085;font-size:.76rem;line-height:1.35}.inspector-selected-surface-finish{display:grid;gap:7px}.inspector-surface-finish-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}.inspector-surface-finish-card{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:7px;border:1px solid rgba(18,24,38,.1);border-radius:8px;background:#fff;color:#121826;text-align:left;cursor:pointer}.inspector-surface-finish-card:hover{border-color:#df1f1857;background:#fff8f7}.inspector-surface-finish-card.is-selected{border-color:#df1f18;box-shadow:0 0 0 1px #df1f1829}.inspector-surface-finish-card:disabled{cursor:default;opacity:.58}.inspector-surface-finish-card__preview{width:38px;height:38px;border:1px solid rgba(18,24,38,.1);border-radius:5px;background-position:center;background-size:cover;background-repeat:no-repeat}.inspector-surface-finish-card__copy{display:grid;gap:2px;min-width:0}.inspector-surface-finish-card__copy strong,.inspector-surface-finish-card__copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspector-surface-finish-card__copy strong{font-size:.78rem;line-height:1.2}.inspector-surface-finish-card__copy small{color:#667085;font-size:.68rem;line-height:1.2}.wall-color-picker__popover{display:grid;gap:9px;margin-top:7px;padding:9px;background:#f7f8f9;border:1px solid #d9dde2;border-radius:6px}.wall-color-picker__popover>div:first-child{width:100%!important;box-shadow:none!important}.wall-color-picker__presets{display:grid;grid-template-columns:repeat(10,minmax(18px,1fr));gap:5px}.wall-color-picker__presets button{aspect-ratio:1;min-width:0;padding:0;border:1px solid rgba(15,23,42,.22);border-radius:2px;cursor:pointer}.wall-color-picker__presets button.is-active{outline:2px solid #df1f18;outline-offset:1px}.canvas-wall-resize-handle{position:absolute;z-index:8;width:16px;height:16px;margin-left:-8px;margin-top:-8px;border:calc(2px * var(--canvas-inverse-scale, 1)) solid #ffffff;border-radius:999px;background:#df1f18;box-shadow:0 8px 18px #0f172a42;cursor:ew-resize;transform:scale(var(--canvas-inverse-scale, 1));transform-origin:center}.canvas-wall-resize-handle:hover{background:#2ba96c}.canvas-container-resize-handle{position:absolute;z-index:9;width:20px;height:20px;margin-left:-10px;margin-top:-10px;border:calc(2px * var(--canvas-inverse-scale, 1)) solid #ffffff;border-radius:999px;background:#0f5f3d;box-shadow:0 10px 20px #0f172a47;transform:scale(var(--canvas-inverse-scale, 1));transform-origin:center}.canvas-container-resize-handle--north,.canvas-container-resize-handle--south{cursor:ns-resize}.canvas-container-resize-handle--east,.canvas-container-resize-handle--west{cursor:ew-resize}.canvas-container-resize-handle:hover{background:#2ba96c}.canvas-item__wall-label{display:none}.canvas-item--door,.canvas-item--window{overflow:visible}.canvas-item--mounted-accessory{background:transparent}.canvas-item--mounted-display{overflow:visible;background:transparent;border-radius:0;box-shadow:none}.canvas-mounted-display-preview{position:absolute;z-index:6;display:block;overflow:visible;min-width:14px;min-height:10px;pointer-events:none}.canvas-mounted-display-preview__media{position:absolute;top:0;right:0;bottom:0;left:0;display:block;overflow:hidden;background:#f7f3ea;border:calc(1px * var(--canvas-inverse-scale, 1)) solid rgba(17,24,39,.82);box-shadow:0 calc(5px * var(--canvas-inverse-scale, 1)) calc(10px * var(--canvas-inverse-scale, 1)) #0f172a29,inset 0 0 0 calc(1px * var(--canvas-inverse-scale, 1)) #ffffff85}.canvas-mounted-display-preview__media img,.canvas-mounted-display-preview__fallback{display:block;width:100%;height:100%}.canvas-mounted-display-preview__media img{object-fit:contain;background:#f7f3ea}.canvas-mounted-display-preview__fallback{background:linear-gradient(135deg,rgba(17,24,39,.16),transparent 36%),linear-gradient(315deg,rgba(207,46,32,.24),transparent 42%),#f2eee4}.canvas-mounted-display-preview__title{position:absolute;left:calc(100% + 5px);top:50%;max-width:118px;padding:3px 5px;border:calc(1px * var(--canvas-inverse-scale, 1)) solid rgba(17,24,39,.12);background:#ffffffeb;color:#151719;font-size:9px;font-weight:800;line-height:1.12;text-align:left;white-space:normal;box-shadow:0 calc(6px * var(--canvas-inverse-scale, 1)) calc(12px * var(--canvas-inverse-scale, 1)) #0f172a1a;transform:translateY(-50%) scale(var(--canvas-inverse-scale, 1));transform-origin:left center}.canvas-mounted-display-preview--vertical .canvas-mounted-display-preview__title{left:50%;top:calc(100% + 5px);transform:translate(-50%) scale(var(--canvas-inverse-scale, 1));transform-origin:center top;text-align:center}.canvas-item--mounted-display.is-selected .canvas-mounted-display-preview__media{border-color:#e5231b;box-shadow:0 0 0 calc(2px * var(--canvas-inverse-scale, 1)) #e5231b38,0 calc(7px * var(--canvas-inverse-scale, 1)) calc(14px * var(--canvas-inverse-scale, 1)) #0f172a2e}.canvas-mounted-cutout{position:absolute;background:#fffefc;pointer-events:none}.canvas-paired-external-footprint{position:absolute;z-index:4;display:block;pointer-events:none;color:#df1f18;background:#1f7a4d0f;outline:1px dashed rgba(31,122,77,.72);outline-offset:-1px}.canvas-paired-external-footprint__symbol{position:absolute;display:block;color:inherit;transform-origin:center;overflow:hidden}.canvas-paired-external-footprint__symbol svg{display:block;width:100%;height:100%;overflow:hidden;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;shape-rendering:geometricPrecision}.canvas-paired-external-footprint__symbol svg circle:nth-of-type(2){fill:currentColor;stroke:none}.canvas-opening-preview,.canvas-placement-preview,.canvas-wall-preview,.canvas-surface-debug,.canvas-opening-anchor{position:absolute;pointer-events:none}.canvas-opening-preview{z-index:4;border-radius:0;border:1px dashed rgba(17,24,39,.72);background:#1118270d}.canvas-opening-preview--with-symbol{z-index:7;overflow:visible;color:#111827;box-shadow:0 0 0 calc(1px * var(--canvas-inverse-scale, 1)) #ffffffb8}.canvas-opening-preview--with-symbol .plan-symbol-shell,.canvas-opening-preview--with-symbol .plan-symbol,.canvas-opening-preview--with-symbol .plan-symbol-svg,.canvas-opening-preview--with-symbol .plan-symbol-svg svg{overflow:visible}.canvas-opening-preview--window{border-color:#111827d6;background:#11182708}.canvas-opening-preview--accessory{border-color:#1f7a4de0;border-style:solid;background:linear-gradient(180deg,#1f7a4d24,#1f7a4d14);box-shadow:inset 0 0 0 1px #ffffff9e}.canvas-opening-preview.is-invalid{border-color:#c2410ce0;background:repeating-linear-gradient(135deg,#f9731629,#f9731629 8px,#f973160f 8px,#f973160f 16px)}.canvas-opening-preview--accessory.is-invalid{border-style:dashed;box-shadow:inset 0 0 0 1px #ffffff61}.canvas-opening-preview--bounds{background:transparent;border-style:dashed;border-color:#11182773}.canvas-opening-preview--bounds.is-invalid{border-color:#c2410cdb}.canvas-placement-preview{z-index:3;border-radius:0;border:1px dashed rgba(17,24,39,.42);background:#11182704}.canvas-placement-preview.is-invalid{border-color:#c2410cb8;background:#f973160f}.canvas-surface-finish-label{position:absolute;z-index:5;display:inline-flex;align-items:center;max-width:220px;padding:4px 7px;border:1px solid rgba(31,122,77,.2);border-radius:6px;background:#ffffffd6;color:#0f3626e0;font-size:.56rem;font-weight:700;line-height:1.15;white-space:normal;pointer-events:none;box-shadow:0 6px 16px #0f172a1a;transform:translate(-50%,-100%) scale(var(--canvas-surface-label-scale, 1));transform-origin:center bottom}.canvas-surface-finish-label--south,.canvas-surface-finish-label--frame{transform:translate(-50%) scale(var(--canvas-surface-label-scale, 1));transform-origin:center top}.canvas-surface-finish-label--east{transform:translateY(-50%) scale(var(--canvas-surface-label-scale, 1));transform-origin:left center}.canvas-surface-finish-label--west{transform:translate(-100%,-50%) scale(var(--canvas-surface-label-scale, 1));transform-origin:right center}.canvas-surface-finish-label--floor,.canvas-surface-finish-label--ceiling{max-width:180px;border-color:#3b82f638;color:#1e4068e6;transform:translate(0) scale(var(--canvas-surface-label-scale, 1));transform-origin:left top}.canvas-placement-preview--container{border-width:2px}.planner-placement-debug{position:absolute;top:16px;left:16px;z-index:18;display:grid;gap:10px;width:min(340px,calc(100% - 32px));padding:14px 16px;border:1px solid rgba(15,23,42,.12);border-radius:18px;background:#fffffff5;box-shadow:0 18px 40px #0f172a1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:none}.planner-placement-debug.is-valid{border-color:#22c55e38}.planner-placement-debug.is-invalid{border-color:#f973164d}.planner-placement-debug__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.planner-placement-debug__header strong{display:block;color:#111827;font-size:.98rem;line-height:1.2}.planner-placement-debug__eyebrow{display:block;margin-bottom:4px;color:#4b8f63;font-size:.72rem;font-weight:800;letter-spacing:.14em}.planner-placement-debug__status{padding:5px 10px;border-radius:999px;background:#eef7f0;color:#1f7a44;font-size:.76rem;font-weight:800;white-space:nowrap}.planner-placement-debug.is-invalid .planner-placement-debug__status{background:#fff3ea;color:#c2410c}.planner-placement-debug__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:0}.planner-placement-debug__grid div{min-width:0}.planner-placement-debug__grid dt{margin:0 0 2px;color:#6b7280;font-size:.72rem;font-weight:700;letter-spacing:.02em}.planner-placement-debug__grid dd{margin:0;color:#111827;font-size:.85rem;font-weight:600;line-height:1.35;word-break:break-word}.planner-placement-debug__blockers p,.planner-placement-debug__notes{margin:0}.planner-placement-debug__blockers{display:grid;gap:4px;color:#7c2d12;font-size:.8rem;line-height:1.4}.planner-placement-debug__notes{padding-left:18px;color:#4b5563;font-size:.8rem;line-height:1.45}.canvas-wall-preview{z-index:4;border-radius:0;border:1px dashed rgba(17,24,39,.72);background:#4b55632e}.canvas-wall-anchor{position:absolute;z-index:5;width:8px;height:8px;border-radius:0;background:#111827;border:1px solid #ffffff;pointer-events:none}.canvas-surface-debug{z-index:3;border-radius:0}.canvas-surface-debug--surface{background:#111827b8}.canvas-surface-debug--safe{background:#11182714;box-shadow:inset 0 0 0 1px #11182747}.canvas-surface-debug--forbidden{background:#1118271f;box-shadow:inset 0 0 0 1px #1118275c}.canvas-opening-anchor{z-index:5;width:8px;height:8px;border-radius:0;background:#111827;border:1px solid #ffffff}.canvas-item--furniture{border-radius:0;border:0;background:transparent}.canvas-item--stair{display:block;border-radius:0;background:transparent}.canvas-item__stair-levels{display:none}.canvas-selection-toolbar{position:absolute;z-index:12;display:inline-flex;align-items:center;gap:6px}.canvas-selection-radial{z-index:18;display:block;width:0;height:0;transform:none;pointer-events:none}.canvas-selection-toolbar.canvas-selection-radial .canvas-selection-radial__button{position:absolute;left:0;top:0;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid rgba(18,119,72,.16);border-radius:999px;background:#fffffffa;color:#df1f18;cursor:pointer;pointer-events:auto;box-shadow:0 12px 28px #0f172a29;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:color .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.canvas-selection-toolbar.canvas-selection-radial .canvas-selection-radial__button:hover,.canvas-selection-toolbar.canvas-selection-radial .canvas-selection-radial__button:focus-visible{color:#0f6b43;border-color:#12774857;box-shadow:0 16px 34px #12774833;outline:none}.canvas-selection-toolbar.canvas-selection-radial .canvas-selection-radial__button.is-destructive:hover,.canvas-selection-toolbar.canvas-selection-radial .canvas-selection-radial__button.is-destructive:focus-visible{color:#b42318;border-color:#b4231847}.canvas-selection-radial__icon{width:24px;height:24px;stroke-width:2.05}.canvas-selection-measurements{position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;width:100%;height:100%;overflow:visible;pointer-events:none}.canvas-selection-measurement line{stroke:#16a35ec7;stroke-width:1.1;vector-effect:non-scaling-stroke}.canvas-selection-measurement--dimension line{stroke-dasharray:4 5}.canvas-selection-measurement rect,.canvas-selection-rotation-guide rect{fill:#11864f;stroke:#ffffffe0;stroke-width:1}.canvas-selection-measurement text,.canvas-selection-rotation-guide text{paint-order:normal;stroke:none;fill:#fff;font-size:12px;font-weight:800;letter-spacing:0}.canvas-selection-rotation-guide__sector{fill:#16a35e29;stroke:#16a35e75;stroke-width:1.1;vector-effect:non-scaling-stroke}.canvas-selection-rotation-guide__radius{fill:none;stroke:#16a35ed1;stroke-width:1.25;vector-effect:non-scaling-stroke}.canvas-selection-rotation-guide circle{fill:#df1f18;stroke:#fff;stroke-width:2}.canvas-stage.is-rotating-selection .canvas-item.is-selected,.canvas-stage.is-rotating-selection .canvas-item--furniture.is-selected,.canvas-stage.is-rotating-selection .canvas-item--stair.is-selected{outline:none;box-shadow:none}.canvas-2d-context-menu{position:absolute;z-index:26;display:grid;gap:6px;min-width:200px;padding:8px;border:1px solid #e5e7eb;border-radius:16px;background:#fffffffa;box-shadow:0 18px 40px #0f172a29;transform:translate(10px,10px)}.canvas-2d-context-menu--shared-wall{min-width:240px}.canvas-2d-context-menu__divider{height:1px;margin:4px 2px;background:#e5e7eb}.canvas-2d-context-menu button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid transparent;border-radius:12px;background:#fff;color:#4b5563;font-weight:600;cursor:pointer}.canvas-2d-context-menu button:hover{background:#f8fafc}.canvas-3d-shell{position:relative;width:100%;height:100%;overscroll-behavior:contain;touch-action:none;user-select:none;-webkit-user-select:none}.canvas-stage.is-surface-finish-painting .canvas-viewport,.canvas-stage.is-surface-finish-painting .canvas-viewport__world,.canvas-3d-shell.is-surface-finish-painting,.canvas-3d-shell.is-surface-finish-painting .canvas-3d{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg fill='none' stroke='%23104f24' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.2 22.9 21.7 7.4' stroke-width='3.4'/%3E%3Cpath d='M8.7 25.4 24.2 9.9' stroke='%23e7ffe8' stroke-width='1.35'/%3E%3Cpath d='m4.6 24.4 3 3 4.4-4.4-3-3-4.4 4.4Z' fill='%23a8ff16' stroke-width='1.6'/%3E%3Cpath d='m19.9 5.8 4.3 4.3 2.5-2.5a2.1 2.1 0 0 0 0-3l-.4-.4a2.1 2.1 0 0 0-3 0l-3.4 1.6Z' fill='%236bd600' stroke-width='1.6'/%3E%3Cpath d='M12.2 3.8 13.5 1.4l1.3 2.4 2.4 1.3-2.4 1.3-1.3 2.4-1.3-2.4-2.4-1.3 2.4-1.3Z' fill='%23f5ff79' stroke-width='1.35'/%3E%3Cpath d='M24.6 14.7 25.5 13l.9 1.7 1.7.9-1.7.9-.9 1.7-.9-1.7-1.7-.9 1.7-.9Z' fill='%23f5ff79' stroke-width='1.2'/%3E%3Ccircle cx='22.8' cy='20.2' r='1.15' fill='%23a8ff16' stroke-width='1.1'/%3E%3C/g%3E%3C/svg%3E") 6 25,crosshair}.canvas-stage.is-surface-finish-painting button,.canvas-3d-shell.is-surface-finish-painting button{cursor:pointer}.canvas-3d-toolbar{position:absolute;top:18px;left:18px;z-index:18;gap:10px;padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fffffff0;box-shadow:0 18px 34px #0f172a1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.canvas-3d-toolbar button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid rgba(17,24,39,.12);border-radius:14px;background:#fffffff5;color:#0f172a;font-weight:700;cursor:pointer}.canvas-3d-toolbar button.is-active{border-color:#1f7a4d47;background:#eefaf0;color:#df1f18}.canvas-3d-panel{position:absolute;top:78px;left:18px;z-index:18;flex-direction:column;align-items:stretch;gap:14px;width:min(380px,calc(100% - 36px));padding:14px;border:1px solid rgba(15,23,42,.08);border-radius:22px;background:#fffffff7;box-shadow:0 18px 40px #0f172a29;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.canvas-3d-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.canvas-3d-panel__title-group{display:grid;gap:4px}.canvas-3d-panel__title-group strong{color:#0f172a;font-size:.95rem}.canvas-3d-panel__title-group span{color:#475569;font-size:.82rem;line-height:1.4}.canvas-3d-panel__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(148,163,184,.22);border-radius:12px;background:#fff;color:#334155;cursor:pointer}.canvas-3d-panel__toggle{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:#fff;color:#0f172a;font-weight:700;cursor:pointer}.canvas-3d-panel__toggle.is-active{border-color:#1f7a4d47;background:#eefaf0;color:#df1f18}.canvas-3d-panel__section{display:grid;gap:10px}.canvas-3d-panel__section strong{color:#0f172a;font-size:.82rem}.canvas-3d-ground-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-3d{width:100%;height:100%;user-select:none;-webkit-user-select:none}.canvas-3d-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:19;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#fffffff5,#e5eef7e6 58%,#dae6f1f0);pointer-events:none}.canvas-3d-loading__card{display:grid;justify-items:center;gap:8px;min-width:min(320px,calc(100% - 44px));padding:22px 24px;border:1px solid rgba(31,122,77,.14);border-radius:24px;background:#ffffffe6;box-shadow:0 24px 60px #0f172a24;color:#102117;text-align:center}.canvas-3d-loading__card strong{font-size:1rem}.canvas-3d-loading__card small{color:#64748b;font-weight:700}.canvas-3d-loading__mark{width:38px;height:38px;border:4px solid rgba(31,122,77,.14);border-top-color:#df1f18;border-radius:999px;animation:modularis-spin .85s linear infinite}@keyframes modularis-spin{to{transform:rotate(360deg)}}.canvas-3d-context-menu{position:absolute;z-index:24;display:grid;gap:6px;min-width:220px;padding:8px;border:1px solid #e5e7eb;border-radius:16px;background:#fffffffa;box-shadow:0 18px 40px #0f172a29;transform:translate(10px,10px)}.canvas-3d-context-menu button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid transparent;border-radius:12px;background:#fff;color:#4b5563;font-weight:600;cursor:pointer}.canvas-3d-context-menu button:hover{background:#f8fafc}.canvas-3d-context-menu button.is-active{border-color:#55b45f3d;background:#eefaf0;color:#4da558}.canvas-3d-context-menu button:disabled{opacity:.48;cursor:not-allowed}.canvas-3d-context-menu__hint{margin:0;padding:4px 6px 0;color:#6b7280;font-size:.78rem;line-height:1.4}.canvas-3d-gesture-hint{position:absolute;bottom:18px;right:18px;z-index:6;display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:10px 12px;border:1px solid rgba(34,154,84,.22);border-radius:18px;background:#ffffffeb;box-shadow:0 16px 32px #0f172a1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none}.canvas-3d-gesture-hint__icon{width:42px;height:42px;flex:0 0 auto}.canvas-3d-gesture-hint__copy{display:grid;gap:2px}.canvas-3d-gesture-hint__copy strong{font-size:.8rem;color:#df1f18}.canvas-3d-gesture-hint__copy span{font-size:.74rem;line-height:1.35;color:#4b5563}.canvas-3d-ar-overlay{position:absolute;left:50%;bottom:20px;transform:translate(-50%);z-index:7;display:grid;gap:6px;width:min(92vw,460px);padding:16px 18px;border:1px solid rgba(34,154,84,.18);border-radius:22px;background:#fffffff0;box-shadow:0 24px 48px #0f172a29;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:none;text-align:center}.canvas-3d-ar-overlay strong{font-size:1rem;line-height:1.2;color:#df1f18}.canvas-3d-ar-overlay span{font-size:.82rem;line-height:1.45;color:#5b6674}.planner-topbar__quick-actions,.planner-topbar__menu-anchor{position:relative;z-index:4}.canvas-shared-wall-zone{position:absolute;z-index:4;border:0;padding:0;background:transparent;box-shadow:none;cursor:pointer}.canvas-shared-wall-zone:before,.canvas-shared-wall-zone:after{content:"";position:absolute;pointer-events:none}.canvas-shared-wall-zone:before{top:0;right:0;bottom:0;left:0;opacity:0;border-radius:999px;background:#3b82f614;transition:opacity .12s ease}.canvas-shared-wall-zone:after{opacity:0}.canvas-shared-wall-zone--horizontal:after{left:10px;right:10px;top:50%;height:2px;transform:translateY(-50%)}.canvas-shared-wall-zone--vertical:after{top:10px;bottom:10px;left:50%;width:2px;transform:translate(-50%)}.canvas-shared-wall-zone.is-hidden:after{opacity:1}.canvas-shared-wall-zone--horizontal.is-hidden:after{background:repeating-linear-gradient(90deg,rgba(100,116,139,.88) 0 10px,transparent 10px 16px)}.canvas-shared-wall-zone--vertical.is-hidden:after{background:repeating-linear-gradient(180deg,rgba(100,116,139,.88) 0 10px,transparent 10px 16px)}.canvas-shared-wall-zone:hover{background:transparent;box-shadow:none}.canvas-shared-wall-zone:hover:before{opacity:1}.canvas-shared-wall-zone.is-hidden:hover:after{opacity:1}.canvas-3d-fallback{position:absolute;inset:22px auto auto 22px;z-index:22;max-width:360px;display:grid;gap:10px;padding:18px;border:1px solid #e5e7eb;border-radius:18px;background:#fffffff5;box-shadow:0 18px 38px #0f172a1f}.canvas-3d-fallback p{margin:0;color:#6b7280;font-size:.88rem}.canvas-3d-fallback button{justify-self:flex-start;min-height:36px;padding:0 14px;border:0;border-radius:999px;background:#4da558;color:#fff;font-weight:700}.global-feedback-center{position:fixed;top:calc(env(safe-area-inset-top,0px) + 72px);left:50%;z-index:9999;display:grid;gap:10px;width:min(700px,calc(100vw - 32px));transform:translate(-50%);pointer-events:none}.global-feedback{--feedback-accent: #df1f18;--feedback-surface: rgba(255, 255, 255, .96);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:flex-start;padding:14px 14px 14px 16px;border:1px solid color-mix(in srgb,var(--feedback-accent) 24%,rgba(15,23,42,.1));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--feedback-accent) 10%,transparent),transparent 42%),var(--feedback-surface);box-shadow:0 22px 55px #0f172a2e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;animation:globalFeedbackEnter .24s ease-out}.global-feedback--success{--feedback-accent: #df1f18}.global-feedback--error{--feedback-accent: #dc2626}.global-feedback--warning{--feedback-accent: #d97706}.global-feedback--info{--feedback-accent: #2563eb}.global-feedback--hint{--feedback-accent: #0891b2}.global-feedback--next_step{--feedback-accent: #0f766e}.global-feedback__icon{display:grid;place-items:center;width:36px;height:36px;border-radius:14px;background:color-mix(in srgb,var(--feedback-accent) 13%,#ffffff);color:var(--feedback-accent)}.global-feedback__icon svg{width:24px;height:24px}.global-feedback__icon circle,.global-feedback__icon path{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.global-feedback__body{display:grid;gap:5px;min-width:0}.global-feedback__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.global-feedback__head strong{color:#0f172a;font-size:.94rem;line-height:1.2}.global-feedback__head span{flex-shrink:0;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--feedback-accent) 10%,#ffffff);color:color-mix(in srgb,var(--feedback-accent) 78%,#0f172a);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.global-feedback__body p{margin:0;color:#1f2937;font-size:.88rem;font-weight:650;line-height:1.35}.global-feedback__body small{color:#64748b;font-size:.78rem;line-height:1.4}.global-feedback__action{justify-self:flex-start;margin-top:3px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--feedback-accent) 28%,transparent);border-radius:999px;background:color-mix(in srgb,var(--feedback-accent) 8%,#ffffff);color:color-mix(in srgb,var(--feedback-accent) 82%,#0f172a);font-size:.76rem;font-weight:800;text-decoration:none;cursor:pointer}.global-feedback__close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid rgba(100,116,139,.18);border-radius:999px;background:#ffffffb3;color:#64748b;font-size:1.15rem;line-height:1;cursor:pointer}.global-feedback__close:hover{border-color:#0f172a2e;color:#0f172a}@keyframes globalFeedbackEnter{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:720px){.global-feedback-center{top:calc(env(safe-area-inset-top,0px) + 58px);width:calc(100vw - 18px)}.global-feedback{grid-template-columns:minmax(0,1fr) auto;padding:13px;border-radius:18px}.global-feedback__icon{display:none}.global-feedback__head{align-items:flex-start;flex-direction:column;gap:5px}}@media(max-width:1320px){.planner-inspector-surface{width:312px}}@media(max-width:1160px){.planner-inspector-surface{right:18px;width:296px}.planner-floating-panel{bottom:88px;width:296px}.planner-product-card__meta{flex-direction:column;align-items:flex-start}}@media(max-width:980px){.planner-layers-panel{bottom:88px}.planner-topbar__inner--immersive{grid-template-columns:1fr;gap:8px;padding-top:8px;padding-bottom:8px}.planner-topbar__right{justify-content:space-between;flex-wrap:wrap}.planner-topbar__left,.planner-topbar__project-meta{flex-wrap:wrap}.planner-topbar__popover{right:auto;left:0}.planner-topbar__camera-launcher{min-width:0}.planner-camera-hub__summary{grid-template-columns:1fr}.planner-inspector-surface{width:min(320px,calc(100vw - 92px));bottom:88px;max-height:none}.status-bar--planner{gap:14px}.status-bar__aside{gap:8px}.offer-drawer{left:18px;width:auto}.offer-drawer__summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.planner-layers-panel,.planner-floating-panel{left:70px;right:14px;bottom:82px;width:auto}.planner-inspector-surface,.canvas-3d-hint{display:none}.planner-shell--tour-active .planner-inspector-surface{display:block}.planner-status--floating{left:14px;right:14px;bottom:14px}.planner-topbar__camera-launcher{width:32px;height:32px}.planner-topbar__inner--immersive{gap:10px;padding:10px 12px 12px}.planner-topbar__center,.planner-topbar__right{justify-content:flex-start}.planner-topbar__quick-actions{width:100%}.planner-tour__card{gap:12px;padding:16px}.planner-tour__eyebrow,.planner-tour__actions{flex-direction:column;align-items:flex-start}.planner-tour__actions-main{width:100%;margin-left:0}.planner-tour__button{flex:1 1 auto}.planner-topbar__inner--readonly .planner-topbar__left{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"brand title" "level level";align-items:center;gap:8px 10px}.planner-topbar__inner--readonly .planner-topbar__brandmark{grid-area:brand}.planner-topbar__project-meta{width:100%}.planner-topbar__inner--readonly .planner-topbar__title-group{grid-area:title;align-self:center}.planner-topbar__inner--readonly .planner-topbar__crumb:not(.planner-topbar__crumb--current){display:none}.planner-topbar__inner--readonly .planner-topbar__crumb--current,.planner-topbar__inner--readonly .planner-topbar__crumb--level{grid-area:level;width:100%;min-width:0}.planner-topbar__inner--readonly .planner-topbar__crumb--current{padding:0 10px}.planner-topbar__inner--readonly .brand-logo--planner .brand-logo__label{display:inline-flex;font-size:clamp(1rem,5.2vw,1.26rem);letter-spacing:.06em}.planner-topbar__inner--readonly .brand-logo--planner .brand-logo__icon{width:36px;height:36px}.planner-topbar__inner--readonly .planner-pill-action,.planner-topbar__inner--readonly .planner-pill-action--secondary{padding:0 12px;font-size:.92rem}.planner-topbar__popover--camera-hub,.planner-topbar__popover--export{width:min(360px,calc(100vw - 28px))}.status-bar__metric,.status-bar__context{min-height:34px;padding:0 8px}.status-bar__action{width:32px;min-width:32px;min-height:32px}.status-bar__alert{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;min-height:50px;padding:8px;border-radius:14px}.status-bar__alert-icon{width:22px;height:22px}.status-bar__alert-copy strong{font-size:.78rem}.status-bar__alert-copy span,.status-bar__alert-copy small{font-size:.7rem}.status-bar__alert-close{width:30px;height:30px}.planner-toast,.planner-share-chip{left:14px;max-width:calc(100% - 96px)}.planner-share-chip{top:78px}.offer-drawer{top:12px;right:12px;bottom:12px;left:12px;grid-template-rows:auto auto auto minmax(0,1fr);padding:14px}.viewer-ar-drawer{top:12px;right:12px;bottom:12px;left:12px;width:auto;padding:14px}.offer-drawer__actions>*{flex-basis:100%}.offer-drawer__summary-grid{grid-template-columns:1fr}.offer-drawer__table-head{display:none}.offer-drawer__table-row{grid-template-columns:1fr;min-width:0}}.asset-preview-page{min-height:100vh;background:#eef3f8;display:grid;grid-template-rows:auto auto 1fr}.asset-preview-page--bare{min-height:100vh;background:linear-gradient(180deg,#f7fafc,#eef3f8);grid-template-rows:1fr}.asset-preview-page--embedded{min-height:100%;height:100%;background:linear-gradient(180deg,#f7fafc,#eef3f8);grid-template-rows:1fr}.asset-preview-page__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:#fffffff5;border-bottom:1px solid var(--border-color)}.asset-preview-page__toolbar p{margin:4px 0 0;color:var(--text-secondary);font-size:14px}.asset-preview-page__actions{display:flex;gap:12px}.asset-preview-page__qa{display:grid;gap:14px;padding:18px 24px;background:#f8fbfdf5;border-bottom:1px solid rgba(19,40,27,.08)}.asset-preview-page__qa-badge{display:inline-flex;align-items:center;justify-self:start;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.asset-preview-page__qa-badge.is-exact{background:#145c381f;color:#145c38}.asset-preview-page__qa-badge.is-acceptable{background:#d27a1324;color:#975a16}.asset-preview-page__qa-badge.is-invalid{background:#aa23231f;color:#991b1b}.asset-preview-page__qa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.asset-preview-page__qa-grid article{padding:14px 16px;border-radius:18px;background:#ffffffeb;border:1px solid rgba(19,40,27,.08)}.asset-preview-page__qa-grid strong{display:block;margin-bottom:6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#587065}.asset-preview-page__qa-grid p{margin:0;color:#13281b;font-size:14px;line-height:1.45}.asset-preview-page__viewport{min-height:0;position:relative;overflow:hidden}.asset-preview-page--bare .asset-preview-page__viewport{min-height:100vh}.asset-preview-page--embedded .asset-preview-page__viewport{min-height:100%;height:100%}.asset-preview-page__error{position:fixed;right:24px;bottom:24px;max-width:420px;padding:14px 16px;border-radius:18px;background:#7f1d1de6;color:#fff;box-shadow:0 14px 40px #1118273d}.asset-preview-page__fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#f7fafc,#e9eff4)}.asset-preview-page__fallback img{max-width:100%;max-height:100%;object-fit:contain;border-radius:18px;box-shadow:0 16px 40px #0f172a24}.symbol-pack-page{min-height:100vh;padding:28px;background:#eef3f8;color:#13281b}.symbol-pack-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.symbol-pack-page__eyebrow{margin:0 0 8px;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#587065}.symbol-pack-page__header h1{margin:0;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05}.symbol-pack-page__header p{max-width:760px;margin:12px 0 0;color:#526175;line-height:1.6}.symbol-pack-page__actions{display:flex;flex-wrap:wrap;gap:12px}.symbol-pack-page__pipeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:26px}.symbol-pack-page__pipeline-card{padding:16px 18px;border-radius:20px;border:1px solid rgba(19,40,27,.08);background:#ffffffeb;box-shadow:0 20px 44px #0f172a14}.symbol-pack-page__pipeline-card strong{display:block;margin-bottom:8px;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;color:#587065}.symbol-pack-page__pipeline-card p{margin:0;color:#415266;line-height:1.55}.symbol-pack-page__category{display:grid;gap:16px;margin-top:26px}.symbol-pack-page__category-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.symbol-pack-page__badge{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:var(--symbol-badge-surface);color:var(--symbol-badge-stroke);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.symbol-pack-page__category-header h2{margin:10px 0 0;font-size:1.6rem}.symbol-pack-page__category-header p{margin:8px 0 0;max-width:760px;color:#526175;line-height:1.55}.symbol-pack-page__source-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.symbol-pack-page__source-list a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;background:#ffffffeb;border:1px solid rgba(19,40,27,.08);color:#145c38;font-weight:700;text-decoration:none}.symbol-pack-page__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.symbol-pack-card{display:grid;gap:12px;padding:16px;border-radius:22px;border:1px solid rgba(19,40,27,.08);background:#fffffff2;box-shadow:0 18px 40px #0f172a14}.symbol-pack-card__template{display:inline-flex;align-items:center;justify-self:start;min-height:24px;padding:0 8px;border-radius:999px;background:#13281b0f;color:#587065;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.symbol-pack-card__preview{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;padding:18px;border-radius:18px;background:var(--symbol-card-surface);color:var(--symbol-card-stroke)}.symbol-pack-card__preview .commercial-object-svg{width:100%;height:100%}.symbol-pack-card strong{font-size:1rem;line-height:1.25}.symbol-pack-card p{margin:0;color:#526175;font-size:.92rem}@media(max-width:960px){.symbol-pack-page{padding:18px}.symbol-pack-page__header,.symbol-pack-page__category-header{display:grid;grid-template-columns:1fr}.symbol-pack-page__pipeline{grid-template-columns:1fr}.symbol-pack-page__source-list{justify-content:flex-start}.asset-preview-page__qa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.symbol-pack-page{padding:14px}.asset-preview-page__toolbar,.asset-preview-page__qa{padding:16px}.asset-preview-page__qa-grid{grid-template-columns:1fr}}.preset-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px;align-items:stretch}.preset-card{display:grid;grid-template-rows:var(--template-card-media-height, 238px) 1fr;height:100%;min-width:0;overflow:hidden;border:1px solid rgba(15,61,37,.1);border-radius:22px;background:#ffffffe0;box-shadow:0 14px 34px #0c1d140d}.preset-card__media{display:grid;width:100%;height:var(--template-card-media-height, 238px);min-height:var(--template-card-media-height, 238px);place-items:center;background:#edf4ef;color:#60786b;font-weight:700;text-decoration:none}.preset-card__media img,.preset-detail-hero__media img,.preset-gallery img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.preset-card__content{display:grid;gap:12px;grid-template-rows:auto auto minmax(3.2em,1fr) auto auto;align-content:start;padding:18px}.preset-card__content h3{margin:0;color:#102419;font-size:1rem;line-height:1.25;min-height:2.5em;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.preset-card__content p{min-height:3.2em;margin:0;color:#5d6f66;font-size:.92rem;line-height:1.55;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.preset-card__facts{display:flex;flex-wrap:wrap;gap:8px}.preset-card__facts span{display:inline-flex;min-height:28px;align-items:center;border:1px solid rgba(15,61,37,.1);border-radius:999px;padding:4px 10px;background:#f7faf8;color:#365443;font-size:.82rem;font-weight:700}.preset-save-modal__checkbox{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px}.preset-save-modal__checkbox{align-items:center;color:#243d2f;font-weight:700}.preset-save-modal__checkbox input{width:18px;height:18px;margin-right:8px;accent-color:#df1f18}.preset-catalog-context{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline;border-top:1px solid rgba(15,61,37,.08);border-bottom:1px solid rgba(15,61,37,.08);padding:14px 0;color:#5d6f66}.preset-catalog-context strong{color:#102419}.preset-detail-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(22px,4vw,42px);align-items:center}.preset-detail-hero__media{display:grid;min-height:360px;aspect-ratio:4 / 3;place-items:center;overflow:hidden;border-radius:28px;background:#edf4ef;color:#60786b;font-weight:800}.preset-detail-hero__content{display:grid;gap:18px}.preset-detail-hero__content h1{margin:0;color:#102419;font-size:clamp(2.2rem,5vw,4.6rem);line-height:.98}.preset-detail-hero__content p{margin:0;color:#53695e;font-size:1.04rem;line-height:1.7}.preset-detail-actions{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:end}.preset-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.preset-detail-meta article{display:grid;gap:8px;border:1px solid rgba(15,61,37,.09);border-radius:20px;padding:18px;background:#ffffffd1;color:#52685d}.preset-detail-meta strong{color:#102419}.preset-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.preset-gallery img{aspect-ratio:16 / 10;overflow:hidden;border-radius:18px}.preset-save-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;background:#08160f6b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.preset-save-modal__panel{width:min(720px,100%);max-height:min(760px,calc(100svh - 48px));overflow:auto;border:1px solid rgba(255,255,255,.36);border-radius:24px;background:#fbfdfb;padding:22px;box-shadow:0 28px 90px #060f0a47}.preset-save-modal__panel--compact{width:min(560px,100%)}.planner-export-modal{z-index:92}.planner-export-modal__panel{width:min(980px,100%);max-height:min(860px,calc(100svh - 48px));display:flex;flex-direction:column;overflow:hidden;padding:0}.planner-export-modal__panel>.preset-save-modal__header{flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;margin:0;padding:24px 24px 14px}.planner-export-modal__panel>.preset-save-modal__header>div{min-width:0}.planner-export-modal__panel>.preset-save-modal__header h2{overflow-wrap:anywhere;line-height:1.08}.planner-export-modal__panel>.preset-save-modal__actions{flex:0 0 auto;margin:0;padding:16px 24px 22px;border-top:1px solid #dbe7dd;background:linear-gradient(180deg,#fbfdfbeb,#fbfdfb)}.planner-export-modal__body{min-height:0;overflow:auto;padding:0 24px 18px;display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,1fr);gap:16px;align-items:stretch;scrollbar-gutter:stable}.planner-export-modal__body--modularis{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr)}.planner-export-modal__summary,.planner-export-modal__archive-preview{border:1px solid #dbe7dd;border-radius:20px;background:#fff;padding:18px}.planner-export-modal__summary{display:grid;gap:12px;align-content:start}.planner-export-modal__summary strong{color:#102419;font-size:1rem;overflow-wrap:anywhere}.planner-export-modal__summary p,.planner-export-modal__archive-preview p{margin:0;color:#53695e;line-height:1.55}.planner-export-modal__details{display:flex;flex-wrap:wrap;gap:8px}.planner-export-modal__details span{display:inline-flex;min-height:28px;align-items:center;padding:0 10px;border-radius:999px;background:#fde8e7;color:#155d3a;font-size:.78rem;font-weight:700}.planner-export-modal__pdf{display:block;width:100%;height:min(62svh,620px);min-height:420px;border:1px solid #dbe7dd;border-radius:20px;background:#f8fafc}.planner-export-modal__archive-preview{display:grid;place-items:center;align-content:center;min-height:280px;text-align:center}.planner-export-modal__archive-icon{width:54px;height:54px;margin-bottom:12px;color:#df1f18}.preset-save-modal__header{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.preset-save-modal__header h2,.preset-save-modal__header p{margin:0}.preset-save-modal__header h2{color:#102419;font-size:1.6rem}.preset-save-modal__header p{margin-top:6px;color:#53695e}.preset-save-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.preset-save-modal__grid--single{grid-template-columns:1fr}.preset-save-modal__grid>.ui-validation-summary{grid-column:1 / -1}.preset-save-modal__grid .ui-field:first-child,.preset-save-modal__grid .ui-field:nth-child(3){grid-column:1 / -1}.preset-save-modal__callout{margin-top:16px}.preset-save-modal__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}@media(max-width:960px){.preset-detail-hero,.preset-detail-meta,.preset-detail-actions{grid-template-columns:1fr}}@media(max-width:640px){.ui-guidance{grid-template-columns:auto minmax(0,1fr)}.ui-guidance__dismiss{grid-column:2;justify-self:end}.planner-guidance-stack{left:12px;right:12px;width:auto}.preset-card-grid,.preset-save-modal__grid{grid-template-columns:1fr}.preset-card{--template-card-media-height: 210px}.preset-save-modal{padding:12px}.preset-save-modal__panel{max-height:calc(100svh - 24px);border-radius:18px;padding:18px}.planner-export-modal__body,.planner-export-modal__body--modularis{grid-template-columns:1fr}.planner-export-modal__pdf{min-height:52svh}.preset-detail-hero__media{min-height:240px}}.public-site-shell{min-height:100vh;background:radial-gradient(circle at top left,rgba(20,92,56,.08),transparent 28%),linear-gradient(180deg,#fbfcfa,#f2f6f1);color:#13281b}.public-site-header{position:sticky;top:0;z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbfcfae6;border-bottom:1px solid rgba(19,40,27,.08)}.public-site-header__inner,.public-site-footer__inner{width:min(1600px,calc(100% - 40px));margin:0 auto}.public-site-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:86px}.public-site-brand{text-decoration:none}.public-site-nav{display:flex;align-items:center;gap:10px}.public-site-nav__item{position:relative}.public-site-nav__item--mega{position:static}.public-site-nav__item>a,.public-site-login,.public-site-footer__links a,.site-solution-tile a{text-decoration:none}.public-site-nav__item>a{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border-radius:14px;color:#203428;font-weight:600}.public-site-nav__item.is-active>a,.public-site-nav__item>a:hover,.public-site-login:hover{background:#145c3814;color:#145c38}.public-site-actions{display:flex;align-items:center;gap:14px}.public-site-login{color:#4d5f56;font-weight:600;padding:10px 14px;border-radius:12px}.public-megamenu,.public-submenu{position:absolute;top:calc(100% + 12px);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;pointer-events:none}.public-site-nav__item:hover .public-submenu,.public-site-nav__item:focus-within .public-submenu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.public-site-nav__item:hover .public-megamenu,.public-site-nav__item:focus-within .public-megamenu{opacity:1;visibility:visible;transform:translate(-50%);pointer-events:auto}.public-megamenu{left:50%;transform:translate(-50%,10px);width:min(1240px,calc(100% - 24px),calc(100vw - 40px));max-height:min(calc(100svh - var(--header-height) - 24px),780px);overflow:auto;overscroll-behavior:contain;padding:28px;border:1px solid rgba(20,92,56,.12);border-radius:26px;background:#fffffffa;box-shadow:0 28px 80px #0e28182e;display:grid;grid-template-columns:320px 1fr;gap:28px}.public-megamenu__intro h3,.site-section-heading h2,.site-page-hero h1,.site-hero__copy h1,.site-showcase-panel__copy h2,.site-solution-section__copy h2,.site-final-cta h2{margin:0;line-height:1.03;letter-spacing:-.04em}.public-megamenu__intro h3{font-size:34px;margin-top:16px}.public-megamenu__intro p,.site-section-heading p,.site-page-hero p,.site-hero__copy p,.site-showcase-panel__copy p,.site-solution-section__stack p,.site-pricing-card__body p,.site-pricing-card__body small,.site-final-cta p{color:#5f6f65;line-height:1.7}.public-megamenu__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}@media(max-width:1440px){.public-megamenu{width:min(1120px,calc(100% - 24px),calc(100vw - 32px));grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:22px;padding:24px}.public-megamenu__intro h3{font-size:30px}.public-megamenu__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.public-megamenu-card{display:grid;gap:12px;padding:14px;border-radius:22px;background:#f8fbf7;border:1px solid rgba(20,92,56,.08);color:inherit}.public-megamenu-card img,.site-solution-tile img,.site-showcase-panel img,.site-solution-section__media img,.site-device img{width:100%;display:block;object-fit:cover;border-radius:18px}.public-megamenu-card span,.public-submenu__item strong,.site-solution-tile span,.site-pricing-card__code,.site-solution-section__stack strong,.site-enterprise-grid strong,.site-value-band__grid strong{color:#145c38}.public-megamenu-card strong,.public-submenu__item strong,.site-solution-tile h3,.site-pricing-card h3,.site-solution-section__copy h2,.site-enterprise-grid strong,.site-value-band__grid strong{display:block;font-size:17px;margin:6px 0 8px}.public-megamenu-card p,.public-submenu__item span,.site-solution-tile p{margin:0;color:#617067;line-height:1.6}.public-submenu{right:0;width:360px;padding:14px;border-radius:22px;background:#fffffffa;border:1px solid rgba(20,92,56,.1);box-shadow:0 24px 60px #0e281824}.public-submenu__item{display:block;padding:14px 16px;border-radius:16px;color:inherit}.public-submenu__item:hover{background:#f4faf5}.public-site-main{width:100%;padding:18px 0 88px}.site-page{display:grid;gap:44px}.site-page--content{gap:56px}.site-hero{width:min(1660px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:1fr;gap:24px;padding:56px 0 48px;min-height:auto;border-bottom:1px solid rgba(20,92,56,.08)}.site-hero__copy{display:flex;flex-direction:column;justify-content:flex-start;gap:18px;max-width:980px}.site-hero__copy h1{margin:0;font-size:clamp(56px,6vw,86px);max-width:14ch;line-height:.98;text-wrap:balance}.site-hero__copy p{margin:0;font-size:18px;max-width:820px;line-height:1.7}.site-hero__actions,.site-inline-actions,.site-final-cta__actions,.site-pricing-card__actions{display:flex;flex-wrap:wrap;gap:14px}.site-proof-strip{display:flex;flex-wrap:wrap;gap:12px}.site-proof-strip span{padding:12px 16px;border-radius:999px;background:#145c3814;color:#145c38;font-weight:600}.site-hero__visual{display:block}.site-hero-shot{width:100%;border-radius:32px;background:linear-gradient(180deg,#f7faf7,#fde8e7);border:1px solid rgba(20,92,56,.08);overflow:hidden;box-shadow:0 22px 70px #122d1c24}.site-hero-shot img{display:block;width:100%;height:auto}.site-section-heading{display:grid;gap:14px}.site-section-heading h2,.site-page-hero h1,.site-showcase-panel__copy h2,.site-solution-section__copy h2,.site-final-cta h2{font-size:clamp(34px,4vw,58px)}.site-value-band,.site-pricing,.site-final-cta,.site-page-hero{width:min(1520px,calc(100% - 56px));margin:0 auto;padding:18px 0}.site-value-band__grid,.site-enterprise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:26px}.site-value-band__grid article,.site-enterprise-grid article{padding:18px 0 0;border-top:2px solid rgba(20,92,56,.16)}.site-solutions-preview__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.site-commercial-grid{width:min(1520px,calc(100% - 56px));margin:0 auto;display:grid;grid-template-columns:.95fr 1.05fr .95fr;gap:24px;align-items:start}.site-commercial-grid__stack,.site-capability-list{display:grid;gap:16px}.site-commercial-highlight,.site-capability-list article{padding:18px 0;border-top:1px solid rgba(20,92,56,.12)}.site-commercial-highlight strong,.site-capability-list p{display:block;margin:0}.site-commercial-highlight p,.site-capability-list p{color:#5f6f65;line-height:1.7}.site-capability-list article{display:grid;grid-template-columns:16px 1fr;gap:14px;align-items:start}.site-capability-list span{width:8px;height:8px;margin-top:8px;border-radius:999px;background:#145c38}.site-solutions-preview,.site-showcase-band,.site-solution-sections,.site-enterprise-grid,.site-inline-actions{width:min(1520px,calc(100% - 56px));margin-left:auto;margin-right:auto}.site-solution-tile{display:grid;gap:14px;padding:16px;border-radius:24px;background:#ffffffd1;border:1px solid rgba(20,92,56,.08)}.site-solution-tile a{color:#145c38;font-weight:700}.site-showcase-band,.site-solution-sections{display:grid;gap:28px}.site-showcase-panel,.site-solution-section{width:min(1520px,calc(100% - 56px));margin:0 auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:28px;padding:24px 0;border-top:1px solid rgba(20,92,56,.08)}.site-showcase-panel--reversed,.site-solution-section.is-reversed{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.site-showcase-panel--reversed .site-showcase-panel__copy,.site-solution-section.is-reversed .site-solution-section__copy{order:2}.site-showcase-panel--reversed img,.site-solution-section.is-reversed .site-solution-section__media{order:1}.site-showcase-panel__copy,.site-solution-section__copy{display:grid;align-content:center;gap:18px}.site-solution-section__stack{display:grid;gap:14px}.site-pricing__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}.site-pricing-card{display:grid;gap:20px;padding:24px;border-radius:28px;border:1px solid rgba(20,92,56,.1);background:linear-gradient(180deg,#fff,#f6faf6)}.site-pricing-card.is-highlighted{background:linear-gradient(180deg,#145c38,#0e4128);color:#f2f7f3;border-color:#145c383d}.site-pricing-card.is-highlighted .site-pricing-card__code,.site-pricing-card.is-highlighted h3,.site-pricing-card.is-highlighted p,.site-pricing-card.is-highlighted small,.site-pricing-card.is-highlighted .site-pricing-card__price strong,.site-pricing-card.is-highlighted .site-pricing-card__price span,.site-pricing-card.is-highlighted .site-pricing-card__limits span,.site-pricing-card.is-highlighted .site-pricing-card__limits strong{color:inherit}.site-pricing-card__code{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.site-pricing-card__price{display:grid;gap:3px;padding:14px 16px;border-radius:18px;background:#145c380f}.site-pricing-card__price strong{color:#102419;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1}.site-pricing-card__price span{color:#5f6f65;font-size:.84rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.site-pricing-card__limits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.site-pricing-card__limits div{padding:14px;border-radius:18px;background:#145c380d}.site-pricing-card__limits strong{display:block;font-size:28px;line-height:1}.site-pricing-card__limits span{color:#5f6f65}.site-pricing-card__limits-note{grid-column:1 / -1;margin:0;color:#5f6f65;font-weight:700;line-height:1.35}.site-pricing-card__limits--custom{grid-template-columns:minmax(0,1fr)}.site-pricing-card__limits--custom p{margin:0;padding:18px;border-radius:18px;background:#ffffff1f;color:inherit;font-size:1.08rem;font-weight:800;line-height:1.3}.site-final-cta{width:min(1520px,calc(100% - 56px));margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;padding-top:26px;border-top:1px solid rgba(20,92,56,.08)}.site-final-cta__media{display:grid;gap:18px}.site-final-cta__media img{display:block;width:100%}.site-final-cta__media img{aspect-ratio:16 / 9;object-fit:cover;border-radius:28px;border:1px solid rgba(20,92,56,.1);box-shadow:0 18px 56px #122d1c1f}.site-final-cta__media .site-final-cta__actions{justify-content:flex-end}.public-site-footer{padding:24px 0 48px}.public-site-disclaimer{width:min(1520px,calc(100% - 56px));margin:0 auto;padding:16px 0 0}.public-site-disclaimer__inner{display:grid;gap:10px;padding:20px 0 0;border-top:1px solid rgba(19,40,27,.08)}.public-site-disclaimer__inner strong,.site-legal-disclaimer strong,.site-legal-meta strong{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#145c38}.public-site-disclaimer__inner p,.site-legal-disclaimer p,.site-legal-meta span,.site-legal-section__body p,.site-legal-section__body li{margin:0;color:#5f6f65;line-height:1.75}.public-site-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:22px;border-top:1px solid rgba(19,40,27,.08)}.public-site-footer__brand{max-width:580px}.public-site-footer__brand p,.public-site-footer__brand small,.public-site-footer__links a{color:#5f6f65}.public-site-footer__brand{display:grid;gap:10px}.public-site-footer__brand small a{color:#145c38}.public-site-footer__links{display:flex;flex-wrap:wrap;gap:18px}.site-page-hero--contact{display:grid;gap:28px;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:stretch}.contact-hero__copy,.contact-hero__panel,.contact-detail-card,.contact-note{border-radius:28px;border:1px solid rgba(20,92,56,.08);background:linear-gradient(180deg,#fffffffa,#f5faf7f0);box-shadow:0 22px 60px #122d1c14}.contact-hero__copy{display:grid;gap:18px;padding:34px}.contact-hero__actions{display:flex;flex-wrap:wrap;gap:14px}.contact-hero__panel{position:relative;display:grid;gap:14px;padding:34px;overflow:hidden}.contact-hero__accent{position:absolute;inset:0 auto auto 0;width:100%;height:6px}.contact-hero__panel strong{margin-top:10px;font-size:1.5rem;color:#133921}.contact-hero__panel p,.contact-note p,.contact-note li,.contact-detail-card span{color:#607066;line-height:1.7}.contact-grid{width:min(1520px,calc(100% - 56px));margin:0 auto;display:grid;gap:26px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}.contact-form-section{width:min(1520px,calc(100% - 56px));margin:0 auto;display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:24px;align-items:start;border-radius:30px;border:1px solid rgba(20,92,56,.1);background:linear-gradient(135deg,#f5faf7fa,#fffffffa);box-shadow:0 26px 70px #122d1c14;padding:28px}.contact-form-section__copy{display:grid;gap:12px;padding:8px 10px}.contact-form-section__copy h2{margin:0;color:#102116;font-size:clamp(2rem,3vw,3.4rem);line-height:.98}.contact-form-section__copy p{max-width:48ch;color:#607066;line-height:1.7}.contact-form{display:grid;gap:16px;border-radius:24px;border:1px solid rgba(20,92,56,.1);background:#fff;padding:22px}.contact-form__grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form__honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-form__privacy{display:flex;align-items:flex-start;gap:10px;color:#50645a;line-height:1.55}.contact-form__privacy input{margin-top:5px;accent-color:#df1f18}.contact-form__privacy a{color:#145c38;font-weight:700}.contact-form__alert{border-radius:14px;padding:13px 15px;font-weight:700;line-height:1.45}.contact-form__alert--success{border:1px solid rgba(31,122,77,.22);background:#1f7a4d1a;color:#145c38}.contact-form__alert--error{border:1px solid rgba(185,28,28,.2);background:#fef2f2f2;color:#991b1b}.contact-form__footer{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.contact-form__footer span{color:#607066;font-size:.92rem}.contact-grid__main,.contact-grid__aside{display:grid;gap:18px}.contact-detail-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.contact-detail-card{display:grid;gap:10px;padding:24px}.contact-detail-card strong{font-size:1.12rem;color:#12251a;word-break:break-word}.contact-detail-card a{color:#145c38}.contact-note{display:grid;gap:14px;padding:26px}.contact-note--secondary{background:linear-gradient(180deg,#f1f8f4,#fff)}.site-page-hero--legal{display:grid;gap:18px}.site-legal-meta{display:grid;gap:6px;padding-top:8px}.site-legal-disclaimer,.site-legal-document{width:min(1200px,calc(100% - 56px));margin:0 auto}.site-legal-disclaimer{display:grid;gap:12px;padding:24px 0;border-top:1px solid rgba(20,92,56,.08);border-bottom:1px solid rgba(20,92,56,.08)}.site-legal-document{display:grid;gap:28px}.site-legal-section{display:grid;gap:14px;padding-top:24px;border-top:1px solid rgba(20,92,56,.08)}.site-legal-section h2{margin:0;font-size:clamp(24px,2.4vw,34px)}.site-legal-section__body{display:grid;gap:14px}.site-legal-section__body ul{margin:0;padding-left:22px;display:grid;gap:8px}.site-legal-section__body a,.auth-legal a{color:#145c38;font-weight:600}@media(max-width:1180px){.public-site-header__inner{grid-template-columns:1fr;justify-items:start;padding:16px 0}.public-site-nav{flex-wrap:wrap}.public-megamenu,.public-submenu{position:static;width:100%;margin-top:10px;transform:none}.public-megamenu{grid-template-columns:1fr}.public-megamenu__grid,.site-commercial-grid,.site-solutions-preview__grid,.site-pricing__grid,.site-value-band__grid,.site-enterprise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-commercial-grid,.site-hero,.site-showcase-panel,.site-solution-section,.site-final-cta{grid-template-columns:1fr}.site-showcase-panel--reversed .site-showcase-panel__copy,.site-solution-section.is-reversed .site-solution-section__copy,.site-showcase-panel--reversed img,.site-solution-section.is-reversed .site-solution-section__media{order:initial}}@media(max-width:760px){.public-site-header__inner,.public-site-footer__inner{width:min(100% - 24px,1600px)}.public-site-actions,.site-proof-strip,.site-hero__actions,.site-inline-actions,.site-final-cta__actions,.site-pricing-card__actions{flex-direction:column;align-items:stretch}.public-megamenu__grid,.site-commercial-grid,.site-solutions-preview__grid,.site-pricing__grid,.site-value-band__grid,.site-enterprise-grid{grid-template-columns:1fr}.site-hero{width:min(100% - 24px,1660px);padding:26px 0 22px;min-height:auto}.site-hero__copy h1{font-size:46px}.site-page-hero,.site-value-band,.site-pricing,.site-final-cta,.site-showcase-panel,.site-solution-section{width:min(100% - 24px,1520px);padding:18px 0}.site-device-stack{min-height:420px}.site-device--primary,.site-device--secondary,.site-device-note--top,.site-device-note--bottom{position:static;width:auto;margin:18px}.public-site-footer__inner{flex-direction:column;align-items:flex-start}.site-legal-disclaimer,.site-legal-document{width:min(1200px,calc(100% - 32px))}}:root{--site-max-width: 1520px;--site-max-width-wide: 1680px;--site-gutter: clamp(18px, 3vw, 40px);--site-section-space: clamp(48px, 7vw, 92px);--site-block-space: clamp(18px, 2.2vw, 28px);--header-height: 86px;--public-admin-bar-height: 44px;--site-admin-sidebar-width: min(420px, calc(100vw - 24px) );--site-admin-sidebar-gap: 18px}html{scroll-padding-top:calc(var(--header-height) + 18px)}body{overflow-x:clip}body.body--nav-open{overflow:hidden;touch-action:none}#root{overflow-x:clip}img,svg,video,canvas{max-width:100%}.public-site-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto auto;background:radial-gradient(circle at top left,rgba(31,122,77,.08),transparent 22%),linear-gradient(180deg,#fbfcfa,#f2f5f1 58%,#edf2ed);transition:padding-left .18s ease}.public-site-shell--editor-open{padding-left:calc(var(--site-admin-sidebar-width) + var(--site-admin-sidebar-gap))}.public-site-header{position:sticky;top:0;z-index:90;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbfcfae6;border-bottom:1px solid rgba(19,40,27,.08)}.public-site-shell--authenticated .public-site-header{top:var(--public-admin-bar-height)}.public-site-header__inner,.public-site-footer__inner,.public-site-disclaimer__inner,.site-hero,.site-page-hero,.site-value-band,.site-commercial-grid,.site-solutions-preview,.site-showcase-panel,.site-solution-section,.site-pricing,.site-final-cta,.site-enterprise-grid,.site-legal-disclaimer,.site-legal-document{width:min(var(--site-max-width),calc(100% - (var(--site-gutter) * 2)));margin-left:auto;margin-right:auto}.public-site-header__inner{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;min-height:var(--header-height)}.public-site-nav{min-width:0;display:flex;align-items:center;justify-content:center;gap:8px}.public-site-nav__item>a{white-space:nowrap}.public-site-actions{justify-content:flex-end;flex-wrap:wrap}.public-site-menu-toggle,.public-mobile-overlay,.public-mobile-drawer{display:none}@media(max-width:900px){:root{--public-admin-bar-height: 88px}.public-site-shell--editor-open{padding-left:0}}.public-site-menu-toggle{width:48px;height:48px;padding:0;border:1px solid rgba(15,61,37,.12);border-radius:14px;background:#fffffff5;color:#103723;align-items:center;justify-content:center;gap:4px;cursor:pointer}.public-site-menu-toggle span{width:18px;height:2px;border-radius:999px;background:currentColor;display:block}.public-mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;background:#0c16106b;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}.public-mobile-overlay.is-open{opacity:1;visibility:visible}.public-mobile-drawer{position:fixed;top:0;left:0;z-index:100;width:min(400px,88vw);height:100dvh;display:grid;grid-template-rows:auto 1fr auto;gap:18px;padding:20px var(--site-gutter) 22px;background:linear-gradient(180deg,#fbfcfafc,#f3f7f3fa);border-right:1px solid rgba(15,61,37,.08);box-shadow:0 32px 72px #0c16103d;transform:translate(-104%);transition:transform .22s ease;overflow:hidden}.public-mobile-drawer.is-open{transform:translate(0)}.public-mobile-drawer__header,.public-mobile-drawer__footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.public-mobile-drawer__header{padding-bottom:16px;border-bottom:1px solid rgba(15,61,37,.08)}.public-mobile-drawer__close{width:42px;height:42px;padding:0;border:1px solid rgba(15,61,37,.12);border-radius:12px;background:#fff;color:#103723;font-size:28px;line-height:1;cursor:pointer}.public-mobile-drawer__body{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:18px;padding-right:2px}.public-mobile-drawer__section{display:grid;gap:10px}.public-mobile-link,.public-mobile-section-toggle{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;border:1px solid rgba(15,61,37,.1);border-radius:14px;background:#fff;color:#213529;font-weight:600}.public-mobile-link--primary{background:#f5faf6;color:#145c38}.public-mobile-section-toggle{cursor:pointer}.public-mobile-section-toggle:after{content:"+";color:#145c38;font-size:1.2rem;line-height:1}.public-mobile-section-toggle.is-open:after{content:"−"}.public-mobile-card-list,.public-mobile-link-stack{display:grid;gap:10px}.public-mobile-card,.public-mobile-panel-link{display:grid;gap:10px;padding:12px;border:1px solid rgba(15,61,37,.08);border-radius:16px;background:#fffffff0}.public-mobile-card{grid-template-columns:92px minmax(0,1fr);align-items:start}.public-mobile-card img{width:92px;aspect-ratio:1.08;border-radius:12px;object-fit:cover}.public-mobile-card span,.public-mobile-panel-link strong{color:#145c38}.public-mobile-card strong,.public-mobile-panel-link strong{display:block;margin:4px 0 6px;font-size:.98rem}.public-mobile-card p,.public-mobile-panel-link span{margin:0;color:#617067;line-height:1.55}.public-mobile-drawer__footer{display:grid;gap:12px;padding-top:14px;border-top:1px solid rgba(15,61,37,.08)}.public-site-login--mobile{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid rgba(15,61,37,.1);background:#fff}.public-site-main{width:100%;padding:16px 0 clamp(64px,8vw,96px)}.site-page{gap:var(--site-section-space)}.site-page--content{gap:clamp(56px,8vw,104px)}.site-hero,.site-showcase-panel,.site-solution-section,.site-commercial-grid,.site-final-cta{gap:clamp(24px,3vw,40px)}.site-hero{width:min(var(--site-max-width-wide),calc(100% - (var(--site-gutter) * 2)));grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);align-items:center;min-height:auto;padding:clamp(28px,4vw,64px) 0 clamp(24px,4vw,56px)}.site-hero__copy{min-width:0;gap:18px}.site-hero__copy h1{font-size:clamp(2.7rem,6.2vw,5.4rem);max-width:9.5ch;text-wrap:balance}.site-hero__copy p,.site-page-hero p,.site-final-cta p{max-width:64ch;text-wrap:pretty}.site-hero__visual,.site-showcase-panel__copy,.site-solution-section__copy{min-width:0}.site-hero__visual{display:flex;align-items:center;justify-content:flex-end}.site-page-hero,.site-value-band,.site-commercial-grid,.site-solutions-preview,.site-showcase-band,.site-solution-sections,.site-enterprise-grid,.site-pricing,.site-final-cta,.public-site-disclaimer{padding-top:0}.site-value-band__grid,.site-enterprise-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.site-commercial-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr) minmax(0,.92fr)}.site-solutions-preview__grid,.site-pricing__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-pricing__grid.site-pricing__grid--count-1{grid-template-columns:minmax(0,1fr)}.site-pricing__grid.site-pricing__grid--count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.site-solution-tile,.site-pricing-card,.site-commercial-highlight,.site-capability-list article,.site-value-band__grid article,.site-enterprise-grid article{min-width:0}.site-showcase-panel,.site-solution-section{padding:clamp(18px,2vw,28px) 0;align-items:center}.site-showcase-panel img,.site-solution-section__media img{aspect-ratio:1.28}.site-pricing-card__limits{grid-template-columns:repeat(3,minmax(0,1fr))}.site-final-cta{grid-template-columns:minmax(0,1fr) auto;align-items:end}.site-final-cta--media{grid-template-columns:minmax(0,.92fr) minmax(360px,.72fr);align-items:center}.public-site-disclaimer__inner{padding-top:18px}.public-site-footer{padding:24px 0 44px}.public-site-footer__inner{align-items:flex-start}.public-site-footer__links{justify-content:flex-end}.auth-shell{padding:clamp(16px,3vw,28px)}.auth-card--premium,.auth-card--onboarding{width:min(760px,100%)}.auth-card--premium{padding:clamp(22px,3vw,34px)}.auth-card__copy h1{max-width:16ch;text-wrap:balance}.auth-option{min-height:52px}.auth-email-form,.auth-legal{gap:12px}.dashboard-layout{background:linear-gradient(180deg,rgba(7,38,22,.03),transparent 180px),#f5f7f2}.dashboard-header{top:0;z-index:60}.dashboard-header__bar,.dashboard-header__resource-strip{min-width:0}.dashboard-header__nav{min-width:0;overflow:visible;scrollbar-width:none}.dashboard-header__nav::-webkit-scrollbar{display:none}.dashboard-header__nav a{white-space:nowrap}.dashboard-main{display:grid;align-content:start;gap:clamp(18px,2.2vw,24px);padding:clamp(20px,3vw,32px) var(--site-gutter) clamp(28px,4vw,48px)}.dashboard-page,.app-page-shell{gap:clamp(18px,2.2vw,24px)}.dashboard-project-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.resource-album-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.resource-album-panel__toolbar,.document-row,.app-page-shell__header{min-width:0}@media(max-width:1280px){:root{--site-gutter: clamp(18px, 2.4vw, 28px)}.site-hero{min-height:auto}.site-commercial-grid,.site-showcase-panel,.site-solution-section{grid-template-columns:1fr}.site-showcase-panel--reversed .site-showcase-panel__copy,.site-solution-section.is-reversed .site-solution-section__copy,.site-showcase-panel--reversed img,.site-solution-section.is-reversed .site-solution-section__media{order:initial}.site-commercial-grid{align-items:stretch}.site-value-band__grid,.site-enterprise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-header{padding-inline:var(--site-gutter)}.dashboard-header__bar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity actions" "nav nav"}.dashboard-header__resource-strip{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.dashboard-header__subtitle{max-width:36rem}.dashboard-brand .brand-logo__label{font-size:clamp(1.62rem,3vw,2.15rem)}.dashboard-brand__product{min-height:32px;padding-inline:10px;letter-spacing:.18em}.dashboard-user{min-width:min(100%,280px)}}@media(min-width:1480px){.dashboard-header__bar{grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;grid-template-areas:"identity nav actions";align-items:center}.dashboard-header__nav{justify-content:center}}@media(max-width:1100px){.dashboard-header__bar,.dashboard-header__resource-strip{grid-template-columns:1fr}.dashboard-header__bar{grid-template-areas:"identity" "nav" "actions"}.dashboard-header__subtitle{max-width:none}.dashboard-header__actions{justify-content:flex-start}.dashboard-user{min-width:0}}@media(max-width:1040px){.public-site-header__inner{grid-template-columns:auto 1fr auto;gap:16px;min-height:76px}.public-site-nav,.public-site-actions{display:none}.public-site-menu-toggle,.public-mobile-overlay,.public-mobile-drawer{display:block}.public-site-menu-toggle{display:inline-flex;justify-self:end}.site-hero{width:min(var(--site-max-width),calc(100% - (var(--site-gutter) * 2)));padding-top:24px}.site-hero__copy h1{max-width:10.5ch}.site-solutions-preview__grid,.site-pricing__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-usage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.site-hero{grid-template-columns:1fr;align-items:start}.site-hero__visual{justify-content:stretch}.site-hero__copy h1{max-width:none}}@media(max-width:820px){:root{--site-gutter: 18px;--header-height: 74px}.public-site-header__inner,.public-site-footer__inner,.public-site-disclaimer__inner,.site-hero,.site-page-hero,.site-value-band,.site-commercial-grid,.site-solutions-preview,.site-showcase-panel,.site-solution-section,.site-pricing,.site-final-cta,.site-enterprise-grid,.site-builder-blocks,.site-builder-global-drop-hint,.contact-form-section,.contact-grid,.site-legal-disclaimer,.site-legal-document{width:min(100%,calc(100% - (var(--site-gutter) * 2)))}.site-page{gap:clamp(36px,9vw,56px)}.site-page-hero h1,.site-section-heading h2,.site-showcase-panel__copy h2,.site-solution-section__copy h2,.site-final-cta h2{font-size:clamp(2rem,8vw,3rem)}.site-hero__copy h1{font-size:clamp(2.25rem,10vw,3.35rem);line-height:1.04;max-width:none;text-wrap:pretty;overflow-wrap:anywhere;word-break:normal}.site-hero__copy p,.site-page-hero p,.site-final-cta p{font-size:1rem}.site-proof-strip,.site-hero__actions,.site-inline-actions,.site-final-cta__actions,.site-builder-actions,.site-pricing-card__actions{flex-direction:column;align-items:stretch}.site-value-band__grid,.site-enterprise-grid,.site-solutions-preview__grid,.site-pricing__grid,.profile-grid{grid-template-columns:1fr}.site-hero-shot{border-radius:24px}.site-showcase-panel img,.site-solution-section__media img,.site-solution-tile img,.public-megamenu-card img{aspect-ratio:1.35}.site-pricing-card__limits,.site-page-hero--contact,.contact-form-section,.contact-form__grid,.contact-grid,.site-builder-block--split-media,.site-builder-block--cta-panel,.site-builder-proof-grid{grid-template-columns:1fr}.site-builder-block--image-left .site-builder-block__media{order:0}.site-builder-block--hero-banner,.site-builder-block--image-band{min-height:380px;border-radius:22px}.site-builder-block--hero-banner:after,.site-builder-block--image-band:after{background:linear-gradient(0deg,#102419d6,#1024192e)}.site-builder-hero__copy,.site-builder-image-band__copy,.site-builder-block--cta-panel{padding:22px}.contact-form-section{padding:18px}.contact-form{padding:16px}.site-final-cta{grid-template-columns:1fr}.public-site-footer__inner{flex-direction:column;gap:18px}.public-site-footer__links{justify-content:flex-start;gap:14px}.auth-shell{padding:14px}.auth-card--premium{width:100%;gap:14px}.auth-card__copy h1{max-width:12ch;font-size:clamp(2rem,9vw,2.75rem)}.auth-card--email-active .auth-card__copy h1{max-width:100%;font-size:clamp(1.45rem,7vw,1.9rem)}.auth-card--email-active .auth-options{grid-template-columns:1fr}.auth-card__proof{display:grid;gap:8px}.auth-checkbox{grid-template-columns:20px minmax(0,1fr);gap:10px}.dashboard-header{padding:16px var(--site-gutter)}.dashboard-header__subtitle{display:none}.dashboard-brand .brand-logo__icon{width:36px;height:36px}.dashboard-brand .brand-logo__label{font-size:clamp(1.45rem,5.4vw,1.95rem);letter-spacing:.12em}.dashboard-brand__divider{display:none}.dashboard-brand__product{min-height:30px;padding-inline:10px;font-size:.68rem;letter-spacing:.16em}.dashboard-header__nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto}.dashboard-user{width:100%}.dashboard-header__actions{width:100%;flex-direction:column;align-items:stretch}.dashboard-user__meta span{text-transform:none;letter-spacing:0}.dashboard-header__resource-strip{gap:14px;padding:14px}.dashboard-usage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-usage-card{padding:12px;gap:3px}.dashboard-usage-card span,.dashboard-usage-card small{font-size:.74rem;line-height:1.3}.dashboard-usage-card strong{font-size:1rem}.resource-album-panel__toolbar,.document-row,.app-page-shell__header,.dashboard-toolbar,.dashboard-filters{display:grid;gap:12px}.document-row{grid-template-columns:1fr}.document-row__summary{text-align:left}}@media(max-width:430px){.site-hero__copy h1{font-size:clamp(2rem,9.5vw,2.75rem)}}@media(max-width:560px){.brand-logo__label{font-size:clamp(1.25rem,8vw,1.75rem)}.brand-logo--planner .brand-logo__label{display:none}.brand-logo--planner .brand-logo__icon{width:34px;height:34px}.public-site-menu-toggle{width:44px;height:44px}.public-mobile-drawer{width:min(360px,86vw);padding:18px 14px 20px 16px}.public-mobile-card{grid-template-columns:1fr}.site-hero__copy h1{font-size:clamp(2.6rem,12.2vw,3.25rem);max-width:none;line-height:.96}.site-hero-shot{border-radius:20px}.site-proof-strip span,.dashboard-header__nav a,.site-pricing-card__limits div{min-width:0}.dashboard-header{position:static}.dashboard-header__resource-strip{padding:12px}.dashboard-usage-grid{grid-template-columns:1fr;gap:8px}.dashboard-usage-card{padding:10px}.dashboard-usage-card strong{font-size:.92rem}.auth-option{min-height:48px;font-size:.94rem}.auth-mode-switch__item{padding:9px 12px}}.seo-landing-hero__points{display:flex;flex-wrap:wrap;gap:10px}.seo-landing-hero__points span{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:1px solid rgba(31,122,77,.14);border-radius:999px;background:#1f7a4d0d;color:#164e31;font-size:.9rem;font-weight:600}.seo-landing-showcase{align-items:stretch}.seo-landing-article,.seo-faq,.seo-link-grid{width:min(var(--site-max-width),calc(100% - (var(--site-gutter) * 2)));margin-left:auto;margin-right:auto}.seo-landing-article{display:grid;gap:clamp(22px,3vw,32px)}.seo-landing-section{padding:clamp(22px,3vw,30px);border:1px solid rgba(15,61,37,.08);border-radius:26px;background:#ffffffd6;box-shadow:0 16px 38px #0c1d140a}.seo-landing-section h2,.seo-faq__stack h3,.seo-link-card strong{margin:0}.seo-landing-section p,.seo-faq__stack p,.seo-link-card p{margin:0;color:#5d6f66;line-height:1.72}.seo-landing-section>*+*,.seo-faq__stack article>*+*{margin-top:14px}.seo-landing-list{margin:0;padding-left:1.15rem;color:#264534;display:grid;gap:8px}.seo-faq__stack,.seo-link-grid__items{display:grid;gap:18px}.seo-link-grid__heading{max-width:980px}.seo-link-grid__heading h2{max-width:14ch}.seo-link-grid__heading p{max-width:62ch}.seo-faq__stack article,.seo-link-card{padding:clamp(20px,3vw,26px);border:1px solid rgba(15,61,37,.08);border-radius:24px;background:#ffffffd1}.seo-link-grid__items{grid-template-columns:repeat(3,minmax(0,1fr))}.seo-link-card{min-width:0;display:grid;gap:10px;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.seo-link-card:hover{transform:translateY(-2px);border-color:#1f7a4d33;box-shadow:0 12px 30px #0c1d140f}.public-site-footer__links a{width:fit-content}@media(max-width:1040px){.seo-link-grid__items{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.seo-landing-article,.seo-faq,.seo-link-grid{width:min(100%,calc(100% - (var(--site-gutter) * 2)))}}@media(max-width:640px){.seo-link-grid__items{grid-template-columns:1fr}.seo-link-grid__heading h2,.seo-link-grid__heading p{max-width:none}.seo-landing-section,.seo-faq__stack article,.seo-link-card{border-radius:22px}}.plugin-platform-grid{display:grid;grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);gap:16px;align-items:stretch}.plugin-platform-sidebar{display:grid;gap:10px;align-content:start;min-width:0}.plugin-platform-module{width:100%;min-width:0;display:grid;gap:5px;padding:13px 14px;border:1px solid var(--border);border-radius:8px;background:#fbfdfb;color:var(--text-primary);text-align:left;cursor:pointer}.plugin-platform-module strong,.plugin-platform-module span{min-width:0;overflow-wrap:anywhere}.plugin-platform-module span{color:var(--text-secondary);font-size:.82rem}.plugin-platform-module.is-active{border-color:#236f646b;background:#eef7f2;box-shadow:inset 3px 0 #236f64}.plugin-platform-detail{min-width:0;display:grid;gap:14px;align-content:start}.plugin-platform-header{min-width:0;display:flex;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,#fff,#f8fbf9)}.plugin-platform-header>div{min-width:0}.plugin-platform-header span{display:inline-flex;margin-bottom:5px;color:#236f64;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.plugin-platform-header h3{margin:0;color:var(--text-primary);font-size:1.08rem}.plugin-platform-header p{margin:5px 0 0;color:var(--text-secondary);line-height:1.45;overflow-wrap:anywhere}.plugin-platform-header>strong{flex:0 0 auto;align-self:start;padding:7px 10px;border-radius:999px;background:#eef4ef;color:#236f64;font-size:.78rem}.plugin-platform-tabs{display:flex;flex-wrap:wrap;gap:8px}.plugin-platform-tabs button{min-height:36px;padding:8px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-secondary);font-weight:700;cursor:pointer}.plugin-platform-tabs button.is-active{border-color:#236f6473;background:#236f64;color:#fff}.plugin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.plugin-public-notice{position:fixed;z-index:68;right:clamp(14px,3vw,28px);bottom:clamp(14px,3vw,28px);width:min(420px,calc(100vw - 28px));display:grid;gap:6px;padding:14px 16px;border:1px solid rgba(31,44,40,.14);border-radius:8px;background:#fffffffa;box-shadow:0 18px 52px #161f1c29}.plugin-public-notice strong,.plugin-public-notice p{margin:0;overflow-wrap:anywhere}.plugin-public-notice p{color:var(--text-secondary);line-height:1.45}.plugin-runtime-mount,.plugin-runtime-public-mount{min-width:0}.plugin-runtime-mount:empty{min-height:120px}@media(max-width:900px){.plugin-platform-grid,.plugin-settings-grid{grid-template-columns:minmax(0,1fr)}.plugin-platform-header{display:grid}}.planner-mode-toggle button:last-child{min-width:86px}.virtual-tour-ui{position:absolute;top:0;right:0;bottom:0;left:0;z-index:18;overflow:hidden;pointer-events:none;color:#f7f8f7;font-family:inherit}.virtual-tour-ui button{font:inherit}.virtual-tour-ui__identity,.virtual-tour-ui__minimap,.virtual-tour-ui__artworks,.virtual-tour-ui__artwork-card,.virtual-tour-ui__rooms,.virtual-tour-ui__controls{pointer-events:auto}.virtual-tour-ui__identity{position:absolute;top:18px;left:18px;display:grid;gap:2px;max-width:min(420px,calc(100vw - 390px));padding:12px 14px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#121514d1;box-shadow:0 12px 34px #0003;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.virtual-tour-ui__identity span,.virtual-tour-ui__section-head span,.virtual-tour-ui__artwork-card>div>span{color:#a8d8b4;font-size:.68rem;font-weight:800;line-height:1.2;text-transform:uppercase}.virtual-tour-ui__identity strong{overflow-wrap:anywhere;font-size:1rem;line-height:1.25}.virtual-tour-ui__identity small,.virtual-tour-ui__poi-list small,.virtual-tour-ui__rooms small{color:#f7f8f7ad;font-size:.72rem;line-height:1.3}.virtual-tour-ui__minimap{position:absolute;top:96px;left:18px;width:284px;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#121514db;box-shadow:0 16px 44px #0000003d;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__minimap>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px}.virtual-tour-ui__minimap>div>span{color:#a8d8b4;font-size:.68rem;font-weight:800;text-transform:uppercase}.virtual-tour-ui__minimap button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:4px;background:transparent;color:#ffffffc2;cursor:pointer}.virtual-tour-ui__minimap button:hover{background:#ffffff1a;color:#fff}.virtual-tour-ui__minimap button svg{width:15px;height:15px}.virtual-tour-ui__minimap>svg{display:block;width:100%;height:150px;margin-top:4px;border:1px solid rgba(255,255,255,.12);border-radius:5px;background:#0000003d}.virtual-tour-ui__minimap rect{fill:#ffffff0d;stroke:#ffffff6b;stroke-width:1.5;cursor:pointer}.virtual-tour-ui__minimap rect:hover,.virtual-tour-ui__minimap rect:focus,.virtual-tour-ui__minimap rect.is-active{fill:#a8d8b433;stroke:#a8d8b4;outline:none}.virtual-tour-ui__minimap circle{fill:#d9a45f;stroke:#fff;stroke-width:1.2;cursor:pointer}.virtual-tour-ui__minimap circle:hover,.virtual-tour-ui__minimap circle:focus,.virtual-tour-ui__minimap circle.is-active{fill:#fff;stroke:#d9a45f;stroke-width:2;outline:none}.virtual-tour-ui__reticle{position:absolute;top:50%;left:50%;width:18px;height:18px;border:1px solid rgba(255,255,255,.74);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000029}.virtual-tour-ui__reticle:after{content:"";position:absolute;top:50%;left:50%;width:3px;height:3px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}.virtual-tour-ui__artworks{position:absolute;top:18px;right:18px;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(318px,calc(100vw - 36px));max-height:calc(100% - 124px);border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#121514db;box-shadow:0 18px 48px #0000003d;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.12)}.virtual-tour-ui__section-head>div{display:grid;gap:2px;min-width:0}.virtual-tour-ui__section-head strong{font-size:.9rem;line-height:1.25}.virtual-tour-ui__section-head button,.virtual-tour-ui__close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:#ffffff14;color:#fff;cursor:pointer}.virtual-tour-ui__section-head button:hover,.virtual-tour-ui__close:hover{background:#ffffff29}.virtual-tour-ui__section-head svg,.virtual-tour-ui__close svg{width:16px;height:16px}.virtual-tour-ui__poi-list{min-height:0;overflow-y:auto;padding:6px}.virtual-tour-ui__poi-list>button{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;width:100%;padding:10px 9px;border:0;border-radius:6px;background:transparent;color:inherit;text-align:left;cursor:pointer}.virtual-tour-ui__poi-list>button:hover,.virtual-tour-ui__poi-list>button.is-active{background:#ffffff1c}.virtual-tour-ui__poi-list>button>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(168,216,180,.52);border-radius:50%;color:#cce8d3;font-size:.68rem;font-weight:800}.virtual-tour-ui__poi-list>button>div{display:grid;gap:2px;min-width:0}.virtual-tour-ui__poi-list strong{overflow-wrap:anywhere;font-size:.8rem;line-height:1.3}.virtual-tour-ui__empty{margin:0;padding:16px 10px;color:#f7f8f79e;font-size:.78rem;line-height:1.45}.virtual-tour-ui__artwork-card{position:absolute;left:18px;bottom:94px;display:grid;grid-template-columns:minmax(88px,128px) minmax(0,1fr);width:min(440px,calc(100vw - 36px));min-height:128px;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#121514e6;box-shadow:0 18px 48px #00000042;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__artwork-card img{width:100%;height:100%;min-height:128px;object-fit:cover}.virtual-tour-ui__artwork-card>div{display:grid;align-content:center;gap:4px;min-width:0;padding:18px 42px 18px 18px}.virtual-tour-ui__artwork-card h2,.virtual-tour-ui__artwork-card p{margin:0;overflow-wrap:anywhere}.virtual-tour-ui__artwork-card h2{font-size:1.15rem;line-height:1.25}.virtual-tour-ui__artwork-card>div>strong{color:#cce8d3;font-size:.8rem}.virtual-tour-ui__artwork-card p{display:-webkit-box;overflow:hidden;color:#f7f8f7b3;font-size:.76rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}.virtual-tour-ui__close{position:absolute;top:10px;right:10px;z-index:1}.virtual-tour-ui__rooms{position:absolute;left:50%;bottom:18px;display:flex;gap:5px;max-width:min(720px,calc(100vw - 36px));padding:5px;overflow-x:auto;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#121514e0;box-shadow:0 14px 42px #0000003d;transform:translate(-50%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__rooms button{display:grid;grid-template-columns:28px minmax(92px,1fr);align-items:center;gap:8px;min-width:150px;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:inherit;text-align:left;cursor:pointer}.virtual-tour-ui__rooms button:hover,.virtual-tour-ui__rooms button.is-active{background:#ffffff1f}.virtual-tour-ui__rooms button>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#397a4c;color:#fff;font-size:.7rem;font-weight:800}.virtual-tour-ui__rooms button>div{display:grid;gap:1px;min-width:0}.virtual-tour-ui__rooms strong{overflow-wrap:anywhere;font-size:.75rem;line-height:1.25}.virtual-tour-ui__controls{position:absolute;right:18px;bottom:18px;display:grid;justify-items:end;gap:7px}.virtual-tour-ui__control-bar,.virtual-tour-ui__movement{padding:5px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#121514e0;box-shadow:0 14px 42px #0000003d;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__control-bar{display:flex;gap:3px}.virtual-tour-ui__movement{display:grid;grid-template-columns:repeat(3,38px);gap:3px}.virtual-tour-ui__control-bar button,.virtual-tour-ui__movement button{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:5px;background:#ffffff0d;color:#ffffffd1;cursor:pointer;touch-action:none}.virtual-tour-ui__control-bar button:hover,.virtual-tour-ui__control-bar button.is-active,.virtual-tour-ui__movement button:hover,.virtual-tour-ui__movement button:active{background:#397a4c;color:#fff}.virtual-tour-ui__control-bar svg,.virtual-tour-ui__movement svg{width:18px;height:18px}.virtual-tour-ui__movement .is-forward{grid-column:2}@media(max-width:900px){.virtual-tour-ui__identity{max-width:calc(100vw - 366px)}.virtual-tour-ui__artworks{width:310px}.virtual-tour-ui__artwork-card{bottom:92px;width:min(390px,calc(100vw - 344px))}.virtual-tour-ui__minimap{width:244px}.virtual-tour-ui__controls{bottom:90px}}@media(max-width:620px){.virtual-tour-ui__identity{top:10px;left:10px;max-width:calc(100vw - 148px);padding:9px 11px}.virtual-tour-ui__identity small{display:none}.virtual-tour-ui__artworks{top:auto;right:10px;bottom:78px;width:158px;max-height:min(44vh,310px)}.virtual-tour-ui__minimap{display:none}.virtual-tour-ui__section-head{padding:9px}.virtual-tour-ui__section-head>div>span{display:none}.virtual-tour-ui__poi-list>button{grid-template-columns:25px minmax(0,1fr);gap:6px;padding:8px 6px}.virtual-tour-ui__poi-list>button>span{width:25px;height:25px}.virtual-tour-ui__poi-list small{display:none}.virtual-tour-ui__artwork-card{left:10px;bottom:78px;grid-template-columns:72px minmax(0,1fr);width:calc(100vw - 188px);min-height:110px}.virtual-tour-ui__artwork-card img{min-height:110px}.virtual-tour-ui__artwork-card>div{padding:12px 34px 12px 10px}.virtual-tour-ui__artwork-card h2{font-size:.9rem}.virtual-tour-ui__artwork-card p{-webkit-line-clamp:2}.virtual-tour-ui__rooms{bottom:10px;max-width:calc(100vw - 20px)}.virtual-tour-ui__rooms button{grid-template-columns:24px minmax(76px,1fr);min-width:124px;padding:6px 8px}.virtual-tour-ui__rooms button>span{width:24px;height:24px}.virtual-tour-ui__controls{top:10px;right:10px;bottom:auto}.virtual-tour-ui__movement{display:none}}.virtual-tour-ui--roseart{--roseart-accent: #c62118;--roseart-panel: rgba(13, 13, 12, .88);--roseart-border: rgba(255, 255, 255, .1);--roseart-muted: rgba(255, 255, 255, .62);color:#fff}.virtual-tour-ui--roseart button,.virtual-tour-ui--roseart select{letter-spacing:0}.virtual-tour-ui--roseart button:focus-visible,.virtual-tour-ui--roseart select:focus-visible{outline:2px solid rgba(255,255,255,.86);outline-offset:2px}.virtual-tour-ui__top,.virtual-tour-ui__top-tools,.virtual-tour-ui__top-views,.virtual-tour-ui__return-views,.virtual-tour-ui__lighting,.virtual-tour-ui__help,.virtual-tour-ui--roseart .virtual-tour-ui__movement{pointer-events:auto}.virtual-tour-ui__top{position:absolute;top:14px;right:18px;left:18px;display:flex;align-items:center;gap:10px;min-height:64px;padding:8px 10px 8px 14px;border:1px solid var(--roseart-border);border-radius:8px;background:var(--roseart-panel);box-shadow:0 18px 42px #0000003d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.virtual-tour-ui__brand{display:grid;align-content:start;flex:0 0 152px;width:152px;text-shadow:0 2px 18px rgba(0,0,0,.5)}.virtual-tour-ui__brand strong{font-size:1.45rem;font-weight:300;line-height:1}.virtual-tour-ui__brand strong span{color:#e5332a}.virtual-tour-ui__brand small{margin-top:5px;color:#ffffffe0;font-size:.58rem;font-weight:600;line-height:1}.virtual-tour-ui__context{display:grid;grid-template-columns:minmax(130px,1.25fr) minmax(116px,.92fr) minmax(132px,1fr);flex:1 1 430px;min-width:300px;max-width:520px;min-height:44px;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#0000002e}.virtual-tour-ui__context label{display:grid;align-content:center;min-width:0;padding:5px 10px;border-right:1px solid var(--roseart-border)}.virtual-tour-ui__context label:last-child{border-right:0}.virtual-tour-ui__context label>span,.virtual-tour-ui__lighting section>span{color:#ffffffc7;font-size:.62rem;font-weight:700;line-height:1.2;text-transform:uppercase}.virtual-tour-ui__context select,.virtual-tour-ui__minimap--roseart select,.virtual-tour-ui__quality select{width:100%;min-width:0;padding:0;border:0;background:transparent;color:#fff;font:inherit;font-size:.75rem;line-height:1.4;cursor:pointer}.virtual-tour-ui--roseart select option{background:#171716;color:#fff}.virtual-tour-ui__top-tools,.virtual-tour-ui__top-views,.virtual-tour-ui__return-views{display:flex;align-items:center;gap:4px;min-width:0}.virtual-tour-ui__top-tools{flex:1 1 246px;max-width:300px;overflow-x:auto;scrollbar-width:none}.virtual-tour-ui__top-tools::-webkit-scrollbar{display:none}.virtual-tour-ui__top-views,.virtual-tour-ui__return-views{flex:0 0 auto;padding-left:4px;border-left:1px solid rgba(255,255,255,.1)}.virtual-tour-ui__top-tools button,.virtual-tour-ui__top-views button,.virtual-tour-ui__return-views button,.virtual-tour-ui__utilities button{display:inline-flex;align-items:center;justify-content:center;width:38px;min-width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.07);border-radius:5px;background:#00000047;color:#ffffffdb;cursor:pointer}.virtual-tour-ui__top-tools button:hover,.virtual-tour-ui__top-tools button.is-active,.virtual-tour-ui__top-views button:hover,.virtual-tour-ui__top-views button.is-active,.virtual-tour-ui__return-views button:hover,.virtual-tour-ui__return-views button.is-active,.virtual-tour-ui__utilities button:hover{border-color:var(--roseart-accent);background:var(--roseart-accent);color:#fff}.virtual-tour-ui__top-tools svg,.virtual-tour-ui__top-views svg,.virtual-tour-ui__return-views svg,.virtual-tour-ui__utilities svg{width:18px;height:18px}.virtual-tour-ui__return-views button{width:auto;min-width:58px;gap:7px;padding:0 10px}.virtual-tour-ui__return-views button span{display:block;font-size:.68rem;font-weight:800}.virtual-tour-ui__utilities{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex:0 0 auto}.virtual-tour-ui__utilities span{display:none;font-size:.66rem}.virtual-tour-ui__quality{display:inline-flex;align-items:center;gap:7px;height:38px;min-width:104px;padding:0 9px;border:1px solid rgba(255,255,255,.07);border-radius:5px;background:#00000047}.virtual-tour-ui__quality span{color:#ffffffd1;font-size:.66rem;font-weight:700}.virtual-tour-ui__quality select{width:56px;font-size:.68rem}.virtual-tour-ui__modebar{position:absolute;top:92px;left:50%;display:flex;padding:7px;border:1px solid var(--roseart-border);border-radius:7px;background:var(--roseart-panel);box-shadow:0 14px 34px #0000003d;transform:translate(-50%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__modebar button{display:grid;width:58px;height:48px;place-items:center;border:0;border-radius:5px;background:transparent;color:#ffffffdb;cursor:pointer}.virtual-tour-ui__modebar button:hover,.virtual-tour-ui__modebar button.is-active{background:var(--roseart-accent);color:#fff}.virtual-tour-ui__modebar svg{width:20px;height:20px}.virtual-tour-ui__toolrail{position:absolute;top:178px;left:18px;display:grid;width:146px;padding:7px;border:1px solid var(--roseart-border);border-radius:7px;background:var(--roseart-panel);box-shadow:0 16px 40px #0003;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__toolrail button{display:grid;grid-template-columns:29px minmax(0,1fr);align-items:center;gap:7px;width:100%;min-height:43px;padding:6px 8px;border:0;border-radius:5px;background:transparent;color:#ffffffdb;text-align:left;cursor:pointer}.virtual-tour-ui__toolrail button:hover,.virtual-tour-ui__toolrail button.is-active{background:#ffffff14;color:#fff}.virtual-tour-ui__toolrail button.is-active svg{padding:6px;box-sizing:content-box;border-radius:4px;background:#c6211847;color:#ff5b51}.virtual-tour-ui__toolrail svg{width:18px;height:18px}.virtual-tour-ui__toolrail span{font-size:.72rem;line-height:1.2}.virtual-tour-ui__minimap--roseart{top:92px;right:18px;left:auto;display:grid;width:262px;padding:10px;border-radius:7px;background:var(--roseart-panel)}.virtual-tour-ui__minimap--roseart>svg{height:138px;margin:0;border-color:var(--roseart-border);border-radius:4px}.virtual-tour-ui__minimap--roseart>button{position:absolute;top:14px;right:14px;background:#0000008c}.virtual-tour-ui__minimap--roseart>select{width:88px;min-height:32px;margin-top:7px;margin-left:auto;padding:0 9px;border:1px solid var(--roseart-border);border-radius:5px;background:#00000047}.virtual-tour-ui__lighting{position:absolute;top:300px;right:18px;display:grid;width:262px;padding:13px;border:1px solid var(--roseart-border);border-radius:7px;background:var(--roseart-panel);box-shadow:0 18px 44px #0000003d;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__lighting section{display:grid;gap:8px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.07)}.virtual-tour-ui__lighting section:first-child{padding-top:0}.virtual-tour-ui__lighting section:last-child{padding-bottom:0;border-bottom:0}.virtual-tour-ui__icon-options,.virtual-tour-ui__segment,.virtual-tour-ui__preset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.virtual-tour-ui__segment{grid-template-columns:repeat(3,1fr)}.virtual-tour-ui__icon-options button,.virtual-tour-ui__segment button,.virtual-tour-ui__preset-grid button,.virtual-tour-ui__eye-height button{min-width:0;min-height:42px;border:1px solid rgba(255,255,255,.07);border-radius:5px;background:#00000052;color:#ffffffd1;font-size:.67rem;cursor:pointer}.virtual-tour-ui__icon-options button:hover,.virtual-tour-ui__icon-options button.is-active,.virtual-tour-ui__segment button:hover,.virtual-tour-ui__segment button.is-active,.virtual-tour-ui__preset-grid button:hover,.virtual-tour-ui__preset-grid button.is-active{border-color:var(--roseart-accent);background:var(--roseart-accent);color:#fff}.virtual-tour-ui__icon-options svg{width:18px;height:18px}.virtual-tour-ui__icon-options button{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;justify-content:start;gap:7px;padding:8px 9px;text-align:left}.virtual-tour-ui__icon-options button small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:inherit}.virtual-tour-ui__preset-grid{grid-template-columns:1fr}.virtual-tour-ui__preset-grid button{display:grid;gap:2px;min-height:52px;padding:9px 10px;text-align:left}.virtual-tour-ui__preset-grid strong,.virtual-tour-ui__preset-grid small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.virtual-tour-ui__preset-grid strong{font-size:.76rem;line-height:1.2}.virtual-tour-ui__preset-grid small{color:currentColor;opacity:.68;font-size:.65rem;line-height:1.25}.virtual-tour-ui__switch-row{grid-template-columns:1fr auto;align-items:center}.virtual-tour-ui__switch-row>span{display:flex;align-items:center;gap:7px}.virtual-tour-ui__switch-row>span svg{width:15px;height:15px}.virtual-tour-ui__switch-row>button{position:relative;width:34px;height:20px;padding:0;border:0;border-radius:10px;background:#ffffff38;cursor:pointer}.virtual-tour-ui__switch-row>button i{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .14s ease}.virtual-tour-ui__switch-row>button.is-on{background:var(--roseart-accent)}.virtual-tour-ui__switch-row>button.is-on i{transform:translate(14px)}.virtual-tour-ui__eye-height{display:grid;grid-template-columns:1fr 36px 36px;gap:6px}.virtual-tour-ui__eye-height strong{display:flex;align-items:center;padding:0 9px;border-radius:5px;background:#00000052;font-size:.74rem}.virtual-tour-ui__eye-height button{display:grid;place-items:center}.virtual-tour-ui__eye-height svg{width:15px;height:15px}.virtual-tour-ui__view-switcher{position:absolute;bottom:18px;left:24px;display:grid;gap:6px}.virtual-tour-ui__view-switcher>select{width:88px;min-height:34px;padding:0 10px;border:1px solid var(--roseart-border);border-radius:5px;background:var(--roseart-panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.virtual-tour-ui__view-switcher>div{display:grid;grid-template-columns:repeat(2,58px);gap:4px;padding:7px;border:1px solid var(--roseart-border);border-radius:7px;background:var(--roseart-panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.virtual-tour-ui__view-switcher button{display:grid;place-items:center;gap:4px;width:58px;height:58px;border:0;border-radius:5px;background:#00000038;color:#ffffffdb;cursor:pointer}.virtual-tour-ui__view-switcher button:hover,.virtual-tour-ui__view-switcher button.is-active{background:var(--roseart-accent);color:#fff}.virtual-tour-ui__view-switcher svg{width:19px;height:19px}.virtual-tour-ui__view-switcher span{font-size:.65rem}.virtual-tour-ui--roseart .virtual-tour-ui__movement{position:absolute;right:auto;bottom:18px;left:50%;display:grid;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,42px);gap:4px;padding:6px;border:1px solid var(--roseart-border);border-radius:7px;background:var(--roseart-panel);transform:translate(-50%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.virtual-tour-ui--roseart .virtual-tour-ui__movement button{width:42px;height:42px;border-radius:5px;background:#00000038}.virtual-tour-ui--roseart .virtual-tour-ui__movement button:hover,.virtual-tour-ui--roseart .virtual-tour-ui__movement button:active{background:var(--roseart-accent)}.virtual-tour-ui__movement-button--forward{grid-column:2;grid-row:1}.virtual-tour-ui__movement-button--left{grid-column:1;grid-row:2}.virtual-tour-ui__movement-button--back{grid-column:2;grid-row:2}.virtual-tour-ui__movement-button--right{grid-column:3;grid-row:2}.virtual-tour-ui__help{position:absolute;top:82px;right:18px;display:grid;gap:8px;width:260px;padding:16px;border:1px solid var(--roseart-border);border-radius:7px;background:var(--roseart-panel);box-shadow:0 18px 44px #00000040;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__help button{position:absolute;top:7px;right:7px;display:grid;width:28px;height:28px;place-items:center;border:0;background:transparent;color:#fff;cursor:pointer}.virtual-tour-ui__help p{margin:0;color:var(--roseart-muted);font-size:.76rem;line-height:1.45}.virtual-tour-ui--roseart .virtual-tour-ui__artwork-card{bottom:176px;left:18px;width:min(420px,calc(100vw - 340px));background:var(--roseart-panel)}.virtual-tour-ui--roseart .virtual-tour-ui__guided{bottom:92px;background:var(--roseart-panel)}@media(max-width:1100px){.virtual-tour-ui__top{grid-template-columns:150px minmax(380px,1fr) auto}.virtual-tour-ui__utilities span,.virtual-tour-ui__view-select{display:none}.virtual-tour-ui__context{grid-template-columns:1.2fr .9fr}.virtual-tour-ui__lighting{top:292px}}@media(max-width:820px){.virtual-tour-ui__top{left:12px;grid-template-columns:118px minmax(0,1fr) auto;gap:8px}.virtual-tour-ui__brand strong{font-size:1.25rem}.virtual-tour-ui__context{grid-template-columns:1fr}.virtual-tour-ui__context label:first-child{display:none}.virtual-tour-ui__context label{border-right:0}.virtual-tour-ui__toolrail{top:96px;left:10px;width:48px}.virtual-tour-ui__toolrail button{grid-template-columns:1fr;padding:7px}.virtual-tour-ui__toolrail span,.virtual-tour-ui__modebar{display:none}.virtual-tour-ui__minimap--roseart{top:88px;width:220px}.virtual-tour-ui__lighting{top:auto;right:10px;bottom:78px;width:220px;max-height:48vh;overflow-y:auto}.virtual-tour-ui__display-controls{right:10px;bottom:16px}.virtual-tour-ui__display-controls label{display:none}.virtual-tour-ui__view-switcher{bottom:10px;left:10px}.virtual-tour-ui__view-switcher>div{grid-template-columns:repeat(4,46px)}.virtual-tour-ui__view-switcher button{width:46px;height:46px}.virtual-tour-ui__view-switcher>select{display:none}.virtual-tour-ui--roseart .virtual-tour-ui__movement{bottom:10px}}@media(max-width:620px){.virtual-tour-ui__brand{display:none}.virtual-tour-ui__top{grid-template-columns:minmax(0,1fr) auto}.virtual-tour-ui__context{min-height:48px}.virtual-tour-ui__utilities button:not(:last-child),.virtual-tour-ui__minimap--roseart,.virtual-tour-ui__lighting,.virtual-tour-ui__toolrail{display:none}.virtual-tour-ui__view-switcher>div{grid-template-columns:repeat(2,44px)}.virtual-tour-ui__view-switcher button:nth-child(n+3){display:none}.virtual-tour-ui--roseart .virtual-tour-ui__movement{left:auto;right:10px;transform:none}.virtual-tour-ui__display-controls{right:10px;bottom:156px}.virtual-tour-ui__display-controls button span{display:none}.virtual-tour-ui--roseart .virtual-tour-ui__artwork-card{right:10px;bottom:156px;left:10px;width:auto}}.roseart-access{display:grid;min-height:100vh;place-items:center;padding:24px;background:#f2f3f1;color:#171918}.roseart-access__form{display:grid;gap:16px;width:min(420px,100%);padding:32px;border:1px solid #d7dad6;border-radius:8px;background:#fff;box-shadow:0 18px 48px #1115121a}.roseart-access__form>span{color:#a4231f;font-size:.72rem;font-weight:800;text-transform:uppercase}.roseart-access__form h1,.roseart-access__form p{margin:0}.roseart-access__form h1{font-size:1.8rem}.roseart-access__form p{color:#626761;line-height:1.6}.roseart-access__form label{display:grid;gap:7px;font-size:.82rem;font-weight:700}.roseart-access__form input{width:100%;min-height:44px;padding:0 12px;border:1px solid #bbc0bb;border-radius:5px;background:#fff;color:#171918;font:inherit}.roseart-access__form button,.roseart-tour-intro__actions button{min-height:44px;padding:0 18px;border:1px solid #b3261e;border-radius:5px;background:#b3261e;color:#fff;font:inherit;font-weight:800;cursor:pointer}.roseart-access__form button:disabled{cursor:not-allowed;opacity:.5}.roseart-tour-intro{position:absolute;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;min-height:0;padding:clamp(28px,7vw,104px);overflow:auto;background-color:#101211;background-position:center;background-size:cover;color:#fff;isolation:isolate}.roseart-tour-intro:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:#080909ad;content:""}.roseart-tour-intro__close{position:absolute;top:22px;right:22px;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.36);border-radius:50%;background:#0a0a0a75;color:#fff;cursor:pointer}.roseart-tour-intro__close svg{width:18px;height:18px}.roseart-tour-intro__content{display:grid;gap:18px;width:min(720px,100%)}.roseart-tour-intro__content>span{color:#f0b3ad;font-size:.72rem;font-weight:800;text-transform:uppercase}.roseart-tour-intro__content h1,.roseart-tour-intro__content h2,.roseart-tour-intro__content p{margin:0}.roseart-tour-intro__content h1{max-width:18ch;font-size:clamp(2.4rem,6vh,5.6rem);line-height:1}.roseart-tour-intro__content h2{max-width:42ch;color:#ffffffd1;font-size:1.2rem;font-weight:500}.roseart-tour-intro__content>p{max-width:62ch;color:#ffffffc7;font-size:1rem;line-height:1.65}.roseart-tour-intro__curator{font-size:.82rem;font-weight:700}.roseart-tour-intro__meta,.roseart-tour-intro__actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.roseart-tour-intro__meta span,.roseart-tour-intro__meta select{min-height:32px;padding:0 10px;border:1px solid rgba(255,255,255,.24);border-radius:4px;background:#0a0a0a61;color:#fff;font:inherit;font-size:.74rem}.roseart-tour-intro__actions button+button{border-color:#ffffff80;background:#0a0a0a61}.roseart-consent{position:absolute;right:18px;bottom:18px;z-index:110;display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:10px;width:min(620px,calc(100vw - 36px));padding:14px;border:1px solid #d6d9d5;border-radius:7px;background:#fff;box-shadow:0 18px 48px #0f121029;color:#202321}.roseart-consent>div{display:grid;gap:3px}.roseart-consent span{color:#686d68;font-size:.75rem;line-height:1.4}.roseart-consent button{min-height:36px;padding:0 12px;border:1px solid #c9cdc9;border-radius:4px;background:#fff;color:#242725;font:inherit;font-size:.76rem;font-weight:700;cursor:pointer}.roseart-consent button:last-child{border-color:#b3261e;background:#b3261e;color:#fff}.virtual-tour-ui__identity select{min-height:28px;padding:0 8px;border:1px solid rgba(255,255,255,.2);border-radius:4px;background:#0000003d;color:#fff;font:inherit;font-size:.7rem}.virtual-tour-ui__artwork-image{position:relative;min-width:0;padding:0;overflow:hidden;border:0;background:#101211;color:#fff;cursor:zoom-in}.virtual-tour-ui__artwork-image>svg{position:absolute;right:9px;bottom:9px;width:18px;height:18px;padding:5px;box-sizing:content-box;border-radius:50%;background:#0000009e}.virtual-tour-ui__artwork-card dl{display:grid;gap:4px;margin:4px 0 0;font-size:.7rem}.virtual-tour-ui__artwork-card dl div{display:grid;grid-template-columns:72px 1fr;gap:8px}.virtual-tour-ui__artwork-card dt{color:#f7f8f78c}.virtual-tour-ui__artwork-card dd{margin:0}.virtual-tour-ui__guided{position:absolute;left:50%;bottom:92px;z-index:5;display:grid;gap:10px;width:min(520px,calc(100vw - 40px));padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#121514eb;box-shadow:0 18px 48px #00000047;color:#fff;transform:translate(-50%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.virtual-tour-ui__guided>span{color:#9bd3aa;font-size:.7rem;font-weight:800;text-transform:uppercase}.virtual-tour-ui__guided h2,.virtual-tour-ui__guided p{margin:0}.virtual-tour-ui__guided h2{font-size:1.1rem}.virtual-tour-ui__guided p{color:#ffffffb8;font-size:.82rem;line-height:1.5}.virtual-tour-ui__guided audio{width:100%;height:36px}.virtual-tour-ui__guided details summary{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.76rem;font-weight:700}.virtual-tour-ui__guided>div{display:flex;justify-content:space-between;gap:8px}.virtual-tour-ui__guided>div button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.24);border-radius:5px;background:#ffffff14;color:#fff;cursor:pointer}.virtual-tour-ui__guided>div button:disabled{cursor:not-allowed;opacity:.42}.virtual-tour-ui__zoom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:24px;background:#000000f0}.virtual-tour-ui__zoom>button{position:absolute;top:18px;right:18px;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:#111;color:#fff;cursor:pointer}.virtual-tour-ui__zoom img{max-width:94vw;max-height:90vh;object-fit:contain}@media(max-width:620px){.roseart-tour-intro{align-items:end;padding:76px 22px 32px}.roseart-tour-intro__content h1{font-size:2.4rem}.roseart-tour-intro__actions{display:grid}.virtual-tour-ui__guided{right:10px;bottom:78px;left:10px;width:auto;transform:none}.roseart-consent{right:10px;bottom:10px;grid-template-columns:1fr 1fr;width:calc(100vw - 20px)}.roseart-consent>div{grid-column:1 / -1}}.roseart-workspace-shell{--roseart-workspace-dark: #0f1113;--roseart-workspace-dark-panel: #17191c;--roseart-workspace-dark-border: rgba(255, 255, 255, .1);--roseart-workspace-accent: #df1f18;min-height:100vh;display:grid;grid-template-columns:286px minmax(0,1fr);background:#f4f5f3;color:#101827}.roseart-workspace-sidebar{position:sticky;top:0;z-index:8;display:grid;grid-template-rows:auto auto 1fr auto;gap:22px;min-height:100vh;padding:24px 16px 18px;border-right:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 26%),var(--roseart-workspace-dark);color:#fff;box-shadow:18px 0 48px #070a0d2e}.roseart-workspace-sidebar__brand{display:inline-flex;min-width:0;color:#fff}.roseart-workspace-sidebar__brand .roseart-brand-logo{color:#fff}.roseart-workspace-sidebar__brand .roseart-brand-logo__image{max-width:210px;max-height:64px}.roseart-workspace-sidebar__brand .roseart-brand-logo__tagline,.roseart-workspace-sidebar__brand .roseart-brand-logo__copy em{color:var(--roseart-workspace-accent)}.roseart-workspace-sidebar__nav{display:grid;gap:8px;align-content:start}.roseart-workspace-sidebar__nav a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;border:1px solid transparent;border-radius:8px;color:#ffffffc2;font-size:.92rem;font-weight:800;transition:background .14s ease,color .14s ease,border-color .14s ease}.roseart-workspace-sidebar__nav a:hover{border-color:var(--roseart-workspace-dark-border);background:#ffffff0f;color:#fff}.roseart-workspace-sidebar__nav a.is-active{border-color:#df1f1873;background:var(--roseart-workspace-accent);color:#fff;box-shadow:0 14px 30px #df1f183d}.roseart-workspace-sidebar__resources{align-self:start;display:grid;gap:12px;padding:15px;border:1px solid var(--roseart-workspace-dark-border);border-radius:8px;background:var(--roseart-workspace-dark-panel);color:#ffffffc7}.roseart-workspace-sidebar__resources>span,.roseart-workspace-sidebar__resources small{color:#ffffff8a;font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.roseart-workspace-sidebar__resources strong{color:#fff}.roseart-workspace-sidebar__resources div{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:.86rem}.roseart-workspace-sidebar__resources b{color:#fff}.roseart-workspace-sidebar__footer{display:grid;gap:12px;align-self:end}.roseart-workspace-user{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid var(--roseart-workspace-dark-border);border-radius:8px;background:#ffffff0a}.roseart-workspace-user__avatar{display:grid;width:42px;height:42px;place-items:center;overflow:hidden;border-radius:50%;background:#fff;color:#111827;font-weight:900}.roseart-workspace-user__avatar img{width:100%;height:100%;object-fit:cover}.roseart-workspace-user strong,.roseart-workspace-user span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roseart-workspace-user strong{color:#fff;font-size:.88rem}.roseart-workspace-user span{color:#ffffff85;font-size:.72rem;font-weight:800;text-transform:uppercase}.roseart-workspace-logout{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid var(--roseart-workspace-dark-border);border-radius:8px;background:#ffffff0d;color:#fff;font-size:.86rem;font-weight:850;cursor:pointer}.roseart-workspace-logout:hover{border-color:#df1f1880;background:#df1f182e}.roseart-workspace-main{min-width:0;display:grid;grid-template-rows:auto 1fr;min-height:100vh}.roseart-workspace-topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:74px;padding:18px 28px;border-bottom:1px solid rgba(17,24,39,.08);background:#ffffffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.roseart-workspace-topbar p{margin:4px 0 0;color:#667085;font-size:.9rem}.roseart-workspace-topbar__actions{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid #e1e5ea;border-radius:8px;background:#fff;color:#1f2937;font-size:.82rem;font-weight:850;white-space:nowrap}.roseart-workspace-content{display:grid;align-content:start;gap:22px;min-width:0;padding:28px}.roseart-workspace-resource-strip{border-radius:8px;background:#fff}.roseart-workspace-resource-strip .dashboard-usage-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.roseart-workspace-resource-strip__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:12px;border-top:1px solid rgba(17,24,39,.08)}.roseart-workspace-resource-strip__actions a,.roseart-workspace-resource-strip__actions span{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border:1px solid #e1e5ea;border-radius:8px;background:#fff;color:#101827;font-size:.78rem;font-weight:850;text-decoration:none}.roseart-workspace-resource-strip__actions a:first-child{border-color:var(--roseart-workspace-accent);background:var(--roseart-workspace-accent);color:#fff}.roseart-workspace-shell .dashboard-toolbar,.roseart-workspace-shell .app-page-shell__header{align-items:flex-end}.roseart-workspace-shell .dashboard-toolbar h1,.roseart-workspace-shell .app-page-shell__header h1{color:#101827;letter-spacing:0}.roseart-workspace-shell .dashboard-lead,.roseart-workspace-shell .app-page-shell__header p{color:#667085}.roseart-workspace-shell .dashboard-project-card,.roseart-workspace-shell .ui-guidance,.roseart-workspace-shell .ui-empty-state,.roseart-workspace-shell .dashboard-filters,.roseart-workspace-shell .dashboard-usage-card{border-radius:8px}.roseart-workspace-shell .ui-button:not(.ui-button--secondary):not(.ui-button--danger),.roseart-workspace-shell .dashboard-toolbar__actions .ui-button:not(.ui-button--secondary){background:var(--roseart-workspace-accent);border-color:var(--roseart-workspace-accent);color:#fff}.roseart-artworks-workspace{min-width:0}.roseart-artworks-workspace .catalog-admin-v2{width:100%}.roseart-artworks-workspace .catalog-admin-v2--artwork{margin:0}.roseart-artworks-workspace .catalog-admin-v2__editor-shell,.roseart-artworks-workspace .catalog-admin-v2__browser-screen,.roseart-artworks-workspace .catalog-admin-v2>.ui-panel{border-radius:8px}.roseart-onboarding,.roseart-profile-onboarding{display:grid;gap:22px;min-width:0}.roseart-onboarding__hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:24px;align-items:stretch;padding:30px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;box-shadow:0 18px 44px #10182812}.roseart-onboarding__hero h1,.roseart-profile-onboarding__heading h1{margin:7px 0 12px;color:#101827;font-size:clamp(2rem,4vw,4.2rem);line-height:.96;letter-spacing:0}.roseart-onboarding__hero p,.roseart-profile-onboarding__heading p{max-width:720px;margin:0;color:#667085;font-size:1.02rem;line-height:1.6}.roseart-onboarding__cta{display:inline-flex;gap:10px;align-items:center;margin-top:26px}.roseart-onboarding__status{display:grid;align-content:center;gap:8px;padding:22px;border:1px solid #f0c3bd;border-radius:8px;background:#fff6f4;color:#101827}.roseart-onboarding__status svg{color:#e3221d}.roseart-onboarding__status span,.roseart-onboarding-step span,.roseart-profile-form h2,.roseart-artworks-progress .eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:850}.roseart-onboarding__status strong{font-size:1.65rem;line-height:1.05}.roseart-onboarding__status small{color:#667085;font-weight:750}.roseart-onboarding__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.roseart-onboarding-step{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;min-height:106px;padding:16px;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.roseart-onboarding-step__marker{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f2f4f7;color:#101827;font-weight:900}.roseart-onboarding-step strong{display:block;margin-top:4px;color:#101827;font-size:1rem;line-height:1.2}.roseart-onboarding-step.is-complete{border-color:#fecaca}.roseart-onboarding-step.is-complete .roseart-onboarding-step__marker{background:#e3221d;color:#fff}.roseart-onboarding-step.is-locked{opacity:.68}.roseart-profile-onboarding__heading,.roseart-profile-form,.roseart-artworks-progress{padding:24px;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.roseart-profile-onboarding__heading h1{font-size:clamp(2rem,3vw,3.2rem)}.roseart-profile-form{display:grid;gap:24px}.roseart-profile-form__section{display:grid;gap:14px}.roseart-profile-form__section h2{margin:0;color:#e3221d}.roseart-profile-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.roseart-textarea-field,.roseart-check-field{display:grid;gap:8px;color:#101827;font-weight:800}.roseart-textarea-field textarea{width:100%;resize:vertical;border:1px solid #d0d5dd;border-radius:8px;padding:12px 14px;color:#101827;font:inherit;font-weight:600;line-height:1.5}.roseart-textarea-field textarea:focus{outline:2px solid rgba(227,34,29,.22);border-color:#e3221d}.roseart-textarea-field small{color:#667085;font-weight:700}.roseart-check-field{display:inline-flex;align-items:center;gap:10px;justify-self:start}.roseart-check-field input{width:18px;height:18px;accent-color:#e3221d}.roseart-profile-form__actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #e4e7ec;padding-top:18px}.roseart-profile-form__actions .ui-button{display:inline-flex;gap:8px;align-items:center}.roseart-profile-form__error{margin:0;padding:12px 14px;border:1px solid #fecaca;border-radius:8px;background:#fff1f0;color:#991b1b;font-weight:800}.roseart-artworks-progress{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;margin-bottom:18px}.roseart-artworks-progress h1{margin:4px 0 8px;color:#101827;font-size:clamp(1.9rem,3vw,2.8rem);letter-spacing:0}.roseart-artworks-progress p{margin:0;color:#667085;font-weight:650}.roseart-artworks-progress__meter{display:grid;min-width:132px;padding:13px 16px;border:1px solid #fee2e2;border-radius:8px;background:#fff6f4}.roseart-artworks-progress__meter strong{color:#101827;font-size:1.35rem;line-height:1}.roseart-artworks-progress__meter span{color:#667085;font-size:.78rem;font-weight:800}.roseart-artworks-progress__action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid #e3221d;border-radius:8px;background:#e3221d;color:#fff;font-weight:900;text-decoration:none;white-space:nowrap}.roseart-artworks-progress__action.is-disabled{border-color:#e4e7ec;background:#f2f4f7;color:#98a2b3;cursor:not-allowed}@media(max-width:980px){.roseart-workspace-shell{grid-template-columns:1fr}.roseart-workspace-sidebar{position:relative;min-height:auto;grid-template-rows:auto auto auto}.roseart-workspace-sidebar__resources,.roseart-workspace-sidebar__footer{align-self:start}}@media(max-width:720px){.roseart-workspace-content,.roseart-workspace-topbar{padding-inline:16px}.roseart-workspace-topbar{align-items:flex-start;flex-direction:column}.roseart-workspace-sidebar__nav{grid-template-columns:repeat(2,minmax(0,1fr))}.roseart-workspace-resource-strip,.roseart-workspace-resource-strip .dashboard-usage-grid,.roseart-onboarding__hero,.roseart-onboarding__steps,.roseart-profile-form__grid,.roseart-artworks-progress{grid-template-columns:1fr}.roseart-profile-form__actions{justify-content:stretch;flex-direction:column}}.roseart-public-shell{--roseart-black: #090a0c;--roseart-anthracite: #1f2226;--roseart-panel: #2b2f34;--roseart-vermilion: #df1f18;--roseart-vermilion-deep: #b81d19;--roseart-ink: #111317;--roseart-muted: #626a73;--roseart-line: #e3e5e8;--roseart-soft: #f5f5f3;--roseart-white: #ffffff;background:var(--roseart-white);color:var(--roseart-ink)}.roseart-public-shell *,.roseart-public-page *{letter-spacing:0}.roseart-public-shell .public-site-header{position:sticky;top:0;z-index:60;border-bottom:1px solid rgba(31,34,38,.1);background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.roseart-public-shell .public-site-header__inner{width:min(1440px,calc(100% - 48px));min-height:76px;padding:0}.roseart-public-shell .public-site-brand{color:var(--roseart-ink);text-decoration:none}.roseart-public-shell .roseart-brand-logo__mark{border-radius:8px;background:var(--roseart-vermilion)}.roseart-public-shell .public-site-nav{gap:4px}.roseart-public-shell .public-site-nav__item>a,.roseart-public-shell .public-site-login{min-height:40px;padding:0 12px;border-radius:8px;color:var(--roseart-anthracite);font-size:.88rem;font-weight:800;text-decoration:none}.roseart-public-shell .public-site-nav__item.is-active>a,.roseart-public-shell .public-site-nav__item>a:hover,.roseart-public-shell .public-site-login:hover{background:#f0f1f2;color:var(--roseart-black)}.roseart-public-shell .public-site-nav__item.is-active>a:after{background:var(--roseart-vermilion)}.roseart-public-shell .public-site-actions{gap:10px}.roseart-public-shell .ui-button{min-height:42px;border-radius:8px;font-weight:900}.roseart-public-shell .ui-button--primary,.roseart-public-page .ui-button--primary{border-color:var(--roseart-vermilion);background:var(--roseart-vermilion);color:#fff;box-shadow:none}.roseart-public-shell .ui-button--primary:hover,.roseart-public-page .ui-button--primary:hover{border-color:var(--roseart-vermilion-deep);background:var(--roseart-vermilion-deep)}.roseart-public-shell .ui-button--secondary,.roseart-public-page .ui-button--secondary{border-color:#1f22262e;background:#fff;color:var(--roseart-anthracite)}.roseart-public-shell .public-megamenu{width:min(980px,calc(100vw - 48px));border:1px solid rgba(31,34,38,.12);border-radius:8px;background:#fff;box-shadow:0 24px 60px #090a0c26}.roseart-public-shell .public-megamenu__intro{border-radius:8px;background:var(--roseart-anthracite);color:#fff}.roseart-public-shell .public-megamenu__intro h3,.roseart-public-shell .public-megamenu__intro p{color:#fff}.roseart-public-shell .eyebrow,.roseart-public-page .eyebrow,.roseart-card-kicker,.roseart-space-card__facts dt{color:var(--roseart-vermilion);font-size:.74rem;font-weight:900;text-transform:uppercase}.roseart-public-shell .public-megamenu-card{min-height:154px;border:1px solid rgba(31,34,38,.1);border-radius:8px;background:#fff}.roseart-public-shell .public-megamenu-card:hover{border-color:#df1f1873;transform:translateY(-2px)}.roseart-public-shell .public-megamenu-card .site-editable-image{width:132px;min-width:132px;height:106px;border-radius:8px;overflow:hidden;background:#f2f2ef}.roseart-public-shell .site-editable-image img{display:block;width:100%;height:100%;object-fit:cover}.roseart-public-shell .public-site-menu-toggle span{background:var(--roseart-anthracite)}.roseart-public-shell .public-mobile-drawer{background:#fff}.roseart-public-shell .public-mobile-card{border-radius:8px}.roseart-public-shell .public-mobile-card .site-editable-image{width:88px;height:72px;border-radius:8px;overflow:hidden}.roseart-public-shell .public-site-disclaimer{border-top:1px solid rgba(255,255,255,.08);background:var(--roseart-black);color:#ffffffc2}.roseart-public-shell .public-site-disclaimer__inner strong{color:#fff}.roseart-public-shell .public-site-footer{background:var(--roseart-anthracite);color:#fff}.roseart-public-shell .public-site-footer__inner{width:min(1440px,calc(100% - 48px))}.roseart-public-shell .public-site-footer__brand p,.roseart-public-shell .public-site-footer__brand small,.roseart-public-shell .public-site-footer__links a{color:#ffffffc2}.roseart-public-shell .public-site-footer__links a:hover{color:#fff}.roseart-public-page{overflow:hidden;background:#fff;color:var(--roseart-ink)}.roseart-public-page .site-editable-image{display:block}.roseart-home-hero,.roseart-page-hero,.roseart-detail-hero{display:grid;width:min(1440px,calc(100% - 48px));margin:0 auto;gap:32px}.roseart-home-hero{grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);align-items:center;min-height:auto;padding:36px 0 32px}.roseart-home-hero__copy,.roseart-page-hero__copy,.roseart-detail-hero__copy{max-width:710px}.roseart-home-hero h1,.roseart-page-hero h1,.roseart-detail-hero h1{margin:14px 0 18px;color:var(--roseart-black);font-size:4.35rem;line-height:.96;font-weight:950}.roseart-home-hero p,.roseart-page-hero p,.roseart-detail-hero p,.roseart-section-heading p{color:var(--roseart-muted);font-size:1.08rem;line-height:1.65}.roseart-action-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:24px}.roseart-tour-preview{position:relative;min-height:560px;border-radius:8px;overflow:hidden;background:var(--roseart-anthracite);box-shadow:0 30px 80px #090a0c38}.roseart-tour-preview__image{position:absolute;top:0;right:0;bottom:0;left:0}.roseart-tour-preview__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#090a0c0d,#090a0cb8)}.roseart-tour-preview__hud{position:absolute;left:24px;right:24px;bottom:24px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#090a0cc7;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.roseart-tour-preview__label,.roseart-tour-preview__controls,.roseart-tour-preview__rooms{display:flex;align-items:center;gap:8px}.roseart-tour-preview__label{color:#fff;font-size:.78rem;font-weight:900;text-transform:uppercase}.roseart-tour-preview__copy strong{display:block;color:#fff;font-size:1rem}.roseart-tour-preview__copy p{margin:4px 0 0;color:#ffffffb8;font-size:.92rem;line-height:1.45}.roseart-tour-preview__controls button,.roseart-tour-preview__rooms button,.roseart-filter-chips button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff14;color:#fff;font-weight:850;cursor:pointer}.roseart-tour-preview__controls button{width:38px;padding:0}.roseart-tour-preview__rooms{position:absolute;top:24px;left:24px;flex-wrap:wrap}.roseart-tour-preview__rooms button{padding:0 12px;background:#090a0cb3}.roseart-tour-preview__rooms button.is-active{border-color:var(--roseart-vermilion);background:var(--roseart-vermilion)}.roseart-band{padding:88px max(24px,calc((100vw - 1440px)/2)) 96px;background:#fff}.roseart-band--dark{background:var(--roseart-anthracite);color:#fff}.roseart-band--dark .roseart-section-heading h2,.roseart-band--dark .roseart-section-heading p,.roseart-band--dark .roseart-card-kicker{color:#fff}.roseart-section-heading{max-width:790px;margin-bottom:30px}.roseart-section-heading--center{margin-right:auto;margin-left:auto;text-align:center}.roseart-section-heading h2{margin:10px 0 12px;color:var(--roseart-black);font-size:2.55rem;line-height:1.04;font-weight:940}.roseart-service-mode-grid,.roseart-card-grid,.roseart-space-grid,.roseart-project-grid,.roseart-explore-grid,.roseart-testimonial-grid,.roseart-faq-grid{display:grid;gap:18px}.roseart-service-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roseart-service-mode,.roseart-content-card,.roseart-space-card,.roseart-project-card,.roseart-explore-card,.roseart-testimonial-card,.roseart-faq-card{border:1px solid rgba(31,34,38,.11);border-radius:8px;background:#fff;overflow:hidden}.roseart-service-mode{display:grid;gap:22px;padding:28px}.roseart-service-mode h3,.roseart-content-card h3,.roseart-space-card h3,.roseart-project-card h3,.roseart-explore-card span,.roseart-faq-card h3{margin:0;color:var(--roseart-black);font-size:1.38rem;line-height:1.16;font-weight:920}.roseart-service-mode p,.roseart-content-card p,.roseart-space-card p,.roseart-project-card p,.roseart-explore-card p,.roseart-faq-card p,.roseart-testimonial-card p{color:var(--roseart-muted);line-height:1.58}.roseart-check-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.roseart-check-list li{display:flex;align-items:flex-start;gap:8px;color:var(--roseart-anthracite);font-weight:750}.roseart-check-list svg{flex:0 0 auto;margin-top:2px;color:var(--roseart-vermilion)}.roseart-card-link{display:inline-flex;align-items:center;gap:8px;width:fit-content;color:var(--roseart-vermilion);font-weight:900;text-decoration:none}.roseart-feature-split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px;align-items:start}.roseart-card-grid,.roseart-card-grid--artists{grid-template-columns:repeat(3,minmax(0,1fr))}.roseart-feature-artists{display:grid;gap:18px}.roseart-content-card__media,.roseart-space-card__media,.roseart-project-card__media,.roseart-page-hero__image,.roseart-detail-hero__image{display:block;overflow:hidden;background:#ececea}.roseart-content-card__media,.roseart-space-card__media{aspect-ratio:1.42}.roseart-project-card__media{aspect-ratio:1.65}.roseart-page-hero__image,.roseart-detail-hero__image{min-height:450px;border-radius:8px}.roseart-content-card__body,.roseart-space-card__body,.roseart-project-card__body{display:grid;gap:14px;padding:20px}.roseart-card-kicker{display:inline-flex;align-items:center;gap:6px}.roseart-card-meta,.roseart-detail-meta{display:flex;flex-wrap:wrap;gap:8px}.roseart-card-meta span,.roseart-detail-meta span,.roseart-project-card__stats span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:8px;background:#f0f1f2;color:var(--roseart-anthracite);font-size:.78rem;font-weight:850}.roseart-space-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.roseart-space-card.is-premium{border-color:#df1f1873}.roseart-space-card__facts{display:grid;grid-template-columns:1fr;gap:10px;margin:0}.roseart-space-card__facts div{padding-top:10px;border-top:1px solid #eceef0}.roseart-space-card__facts dd{margin:3px 0 0;color:var(--roseart-anthracite);font-weight:850}.roseart-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roseart-project-card__body>strong{color:var(--roseart-anthracite);line-height:1.45}.roseart-project-card__stats{display:flex;flex-wrap:wrap;gap:8px}.roseart-final-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;width:min(1440px,calc(100% - 48px));margin:0 auto 96px;padding:34px;border-radius:8px;background:var(--roseart-black);color:#fff}.roseart-final-cta h2{margin:8px 0 10px;color:#fff;font-size:2.05rem;line-height:1.08}.roseart-final-cta p{max-width:760px;margin:0;color:#ffffffb8;line-height:1.6}.roseart-page-hero,.roseart-detail-hero{grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);align-items:center;padding:68px 0 60px}.roseart-page-hero--simple{display:block;min-height:420px}.roseart-detail-hero{min-height:620px}.roseart-detail-hero__image{order:2}.roseart-detail-hero__copy{order:1}.roseart-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.roseart-filter-chips button{padding:0 14px;border-color:#1f222624;background:#fff;color:var(--roseart-anthracite)}.roseart-filter-chips button.is-active,.roseart-filter-chips button:hover{border-color:var(--roseart-vermilion);background:var(--roseart-vermilion);color:#fff}.roseart-explore-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.roseart-explore-card{display:grid;gap:12px;min-height:190px;padding:22px;color:inherit;text-decoration:none}.roseart-explore-card svg{align-self:end;color:var(--roseart-vermilion)}.roseart-explore-metrics{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.roseart-explore-metrics strong{min-height:34px;padding:0 12px;border-radius:8px;background:var(--roseart-anthracite);color:#fff;display:inline-flex;align-items:center}.roseart-testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roseart-testimonial-card,.roseart-faq-card{padding:24px}.roseart-testimonial-card blockquote{margin:0}.roseart-testimonial-card cite{display:block;margin-top:16px;color:var(--roseart-anthracite);font-style:normal;font-weight:900}.roseart-faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roseart-empty-state{padding:22px;border:1px dashed rgba(31,34,38,.22);border-radius:8px;color:var(--roseart-muted)}.roseart-public-page .site-pricing{padding:88px max(24px,calc((100vw - 1440px)/2)) 96px;background:#f6f6f4}.roseart-public-page .site-pricing .site-section-heading{max-width:820px;margin-right:auto;margin-left:auto;text-align:center}.roseart-public-page .site-pricing .site-section-heading h2{margin:10px 0 12px;color:var(--roseart-black);font-size:2.55rem;line-height:1.04}.roseart-public-page .site-pricing__grid{width:min(1440px,100%);margin:0 auto;gap:18px}.roseart-public-page .site-pricing-card{border-radius:8px;border-color:#1f22261f;box-shadow:none}.roseart-public-page .site-pricing-card.is-highlighted{border-color:var(--roseart-vermilion);background:var(--roseart-anthracite)}.roseart-public-page .site-pricing-card__code{color:var(--roseart-vermilion)}.roseart-public-page .site-pricing-card__limits{grid-template-columns:repeat(2,minmax(0,1fr))}.roseart-public-page .contact-grid,.roseart-public-page .contact-form-section{width:min(1440px,calc(100% - 48px));margin:0 auto}.roseart-public-page .contact-grid{padding-top:70px}.roseart-public-page .contact-detail-card,.roseart-public-page .contact-note,.roseart-public-page .contact-form{border-radius:8px}@media(max-width:1180px){.roseart-home-hero,.roseart-page-hero,.roseart-detail-hero,.roseart-feature-split{grid-template-columns:1fr}.roseart-home-hero{min-height:auto;padding-top:42px}.roseart-tour-preview{min-height:520px}.roseart-card-grid,.roseart-card-grid--artists,.roseart-space-grid,.roseart-explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:920px){.roseart-public-shell .public-site-header__inner,.roseart-public-shell .public-site-footer__inner,.roseart-home-hero,.roseart-page-hero,.roseart-detail-hero,.roseart-final-cta,.roseart-public-page .contact-grid,.roseart-public-page .contact-form-section{width:min(1440px,calc(100% - 32px))}.roseart-home-hero h1,.roseart-page-hero h1,.roseart-detail-hero h1{font-size:3.1rem;line-height:1}.roseart-section-heading h2,.roseart-public-page .site-pricing .site-section-heading h2{font-size:2.1rem}.roseart-final-cta,.roseart-service-mode-grid,.roseart-project-grid,.roseart-testimonial-grid,.roseart-faq-grid{grid-template-columns:1fr}.roseart-tour-preview__hud{grid-template-columns:1fr;align-items:start}}@media(max-width:640px){.roseart-public-shell .public-site-header__inner{min-height:66px}.roseart-home-hero,.roseart-page-hero,.roseart-detail-hero{width:min(1440px,calc(100% - 28px));gap:22px;padding:32px 0 44px}.roseart-home-hero h1,.roseart-page-hero h1,.roseart-detail-hero h1{font-size:2.35rem}.roseart-home-hero p,.roseart-page-hero p,.roseart-detail-hero p,.roseart-section-heading p{font-size:1rem}.roseart-tour-preview{min-height:420px}.roseart-tour-preview__hud{left:14px;right:14px;bottom:14px;padding:14px}.roseart-tour-preview__rooms{top:14px;left:14px;right:14px}.roseart-band,.roseart-public-page .site-pricing{padding:56px 14px 64px}.roseart-card-grid,.roseart-card-grid--artists,.roseart-space-grid,.roseart-explore-grid{grid-template-columns:1fr}.roseart-content-card__media,.roseart-space-card__media,.roseart-project-card__media{aspect-ratio:1.22}.roseart-page-hero__image,.roseart-detail-hero__image{min-height:320px}.roseart-final-cta{width:min(1440px,calc(100% - 28px));margin-bottom:64px;padding:22px}.roseart-final-cta h2{font-size:1.7rem}.roseart-public-page .site-pricing-card__limits{grid-template-columns:1fr}}
