:root{--bg-primary: #f5f6fa;--bg-secondary: #ffffff;--bg-tertiary: #eef0f5;--bg-surface: #ffffff;--bg-elevated: #f5f6fa;--bg-hover: #ebedf3;--bg-input: #ffffff;--text-primary: #1a1a2e;--text-secondary: #4a4a63;--text-muted: #80809a;--text-inverse: #ffffff;--accent: #3b2fd4;--accent-hover: #5b4fe8;--accent-subtle: rgba(59, 47, 212, .06);--accent-light: rgba(59, 47, 212, .12);--accent-muted: rgba(59, 47, 212, .15);--accent-moderate: rgba(59, 47, 212, .25);--accent-glow: rgba(59, 47, 212, .3);--success: #10b981;--success-muted: rgba(16, 185, 129, .15);--success-light: rgba(16, 185, 129, .2);--success-glow: rgba(16, 185, 129, .3);--warning: #f59e0b;--warning-muted: rgba(245, 158, 11, .15);--warning-light: rgba(245, 158, 11, .2);--warning-glow: rgba(245, 158, 11, .3);--danger: #ef4444;--danger-hover: #dc2626;--danger-muted: rgba(239, 68, 68, .15);--danger-glow: rgba(239, 68, 68, .3);--engine-down: #f97316;--engine-down-muted: rgba(249, 115, 22, .15);--engine-down-light: rgba(249, 115, 22, .2);--module-accent: #fb7185;--modified-border: rgba(217, 119, 6, .5);--modified-bg: rgba(245, 158, 11, .08);--border: rgba(20, 22, 40, .1);--border-light: rgba(20, 22, 40, .16);--surface-hover-xs: rgba(20, 22, 40, .03);--surface-hover: rgba(20, 22, 40, .05);--surface-hover-md: rgba(20, 22, 40, .08);--surface-hover-lg: rgba(20, 22, 40, .12);--overlay-sm: rgba(20, 22, 40, .35);--overlay-md: rgba(20, 22, 40, .45);--overlay-lg: rgba(20, 22, 40, .55);--overlay-dark: rgba(20, 22, 40, .75);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px rgba(20, 22, 40, .08);--shadow-lg: 0 8px 32px rgba(20, 22, 40, .18);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", monospace;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .875rem;--font-size-lg: 1rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--z-header: 100;--z-modal: 500;--z-viewer: 600;--z-toast: 700;--z-auth: 800}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-primary);line-height:1.6;min-height:100vh;overflow:hidden}h1,h2,h3{font-weight:600;line-height:1.3}h2{font-size:var(--font-size-lg);color:var(--text-primary)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}code{font-family:var(--font-mono);font-size:var(--font-size-sm);background:var(--bg-tertiary);padding:2px 6px;border-radius:var(--radius-sm);color:var(--accent)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent-muted);color:var(--text-primary)}@keyframes spin{to{transform:rotate(360deg)}}.hidden{display:none!important}.flex-grow{flex:1;min-width:0;display:flex;flex-direction:column}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:10px 20px;font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:500;border:1px solid transparent;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);white-space:nowrap;-webkit-user-select:none;user-select:none;text-decoration:none;line-height:1}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 0 0 1px #3b2fd44d,0 4px 20px #3b2fd44d}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 0 0 1px #5b4fe866,0 8px 30px #3b2fd466;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--danger);color:var(--text-primary);border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn-ghost.btn-danger{background:transparent;color:var(--danger);border-color:transparent}.btn-ghost.btn-danger:hover:not(:disabled){background:var(--danger-muted)}.btn-full{width:100%}.btn-sm{padding:6px 12px;font-size:var(--font-size-xs)}.btn-icon{padding:8px;width:36px;height:36px}.btn-icon.btn-sm{width:30px;height:30px;padding:6px}.btn.btn-xs{padding:4px 6px;font-size:11px}.input,.select,.textarea{width:100%;padding:10px 14px;font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235a6a85' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.select option{background:var(--bg-secondary);color:var(--text-primary)}.select-value-missing{color:var(--danger);border-color:var(--danger)}.select-value-missing:focus{box-shadow:0 0 0 3px var(--danger-muted)}.select-inventory-empty{color:var(--warning);border-color:var(--warning);font-style:italic;cursor:not-allowed;opacity:.85}.select-inventory-empty:disabled{background-color:var(--bg-input)}.textarea{resize:vertical;min-height:80px;line-height:1.5}.textarea-code{font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.4}.textarea.textarea-sm{font-size:var(--font-size-xs);padding:6px 10px;min-height:unset}.input-group{display:flex;flex-direction:column;gap:var(--space-xs)}.input-group+.input-group{margin-top:var(--space-md)}.input-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.input-group-row{display:flex;gap:var(--space-md);margin-top:var(--space-md)}.input-group-row .input-group{flex:1;margin-top:0}.input-hint{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px}.input-group-inline{width:auto;flex-direction:row;align-items:center;gap:6px}.input-group-inline input[type=checkbox]{margin:0;accent-color:var(--accent)}.input-group-inline label{font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.input.input-sm,.select.input-sm{padding:6px 10px;font-size:var(--font-size-sm)}.inline-edit-input{width:100%;background:var(--bg-input);border:1px solid var(--accent);border-radius:var(--radius-sm);font-family:var(--font-sans);color:var(--text-primary);outline:none;box-shadow:0 0 0 2px var(--accent-muted)}.inline-edit-input::placeholder{color:var(--text-muted)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-size:var(--font-size-xs);font-weight:500;border-radius:20px;border:1px solid transparent}.status-dot{width:8px;height:8px;border-radius:50%}.status-connected{color:var(--success);background:var(--success-muted);border-color:var(--success-light)}.status-connected .status-dot{background:var(--success);box-shadow:0 0 6px var(--success);animation:pulse-dot 2s infinite}.status-disconnected{color:var(--text-muted);background:#5a6a851a;border-color:#5a6a8533}.status-disconnected .status-dot{background:var(--text-muted)}.status-generating{color:var(--warning);background:var(--warning-muted);border-color:var(--warning-light)}.status-generating .status-dot{background:var(--warning);box-shadow:0 0 6px var(--warning);animation:pulse-dot 1s infinite}.status-engine-down{color:var(--engine-down);background:var(--engine-down-muted);border-color:var(--engine-down-light)}.status-engine-down .status-dot{background:var(--engine-down);box-shadow:0 0 6px var(--engine-down);animation:pulse-dot 2s infinite}.status-connecting{color:var(--text-secondary);background:#94a3b81a;border-color:#94a3b833}.status-connecting .status-dot{background:var(--text-secondary);animation:pulse-dot 1s infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.progress-bar{width:100%;height:6px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden}.progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-hover));border-radius:3px;transition:width var(--transition-normal);position:relative}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-percent{font-size:var(--font-size-sm);font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}.step-progress-row{margin-top:var(--space-xs)}.step-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.step-progress-label{font-size:10px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step-progress-percent{font-size:10px}.step-progress-bar{height:4px}.step-progress-fill{background:linear-gradient(90deg,var(--success),var(--success-light))}.step-progress-fill:after{animation-duration:1.5s}.progress-status{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--space-xs)}.profile-selector{display:flex;gap:var(--space-sm);align-items:center}.profile-selector .select{flex:1}.instance-selector{display:flex;gap:var(--space-xs);align-items:center;margin-top:var(--space-xs)}.instance-selector .select{flex:1;font-size:var(--font-size-xs)}.delete-profile-instances-list{margin-top:var(--space-sm)}.delete-profile-instances-list .instance-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xs) var(--space-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);margin-bottom:var(--space-xs);font-size:var(--font-size-sm)}.delete-profile-instances-list .instance-item-name{color:var(--text-primary);font-weight:500}.delete-profile-instances-list .instance-item-date{color:var(--text-muted);font-size:var(--font-size-xs)}.help-details{margin-top:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.help-details summary{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;background:var(--bg-surface);-webkit-user-select:none;user-select:none}.help-details summary:hover{color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:var(--space-lg)}.tab{padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tab-content{animation:fadeIn .15s ease}.modal-body-scroll{max-height:calc(92vh - 130px);overflow-y:auto}.text-muted{color:var(--text-muted);font-size:var(--font-size-sm)}.text-muted-hint{margin-top:var(--space-xs);font-size:var(--font-size-xs)}.cs-container{position:relative;-webkit-user-select:none;user-select:none;cursor:ew-resize}.cs-container img{display:block;pointer-events:none}.cs-before{display:block}.cs-clip{position:absolute;inset:0;clip-path:inset(0 0 0 50%);overflow:hidden}.cs-after{position:absolute;top:0;left:0;width:100%;height:100%}.cs-divider{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--text-primary);transform:translate(-50%);z-index:2;pointer-events:none}.cs-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;background:#ffffffe6;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0006;color:var(--text-inverse)}.cs-handle svg{width:14px;height:14px}.cs-label{position:absolute;bottom:var(--space-sm);padding:4px 12px;background:var(--overlay-lg);color:var(--text-primary);font-size:var(--font-size-xs);border-radius:12px;z-index:3;pointer-events:none}.cs-label-before{left:var(--space-sm)}.cs-label-after{right:var(--space-sm)}.cs-overlay{position:fixed;inset:0;z-index:var(--z-viewer);background:var(--overlay-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;animation:fadeIn var(--transition-fast)}.cs-overlay .cs-container{max-width:85vw;max-height:85vh}.cs-overlay .cs-container img{max-width:85vw;max-height:85vh;object-fit:contain;border-radius:var(--radius-md)}.cs-inline-wrapper{width:100%;max-width:600px;margin-bottom:var(--space-lg)}.cs-inline-wrapper .cs-container{border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border)}.cs-inline-wrapper .cs-container img{width:100%;height:auto}.mask-upload-row{display:flex;align-items:center;gap:var(--space-sm)}.mask-upload-row.drag-over{outline:2px dashed var(--accent);outline-offset:2px;border-radius:var(--radius-sm);background:var(--accent-subtle)}.mask-filename{font-size:var(--font-size-xs);color:var(--text-muted);font-family:var(--font-mono);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-thumb{width:40px;height:40px;border-radius:4px;object-fit:cover;border:1px solid var(--border)}.image-field-settings{display:flex;flex-direction:column;gap:var(--space-sm)}.image-field-settings-controls{display:flex;align-items:center;gap:var(--space-sm)}.image-field-settings-upload{display:flex;align-items:center}.brick-loading-overlay{position:absolute;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);background:color-mix(in srgb,var(--bg-primary) 78%,transparent);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);cursor:progress}.brick-loading-overlay.hidden{display:none}.brick-loading-spinner{width:40px;height:40px;border:3px solid var(--surface-hover);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.brick-loading-text{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm)}.app{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border);z-index:var(--z-header);flex-shrink:0}.header-left{display:flex;align-items:center;gap:var(--space-md);min-width:0;flex:1 1 auto;overflow:hidden}.header-title{font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,var(--accent),var(--accent-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-right{display:flex;align-items:center;gap:var(--space-xs);flex:0 0 auto}.main{flex:1;display:flex;overflow:hidden;position:relative}.panel{display:flex;flex-direction:column;overflow:hidden}.panel-left{width:400px;min-width:320px;background:var(--bg-secondary);border-right:1px solid var(--border);padding:var(--space-lg);gap:var(--space-lg);overflow-y:auto}.panel-right{flex:1;padding:var(--space-lg);gap:var(--space-md);overflow-y:auto;overflow-x:hidden}.panel-section{display:flex;flex-direction:column;gap:var(--space-sm)}.section-header{display:flex;align-items:center;justify-content:space-between;min-height:32px}.section-actions{display:flex;gap:var(--space-xs)}.generate-row{display:flex;gap:var(--space-sm);align-items:stretch}.modal{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;animation:fadeIn var(--transition-fast)}#modal-mask-painter{z-index:var(--z-viewer)}.modal-backdrop{position:absolute;inset:0;background:var(--overlay-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{position:relative;width:90%;max-width:560px;max-height:85vh;max-height:85dvh;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:slideUp var(--transition-normal)}.modal-content.modal-large{max-width:900px;width:95%;max-height:92vh;max-height:92dvh}.modal-content.modal-sm{max-width:420px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid var(--border);flex-shrink:0}.modal-header h2{font-size:var(--font-size-lg)}.modal-body{padding:var(--space-lg);overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border);flex-shrink:0}.picker-overlay{position:fixed;inset:0;z-index:var(--z-viewer);display:flex;align-items:center;justify-content:center;background:var(--overlay-sm);animation:fadeIn var(--transition-fast)}.picker-dialog{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);max-width:480px;width:90%;max-height:70vh;max-height:70dvh;overflow-y:auto;overscroll-behavior:contain;box-shadow:var(--shadow-lg)}.picker-dialog h3{margin-bottom:var(--space-md)}.modal-content.modal-pass-profile{max-width:480px}.pass-profile-hint{font-size:var(--font-size-xs);color:var(--text-muted);margin-bottom:var(--space-md)}.pass-profile-list{display:flex;flex-direction:column;gap:var(--space-xs)}.pass-profile-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);cursor:pointer;transition:all var(--transition-fast)}.pass-profile-item:hover{border-color:var(--accent);background:var(--bg-hover)}.pass-profile-item-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);flex:1}.pass-profile-item-slots{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap}.toast-container{position:fixed;bottom:var(--space-lg);right:var(--space-lg);z-index:var(--z-toast);display:flex;flex-direction:column-reverse;gap:var(--space-sm)}.toast{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:var(--font-sans);border:1px solid;animation:slideUp var(--transition-normal);max-width:360px}.toast-success{background:var(--success-muted);border-color:var(--success-glow);color:var(--success)}.toast-error{background:var(--danger-muted);border-color:var(--danger-glow);color:var(--danger)}.toast-info{background:var(--accent-muted);border-color:var(--accent-glow);color:var(--accent)}.toast-warning{background:var(--warning-muted);border-color:var(--warning-glow);color:var(--warning)}.popup-overlay{position:fixed;inset:0;z-index:var(--z-toast);display:flex;align-items:center;justify-content:center;background:#0000;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:background .2s ease,backdrop-filter .2s ease;outline:none}.popup-overlay.popup-visible{background:var(--overlay-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.popup-dialog{width:90%;max-width:420px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:slideUp var(--transition-normal)}.popup-dialog-info{border-top:3px solid var(--accent)}.popup-dialog-warning{border-top:3px solid var(--warning)}.popup-dialog-danger{border-top:3px solid var(--danger)}.popup-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-lg) var(--space-lg) 0}.popup-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);flex-shrink:0}.popup-icon svg{width:20px;height:20px}.popup-icon-info{background:var(--accent-muted);color:var(--accent)}.popup-icon-warning{background:var(--warning-muted);color:var(--warning)}.popup-icon-danger{background:var(--danger-muted);color:var(--danger)}.popup-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin:0}.popup-message{padding:var(--space-md) var(--space-lg);font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.6}.popup-input-wrapper{padding:0 var(--space-lg) var(--space-sm)}.popup-input{width:100%}.popup-footer{display:flex;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border)}@media(max-width:480px){.popup-dialog{width:95%;max-width:none;margin:0 var(--space-sm)}.popup-footer{flex-direction:column-reverse}.popup-footer .btn{width:100%}}.modal-content.modal-account{max-width:520px;width:94%;max-height:85vh}.modal-content.modal-account .modal-body{display:flex;flex-direction:column;gap:var(--space-lg);overflow-y:auto}.account-section{padding:var(--space-md);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md)}.account-section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-md) 0}.account-identity{display:flex;flex-direction:column;gap:var(--space-sm)}.account-field{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-md);font-size:var(--font-size-sm)}.account-field-label{color:var(--text-muted)}.account-field-value{color:var(--text-primary);font-weight:500;word-break:break-all;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-xs)}.account-verify-badge{display:inline-block;margin-left:var(--space-xs);padding:2px 8px;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.account-verify-badge.is-verified{background:var(--success-muted);color:var(--success)}.account-verify-badge.is-unverified{background:var(--warning-muted);color:var(--warning)}.account-pending-email{font-size:var(--font-size-xs);color:var(--warning);font-weight:500;margin-top:var(--space-xs)}.account-form{display:flex;flex-direction:column;gap:var(--space-md)}.account-form button[type=submit]{align-self:flex-start}.account-error{color:var(--danger);font-size:var(--font-size-sm);margin:0}.account-danger{border-color:var(--danger-muted);background:var(--danger-muted)}.account-danger .account-section-title{color:var(--danger)}.account-danger-hint{font-size:var(--font-size-sm);color:var(--text-muted);margin:0 0 var(--space-md) 0}.account-tabs{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:var(--space-md);border-bottom:1px solid var(--border)}.account-tab-btn{background:transparent;border:none;border-bottom:2px solid transparent;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.account-tab-btn:hover{color:var(--text-primary)}.account-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.account-tab-panel{display:block}.account-tab-panel.hidden{display:none}.account-tab-empty{padding:var(--space-2xl) var(--space-md);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm)}.mb-root{display:flex;flex-direction:column;height:100%;min-height:0}#mb-container{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.mb-subtabs{display:flex;gap:var(--space-xs);padding:var(--space-sm) var(--space-md) 0;border-bottom:1px solid var(--border);flex-shrink:0}.mb-subtab{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--text-secondary);cursor:pointer;padding:var(--space-sm) var(--space-md);font:inherit;font-size:var(--font-size-sm);font-weight:500;transition:color var(--transition-fast),border-color var(--transition-fast)}.mb-subtab:hover{color:var(--text-primary)}.mb-subtab.active{color:var(--accent);border-bottom-color:var(--accent)}.mb-panel{flex:1;min-height:0;overflow:auto;padding:var(--space-md)}.mb-panel.mb-panel-flex{display:flex;overflow:hidden;padding:0}.mb-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-2xl);text-align:center;color:var(--text-muted)}.mb-empty h3{color:var(--text-primary);margin:0}.mb-settings-toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--space-md)}.mb-account-list{display:flex;flex-direction:column;gap:var(--space-sm)}.mb-account-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.mb-account-card-info{display:flex;flex-direction:column;gap:2px;min-width:0}.mb-account-card-label{font-weight:600;color:var(--text-primary)}.mb-account-card-meta{font-size:var(--font-size-xs);color:var(--text-muted)}.mb-account-card-actions{display:flex;gap:var(--space-xs);flex-shrink:0}.mb-editor{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-md)}.mb-editor h2{margin:0}.mb-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-md)}.mb-section h3{margin:0 0 var(--space-sm);font-size:var(--font-size-base);color:var(--text-primary)}.mb-row{display:flex;gap:var(--space-sm);flex-wrap:wrap}.mb-row>.mb-field{flex:1 1 200px}.mb-field{display:flex;flex-direction:column;gap:4px}.mb-field label{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500}.mb-field input,.mb-field select{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;padding:var(--space-sm)}.mb-field-hint{font-size:var(--font-size-xs);color:var(--text-muted)}.mb-field-hint.mb-warning{background:var(--warning-muted);border-left:3px solid var(--warning);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);padding:var(--space-sm) var(--space-md);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.mb-warning a{color:var(--accent);text-decoration:underline}.mb-warning a:hover,.mb-warning a:focus-visible{color:var(--accent-hover);text-decoration:underline}.mb-actions{display:flex;justify-content:flex-end;gap:var(--space-sm)}.mb-subtabs-inner{padding:0 0 var(--space-sm);margin-bottom:var(--space-md)}.mb-admin-inner{display:flex;flex-direction:column;gap:var(--space-md)}.mb-presets-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-md)}.mb-presets-title{margin:0 0 var(--space-xs);color:var(--text-primary);font-size:var(--font-size-lg)}.mb-presets-intro{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm);max-width:70ch}.mb-presets-list{display:flex;flex-direction:column;gap:var(--space-sm)}.mb-presets-card{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-md);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-md)}.mb-presets-card-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.mb-presets-card-title{display:flex;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap}.mb-presets-card-label{color:var(--text-primary);font-weight:600}.mb-presets-card-slug{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--font-size-xs)}.mb-presets-card-meta,.mb-presets-card-domains,.mb-presets-card-notes{color:var(--text-secondary);font-size:var(--font-size-xs);word-break:break-word}.mb-presets-card-domains{font-family:var(--font-mono)}.mb-presets-card-notes{color:var(--text-muted)}.mb-presets-card-actions{display:flex;gap:var(--space-xs);flex-shrink:0}.mb-viewer{display:grid;grid-template-columns:220px 320px 1fr;flex:1;min-height:0;overflow:hidden}.mb-viewer-pane{border-right:1px solid var(--border);overflow:auto;display:flex;flex-direction:column;min-height:0}.mb-viewer-pane:last-child{border-right:0}.mb-messages-pane{overflow:hidden}.mb-messages-pane .mb-messages-header{flex-shrink:0}.mb-messages-pane .mb-message-list{flex:1;min-height:0;overflow-y:auto}.mb-viewer-header{flex-shrink:0;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);background:var(--bg-secondary)}.mb-account-select{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);padding:6px var(--space-sm);font:inherit}.mb-folder-list{list-style:none;margin:0;padding:var(--space-sm);display:flex;flex-direction:column;gap:2px}.mb-folder-item{display:flex;align-items:center;gap:var(--space-sm);padding:6px var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);font-size:var(--font-size-sm);transition:background var(--transition-fast),color var(--transition-fast)}.mb-folder-item:hover{background:var(--surface-hover);color:var(--text-primary)}.mb-folder-item.active{background:var(--accent-light);color:var(--accent);font-weight:500}.mb-folder-item.disabled{opacity:.4;cursor:not-allowed}.mb-folder-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-folder-badge{font-size:var(--font-size-xs);background:var(--accent-muted);color:var(--accent);padding:1px 6px;border-radius:999px}.mb-message-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.mb-messages-header{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.mb-folder-title{flex:1;min-width:0;color:var(--text-primary);font-weight:500}.mb-bulk-summary{flex:1;min-width:0;color:var(--text-primary);font-size:var(--font-size-sm)}.mb-message-row{display:flex;flex-direction:row;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--transition-fast);position:relative}.mb-message-row.selected{background:var(--accent-light)}.mb-message-check{margin-top:4px;flex-shrink:0}.mb-message-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mb-preview-actions{display:flex;gap:var(--space-xs);flex-shrink:0}.mb-message-row:hover{background:var(--surface-hover)}.mb-message-row.active{background:var(--accent-subtle)}.mb-message-row.unread .mb-message-from,.mb-message-row.unread .mb-message-subject{font-weight:600;color:var(--text-primary)}.mb-message-row.unread:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);position:absolute;margin-left:-10px;margin-top:8px}.mb-message-line{display:flex;justify-content:space-between;gap:var(--space-sm);align-items:baseline}.mb-message-from{font-size:var(--font-size-sm);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-message-date{font-size:var(--font-size-xs);color:var(--text-muted);flex-shrink:0}.mb-message-subject{font-size:var(--font-size-sm);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-message-snippet{font-size:var(--font-size-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-preview{padding:var(--space-md);overflow:auto}.mb-preview-header{border-bottom:1px solid var(--border);padding-bottom:var(--space-sm);margin-bottom:var(--space-md);display:flex;flex-direction:column;gap:2px}.mb-preview-header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.mb-preview-subject{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin:0}.mb-preview-meta{font-size:var(--font-size-xs);color:var(--text-muted)}.mb-preview-body{white-space:pre-wrap;word-wrap:break-word;color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.6}.mb-attachments{margin-bottom:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs)}.mb-attachments-label{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.mb-attachments-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.mb-attachment-chip{display:inline-flex;align-items:center;gap:var(--space-xs);padding:6px var(--space-sm);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-xs);text-decoration:none;transition:background var(--transition-fast),border-color var(--transition-fast)}.mb-attachment-chip:hover{background:var(--surface-hover);border-color:var(--accent);color:var(--accent)}.mb-attachment-name{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-attachment-size{color:var(--text-muted);font-variant-numeric:tabular-nums}.mb-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-xl);color:var(--text-muted)}.mb-folders-header{display:flex;flex-direction:column;gap:var(--space-sm)}.mb-compose-btn{align-self:stretch}.mb-compose{display:flex;flex-direction:column;height:100%;gap:var(--space-md)}.mb-compose-header{border-bottom:1px solid var(--border);padding-bottom:var(--space-sm)}.mb-compose-header h2{margin:0;font-size:var(--font-size-lg)}.mb-compose-form{display:flex;flex-direction:column;gap:var(--space-sm);flex:1;min-height:0}.mb-compose-row{display:flex;align-items:center;gap:var(--space-sm)}.mb-compose-row>label{flex:0 0 60px;font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500}.mb-compose-row>.input{flex:1;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;padding:var(--space-sm)}.mb-compose-from{color:var(--text-muted);font-size:var(--font-size-sm)}.mb-compose-body{flex:1;min-height:200px;resize:vertical;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;padding:var(--space-sm);font-family:var(--font-mono);font-size:var(--font-size-sm)}.mb-compose-actions{display:flex;justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--border);padding-top:var(--space-sm)}.mb-compose-attachments{display:flex;flex-direction:column;gap:var(--space-xs)}.mb-compose-attachments-header{display:flex;align-items:center;gap:var(--space-sm)}.mb-compose-attachments-header label{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.mb-compose-attach-chip{cursor:default}.mb-compose-attach-chip:hover{background:var(--bg-surface);border-color:var(--border);color:var(--text-primary)}.mb-compose-attach-remove{background:transparent;border:0;color:var(--text-muted);cursor:pointer;padding:0;margin-left:var(--space-xs);font-size:var(--font-size-base);line-height:1}.mb-compose-attach-remove:hover{color:var(--danger)}.mb-back-btn{display:none}@media(max-width:768px){.mb-subtabs{padding:0 var(--space-sm);gap:2px}.mb-subtab,.mb-panel{padding:var(--space-sm)}.mb-viewer{display:flex;flex-direction:column;min-width:0}.mb-viewer .mb-viewer-pane{display:none;border-right:0;flex:1;min-height:0;min-width:0;width:100%}.mb-viewer.mb-view-folders>.mb-viewer-pane:nth-child(1),.mb-viewer.mb-view-messages>.mb-viewer-pane:nth-child(2),.mb-viewer.mb-view-preview>.mb-viewer-pane:nth-child(3){display:flex}.mb-back-btn{display:inline-flex}.mb-folders-header,.mb-messages-header,.mb-preview-header-row{flex-wrap:wrap}.mb-folders-header{flex-direction:column;align-items:stretch;gap:var(--space-xs);min-width:0}.mb-account-select,.mb-compose-btn{width:100%;min-width:0;flex:0 0 auto}.mb-account-select{max-width:100%}.mb-message-row{padding:var(--space-sm)}.mb-message-from,.mb-message-subject,.mb-message-snippet{font-size:var(--font-size-xs)}.mb-preview{padding:var(--space-sm)}.mb-preview-header-row{flex-direction:row;align-items:flex-start;gap:var(--space-xs)}.mb-preview-subject{font-size:var(--font-size-base);flex:1 1 100%;word-break:break-word}.mb-preview-actions{flex:1 1 100%;justify-content:flex-end;flex-wrap:wrap}.mb-preview-body{word-break:break-word;overflow-wrap:anywhere}.mb-attachment-name{max-width:60vw}.mb-compose{gap:var(--space-sm)}.mb-compose-row{flex-direction:column;align-items:stretch;gap:var(--space-xs)}.mb-compose-row>label{flex:0 0 auto}.mb-compose-header{display:flex;align-items:center;gap:var(--space-sm)}.mb-compose-header h2{font-size:var(--font-size-base)}.mb-compose-actions{flex-wrap:wrap;justify-content:stretch}.mb-compose-actions>.btn{flex:1 1 auto}.mb-settings-toolbar{justify-content:stretch}.mb-settings-toolbar>.btn{flex:1 1 auto}.mb-account-card{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.mb-account-card-actions{justify-content:flex-end;flex-wrap:wrap}.mb-section,.mb-editor{padding:var(--space-sm)}.mb-row{flex-direction:column}}@media(max-width:480px){.mb-preview-meta{word-break:break-word}.mb-message-line{flex-wrap:wrap;gap:2px}}.mb-q-root{display:flex;flex-direction:column;gap:var(--space-md)}.mb-q-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.mb-q-toolbar-spacer{flex:1}.mb-q-account-select{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm);font:inherit;font-size:var(--font-size-sm);min-width:220px}.mb-q-subtabs{display:flex;gap:var(--space-xs);border-bottom:1px solid var(--border)}.mb-q-subtab{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--text-secondary);cursor:pointer;padding:var(--space-sm) var(--space-md);font:inherit;font-size:var(--font-size-sm);font-weight:500;transition:color var(--transition-fast),border-color var(--transition-fast)}.mb-q-subtab:hover{color:var(--text-primary)}.mb-q-subtab.active{color:var(--accent);border-bottom-color:var(--accent)}.mb-q-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.mb-q-section-title{margin:0;font-size:var(--font-size-lg);color:var(--text-primary)}.mb-q-section-hint{margin:0;font-size:var(--font-size-sm);color:var(--text-muted)}.mb-q-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-xl);text-align:center;color:var(--text-muted)}.mb-q-loading{padding:var(--space-md);color:var(--text-muted);text-align:center}.mb-q-textarea{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm);font:inherit;font-size:var(--font-size-sm);min-height:120px;resize:vertical;width:100%;box-sizing:border-box}.mb-q-input{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm);font:inherit;font-size:var(--font-size-sm);width:100%;box-sizing:border-box}.mb-q-field{display:flex;flex-direction:column;gap:var(--space-xs)}.mb-q-field label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:500}.mb-q-actions{display:flex;justify-content:flex-end;gap:var(--space-sm)}.mb-q-tag-list{display:flex;flex-direction:column;gap:var(--space-sm)}.mb-q-tag-card{display:flex;align-items:center;gap:var(--space-md);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.mb-q-tag-swatch{width:14px;height:14px;border-radius:50%;flex-shrink:0;border:1px solid var(--border)}.mb-q-tag-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mb-q-tag-name{font-weight:500;color:var(--text-primary)}.mb-q-tag-criteria{color:var(--text-muted);font-size:var(--font-size-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mb-q-tag-actions{display:flex;gap:var(--space-xs)}.mb-q-pills{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.mb-q-pill{display:inline-flex;align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);border-radius:999px;font-size:var(--font-size-xs);background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border);line-height:1.6}.mb-q-pill-swatch{width:8px;height:8px;border-radius:50%;flex-shrink:0}.mb-q-pill-score{color:var(--text-muted);font-size:10px;margin-left:2px}.mb-q-color-picker{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.mb-q-color-swatch{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform var(--transition-fast),border-color var(--transition-fast)}.mb-q-color-swatch:hover{transform:scale(1.1)}.mb-q-color-swatch.selected{border-color:var(--text-primary)}.mb-q-filter-bar{display:flex;flex-direction:column;gap:var(--space-sm);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.mb-q-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.mb-q-filter-row-label{font-size:var(--font-size-sm);color:var(--text-secondary);min-width:80px}.mb-q-filter-tag-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs);background:var(--bg-elevated);border-radius:var(--radius-sm)}.mb-q-filter-tag-select{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px var(--space-xs);font-size:var(--font-size-sm)}.mb-q-filter-tag-slider{flex:1;min-width:100px;max-width:200px}.mb-q-filter-tag-value{color:var(--text-muted);font-size:var(--font-size-xs);min-width:36px;font-variant-numeric:tabular-nums}.mb-q-filter-since-input{width:80px}.mb-q-message-table{width:100%;border-collapse:collapse;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.mb-q-message-table thead{background:var(--bg-elevated)}.mb-q-message-table th{text-align:left;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.mb-q-message-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--font-size-sm);vertical-align:top}.mb-q-message-row{cursor:pointer;transition:background var(--transition-fast)}.mb-q-message-row:hover{background:var(--surface-hover-xs)}.mb-q-message-row:last-child td{border-bottom:0}.mb-q-message-from{font-weight:500;color:var(--text-primary)}.mb-q-message-subject{color:var(--text-primary)}.mb-q-message-date{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.mb-q-detail-modal{position:fixed;inset:0;background:rgba(0,0,0,var(--overlay-md));display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.mb-q-detail-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);max-width:800px;width:90%;max-height:90vh;display:flex;flex-direction:column;gap:var(--space-md);overflow:hidden;box-shadow:var(--shadow-lg)}.mb-q-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.mb-q-detail-title{margin:0;font-size:var(--font-size-xl);color:var(--text-primary)}.mb-q-detail-meta{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-xs) var(--space-md);font-size:var(--font-size-sm)}.mb-q-detail-meta-label{color:var(--text-secondary);font-weight:500}.mb-q-detail-meta-value{color:var(--text-primary);word-break:break-word}.mb-q-detail-body{flex:1;overflow:auto;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-md);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--font-size-sm);white-space:pre-wrap;word-break:break-word;max-height:50vh}.mb-q-admin-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.mb-q-admin-prompt-area{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-md);grid-column:1 / -1}.mb-q-admin-prompt-textarea{min-height:240px;font-family:var(--font-mono);font-size:var(--font-size-sm)}.mb-q-admin-placeholders{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm);display:flex;flex-direction:column;gap:var(--space-xs)}.mb-q-admin-placeholders-title{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:500;margin:0 0 var(--space-xs) 0}.mb-q-admin-placeholder-btn{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);text-align:left;cursor:pointer;font:inherit;font-size:var(--font-size-xs);transition:background var(--transition-fast)}.mb-q-admin-placeholder-btn:hover{background:var(--surface-hover-md)}.mb-q-admin-placeholder-name{font-family:var(--font-mono);color:var(--accent);display:block;margin-bottom:2px}.mb-q-admin-placeholder-desc{color:var(--text-muted);font-size:var(--font-size-xs)}.mb-ts-modal-card{max-width:900px}.mb-ts-modal-body{overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-md);min-height:0;flex:1}.mb-ts-modal-footer{border-top:1px solid var(--border);padding-top:var(--space-md)}.mb-ts-bulk{display:flex;gap:var(--space-sm)}.mb-ts-list{display:flex;flex-direction:column;gap:var(--space-sm)}.mb-ts-row{display:flex;gap:var(--space-md);align-items:flex-start;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.mb-ts-row-check{padding-top:6px;cursor:pointer}.mb-ts-row-body{flex:1;display:flex;flex-direction:column;gap:var(--space-xs);min-width:0}.mb-ts-name-input{font-weight:600}.mb-ts-criteria-input{min-height:3em}.mb-ts-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-2xl) var(--space-md)}.mb-ts-spinner{width:36px;height:36px;border:3px solid var(--surface-hover);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.mb-ts-loading-text{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm)}.mb-q-tag-purge-label{display:flex;align-items:center;gap:var(--space-sm);padding:0 var(--space-lg);margin:var(--space-md) 0 var(--space-xs);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.mb-q-tag-purge-label input[type=checkbox]{width:16px;height:16px;flex-shrink:0;cursor:pointer}.mb-q-tag-purge-hint{padding:0 var(--space-lg);margin:0 0 var(--space-md);color:var(--text-muted);font-size:var(--font-size-xs);line-height:1.4}.mb-ex-schema-info{gap:var(--space-xs)}.mb-ex-schema-meta{display:flex;flex-wrap:wrap;gap:var(--space-xs);color:var(--text-muted);font-size:var(--font-size-xs)}.mb-ex-schema-dot{color:var(--text-muted)}.mb-ex-trigger-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs)}.mb-ex-trigger-row-label{color:var(--text-secondary);font-size:var(--font-size-xs);min-width:80px}.mb-ex-editor{gap:var(--space-md)}.mb-ex-section-title{margin:var(--space-md) 0 0;font-size:var(--font-size-base);color:var(--text-primary)}.mb-ex-fields,.mb-ex-triggers{display:flex;flex-direction:column;gap:var(--space-sm)}.mb-ex-field-row{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm);display:flex;flex-direction:column;gap:var(--space-xs)}.mb-ex-field-head{display:flex;gap:var(--space-xs);align-items:center;flex-wrap:wrap}.mb-ex-field-name{flex:2 1 180px}.mb-ex-field-type,.mb-ex-field-struct,.mb-ex-field-max{flex:0 1 110px}.mb-ex-field-prompt{min-height:60px}.mb-ex-add-btn,.mb-ex-add-row{align-self:flex-start;display:flex;gap:var(--space-xs)}.mb-ex-trigger-row-editor{display:flex;align-items:center;gap:var(--space-sm);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm);flex-wrap:wrap}.mb-ex-trigger-kind{font-size:var(--font-size-xs);font-weight:600;padding:2px var(--space-sm);border-radius:999px}.mb-ex-trigger-kind-required{background:var(--accent-light);color:var(--accent)}.mb-ex-trigger-kind-excluded{background:var(--danger-muted);color:var(--danger)}.mb-ex-confidence-row{display:flex;gap:var(--space-xs);align-items:center;flex-wrap:wrap}.mb-ex-confidence-label{font-size:var(--font-size-xs);color:var(--text-muted)}.mb-ex-confidence{width:80px}.mb-ex-filter-checkbox{display:inline-flex;align-items:center;gap:var(--space-xs);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer}.mb-ex-status-ok{background:var(--success-muted);color:var(--success)}.mb-ex-status-error{background:var(--danger-muted);color:var(--danger)}.mb-ex-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-md);margin-top:var(--space-sm)}.mb-ex-detail-block{background:var(--bg-elevated)}.mb-ex-detail-schema-name{margin:0;font-size:var(--font-size-base);color:var(--text-primary)}.mb-ex-data-table{width:100%;border-collapse:collapse}.mb-ex-data-key{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--font-size-xs);padding:var(--space-xs) var(--space-sm);width:30%;border-bottom:1px solid var(--border);vertical-align:top}.mb-ex-data-value{color:var(--text-primary);padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--border);word-break:break-word;white-space:pre-wrap}#modal-llm-sandbox .modal-content{width:95vw;max-width:1400px;height:90vh;max-height:90vh;display:flex;flex-direction:column}#modal-llm-sandbox .modal-body{flex:1;display:flex;overflow:hidden;padding:0;gap:0}.ls-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.ls-sidebar{width:300px;min-width:260px;border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.ls-top-bar{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap}.ls-model-group{flex:1;min-width:200px}.ls-model-group select{width:100%}.ls-stream-label{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.ls-stream-label input[type=checkbox]{accent-color:var(--accent)}.ls-response-area{flex:1;overflow:hidden;display:flex;flex-direction:column;position:relative}.ls-response-container{flex:1;overflow-y:auto;padding:var(--space-md);position:relative}.ls-response-content{font-size:var(--font-size-base);line-height:1.65;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;min-height:100px}.ls-response-content:empty:before{content:"Response will appear here...";color:var(--text-muted);font-style:italic}.ls-copy-row{position:absolute;top:var(--space-sm);right:var(--space-md);z-index:2}.ls-spinner{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);color:var(--text-secondary);font-size:var(--font-size-sm);border-top:1px solid var(--border)}.ls-spinner-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:ls-pulse 1s ease-in-out infinite}@keyframes ls-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.ls-prompt-area{display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);flex-shrink:0;align-items:flex-end}.ls-prompt-area textarea{flex:1;min-height:60px;max-height:200px;resize:vertical;font-family:var(--font-sans);font-size:var(--font-size-base);padding:var(--space-sm);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);line-height:1.5}.ls-prompt-area textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px var(--accent-subtle)}.ls-prompt-area textarea::placeholder{color:var(--text-muted)}.ls-prompt-buttons{display:flex;flex-direction:column;gap:var(--space-xs)}.ls-test-values-section{padding:var(--space-sm) var(--space-md);border-top:1px dashed var(--border);background:var(--bg-surface);max-height:30%;overflow-y:auto;flex-shrink:0}.ls-test-values-header{display:flex;align-items:baseline;gap:var(--space-sm);margin-bottom:var(--space-xs)}.ls-test-values-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.ls-test-values-hint{font-size:var(--font-size-xs);color:var(--text-muted);font-style:italic}.ls-test-values-list{display:flex;flex-direction:column;gap:var(--space-xs)}.ls-test-value-row{display:flex;align-items:center;gap:var(--space-sm)}.ls-test-value-label{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--accent);min-width:120px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.ls-test-value-input{flex:1;min-width:0}.ls-sidebar-section{padding:var(--space-md);overflow-y:auto;flex:1}.ls-sidebar-section h3{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.ls-meta-row{display:flex;justify-content:space-between;padding:3px 0;font-size:var(--font-size-sm);border-bottom:1px solid var(--border-light)}.ls-meta-label{color:var(--text-muted)}.ls-meta-value{color:var(--text-primary);font-weight:500;font-family:var(--font-mono);font-size:var(--font-size-xs)}.ls-meta-empty{color:var(--text-muted);font-size:var(--font-size-sm);font-style:italic;text-align:center;padding:var(--space-lg) 0}.ls-meta-extra{margin-top:var(--space-sm)}.ls-meta-extra-header{display:flex;align-items:center;gap:var(--space-xs);cursor:pointer;font-size:var(--font-size-sm);color:var(--text-secondary);padding:var(--space-xs) 0}.ls-meta-extra-body{overflow:hidden;transition:max-height var(--transition-normal)}.ls-meta-extra-body.collapsed{display:none}.ls-meta-raw{font-size:var(--font-size-xs);max-height:200px;overflow-y:auto}.ls-settings{border-top:1px solid var(--border);padding:var(--space-md);flex-shrink:0}.ls-setting-row{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.ls-setting-row label{font-size:var(--font-size-sm);color:var(--text-secondary);min-width:80px}.ls-setting-row input[type=range]{flex:1;accent-color:var(--accent)}.ls-setting-row input[type=number]{width:100px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);padding:4px 8px;font-size:var(--font-size-sm);font-family:var(--font-mono)}.ls-setting-value{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--accent);min-width:36px;text-align:right}.ls-system-prompt h3{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-xs)}.ls-system-prompt textarea{width:100%;min-height:80px;max-height:150px;resize:vertical;font-family:var(--font-sans);font-size:var(--font-size-sm);padding:var(--space-sm);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);line-height:1.4}.ls-system-prompt textarea:focus{border-color:var(--accent);outline:none}.ls-system-prompt textarea::placeholder{color:var(--text-muted)}.ls-code-block{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);overflow-x:auto;font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:1.5;white-space:pre}.ls-plain-text{white-space:pre-wrap;word-break:break-word}.ls-markdown h1,.ls-markdown h2,.ls-markdown h3,.ls-markdown h4,.ls-markdown h5,.ls-markdown h6{color:var(--text-primary);margin:var(--space-md) 0 var(--space-sm);line-height:1.3}.ls-markdown h1{font-size:var(--font-size-2xl)}.ls-markdown h2{font-size:var(--font-size-xl)}.ls-markdown h3{font-size:var(--font-size-lg)}.ls-markdown p{margin:0 0 var(--space-sm)}.ls-markdown code{background:var(--bg-primary);padding:2px 5px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.9em}.ls-markdown pre{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);overflow-x:auto;margin:var(--space-sm) 0}.ls-markdown pre code{background:none;padding:0}.ls-markdown ul,.ls-markdown ol{padding-left:var(--space-lg);margin:0 0 var(--space-sm)}.ls-markdown li{margin-bottom:4px}.ls-markdown blockquote{border-left:3px solid var(--accent);padding-left:var(--space-md);color:var(--text-secondary);margin:var(--space-sm) 0}.ls-markdown table{border-collapse:collapse;width:100%;margin:var(--space-sm) 0}.ls-markdown th,.ls-markdown td{border:1px solid var(--border);padding:var(--space-xs) var(--space-sm);text-align:left}.ls-markdown th{background:var(--bg-secondary);font-weight:600}.ls-markdown a{color:var(--accent);text-decoration:underline}.ls-markdown hr{border:none;border-top:1px solid var(--border);margin:var(--space-md) 0}.ls-templates-section{flex:0 0 auto;max-height:40%;display:flex;flex-direction:column;border-bottom:1px solid var(--border);overflow:hidden}.ls-section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-sm)}.ls-section-header h3{margin-bottom:0}.ls-templates-actions{display:flex;gap:var(--space-xs);flex-shrink:0}.ls-tpl-active{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-sm);background:var(--accent-subtle);border:1px solid var(--accent-muted);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--text-secondary);overflow:hidden}.ls-tpl-active-label{text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--text-muted);flex-shrink:0}.ls-tpl-active-name{color:var(--accent);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ls-tpl-list{display:flex;flex-direction:column;gap:2px;overflow-y:auto;min-height:0}.ls-tpl-empty{color:var(--text-muted);font-size:var(--font-size-xs);font-style:italic;padding:var(--space-sm) var(--space-xs);margin:0;line-height:1.4}.ls-tpl-item{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--bg-surface);border:1px solid transparent;border-radius:var(--radius-sm);transition:background var(--transition-fast),border-color var(--transition-fast)}.ls-tpl-item:hover{background:var(--bg-hover)}.ls-tpl-item.is-active{background:var(--accent-subtle);border-color:var(--accent-muted)}.ls-tpl-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ls-tpl-item-name{background:none;border:none;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:500;text-align:left;cursor:pointer;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ls-tpl-item-name:hover{color:var(--accent)}.ls-tpl-item-meta{display:flex;gap:var(--space-sm);font-size:var(--font-size-xs);color:var(--text-muted);font-family:var(--font-mono);line-height:1.3;overflow:hidden}.ls-tpl-item-model{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1}.ls-tpl-item-params{flex-shrink:0;color:var(--text-secondary)}.ls-tpl-item-actions{display:flex;gap:2px;flex-shrink:0;opacity:0;transition:opacity var(--transition-fast)}.ls-tpl-item:hover .ls-tpl-item-actions,.ls-tpl-item.is-active .ls-tpl-item-actions{opacity:1}.ls-tpl-item-delete:hover{color:var(--danger)}.ls-error{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);background:var(--danger-muted);border:1px solid rgba(255,100,100,.3);border-radius:var(--radius-md);color:var(--danger);font-size:var(--font-size-sm)}.ls-error-icon{font-size:var(--font-size-lg);flex-shrink:0}@media(max-width:768px){#modal-llm-sandbox .modal-content{width:98vw;height:95vh;max-height:95vh}#modal-llm-sandbox .modal-body{flex-direction:column}.ls-sidebar{width:100%;min-width:0;max-height:35vh;border-left:none;border-top:1px solid var(--border);flex-shrink:0}}@media(max-width:768px){.main{flex-direction:column}.panel-left{width:100%;min-width:unset;border-right:none;border-bottom:1px solid var(--border);max-height:50vh;padding:var(--space-md);gap:var(--space-md)}.panel-right{padding:var(--space-md);padding-bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0px))}.user-main{padding-bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0px))}.gallery{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-xs)}.header{padding:var(--space-sm) var(--space-md)}.header-title{font-size:var(--font-size-base)}.modal-content{width:95%;max-height:90vh}.toast-container{bottom:var(--space-md);right:var(--space-md);left:var(--space-md)}.toast{max-width:100%}.input-group-row{flex-direction:column}.viewer-content img,.viewer-content video{max-width:95vw;max-height:85vh}}@media(max-width:480px){.profile-selector{flex-wrap:wrap}.profile-selector .select{width:100%}}
