/* Survey expanded card: platform token-backed layout. No independent theme palette. */
body.sx-open{overflow:hidden}
#surveyExpandedRoot{position:fixed;inset:0;z-index:2500;font-family:inherit;color:var(--text,#edf3fd)}
#surveyExpandedRoot *{box-sizing:border-box}
.sx-underlay{position:absolute;inset:0;background:rgba(0,0,0,.42);backdrop-filter:blur(2px)}
.sx-card{position:absolute;inset:3.5vh 3vw;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border,#314664);border-radius:16px;background:var(--panel,#0e1b2f);box-shadow:0 18px 65px rgba(0,0,0,.5);isolation:isolate}
.sx-maximized .sx-card{inset:8px;border-radius:10px}
.sx-header{flex:0 0 auto;display:flex;align-items:center;gap:15px;min-height:68px;padding:12px 20px;border-bottom:1px solid var(--border,#304461);background:var(--panel,#0c1a2d);position:relative;z-index:4}
.sx-title{display:flex;gap:12px;align-items:center;min-width:200px}
.sx-title h2{margin:0;font-size:18px;line-height:1.25}
.sx-title small{display:block;color:var(--muted,#a6b9d0);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px}
.sx-logo{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;border:1px solid var(--accent,#f48533);color:var(--accent,#f48533);font-size:28px}
.sx-header-tags{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap}
.sx-tag{border:1px solid var(--border,#304461);border-radius:999px;padding:5px 10px;font-size:11px;color:var(--muted,#bac8d7);white-space:nowrap}
.sx-tag-good{background:color-mix(in srgb,var(--status-success,#24a572) 20%,transparent);color:var(--text,#e4f5fa);border-color:var(--status-success,#24a572)}
.sx-header-tools{margin-left:auto;display:flex;gap:7px;align-items:center}
.sx-header-tools .mini{width:36px;height:36px;border:1px solid var(--border,#304461);border-radius:9px;font-size:20px}
.sx-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 0;flex:1 1 auto;min-height:0;min-width:0;overflow:hidden;transition:grid-template-columns 240ms ease}
.sx-layout:has(.sx-prices.open){grid-template-columns:220px minmax(0,1fr) clamp(300px,27vw,420px)}
.sx-sidebar{border-right:1px solid var(--border,#304461);display:flex;flex-direction:column;min-height:0;padding:12px;background:var(--panel-alt,var(--panel,#101f35));overflow-y:auto}
.sx-sidebar nav{display:flex;flex-direction:column;gap:4px;flex:1}
.sx-nav{display:flex;align-items:center;gap:9px;min-width:0;text-align:left;width:100%;border:1px solid transparent;border-radius:9px;padding:11px 9px;background:transparent;color:var(--text,#edf3fd);font-size:12px;cursor:pointer}
.sx-nav:hover,.sx-nav.active{background:color-mix(in srgb,var(--accent,#4689df) 15%,var(--panel,#13243b));border-color:var(--border,#304461)}
.sx-nav.active{border-left:3px solid var(--accent,#4689df);font-weight:700}
.sx-nav-icon{font-size:16px;width:19px;flex:none;text-align:center}
.sx-nav>span:nth-child(2){flex:1;min-width:0}
.sx-nav small{border-radius:6px;padding:2px 5px;background:var(--panel,#1b304b);color:var(--muted,#9ab1d1);font-size:11px;white-space:nowrap}
.sx-progress-panel{margin-top:16px;border:1px solid var(--border,#304461);background:var(--panel,#13243b);border-radius:10px;padding:12px;display:grid;gap:8px;font-size:12px}
.sx-progress-panel>div{display:flex;justify-content:space-between;gap:4px}.sx-progress-panel small{color:var(--muted,#a8b7c9)}
.sx-progress-panel progress{width:100%;height:7px;accent-color:var(--status-success,var(--accent,#32c78c))}
.sx-content{padding:16px 18px;overflow:auto;min-height:0;min-width:0;overscroll-behavior:contain;display:flex;flex-direction:column;gap:14px;scrollbar-gutter:stable}
.sx-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.sx-grid.sx-meta{padding:14px;border:1px solid var(--border,#304461);border-radius:12px;background:var(--panel-alt,var(--panel,#0c1829))}
.sx-grid .sx-wide{grid-column:1/-1}
.sx-field{min-width:0;display:flex;flex-direction:column;gap:7px;color:var(--text,#edf3fd);font-size:12px}
.sx-field>span{font-weight:600;color:var(--muted,var(--text,#b6c9df))}
.sx-field input,.sx-field select,.sx-field textarea{font:inherit;min-width:0;width:100%;max-width:100%;border:1px solid var(--border,#304461);border-radius:9px;background:var(--input-bg,var(--panel,#17283e));color:var(--text,#edf3fd);padding:10px 11px;font-size:12px;outline:none;resize:vertical}
.sx-field input:focus,.sx-field select:focus,.sx-field textarea:focus{border-color:var(--accent,#4689df)}
.sx-field input[readonly]{opacity:.72}
.sx-section{border:1px solid var(--border,#304461);background:var(--panel-alt,var(--panel,#0c1829));border-radius:12px;padding:15px;min-width:0}
.sx-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:14px}.sx-section-title small{font-size:11px;color:var(--muted,#a6b9cf)}
.sx-section .survey-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.sx-section .survey-field{min-width:0;display:grid;gap:7px}.sx-section .survey-field>label{font-size:12px;font-weight:600}
.sx-section .survey-field input,.sx-section .survey-field select,.sx-section .survey-field textarea{background:var(--input-bg,var(--panel,#17283e));color:var(--text,#edf3fd);border:1px solid var(--border,#304461);border-radius:8px;padding:10px}
.sx-section .survey-na{font-size:11px}
.sx-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.sx-heading h3{font-size:15px;margin:0 0 5px}.sx-heading p{font-size:12px;color:var(--muted,#9fb1c5);margin:0}
.sx-message,.sx-empty{padding:22px;border-radius:10px;background:var(--panel-alt,var(--panel,#13233b));color:var(--muted,#aabace);font-size:12px}
.sx-rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:12px}
.sx-room{border:1px solid var(--border,#304461);border-radius:10px;padding:12px;display:grid;gap:8px;background:var(--panel-alt,var(--panel,#13243b));font-size:12px}
.sx-room small{color:var(--muted,#a7b8ca)}.sx-room p{margin:0;overflow-wrap:anywhere}
.sx-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.sx-photo-card{min-width:0;display:grid;gap:7px;border:1px solid var(--border,#304461);border-radius:12px;padding:9px;background:var(--panel-alt,var(--panel,#14273c));font-size:12px;overflow:hidden}
.sx-photo-card b,.sx-photo-card p{overflow-wrap:anywhere}.sx-photo-card p{margin:0}.sx-photo-card small{color:var(--muted,#a5b9ce)}
.sx-photo-preview{aspect-ratio:4/3;border-radius:8px;background:var(--input-bg,var(--panel,#18283b));overflow:hidden;display:grid;place-items:center}.sx-photo-preview img{width:100%;height:100%;object-fit:cover}.sx-document-symbol{font-size:32px}
.sx-upload-zone{border:1px dashed var(--accent,#529bff);border-radius:12px;min-height:100px;display:grid;place-items:center;padding:22px;cursor:pointer;text-align:center;font-size:12px;color:var(--muted,#aec3d9)}.sx-upload-zone.dragover{background:color-mix(in srgb,var(--accent,#529bff) 12%,transparent)}
.sx-prices{min-width:0;min-height:0;overflow:hidden;opacity:0;border-left:0 solid transparent;display:flex;flex-direction:column;transition:opacity 200ms ease}
.sx-prices.open{padding:14px;opacity:1;border-left:1px solid var(--border,#304461);background:var(--panel-alt,var(--panel,#0c1829));gap:12px}
.sx-price-head,.sx-price-tabs{display:flex;justify-content:space-between;align-items:center;gap:6px}.sx-price-head b{font-size:14px}
.sx-price-tabs .active{border-color:var(--accent,#529bff);color:var(--text,#f0f8ff)}
.sx-price-list{flex:1;min-height:0;overflow-y:auto;display:grid;align-content:start;gap:8px}
.sx-price-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px;border:1px solid var(--border,#304461);border-radius:10px;background:var(--panel,#14263e)}
.sx-price-row>div{min-width:0;display:grid;gap:4px}.sx-price-row b{font-size:12px}.sx-price-row small{font-size:11px;color:var(--muted,#adc0d4)}.sx-price-row strong{font-size:12px}.sx-price-row .mini{font-size:18px;color:var(--accent,#59a6ff)}
.sx-table-scroll{min-width:0;overflow:auto}.sx-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.sx-table th,.sx-table td{padding:9px 10px;border-bottom:1px solid var(--border,#304461);text-align:left}.sx-table th{background:var(--panel-alt,var(--panel,#162841));font-size:11px}.sx-table td b,.sx-table td small{display:block}.sx-table td small{color:var(--muted,#a6b9cf)}.sx-table .sx-quantity{max-width:88px;background:var(--input-bg,var(--panel,#14263e));border:1px solid var(--border,#304461);border-radius:6px;padding:6px;color:var(--text,#edf3fd)}.sx-total{margin-top:7px;text-align:right;font-size:12px;color:var(--text,#edf3fd)}
.sx-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.sx-footer{z-index:4;flex:0 0 auto;min-height:62px;padding:12px 18px;border-top:1px solid var(--border,#304461);display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--panel,#0d1b2f)}.sx-footer-msg{font-size:12px;color:var(--muted,#b5c5d9)}
@media(max-width:1150px){.sx-layout{grid-template-columns:58px minmax(0,1fr) 0}.sx-layout:has(.sx-prices.open){grid-template-columns:58px minmax(0,1fr) min(355px,42vw)}.sx-sidebar{padding:10px 5px}.sx-sidebar nav .sx-nav{justify-content:center}.sx-nav>span:nth-child(2),.sx-nav small,.sx-progress-panel{display:none}}
@media(max-width:780px){.sx-card{inset:5px;border-radius:10px}.sx-header{padding:9px;gap:8px;flex-wrap:wrap}.sx-header-tags{display:none}.sx-layout:has(.sx-prices.open){grid-template-columns:53px minmax(0,1fr)}.sx-prices.open{position:absolute;right:0;top:66px;bottom:62px;width:min(420px,calc(100% - 53px));box-shadow:0 0 22px rgba(0,0,0,.35);z-index:6}.sx-layout{grid-template-columns:53px minmax(0,1fr)}.sx-grid,.sx-section .survey-fields{grid-template-columns:minmax(0,1fr)}.sx-content{padding:10px}.sx-footer{padding:8px;flex-wrap:wrap}.sx-footer .btn{padding:7px 10px;font-size:11px}.sx-title small{max-width:170px}.sx-title h2{font-size:14px}}
@media(prefers-reduced-motion:reduce){.sx-card,.sx-layout,.sx-prices{transition:none!important}}

/* Auxiliary compact editor is on top of the expanded card, never behind it. */
body.sx-open #modalRoot:has(.modal-backdrop){position:fixed;inset:0;z-index:2700;pointer-events:none}
body.sx-open #modalRoot .modal-backdrop{pointer-events:auto}
body.sx-open .crm-user-dropdown{z-index:2800}
