*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#f8fafc;background:#0f1419;height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;overflow:hidden}#root{flex-direction:column;height:100vh;display:flex}.app-layout{background:#0f1419;flex-direction:column;height:100vh;display:flex}.app-body{flex:1;display:flex;overflow:hidden}.loading-screen{color:#7a8590;background:#1a2f3f;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100vh;display:flex}.app-header{z-index:1100;background:#1a2f3f;border-bottom:2px solid #fcd55b;flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:0 20px;display:flex}.top-bar-left{align-items:center;gap:16px;display:flex}.top-bar-brand{color:#fff;letter-spacing:.5px;font-size:17px}.top-bar-brand strong{font-style:italic;font-weight:900}.top-bar-brand em{font-style:italic;font-weight:300}.top-bar-appname{color:#fcd55b;letter-spacing:.15em;text-transform:uppercase;margin-left:6px;font-size:.72rem;font-style:normal;font-weight:400}.top-bar-right{align-items:center;gap:12px;display:flex}.tenant-pill-wrapper{position:relative}.tenant-pill{color:#fcd55b;cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;padding:3px 4px;font-size:.78rem;transition:opacity .15s;display:inline-flex}.tenant-pill:hover{opacity:.8}.tenant-dropdown{z-index:1300;background:#1a2f3f;border:1px solid #fcd55b40;border-radius:8px;min-width:180px;padding:6px 0;animation:.12s ease-out dropIn;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 32px #00000080}.tenant-option{color:#ffffffb3;cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:7px 14px;font-size:.82rem;transition:color .15s,background .15s;display:block}.tenant-option:hover{color:#fff;background:#ffffff14}.tenant-option.active{color:#fcd55b;cursor:default;font-weight:700}.tenant-name{color:#fcd55b;white-space:nowrap;font-size:.78rem}.user-menu-wrapper{position:relative}.user-menu-trigger{color:#ffffffb3;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;font-size:.82rem;transition:color .15s;display:inline-flex}.user-menu-trigger:hover{color:#fff}.caret{opacity:.5;font-size:.65rem;transition:transform .2s}.caret.open{transform:rotate(180deg)}.menu-backdrop{z-index:1200;position:fixed;inset:0}.user-menu-dropdown{z-index:1300;text-align:left;background:#1a2f3f;border:1px solid #fcd55b40;border-radius:8px;min-width:240px;max-width:280px;padding:16px;animation:.12s ease-out dropIn;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 32px #00000080}.um-header{margin-bottom:4px}.um-name{color:#f0f2f5;font-size:.85rem;font-weight:600}.um-email{color:#7a8590;text-overflow:ellipsis;margin-top:2px;font-size:.72rem;overflow:hidden}.um-role{color:#7a8590;text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font-size:.68rem}.um-divider{background:#fcd55b26;height:1px;margin:12px 0}.um-item{color:#7a8590;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:6px 0;font-size:.82rem;text-decoration:none;transition:color .15s;display:flex}.um-item:hover{color:#f0f2f5}.um-logout{font-weight:500;color:#f84747!important}@keyframes dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sidebar{color:#e5e7eb;background:#141d2a;border-right:1px solid #24313f;flex-direction:column;flex-shrink:0;width:264px;display:flex;overflow:hidden}.sidebar-header{border-bottom:1px solid #24313f;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.sidebar-title{text-transform:uppercase;letter-spacing:.1em;color:#7a8590;font-size:.68rem;font-weight:500}.sidebar-footer{border-top:1px solid #24313f;align-items:center;gap:8px;margin-top:auto;padding:12px 16px;display:flex}.status-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:8px;height:8px}.sidebar-tenant{color:#7a8590;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.form-list{flex:1;padding:8px 0;overflow-y:auto}.form-list-item{color:#f0f2f5b3;border-left:3px solid #0000;align-items:flex-start;gap:12px;padding:8px 16px;font-size:.85rem;text-decoration:none;transition:all .15s;display:flex}.form-list-item:hover{color:#f0f2f5;background:#1f2d3880}.form-list-item.active{color:#f0f2f5;background:#1f2d38;border-left-color:#fcd55b;font-weight:500}.form-list-item svg{color:#6b7a8d;flex-shrink:0;margin-top:2px}.form-list-item.active svg{color:#fcd55b}.form-list-item-info{flex-direction:column;gap:2px;display:flex}.form-list-item-title{font-size:13px;font-weight:500}.list-empty{color:#7a8590;padding:16px;font-size:13px}.main-content{background:#0f1419;flex-direction:column;flex:1;display:flex;overflow:hidden}.main-empty{color:#7a8590;flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#1a365d;background:#fbbf24;font-weight:600}.btn-primary:hover:not(:disabled){background:#f59e0b}.btn-ghost{color:#94a3b8;background:0 0}.btn-ghost:hover:not(:disabled){color:#cbd5e1;background:#33415566}.btn-danger{color:#c32d32;background:#c32d321f;border:1px solid #c32d324d}.btn-danger:hover:not(:disabled){background:#c32d3233}.btn-sm{color:#cbd5e1;cursor:pointer;background:#1e293bcc;border:1px solid #334155;border-radius:5px;align-items:center;gap:4px;padding:4px 10px;font-size:.8rem;transition:all .15s;display:flex}.btn-sm:hover{color:#f8fafc;background:#33415599}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.icon-btn{cursor:pointer;color:#6b7a8d;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;transition:all .15s;display:flex}.icon-btn:hover{color:#e8edf2;background:#ffffff0f}.btn-icon{cursor:pointer;color:#6b7a8d;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.btn-icon:hover{color:#e8edf2;background:#ffffff0f}.btn-icon.danger:hover{color:#f87171;background:#f8717126}.input{color:#f8fafc;background:#0f172a80;border:1px solid #334155;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-family:inherit;font-size:.875rem;transition:border-color .15s}.input:focus{border-color:#fbbf24}.input::placeholder{color:#64748b}.field-label{color:#6b7a8d;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;font-size:11px;display:block}.card{background:#1e293b;border:1px solid #334155;border-radius:10px;margin-bottom:12px;padding:16px;transition:box-shadow .15s}.card:hover{box-shadow:0 2px 12px #0000004d}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#1a2535;border:1px solid #253040;border-radius:12px;width:100%;max-width:520px;max-height:90vh;animation:.12s ease-out dropIn;overflow-y:auto}.modal-header{border-bottom:1px solid #253040;justify-content:space-between;align-items:center;padding:18px 20px 14px;display:flex}.modal-header h3{color:#e8edf2;margin:0;font-size:15px;font-weight:700}.modal-body{padding:20px}.modal-footer{border-top:1px solid #253040;align-items:center;gap:8px;padding:14px 20px;display:flex}.builder-layout{flex:1;display:flex;overflow:hidden}.builder-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.builder-toolbar{background:#141d2a;border-bottom:1px solid #24313f;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.builder-title-group{align-items:center;gap:8px;display:flex}.builder-title-input{color:#f8fafc;background:0 0;border:1px solid #0000;border-radius:6px;outline:none;min-width:200px;padding:4px 8px;font-size:1rem;font-weight:600;transition:border-color .15s}.builder-title-input:hover{border-color:#334155}.builder-title-input:focus{border-color:#fbbf24}.builder-slug{color:#64748b;font-family:monospace;font-size:12px}.builder-toolbar-right{align-items:center;gap:8px;display:flex}.page-tabs{background:#141d2a;border-bottom:1px solid #24313f;flex-shrink:0;align-items:center;gap:2px;padding:8px 20px 0;display:flex;overflow-x:auto}.page-tab{cursor:pointer;color:#7a8590;-webkit-user-select:none;user-select:none;background:#0f172a80;border:1px solid #24313f;border-bottom:none;border-radius:6px 6px 0 0;align-items:center;gap:4px;padding:6px 14px;font-size:13px;transition:all .15s;display:flex}.page-tab.active{color:#f8fafc;background:#1e293b;border-color:#334155}.page-tab-title{min-width:40px;color:inherit;outline:none}.page-tab-remove{cursor:pointer;color:#64748b;background:0 0;border:none;align-items:center;padding:0 2px;transition:color .15s;display:flex}.page-tab-remove:hover{color:#f87171}.page-tab-add{cursor:pointer;color:#64748b;background:0 0;border:1px dashed #334155;border-radius:6px;align-items:center;padding:4px 8px;transition:all .15s;display:flex}.page-tab-add:hover{color:#fcd55b;border-color:#fcd55b66}.field-list{flex-direction:column;flex:1;gap:6px;padding:16px 20px;display:flex;overflow-y:auto}.field-row{cursor:pointer;background:#1e293b;border:1px solid #24313f;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;display:flex}.field-row:hover{border-color:#334155}.field-row.selected{border-color:#fbbf24;box-shadow:0 0 0 2px #fbbf2426}.drag-handle{cursor:grab;color:#64748b;align-items:center;display:flex}.drag-handle:active{cursor:grabbing}.field-type-badge{text-transform:uppercase;color:#fcd55b;letter-spacing:.03em;background:#fcd55b1a;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:11px;font-weight:600}.field-label-text{color:#cbd5e1;flex:1;font-size:13px}.field-label-text em{color:#64748b;font-style:italic}.required-indicator{color:#f87171;font-size:15px;font-weight:700}.field-delete{opacity:0;transition:opacity .15s}.field-row:hover .field-delete{opacity:1}.field-list-empty{color:#7a8590;text-align:center;padding:16px 0;font-size:13px}.field-palette{background:#1a2535;border:1px solid #253040;border-radius:10px;max-height:480px;padding:12px;overflow-y:auto;box-shadow:0 4px 16px #0000004d}.field-palette-header{color:#e8edf2;border-bottom:1px solid #253040;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;font-size:13px;font-weight:600;display:flex}.field-palette-category{margin-bottom:12px}.field-palette-category-label{text-transform:uppercase;color:#7a8590;letter-spacing:.05em;margin-bottom:6px;font-size:11px;font-weight:700}.field-palette-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:4px;display:grid}.field-palette-item{cursor:pointer;color:#94a3b8;text-align:left;background:#0f172a80;border:1px solid #253040;border-radius:6px;align-items:center;gap:5px;padding:6px 8px;font-size:12px;transition:all .15s;display:flex}.field-palette-item:hover{color:#fcd55b;background:#fcd55b14;border-color:#fcd55b4d}.field-editor{background:#141d2a;border-left:1px solid #24313f;flex-direction:column;flex-shrink:0;width:280px;display:flex;overflow:hidden}.field-editor-header{color:#e8edf2;border-bottom:1px solid #24313f;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.field-editor-body{flex-direction:column;flex:1;gap:10px;padding:12px 16px;display:flex;overflow-y:auto}.form-label{color:#7a8590;flex-direction:column;gap:3px;font-size:12px;font-weight:500;display:flex}.checkbox-label{color:#cbd5e1;cursor:pointer;flex-direction:row;align-items:center;gap:6px;font-size:13px}.form-input{color:#f8fafc;background:#0f172a80;border:1px solid #334155;border-radius:6px;outline:none;padding:6px 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.form-input:focus{border-color:#fbbf24}.form-input[readonly]{color:#64748b;background:#0f172a4d}.form-section-title{text-transform:uppercase;color:#7a8590;letter-spacing:.05em;font-size:11px;font-weight:700}.options-editor{flex-direction:column;gap:6px;display:flex}.options-editor-header{justify-content:space-between;align-items:center;display:flex}.option-row{align-items:center;gap:4px;display:flex}.option-row .form-input{flex:1}.status-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:600}.status-draft{color:#7a8590;background:#6b7a8d26}.status-published{color:#22c55e;background:#22c55e26}.status-archived{color:#fbbf24;background:#fbbf2426}.status-select{color:#f8fafc;cursor:pointer;background:#0f172a80;border:1px solid #334155;border-radius:6px;outline:none;padding:4px 8px;font-size:13px;transition:border-color .15s}.status-select:focus{border-color:#fbbf24}.status-select option{color:#f8fafc;background:#1e293b}.btn-add-field{color:#7a8590;cursor:pointer;background:0 0;border:2px dashed #253040;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:4px;padding:8px 12px;font-size:13px;transition:all .15s;display:flex}.btn-add-field:hover{color:#fcd55b;border-color:#fcd55b66}.builder-section-tabs{background:#141d2a;border-bottom:2px solid #24313f;flex-shrink:0;align-items:center;gap:0;padding:0 20px;display:flex}.builder-section-tab{color:#7a8590;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s}.builder-section-tab:hover{color:#cbd5e1}.builder-section-tab.active{color:#fcd55b;border-bottom-color:#fcd55b}.renderer-wrap{color:#f8fafc;max-width:640px;margin:0 auto;padding:2rem 1.5rem;font-size:15px}.renderer-form-title{color:#f8fafc;margin-bottom:1.5rem;font-size:1.4rem;font-weight:700}.renderer-page-title{color:#cbd5e1;margin-bottom:1rem;font-size:1.1rem;font-weight:600}.renderer-field{flex-direction:column;gap:4px;margin-bottom:1.2rem;display:flex}.renderer-label{color:#cbd5e1;font-size:13px;font-weight:500}.renderer-required{color:#f87171}.renderer-help{color:#64748b;margin-top:2px;font-size:12px}.renderer-input{color:#f8fafc;background:#0f172a80;border:1px solid #334155;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.renderer-input:focus{border-color:#fbbf24}.renderer-input.input-error{border-color:#f87171}.renderer-textarea{resize:vertical;min-height:90px}.renderer-select{cursor:pointer;color:#f8fafc;background:#0f172a80}.renderer-select option{color:#f8fafc;background:#1e293b}.renderer-checkgroup,.renderer-radiogroup{flex-direction:column;gap:6px;display:flex}.renderer-check-label,.renderer-radio-label{cursor:pointer;color:#cbd5e1;align-items:center;gap:8px;font-size:14px;display:flex}.renderer-check-label input,.renderer-radio-label input{cursor:pointer}.input-error-border{border-radius:4px;outline:1px solid #f87171;padding:4px}.renderer-toggle-label{cursor:pointer;align-items:center;gap:10px;display:flex}.renderer-toggle{cursor:pointer;background:#334155;border-radius:12px;flex-shrink:0;width:44px;height:24px;transition:background .2s;position:relative}.renderer-toggle.on{background:#fbbf24}.renderer-toggle-thumb{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.renderer-toggle.on .renderer-toggle-thumb{transform:translate(20px)}.renderer-slider-wrap{align-items:center;gap:12px;display:flex}.renderer-slider{cursor:pointer;accent-color:#fbbf24;flex:1}.renderer-slider-val{text-align:right;color:#fbbf24;min-width:30px;font-size:14px;font-weight:600}.renderer-rating{gap:4px;display:flex}.renderer-star{cursor:pointer;color:#334155;background:0 0;border:none;padding:0;font-size:28px;line-height:1;transition:color .1s,transform .1s}.renderer-star:hover,.renderer-star.active{color:#fbbf24;transform:scale(1.15)}.renderer-signature-wrap{background:#0f172a80;border:1px solid #334155;border-radius:6px;flex-direction:column;gap:4px;display:inline-flex;overflow:hidden}.renderer-signature-canvas{touch-action:none;display:block}.renderer-sig-clear{cursor:pointer;color:#7a8590;background:0 0;border:1px solid #334155;border-radius:4px;align-self:flex-end;margin:4px 8px 6px;padding:3px 10px;font-size:12px;transition:all .15s}.renderer-sig-clear:hover{color:#f87171;background:#f871711a;border-color:#f871714d}.renderer-matrix-wrap{overflow-x:auto}.renderer-matrix{border-collapse:collapse;font-size:13px}.renderer-matrix th,.renderer-matrix td{text-align:center;border:1px solid #24313f;padding:6px 12px}.renderer-matrix th{color:#cbd5e1;background:#1e293b;font-weight:600}.renderer-matrix-row-label{text-align:left;color:#cbd5e1;white-space:nowrap;font-weight:500}.renderer-matrix-cell input{cursor:pointer}.renderer-group{border:1px solid #24313f;border-radius:8px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.renderer-group-legend{color:#cbd5e1;padding:0 4px;font-size:13px;font-weight:600}.renderer-repeater{flex-direction:column;gap:.75rem;display:flex}.renderer-repeater-item{background:#1e293b;border:1px solid #24313f;border-radius:8px;padding:1rem}.renderer-repeater-item-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.renderer-repeater-item-num{color:#7a8590;font-size:12px;font-weight:600}.renderer-repeater-remove{color:#f87171;cursor:pointer;background:0 0;border:1px solid #f871714d;border-radius:4px;padding:2px 8px;font-size:12px;transition:all .15s}.renderer-repeater-remove:hover{background:#f871711a}.renderer-repeater-add{color:#7a8590;cursor:pointer;text-align:center;background:0 0;border:2px dashed #253040;border-radius:8px;width:100%;padding:8px;font-size:13px;transition:all .15s}.renderer-repeater-add:hover{color:#fcd55b;border-color:#fcd55b66}.renderer-heading{margin-bottom:.5rem}.renderer-heading h3{color:#f8fafc;font-size:1rem;font-weight:700}.renderer-paragraph p{color:#cbd5e1;font-size:14px}.renderer-divider{border:none;border-top:1px solid #24313f;margin:.5rem 0}.renderer-unknown{color:#f87171;font-size:12px;font-style:italic}.renderer-error{color:#f87171;margin-top:2px;font-size:12px}.renderer-field.has-error .renderer-input{border-color:#f87171}.renderer-nav{border-top:1px solid #24313f;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1rem;display:flex}.renderer-step-indicator{color:#7a8590;font-size:12px}.renderer-nav-buttons{gap:8px;margin-left:auto;display:flex}.renderer-btn-back{cursor:pointer;color:#cbd5e1;background:#1e293bcc;border:1px solid #334155;border-radius:6px;padding:7px 16px;font-size:14px;transition:all .15s}.renderer-btn-back:hover{color:#f8fafc;background:#33415599}.renderer-btn-next{color:#1a365d;cursor:pointer;background:#fbbf24;border:none;border-radius:6px;padding:7px 16px;font-size:14px;font-weight:600;transition:background .15s}.renderer-btn-next:hover{background:#f59e0b}.renderer-btn-submit{color:#1a365d;cursor:pointer;background:#fbbf24;border:none;border-radius:6px;padding:7px 20px;font-size:14px;font-weight:600;transition:background .15s}.renderer-btn-submit:hover{background:#f59e0b}.renderer-btn-submit:disabled{opacity:.5;cursor:not-allowed}.renderer-submit-error{color:#f87171;background:#f871711a;border:1px solid #f8717133;border-radius:6px;margin-top:.75rem;padding:8px 12px;font-size:13px}.renderer-success{text-align:center;padding:3rem 2rem}.renderer-success-icon{color:#22c55e;background:#22c55e26;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 1rem;font-size:3rem;display:flex}.renderer-success p{color:#cbd5e1;font-size:15px}.renderer-file{color:#cbd5e1;font-size:13px}.json-editor-layout{flex:1;height:100%;display:flex;overflow:hidden}.json-editor-pane{border-right:1px solid #24313f;flex-direction:column;width:50%;display:flex;overflow:hidden}.json-editor-toolbar{background:#141d2a;border-bottom:1px solid #24313f;flex-shrink:0;align-items:center;gap:.75rem;padding:8px 16px;display:flex}.json-editor-title{color:#cbd5e1;flex:1;font-size:13px;font-weight:600}.json-parse-error{color:#f87171;flex:1;font-size:12px}.json-editor-textarea{resize:none;color:#f8fafc;background:#0f1419;border:none;outline:none;flex:1;padding:16px;font-family:SF Mono,Fira Code,monospace;font-size:12.5px;line-height:1.6}.json-editor-preview{flex-direction:column;width:50%;display:flex;overflow:hidden}.json-editor-preview-header{color:#cbd5e1;background:#141d2a;border-bottom:1px solid #24313f;flex-shrink:0;padding:8px 16px;font-size:13px;font-weight:600}.json-editor-preview-body{background:#0f1419;flex:1;overflow-y:auto}.json-preview-error{color:#f87171;padding:1.5rem}.json-preview-error pre{white-space:pre-wrap;word-break:break-all;margin-top:.5rem;font-size:11px}.submissions-wrap{flex-direction:column;flex:1;display:flex;overflow:hidden}.submissions-toolbar{background:#141d2a;border-bottom:1px solid #24313f;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.submissions-toolbar-right{align-items:center;gap:8px;display:flex}.submissions-count{color:#7a8590;font-size:13px;font-weight:500}.submissions-empty{color:#7a8590;flex:1;justify-content:center;align-items:center;padding:3rem;font-size:14px;display:flex}.submissions-error{color:#f87171}.submissions-table-wrap{flex:1;padding:16px 20px;overflow:auto}.submissions-table{border-collapse:collapse;width:100%;font-size:13px}.submissions-table th{text-align:left;color:#cbd5e1;white-space:nowrap;background:#141d2a;border-bottom:2px solid #24313f;padding:8px 12px;font-weight:600}.submissions-table td{vertical-align:middle;color:#cbd5e1;border-bottom:1px solid #1e293b;padding:8px 12px}.sub-row{cursor:pointer;transition:background .15s}.sub-row:hover{background:#1f2d3880}.sub-row.sub-row-expanded{background:#1e293b}.sub-col-expand{color:#64748b;width:24px}.sub-col-ts{white-space:nowrap;color:#7a8590;min-width:140px}.sub-col-actions{text-align:right;width:40px}.sub-col-more{color:#64748b;width:24px}.sub-cell-preview{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.sub-detail-row td{background:#1a2535;border-bottom:2px solid #24313f;padding:0}.sub-detail{flex-direction:column;gap:1rem;padding:16px 20px;display:flex}.sub-detail-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.sub-detail-field{flex-direction:column;gap:2px;display:flex}.sub-detail-label{text-transform:uppercase;letter-spacing:.04em;color:#7a8590;font-size:11px;font-weight:600}.sub-detail-value{color:#f8fafc;word-break:break-word;font-size:13px}.sub-detail-value em{color:#64748b;font-style:normal}.sub-detail-meta{color:#7a8590;border-top:1px solid #24313f;gap:1.5rem;padding-top:8px;font-size:11px;display:flex}.sub-detail-meta code{color:#fcd55b;font-family:SF Mono,Fira Code,monospace}.preview-modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:flex-start;padding:2rem;display:flex;position:fixed;inset:0;overflow-y:auto}.preview-modal{background:#1a2535;border:1px solid #253040;border-radius:12px;flex-direction:column;width:100%;max-width:680px;max-height:calc(100vh - 4rem);display:flex;overflow:hidden;box-shadow:0 20px 60px #00000080}.preview-modal-header{border-bottom:1px solid #253040;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.preview-modal-title{color:#e8edf2;font-size:14px;font-weight:600}.preview-modal-body{flex:1;overflow-y:auto}.no-tenant-screen{background:#0f1419;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.no-tenant-card{text-align:center;color:#cbd5e1;background:#1a2535;border:1px solid #253040;border-radius:16px;max-width:480px;padding:48px}.no-tenant-card h1{text-transform:uppercase;letter-spacing:2px;color:#fcd55b;margin-bottom:24px;font-size:14px}.no-tenant-icon{margin-bottom:16px;font-size:48px}.no-tenant-card h2{color:#f8fafc;margin-bottom:12px;font-size:22px}.no-tenant-card p{color:#7a8590;margin-bottom:24px;font-size:14px;line-height:1.6}.no-tenant-card code{color:#fcd55b;background:#fcd55b1a;border-radius:4px;padding:2px 6px;font-size:12px}.no-tenant-details{color:#64748b;justify-content:center;gap:16px;margin-bottom:24px;font-size:12px;display:flex}.no-tenant-logout{color:#cbd5e1;background:#1e293bcc;border:1px solid #334155;border-radius:8px;padding:10px 24px;font-size:14px;text-decoration:none;transition:all .15s;display:inline-block}.no-tenant-logout:hover{color:#f8fafc;background:#33415599}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#334155;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#475569}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.chat-toggle-btn{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:6px;transition:color .15s;display:flex}.chat-toggle-btn:hover{color:#fff}.chat-toggle-btn.active{color:#fcd55b}.app-body.chat-open{margin-right:var(--chat-width,440px)}@media (width<=639px){.app-body.chat-open{margin-right:0}}.chat-panel{z-index:1050;background:#0f1419;border-left:1px solid #24313f;flex-direction:column;width:440px;min-width:360px;max-width:70vw;animation:.18s ease-out slideInRight;display:flex;position:fixed;top:52px;bottom:0;right:0;box-shadow:-8px 0 32px #0000004d}.chat-resize-handle{cursor:col-resize;z-index:1051;background:0 0;width:8px;height:100%;transition:background .15s;position:absolute;top:0;left:-4px}.chat-resize-handle:hover,.chat-resize-handle.active{background:linear-gradient(90deg,#0000 0%,#fcd55b40 50%,#0000 100%)}@keyframes slideInRight{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@media (width<=639px){.chat-panel{min-width:0;max-width:100%;top:52px;width:100%!important}.chat-resize-handle{display:none}}.chat-panel-header{background:#141d2a;border-bottom:1px solid #24313f;flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 16px;display:flex}.chat-panel-title{color:#f0f2f5;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.chat-panel-title svg{color:#fcd55b}.chat-close-btn{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;transition:color .15s;display:flex}.chat-close-btn:hover{color:#fff}.chat-panel-messages{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.chat-welcome{text-align:center;color:#7a8590;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;display:flex}.chat-welcome-icon{color:#7a8590;opacity:.4}.chat-welcome p{font-size:13px;line-height:1.5}.chat-hint{opacity:.6;font-size:11px}.chat-msg{display:flex}.chat-msg.user{justify-content:flex-end}.chat-msg.assistant{justify-content:flex-start}.chat-bubble{border-radius:10px;max-width:85%;padding:9px 13px;font-size:13px;line-height:1.55}.chat-bubble.user{color:#fff;white-space:pre-wrap;word-break:break-word;background:#4f9eff}.chat-bubble.assistant{color:#f0f2f5;word-break:break-word;background:#1f2d38;border:1px solid #24313f}.chat-typing{color:#7a8590;align-items:center;gap:6px;min-width:48px;display:flex}.chat-bubble.assistant .chat-h1{margin:8px 0 4px;font-size:15px;font-weight:700}.chat-bubble.assistant .chat-h2{margin:8px 0 4px;font-size:14px;font-weight:700}.chat-bubble.assistant .chat-h3{margin:6px 0 3px;font-size:13px;font-weight:600}.chat-bubble.assistant .chat-h4{text-transform:uppercase;letter-spacing:.04em;color:#7a8590;margin:6px 0 3px;font-size:12px;font-weight:600}.chat-bubble.assistant .chat-spacer{height:6px}.chat-bubble.assistant .chat-li{align-items:flex-start;gap:6px;margin:2px 0;padding-left:4px;display:flex}.chat-bubble.assistant .chat-li-bullet,.chat-bubble.assistant .chat-li-num{color:#7a8590;flex-shrink:0;line-height:1.55}.chat-bubble.assistant .chat-li-content{word-break:break-word;flex:1;min-width:0}.chat-bubble.assistant .chat-code{color:#fcd55b;background:#0000004d;border-radius:3px;padding:1px 5px;font-family:SF Mono,Fira Code,monospace;font-size:12px}.chat-bubble.assistant .chat-hr{border:none;border-top:1px solid #24313f;margin:6px 0}.chat-bubble.assistant .chat-table{border-collapse:collapse;white-space:nowrap;max-width:100%;margin:4px 0;font-size:12px;display:block;overflow-x:auto}.chat-bubble.assistant .chat-table td{color:#e2e8f0;white-space:normal;border:1px solid #24313f;padding:4px 8px}.chat-tools{flex-wrap:wrap;gap:6px;padding:2px 0;display:flex}.chat-tool-chip{color:#7a8590;background:#141d2a;border:1px solid #24313f;border-radius:20px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;display:inline-flex}.chat-tool-chip.running{color:#fcd55b;background:#fcd55b0f;border-color:#fcd55b4d}.chat-tool-chip.done{color:#22c55e;background:#22c55e0f;border-color:#22c55e4d}.chat-panel-input{background:#141d2a;border-top:1px solid #24313f;flex-shrink:0;padding:12px}.chat-input-row{align-items:flex-end;gap:8px;display:flex}.chat-textarea{resize:none;color:#f0f2f5;background:#0f1419;border:1px solid #24313f;border-radius:8px;outline:none;flex:1;min-height:36px;max-height:120px;padding:8px 12px;font-family:inherit;font-size:13px;line-height:1.5;transition:border-color .15s;overflow-y:auto}.chat-textarea:focus{border-color:#fcd55b66}.chat-textarea::placeholder{color:#4a5568}.chat-textarea:disabled{opacity:.5;cursor:not-allowed}.chat-send-btn{color:#1a2f3f;cursor:pointer;background:#fcd55b;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:8px 10px;font-weight:700;transition:background .15s;display:flex}.chat-send-btn:hover:not(:disabled){background:#f5c832}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-footer-hint{color:#4a5568;text-align:center;margin-top:6px;font-size:10px}
