.subitems-tab{padding:12px 0}.subitems-tab-loading{text-align:center;padding:24px}.subitems-spinner{border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;margin:0 auto 8px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.subitems-loading-text{color:var(--text-secondary);font-size:13px}.subitems-empty{text-align:center;color:var(--text-secondary);padding:32px 16px}.subitems-empty-icon{opacity:.5;margin-bottom:8px;font-size:28px}.subitems-empty-text{color:var(--text-secondary);font-size:13px}.subitems-list{flex-direction:column;gap:1px;display:flex}.subitems-row{border-radius:4px;justify-content:space-between;align-items:center;padding:6px 12px;font-size:13px;display:flex}.subitems-row:hover{background:var(--hover)}.subitems-row-title{color:var(--text-primary)}.subitems-row-meta{color:var(--text-muted,var(--text-secondary));font-size:11px}.subitems-create{gap:8px;margin-top:12px;padding:0 12px;display:flex}.subitems-create-input{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);border-radius:4px;outline:none;flex:1;padding:4px 8px;font-size:13px}.subitems-create-input:focus{border-color:var(--accent)}.subitems-create-btn{background:var(--accent);color:var(--accent-fg);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:4px 12px;font-size:13px;transition:opacity .15s}.subitems-create-btn:hover:not(:disabled){opacity:.9}.subitems-create-btn:disabled{opacity:.5;cursor:not-allowed}
.linked-rows-panel{padding:16px;overflow-y:auto}.linked-rows-section{margin-bottom:20px}.linked-rows-section:last-child{margin-bottom:0}.linked-rows-section-header{flex-direction:row;align-items:center;gap:8px;margin-bottom:8px;display:flex}.linked-rows-section-name{color:var(--text-primary);font-size:13px;font-weight:600}.linked-rows-count-badge{background:var(--bg-tertiary,var(--bg-secondary));color:var(--text-muted);border-radius:10px;padding:2px 6px;font-size:11px;font-weight:500;line-height:1.4;display:inline-block}.linked-rows-cards{flex-direction:column;gap:8px;display:flex}.linked-record-card{background:var(--bg-secondary);border:1px solid var(--border-color,var(--border));border-radius:6px;padding:10px 12px;font-size:13px}.linked-record-primary{color:var(--text-primary);word-break:break-word;font-weight:500}.linked-record-id{color:var(--text-muted);margin-top:2px;font-family:monospace;font-size:11px}.linked-rows-empty,.linked-rows-loading,.linked-rows-error{text-align:center;color:var(--text-muted);padding:12px 0;font-size:13px}.linked-rows-error{color:var(--danger,var(--text-muted))}
.fh-overlay{z-index:1000;background:#0000004d;justify-content:flex-end;display:flex;position:fixed;inset:0}.fh-drawer{background:var(--bg-surface);width:480px;max-width:95vw;height:100%;color:var(--color-text-primary);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:1001;outline:none;flex-direction:column;animation:.2s ease-out fh-slide-in;display:flex;position:relative}@keyframes fh-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.fh-drawer{animation:none}}.fh-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;height:48px;padding:12px 16px;display:flex}.fh-header-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fh-title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600;line-height:1.2}.fh-subtitle{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;line-height:1.4;overflow:hidden}.fh-close{width:30px;height:30px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:22px;line-height:1;display:flex}.fh-close:hover{background:var(--bg-hover);color:var(--color-text-primary)}.fh-body{flex-direction:column;flex:1;gap:8px;padding:12px 16px;display:flex;overflow-y:auto}.fh-entry{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;flex-direction:column;gap:8px;padding:12px;display:flex}.fh-entry:hover{background:var(--bg-hover)}.fh-entry-meta{align-items:center;gap:8px;min-width:0;display:flex}.fh-avatar{background:var(--bg-surface2);width:24px;height:24px;color:var(--color-text-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex;overflow:hidden}.fh-avatar--initials{text-transform:uppercase}.fh-entry-name{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5;overflow:hidden}.fh-entry-dot{color:var(--color-text-tertiary);flex-shrink:0;padding:0 6px}.fh-entry-time{color:var(--color-text-secondary);flex-shrink:0;font-size:13px;font-weight:400;line-height:1.5}.fh-source-badge{border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:500;line-height:1.4}.fh-source-badge--user{background:var(--badge-info-bg);color:var(--badge-info-fg)}.fh-source-badge--agent{background:var(--badge-warning-bg);color:var(--badge-warning-fg)}.fh-source-badge--import{background:var(--bg-surface2);color:var(--color-text-secondary)}.fh-source-badge--revert{background:var(--color-primary-subtle);color:var(--color-primary)}.fh-revert-btn{border:1px solid var(--color-text-tertiary);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:500}.fh-revert-btn:hover:not(:disabled){background:var(--color-primary-subtle);color:var(--color-primary);border-color:var(--color-primary)}.fh-revert-btn:active:not(:disabled){background:var(--color-primary-active);color:var(--color-text-primary)}.fh-revert-btn:disabled{opacity:.5;cursor:not-allowed}.fh-entry-diff{align-items:stretch;gap:8px;display:flex}.fh-pane{word-break:break-word;border-radius:4px;flex:1;min-width:0;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.5}.fh-pane--before{background:var(--badge-danger-bg);color:var(--badge-danger-fg)}.fh-pane--after{background:var(--status-done-bg-subtle);color:var(--status-done-text-subtle)}.fh-empty-val{color:var(--color-text-tertiary);font-style:italic}.fh-arrow{color:var(--color-text-tertiary);flex:none;align-items:center;padding:0 8px;font-size:14px;display:flex}.fh-skeleton{background:var(--bg-hover);background-image:linear-gradient(90deg, var(--bg-hover) 0%, var(--bg-surface2) 50%, var(--bg-hover) 100%);background-size:200% 100%;border-radius:6px;height:60px;animation:1.4s linear infinite fh-skeleton-sweep}@keyframes fh-skeleton-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.fh-skeleton{animation:none}}.fh-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-top:64px;padding:24px;display:flex}.fh-empty-icon{color:var(--color-text-tertiary);display:inline-flex}.fh-empty-heading{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:600;line-height:1.2}.fh-empty-body{color:var(--color-text-secondary);max-width:320px;margin:0;font-size:13px;font-weight:400;line-height:1.5}.fh-error-banner{background:var(--badge-danger-bg);color:var(--badge-danger-fg);border-radius:4px;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.5;display:flex}.fh-error-retry-btn{border:1px solid var(--color-text-tertiary);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:4px;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:500}.fh-error-retry-btn:hover{background:var(--color-primary-subtle);color:var(--color-primary);border-color:var(--color-primary)}.fh-load-more{background:var(--bg-surface);border:1px solid var(--border);width:calc(100% - 32px);height:32px;color:var(--color-text-primary);cursor:pointer;border-radius:4px;align-self:center;font-size:13px;font-weight:500}.fh-load-more:hover:not(:disabled){background:var(--bg-hover)}.fh-load-more:disabled{opacity:.6;cursor:not-allowed}.fh-end{text-align:center;color:var(--color-text-tertiary);padding:12px 0;font-size:12px;font-weight:400;line-height:1.4}.fh-drawer .sr-only,.fh-entry .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:768px){.fh-drawer{width:100vw;max-width:100vw}.fh-header{padding:12px}.fh-entry{padding:10px}.fh-entry-diff{flex-direction:column}.fh-arrow{padding:8px 0;transform:rotate(90deg)}.fh-revert-btn{display:none}.fh-load-more{width:calc(100% - 24px)}}.fh-band-list-root{flex-direction:column;gap:4px;display:flex}.fh-band{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;overflow:hidden}.fh-band-toggle{cursor:pointer;width:100%;color:var(--color-text-primary);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.5;display:flex}.fh-band-toggle:hover{background:var(--bg-hover)}.fh-band-chevron{color:var(--color-text-tertiary);flex-shrink:0;justify-content:center;width:12px;display:inline-flex}.fh-band-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-primary);flex:1;overflow:hidden}.fh-band-count{color:var(--color-text-secondary);flex-shrink:0;margin-left:auto;font-size:12px;font-weight:400}.fh-band-list{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:8px 12px 12px;display:flex}.fh-band-loading,.fh-band-empty,.fh-band-error{color:var(--color-text-secondary);text-align:center;padding:8px 0;font-size:12px;font-weight:400}.fh-band-error{color:var(--badge-danger-fg)}
.row-expand-overlay{z-index:1000;background:#0000004d;justify-content:flex-end;display:flex;position:fixed;inset:0}.row-expand-panel{background:var(--bg-surface);width:480px;max-width:95vw;height:100%;color:var(--text-primary);border-left:1px solid var(--border);outline:none;flex-direction:column;animation:.2s ease-out row-expand-slide-in;display:flex;position:relative;box-shadow:-4px 0 24px #0003}.row-expand-panel--split{width:801px}@keyframes row-expand-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.row-expand-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.row-expand-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:16px;font-weight:600;overflow:hidden}.row-expand-header-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.row-expand-icon-btn{cursor:pointer;width:30px;height:30px;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.row-expand-icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.row-expand-icon-btn--active{color:var(--accent)}.row-expand-icon-btn--danger{color:var(--danger)}.row-expand-close{cursor:pointer;width:30px;height:30px;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:background-color .15s,color .15s;display:flex}.row-expand-close:hover{background:var(--bg-hover);color:var(--text-primary)}.rep-body-split{flex-direction:row;flex:1;min-height:0;display:flex;overflow:hidden}.rep-left-pane{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.row-expand-tabs{border-bottom:1px solid var(--border);flex-shrink:0;padding:0 16px;display:flex}.row-expand-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s}.row-expand-tab:hover{color:var(--text-primary)}.row-expand-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.rep-left-body{flex:1;padding:12px 16px;overflow-y:auto}.rep-right-pane{border-left:1px solid var(--border);background:var(--bg-base);flex-direction:column;flex-shrink:0;width:320px;display:flex}.rep-right-pane-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;padding:0 8px;display:flex}.rep-right-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;font-size:12px;font-weight:500;transition:color .15s,border-color .15s}.rep-right-tab:hover{color:var(--text-primary)}.rep-right-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.rep-right-pane-body{flex-direction:column;flex:1;display:flex;overflow-y:auto}.field-row{border-bottom:1px solid var(--border-light);padding:10px 0}.field-row:last-child{border-bottom:none}.field-row__label{color:var(--text-secondary);align-items:center;gap:4px;margin-bottom:4px;font-size:12px;font-weight:500;display:flex}.field-row__value{color:var(--text-primary);word-break:break-word;font-size:14px}.field-row__input{border:1px solid var(--border-input);box-sizing:border-box;width:100%;color:var(--text-primary);background:var(--bg-base);border-radius:4px;outline:none;padding:6px 8px;font-family:inherit;font-size:14px}.field-row__input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb,59, 130, 246), .15)}.field-row__status{color:var(--text-muted);margin-top:2px;font-size:11px}[data-theme=dark] .row-expand-overlay{background:#0009}.rep-toast{background:var(--color-bg-surface-3);border:1px solid var(--color-border);color:var(--color-text-primary);z-index:10;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13px;animation:.15s ease-out rep-toast-in;display:flex;position:absolute;bottom:16px;left:16px;right:16px;box-shadow:0 4px 16px #0006}@keyframes rep-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rep-toast-msg{font-weight:500}.rep-toast-undo-btn{border:1px solid var(--color-border);cursor:pointer;color:var(--color-text-primary);background:0 0;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:500;transition:background .15s}.rep-toast-undo-btn:hover{background:var(--color-bg-surface-4)}.rep-toast-undo-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.row-field--highlight{animation:1.5s ease-out row-field-flash}@keyframes row-field-flash{0%{background-color:var(--color-primary-subtle,#4f7ef82e)}80%{background-color:var(--color-primary-subtle,#4f7ef814)}to{background-color:#0000}}@media (prefers-reduced-motion:reduce){.row-field--highlight{animation:1.5s linear row-field-flash-static}@keyframes row-field-flash-static{0%,80%{background-color:var(--color-primary-subtle,#4f7ef81f)}to{background-color:#0000}}}
.enr-modal-overlay{z-index:10000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.enr-modal{background:var(--bg-primary);max-width:800px;max-height:85vh;color:var(--text-primary);border-radius:8px;flex-direction:column;padding:24px;display:flex;overflow:hidden;box-shadow:0 16px 48px #00000080}.enr-modal-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.enr-modal-title{margin:0;font-size:18px;font-weight:600;line-height:1.2}.enr-modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:20px;line-height:1}.enr-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.enr-modal-close:disabled{opacity:.5;cursor:not-allowed}.enr-modal-body{flex:auto;overflow-y:auto}.enr-modal-footer{border-top:1px solid var(--border-primary);align-items:center;gap:8px;padding-top:16px;display:flex}.enr-modal-footer-spacer{flex:1}.enr-loading{color:var(--text-secondary);padding:24px;font-size:13px;line-height:1.5}.enr-empty{text-align:center;padding:32px 24px}.enr-empty-title{color:var(--text-primary);margin:0 0 8px;font-size:14px;font-weight:600;line-height:1.3}.enr-empty-body{color:var(--text-secondary);margin:0;font-size:13px;font-weight:400;line-height:1.5}.enr-error{background:var(--bg-danger-subtle);color:var(--text-danger);border-radius:4px;margin-bottom:12px;padding:8px 12px;font-size:13px;line-height:1.5}.enr-summary-line{background:var(--bg-tertiary);color:var(--text-primary);border-radius:4px;margin-bottom:12px;padding:8px 12px;font-size:14px;font-weight:600;line-height:1.3}.enr-diff-table{border-collapse:collapse;width:100%;font-size:13px}.enr-diff-label,.enr-diff-checkbox-header{text-align:left;border-bottom:1px solid var(--border-primary);color:var(--text-secondary);text-transform:uppercase;padding:8px 10px;font-size:11px;font-weight:600}.enr-diff-row td{border-bottom:1px solid var(--border-secondary);color:var(--text-primary);vertical-align:middle;padding:6px 10px}.enr-diff-checkbox{white-space:nowrap;width:1%}.enr-diff-checkbox input[type=checkbox]{accent-color:var(--accent-primary);cursor:pointer;width:16px;height:16px}.enr-diff-checkbox input[type=checkbox]:disabled{cursor:not-allowed}.enr-diff-field-name{color:var(--text-primary);font-weight:500}.enr-diff-before{color:var(--text-secondary);text-overflow:ellipsis;max-width:200px;text-decoration:line-through;overflow:hidden}.enr-diff-after{color:var(--text-success);text-overflow:ellipsis;align-items:center;gap:8px;max-width:200px;font-weight:600;display:flex;overflow:hidden}.enr-diff-logo{object-fit:cover;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;min-width:28px;height:28px;display:inline-flex}.enr-diff-logo-fallback{background:var(--bg-tertiary);color:var(--accent-primary);text-transform:uppercase;font-size:11px;font-weight:600}.enr-conflict-badge{background:var(--bg-warning-subtle);border:1px solid var(--text-warning);color:var(--text-warning);white-space:nowrap;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.enr-btn-primary,.enr-btn-secondary{border:1px solid var(--border-primary);cursor:pointer;border-radius:6px;padding:8px 16px;font-size:14px}.enr-btn-primary:disabled,.enr-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.enr-btn-primary{background:var(--accent-primary);color:var(--text-inverse);border-color:var(--accent-primary)}.enr-btn-primary:hover:not(:disabled){background:var(--accent-primary-hover,var(--accent-primary))}.enr-btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.enr-btn-secondary:hover:not(:disabled){background:var(--bg-hover)}
.benr-row-list{margin:0;padding:0;list-style:none}.benr-row{border-bottom:1px solid var(--border-secondary)}.benr-row:last-child{border-bottom:none}.benr-row-header{cursor:pointer;align-items:center;gap:8px;padding:12px 16px;display:flex}.benr-row-header:hover{background:var(--bg-hover)}.benr-row-header input[type=checkbox]{accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0;width:16px;height:16px}.benr-row-header input[type=checkbox]:disabled{cursor:not-allowed}.benr-row-primary{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:0 240px;min-width:0;max-width:240px;font-size:14px;font-weight:600;line-height:1.3;overflow:hidden}.benr-chip{background:var(--bg-tertiary);color:var(--text-secondary);white-space:nowrap;border-radius:12px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:600}.benr-skeleton-chip{background:var(--bg-tertiary);border-radius:12px;flex-shrink:0;width:96px;height:16px;animation:1.5s ease-in-out infinite benr-pulse}.benr-status-icon{flex-shrink:0}.benr-status-icon--pending{color:var(--text-secondary);animation:.8s linear infinite benr-spin}.benr-status-icon--ready{color:var(--text-success)}.benr-status-icon--empty{color:var(--text-secondary)}.benr-status-icon--error,.benr-status-icon--billing-error{color:var(--text-danger)}.benr-status-icon--skipped{color:var(--text-warning)}.benr-chevron{color:var(--text-secondary);flex-shrink:0;transition:transform .15s}.benr-chevron--expanded{transform:rotate(90deg)}.benr-row-expanded{padding-left:16px}@keyframes benr-spin{to{transform:rotate(360deg)}}@keyframes benr-pulse{0%,to{opacity:1}50%{opacity:.4}}
.share-modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.share-modal-card{background:var(--bg-primary);border-radius:12px;width:100%;max-width:520px;max-height:80vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.share-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.share-modal-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.share-modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 4px;font-size:24px;line-height:1;transition:color .15s}.share-modal-close:hover{color:var(--text-label)}.share-modal-body{padding:20px 24px 24px}.share-modal-loading{text-align:center;color:var(--text-secondary);padding:32px 0;font-size:14px}.share-modal-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.share-modal-create{text-align:center;padding:16px 0}.share-modal-desc{color:var(--text-secondary);margin:0 0 20px;font-size:14px;line-height:1.5}.share-modal-section{margin-bottom:20px}.share-modal-label{color:var(--text-label);margin-bottom:4px;font-size:13px;font-weight:600}.share-modal-sublabel{color:var(--text-muted);font-size:12px}.share-modal-url-row{gap:8px;margin-top:6px;display:flex}.share-modal-url{border:1px solid var(--border-input);background:var(--bg-secondary);color:var(--text-label);border-radius:6px;outline:none;flex:1;min-width:0;padding:8px 12px;font-family:monospace;font-size:13px}.share-modal-url:focus{border-color:var(--accent)}.share-modal-embed-row{align-items:flex-start;gap:8px;margin-top:6px;display:flex}.share-modal-embed-textarea{border:1px solid var(--border-input);background:var(--bg-secondary);color:var(--text-label);resize:none;border-radius:6px;outline:none;flex:1;padding:8px 12px;font-family:monospace;font-size:12px;line-height:1.5}.share-modal-embed-textarea:focus{border-color:var(--accent)}.share-modal-toggle-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.share-modal-toggle{flex-shrink:0;width:40px;height:22px;display:inline-block;position:relative}.share-modal-toggle input{opacity:0;width:0;height:0}.share-modal-toggle-slider{background:var(--border-input);cursor:pointer;border-radius:22px;transition:background .2s;position:absolute;inset:0}.share-modal-toggle-slider:before{content:"";background:var(--bg-primary);border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.share-modal-toggle input:checked+.share-modal-toggle-slider{background:var(--accent)}.share-modal-toggle input:checked+.share-modal-toggle-slider:before{transform:translate(18px)}.share-modal-toggle input:disabled+.share-modal-toggle-slider{opacity:.5;cursor:not-allowed}.share-modal-password-row{gap:8px;margin-top:8px;margin-bottom:20px;display:flex}.share-modal-password-input{border:1px solid var(--border-input);border-radius:6px;outline:none;flex:1;padding:8px 12px;font-size:13px}.share-modal-password-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #3b82f61a}.share-modal-field-error{color:var(--danger);margin-top:4px;font-size:13px}.share-modal-logo-preview{gap:8px;margin-top:8px;display:flex}.share-modal-logo-swatch-wrap{flex-direction:column;gap:4px;display:flex}.share-modal-logo-swatch-caption{color:var(--text-muted);font-size:12px}.share-modal-logo-swatch{border:1px solid var(--border-input);border-radius:6px;justify-content:center;align-items:center;width:160px;height:56px;display:flex;overflow:hidden}.share-modal-logo-swatch--error{border-color:color-mix(in srgb, var(--danger) 35%, transparent)}.share-modal-logo-swatch-img{object-fit:contain;max-width:120px;height:28px}.share-modal-logo-fallback-text{color:var(--text-secondary);font-size:12px}.share-modal-delete-row{border-top:1px solid var(--border-color);margin-top:4px;padding-top:16px}.share-modal-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s}.share-modal-btn:disabled{opacity:.5;cursor:not-allowed}.share-modal-btn--primary{background:var(--accent);color:var(--accent-fg)}.share-modal-btn--primary:hover:not(:disabled){background:var(--link-color)}.share-modal-btn--secondary{background:var(--hover);color:var(--text-label);border:1px solid var(--border-input)}.share-modal-btn--secondary:hover:not(:disabled){background:var(--border-color)}.share-modal-btn--danger{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.share-modal-btn--danger:hover:not(:disabled){background:#fee2e2}@media (max-width:560px){.share-modal-card{max-width:calc(100% - 32px);margin:16px}}[data-theme=dark] .share-modal-card{background:var(--bg-modal);box-shadow:0 8px 32px #0006}[data-theme=dark] .share-modal-header{border-bottom-color:var(--border-color)}[data-theme=dark] .share-modal-title{color:var(--text-primary)}[data-theme=dark] .share-modal-close{color:var(--text-muted)}[data-theme=dark] .share-modal-close:hover{color:var(--text-primary)}[data-theme=dark] .share-modal-loading{color:var(--text-secondary)}[data-theme=dark] .share-modal-error{background:#dc26261a;border-color:#dc26264d}[data-theme=dark] .share-modal-desc{color:var(--text-secondary)}[data-theme=dark] .share-modal-label{color:var(--text-label)}[data-theme=dark] .share-modal-sublabel{color:var(--text-muted)}[data-theme=dark] .share-modal-url,[data-theme=dark] .share-modal-embed-textarea{background:var(--bg-secondary);border-color:var(--border-input);color:var(--text-primary)}[data-theme=dark] .share-modal-toggle-slider{background:var(--border-input)}[data-theme=dark] .share-modal-password-input{background:var(--bg-secondary);border-color:var(--border-input);color:var(--text-primary)}[data-theme=dark] .share-modal-delete-row{border-top-color:var(--border-color)}[data-theme=dark] .share-modal-btn--secondary{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .share-modal-btn--secondary:hover:not(:disabled){background:var(--hover)}[data-theme=dark] .share-modal-btn--danger{background:#dc26261a;border-color:#dc26264d}[data-theme=dark] .share-modal-btn--danger:hover:not(:disabled){background:#dc262633}
.calendar-legend-bar{background:var(--color-bg-surface-1,var(--bg-secondary,#fff));border-bottom:1px solid var(--color-border,var(--grid-border-color,#e5e7eb));flex-wrap:wrap;align-items:center;gap:12px;min-height:40px;padding:8px 16px;display:flex}.calendar-legend-bar--empty{justify-content:center}.calendar-legend-hint{color:var(--text-muted,var(--text-secondary,#6b7280));font-size:11px;font-style:italic}.calendar-legend-chip{background:var(--color-bg-surface-2,var(--bg-tertiary,#f3f4f6));border:1px solid var(--color-border,var(--grid-border-color,#e5e7eb));color:var(--text-primary,#111827);border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.calendar-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.calendar-legend-label{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.calendar-legend-remove{cursor:pointer;width:12px;height:12px;color:var(--text-muted,var(--text-secondary,#6b7280));background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.calendar-legend-remove:hover{color:var(--danger,#ef4444)}.calendar-legend-overflow{color:var(--text-muted,var(--text-secondary,#6b7280));cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;font-style:italic;font-weight:600}.calendar-legend-overflow:hover{color:var(--color-primary,#4f7ef8)}.calendar-legend-add{color:var(--color-primary,#4f7ef8);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-size:11px;font-weight:600}.calendar-legend-add:hover{text-decoration:underline}.calendar-legend-cap{color:var(--text-muted,var(--text-secondary,#6b7280));margin-left:auto;font-size:11px}
.calendar-configurator-panel{background:var(--color-bg-surface-1,var(--bg-primary,#fff));border-left:1px solid var(--color-border,var(--grid-border-color,#e5e7eb));z-index:20;flex-direction:column;width:320px;height:100%;animation:.2s ease-out calendar-configurator-slide-in;display:flex;position:absolute;top:0;right:0;box-shadow:-2px 0 8px #00000014}@keyframes calendar-configurator-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.calendar-configurator-header{border-bottom:1px solid var(--color-border,var(--grid-border-color,#e5e7eb));justify-content:space-between;align-items:center;padding:24px 16px 16px;display:flex}.calendar-configurator-title{color:var(--text-primary,#111827);margin:0;font-size:16px;font-weight:600}.calendar-configurator-close{cursor:pointer;width:24px;height:24px;color:var(--text-muted,var(--text-secondary,#6b7280));background:0 0;border:none;padding:0;font-size:18px;line-height:1}.calendar-configurator-close:hover{color:var(--text-primary,#111827)}.calendar-configurator-body{flex:1;padding:16px;overflow-y:auto}.calendar-configurator-section{margin-bottom:16px}.calendar-configurator-section-heading{color:var(--text-primary,#111827);margin:0 0 8px;font-size:13px;font-weight:600}.calendar-configurator-label{color:var(--text-primary,#111827);margin-bottom:4px;font-size:13px;font-weight:600;display:block}.calendar-configurator-select,.calendar-configurator-add-select{border:1px solid var(--color-border,var(--grid-border-color,#e5e7eb));background:var(--color-bg-surface-2,var(--bg-secondary,#f9fafb));width:100%;color:var(--text-primary,#111827);border-radius:4px;padding:4px 8px;font-size:13px}.calendar-configurator-select:focus,.calendar-configurator-add-select:focus{outline:2px solid var(--color-primary,#4f7ef8);outline-offset:-1px}.calendar-configurator-column-list{margin:0 0 8px;padding:0;list-style:none}.calendar-configurator-column-row{align-items:center;gap:8px;padding:4px 0;display:flex}.calendar-configurator-column-name{color:var(--text-primary,#111827);text-overflow:ellipsis;white-space:nowrap;flex:1;max-width:160px;font-size:13px;overflow:hidden}.calendar-configurator-column-remove{cursor:pointer;width:16px;height:16px;color:var(--text-muted,var(--text-secondary,#6b7280));background:0 0;border:none;padding:0;font-size:14px;line-height:1}.calendar-configurator-column-remove:hover{color:var(--danger,#ef4444)}.calendar-configurator-add-disabled{color:var(--text-muted,var(--text-secondary,#6b7280));padding:4px 0;font-size:11px;font-style:italic;display:block}.calendar-configurator-footer{border-top:1px solid var(--color-border,var(--grid-border-color,#e5e7eb));justify-content:flex-end;gap:8px;padding:16px;display:flex}.calendar-configurator-cancel{color:var(--text-primary,#111827);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 12px;font-size:13px}.calendar-configurator-cancel:hover{background:var(--bg-hover,var(--color-bg-surface-2,#f3f4f6))}.calendar-configurator-apply{background:var(--color-primary,#4f7ef8);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:4px 12px;font-size:13px;font-weight:600}.calendar-configurator-apply:hover{filter:brightness(.95)}
.calendar-container{--fc-border-color:var(--grid-border-color,#e5e7eb);--fc-page-bg-color:var(--bg-primary,#fff);--fc-neutral-bg-color:var(--bg-secondary,#f9fafb);--fc-event-bg-color:var(--color-primary);--fc-event-border-color:var(--color-primary);--fc-event-text-color:var(--bg-primary);--fc-today-bg-color:var(--color-primary-bg,#3b82f614);--fc-button-bg-color:var(--bg-secondary,#f3f4f6);--fc-button-border-color:var(--grid-border-color,#e5e7eb);--fc-button-text-color:var(--text-primary,#111827);--fc-button-hover-bg-color:var(--bg-hover,#e5e7eb);--fc-button-hover-border-color:var(--grid-border-color,#d1d5db);--fc-button-active-bg-color:var(--color-primary);--fc-button-active-border-color:var(--color-primary);height:100%;padding:16px;position:relative}.calendar-container .fc{color:var(--text-primary,#111827)}.calendar-container .fc .fc-col-header-cell-cushion,.calendar-container .fc .fc-daygrid-day-number{color:var(--text-primary,#111827);text-decoration:none}.calendar-container .fc .fc-toolbar-title{color:var(--text-primary,#111827);font-size:20px;font-weight:600}.calendar-container .fc .fc-button{box-shadow:none;text-transform:capitalize;border-radius:6px;padding:4px 12px;font-size:.85rem;font-weight:500}.calendar-container .fc .fc-button-group>.fc-button{border-radius:0}.calendar-container .fc .fc-button-group>.fc-button:first-child{border-radius:6px 0 0 6px}.calendar-container .fc .fc-button-group>.fc-button:last-child{border-radius:0 6px 6px 0}.calendar-container .fc .fc-event{cursor:pointer;border-radius:4px;padding:2px 4px;font-size:.8rem}.calendar-container .fc .fc-daygrid-event{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}[data-theme=dark] .calendar-container,.dark .calendar-container{--fc-border-color:var(--grid-border-color,#374151);--fc-page-bg-color:var(--bg-primary,#111827);--fc-neutral-bg-color:var(--bg-secondary,#1f2937);--fc-event-bg-color:var(--color-primary);--fc-event-border-color:var(--color-primary);--fc-event-text-color:var(--bg-primary);--fc-today-bg-color:var(--color-primary-bg,#3b82f626);--fc-button-bg-color:var(--bg-secondary,#1f2937);--fc-button-border-color:var(--grid-border-color,#374151);--fc-button-text-color:var(--text-primary,#f9fafb);--fc-button-hover-bg-color:var(--bg-hover,#374151);--fc-button-hover-border-color:var(--grid-border-color,#4b5563);--fc-button-active-bg-color:var(--color-primary);--fc-button-active-border-color:var(--color-primary)}[data-theme=dark] .calendar-container .fc,.dark .calendar-container .fc,[data-theme=dark] .calendar-container .fc .fc-col-header-cell-cushion,[data-theme=dark] .calendar-container .fc .fc-daygrid-day-number,.dark .calendar-container .fc .fc-col-header-cell-cushion,.dark .calendar-container .fc .fc-daygrid-day-number,[data-theme=dark] .calendar-container .fc .fc-toolbar-title,.dark .calendar-container .fc .fc-toolbar-title{color:var(--text-primary,#f9fafb)}.calendar-empty-state{height:100%;min-height:300px;color:var(--text-secondary,#6b7280);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex}.calendar-empty-state-icon{opacity:.4;margin-bottom:16px;font-size:3rem}.calendar-empty-state-title{color:var(--text-primary,#111827);margin-bottom:8px;font-size:1.1rem;font-weight:600}.calendar-empty-state-text{font-size:.9rem}.calendar-empty-hint{color:var(--text-secondary,#6b7280);background:var(--accent-muted,#4a6fa51f);border:1px solid var(--color-primary-border,#4a6fa54d);border-radius:8px;align-items:center;gap:8px;margin:8px 12px;padding:8px 12px;font-size:.82rem;display:flex}
.dashboard-view{background:var(--bg-surface,#f9fafb);flex-direction:column;height:100%;padding:16px;display:flex;overflow-y:auto}[data-theme=dark] .dashboard-view{background:var(--bg-surface,#111827)}.dash-toolbar{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.dash-toolbar-info{color:var(--text-secondary);font-size:13px}.dash-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.dash-widget{background:var(--bg-modal);border:1px solid var(--border-color);border-radius:10px;transition:border-color .15s;overflow:hidden}.dash-widget:hover{border-color:var(--color-primary-border)}.dash-widget-full{grid-column:1/-1}.dash-widget-header{border-bottom:1px solid var(--border-color-light);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.dash-widget-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:13px;font-weight:600;overflow:hidden}.dash-widget-actions{opacity:0;gap:2px;transition:opacity .15s;display:flex}.dash-widget:hover .dash-widget-actions{opacity:1}.dash-widget-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:14px;line-height:1}.dash-widget-btn:hover{background:var(--border-color-light);color:var(--text-primary)}.dash-widget-btn-delete:hover{color:#dc2626;background:#fef2f2}[data-theme=dark] .dash-widget-btn-delete:hover{color:#fca5a5;background:#451a1a}.dash-widget-body{padding:12px 14px}.widget-chart{width:100%}.widget-empty{text-align:center;color:var(--text-secondary);padding:40px 0;font-size:13px}.widget-number{text-align:center;padding:20px 0}.widget-number-value{color:var(--text-primary);font-size:36px;font-weight:600;line-height:1.1}.widget-number-label{color:var(--text-secondary);margin-top:6px;font-size:13px}.widget-table-container{overflow-x:auto}.widget-table{border-collapse:collapse;width:100%;font-size:12px}.widget-table th{text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap;padding:6px 10px;font-weight:600}.widget-table td{border-bottom:1px solid var(--border-color-light);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;padding:5px 10px;overflow:hidden}.widget-table-more{color:var(--text-secondary);text-align:right;padding:6px 0;font-size:11px}.dash-empty{text-align:center;color:var(--text-secondary);padding:60px 20px}.dash-empty p{margin:0 0 8px}.dash-empty-hint{opacity:.7;font-size:13px;margin-bottom:16px!important}.dash-loading{height:100%;color:var(--text-secondary);justify-content:center;align-items:center;font-size:14px;display:flex}.dash-btn{border:1px solid var(--border-color);background:var(--bg-modal);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;display:inline-flex}.dash-btn:hover:not(:disabled){background:var(--border-color-light)}.dash-btn-primary{background:var(--link-color);color:#fff;border-color:var(--link-color)}.dash-btn-primary:hover:not(:disabled){background:#1d4ed8}.dash-modal-overlay{z-index:1100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dash-modal{background:var(--bg-modal);color:var(--text-primary);border-radius:12px;flex-direction:column;width:480px;max-width:92vw;max-height:80vh;display:flex;box-shadow:0 8px 30px #0000002e}.dash-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dash-modal-header h3{margin:0;font-size:16px;font-weight:600}.dash-modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.dash-modal-close:hover{color:var(--text-primary)}.dash-modal-body{flex:1;padding:16px 20px;overflow-y:auto}.dash-modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.dash-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:12px 0 4px;font-size:12px;font-weight:600;display:block}.dash-label:first-child{margin-top:0}.dash-input,.dash-select{border:1px solid var(--border-color);background:var(--bg-modal);width:100%;color:var(--text-primary);border-radius:6px;padding:8px 10px;font-size:13px}.dash-input:focus,.dash-select:focus{border-color:var(--accent);outline:none}.dash-type-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.dash-type-option{border:1px solid var(--border-color);background:var(--bg-modal);cursor:pointer;text-align:center;border-radius:6px;flex-direction:column;align-items:center;padding:10px 6px;transition:border-color .1s;display:flex}.dash-type-option:hover{border-color:#93c5fd}.dash-type-option--active{border-color:var(--accent);background:#eff6ff}[data-theme=dark] .dash-type-option--active{background:#1e3a5f}.dash-type-label{color:var(--text-primary);font-size:12px;font-weight:600}.dash-type-desc{color:var(--text-secondary);margin-top:2px;font-size:10px}.dash-width-options{gap:6px;display:flex}.dash-width-btn{border:1px solid var(--border-color);background:var(--bg-modal);color:var(--text-primary);cursor:pointer;border-radius:6px;flex:1;padding:6px;font-size:13px}.dash-width-btn--active{border-color:var(--accent);color:#1d4ed8;background:#eff6ff}[data-theme=dark] .dash-width-btn--active{color:#93c5fd;background:#1e3a5f}.dash-checkbox-list{border:1px solid var(--border-color);border-radius:6px;max-height:160px;padding:6px;overflow-y:auto}.dash-checkbox-item{cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:4px 6px;font-size:13px;display:flex}.dash-checkbox-item:hover{background:var(--border-color-light)}.dash-spinner{border:2px solid var(--border-color,#e5e7eb);border-top-color:var(--primary);border-radius:50%;width:16px;height:16px;animation:.6s linear infinite dash-spin;display:inline-block}@keyframes dash-spin{to{transform:rotate(360deg)}}@media (max-width:640px){.dash-grid{grid-template-columns:1fr}.dash-type-grid{grid-template-columns:repeat(2,1fr)}}.dq-b-score-row{justify-content:center;align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.dq-b-score{font-size:40px;font-weight:700;line-height:1}.dq-b-score-of{color:var(--text-secondary);font-size:14px}.dq-trend{font-size:13px;font-weight:600}.dq-trend.up{color:var(--success)}.dq-trend.down{color:var(--danger)}.dq-trend.flat{color:var(--text-muted)}.dq-b-stats{border-top:1px solid var(--border-color-light);justify-content:center;gap:24px;padding-top:12px;display:flex}.dq-b-stat{text-align:center}.dq-b-stat-value{color:var(--text-primary);font-size:16px;font-weight:600}.dq-b-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:11px}.dq-cta{color:var(--accent);cursor:pointer;margin-top:10px;font-size:13px;display:inline-block}.dq-cta:hover{text-decoration:underline}.dq-hidden-note{color:var(--text-muted);text-align:center;margin-top:8px;font-size:11px}.dq-empty{text-align:center;padding:24px 0}.dq-empty-icon{margin-bottom:8px;font-size:28px}.dq-empty-text{color:var(--text-secondary);margin-bottom:14px;font-size:13px}.dq-run-btn{border:1px solid var(--link-color);background:var(--link-color);color:#fff;cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;display:inline-flex}.dq-run-btn:hover:not(:disabled){background:#1d4ed8}.dq-run-btn:disabled{opacity:.6;cursor:default}.dq-finding-row{border:1px solid var(--border-color);border-radius:8px;padding:10px 12px}.dq-finding-row-badges{gap:6px;margin-bottom:6px;display:flex}.dq-finding-badge{text-transform:uppercase;letter-spacing:.03em;background:var(--border-color-light);color:var(--text-secondary);border-radius:4px;align-items:center;padding:1px 8px;font-size:11px;font-weight:600;display:inline-flex}.dq-finding-badge--high{color:var(--danger)}.dq-finding-badge--medium{color:var(--warning)}.dq-finding-badge--low{color:var(--text-secondary)}.dq-finding-row-desc{color:var(--text-primary);margin-bottom:4px;font-size:13px;line-height:1.4}.dq-finding-row-meta{color:var(--text-muted);font-size:11px}
.gallery-grid{flex:1;gap:16px;padding:16px;display:grid;overflow-y:auto}.gallery-grid--small{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.gallery-grid--medium{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.gallery-grid--large{grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}.gallery-card{border:1px solid var(--border-color);cursor:pointer;background:var(--bg-primary);border-radius:8px;transition:border-color .15s;overflow:hidden}.gallery-card:hover{border-color:var(--color-primary-border)}.gallery-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gallery-card-cover{aspect-ratio:16/10;background:var(--hover);position:relative;overflow:hidden}.gallery-card-cover img{object-fit:cover;width:100%;height:100%}.gallery-card-skeleton{background:linear-gradient(90deg, var(--hover) 25%, var(--border-color) 50%, var(--hover) 75%);background-size:200% 100%;width:100%;height:100%;animation:1.5s infinite gallery-shimmer}@keyframes gallery-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gallery-card-no-image{background:var(--bg-secondary);width:100%;height:100%;color:var(--border-input);justify-content:center;align-items:center;display:flex}.gallery-card-body{color:var(--text-primary);padding:12px}.gallery-card-title{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-size:14px;font-weight:600;overflow:hidden}.gallery-card-fields{flex-direction:column;gap:4px;margin-top:8px;display:flex}.gallery-card-field{align-items:baseline;gap:6px;font-size:12px;line-height:1.4;display:flex}.gallery-card-field-label{color:var(--text-secondary);flex-shrink:0;font-weight:500}.gallery-card-field-value{color:var(--text-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gallery-show-more{border:1px dashed var(--border-color,#e5e7eb);width:calc(100% - 32px);color:var(--text-secondary,#6b7280);cursor:pointer;text-align:center;background:0 0;border-radius:6px;margin:0 16px 16px;padding:10px 12px;font-size:.85rem;font-weight:500;transition:background .15s,color .15s;display:block}.gallery-show-more:hover{background:var(--bg-hover,#0000000a);color:var(--text-primary,#111827)}.gallery-toolbar{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.gallery-toolbar-label{color:var(--text-secondary);font-size:13px}.gallery-toolbar-config-btn{border:1px solid var(--border-color);background:var(--bg-primary);cursor:pointer;width:28px;height:28px;color:var(--text-secondary);border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.gallery-toolbar-config-btn:hover{background:var(--hover);color:var(--text-label)}.gallery-empty-state{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:64px 16px;font-size:14px;display:flex}.gallery-empty-state-icon{color:var(--border-input);font-size:32px}[data-theme=dark] .gallery-card{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .gallery-card-cover{background:var(--bg-primary)}[data-theme=dark] .gallery-card-skeleton{background:linear-gradient(90deg,#1f2937 25%,#374151 50%,#1f2937 75%) 0 0/200% 100%}[data-theme=dark] .gallery-card-no-image{background:var(--bg-primary);color:var(--text-muted)}[data-theme=dark] .gallery-card-body,[data-theme=dark] .gallery-card-title{color:var(--text-primary)}[data-theme=dark] .gallery-card-field-label{color:var(--text-secondary)}[data-theme=dark] .gallery-card-field-value{color:var(--text-label)}[data-theme=dark] .gallery-toolbar{background:var(--bg-secondary);border-bottom-color:var(--border-color)}[data-theme=dark] .gallery-toolbar-label{color:var(--text-secondary)}[data-theme=dark] .gallery-toolbar-config-btn{background:var(--bg-primary);border-color:var(--border-color);color:var(--text-secondary)}[data-theme=dark] .gallery-toolbar-config-btn:hover{background:var(--hover);color:var(--text-primary)}[data-theme=dark] .gallery-empty-state,[data-theme=dark] .gallery-empty-state-icon{color:var(--text-muted)}
.pivot-view{background:var(--bg-primary,#fff);height:100%;color:var(--text-primary,#111827);flex-direction:column;display:flex;overflow:hidden}.pivot-toolbar{border-bottom:1px solid var(--border-color,#e5e7eb);background:var(--bg-primary,#fff);color:var(--text-primary,#111827);flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.pivot-toolbar button{border:1px solid var(--border-color,#e5e7eb);background:var(--bg-primary,#fff);color:var(--text-primary,#111827);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:background .15s;display:inline-flex}.pivot-toolbar button:hover{background:var(--bg-secondary,#f3f4f6)}.pivot-toolbar button:disabled{opacity:.5;cursor:not-allowed}.pivot-toolbar button.active{background:var(--accent-bg,#eff6ff);border-color:var(--accent-border);color:var(--accent-text,#1d4ed8)}.pivot-toolbar-spacer{flex:1}.pivot-toolbar-info{color:var(--text-secondary,#6b7280);font-size:12px}.pivot-toolbar-spinner{border:2px solid var(--border-color,#e5e7eb);border-top-color:var(--accent-border);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite pivot-spin}@keyframes pivot-spin{to{transform:rotate(360deg)}}.pivot-config-backdrop{z-index:99;position:fixed;inset:0}.pivot-config-panel{z-index:100;border:1px solid var(--border-color,#e5e7eb);background:var(--bg-primary,#fff);min-width:320px;max-width:400px;max-height:480px;color:var(--text-primary,#111827);border-radius:8px;padding:16px;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.pivot-config-section{margin-bottom:16px}.pivot-config-section:last-child{margin-bottom:0}.pivot-config-label{color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.pivot-config-select{border:1px solid var(--border-color,#e5e7eb);background:var(--bg-primary,#fff);width:100%;color:var(--text-primary,#111827);border-radius:6px;padding:6px 8px;font-size:13px}.pivot-config-select:focus{border-color:var(--accent-border);box-shadow:0 0 0 2px var(--accent-bg,#eff6ff);outline:none}.pivot-config-row{align-items:center;gap:8px;margin-bottom:6px;display:flex}.pivot-config-row select{border:1px solid var(--border-color,#e5e7eb);background:var(--bg-primary,#fff);color:var(--text-primary,#111827);border-radius:6px;flex:1;padding:6px 8px;font-size:13px}.pivot-config-row select:focus{border-color:var(--accent-border);outline:none}.pivot-config-add-btn{border:1px dashed var(--border-color,#e5e7eb);color:var(--text-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;display:inline-flex}.pivot-config-add-btn:hover{border-color:var(--accent-border);color:var(--accent-text,#1d4ed8)}.pivot-config-remove-btn{width:24px;height:24px;color:var(--text-secondary,#6b7280);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.pivot-config-remove-btn:hover{background:var(--bg-danger,#fef2f2);color:var(--text-danger,#dc2626)}.pivot-config-checkbox{color:var(--text-primary,#111827);cursor:pointer;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;display:flex}.pivot-config-checkbox input[type=checkbox]{accent-color:var(--accent-border)}.pivot-config-divider{border:none;border-top:1px solid var(--border-color,#e5e7eb);margin:12px 0}.pivot-table-wrapper{flex:1;position:relative;overflow:auto}.pivot-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.pivot-table th,.pivot-table td{border-right:1px solid var(--border-color,#e5e7eb);border-bottom:1px solid var(--border-color,#e5e7eb);text-align:right;white-space:nowrap;padding:6px 12px;font-size:13px}.pivot-table th{background:var(--bg-secondary,#f9fafb);color:var(--text-primary,#111827);text-align:center;font-weight:600}.pivot-table tbody td:first-child,.pivot-table tbody th:first-child{text-align:left;font-weight:500}.pivot-table thead th{z-index:2;background:var(--bg-secondary,#f9fafb);position:sticky;top:0}.pivot-row-header{z-index:1;background:var(--bg-primary,#fff);position:sticky;left:0}.pivot-corner{z-index:3;background:var(--bg-secondary,#f9fafb);position:sticky;top:0;left:0}.pivot-table tbody tr:nth-child(2n) td,.pivot-table tbody tr:nth-child(2n) .pivot-row-header{background:var(--bg-tertiary,#f3f4f6)}.pivot-grand-total td,.pivot-grand-total th{color:var(--text-primary,#111827);font-weight:600;background:var(--bg-secondary,#f1f5f9)!important}.pivot-group-toggle{cursor:pointer;color:var(--text-primary,#111827);background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.pivot-group-toggle svg{flex-shrink:0;transition:transform .15s}.pivot-group-toggle svg.collapsed{transform:rotate(-90deg)}.pivot-group-row td{background:var(--bg-secondary,#f9fafb)!important}.pivot-nested-indent{padding-left:24px!important}.pivot-empty-state{height:100%;color:var(--text-secondary,#6b7280);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:48px 24px;display:flex}.pivot-empty-state-icon{opacity:.4;width:64px;height:64px}.pivot-empty-state h3{color:var(--text-primary,#111827);margin:0;font-size:16px;font-weight:600}.pivot-empty-state p{max-width:360px;margin:0;font-size:13px;line-height:1.5}.pivot-error-state{color:var(--text-danger,#dc2626);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.pivot-error-state button{border:1px solid var(--border-color,#e5e7eb);background:var(--bg-primary,#fff);color:var(--text-primary,#111827);cursor:pointer;border-radius:6px;padding:6px 16px;font-size:13px}.pivot-loading{justify-content:center;align-items:center;height:200px;display:flex}.pivot-loading-spinner{border:3px solid var(--border-color,#e5e7eb);border-top-color:var(--accent-border);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite pivot-spin}
.form-view{background:var(--hover);justify-content:center;align-items:flex-start;min-height:100%;padding:40px 16px;display:flex}.form-view-card{background:var(--bg-primary);border-radius:12px;width:100%;max-width:640px;padding:40px;box-shadow:0 1px 3px #00000014,0 4px 16px #0000000a}.form-view-title{color:var(--text-primary);margin:0 0 28px;font-size:24px;font-weight:600;line-height:1.3}.form-view-cover{background:var(--hover);height:160px;margin:0 -40px 24px;overflow:hidden}.form-view-card>.form-view-cover:first-child{border-radius:12px 12px 0 0;margin-top:-40px}.form-view-cover__img{object-fit:cover;width:100%;height:100%;display:block}.form-view-editor-toolbar{border-bottom:1px solid var(--border-color);gap:8px;margin-bottom:20px;padding-bottom:16px;display:flex}.form-view-editor-toolbar__btn{border:1px solid var(--border-input);background:var(--bg-primary);color:var(--text-label);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s}.form-view-editor-toolbar__btn:hover{background:var(--hover)}.form-view-editor-toolbar__btn--active{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.form-view-editor-toolbar__btn--add-section{margin-left:auto}.form-view-fields{flex-wrap:wrap;gap:20px 24px;display:flex}.form-field-wrap{min-width:0}.form-field-wrap .form-field{margin-bottom:0}.form-field-wrap--full{flex-basis:100%}.form-field-wrap--half{flex-basis:calc(50% - 12px)}.form-field-wrap--third{flex-basis:calc(33.333% - 16px)}.form-row-break{flex-basis:100%;width:100%;height:0;margin:0;padding:0}.form-section-header{border-top:1px solid var(--border-color);flex-basis:100%;margin-top:12px;padding-top:20px}.form-section-header--first{border-top:none;margin-top:0;padding-top:0}.form-section-header__title{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.form-view-editor-list{flex-direction:column;gap:16px;display:flex}.form-field-editor-row{border:1px solid var(--border-color);background:var(--bg-primary);border-radius:8px;align-items:flex-start;gap:8px;padding:12px;display:flex}.form-field-editor-row__handle{text-align:center;width:20px;color:var(--text-muted);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;padding-top:10px;font-size:16px}.form-field-editor-row__body{flex:1;min-width:0;position:relative}.form-field-editor-row__body .form-field{margin-bottom:10px}.form-field-add-desc-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-bottom:10px;padding:0;font-size:12px;font-weight:600;display:inline-block}.form-field-desc-input{width:100%;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-input);box-sizing:border-box;border-radius:6px;margin-bottom:10px;padding:6px 10px;font-size:12px;display:block}.form-field-editor-toolbar{border-top:1px dashed var(--border-color);align-items:center;gap:16px;margin-top:4px;padding-top:10px;display:flex}.form-field-width-control{border:1px solid var(--border-input);border-radius:6px;display:inline-flex;overflow:hidden}.form-field-width-control__btn{color:var(--text-secondary);background:var(--bg-primary);border:none;border-right:1px solid var(--border-input);cursor:pointer;padding:4px 10px;font-size:12px;font-weight:600}.form-field-width-control__btn:last-child{border-right:none}.form-field-width-control__btn--active{background:var(--accent);color:var(--accent-fg)}.form-field-required-toggle{color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.form-field-hide-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-left:auto;padding:4px;display:inline-flex}.form-field-hide-btn:hover{background:var(--hover);color:var(--text-primary)}.form-field-rule-trigger{color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:12px;font-weight:600;display:inline-block}.form-field-rule-badge{background:var(--accent);color:var(--accent-fg);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600;position:absolute;top:0;right:0}.form-field-rule-panel{border:1px solid var(--border-color);background:var(--hover);border-radius:8px;flex-direction:column;gap:10px;margin-top:10px;padding:12px;display:flex}.form-field-rule-panel__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-field-rule-panel__label{color:var(--text-secondary);white-space:nowrap;font-size:12px;font-weight:600}.form-field-rule-field-picker,.form-field-rule-value-picker{flex-wrap:wrap;gap:6px;display:flex}.form-field-rule-field-picker__btn,.form-field-rule-value-picker__btn{color:var(--text-secondary);background:var(--bg-primary);border:1px solid var(--border-input);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.form-field-rule-field-picker__btn--active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.form-field-rule-value-picker__btn--active{border-color:var(--accent);background:var(--accent);color:var(--accent-fg);border-width:2px}.form-field-rule-operator{color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-input);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:12px}.form-field-rule-empty{color:var(--text-muted);font-size:12px;font-style:italic}.form-field-rule-hide-note{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.4}.form-field-rule-panel__actions{gap:8px;margin-top:2px;display:flex}.form-field-rule-save-btn{color:var(--accent-fg);background:var(--accent);cursor:pointer;border:none;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:600}.form-field-rule-save-btn:disabled{opacity:.5;cursor:not-allowed}.form-field-rule-remove-btn{color:var(--text-secondary);background:var(--bg-primary);border:1px solid var(--border-input);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:600}.form-section-editor-row{border:1px dashed var(--border-color);background:var(--hover);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.form-section-title-input{color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-input);box-sizing:border-box;border-radius:6px;flex:1;padding:6px 10px;font-size:14px;font-weight:600}.form-section-pagebreak-toggle{color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.form-section-delete-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.form-section-delete-btn:hover{background:var(--bg-primary);color:#ef4444}.form-page-break-divider{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:12px;margin:20px 0 12px;font-size:11px;font-weight:600;display:flex}.form-page-break-divider:before,.form-page-break-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.form-view-hidden-tray{border-top:1px solid var(--border-color);margin-top:24px;padding-top:16px}.form-view-hidden-tray__toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;display:flex}.form-view-hidden-tray__list{flex-direction:column;gap:4px;margin-top:10px;display:flex}.form-view-hidden-tray__item{background:var(--hover);color:var(--text-secondary);border-radius:6px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:13px;display:flex}.form-view-hidden-tray__item button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:inline-flex}.form-view-hidden-tray__item button:hover{background:var(--bg-primary);color:var(--text-primary)}.form-field{margin-bottom:24px}.form-field-label{color:var(--text-label);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.form-field-required{color:#ef4444;margin-left:4px;font-weight:600}.form-field-input{width:100%;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-input);box-sizing:border-box;border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.5;transition:border-color .15s,box-shadow .15s;display:block}.form-field-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #3b82f61f}.form-field-input::placeholder{color:var(--text-muted)}.form-field-textarea{resize:vertical;min-height:100px}.form-field-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.form-field-file{cursor:pointer;padding:8px}.form-field-checkbox{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.form-field-help{color:var(--text-secondary);margin-top:4px;font-size:12px;line-height:1.4}.form-field-error{color:#ef4444;margin-top:4px;font-size:12px;font-weight:500}.form-field--error .form-field-input{border-color:#ef4444}.form-field--error .form-field-input:focus{box-shadow:0 0 0 3px #ef44441f}.form-field-number-wrap{align-items:center;display:flex;position:relative}.form-field-prefix{color:var(--text-secondary);pointer-events:none;z-index:1;font-size:13px;font-weight:600;position:absolute;left:12px}.form-field-suffix{color:var(--text-secondary);pointer-events:none;font-size:13px;font-weight:600;position:absolute;right:12px}.form-field-input--with-prefix{padding-left:48px}.form-field-input--duration{text-align:center}.form-field-dropzone{text-align:center;border:2px dashed var(--border-input);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px 16px;transition:border-color .15s,background .15s;display:flex}.form-field-dropzone:hover{border-color:var(--accent)}.form-field-dropzone--dragging{border-color:var(--accent);background:var(--accent-muted)}.form-field-dropzone__text{color:var(--text-secondary);font-size:13px}.form-field-dropzone__hint{color:var(--text-muted);font-size:11px}.form-field-dropzone__actions{gap:8px;margin-top:4px;display:flex}.form-field-dropzone__btn{cursor:pointer;border:1px solid var(--border-input);background:var(--bg-primary);color:var(--text-secondary);border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.form-field-dropzone__btn--primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.form-field-file-list{flex-direction:column;gap:8px;width:100%;margin-top:12px;display:flex}.form-field-file-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.form-field-file-row--error{background:var(--badge-danger-bg);border-color:var(--danger)}.form-field-file-thumb{background:var(--bg-surface2);width:36px;height:36px;color:var(--text-muted);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.form-field-file-thumb__img{object-fit:cover;width:100%;height:100%;display:block}.form-field-file-meta{text-align:left;flex:1;min-width:0}.form-field-file-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.form-field-file-size{color:var(--text-muted);margin-top:2px;font-size:11px}.form-field-file-progress{background:var(--border-color);border-radius:2px;height:4px;margin-top:5px;overflow:hidden}.form-field-file-progress__fill{background:var(--accent);border-radius:2px;height:100%;transition:width .3s}.form-field-file-error{color:var(--danger);margin-top:2px;font-size:12px;font-weight:500}.form-field-file-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;display:inline-flex}.form-field-file-remove:hover{background:var(--hover);color:var(--danger)}.form-field-attachment-preview{text-align:center;border:2px dashed var(--border-input);background:var(--bg-secondary);color:var(--text-muted);opacity:.7;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px 16px;display:flex}.form-field-attachment-preview__icon{color:var(--text-muted)}.form-field-attachment-preview__text{color:var(--text-secondary);font-size:13px}.form-field-attachment-preview__row{background:var(--bg-surface2);border-radius:8px;align-items:center;gap:8px;width:100%;max-width:240px;margin-top:8px;padding:6px 10px;display:flex}.form-field-attachment-preview__thumb{width:24px;height:24px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.form-field-attachment-preview__name{color:var(--text-muted);font-size:12px;font-weight:600}.form-view-progress{margin-bottom:20px}.form-view-progress__label{color:var(--text-secondary);margin-bottom:6px;font-size:13px}.form-view-progress__bar{background:var(--bg-secondary);border-radius:999px;width:100%;height:6px;overflow:hidden}.form-view-progress__fill{background:var(--accent);border-radius:999px;height:100%;transition:width .25s}.form-view-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:100%;margin-top:8px;padding:12px 32px;font-size:14px;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.form-view-nav-row{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;display:flex}.form-view-nav-row .form-view-btn{flex:1;width:auto;margin-top:0}.form-view-btn:active{transform:scale(.98)}.form-view-btn:disabled{opacity:.6;cursor:not-allowed}.form-view-btn--primary{background:var(--accent);color:var(--accent-fg)}.form-view-btn--primary:hover:not(:disabled){background:var(--link-color)}.form-view-btn--secondary{background:var(--hover);color:var(--text-label);border:1px solid var(--border-input)}.form-view-btn--secondary:hover:not(:disabled){background:var(--border-color)}.form-view-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}[data-theme=dark] .form-view-error{color:#fca5a5;background:#dc26261a;border-color:#dc26264d}.form-view-success{text-align:center;padding:32px 0}.form-view-success-icon{margin-bottom:16px}.form-view-success-title{color:#10b981;margin:0 0 12px;font-size:24px;font-weight:600}.form-view-success-message{color:#4b5563;margin:0 0 24px;font-size:14px;line-height:1.5}@media (max-width:640px){.form-view{padding:16px 8px}.form-view-card{border-radius:8px;padding:24px 20px}.form-view-cover{height:120px;margin:0 -20px 20px}.form-view-card>.form-view-cover:first-child{border-radius:8px 8px 0 0;margin-top:-24px}.form-view-title{font-size:20px}.form-field-wrap--half,.form-field-wrap--third{flex-basis:100%}.form-field-dropzone,.form-field-attachment-preview{padding:20px 12px}.form-field-dropzone__actions{flex-wrap:wrap;justify-content:center}}[data-theme=dark] .form-view{background:var(--bg-primary)}[data-theme=dark] .form-view-card{background:var(--bg-secondary);box-shadow:0 1px 3px #0003,0 4px 16px #00000026}[data-theme=dark] .form-view-title{color:var(--text-primary)}[data-theme=dark] .form-field-label{color:var(--text-label)}[data-theme=dark] .form-field-input{color:var(--text-primary);background:var(--bg-primary);border-color:var(--border-input)}[data-theme=dark] .form-field-input::placeholder{color:var(--text-muted)}[data-theme=dark] .form-field-help,[data-theme=dark] .form-field-prefix,[data-theme=dark] .form-field-suffix{color:var(--text-secondary)}[data-theme=dark] .form-view-btn--secondary{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .form-view-btn--secondary:hover:not(:disabled){background:var(--hover)}[data-theme=dark] .form-view-error{background:#dc26261a;border-color:#dc26264d}[data-theme=dark] .form-view-success-message{color:var(--text-secondary)}[data-theme=dark] .form-view-editor-toolbar{border-color:var(--border-color)}[data-theme=dark] .form-view-editor-toolbar__btn{background:var(--bg-secondary);color:var(--text-label);border-color:var(--border-color)}[data-theme=dark] .form-view-editor-toolbar__btn:hover{background:var(--hover)}[data-theme=dark] .form-view-editor-toolbar__btn--active{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}[data-theme=dark] .form-section-header{border-color:var(--border-color)}[data-theme=dark] .form-section-header__title{color:var(--text-primary)}[data-theme=dark] .form-field-editor-row{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .form-field-editor-row__handle{color:var(--text-muted)}[data-theme=dark] .form-field-desc-input{color:var(--text-primary);background:var(--bg-primary);border-color:var(--border-input)}[data-theme=dark] .form-field-editor-toolbar{border-color:var(--border-color)}[data-theme=dark] .form-field-width-control{border-color:var(--border-input)}[data-theme=dark] .form-field-width-control__btn{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-input)}[data-theme=dark] .form-field-width-control__btn--active{background:var(--accent);color:var(--accent-fg)}[data-theme=dark] .form-field-required-toggle{color:var(--text-secondary)}[data-theme=dark] .form-field-hide-btn{color:var(--text-muted)}[data-theme=dark] .form-field-hide-btn:hover{background:var(--hover);color:var(--text-primary)}[data-theme=dark] .form-field-rule-trigger{color:var(--accent)}[data-theme=dark] .form-field-rule-badge{background:var(--accent);color:var(--accent-fg)}[data-theme=dark] .form-field-rule-panel{background:var(--bg-primary);border-color:var(--border-color)}[data-theme=dark] .form-field-rule-panel__label{color:var(--text-secondary)}[data-theme=dark] .form-field-rule-field-picker__btn,[data-theme=dark] .form-field-rule-value-picker__btn,[data-theme=dark] .form-field-rule-operator{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-input)}[data-theme=dark] .form-field-rule-field-picker__btn--active,[data-theme=dark] .form-field-rule-value-picker__btn--active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}[data-theme=dark] .form-field-rule-save-btn{background:var(--accent);color:var(--accent-fg)}[data-theme=dark] .form-field-rule-remove-btn{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-input)}[data-theme=dark] .form-field-rule-remove-btn:hover{background:var(--hover)}[data-theme=dark] .form-field-rule-empty,[data-theme=dark] .form-field-rule-hide-note{color:var(--text-secondary)}[data-theme=dark] .form-section-editor-row{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .form-section-title-input{color:var(--text-primary);background:var(--bg-primary);border-color:var(--border-input)}[data-theme=dark] .form-section-delete-btn{color:var(--text-muted)}[data-theme=dark] .form-section-delete-btn:hover{background:var(--bg-primary);color:#f87171}[data-theme=dark] .form-view-hidden-tray{border-color:var(--border-color)}[data-theme=dark] .form-view-hidden-tray__toggle{color:var(--text-secondary)}[data-theme=dark] .form-view-hidden-tray__item{background:var(--hover);color:var(--text-secondary)}[data-theme=dark] .form-view-hidden-tray__item button{color:var(--text-muted)}[data-theme=dark] .form-view-hidden-tray__item button:hover{background:var(--bg-primary);color:var(--text-primary)}
.qc-view{background:var(--bg-base,#0f1117);flex-direction:column;height:100%;display:flex}.qc-topbar{border-bottom:1px solid var(--border,#2a3349);background:var(--bg-surface,#161b27);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px;display:flex}.qc-topbar-title{color:var(--text-primary,#e2e8f0);font-size:14px;font-weight:600;line-height:1.2}.qc-topbar-close{color:var(--text-secondary,#8892a4);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:22px;line-height:1}.qc-body{flex-direction:column;flex:1;padding:16px;display:flex;overflow-y:auto}.qc-card{background:var(--bg-surface2,#1e2535);border:1px solid var(--border,#2a3349);border-radius:10px;margin-bottom:12px;padding:16px}.qc-card label{color:var(--text-secondary,#8892a4);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.qc-card input,.qc-card select,.qc-card textarea{width:100%;color:var(--text-primary,#e2e8f0);background:0 0;border:none;padding:4px 0;font-size:16px}.qc-photo-card{margin-bottom:12px;padding:12px}.qc-camera-tile{aspect-ratio:3;background:var(--color-bg-surface-3,#242d40);border:2px dashed var(--border,#2a3349);width:100%;color:var(--text-muted,#64748b);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:relative;overflow:hidden}.qc-camera-tile svg{opacity:.6;width:28px;height:28px}.qc-camera-tile .label{font-size:12px}.qc-camera-tile:active,.qc-camera-tile:focus-visible{background:var(--bg-hover,#252d40);border-color:var(--accent,#4f7ef8)}.qc-camera-tile--secondary{aspect-ratio:16/9}.qc-camera-tile.has-photo{cursor:default;border-style:solid;padding:0}.qc-camera-tile-preview{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.qc-camera-tile-badge{color:var(--text-primary,#e2e8f0);z-index:1;background:#0009;border-radius:4px;padding:4px 8px;font-size:11px;position:absolute;bottom:8px;left:8px}.qc-camera-tile--uploading{opacity:.6;cursor:not-allowed}.qc-camera-tile--error{border-color:var(--danger,#ef4444)}.qc-camera-tile-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.qc-error{color:var(--danger,#ef4444);border:1px solid var(--danger,#ef4444);background:#ef44441f;border-radius:6px;margin-bottom:12px;padding:12px 16px;font-size:13px}.qc-empty-state{text-align:center;padding:32px 16px}.qc-empty-state-heading{color:var(--text-primary,#e2e8f0);margin-bottom:8px;font-size:14px;font-weight:600}.qc-empty-state-body{color:var(--text-secondary,#8892a4);font-size:16px;font-weight:400;line-height:1.5}.qc-footer{border-top:1px solid var(--border,#2a3349);background:var(--bg-surface,#161b27);flex-shrink:0;padding:16px;position:sticky;bottom:0}.qc-btn-primary{text-align:center;color:#fff;background:var(--accent,#4f7ef8);border:none;border-radius:6px;width:100%;padding:16px;font-size:16px;font-weight:600;display:block}.qc-btn-primary:active{transform:scale(.98)}.qc-btn-primary:disabled{opacity:.6;cursor:not-allowed}.qc-toast{background:var(--success,#22c55e);color:#06240f;opacity:0;pointer-events:none;border-radius:9999px;padding:8px 20px;font-size:12px;font-weight:600;transition:all .25s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(100px)}.qc-toast.show{opacity:1;transform:translate(-50%)translateY(0)}
.view-transition-wrapper{opacity:0;flex-direction:column;flex:1;transition:opacity .15s ease-in-out;display:flex}.view-transition-wrapper.view-transition-visible{opacity:1}
.skeleton-block{background:linear-gradient(90deg, var(--bg-secondary) 25%, var(--border-color-light) 50%, var(--bg-secondary) 75%);background-size:200% 100%;border-radius:4px;animation:1.5s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
.empty-state{flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;min-height:300px;padding:48px 24px;display:flex}.empty-state-illustration{width:120px;height:100px;color:var(--text-muted)}.empty-state-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.empty-state-subtitle{color:var(--text-secondary);text-align:center;max-width:360px;margin:0;font-size:14px}.empty-state-cta{background:var(--accent);color:var(--accent-fg);cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:opacity .15s}.empty-state-cta:hover{opacity:.9}
.webhook-modal-overlay{z-index:1100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.webhook-modal{background:var(--bg-modal);color:var(--text-primary);border-radius:12px;flex-direction:column;width:680px;max-width:90vw;max-height:80vh;display:flex;box-shadow:0 8px 30px #00000026}.webhook-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.webhook-modal-header h3{margin:0;font-size:16px;font-weight:600}.webhook-modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0 4px;font-size:20px}.webhook-modal-close:hover{color:var(--text-primary)}.webhook-modal-body{flex:1;padding:16px 20px;overflow-y:auto}.webhook-secret-banner{background:rgba(var(--accent-rgb,59, 130, 246), .1);border:1px solid rgba(var(--accent-rgb,59, 130, 246), .3);border-radius:8px;margin-bottom:16px;padding:12px 16px}.webhook-secret-banner-text{color:var(--text-primary);margin-bottom:8px;font-size:13px}.webhook-secret-banner-value{align-items:center;gap:8px;margin-bottom:8px;display:flex}.webhook-secret-banner-value code{background:var(--bg-primary);border:1px solid var(--border-color-light);word-break:break-all;color:var(--text-primary);border-radius:4px;flex:1;padding:6px 10px;font-family:SF Mono,Fira Code,monospace;font-size:12px}.webhook-secret-copy-btn{background:var(--accent);color:var(--accent-fg);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:500}.webhook-secret-copy-btn:hover{background:#4f46e5}.webhook-secret-banner-dismiss{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.webhook-secret-banner-dismiss:hover{color:var(--text-secondary)}.webhook-list{margin-bottom:16px}.webhook-item{border-bottom:1px solid var(--border-color-light);justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 0;display:flex}.webhook-item:last-child{border-bottom:none}.webhook-info{flex:1;min-width:0}.webhook-name-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:2px;display:flex}.webhook-name{color:var(--text-primary);font-size:14px;font-weight:500}.webhook-detail{color:var(--text-secondary);word-break:break-all;font-size:12px}.webhook-secret-masked{color:var(--text-muted);margin-top:2px;font-family:SF Mono,Fira Code,monospace;font-size:11px}.webhook-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.webhook-events-badges{flex-wrap:wrap;gap:4px;display:flex}.webhook-event-badge{background:rgba(var(--accent-rgb,59, 130, 246), .12);color:var(--accent);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500;display:inline-block}.webhook-event-checkboxes{flex-wrap:wrap;gap:12px;padding:4px 0;display:flex}.webhook-event-checkbox-label{color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:13px;display:flex}.webhook-event-checkbox-label input[type=checkbox]{appearance:none;cursor:pointer;border:1.5px solid var(--border-input,#6b7280);background:var(--bg-primary,transparent);border-radius:3px;flex-shrink:0;width:14px;height:14px;margin:0;padding:0;transition:background-color .1s,border-color .1s;position:relative}.webhook-event-checkbox-label input[type=checkbox]:hover{border-color:var(--accent)}.webhook-event-checkbox-label input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.webhook-event-checkbox-label input[type=checkbox]:checked:after{content:"";border-style:solid;border-color:var(--text-on-accent,#fff);border-width:0 1.5px 1.5px 0;width:3px;height:7px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.webhook-toggle{cursor:pointer;border:none;border-radius:10px;width:36px;height:20px;transition:background .2s;position:relative}.webhook-toggle--active{background:var(--accent)}.webhook-toggle--inactive{background:var(--border-input)}.webhook-toggle:after{content:"";background:var(--bg-primary);border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;top:2px}[data-theme=dark] .webhook-toggle:after{background:#e5e7eb}.webhook-toggle--active:after{left:18px}.webhook-toggle--inactive:after{left:2px}.webhook-deliveries-btn{color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:12px;font-weight:500}.webhook-deliveries-btn:hover{background:rgba(var(--accent-rgb,59, 130, 246), .08);text-decoration:underline}.webhook-rotate-secret-btn{color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:12px;font-weight:500}.webhook-rotate-secret-btn:hover{background:rgba(var(--accent-rgb,59, 130, 246), .08);text-decoration:underline}.webhook-delete-btn{color:var(--border-input);cursor:pointer;background:0 0;border:none;font-size:16px}.webhook-delete-btn:hover{color:#ef4444}.webhook-empty{text-align:center;color:var(--text-muted);padding:16px 0;font-size:13px}.webhook-delivery-log{border-top:1px solid var(--border-color);margin-bottom:16px;padding-top:12px}.webhook-delivery-log h4{color:var(--text-primary);margin:0 0 10px;font-size:14px;font-weight:600}.webhook-delivery-table{border-collapse:collapse;width:100%;font-size:12px}.webhook-delivery-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);border-bottom:1px solid var(--border-color);padding:6px 8px;font-size:11px;font-weight:600}.webhook-delivery-row td{border-bottom:1px solid var(--border-color-light);color:var(--text-primary);vertical-align:middle;padding:6px 8px}.webhook-delivery-row:last-child td{border-bottom:none}.webhook-status-badge{text-transform:capitalize;white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.webhook-status-badge--success{color:#22c55e;background:#22c55e26}.webhook-status-badge--pending{color:#eab308;background:#eab30826}.webhook-status-badge--failed{color:#f97316;background:#f9731626}.webhook-status-badge--dead{color:#ef4444;background:#ef444426}.webhook-retry-btn{border:1px solid var(--border-input);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;padding:2px 10px;font-size:11px;font-weight:500}.webhook-retry-btn:hover{border-color:var(--accent);color:var(--accent)}.webhook-retry-btn:disabled{opacity:.5;cursor:not-allowed}.webhook-load-more{border:1px solid var(--border-color-light);width:100%;color:var(--text-secondary);cursor:pointer;text-align:center;background:0 0;border-radius:6px;margin-top:8px;padding:6px 0;font-size:12px;font-weight:500;display:block}.webhook-load-more:hover{background:rgba(var(--accent-rgb,59, 130, 246), .05);border-color:var(--accent);color:var(--accent)}.webhook-load-more:disabled{opacity:.5;cursor:not-allowed}.webhook-form{border-top:1px solid var(--border-color);padding-top:12px}.webhook-form h4{color:var(--text-primary);margin:0 0 10px;font-size:14px;font-weight:600}.webhook-field{margin-bottom:10px}.webhook-field label{color:var(--text-secondary);margin-bottom:4px;font-size:12px;font-weight:500;display:block}.webhook-field input,.webhook-field select{border:1px solid var(--border-input);width:100%;color:var(--text-primary);background:var(--bg-primary);box-sizing:border-box;border-radius:6px;outline:none;padding:6px 10px;font-family:inherit;font-size:13px}.webhook-field input:focus,.webhook-field select:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb,59, 130, 246), .15)}.webhook-submit{background:var(--accent);color:var(--bg-primary);cursor:pointer;border:none;border-radius:6px;margin-top:4px;padding:8px 16px;font-size:13px;font-weight:500}.webhook-submit:hover{background:#4f46e5}.webhook-submit:disabled{cursor:not-allowed;background:#c7d2fe}
.snapshot-overlay{z-index:9999;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.snapshot-modal{background:var(--bg-modal);color:var(--text-primary);border-radius:12px;flex-direction:column;width:800px;max-width:92vw;max-height:80vh;display:flex;box-shadow:0 8px 30px #0000002e}.snapshot-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.snapshot-title{margin:0;font-size:16px;font-weight:600}.snapshot-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.snapshot-close:hover{color:var(--text-primary)}.snapshot-error{color:#b91c1c;background:#fef2f2;border-bottom:1px solid #fecaca;padding:8px 20px;font-size:13px}[data-theme=dark] .snapshot-error{color:#fca5a5;background:#451a1a;border-color:#7f1d1d}.snapshot-body{flex:1;padding:16px 20px;overflow-y:auto}.snapshot-body-preview{flex-direction:column;gap:12px;min-height:0;display:flex}.snapshot-body-confirm{justify-content:center;align-items:center;display:flex}.snapshot-actions-bar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.snapshot-count{color:var(--text-secondary);font-size:13px}.snapshot-loading{text-align:center;color:var(--text-secondary);padding:40px 0;font-size:14px}.snapshot-empty{text-align:center;color:var(--text-secondary);padding:40px 0}.snapshot-empty p{margin:0 0 8px}.snapshot-empty-hint{opacity:.7;font-size:13px}.snapshot-list{flex-direction:column;gap:1px;display:flex}.snapshot-item{border-radius:6px;justify-content:space-between;align-items:center;padding:10px 12px;transition:background .1s;display:flex}.snapshot-item:hover{background:var(--border-color-light)}.snapshot-item-info{flex:1;min-width:0}.snapshot-item-top{align-items:center;gap:8px;margin-bottom:2px;display:flex}.snapshot-item-date{font-size:14px;font-weight:500}.snapshot-item-name{color:var(--text-secondary);margin-bottom:2px;font-size:13px}.snapshot-item-meta{color:var(--text-secondary);font-size:12px}.snapshot-item-actions{flex-shrink:0;gap:6px;margin-left:12px;display:flex}.snapshot-badge{text-transform:capitalize;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:500;display:inline-block}.snapshot-badge-auto{color:#1d4ed8;background:#dbeafe}.snapshot-badge-manual{color:#15803d;background:#dcfce7}.snapshot-badge-pre_restore{color:#b45309;background:#fef3c7}[data-theme=dark] .snapshot-badge-auto{color:#93c5fd;background:#1e3a5f}[data-theme=dark] .snapshot-badge-manual{color:#86efac;background:#14532d}[data-theme=dark] .snapshot-badge-pre_restore{color:#fcd34d;background:#451a03}.snapshot-btn{border:1px solid var(--border-color);background:var(--bg-modal);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;transition:background .1s,border-color .1s;display:inline-flex}.snapshot-btn:hover:not(:disabled){background:var(--border-color-light)}.snapshot-btn:disabled{opacity:.5;cursor:not-allowed}.snapshot-btn-sm{padding:4px 10px;font-size:12px}.snapshot-btn-primary{background:var(--link-color);color:#fff;border-color:var(--link-color)}.snapshot-btn-primary:hover:not(:disabled){background:#1d4ed8}.snapshot-btn-danger{color:#fff;background:#dc2626;border-color:#dc2626}.snapshot-btn-danger:hover:not(:disabled){background:#b91c1c}.snapshot-btn-restore{color:var(--link-color);border-color:#93c5fd}.snapshot-btn-restore:hover:not(:disabled){background:#eff6ff}[data-theme=dark] .snapshot-btn-restore:hover:not(:disabled){background:#1e3a5f}.snapshot-btn-delete{color:var(--text-secondary);border-color:#0000;padding:4px 8px}.snapshot-btn-delete:hover:not(:disabled){color:#dc2626;background:#fef2f2}[data-theme=dark] .snapshot-btn-delete:hover:not(:disabled){color:#fca5a5;background:#451a1a}.snapshot-preview-header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.snapshot-preview-meta{color:var(--text-secondary);flex:1;align-items:center;gap:8px;font-size:13px;display:flex}.snapshot-preview-grid{border:1px solid var(--border-color);border-radius:6px;flex:1;min-height:300px;overflow:hidden}.snapshot-preview-empty{text-align:center;color:var(--text-secondary);padding:60px 0;font-size:14px}.snapshot-confirm-card{text-align:center;max-width:440px}.snapshot-confirm-card h3{margin:0 0 12px;font-size:16px;font-weight:600}.snapshot-confirm-card p{color:var(--text-secondary);margin:0 0 8px;font-size:14px;line-height:1.5}.snapshot-warning{color:#92400e;text-align:left;background:#fef3c7;border-radius:6px;margin:12px 0 16px;padding:10px 14px;font-size:13px;line-height:1.4}[data-theme=dark] .snapshot-warning{color:#fcd34d;background:#451a03}.snapshot-confirm-actions{justify-content:center;gap:10px;display:flex}@media (max-width:640px){.snapshot-modal{border-radius:0;width:100vw;max-width:100vw;max-height:100vh}.snapshot-item{flex-direction:column;align-items:flex-start;gap:8px}.snapshot-item-actions{margin-left:0}}
.perm-overlay{z-index:9999;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.perm-modal{background:var(--bg-modal);color:var(--text-primary);border-radius:12px;flex-direction:column;width:600px;max-width:92vw;max-height:80vh;display:flex;box-shadow:0 8px 30px #0000002e}.perm-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.perm-title{margin:0;font-size:16px;font-weight:600}.perm-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.perm-close:hover{color:var(--text-primary)}.perm-error{color:#b91c1c;background:#fef2f2;border-bottom:1px solid #fecaca;padding:8px 20px;font-size:13px}[data-theme=dark] .perm-error{color:#fca5a5;background:#451a1a;border-color:#7f1d1d}.perm-loading{text-align:center;color:var(--text-secondary);padding:40px}.perm-body{flex:1;padding:16px 20px;overflow-y:auto}.perm-member-write-toggle{border-bottom:1px solid var(--border-color);background:var(--bg-secondary,transparent);padding:12px 20px}.perm-member-write-label{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.perm-member-write-label input[type=checkbox]{cursor:pointer}.perm-role-bar{align-items:center;gap:8px;margin-bottom:12px;display:flex}.perm-label{color:var(--text-secondary);font-size:13px;font-weight:600}.perm-role-btn{border:1px solid var(--border-color);background:var(--bg-modal);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:5px 14px;font-size:13px}.perm-role-btn--active{border-color:var(--accent);color:#1d4ed8;background:#eff6ff}[data-theme=dark] .perm-role-btn--active{color:#93c5fd;background:#1e3a5f}.perm-tabs{border-bottom:1px solid var(--border-color);gap:0;margin-bottom:14px;display:flex}.perm-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 16px;font-size:13px;font-weight:500}.perm-tab--active{color:var(--link-color);border-bottom-color:var(--link-color)}.perm-section{min-height:120px}.perm-hint{color:var(--text-secondary);margin:0 0 12px;font-size:13px;line-height:1.4}.perm-filter-row{align-items:center;gap:6px;margin-bottom:8px;display:flex}.perm-select,.perm-input{border:1px solid var(--border-color);background:var(--bg-modal);color:var(--text-primary);border-radius:6px;padding:6px 8px;font-size:12px}.perm-select{min-width:120px}.perm-select-sm{min-width:100px}.perm-input{flex:1;min-width:80px}.perm-remove-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:16px}.perm-remove-btn:hover{color:#dc2626}.perm-add-btn{border:1px dashed var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;margin-top:4px;padding:5px 12px;font-size:12px;display:inline-flex}.perm-add-btn:hover{border-color:var(--accent);color:var(--accent)}.perm-field-list{flex-direction:column;gap:2px;max-height:240px;display:flex;overflow-y:auto}.perm-field-item{cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.perm-field-item:hover{background:var(--border-color-light)}.perm-field-type{color:var(--text-secondary);margin-left:auto;font-size:11px}.perm-field-access-row{border-radius:4px;align-items:center;gap:10px;padding:6px 8px;font-size:13px;display:flex}.perm-field-access-row:hover{background:var(--border-color-light)}.perm-field-access-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.perm-field-access-checkbox{color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:flex}.perm-field-access-row--highlight{animation:1.5s ease-out perm-field-flash}@keyframes perm-field-flash{0%{background-color:var(--color-primary-subtle,#4f7ef82e)}80%{background-color:var(--color-primary-subtle,#4f7ef814)}to{background-color:#0000}}@media (prefers-reduced-motion:reduce){.perm-field-access-row--highlight{animation:1.5s linear perm-field-flash-static}@keyframes perm-field-flash-static{0%,80%{background-color:var(--color-primary-subtle,#4f7ef81f)}to{background-color:#0000}}}.perm-member-select{width:100%;margin-bottom:12px}.perm-actions{border-top:1px solid var(--border-color);align-items:center;gap:8px;margin-top:16px;padding-top:14px;display:flex}.perm-actions-spacer{flex:1}.perm-btn{border:1px solid var(--border-color);background:var(--bg-modal);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:13px}.perm-btn:hover:not(:disabled){background:var(--border-color-light)}.perm-btn:disabled{opacity:.5;cursor:not-allowed}.perm-btn-primary{background:var(--link-color);color:#fff;border-color:var(--link-color)}.perm-btn-primary:hover:not(:disabled){background:#1d4ed8}.perm-btn-danger{color:#dc2626;border-color:#fca5a5}.perm-btn-danger:hover:not(:disabled){background:#fef2f2}[data-theme=dark] .perm-btn-danger:hover:not(:disabled){background:#451a1a}.perm-modal-folder{width:520px}.perm-folder-empty{text-align:center;color:var(--text-secondary);padding:24px 0;font-size:13px}.perm-folder-table-list{flex-direction:column;gap:4px;max-height:360px;display:flex;overflow-y:auto}.perm-folder-table-row{border-radius:6px;align-items:center;gap:8px;padding:8px;display:flex}.perm-folder-table-row:hover{background:var(--border-color-light)}.perm-folder-table-icon{flex-shrink:0;font-size:14px}.perm-folder-table-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.perm-folder-status-pill{white-space:nowrap;background:var(--badge-info-bg,var(--border-color-light));color:var(--badge-info-fg,var(--text-secondary));border-radius:8px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:600}.perm-folder-status-pill--custom{background:var(--badge-warning-bg);color:var(--badge-warning-fg)}.perm-btn-sm{flex-shrink:0;padding:4px 10px;font-size:12px}.perm-grant-tree{border:1px solid var(--border-color);background:var(--bg-modal);border-radius:8px;flex-direction:column;gap:2px;max-height:320px;padding:6px;display:flex;overflow-y:auto}.perm-grant-tree-status{text-align:center;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;padding:16px;font-size:12px}.perm-grant-tree-status--error{color:var(--danger,#ef4444)}.perm-grant-folder-group{border-bottom:1px solid var(--border-color-light);flex-direction:column;gap:1px;margin-bottom:4px;padding-bottom:4px;display:flex}.perm-grant-folder-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.perm-grant-row{color:var(--text-primary);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.perm-grant-row:hover{background:var(--border-color-light)}.perm-grant-row input[type=checkbox]{cursor:pointer;accent-color:var(--link-color);flex-shrink:0}.perm-grant-subfolder-group{flex-direction:column;gap:1px;display:flex}.perm-grant-chevron{width:16px;height:16px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:11px;line-height:1;display:inline-flex}.perm-grant-chevron:hover{background:var(--border-color-light);color:var(--text-primary)}.perm-grant-chevron--empty{cursor:default;pointer-events:none}.perm-grant-row input[type=checkbox]:disabled{opacity:.55;cursor:not-allowed}.perm-grant-row--level1{color:var(--text-secondary);margin-left:22px;font-size:12.5px}.perm-grant-row--level2{color:var(--text-secondary);margin-left:44px;font-size:12px}.perm-grant-icon{flex-shrink:0;font-size:13px}.perm-grant-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.perm-grant-meta{color:var(--text-secondary);flex-shrink:0;font-size:11px}.perm-grant-collapse-btn{color:var(--link-color);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px 4px;font-size:11px}.perm-grant-collapse-btn:hover{text-decoration:underline}.perm-grant-caption{color:var(--text-secondary);margin:-2px 0 2px 32px;font-size:11px;line-height:1.3}.perm-grant-caption--level1{margin-left:52px}.perm-grant-section-lbl{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;padding:4px 8px 2px;font-size:11px;font-weight:600}@media (max-width:640px){.perm-modal{border-radius:0;width:100vw;max-width:100vw}.perm-filter-row{flex-wrap:wrap}}
.conflict-dialog-overlay{z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.conflict-dialog-card{background:var(--bg-primary);border-radius:12px;width:100%;max-width:480px;overflow:hidden;box-shadow:0 8px 32px #00000026}.conflict-dialog-header{border-bottom:1px solid var(--border-color);align-items:center;gap:10px;padding:20px 24px 16px;display:flex}.conflict-dialog-icon{color:#d97706;background:#fef3c7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.conflict-dialog-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.conflict-dialog-subtitle{color:var(--text-secondary);margin:2px 0 0;font-size:13px}.conflict-dialog-body{padding:20px 24px}.conflict-dialog-description{color:var(--text-label);margin:0 0 16px;font-size:14px;line-height:1.5}.conflict-dialog-values{flex-direction:column;gap:12px;display:flex}.conflict-dialog-value-block{flex-direction:column;gap:4px;display:flex}.conflict-dialog-value-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.conflict-dialog-value{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-label);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;max-width:100%;padding:8px 12px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;overflow:hidden}.conflict-dialog-value--empty{color:var(--text-muted);font-style:italic}.conflict-dialog-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:8px;padding:16px 24px 20px;display:flex}.conflict-dialog-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s}.conflict-dialog-btn:disabled{opacity:.5;cursor:not-allowed}.conflict-dialog-btn--primary{background:var(--accent);color:var(--accent-fg)}.conflict-dialog-btn--primary:hover:not(:disabled){background:var(--link-color)}.conflict-dialog-btn--secondary{background:var(--hover);color:var(--text-label);border:1px solid var(--border-input)}.conflict-dialog-btn--secondary:hover:not(:disabled){background:var(--border-color)}@media (max-width:520px){.conflict-dialog-card{max-width:calc(100% - 32px);margin:16px}}[data-theme=dark] .conflict-dialog-card{background:var(--bg-modal);box-shadow:0 8px 32px #0006}[data-theme=dark] .conflict-dialog-header{border-bottom-color:var(--border-color)}[data-theme=dark] .conflict-dialog-icon{background:#d9770626}[data-theme=dark] .conflict-dialog-title{color:var(--text-primary)}[data-theme=dark] .conflict-dialog-subtitle{color:var(--text-secondary)}[data-theme=dark] .conflict-dialog-description{color:var(--text-label)}[data-theme=dark] .conflict-dialog-value-label{color:var(--text-secondary)}[data-theme=dark] .conflict-dialog-value{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .conflict-dialog-footer{border-top-color:var(--border-color)}[data-theme=dark] .conflict-dialog-btn--secondary{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .conflict-dialog-btn--secondary:hover:not(:disabled){background:var(--hover)}
.shortcut-cheatsheet-overlay{z-index:10000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.shortcut-cheatsheet{background:var(--bg-modal);border-radius:12px;flex-direction:column;width:420px;max-width:90vw;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 8px 30px #0003}.shortcut-cheatsheet-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.shortcut-cheatsheet-header h3{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.shortcut-cheatsheet-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.shortcut-cheatsheet-close:hover{color:var(--text-primary)}.shortcut-cheatsheet-body{flex:1;padding:12px 20px;overflow-y:auto}.shortcut-cheatsheet-row{border-bottom:1px solid var(--border-color-light);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.shortcut-cheatsheet-row:last-child{border-bottom:none}.shortcut-cheatsheet-label{color:var(--text-label);font-size:14px}.shortcut-cheatsheet-keys{align-items:center;gap:2px;display:flex}.shortcut-cheatsheet-keys kbd{border:1px solid var(--border-input);background:var(--bg-secondary);min-width:24px;height:24px;color:var(--text-label);border-radius:4px;justify-content:center;align-items:center;padding:0 6px;font-family:inherit;font-size:12px;display:inline-flex;box-shadow:0 1px 2px #0000000d}.shortcut-cheatsheet-separator{color:var(--text-muted);margin:0 1px;font-size:11px}.shortcut-cheatsheet-footer{border-top:1px solid var(--border-color);color:var(--text-muted);text-align:center;padding:10px 20px;font-size:12px}.shortcut-cheatsheet-footer kbd{border:1px solid var(--border-input);background:var(--bg-secondary);min-width:18px;height:18px;color:var(--text-secondary);border-radius:3px;justify-content:center;align-items:center;margin:0 2px;padding:0 4px;font-family:inherit;font-size:11px;display:inline-flex}
[cmdk-dialog]{z-index:10000;justify-content:center;align-items:flex-start;padding-top:20vh;display:flex;position:fixed;inset:0}[cmdk-overlay]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;position:fixed;inset:0}[cmdk-root]{background:var(--bg-surface);border:1px solid var(--border);width:480px;max-height:400px;color:var(--text-primary);border-radius:12px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 16px #00000026}[cmdk-input]{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text-primary);background:0 0;outline:none;padding:12px 16px;font-family:inherit;font-size:14px}[cmdk-input]::placeholder{color:var(--text-muted)}[cmdk-list]{max-height:300px;padding:8px;overflow-y:auto}[cmdk-group-heading]{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);padding:4px 8px;font-size:11px;font-weight:600}[cmdk-item]{cursor:pointer;color:var(--text-primary);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;display:flex}[cmdk-item][data-selected=true]{background:var(--bg-hover)}[cmdk-item]:active{background:var(--border)}[cmdk-empty]{text-align:center;color:var(--text-secondary);padding:24px;font-size:14px}[cmdk-separator]{background:var(--border);height:1px;margin:4px 0}.cmdk-shortcut-hint{gap:4px;margin-left:auto;display:flex}.cmdk-shortcut-hint kbd{background:var(--border);color:var(--text-secondary);border-radius:4px;padding:2px 5px;font-family:inherit;font-size:11px}.cmdk-section-icon{width:16px;height:16px;color:var(--text-secondary);flex-shrink:0}.cmdk-loading-skeleton{flex-direction:column;gap:8px;padding:8px 12px;display:flex}.cmdk-loading-skeleton-line{background:var(--border);border-radius:4px;height:14px;animation:1.5s infinite shimmer}@keyframes shimmer{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}
.find-replace-bar{z-index:50;background:#fefce8;border-bottom:1px solid #fde68a;flex-direction:column;gap:6px;padding:8px 12px;display:flex;position:sticky;top:0}[data-theme=dark] .find-replace-bar{background:#422006;border-bottom-color:#78350f}.find-replace-bar__find-row,.find-replace-bar__replace-row{align-items:center;gap:6px;display:flex}.find-replace-bar input[type=text]{border:1px solid var(--border-input);min-width:200px;color:var(--text-primary);background:var(--bg-primary);border-radius:4px;outline:none;padding:5px 8px;font-size:13px}.find-replace-bar input[type=text]:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb,59, 130, 246), .15)}.find-replace-bar button{border:1px solid var(--border-input);background:var(--bg-primary);cursor:pointer;color:var(--text-label);white-space:nowrap;border-radius:4px;padding:4px 10px;font-size:12px}.find-replace-bar button:hover{background:var(--hover);border-color:var(--text-muted)}.find-replace-bar button:disabled{opacity:.4;cursor:not-allowed}.find-replace-bar__case-btn{text-align:center;min-width:28px;font-weight:600;font-size:13px!important}.find-replace-bar__case-btn--active{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}.find-replace-bar__match-count{color:var(--text-secondary);text-align:center;min-width:60px;font-size:12px}.find-replace-bar__close-btn{margin-left:auto;line-height:1;padding:2px 6px!important;font-size:16px!important}.find-replace-bar__toggle-replace{line-height:1;padding:2px 6px!important;font-size:14px!important}.find-replace-highlight{background-color:#fef08a!important}.find-replace-highlight-current{background-color:#fb923c!important}[data-theme=dark] .find-replace-highlight{background-color:#fef08a40!important}[data-theme=dark] .find-replace-highlight-current{background-color:#fb923c66!important}
.automation-preview-card{background:#fffbeb;border:1px solid #fbbf24;border-radius:8px;margin-top:8px;padding:10px 12px}.automation-preview-header{align-items:center;gap:6px;margin-bottom:8px;display:flex}.automation-preview-icon{color:#92400e;flex-shrink:0}.automation-preview-title{color:#92400e;font-size:13px;font-weight:600;line-height:1.3}.automation-preview-name{color:var(--text-primary);margin-bottom:4px;font-size:13px;font-weight:600}.automation-preview-description{color:var(--text-secondary);margin-bottom:8px;font-size:12px;font-weight:400;line-height:1.4}.automation-preview-section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:8px;margin-bottom:4px;font-size:11px;font-weight:600}.automation-preview-detail,.automation-preview-action-item{color:#78350f;font-size:12px;font-weight:400;line-height:1.4}.automation-preview-footer{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.automation-preview-toggle-wrapper{align-items:center;gap:8px;display:flex}.automation-preview-toggle-label{color:var(--text-secondary);font-size:12px}.automation-preview-buttons{gap:6px;display:flex}.automation-preview-btn-confirm{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:5px;padding:5px 14px;font-size:12px;font-weight:500}.automation-preview-btn-confirm:hover{background:#15803d}.automation-preview-btn-confirm:disabled{opacity:.6;cursor:not-allowed}.automation-preview-btn-discard{background:var(--text-muted);color:#fff;cursor:pointer;border:none;border-radius:5px;padding:5px 14px;font-size:12px;font-weight:500}.automation-preview-btn-discard:hover{background:var(--text-secondary)}.automation-preview-btn-discard:disabled{opacity:.6;cursor:not-allowed}.automation-created-card{border:1px solid var(--border-color);border-left:3px solid var(--accent);background:var(--bg-secondary);border-radius:8px;margin-top:8px;padding:12px}.automation-created-header{align-items:center;gap:6px;margin-bottom:8px;display:flex}.automation-created-icon{color:#16a34a}.automation-created-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.automation-created-name{color:var(--text-primary);margin-bottom:4px;font-size:13px;font-weight:600}.automation-created-detail{color:var(--text-secondary);font-size:13px;font-weight:400}.automation-created-action{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-top:8px;padding:0;font-size:13px;font-weight:500;display:inline-flex}.automation-created-action:hover{text-decoration:underline}[data-theme=dark] .automation-preview-card{background:#fbbf241a;border-color:#fbbf2466}[data-theme=dark] .automation-preview-title,[data-theme=dark] .automation-preview-icon{color:#fbbf24}[data-theme=dark] .automation-preview-detail,[data-theme=dark] .automation-preview-action-item{color:#fde68a}[data-theme=dark] .automation-created-icon{color:#4ade80}
