html,body,#root{height:100%}body{margin:0;min-width:320px;min-height:100vh}.button{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family-system);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-base);position:relative;overflow:hidden;cursor:pointer;transition:all var(--transition-base);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);box-shadow:var(--effect-shadow-sm)}.button:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-interactive-default);transform:translateY(-1px);box-shadow:var(--effect-shadow-base)}.button:active:not(:disabled){background-color:var(--color-bg-active);transform:translateY(1px);box-shadow:var(--effect-shadow-sm)}.button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.button--primary{background-color:var(--color-interactive-default);color:var(--color-text-inverse);border-color:var(--color-interactive-default)}.button--primary:hover:not(:disabled){background-color:var(--color-interactive-hover);border-color:var(--color-interactive-hover)}.button--ghost{background:transparent;border-color:transparent;box-shadow:none}.button--ghost:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:transparent;transform:none;box-shadow:none}.button--ghost:active:not(:disabled){background-color:var(--color-bg-active);transform:none;box-shadow:none}.button--error{color:var(--color-status-error);border-color:var(--color-status-error)}.button--error:hover:not(:disabled){background-color:var(--color-status-error);color:var(--color-text-inverse)}.button--success{color:var(--color-status-success);border-color:var(--color-status-success)}.button--success:hover:not(:disabled){background-color:var(--color-status-success);color:var(--color-text-inverse)}.button--danger{background-color:var(--color-status-error);color:var(--color-text-inverse);border-color:var(--color-status-error)}.button--danger:hover:not(:disabled){background-color:var(--core-maroon);border-color:var(--core-maroon)}.button--danger-ghost{color:var(--color-status-error);border-color:transparent}.button--danger-ghost:hover:not(:disabled){background-color:var(--color-status-error-bg);border-color:var(--color-status-error);color:var(--color-status-error);transform:none}.button--sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);gap:var(--spacing-xs);box-shadow:none}.material-icon{-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1;vertical-align:middle;transition:all var(--transition-base)}.material-icon--small{font-size:var(--icon-size-sm)}.material-icon--medium{font-size:var(--icon-size-md)}.material-icon--large{font-size:var(--icon-size-lg)}.material-icon--xlarge{font-size:var(--icon-size-xl)}.material-icon[onclick]{cursor:pointer}.material-icon:hover{opacity:.8}.collapsible-section{background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);overflow:hidden}.collapsible-section__header{width:100%;display:flex;align-items:center;background:transparent;transition:background-color var(--transition-base)}.collapsible-section__header:hover{background:var(--color-bg-hover)}.collapsible-section__toggle{flex:1;padding:var(--spacing-sm) var(--spacing-md);min-width:0;justify-content:flex-start}.collapsible-section__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em}.collapsible-section__actions{display:flex;align-items:center;gap:var(--spacing-sm);padding-right:var(--spacing-sm)}.collapsible-section__chevron{color:var(--color-text-tertiary);flex-shrink:0;margin-left:auto}.collapsible-section__toggle:hover .collapsible-section__chevron{color:var(--color-text-secondary)}.collapsible-section__content{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md)}.form-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-field__label{font-family:var(--font-family-system);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.form-field__required{color:var(--color-status-error);margin-left:var(--spacing-2xs)}.form-field__error{font-size:var(--font-size-xs);color:var(--color-status-error)}.form-field__hint{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.form-field--error input,.form-field--error textarea,.form-field--error select{border-color:var(--color-status-error)}.animate-panel{display:flex;flex-direction:column;gap:var(--spacing-md)}.animate-panel__sticky-section{display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-primary)}.animate-panel__header{display:flex;align-items:center;justify-content:space-between}.animate-panel__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.animate-panel__close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--border-radius-base);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.animate-panel__close-button:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.animate-panel__source{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.animate-panel__thumbnail{width:192px;height:192px;object-fit:cover;border-radius:var(--border-radius-md);border:1px solid var(--color-border-primary)}.animate-panel__source-info{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);text-align:center}.animate-panel__subject{font-size:var(--font-size-sm);color:var(--color-text-primary);font-weight:var(--font-weight-medium);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.animate-panel__style-name{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.animate-panel__action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-xs)}.animate-panel__action-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-xs);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-family:var(--font-family-system);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.animate-panel__action-button:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-secondary)}.animate-panel__action-button--selected{background:var(--color-interactive-default);color:var(--core-crust);border-color:var(--color-interactive-default);font-weight:var(--font-weight-medium)}.animate-panel__action-button--selected:hover{background:var(--color-interactive-hover);color:var(--core-crust);border-color:var(--color-interactive-hover)}.animate-panel__buttons{display:flex;flex-direction:column;gap:var(--spacing-sm)}.animate-panel__generate-button{width:100%;justify-content:center;padding:var(--spacing-md);font-weight:var(--font-weight-semibold);letter-spacing:.5px;background:linear-gradient(135deg,var(--core-mauve) 0%,var(--core-blue) 50%,var(--core-pink) 100%);background-size:200% 200%;background-position:0% 50%;color:var(--core-crust);border:none;box-shadow:none;transform:none;transition:background-position .4s ease}.animate-panel__generate-button:hover:not(:disabled){background-position:100% 50%;transform:none;box-shadow:none}.animate-panel__generate-button:active:not(:disabled){transform:none}.animate-panel__generate-button:disabled{background:var(--color-bg-disabled);color:var(--color-text-disabled)}.animate-panel__cancel-button{width:100%;justify-content:center}.animate-panel__scrollable-section{display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:var(--spacing-xl)}.animate-panel__frame-buttons{display:flex;gap:var(--spacing-xs)}.animate-panel__frame-button{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-xs);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-family:var(--font-family-system);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.animate-panel__frame-button:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-secondary)}.animate-panel__frame-button--selected{background:var(--color-interactive-default);color:var(--core-crust);border-color:var(--color-interactive-default);font-weight:var(--font-weight-medium)}.animate-panel__frame-button--selected:hover{background:var(--color-interactive-hover);color:var(--core-crust);border-color:var(--color-interactive-hover)}.animate-panel__fps-field{margin-top:var(--spacing-sm)}.animate-panel__fps-steps{display:flex;gap:var(--spacing-xs)}.animate-panel__fps-step{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs) 0;border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-family:var(--font-family-system);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.animate-panel__fps-step:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-secondary)}.animate-panel__fps-step--selected{background:var(--color-interactive-default);color:var(--core-crust);border-color:var(--color-interactive-default);font-weight:var(--font-weight-medium)}.animate-panel__fps-step--selected:hover{background:var(--color-interactive-hover);color:var(--core-crust);border-color:var(--color-interactive-hover)}.animate-panel__prompt-field{margin-top:var(--spacing-sm)}.animate-panel__prompt-textarea{width:100%;min-height:72px;padding:var(--spacing-sm);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);background:var(--color-bg-elevated);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family-system);line-height:var(--line-height-base);resize:vertical;transition:border-color var(--transition-fast);box-sizing:border-box}.animate-panel__prompt-textarea:focus{outline:none;border-color:var(--color-border-focus)}.animate-panel__prompt-textarea::placeholder{color:var(--color-text-muted, var(--core-overlay0))}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--color-overlay-dark-rgb),.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:var(--z-index-modal);padding:var(--spacing-lg)}.modal-panel{background:var(--color-bg-elevated);border:1px solid var(--color-border-secondary);border-radius:var(--border-radius-lg);width:100%;box-shadow:var(--effect-shadow-lg),0 0 40px rgba(var(--color-overlay-dark-rgb),.3);overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg)}.modal-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.modal-close-btn{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);color:var(--color-text-tertiary);border-radius:var(--border-radius-sm);display:flex;align-items:center;transition:color var(--transition-base),background var(--transition-base)}.modal-close-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.feedback-modal-body{padding:0 var(--spacing-lg)}.feedback-modal-body .form-field{margin-bottom:var(--spacing-md)}.feedback-category-options{display:flex;gap:var(--spacing-sm)}.feedback-category-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-family:var(--font-family-system);cursor:pointer;transition:all var(--transition-base)}.feedback-category-btn:hover{border-color:var(--color-border-secondary);color:var(--color-text-primary)}.feedback-category-btn.active{border-color:var(--color-interactive-default);color:var(--color-interactive-default);background:var(--color-bg-secondary)}.feedback-modal-body input[type=text]{width:100%;box-sizing:border-box;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);padding:var(--spacing-sm);color:var(--color-text-primary);font-family:var(--font-family-system);font-size:var(--font-size-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.feedback-modal-body input[type=text]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--effect-focus-ring)}.feedback-modal-body input[type=text]::placeholder{color:var(--color-text-tertiary)}.feedback-modal-body textarea{width:100%;box-sizing:border-box;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);padding:var(--spacing-sm);color:var(--color-text-primary);font-family:var(--font-family-system);font-size:var(--font-size-sm);line-height:1.5;resize:vertical;min-height:100px;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.feedback-modal-body textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--effect-focus-ring)}.feedback-modal-body textarea::placeholder{color:var(--color-text-tertiary)}.feedback-char-count{text-align:right;font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--spacing-xs);font-variant-numeric:tabular-nums}.feedback-modal-error{color:var(--color-status-error);font-size:var(--font-size-sm);padding:var(--spacing-sm);background:var(--color-status-error-bg);border:1px solid var(--color-status-error);border-radius:var(--border-radius-base);margin-bottom:var(--spacing-md)}.feedback-modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border-primary)}.feedback-modal-success{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-2xl) var(--spacing-lg);text-align:center}.feedback-modal-success .material-symbols-outlined{color:var(--color-status-success)}.feedback-modal-success p{margin:0;font-size:var(--font-size-base);color:var(--color-text-primary)}.tooltip{position:relative;display:inline-flex}.tooltip:after{content:attr(data-tooltip);position:absolute;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-elevated);color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-border-secondary);border-radius:var(--border-radius-sm);font-family:var(--font-family-system);font-size:var(--font-size-xs);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);z-index:var(--z-index-tooltip);box-shadow:var(--effect-shadow-base)}.tooltip:hover:after{opacity:1}.tooltip--top:after{bottom:calc(100% + var(--spacing-xs));left:50%;transform:translate(-50%)}.tooltip--bottom:after{top:calc(100% + var(--spacing-xs));left:50%;transform:translate(-50%)}.tooltip--left:after{right:calc(100% + var(--spacing-xs));top:50%;transform:translateY(-50%)}.tooltip--right:after{left:calc(100% + var(--spacing-xs));top:50%;transform:translateY(-50%)}.feedback-button{padding:var(--spacing-xs);background:transparent;color:var(--color-text-tertiary);border:1px solid transparent;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center}.feedback-button:hover{background:var(--color-bg-tertiary);border-color:var(--color-text-accent);color:var(--color-text-accent);box-shadow:var(--effect-glow-sm)}.feedback-button:active{transform:scale(.98)}.spinner{border:var(--border-width-base) solid var(--color-border-primary);border-top-color:var(--color-interactive-default);border-radius:var(--border-radius-circle);animation:spin .6s linear infinite}.spinner--sm{width:14px;height:14px}.spinner--md{width:20px;height:20px}.spinner--lg{width:24px;height:24px;border-width:var(--border-width-thick)}.spinner--error{border-top-color:var(--color-status-error)}.spinner--warning{border-top-color:var(--color-status-warning)}.job-status-filter{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.job-status-filter__pills{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);background:var(--color-bg-secondary);border-radius:var(--border-radius-full);border:var(--border-width-thin) solid var(--color-border-primary)}.job-status-filter__pill{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:none;border-radius:var(--border-radius-full);color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap}.job-status-filter__pill[aria-pressed=true]{background:var(--color-bg-elevated);color:var(--color-text-primary)}.job-status-filter__label{display:none}@media (min-width: 900px){.job-status-filter__label{display:inline}}.job-status-filter__count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--spacing-xs);background:var(--color-bg-tertiary);border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.job-status-filter__actions{display:flex;align-items:center}.job-status-filter__delete-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:var(--border-width-thin) solid var(--color-status-error);border-radius:var(--border-radius-full);color:var(--color-status-error);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);opacity:.8}.job-status-filter__delete-btn:hover{background:var(--color-status-error-bg);opacity:1;transform:none;box-shadow:none}.job-status-filter__confirm{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-status-error-bg);border:var(--border-width-thin) solid var(--color-status-error);border-radius:var(--border-radius-full);animation:slideIn var(--transition-fast)}@keyframes slideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.job-status-filter__confirm-text{color:var(--color-status-error);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap}.job-status-filter__confirm-btn{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.job-status-filter__confirm-btn--yes{background:var(--color-status-error);color:var(--color-text-inverse)}.job-status-filter__confirm-btn--yes:hover{background:var(--core-maroon);transform:none;box-shadow:none}.job-status-filter__confirm-btn--yes:disabled{opacity:.6;cursor:not-allowed}.job-status-filter__confirm-btn--no{background:transparent;color:var(--color-text-secondary);border:var(--border-width-thin) solid var(--color-border-secondary)}.job-status-filter__confirm-btn--no:hover{background:var(--color-bg-hover);color:var(--color-text-primary);transform:none;box-shadow:none}.job-status-filter__deleting{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);background:var(--color-status-error-bg);border:var(--border-width-thin) solid var(--color-status-error);border-radius:var(--border-radius-full);color:var(--color-status-error);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}@media (max-width: 768px){.job-status-filter{width:100%;justify-content:center}.job-status-filter__pills{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none;-ms-overflow-style:none}.job-status-filter__pills::-webkit-scrollbar{display:none}.job-status-filter__confirm{flex-wrap:wrap;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border-radius:var(--border-radius-base)}.job-status-filter__confirm-text{width:100%;text-align:center}}.tabs{display:flex;gap:var(--spacing-xs)}.tabs__tab{padding:var(--spacing-xs) var(--spacing-sm);border:var(--border-width-thin) solid transparent;border-radius:var(--border-radius-sm);background:transparent;color:var(--color-text-tertiary);font-family:var(--font-family-system);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);outline:none;white-space:nowrap}.tabs__tab:hover{color:var(--color-text-secondary);background:var(--color-bg-hover)}.tabs__tab:focus-visible{box-shadow:var(--effect-focus-ring)}.tabs--pill .tabs__tab--active{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-secondary)}.tabs--pill .tabs__tab--active:hover{background:var(--color-bg-elevated)}.tabs--underline .tabs__tab{border-radius:0;border-bottom:var(--border-width-base) solid transparent;padding:var(--spacing-xs) var(--spacing-md)}.tabs--underline .tabs__tab:hover{background:var(--color-bg-hover)}.tabs--underline .tabs__tab--active{color:var(--color-text-primary);border-bottom-color:var(--color-interactive-default)}.app-header{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-bottom:var(--border-width-thin) solid var(--color-border-primary);flex-shrink:0}.app-header__left{display:flex;align-items:center;gap:var(--spacing-sm)}.app-header__center{flex:1;display:flex;justify-content:center}.app-header__right{display:flex;align-items:center;gap:var(--spacing-sm)}.app-header__logo{width:28px;height:28px;object-fit:contain}.app-header__brand{font-family:var(--font-family-serif);font-size:var(--font-size-lg);color:var(--color-text-accent);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-tight);margin-right:var(--spacing-sm)}.app-header__avatar{width:28px;height:28px;border-radius:var(--border-radius-circle);object-fit:cover;border:var(--border-width-thin) solid var(--color-border-primary)}.app-layout{display:flex;flex-direction:column;height:100vh;width:100%;background-color:var(--color-bg-primary)}.app-layout__body{display:flex;flex:1;min-height:0}.app-layout__sidebar{flex:0 0 400px;min-width:320px;max-width:480px;box-sizing:border-box;overflow:hidden;background-color:var(--color-bg-secondary);border-right:var(--border-width-thin) solid var(--color-border-primary);padding:0;box-shadow:var(--effect-shadow-base)}.app-layout__main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;background-color:var(--color-bg-primary)}@media (max-width: 768px){.app-layout__body{flex-direction:column}.app-layout__sidebar{flex:0 0 auto;max-width:100%;height:auto;overflow-y:auto;border-right:none;border-bottom:var(--border-width-thin) solid var(--color-border-primary)}.app-layout__main{flex:1 1 auto;min-height:0}}.character-selector{display:flex;flex-direction:column;gap:var(--spacing-sm)}.character-selector__error{font-size:var(--font-size-xs);color:var(--color-status-error);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-status-error-bg);border-radius:var(--border-radius-sm)}.character-selector__header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.character-selector__clear{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-elevated);color:var(--color-text-secondary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap}.character-selector__clear:hover{background:var(--color-bg-hover);border-color:var(--color-border-active)}.character-selector__filters{display:flex;gap:var(--spacing-xs)}.character-selector__search{flex:1;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-primary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-primary);font-size:var(--font-size-xs);font-family:var(--font-family-system)}.character-selector__search:focus{outline:none;border-color:var(--color-interactive-default)}.character-selector__search::placeholder{color:var(--color-text-tertiary)}.character-selector__category-filter{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-primary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-primary);font-size:var(--font-size-xs);font-family:var(--font-family-system);cursor:pointer}.character-selector__scroll-panel{padding-right:var(--spacing-xs)}.character-selector__loading,.character-selector__empty{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-align:center;padding:var(--spacing-md)}.character-selector__category-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) 0}.character-selector__options{display:flex;flex-direction:column;gap:var(--spacing-xs)}.character-selector__option{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base);position:relative}.character-selector__option-clickable{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;cursor:pointer;min-width:0}.character-selector__option:hover{background:var(--color-bg-hover);border-color:var(--color-border-secondary)}.character-selector__option.selected{background:var(--color-interactive-default);border-color:var(--color-interactive-default);color:var(--color-text-inverse)}.character-selector__option.selected .character-selector__option-name,.character-selector__option.selected .character-selector__option-breed,.character-selector__option.selected .character-selector__option-creator{color:var(--color-text-inverse)}.character-selector__option-icon{font-size:var(--font-size-xl);width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.character-selector__option-text{flex:1;min-width:0}.character-selector__option-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.character-selector__option-breed{font-size:var(--font-size-xs);color:var(--color-text-secondary);opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.character-selector__option-creator{font-size:var(--font-size-xs);color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.character-selector__option-actions{display:flex;gap:2px;align-items:center;flex-shrink:0}.character-selector__selected-info{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-interactive-default);border-radius:var(--border-radius-base);display:flex;align-items:center;gap:var(--spacing-sm)}.character-selector__selected-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.character-selector__selected-name{font-size:var(--font-size-sm);color:var(--color-interactive-default);font-weight:var(--font-weight-medium)}.character-selector__json-button{padding:var(--spacing-xs);background:var(--color-bg-tertiary);border:var(--border-width-thin) solid var(--color-border-secondary);border-radius:var(--border-radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs);cursor:pointer;opacity:0;min-width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-family:var(--font-family-system);font-weight:var(--font-weight-bold)}.character-selector__option:hover .character-selector__json-button,.character-selector__option:hover .character-selector__action-button{opacity:1}.character-selector__json-button:hover{background:var(--color-interactive-hover);border-color:var(--color-text-accent);color:var(--color-text-accent)}.character-selector__action-button{padding:var(--spacing-xs);background:none;border:var(--border-width-thin) solid transparent;border-radius:var(--border-radius-sm);color:var(--color-text-secondary);cursor:pointer;opacity:0;min-width:30px;height:30px;display:flex;align-items:center;justify-content:center}.character-selector__action-button:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.character-selector__action-button--danger:hover{color:var(--color-status-error);background:var(--color-status-error-bg)}.character-selector__new-button{display:flex;align-items:center;justify-content:center;padding:2px;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--border-radius-sm)}.character-selector__new-button:hover{color:var(--color-interactive-default);background:var(--color-bg-hover)}.character-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.character-form__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-sm);border-bottom:var(--border-width-thin) solid var(--color-border-primary)}.character-form__title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0}.character-form__close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius-sm);transition:all var(--transition-base)}.character-form__close:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.character-form__body{display:flex;flex-direction:column;gap:var(--spacing-sm)}.character-form__hint{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-style:italic;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-elevated);border-radius:var(--border-radius-sm);border-left:2px solid var(--color-interactive-default)}.character-form__error{font-size:var(--font-size-sm);color:var(--color-status-error);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-status-error-bg);border-radius:var(--border-radius-sm);border:1px solid var(--color-status-error);font-weight:var(--font-weight-bold)}.character-form__input--error{border-color:var(--color-status-error);outline:none}.character-form__input{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-primary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family-system);transition:border-color var(--transition-base)}.character-form__input:focus{outline:none;border-color:var(--color-interactive-default)}.character-form__input::placeholder{color:var(--color-text-tertiary)}.character-form__textarea{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-primary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family-system);resize:vertical;min-height:60px;transition:border-color var(--transition-base)}.character-form__textarea:focus{outline:none;border-color:var(--color-interactive-default)}.character-form__textarea::placeholder{color:var(--color-text-tertiary)}.character-form__category-pills{display:flex;gap:var(--spacing-xs)}.character-form__pill{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-base)}.character-form__pill:hover{background:var(--color-bg-hover);border-color:var(--color-border-secondary)}.character-form__pill--active{background:var(--color-interactive-default);border-color:var(--color-interactive-default);color:var(--color-text-inverse)}.character-form__emoji-row{display:flex;align-items:center;gap:var(--spacing-sm);position:relative}.character-form__emoji-display{font-size:var(--font-size-2xl);width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base);cursor:pointer;transition:all var(--transition-base)}.character-form__emoji-display:hover{border-color:var(--color-interactive-default)}.character-form__emoji-picker{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);padding:var(--spacing-sm);background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base)}.character-form__emoji-option{font-size:var(--font-size-xl);width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:var(--border-width-thin) solid transparent;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-base)}.character-form__emoji-option:hover{background:var(--color-bg-hover);border-color:var(--color-border-secondary)}.character-form__emoji-option--active{border-color:var(--color-interactive-default);background:var(--color-bg-hover)}.character-form__description-sections{display:flex;flex-direction:column;gap:var(--spacing-xs)}.character-form__section-fields{display:flex;flex-direction:column;gap:var(--spacing-sm)}.character-form__actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:var(--border-width-thin) solid var(--color-border-primary)}.character-form__cancel-button{background:var(--color-bg-elevated);border-color:var(--color-border-primary);color:var(--color-text-secondary)}.character-form__cancel-button:hover{background:var(--color-bg-hover)}.json-viewer-modal-panel{background:var(--color-bg-secondary);border-color:var(--color-border-primary)}.json-viewer-modal__header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:var(--border-width-thin) solid var(--color-border-primary);background:var(--color-bg-primary)}.json-viewer-modal__title-section{display:flex;align-items:center;gap:var(--spacing-md)}.json-viewer-modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-accent)}.json-viewer-modal__counter{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.json-viewer-modal__actions{display:flex;gap:var(--spacing-sm);align-items:center}.json-viewer-modal__navigation{display:flex;gap:var(--spacing-xs)}.json-viewer-modal__actions .json-viewer-modal__copy.copied{background:var(--color-status-success);border-color:var(--color-status-success);color:var(--color-bg-primary)}.json-viewer-modal__close{font-size:var(--font-size-xl);width:32px;height:32px;padding:0}.json-viewer-modal__content{flex:1;overflow:auto;padding:var(--spacing-md)}.json-viewer-modal__json{margin:0;font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-primary);background:var(--color-bg-primary);padding:var(--spacing-md);border-radius:var(--border-radius-md);border:var(--border-width-thin) solid var(--color-border-secondary);overflow-x:auto;white-space:pre}.json-viewer-modal__json code{font-family:inherit}.json-viewer-modal__json .json-key{color:var(--color-interactive-active);background:none}.json-viewer-modal__json .json-string{color:var(--color-status-success);background:none}.json-viewer-modal__json .json-number{color:var(--color-status-warning);background:none}.json-viewer-modal__json .json-boolean{color:var(--color-status-info);background:none}.json-viewer-modal__json .json-null{color:var(--color-text-secondary);background:none}.style-selector{display:flex;flex-direction:column;gap:var(--spacing-sm)}.style-selector__header{padding-bottom:var(--spacing-sm);border-bottom:var(--border-width-thin) solid var(--color-border-primary)}.style-selector__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin:0}.style-selector__search{margin-bottom:var(--spacing-sm)}.style-selector__search-input{width:100%;box-sizing:border-box;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base);color:var(--color-text-primary);font-size:var(--font-size-sm)}.style-selector__search-input:focus{outline:none;border-color:var(--color-interactive-default);box-shadow:var(--effect-glow-sm)}.style-selector__search-input::placeholder{color:var(--color-text-tertiary)}.style-selector__options-container{display:flex;flex-direction:column;gap:var(--spacing-sm)}.style-selector__category{margin-bottom:var(--spacing-sm)}.style-selector__category-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) 0}.style-selector__category-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.style-selector__select-all-button{font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);opacity:0;padding:2px 8px}.style-selector__category:hover .style-selector__select-all-button{opacity:1}.style-selector__category-header .style-selector__select-all-button.active{opacity:1;border-color:var(--color-interactive-default);color:var(--color-interactive-default)}.style-selector__options{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs)}.style-selector__option{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);background:var(--color-bg-elevated);border:1px solid transparent;border-radius:var(--border-radius-sm);cursor:pointer;position:relative;overflow:hidden}.style-selector__option:hover{background:var(--color-bg-hover);border-color:var(--color-border-secondary)}.style-selector__option.selected{background:linear-gradient(135deg,var(--color-bg-elevated) 0%,var(--color-bg-hover) 100%);border-color:var(--color-interactive-default);box-shadow:0 0 0 2px var(--color-status-success-bg)}.style-selector__option.selected:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--color-interactive-default)}.style-selector__option.selected .style-selector__option-name{color:var(--color-interactive-default);font-weight:var(--font-weight-semibold)}.style-selector__option.selected .style-selector__option-prompt{color:var(--color-text-primary)}.style-selector__option-icon{font-size:var(--font-size-base);width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--border-radius-sm);overflow:hidden;background:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);position:relative}.style-selector__option.selected .style-selector__option-icon{border-color:var(--color-interactive-default);box-shadow:0 0 0 1px var(--color-interactive-default) inset}.style-selector__option-thumbnail{width:100%;height:100%;object-fit:cover}.style-selector__option-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.style-selector__option-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary);line-height:1.3}.style-selector__option-prompt{display:none}.style-selector__json-button{position:absolute;top:2px;right:2px;font-size:var(--font-size-2xs);padding:2px 4px;opacity:0;z-index:1}.style-selector__option:hover .style-selector__json-button{opacity:1}.style-selector__option--compact{padding:var(--spacing-xs) var(--spacing-sm);gap:var(--spacing-sm)}.style-selector__option--compact .style-selector__option-name{font-size:var(--font-size-sm)}.style-selector__option-emoji{font-size:var(--font-size-base);flex-shrink:0}.style-selector__option.multi-selected:after{content:"";position:absolute;top:8px;right:8px;width:8px;height:8px;background:var(--color-interactive-default);border-radius:var(--border-radius-circle);box-shadow:0 0 4px var(--color-interactive-default)}.style-selector__option.multi-selected{border-color:var(--color-interactive-default)}.collapsible-style-selector{display:flex;flex-direction:column}.collapsible-style-selector__controls{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) 0;border-bottom:var(--border-width-thin) solid var(--color-border-primary)}.collapsible-style-selector__no-style,.collapsible-style-selector__sort-btn{width:28px;height:28px;padding:0;flex-shrink:0}.collapsible-style-selector .collapsible-style-selector__no-style--selected,.collapsible-style-selector .collapsible-style-selector__sort-btn--active{background:var(--color-bg-hover);border-color:var(--color-interactive-default);color:var(--color-interactive-default)}.collapsible-style-selector__search{flex:1;min-width:0;height:28px;padding:0 var(--spacing-sm);background:var(--color-bg-secondary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-primary);font-size:var(--font-size-xs);font-family:inherit;box-sizing:border-box}.collapsible-style-selector__search:focus{outline:none;border-color:var(--color-interactive-default)}.collapsible-style-selector__search::placeholder{color:var(--color-text-tertiary)}.collapsible-style-selector__content{padding:var(--spacing-sm) 0 var(--spacing-md)}.collapsible-style-selector__multi-select-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md);background:var(--color-interactive-default);color:var(--color-bg-primary)}.collapsible-style-selector__multi-select-count{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.collapsible-style-selector__multi-select-bar .collapsible-style-selector__clear-selection{color:inherit;border-color:currentColor}.collapsible-style-selector__multi-select-bar .collapsible-style-selector__clear-selection:hover{background:rgba(var(--color-white-rgb),.2)}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-2xl);color:var(--color-text-secondary)}.error-boundary__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--border-radius-circle);border:2px solid var(--color-status-error);color:var(--color-status-error);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.error-boundary__message{font-size:var(--font-size-base);margin:0}.generate-button{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-weight:var(--font-weight-semibold);letter-spacing:.05em;font-family:var(--font-family-system);font-size:var(--font-size-xs);text-transform:uppercase;background:linear-gradient(135deg,rgba(var(--color-interactive-default-rgb),.15),rgba(var(--color-interactive-default-rgb),.08),rgba(var(--color-interactive-default-rgb),.15));color:var(--color-text-primary);border:1px solid rgba(var(--color-interactive-default-rgb),.4);border-radius:var(--border-radius-base);cursor:pointer;box-shadow:0 0 10px rgba(var(--color-interactive-default-rgb),.3),0 0 25px rgba(var(--color-interactive-default-rgb),.12),inset 0 0 15px rgba(var(--color-interactive-default-rgb),.06);transition:box-shadow var(--transition-base),border-color var(--transition-base),background var(--transition-base)}.generate-button:hover:not(:disabled){border-color:rgba(var(--color-interactive-default-rgb),.6);background:linear-gradient(135deg,rgba(var(--color-interactive-default-rgb),.22),rgba(var(--color-interactive-default-rgb),.12),rgba(var(--color-interactive-default-rgb),.22));box-shadow:0 0 15px rgba(var(--color-interactive-default-rgb),.45),0 0 35px rgba(var(--color-interactive-default-rgb),.18),inset 0 0 20px rgba(var(--color-interactive-default-rgb),.1)}.generate-button:active:not(:disabled){box-shadow:0 0 8px rgba(var(--color-interactive-default-rgb),.35),inset 0 0 10px rgba(var(--color-interactive-default-rgb),.08)}.generate-button:disabled{background:var(--color-bg-disabled);color:var(--color-text-disabled);border-color:transparent;box-shadow:none;cursor:not-allowed}.share-modal-image{padding:0 var(--spacing-lg)}.share-modal-image img{width:100%;border-radius:var(--border-radius-base);max-height:300px;object-fit:contain;background:var(--color-bg-primary);border:1px solid var(--color-border-primary)}.share-modal-field{padding:var(--spacing-md) var(--spacing-lg)}.share-modal-field textarea{width:100%;box-sizing:border-box;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);padding:var(--spacing-sm);color:var(--color-text-primary);font-family:var(--font-family-system);font-size:var(--font-size-sm);line-height:1.5;resize:vertical;min-height:80px;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.share-modal-field textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--effect-focus-ring)}.share-modal-field textarea::placeholder{color:var(--color-text-tertiary)}.share-modal-char-count{text-align:right;font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--spacing-xs);font-variant-numeric:tabular-nums}.share-modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border-primary)}.card-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-index-popover)}.card-menu-dropdown{position:fixed;z-index:calc(var(--z-index-popover) + 1);background:var(--color-bg-elevated);border-radius:var(--border-radius-base);box-shadow:0 4px 16px var(--color-shadow-medium),0 1px 3px var(--color-shadow-secondary);padding:var(--spacing-xs);min-width:160px;animation:popIn var(--transition-fast) forwards}.card-menu-dropdown__item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;cursor:default}.card-menu-dropdown__item--action{cursor:pointer}.card-menu-dropdown__item--action:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.card-menu-dropdown__label{color:var(--color-text-tertiary);font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.05em;min-width:36px}.card-menu-dropdown__value{color:var(--color-text-primary);font-size:var(--font-size-xs)}.card-menu-dropdown__value--mono{font-family:var(--font-family-mono)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-3xl) var(--spacing-lg);text-align:center}.empty-state__icon{color:var(--color-text-tertiary);opacity:.5;margin-bottom:var(--spacing-xs)}.empty-state__title{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);letter-spacing:var(--letter-spacing-base)}.empty-state__description{margin:0;font-size:var(--font-size-sm);color:var(--color-text-tertiary);line-height:var(--line-height-base);max-width:320px}.empty-state__action{margin-top:var(--spacing-sm)}.copy-button{display:flex;align-items:center;gap:var(--spacing-xs);background:var(--color-bg-secondary);color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base);font-family:var(--font-family-system);cursor:pointer;transition:all var(--transition-base)}.copy-button:hover{background:var(--color-bg-tertiary);border-color:var(--color-text-accent);color:var(--color-text-accent);box-shadow:var(--effect-glow-sm)}.copy-button:active{transform:scale(.95)}.copy-button-copied{background:var(--color-bg-secondary);border-color:var(--color-status-success);color:var(--color-status-success)}.copy-button-copied:hover{background:var(--color-bg-secondary);border-color:var(--color-status-success);color:var(--color-status-success);box-shadow:0 0 10px var(--color-glow-green)}.copy-button-medium{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.copy-button-small{padding:var(--spacing-2xs) 6px;font-size:var(--font-size-xs);gap:2px}.favorite-button{width:28px;height:28px;background:rgba(var(--color-overlay-dark-rgb),.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:none;border-radius:50%;padding:0;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;overflow:hidden;will-change:transform;transition:opacity var(--transition-base)}.favorite-button .material-symbols-outlined{color:rgba(var(--color-white-rgb),.8);transition:color var(--transition-fast)}.favorite-button.favorited .material-symbols-outlined{color:var(--color-status-error)}.favorite-button.animate-pop .material-symbols-outlined{animation:heart-pop .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes heart-pop{0%{transform:scale(1)}25%{transform:scale(1.35)}50%{transform:scale(.9)}to{transform:scale(1)}}.favorite-button.animate-pop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--color-status-error);animation:ring-burst .4s ease-out forwards;pointer-events:none}@keyframes ring-burst{0%{transform:scale(.5);opacity:1}to{transform:scale(2);opacity:0}}.job-card-favorite-button{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);opacity:0}.job-card:hover .job-card-favorite-button,.job-card-favorite-button.favorited{opacity:1}@media (hover: none){.job-card-favorite-button{opacity:1}}.job-modal-action-icon.favorite-button{opacity:1}@media (prefers-reduced-motion: reduce){.favorite-button.animate-pop .material-symbols-outlined{animation:none}.favorite-button.animate-pop:after{animation:none}}.loading-dots{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;--loading-dot-color: var(--color-text-accent)}.loading-dots--small{gap:2px}.loading-dots--small .loading-dots__dot{width:4px;height:4px}.loading-dots--medium .loading-dots__dot{width:8px;height:8px}.loading-dots--large{gap:6px}.loading-dots--large .loading-dots__dot{width:12px;height:12px}.loading-dots__dot{background-color:var(--loading-dot-color);opacity:.2;animation:blink 1.5s infinite;border-radius:1px}.loading-dots__dot:nth-child(1){animation-delay:0s}.loading-dots__dot:nth-child(2){animation-delay:.2s}.loading-dots__dot:nth-child(3){animation-delay:.4s}.loading-dots__dot:nth-child(4){animation-delay:.1s}.loading-dots__dot:nth-child(5){animation-delay:.5s}.loading-dots__dot:nth-child(6){animation-delay:.2s}.loading-dots__dot:nth-child(7){animation-delay:.3s}.loading-dots__dot:nth-child(8){animation-delay:.1s}.loading-dots__dot:nth-child(9){animation-delay:.4s}.job-image-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-overlay-dark);z-index:var(--z-index-max);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.job-image-modal{max-width:90vw;max-height:90vh;border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-lg);background:var(--color-bg-elevated);padding:0;animation:popIn .2s;box-shadow:var(--effect-shadow-xl);display:flex;flex-direction:column;overflow:hidden;position:relative}.job-thumbnail-strip{display:flex;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--color-bg-tertiary);border-bottom:var(--border-width-thin) solid var(--color-border-primary);overflow-x:auto;overflow-y:hidden;flex-shrink:0;height:80px;align-items:center;scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.job-thumbnail-strip::-webkit-scrollbar{height:6px}.job-thumbnail-strip::-webkit-scrollbar-track{background:transparent}.job-thumbnail-strip::-webkit-scrollbar-thumb{background-color:var(--color-border-secondary);border-radius:var(--border-radius-full)}.job-thumbnail-strip::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-tertiary)}.job-thumbnail{flex-shrink:0;width:60px;height:60px;border-radius:var(--border-radius-sm);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all var(--transition-base);opacity:.6}.job-thumbnail:hover{opacity:.9;transform:scale(1.05)}.job-thumbnail.active{border-color:var(--color-interactive-default);opacity:1;box-shadow:0 0 0 2px var(--color-glow-green)}.job-thumbnail.failed{background:var(--color-status-error-bg);border-color:var(--color-status-error)}.job-thumbnail.processing{background:var(--color-bg-tertiary);border-color:var(--color-status-processing)}.job-thumbnail.stuck,.job-thumbnail.rate-limited{background:var(--color-status-warning-bg);border-color:var(--color-status-warning)}.job-thumbnail-loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary)}.job-thumbnail img{width:100%;height:100%;object-fit:cover}.job-thumbnail-error{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);opacity:.8}.job-thumbnail-stuck,.job-thumbnail-rate-limited{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-status-warning-bg);color:var(--color-status-warning)}.job-modal-content{display:flex;flex-direction:row;flex:1;overflow:hidden}.job-modal-info{flex:0 0 280px;padding:var(--spacing-md);background:var(--color-bg-secondary);border-right:var(--border-width-thin) solid var(--color-border-primary);display:flex;flex-direction:column;gap:var(--spacing-sm);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.job-modal-info::-webkit-scrollbar{width:8px}.job-modal-info::-webkit-scrollbar-track{background:transparent}.job-modal-info::-webkit-scrollbar-thumb{background-color:var(--color-border-secondary);border-radius:var(--border-radius-full)}.job-modal-info::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-tertiary)}.job-modal-id{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-family:var(--font-family-system);opacity:.7;letter-spacing:var(--letter-spacing-base)}.job-modal-date{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.job-modal-status{color:var(--color-text-tertiary);font-size:var(--font-size-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.job-modal-status span[class^=status-]{font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);padding:1px var(--spacing-xs);border-radius:var(--border-radius-full);border:none}.job-modal-status .status-completed{color:var(--color-status-completed);background:rgba(var(--color-status-success-rgb),.1)}.job-modal-status .status-processing{color:var(--color-status-processing);background:rgba(var(--color-status-info-rgb),.1)}.job-modal-status .status-failed{color:var(--color-status-failed);background:rgba(var(--color-status-error-rgb),.1)}.job-modal-status .status-stuck,.job-modal-status .status-rate-limited{color:var(--color-status-warning);background:rgba(var(--color-status-warning-rgb),.1)}.job-modal-actions{display:flex;gap:var(--spacing-xs);padding-top:var(--spacing-xs)}.job-modal-action-icon{width:28px;height:28px;padding:0}.job-modal-actions .job-modal-action-icon--shared{color:var(--color-interactive-hover)}.job-modal-actions .job-modal-action-icon--shared:hover{color:var(--color-status-error)}.job-modal-field{margin-top:0}.job-modal-field-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.job-modal-field-label{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.job-modal-field-value{color:var(--color-text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-base);word-break:break-word}.job-modal-prompt-section{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:var(--border-width-thin) solid var(--color-border-secondary)}.job-modal-prompt-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xs)}.job-modal-prompt-label{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.job-modal-prompt{color:var(--color-text-secondary);font-size:var(--font-size-xs);line-height:1.4;font-family:var(--font-family-system);background:var(--color-bg-tertiary);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);white-space:pre-wrap;word-break:break-word;margin:0;max-height:300px;overflow-y:auto}.job-modal-error{color:var(--color-status-error);background:var(--color-status-error-bg);padding:var(--spacing-sm);border-radius:var(--border-radius-base);margin-top:var(--spacing-sm)}.job-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.job-modal-counter{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.job-modal-close{width:28px;height:28px;padding:0}.job-modal-close:hover{color:var(--color-status-error)}.job-modal-image-container{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);padding-bottom:var(--spacing-md);background:var(--color-bg-primary);min-width:0;position:relative}.job-modal-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;padding:0;border-radius:var(--border-radius-full);z-index:10;opacity:.8}.job-modal-image-container .job-modal-nav:hover:not(:disabled){opacity:1;background:var(--color-interactive-default);border-color:var(--color-interactive-default);color:var(--color-text-inverse);transform:translateY(-50%)}.job-modal-nav-prev{left:var(--spacing-lg)}.job-modal-nav-next{right:var(--spacing-lg)}.job-modal-image-wrapper{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-width:0}.job-modal-image-wrapper img{max-width:100%;max-height:calc(85vh - 120px);object-fit:contain;border-radius:var(--border-radius-md);box-shadow:var(--effect-shadow-lg)}.artifact-viewer{display:flex;flex-direction:column;align-items:center;width:100%;max-height:calc(85vh - 120px);gap:var(--spacing-md)}.artifact-viewer__main{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);flex:1 1 auto;min-height:0}.artifact-viewer__main video,.artifact-viewer__main img{max-width:100%;max-height:calc(80vh - 200px);object-fit:contain;border-radius:var(--border-radius-md);box-shadow:var(--effect-shadow-lg)}.artifact-viewer__main video{background:var(--color-bg-tertiary)}.artifact-viewer__download--loading{opacity:.7;cursor:wait}.artifact-viewer__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);width:100%;max-height:calc(80vh - 200px);overflow-y:auto;padding:var(--spacing-xs)}.artifact-viewer__grid-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--border-radius-md);border:var(--border-width-thin) solid transparent;transition:all var(--transition-base)}.artifact-viewer__grid-item:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.artifact-viewer__grid-label{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-family:var(--font-family-system);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.artifact-viewer__grid-item video,.artifact-viewer__grid-item img{max-width:100%;max-height:30vh;object-fit:contain;border-radius:var(--border-radius-sm);box-shadow:var(--effect-shadow-base)}.artifact-viewer__grid-item video{background:var(--color-bg-tertiary)}.artifact-viewer__bottom-bar{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);flex-shrink:0}.artifact-viewer__download-all{white-space:nowrap}.artifact-viewer__download-all--loading{opacity:.7;cursor:wait}.job-modal-failed{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-2xl);text-align:center}.job-modal-failed-icon{font-size:64px;opacity:.8}.job-modal-failed-message{color:var(--color-status-error);font-size:var(--font-size-lg);line-height:var(--line-height-base);max-width:400px}.job-modal-retry-button{padding:var(--spacing-sm) var(--spacing-xl)}.job-modal-processing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xl);padding:var(--spacing-2xl);text-align:center;min-height:300px}.job-modal-processing-status{color:var(--color-text-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.job-modal-cancel-button{padding:var(--spacing-sm) var(--spacing-xl)}.job-modal-processing .job-modal-cancel-button:hover:not(:disabled){background:var(--color-status-error-bg);border-color:var(--color-status-error);color:var(--color-status-error)}.job-modal-stuck{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-2xl);text-align:center;min-height:300px}.job-modal-stuck-icon{color:var(--color-status-warning);opacity:.9}.job-modal-stuck-message{color:var(--color-status-warning);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.job-modal-stuck-description{color:var(--color-text-secondary);font-size:var(--font-size-base);max-width:400px}.job-modal-rate-limited{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-2xl);text-align:center;min-height:300px}.job-modal-rate-limited-icon{color:var(--color-status-warning);opacity:.9}.job-modal-rate-limited-message{color:var(--color-status-warning);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.job-modal-rate-limited-description{color:var(--color-text-secondary);font-size:var(--font-size-base);max-width:400px}.job-modal-header-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.lightbox-bg-toggle{width:28px;height:28px;padding:0}.job-image-overlay--light .job-modal-image-container{background:var(--color-bg-image-light)}.job-image-overlay--light .job-modal-image-wrapper img{background:repeating-conic-gradient(var(--color-bg-checkerboard-dark) 0% 25%,var(--color-bg-checkerboard-light) 0% 50%) 50% / 20px 20px;box-shadow:var(--effect-shadow-base)}.job-modal-hints{color:var(--color-text-tertiary);font-size:var(--font-size-2xs);padding:var(--spacing-sm) 0 0;opacity:.5;pointer-events:none;flex-shrink:0;white-space:nowrap}@media (max-width: 768px){.job-image-modal{max-height:95vh}.job-modal-content{flex-direction:column;overflow-y:auto;overflow-x:hidden;max-height:calc(95vh - 80px)}.job-modal-info{flex:0 0 auto;max-height:none;overflow:visible;border-right:none;border-top:var(--border-width-thin) solid var(--color-border-primary);border-bottom:none;padding:var(--spacing-md);order:2}.job-modal-header{position:absolute;top:0;left:0;right:0;z-index:var(--z-index-modal);background:var(--color-bg-elevated);padding:var(--spacing-sm) var(--spacing-md);border-bottom:var(--border-width-thin) solid var(--color-border-primary);margin:0}.job-thumbnail-strip{margin-top:50px}.job-modal-info .job-modal-header{position:absolute;top:0}.job-modal-image-container{flex:0 0 auto;min-height:0;padding:var(--spacing-md);order:1}.job-modal-image-wrapper img{max-height:50vh;width:100%;object-fit:contain}.job-thumbnail-strip{height:60px;padding:var(--spacing-sm)}.job-thumbnail{width:45px;height:45px}.job-modal-nav{width:40px;height:40px;font-size:var(--font-size-xl)}.job-modal-nav-prev{left:var(--spacing-sm)}.job-modal-nav-next{right:var(--spacing-sm)}.job-modal-hints{display:none}.artifact-viewer{max-height:none}.artifact-viewer__grid{grid-template-columns:1fr;max-height:none}.artifact-viewer__main video,.artifact-viewer__main img{max-height:40vh}}.job-card{position:relative;width:100%;aspect-ratio:1;border-radius:var(--border-radius-md);overflow:hidden;background:var(--color-bg-elevated);border:none;box-shadow:0 1px 3px var(--color-shadow-secondary),0 4px 12px var(--color-shadow-light);transition:box-shadow var(--transition-base);cursor:pointer;box-sizing:border-box;user-select:none;-webkit-user-select:none}.job-card:hover{box-shadow:0 2px 6px var(--color-shadow-secondary),0 12px 32px var(--color-shadow-medium)}.job-card.failed:hover{box-shadow:0 0 12px rgba(var(--color-status-error-rgb),.3)}.job-card.job-card--light .job-image{background-color:var(--color-bg-image-light)}.job-card .job-image{width:100%;height:100%;object-fit:contain;display:block;background-color:var(--color-bg-secondary);box-sizing:border-box;pointer-events:none;-webkit-user-drag:none}.job-card-menu-trigger{position:absolute;bottom:var(--spacing-sm);right:var(--spacing-sm);width:28px;height:28px;padding:0;background:rgba(var(--color-overlay-dark-rgb),.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:none;border-radius:var(--border-radius-full);cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-base)}.job-card:hover .job-card-menu-trigger{opacity:1}.job-card-menu-trigger .material-symbols-outlined{color:rgba(var(--color-white-rgb),.8);font-size:18px}.job-card-menu-trigger:hover{background:rgba(var(--color-overlay-dark-rgb),.6);box-shadow:var(--effect-shadow-sm)}.job-cost-badge{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-family:var(--font-family-mono);color:var(--color-text-secondary);box-shadow:var(--effect-shadow-sm);flex-shrink:0}.job-style-badge{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);color:var(--color-text-tertiary);box-shadow:var(--effect-shadow-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.job-card-share-button{display:none}.job-queued{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md);box-sizing:border-box;background-color:var(--color-bg-elevated);cursor:pointer}.job-queued-icon{color:var(--color-text-tertiary);opacity:.6}.job-loading{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md);box-sizing:border-box;background-color:var(--color-bg-elevated);background-image:linear-gradient(135deg,var(--color-bg-elevated) 0%,var(--color-bg-secondary) 50%,var(--color-bg-elevated) 100%);background-size:200% 200%;animation:loading-shimmer 3s ease-in-out infinite}@keyframes loading-shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.job-status-badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-base);font-weight:var(--font-weight-medium)}.job-status-badge.queued{background-color:var(--color-bg-tertiary);color:var(--color-text-tertiary);border:var(--border-width-thin) solid var(--color-border-secondary)}.job-status-badge.processing{background-color:rgba(var(--color-status-warning-rgb),.05);color:var(--color-status-processing);border:var(--border-width-thin) solid var(--color-status-processing)}.job-status-badge.failed{background-color:var(--color-status-error-bg);color:var(--color-status-error);border:var(--border-width-thin) solid var(--color-status-error)}.job-stuck{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm);box-sizing:border-box;background:var(--color-bg-secondary);overflow:hidden}.job-stuck-icon{color:var(--color-status-warning);opacity:.9;flex-shrink:0}.job-stuck-message{color:var(--color-status-warning);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-align:center;line-height:1.3}.job-stuck-prompt{color:var(--color-text-tertiary);font-size:var(--font-size-2xs);text-align:center;opacity:.7;font-style:italic;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.job-stuck-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.job-stuck-actions .job-retry-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md)}.job-card:has(.job-stuck):hover{box-shadow:0 0 12px rgba(var(--color-status-warning-rgb),.3)}.job-rate-limited{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm);box-sizing:border-box;background:var(--color-bg-secondary);overflow:hidden}.job-rate-limited-icon{color:var(--color-status-warning);opacity:.9;flex-shrink:0}.job-rate-limited-message{color:var(--color-status-warning);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-align:center;line-height:1.3}.job-rate-limited-prompt{color:var(--color-text-tertiary);font-size:var(--font-size-2xs);text-align:center;opacity:.7;font-style:italic;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.job-rate-limited-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.job-rate-limited-actions .job-retry-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md)}.job-card:has(.job-rate-limited):hover{box-shadow:0 0 12px rgba(var(--color-status-warning-rgb),.3)}.job-failed{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm);box-sizing:border-box;background:var(--color-bg-secondary);overflow:hidden}.job-failed-icon{font-size:var(--font-size-xl);opacity:.8;flex-shrink:0}.job-error-message{color:var(--color-status-error);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);text-align:center;line-height:1.3;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;word-break:break-word}.job-failed-prompt{color:var(--color-text-tertiary);font-size:var(--font-size-2xs);text-align:center;opacity:.7;font-style:italic;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.job-id-label{font-family:var(--font-family-mono);font-size:9px;color:var(--color-text-tertiary);opacity:.5;cursor:pointer;-webkit-user-select:all;user-select:all}.job-failed-actions{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);display:flex;gap:var(--spacing-xs);opacity:0;transition:opacity var(--transition-base);z-index:2}.job-card:hover .job-failed-actions{opacity:1}.job-archive-button{padding:var(--spacing-xs)}.job-card .job-archive-button:hover:not(:disabled){background:var(--color-status-error);border-color:var(--color-status-error);color:var(--color-text-inverse);transform:none}.job-card .job-archive-button--loading{background:var(--color-status-error-bg);border-color:var(--color-status-error);cursor:wait}.job-retry-button{padding:var(--spacing-xs);border-color:var(--color-interactive-default);color:var(--color-interactive-default)}.job-card .job-retry-button:hover:not(:disabled){background:var(--color-interactive-default);color:var(--color-bg-primary);transform:none}.job-card .job-retry-button--loading{cursor:wait;background:rgba(var(--color-interactive-default-rgb, 147, 112, 219),.1)}.job-progress-container{width:60%;height:2px;background:var(--color-bg-tertiary);border-radius:var(--border-radius-full);overflow:hidden;margin-top:var(--spacing-sm);position:relative}.job-progress-bar{height:100%;background:var(--color-interactive-default);border-radius:var(--border-radius-full)}@keyframes progress-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.job-progress-bar--animated{animation:progress-fill 60s linear forwards;width:100%;transform:scaleX(0);transform-origin:left;transition:none}.timeout-badge{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);margin-top:var(--spacing-sm);max-width:90%;font-weight:var(--font-weight-medium);border:1px solid transparent}.timeout-badge-content{display:flex;align-items:center;gap:var(--spacing-xs);flex:1}.timeout-badge[data-severity=warning]{background:rgba(var(--color-status-warning-rgb),.1);color:var(--color-text-accent);border-color:rgba(var(--color-status-warning-rgb),.3)}.timeout-badge[data-severity=critical]{background:rgba(var(--color-status-warning-rgb),.15);color:var(--color-status-warning);border-color:var(--color-status-warning)}.timeout-badge[data-severity=dead]{background:rgba(var(--color-status-error-rgb),.1);color:var(--color-status-error);border-color:rgba(var(--color-status-error-rgb),.3)}.timeout-retry-button{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);background:transparent;color:inherit;border:1px solid currentColor;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.timeout-retry-button:hover{background:currentColor;color:var(--color-bg-primary)}.job-card--pending{opacity:.85}.job-card__pending-indicator{position:absolute;top:var(--spacing-xs);left:var(--spacing-xs);right:var(--spacing-xs);background:var(--color-bg-secondary);border:var(--border-width-thin) solid var(--color-interactive-default);border-radius:var(--border-radius-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-interactive-default);font-style:italic;z-index:10;text-align:center;box-shadow:var(--effect-shadow-sm)}@media (max-width: 768px){.job-card{aspect-ratio:1}.timeout-badge{font-size:var(--font-size-2xs);padding:.4rem .6rem}.timeout-badge button{font-size:var(--font-size-2xs);padding:.2rem .5rem}}@media (hover: none){.job-card-share-button{opacity:1}.job-failed-actions{opacity:.9}}.justified-grid{position:relative;width:100%}.justified-row{display:flex;width:100%;margin-bottom:8px}.justified-row:last-child{margin-bottom:0}.justified-item{flex-shrink:0;overflow:hidden}.justified-item .job-card{width:100%;height:100%;aspect-ratio:unset}.justified-item .job-image{object-fit:cover}.scrollable{scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.scrollable::-webkit-scrollbar{width:4px}.scrollable::-webkit-scrollbar-track{background:transparent}.scrollable::-webkit-scrollbar-thumb{background-color:var(--color-border-secondary);border-radius:var(--border-radius-full)}.scrollable::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-tertiary)}.scrollable-standard{scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.scrollable-standard::-webkit-scrollbar{width:8px}.scrollable-standard::-webkit-scrollbar-track{background:transparent}.scrollable-standard::-webkit-scrollbar-thumb{background-color:var(--color-border-secondary);border-radius:var(--border-radius-full)}.scrollable-standard::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-tertiary)}.job-list-container{height:auto;padding:0}.no-history{color:var(--color-text-secondary);opacity:.7;text-align:center;margin-top:var(--spacing-xl);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-base)}.job-list-header-info{color:var(--color-text-secondary);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-base);opacity:.7}.job-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-xs);padding-bottom:var(--spacing-xl)}.status-completed{color:var(--color-status-success);border:1px solid var(--color-status-success)}.status-processing{color:var(--color-status-warning);border:1px solid var(--color-status-warning)}.status-failed{color:var(--color-status-error);border:1px solid var(--color-status-error)}.job-list-loader{height:100px;display:flex;align-items:center;justify-content:center}.job-list-loading{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-secondary)}.job-list-grouped{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-top:var(--spacing-md);padding-bottom:var(--spacing-xl)}.job-list-day-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.job-list-day-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:0 var(--spacing-xs)}.job-list-day-label{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);font-family:var(--font-family-serif);color:var(--color-text-secondary);letter-spacing:var(--letter-spacing-base)}.job-list-day-count{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.job-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-xs);padding-top:var(--spacing-md);padding-bottom:var(--spacing-xl);align-content:start}.job-list.scrollable{composes:scrollable}@media (max-width: 768px){.job-list-container{padding:var(--spacing-sm)}.job-list-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs);padding-bottom:var(--spacing-md)}.job-list{grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs);padding:var(--spacing-xs)}.job-card-image{height:150px}.job-card-info{padding:var(--spacing-sm)}}.job-list-loading-more{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.job-list-end{text-align:center;padding:var(--spacing-lg);color:var(--color-text-tertiary);font-size:var(--font-size-sm);opacity:.7}.job-list-error{display:flex;justify-content:center;align-items:center;padding:var(--spacing-xl);color:var(--color-status-error);font-size:var(--font-size-base)}.job-list-load-more-error{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-md);color:var(--color-status-error);font-size:var(--font-size-sm)}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-bg-primary);padding:var(--spacing-lg)}.login-card{background:var(--color-bg-secondary);border:2px solid var(--color-border-primary);border-radius:var(--border-radius-lg);padding:var(--spacing-3xl);text-align:center;max-width:400px;width:100%;box-shadow:var(--effect-glow-lg)}.login-title{color:var(--color-text-accent);font-family:var(--font-family-serif);font-size:var(--font-size-3xl);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-tight);margin-bottom:var(--spacing-sm)}.login-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-base);margin-bottom:var(--spacing-2xl)}.google-signin-btn{--google-text: #3c4043;--google-border: #dadce0;--google-bg: #ffffff;--google-bg-hover: #f8f9fa}.google-signin-btn{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--google-bg);color:var(--google-text);border-color:var(--google-border);font-size:var(--font-size-base)}.google-signin-btn:hover:not(:disabled){background:var(--google-bg-hover);border-color:var(--google-border);box-shadow:0 1px 3px rgba(var(--color-overlay-dark-rgb),.2);transform:none}.google-icon{width:20px;height:20px}@media (max-width: 768px){.login-card{padding:var(--spacing-xl)}.login-title{font-size:var(--font-size-2xl)}}.main-panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-lg);gap:var(--spacing-md)}.main-panel__header{flex:0 0 auto;padding-bottom:var(--spacing-md);border-bottom:var(--border-width-thin) solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.main-panel__title{font-size:var(--font-size-lg);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-tight);margin:0;font-family:var(--font-family-system)}.main-panel__content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.main-panel__content::-webkit-scrollbar{width:8px}.main-panel__content::-webkit-scrollbar-track{background:transparent}.main-panel__content::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--border-radius-full)}.main-panel__content::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.main-panel__actions{display:flex;gap:var(--spacing-sm);align-items:center}.bottom-sheet-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(var(--color-overlay-dark-rgb),.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-index-overlay);animation:fadeIn .3s ease;pointer-events:auto}.bottom-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-elevated);border-top-left-radius:var(--border-radius-xl);border-top-right-radius:var(--border-radius-xl);box-shadow:0 -8px 32px rgba(var(--color-overlay-dark-rgb),.2);z-index:var(--z-index-modal);max-height:85vh;display:flex;flex-direction:column;animation:slideUp .3s ease;transition:transform var(--transition-fast);pointer-events:auto}.bottom-sheet-handle-container{padding:var(--spacing-sm) 0;display:flex;justify-content:center;cursor:grab}.bottom-sheet-handle{width:48px;height:4px;background:var(--color-border-primary);border-radius:var(--border-radius-full);opacity:.5}.bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border-secondary)}.bottom-sheet-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.bottom-sheet-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-text-secondary);font-size:var(--font-size-xl);cursor:pointer;border-radius:var(--border-radius-full);transition:all var(--transition-fast)}.bottom-sheet-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.bottom-sheet-content{flex:1;overflow-y:auto;padding:var(--spacing-lg);padding-bottom:env(safe-area-inset-bottom,var(--spacing-lg))}.model-selector{width:100%}.model-selector__trigger{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-base)}.model-selector__trigger:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.model-selector__trigger--open{border-color:var(--color-interactive-default)}.model-selector__trigger-text{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.model-selector__trigger-label{font-family:var(--font-family-system);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:-.02em}.model-selector__trigger-desc{font-family:var(--font-family-system);font-size:var(--font-size-xs);color:var(--color-text-tertiary);line-height:1.2}.model-selector__chevron{color:var(--color-text-tertiary);flex-shrink:0;margin-left:auto}.model-selector__logo{flex-shrink:0;opacity:.85}.model-selector__dropdown{margin-top:var(--spacing-xs);background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-secondary);border-radius:var(--border-radius-sm);overflow:hidden}.model-selector__options{display:flex;flex-direction:column}.model-selector__option{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast);text-align:left}.model-selector__option:hover{background:var(--color-bg-hover)}.model-selector__option.active{background:var(--color-bg-active)}.model-selector__option-text{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.model-selector__option-label{font-family:var(--font-family-system);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:-.02em}.model-selector__option-desc{font-family:var(--font-family-system);font-size:var(--font-size-xs);color:var(--color-text-tertiary);line-height:1.2}.model-selector__option.active .model-selector__option-label{color:var(--color-text-accent)}.model-selector__check{color:var(--color-interactive-default);flex-shrink:0}.model-selector__settings{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md);border-top:var(--border-width-thin) solid var(--color-border-primary)}.image-controls__group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.image-controls__group--inline{flex-direction:row;align-items:center;justify-content:space-between}.image-controls__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em}.image-controls__pills{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.image-controls__pill{flex:1;min-width:60px;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-family:var(--font-family-system);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.image-controls__pill:hover:not(:disabled){background:var(--color-bg-tertiary);color:var(--color-text-primary)}.image-controls__pill.active{background:rgba(var(--color-interactive-default-rgb),.1);border-color:rgba(var(--color-interactive-default-rgb),.45);color:var(--color-text-primary);font-weight:var(--font-weight-bold);box-shadow:0 0 6px rgba(var(--color-interactive-default-rgb),.25),0 0 14px rgba(var(--color-interactive-default-rgb),.08)}.image-controls__pill:disabled{opacity:.5;cursor:not-allowed;background:var(--color-bg-disabled);border-color:transparent}.image-controls__pill--with-icon{flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-sm)}.image-controls__pill-icon{font-size:var(--font-size-lg);opacity:.8}.image-controls__pill.active .image-controls__pill-icon{opacity:1}.image-controls__pill-text{font-size:var(--font-size-2xs)}.image-controls__warning{font-size:var(--font-size-xs);color:var(--color-status-warning);padding:var(--spacing-xs) 0}.image-controls__slider{width:100%;height:4px;background:var(--color-bg-elevated);border-radius:var(--border-radius-full);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;margin:var(--spacing-xs) 0}.image-controls__slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--color-interactive-default);border-radius:var(--border-radius-full);cursor:pointer;box-shadow:var(--effect-shadow-sm)}.toggle-switch{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-family:var(--font-family-system);transition:all var(--transition-base)}.toggle-switch:hover{color:var(--color-text-primary)}.toggle-switch input{display:none}.toggle-switch__track{width:36px;height:20px;background:var(--color-control-bg);border-radius:var(--border-radius-full);position:relative;transition:all var(--transition-base);border:var(--border-width-thin) solid var(--color-control-border);flex-shrink:0}.toggle-switch__thumb{width:14px;height:14px;background:var(--color-text-tertiary);border-radius:var(--border-radius-full);position:absolute;top:2px;left:2px;transition:all var(--transition-base)}.toggle-switch__label{transition:color var(--transition-base)}.toggle-switch.toggle-switch--active .toggle-switch__track{background:var(--color-control-bg-active);border-color:var(--color-control-border-active)}.toggle-switch.toggle-switch--active .toggle-switch__thumb{left:calc(100% - 16px);background:var(--color-control-text-active)}.toggle-switch.toggle-switch--active .toggle-switch__label{color:var(--color-status-success)}.toggle-switch-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs)}.toggle-switch__description{margin:0;font-family:var(--font-family-system);font-size:var(--font-size-xs);color:var(--color-text-disabled);line-height:1.4;padding-left:44px}.mobile-drawer-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(var(--color-overlay-dark-rgb),.5);z-index:var(--z-index-sticky);animation:fadeIn .3s}.mobile-options-drawer{position:fixed;bottom:0;left:0;right:0;max-height:80vh;background:var(--color-bg-secondary);border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);z-index:calc(var(--z-index-sticky) + 1);transition:transform var(--transition-base);animation:slideUp .3s;overflow:hidden;display:flex;flex-direction:column}.drawer-handle{width:40px;height:4px;background:var(--color-border-secondary);border-radius:2px;margin:var(--spacing-sm) auto;cursor:grab}.drawer-handle:active{cursor:grabbing}.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border-secondary);flex-shrink:0}.drawer-header h3{font-size:var(--font-size-lg);color:var(--color-text-primary);margin:0}.drawer-content{flex:1;overflow-y:auto;padding:var(--spacing-lg);padding-bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom,0px))}.drawer-section{margin-bottom:var(--spacing-xl)}.drawer-section:last-child{margin-bottom:0}.drawer-section--feedback{border-top:1px solid var(--color-border-primary);padding-top:var(--spacing-lg)}.drawer-feedback-btn{width:100%;justify-content:center}.drawer-section h4{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-sm) 0;text-transform:uppercase;letter-spacing:.05em;font-weight:var(--font-weight-bold)}.drawer-toggles{display:flex;flex-direction:column;gap:var(--spacing-md)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (max-width: 768px){.drawer-content{overscroll-behavior:contain}}.mobile-prompt-bar{position:fixed;bottom:calc(56px + var(--spacing-sm));left:var(--spacing-sm);right:var(--spacing-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);border-radius:var(--border-radius-md);z-index:var(--z-index-dropdown);box-shadow:0 -4px 20px rgba(var(--color-overlay-dark-rgb),.25);margin-bottom:env(safe-area-inset-bottom,0)}.mobile-prompt-bar__style-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border-bottom:1px solid var(--color-border-primary)}.mobile-prompt-bar__style-button{flex:1;justify-content:flex-start;text-align:left}.mobile-prompt-bar__style-icon{width:28px;height:28px;border-radius:var(--border-radius-sm);object-fit:cover;flex-shrink:0}.mobile-prompt-bar__style-name{flex:1;font-size:var(--font-size-sm);color:var(--color-text-primary);font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-prompt-bar__style-button .material-icon{color:var(--color-text-tertiary);flex-shrink:0}.mobile-prompt-bar__options-btn{width:44px;height:44px;padding:0;flex-shrink:0}.mobile-prompt-bar__input-row{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);align-items:flex-end}.mobile-prompt-bar__form{flex:1;min-width:0}.mobile-prompt-bar__input-wrapper{position:relative;display:flex;align-items:center;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);transition:border-color var(--transition-fast);min-height:44px}.mobile-prompt-bar__input-wrapper:focus-within{border-color:var(--color-border-focus)}.mobile-prompt-bar__textarea{flex:1;min-height:24px;max-height:120px;padding:var(--spacing-sm) var(--spacing-md);padding-right:36px;background:transparent;color:var(--color-text-primary);border:none;font-size:var(--font-size-base);font-weight:var(--font-weight-normal);outline:none;resize:none;font-family:inherit;line-height:24px;overflow-y:auto;display:block;margin:0;box-sizing:content-box}.mobile-prompt-bar__textarea{scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.mobile-prompt-bar__textarea::-webkit-scrollbar{width:4px}.mobile-prompt-bar__textarea::-webkit-scrollbar-track{background:transparent}.mobile-prompt-bar__textarea::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--border-radius-full)}.mobile-prompt-bar__textarea::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.mobile-prompt-bar__textarea::placeholder{color:var(--color-text-tertiary)}.mobile-prompt-bar__clear-btn{position:absolute;right:var(--spacing-sm);top:var(--spacing-sm);width:24px;height:24px;padding:0}.mobile-prompt-bar__clear-btn .material-icon{font-size:var(--font-size-sm)}.mobile-prompt-bar .mobile-prompt-bar__send-btn{width:44px;height:44px;padding:0;background:linear-gradient(135deg,var(--core-mauve) 0%,var(--core-blue) 100%);border-color:transparent;color:var(--core-crust);flex-shrink:0}.mobile-prompt-bar .mobile-prompt-bar__send-btn:active:not(:disabled){transform:scale(.95)}.mobile-prompt-bar .mobile-prompt-bar__send-btn:disabled{background:var(--color-bg-disabled);color:var(--color-text-disabled)}.mobile-prompt-bar__send-btn .material-icon{font-size:22px;color:inherit}.mobile-prompt-bar.keyboard-open{position:fixed;bottom:0;left:0;right:0;border-radius:0;margin-bottom:0}@media (orientation: landscape) and (max-height: 600px){.mobile-prompt-bar{padding:var(--spacing-xs)}}.mobile-prompt-bar__file-input{display:none}.mobile-prompt-bar__attach-btn{width:44px;height:44px;padding:0;flex-shrink:0}.mobile-prompt-bar__preview-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border-bottom:1px solid var(--color-border-primary)}.mobile-prompt-bar__preview-img{width:48px;height:48px;object-fit:cover;border-radius:var(--border-radius-sm);border:1px solid var(--color-border-primary);flex-shrink:0}.mobile-prompt-bar__preview-label{flex:1;font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-prompt-bar__preview-remove{width:32px;height:32px;padding:0;flex-shrink:0}.mobile-prompt-bar.keyboard-open .mobile-prompt-bar__preview-row{padding:var(--spacing-xs)}.mobile-prompt-bar.keyboard-open .mobile-prompt-bar__preview-img{width:36px;height:36px}@supports (-webkit-touch-callout: none){.mobile-prompt-bar{margin-bottom:env(safe-area-inset-bottom,8px)}.mobile-prompt-bar__textarea,.mobile-prompt-bar__file-input{font-size:16px}}.avatar{border-radius:var(--border-radius-circle);object-fit:cover;flex-shrink:0}.avatar--sm{width:20px;height:20px}.avatar--md{width:32px;height:32px}.avatar--lg{width:56px;height:56px}.avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-bg-elevated);color:var(--color-text-tertiary)}.avatar--placeholder .material-icon{font-size:60%}.confirm-dialog__body{padding:var(--spacing-md) var(--spacing-lg)}.confirm-dialog__message{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-base)}.confirm-dialog__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-md);border-top:var(--border-width-thin) solid var(--color-border-primary)}.like-button{display:flex;align-items:center;gap:var(--spacing-xs);background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;z-index:2;box-shadow:var(--effect-shadow-sm);overflow:hidden;will-change:transform;transition:opacity var(--transition-base),border-color var(--transition-base)}.like-button:hover:not(:disabled){border-color:var(--color-interactive-hover)}.like-button .material-symbols-outlined{color:var(--color-text-secondary);transition:color var(--transition-fast)}.like-button.liked .material-symbols-outlined{color:var(--color-interactive-hover)}.like-count{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);min-width:.8em;text-align:center}.like-button.liked .like-count{color:var(--color-interactive-hover)}.like-button.animate-pop .material-symbols-outlined{animation:thumb-pop .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes thumb-pop{0%{transform:scale(1)}25%{transform:scale(1.35)}50%{transform:scale(.9)}to{transform:scale(1)}}.like-button.animate-pop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--border-radius-sm);border:2px solid rgba(var(--color-interactive-hover-rgb),1);animation:like-ring-burst .4s ease-out forwards;pointer-events:none}@keyframes like-ring-burst{0%{transform:scale(.5);opacity:1}to{transform:scale(1.5);opacity:0}}.like-button.disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion: reduce){.like-button.animate-pop .material-symbols-outlined{animation:none}.like-button.animate-pop:after{animation:none}}.public-feed-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);overflow:hidden;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.public-feed-card:hover{border-color:var(--color-border-secondary);box-shadow:var(--effect-shadow-base)}.public-feed-card-image{position:relative;width:100%;aspect-ratio:1;overflow:hidden;cursor:pointer;background:var(--color-bg-primary);padding:var(--spacing-sm);box-sizing:border-box}.public-feed-card-image>img{width:100%;height:100%;object-fit:cover;display:block;border-radius:var(--border-radius-sm)}.public-feed-card-style{position:absolute;bottom:var(--spacing-md);left:var(--spacing-md);font-size:var(--font-size-2xs);color:var(--color-text-inverse);background:rgba(var(--color-overlay-dark-rgb),.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:2px var(--spacing-sm);border-radius:var(--border-radius-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - var(--spacing-xl));opacity:0;transition:opacity var(--transition-base);z-index:2;pointer-events:none}.public-feed-card:hover .public-feed-card-style{opacity:1}.public-feed-card-unshare{position:absolute;top:var(--spacing-md);right:var(--spacing-md);border-radius:var(--border-radius-circle);width:28px;height:28px;padding:0;box-shadow:var(--effect-shadow-sm);z-index:2;opacity:0;transition:opacity var(--transition-base)}.public-feed-card:hover .public-feed-card-unshare{opacity:1}.public-feed-card .public-feed-card-unshare:hover:not(:disabled){background:var(--color-status-error);border-color:var(--color-status-error);color:var(--color-text-inverse);transform:none}.public-feed-card-content{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.public-feed-card-header{display:flex;align-items:center;justify-content:space-between}.public-feed-card-user{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;min-width:0}.public-feed-card-user:hover .public-feed-card-name{text-decoration:underline}.public-feed-card-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-feed-card-time{font-size:var(--font-size-2xs);color:var(--color-text-tertiary);white-space:nowrap;flex-shrink:0}.public-feed-card-message-row{display:flex;align-items:flex-start;gap:var(--spacing-xs);margin:var(--spacing-xs) 0}.public-feed-card-message{font-size:var(--font-size-sm);color:var(--color-text-primary);margin:0;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0}.public-feed-card-edit{padding:0;flex-shrink:0;opacity:0;transition:opacity var(--transition-base)}.public-feed-card:hover .public-feed-card-edit{opacity:1}.public-feed-card-edit .material-symbols-outlined{font-size:var(--font-size-sm);color:var(--color-text-tertiary);transition:color var(--transition-fast)}.public-feed-card-edit:hover .material-symbols-outlined{color:var(--color-text-primary)}.public-feed-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.public-feed-card-actions{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.public-feed-card-like-count{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.public-feed-card-like-count .material-symbols-outlined{font-size:var(--font-size-sm)}@media (hover: none){.public-feed-card-unshare,.public-feed-card-style,.public-feed-card-edit{opacity:1}}.public-viewer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--color-overlay-dark-rgb),.9);display:flex;align-items:center;justify-content:center;z-index:var(--z-index-modal)}.public-viewer{position:relative;display:flex;flex-direction:column;align-items:center;max-width:90vw;max-height:90vh}.public-viewer-close{position:fixed;top:var(--spacing-md);right:var(--spacing-md);border-radius:var(--border-radius-circle);width:40px;height:40px;padding:0;z-index:10}.public-viewer-backdrop .public-viewer-close{background:rgba(var(--color-overlay-dark-rgb),.5);border:none;color:var(--color-text-inverse)}.public-viewer-backdrop .public-viewer-close:hover:not(:disabled){background:rgba(var(--color-overlay-dark-rgb),.7);transform:none}.public-viewer-close .material-symbols-outlined{color:var(--color-text-inverse)}.public-viewer-nav{position:fixed;top:50%;transform:translateY(-50%);border-radius:var(--border-radius-circle);width:44px;height:44px;padding:0;z-index:10}.public-viewer-backdrop .public-viewer-nav{background:rgba(var(--color-overlay-dark-rgb),.5);border:none;color:var(--color-text-inverse)}.public-viewer-backdrop .public-viewer-nav:hover:not(:disabled){background:rgba(var(--color-overlay-dark-rgb),.7);transform:translateY(-50%)}.public-viewer-nav .material-symbols-outlined{color:var(--color-text-inverse)}.public-viewer-nav-prev{left:var(--spacing-md)}.public-viewer-nav-next{right:var(--spacing-md)}.public-viewer-image{max-height:70vh;display:flex;align-items:center;justify-content:center}.public-viewer-image img{max-width:90vw;max-height:70vh;object-fit:contain;border-radius:var(--border-radius-sm)}.public-viewer-info{width:100%;max-width:600px;padding:var(--spacing-md) 0}.public-viewer-info-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xs)}.public-viewer-user{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.public-viewer-user:hover .public-viewer-name{text-decoration:underline}.public-viewer-avatar{width:28px;height:28px;border-radius:var(--border-radius-circle);object-fit:cover}.public-viewer-avatar-placeholder{background:rgba(var(--color-white-rgb),.1);display:flex;align-items:center;justify-content:center}.public-viewer-avatar-placeholder .material-symbols-outlined{color:rgba(var(--color-white-rgb),.5)}.public-viewer-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-inverse)}.public-viewer-time{font-size:var(--font-size-xs);color:rgba(var(--color-white-rgb),.5)}.public-viewer-message{color:rgba(var(--color-white-rgb),.8);font-size:var(--font-size-sm);margin:0 0 var(--spacing-sm);line-height:1.4}.public-viewer-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.public-viewer-actions .public-viewer-action-btn{background:rgba(var(--color-white-rgb),.1);border:1px solid rgba(var(--color-white-rgb),.15);color:rgba(var(--color-white-rgb),.7)}.public-viewer-actions .public-viewer-action-btn:hover:not(:disabled){background:rgba(var(--color-white-rgb),.2);transform:none}.public-viewer-action-btn .material-symbols-outlined{color:rgba(var(--color-white-rgb),.7)}.public-viewer-actions .public-viewer-action-danger:hover:not(:disabled){background:rgba(var(--color-status-error-rgb),.3)}.public-viewer-action-danger:hover:not(:disabled) .material-symbols-outlined{color:var(--color-status-error)}.public-viewer-style{font-size:var(--font-size-xs);color:rgba(var(--color-white-rgb),.5);background:rgba(var(--color-white-rgb),.1);padding:2px var(--spacing-xs);border-radius:var(--border-radius-sm);margin-left:auto}@media (max-width: 768px){.public-viewer-nav{width:36px;height:36px}.public-viewer-image img{max-height:60vh}}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{display:block;background-color:var(--color-bg-secondary);background-image:linear-gradient(90deg,var(--color-bg-secondary) 0%,var(--color-bg-elevated) 50%,var(--color-bg-secondary) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s linear infinite}.skeleton--rectangular{border-radius:var(--border-radius-sm);width:100%;height:100%}.skeleton--circular{border-radius:var(--border-radius-circle);width:40px;height:40px}.skeleton--text{border-radius:var(--border-radius-sm);height:14px;width:100%}.skeleton--text-block{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.public-feed{width:100%;padding:var(--spacing-md)}.public-feed-sort-bar{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.public-feed-sort-pill{border-radius:var(--border-radius-full)}.public-feed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--spacing-md)}.public-feed-error{text-align:center;padding:var(--spacing-xl);color:var(--color-status-error)}.public-feed-error .button{margin-top:var(--spacing-sm)}.public-feed-empty{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.public-feed-sentinel{height:1px}.public-feed-loading-more{text-align:center;padding:var(--spacing-md);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.public-feed-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--spacing-md)}.public-feed-skeleton-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);overflow:hidden}.public-feed-skeleton-image{width:100%;aspect-ratio:1;background:var(--color-bg-secondary);animation:skeleton-pulse 1.5s ease-in-out infinite}.public-feed-skeleton-content{padding:var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.public-feed-skeleton-line{height:12px;background:var(--color-bg-secondary);border-radius:var(--border-radius-sm);animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width: 768px){.public-feed{padding:var(--spacing-sm)}.public-feed-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--spacing-sm)}}.style-carousel{display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-lg);height:100%;overflow-y:auto}.style-category{flex-shrink:0}.category-title{font-size:var(--font-size-lg);color:var(--color-text-primary);margin:0 0 var(--spacing-md) 0;padding:0 var(--spacing-sm);font-weight:var(--font-weight-bold)}.style-cards-scroll{display:flex;gap:var(--spacing-md);overflow-x:auto;overflow-y:visible;padding:var(--spacing-sm);scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}.style-cards-scroll::-webkit-scrollbar{display:none}.style-card{flex-shrink:0;width:100px;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--color-bg-secondary);border:2px solid var(--color-border-secondary);border-radius:var(--border-radius-lg);cursor:pointer;transition:all var(--transition-fast);scroll-snap-align:start}.style-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-primary);transform:translateY(-2px)}.style-card:active{transform:translateY(0) scale(.95)}.style-card.selected{background:var(--color-bg-tertiary);border-color:var(--color-text-primary);box-shadow:0 4px 12px rgba(var(--color-overlay-dark-rgb),.15)}.style-card-preview{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-base);background:var(--color-bg-primary);border:1px solid var(--color-border-secondary)}.style-card-emoji{font-size:2rem;line-height:1}.style-card-placeholder{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-align:center;line-height:1.2}.style-card-name{font-size:var(--font-size-xs);color:var(--color-text-primary);text-align:center;line-height:1.2;font-weight:var(--font-weight-medium);max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (max-width: 768px){.style-card{min-width:88px;min-height:88px;padding:var(--spacing-sm)}.style-card-preview{width:48px;height:48px}.style-card-emoji{font-size:1.75rem}}.style-cards-scroll:after{content:"";position:absolute;top:50%;right:0;width:20px;height:40px;background:linear-gradient(to right,transparent,var(--color-bg-primary));pointer-events:none;transform:translateY(-50%);opacity:.7}.style-category:last-child .style-cards-scroll:after{display:none}.user-profile{width:100%;padding:var(--spacing-md)}.user-profile-header{margin-bottom:var(--spacing-lg)}.user-profile-back{display:flex;align-items:center;gap:var(--spacing-xs);background:none;border:none;cursor:pointer;color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:var(--spacing-xs) 0;margin-bottom:var(--spacing-md);transition:color var(--transition-base)}.user-profile-back:hover{color:var(--color-text-primary)}.user-profile-info{display:flex;align-items:center;gap:var(--spacing-md)}.user-profile-details{display:flex;flex-direction:column;gap:2px}.user-profile-name{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.user-profile-count{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.user-profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--spacing-md)}.user-profile-loading,.user-profile-empty{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.user-profile-loading-more{text-align:center;padding:var(--spacing-md);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}@media (max-width: 768px){.user-profile{padding:var(--spacing-sm)}.user-profile-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--spacing-sm)}}.mobile-layout{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;background:var(--color-bg-primary);transition:height var(--transition-base)}.mobile-layout__content{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;padding-bottom:0;touch-action:manipulation;overscroll-behavior:contain}.mobile-layout__filter-bar{flex-shrink:0;padding:var(--spacing-sm);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-primary);overflow-x:auto}.mobile-layout__filter-bar::-webkit-scrollbar{display:none}.mobile-layout__tabs{display:flex;background:var(--color-bg-secondary);border-top:1px solid var(--color-border-primary);flex-shrink:0;padding-bottom:env(safe-area-inset-bottom,0)}.mobile-layout__tabs .tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--spacing-sm) var(--spacing-xs);background:transparent;color:var(--color-text-tertiary);border:none;font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:.02em;cursor:pointer;transition:color var(--transition-fast);min-height:54px;justify-content:center;position:relative;-webkit-tap-highlight-color:transparent}.mobile-layout__tabs .tab .material-icon{font-size:1.375rem;transition:color var(--transition-fast),font-variation-settings var(--transition-fast)}.mobile-layout__tabs .tab:hover{color:var(--color-text-secondary)}.mobile-layout__tabs .tab:active{opacity:.7}.mobile-layout__tabs .tab.active{color:var(--color-interactive-default);font-weight:var(--font-weight-bold)}.mobile-layout__tabs .tab.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:32px;height:2px;border-radius:0 0 var(--border-radius-sm) var(--border-radius-sm);background:var(--color-interactive-default)}@media (orientation: landscape) and (max-height: 600px){.mobile-layout__tabs .tab{flex-direction:row;gap:var(--spacing-xs);min-height:44px;padding:var(--spacing-xs)}.mobile-layout__tabs .tab .material-icon{font-size:var(--font-size-xl)}}@supports (padding: max(0px)){.mobile-layout{padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}}@supports (-webkit-touch-callout: none){.mobile-layout{height:100vh;height:-webkit-fill-available}}@media screen and (max-width: 768px){.mobile-layout input,.mobile-layout textarea,.mobile-layout select{font-size:16px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.mobile-layout__tabs .tab .material-icon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}.style-picker-grid{display:flex;flex-direction:column;gap:var(--spacing-lg)}.style-category{display:flex;flex-direction:column;gap:var(--spacing-sm)}.style-category-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.1em;margin:0;padding:0 var(--spacing-xs)}.style-options{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.style-option{padding:var(--spacing-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);border-radius:var(--border-radius-base);cursor:pointer;transition:all var(--transition-fast);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.style-option:active{transform:scale(.98)}.style-option.selected{background:var(--color-interactive-default);border-color:var(--color-interactive-default);color:var(--color-text-inverse)}.style-option-thumbnail{width:80px;height:80px;object-fit:cover;border-radius:var(--border-radius-sm);background:var(--color-bg-tertiary)}.style-option-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:center}.style-picker-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border-secondary)}.multi-select-toggle{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);border-radius:var(--border-radius-base);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.multi-select-toggle:active{transform:scale(.98)}.multi-select-toggle.active{background:var(--color-interactive-default);border-color:var(--color-interactive-default);color:var(--color-text-inverse)}.selected-count{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.style-option{position:relative}.style-option-check{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);color:var(--color-status-success);background:var(--color-bg-primary);border-radius:var(--border-radius-full);display:flex;align-items:center;justify-content:center;width:22px;height:22px}.style-option.selected .style-option-check{color:var(--color-text-inverse);background:rgba(var(--color-overlay-dark-rgb),.3)}.style-picker-header-right{display:flex;align-items:center;gap:var(--spacing-sm)}.clear-selections-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-status-error);border:none;border-radius:var(--border-radius-base);color:var(--color-text-inverse);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.clear-selections-btn:active{transform:scale(.95);opacity:.9}.style-option.multi-select-active{border-width:2px}.style-option-selection-ring{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:var(--border-radius-base);border:2px solid transparent;pointer-events:none;transition:all var(--transition-fast)}.style-option.multi-select-active.selected{background:var(--color-interactive-default);border-color:var(--color-interactive-default);box-shadow:0 0 0 3px var(--color-bg-primary),0 0 0 5px var(--color-interactive-default),0 0 12px var(--color-glow-green);transform:scale(1.02)}.style-option.multi-select-active.selected .style-option-selection-ring{border-color:var(--color-text-inverse);opacity:.5}.style-option.multi-select-active.selected .style-option-name{color:var(--color-text-inverse);font-weight:var(--font-weight-bold)}.style-option.multi-select-active.selected .style-option-thumbnail{opacity:.85}.style-option.multi-select-active .style-option-check{width:28px;height:28px;top:var(--spacing-xs);right:var(--spacing-xs);box-shadow:0 2px 8px rgba(var(--color-overlay-dark-rgb),.3)}.style-option.multi-select-active.selected .style-option-check{background:var(--color-status-success);color:var(--color-text-inverse)}.style-option.multi-select-active.selected .style-option-check .material-icon{font-size:var(--font-size-xl)}.style-option.multi-select-active:not(.selected){opacity:.85;border-color:var(--color-border-primary)}.style-option.multi-select-active:not(.selected):before{content:"";position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);width:24px;height:24px;border-radius:var(--border-radius-full);border:2px dashed var(--color-border-secondary);background:var(--color-bg-secondary)}.style-picker-hint{text-align:center;font-size:var(--font-size-xs);color:var(--color-text-tertiary);padding:var(--spacing-xs) var(--spacing-sm);margin-bottom:var(--spacing-sm)}.step-label{display:flex;align-items:center;gap:var(--spacing-sm)}.step-label__number{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--color-border-secondary);border-radius:var(--border-radius-sm);font-family:var(--font-family-system);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);line-height:1;flex-shrink:0}.step-label__title{font-family:var(--font-family-system);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em}.prompt-input{display:flex;flex-direction:column;position:relative;background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);overflow:hidden;flex-shrink:0}.prompt-input:focus-within{border-color:var(--color-border-focus);box-shadow:var(--effect-focus-ring)}.prompt-input__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm);border-bottom:var(--border-width-thin) solid var(--color-border-primary)}.prompt-input__char-count{position:absolute;bottom:var(--spacing-sm);right:var(--spacing-md);font-family:var(--font-family-system);font-size:var(--font-size-xs);color:var(--color-text-disabled);pointer-events:none}.prompt-input__char-count--warn{color:var(--color-status-warning)}.prompt-input__char-count--over{color:var(--color-status-error)}.prompt-input__field{height:120px;background:var(--color-bg-primary);border:none;border-radius:var(--border-radius-sm);color:var(--color-text-primary);font-family:var(--font-family-system);margin:var(--spacing-sm);padding:var(--spacing-sm);font-size:var(--font-size-sm);line-height:1.6;caret-color:var(--color-interactive-default);resize:none;overflow-y:auto;transition:none}.prompt-input__field:focus{outline:none;background:transparent}.prompt-input__field::placeholder{color:var(--color-text-tertiary);opacity:.7}.prompt-input__field:disabled{color:var(--color-text-disabled);background-color:var(--color-bg-disabled);opacity:.6}.prompt-input__footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);border-top:var(--border-width-thin) solid var(--color-border-primary);background:var(--color-bg-secondary);gap:var(--spacing-md)}.prompt-input__footer-left{display:flex;align-items:center;gap:var(--spacing-lg)}.prompt-input__field{scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.prompt-input__field::-webkit-scrollbar{width:4px}.prompt-input__field::-webkit-scrollbar-track{background:transparent}.prompt-input__field::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--border-radius-full)}.prompt-input__field::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.prompt-input__attach-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.prompt-input__attach-btn:hover{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-focus)}.prompt-input__file-input{display:none}.prompt-input--drag-over{border-color:var(--color-interactive-default);background:var(--color-bg-active)}.prompt-input__preview{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);margin:0 var(--spacing-sm) var(--spacing-sm);background:var(--color-bg-secondary);border-radius:var(--border-radius-sm);border:var(--border-width-thin) solid var(--color-border-primary)}.prompt-input__preview-img{width:48px;height:48px;object-fit:cover;border-radius:var(--border-radius-sm);border:var(--border-width-thin) solid var(--color-border-primary)}.prompt-input__preview-remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:var(--color-bg-tertiary);border:none;border-radius:var(--border-radius-sm);color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);margin-left:auto}.prompt-input__preview-remove:hover{background:var(--color-bg-active);color:var(--color-text-primary)}.prompt-preview__toggle{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base);color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);cursor:pointer}.prompt-preview__toggle:hover{background:var(--color-bg-elevated);color:var(--color-interactive-default);border-color:var(--color-interactive-default)}.prompt-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-overlay-dark);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-index-overlay);animation:fadeIn .2s ease}.prompt-preview{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:800px;height:80vh;max-height:600px;background:var(--color-bg-primary);border:var(--border-width-thin) solid var(--color-border-secondary);border-radius:var(--border-radius-base);box-shadow:var(--effect-shadow-xl);z-index:var(--z-index-modal);display:flex;flex-direction:column}.prompt-preview__header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:var(--border-width-thin) solid var(--color-border-primary);background:var(--color-bg-secondary);border-radius:var(--border-radius-base) var(--border-radius-base) 0 0}.prompt-preview__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.prompt-preview__actions{display:flex;gap:var(--spacing-xs)}.prompt-preview__copy{padding:var(--spacing-2xs) var(--spacing-sm);background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-base);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base)}.prompt-preview__copy:hover{background:var(--color-interactive-default);color:var(--color-bg-primary);border-color:var(--color-interactive-default)}.prompt-preview__copy.copied{background:var(--color-status-success);color:var(--color-bg-primary);border-color:var(--color-status-success)}.prompt-preview__close{width:20px;height:20px;padding:0;background:transparent;border:none;color:var(--color-text-tertiary);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;line-height:1}.prompt-preview__close:hover{color:var(--color-status-error)}.prompt-preview__content{flex:1;overflow:auto;padding:var(--spacing-lg);margin:0;background:var(--color-bg-secondary);border-radius:0 0 var(--border-radius-base) var(--border-radius-base);scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.prompt-preview__json{margin:0;padding:0;font-family:var(--font-family-mono);font-size:var(--font-size-xs);line-height:1.6;color:var(--color-text-primary);white-space:pre-wrap;word-wrap:break-word}.prompt-preview__json code{display:block;background:transparent;border:none;padding:0}.json-key{color:var(--core-blue);font-weight:var(--font-weight-semibold)}.json-string{color:var(--core-green)}.json-number{color:var(--core-peach)}.json-boolean{color:var(--core-mauve)}.json-null{color:var(--core-red)}.prompt-preview__content::-webkit-scrollbar{width:8px}.prompt-preview__content::-webkit-scrollbar-track{background:transparent}.prompt-preview__content::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--border-radius-full)}.prompt-preview__content::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.api-key-manager-modal{overflow:hidden;display:flex;flex-direction:column}.akm-body{flex:1;overflow-y:auto;padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);min-height:0}.akm-copy-btn{flex-shrink:0}.akm-loading{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-tertiary);padding:var(--spacing-xl) 0;justify-content:center;font-size:var(--font-size-sm)}.akm-error{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-status-error);background:var(--color-status-error-bg);border:1px solid var(--color-status-error);border-radius:var(--border-radius-base);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.akm-error-inline{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-status-error);font-size:var(--font-size-sm);margin-top:var(--spacing-sm)}.akm-empty{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-2xl) 0;color:var(--color-text-tertiary);text-align:center}.akm-empty p{margin:0;font-size:var(--font-size-sm)}.akm-empty-sub{font-size:var(--font-size-xs);color:var(--color-text-disabled)}.akm-list-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.akm-list-toolbar{display:flex;align-items:center;justify-content:space-between}.akm-count{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.akm-key-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.akm-key-row{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);padding:var(--spacing-md);display:flex;align-items:flex-start;gap:var(--spacing-md);transition:border-color var(--transition-base)}.akm-key-row:hover{border-color:var(--color-border-secondary)}.akm-key-row--revoked{opacity:.55}.akm-key-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.akm-key-label-row{display:flex;align-items:center;gap:var(--spacing-sm)}.akm-key-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.akm-key-prefix{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-tertiary);letter-spacing:.03em}.akm-key-meta{font-size:var(--font-size-xs);color:var(--color-text-tertiary);display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-xs)}.akm-meta-sep{color:var(--color-border-secondary)}.akm-key-scopes{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.akm-scope-tag{font-family:var(--font-family-mono);font-size:var(--font-size-2xs);padding:2px var(--spacing-xs);background:var(--color-bg-elevated);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-sm);color:var(--color-text-accent);letter-spacing:.02em}.akm-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);padding:2px var(--spacing-xs);border-radius:var(--border-radius-sm);text-transform:uppercase;letter-spacing:.05em}.akm-badge--revoked{background:var(--color-status-error-bg);color:var(--color-status-error);border:1px solid var(--color-status-error)}.akm-key-actions{display:flex;flex-direction:column;gap:var(--spacing-xs);flex-shrink:0}.akm-revoke-confirm{display:flex;align-items:center;gap:var(--spacing-xs)}.akm-revoke-warning{font-size:var(--font-size-xs);color:var(--color-status-warning);font-weight:var(--font-weight-bold)}.akm-create-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.akm-input{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-primary);font-family:var(--font-family-system);font-size:var(--font-size-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base);width:100%;box-sizing:border-box}.akm-input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--effect-focus-ring)}.akm-input::placeholder{color:var(--color-text-disabled)}.akm-input--mono{font-family:var(--font-family-mono);letter-spacing:.04em}.akm-input--key{font-size:var(--font-size-xs);color:var(--color-status-success)}.akm-scopes-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.akm-scope-row{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);cursor:pointer;transition:border-color var(--transition-base),background var(--transition-base)}.akm-scope-row:hover{background:var(--color-bg-elevated);border-color:var(--color-border-secondary)}.akm-scope-row--checked{border-color:var(--color-interactive-default);background:rgba(var(--color-interactive-default-rgb),.06)}.akm-scope-row input[type=checkbox]{margin-top:2px;accent-color:var(--color-interactive-default);cursor:pointer;flex-shrink:0}.akm-scope-info{display:flex;flex-direction:column;gap:2px}.akm-scope-name{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-accent);letter-spacing:.02em}.akm-scope-desc{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.akm-form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-primary)}.akm-reveal-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.akm-reveal-warning{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-status-warning-bg);border:1px solid var(--color-status-warning);border-radius:var(--border-radius-base);font-size:var(--font-size-sm);color:var(--color-status-warning)}.akm-reveal-key-row{display:flex;gap:var(--spacing-sm);align-items:stretch}.akm-reveal-key-row .akm-input{flex:1;min-width:0}.akm-reveal-actions{display:flex;justify-content:center;padding-top:var(--spacing-sm)}.akm-usage-view{display:flex;flex-direction:column;gap:var(--spacing-md)}.akm-usage-header{display:flex;align-items:center;gap:var(--spacing-md)}.akm-usage-title{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;min-width:0}.akm-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:var(--spacing-sm)}.akm-stat-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);padding:var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;gap:2px;align-items:flex-start}.akm-stat-card--success{border-color:rgba(var(--color-status-success-rgb),.25)}.akm-stat-card--error{border-color:rgba(var(--color-status-error-rgb),.25)}.akm-stat-card--cost{border-color:rgba(var(--color-status-warning-rgb),.25)}.akm-stat-value{font-family:var(--font-family-mono);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.akm-stat-card--success .akm-stat-value{color:var(--color-status-success)}.akm-stat-card--error .akm-stat-value{color:var(--color-status-error)}.akm-stat-card--cost .akm-stat-value{color:var(--color-status-warning)}.akm-stat-label{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em}.akm-section-title{margin:0 0 var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em}.akm-model-table-wrapper{margin-top:var(--spacing-sm)}.akm-model-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.akm-model-table th{text-align:left;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border-primary)}.akm-model-table td{padding:var(--spacing-sm);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-primary)}.akm-model-table tr:last-child td{border-bottom:none}.akm-model-table tr:hover td{background:var(--color-bg-secondary)}.akm-model-table td code{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-accent)}.akm-body::-webkit-scrollbar{width:4px}.akm-body::-webkit-scrollbar-track{background:var(--color-bg-secondary)}.akm-body::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--border-radius-full)}@media (max-width: 480px){.akm-key-row{flex-direction:column}.akm-key-actions{flex-direction:row;flex-wrap:wrap}.akm-stats-grid{grid-template-columns:repeat(2,1fr)}}.settings-page{min-height:100vh;background:var(--color-bg-primary);color:var(--color-text-primary);display:flex;flex-direction:column}.settings-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border-primary);background:var(--color-bg-secondary)}.settings-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin:0}.settings-content{flex:1;max-width:640px;width:100%;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-xl)}.settings-section{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--border-radius-base);overflow:hidden}.settings-section-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border-primary);color:var(--color-text-secondary)}.settings-section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em;margin:0;color:var(--color-text-secondary)}.settings-section-body{padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg)}.settings-account-info{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.settings-account-details{display:flex;flex-direction:column;gap:2px}.settings-account-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.settings-account-email{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}@media (max-width: 480px){.settings-content{padding:var(--spacing-md)}.settings-section-body{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md)}}.sidebar{display:flex;flex-direction:column;height:100%}.sidebar__header{flex-shrink:0;padding:var(--spacing-sm);border-bottom:var(--border-width-thin) solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center;background-color:var(--color-bg-secondary)}.sidebar__header-actions{display:flex;gap:var(--spacing-sm)}.sidebar__title-group{display:flex;align-items:center;gap:var(--spacing-sm)}.sidebar__logo{width:32px;height:32px;object-fit:contain}.sidebar__title{font-size:var(--font-size-lg);color:var(--color-text-accent);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-tight);margin:0;font-family:var(--font-family-serif)}.sidebar__content{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md) var(--spacing-xl) var(--spacing-sm);scrollbar-width:thin;scrollbar-color:var(--color-border-secondary) transparent}.sidebar__content::-webkit-scrollbar{width:8px}.sidebar__content::-webkit-scrollbar-track{background:transparent}.sidebar__content::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--border-radius-full)}.sidebar__content::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.sidebar__footer{flex-shrink:0;padding:var(--spacing-md);border-top:var(--border-width-thin) solid var(--color-border-primary)}.sidebar__footer-actions{display:flex;gap:var(--spacing-sm);align-items:stretch}.sidebar-settings-btn{padding:var(--spacing-xs);background:transparent;color:var(--color-text-tertiary);border:1px solid transparent;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center}.sidebar-settings-btn:hover{background:var(--color-bg-tertiary);border-color:var(--color-text-accent);color:var(--color-text-accent);box-shadow:var(--effect-glow-sm)}.sidebar-section{background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-sm)}.sidebar-section__header{width:100%;display:flex;align-items:center;background:transparent}.sidebar-section__header:hover{background:var(--color-bg-hover)}.sidebar-section__toggle{flex:1;padding:var(--spacing-sm);min-width:0;justify-content:flex-start}.sidebar-section__step-number{font-family:var(--font-family-system);font-size:var(--font-size-xs);color:var(--color-text-disabled);min-width:16px;text-align:center;flex-shrink:0}.sidebar-section__icon{color:var(--color-text-tertiary);flex-shrink:0}.sidebar-section__toggle:hover .sidebar-section__icon{color:var(--color-text-secondary)}.sidebar-section__label{font-family:var(--font-family-system);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-section__toggle:hover .sidebar-section__label{color:var(--color-text-secondary)}.sidebar-section__badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--spacing-xs);background:var(--color-interactive-default);color:var(--color-text-inverse);font-family:var(--font-family-system);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:var(--border-radius-full);line-height:1;flex-shrink:0}.sidebar-section__chevron{color:var(--color-text-tertiary);flex-shrink:0;margin-left:auto}.sidebar-section__toggle:hover .sidebar-section__chevron{color:var(--color-text-secondary)}.sidebar-section__actions{display:flex;align-items:center;gap:var(--spacing-xs);padding-right:var(--spacing-sm);flex-shrink:0}.sidebar-section__body{padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-md)}:root{--core-base: #1a0f1f;--core-mantle: #150c19;--core-crust: #211428;--core-surface0: #291c32;--core-surface1: #31243c;--core-surface2: #3a2c46;--core-overlay0: #4a3c58;--core-overlay1: #5a4c68;--core-overlay2: #6a5c78;--core-text: #f7f6fa;--core-subtext1: #b0a8c0;--core-subtext0: #8a80a0;--core-rosewater: #fac5b0;--core-flamingo: #f7b8a4;--core-pink: #f7b8a4;--core-mauve: #7868b4;--core-red: #e06868;--core-maroon: #c85858;--core-peach: #fac5b0;--core-yellow: #e8c870;--core-green: #38c9a2;--core-teal: #31cdc1;--core-sky: #80c8e0;--core-sapphire: #6ab0d0;--core-blue: #6050a0;--core-lavender: #c7b3ff;--core-frost: #221630;--color-bg-primary: var(--core-base);--color-bg-secondary: var(--core-mantle);--color-bg-tertiary: var(--core-crust);--color-bg-elevated: var(--core-surface0);--color-bg-overlay: rgba(0, 0, 0, .6);--color-bg-hover: var(--core-surface1);--color-bg-active: var(--core-surface2);--color-bg-disabled: var(--core-crust);--color-bg-image-light: var(--core-frost);--color-bg-checkerboard-dark: #291c32;--color-bg-checkerboard-light: #31243c;--color-text-primary: var(--core-text);--color-text-secondary: var(--core-subtext1);--color-text-tertiary: var(--core-subtext0);--color-text-accent: var(--core-lavender);--color-text-inverse: #ffffff;--color-text-disabled: var(--core-overlay0);--color-text-link: var(--core-lavender);--color-text-link-hover: var(--core-rosewater);--color-border-primary: rgba(199, 179, 255, .12);--color-border-secondary: rgba(199, 179, 255, .06);--color-border-active: var(--core-lavender);--color-border-focus: var(--core-lavender);--color-border-disabled: rgba(255, 255, 255, .04);--color-status-success: var(--core-teal);--color-status-success-bg: rgba(49, 205, 193, .12);--color-status-error: var(--core-red);--color-status-error-bg: rgba(224, 104, 104, .12);--color-status-warning: var(--core-yellow);--color-status-warning-bg: rgba(232, 200, 112, .12);--color-status-info: var(--core-sky);--color-status-info-bg: rgba(128, 200, 224, .12);--color-status-processing: var(--core-yellow);--color-status-queued: var(--core-overlay1);--color-status-completed: var(--core-teal);--color-status-failed: var(--core-red);--color-interactive-default: var(--core-lavender);--color-interactive-hover: var(--core-rosewater);--color-interactive-active: var(--core-pink);--color-interactive-disabled: var(--core-overlay0);--color-control-bg: var(--core-surface0);--color-control-bg-hover: var(--core-surface1);--color-control-bg-active: var(--core-mauve);--color-control-text: var(--core-subtext0);--color-control-text-hover: var(--core-subtext1);--color-control-text-active: #ffffff;--color-control-border: var(--core-surface1);--color-control-border-hover: var(--core-surface2);--color-control-border-active: var(--core-lavender);--color-button-primary-bg: var(--core-mauve);--color-button-primary-bg-hover: var(--core-lavender);--color-button-primary-border: var(--core-lavender);--color-button-danger-bg: var(--core-red);--color-button-danger-bg-hover: var(--core-maroon);--color-button-danger-border: var(--core-red);--color-button-secondary-bg: var(--core-surface0);--color-button-secondary-bg-hover: var(--core-surface1);--color-button-secondary-border: var(--core-surface1);--color-overlay-light: rgba(199, 179, 255, .03);--color-overlay-medium: rgba(199, 179, 255, .06);--color-overlay-heavy: rgba(199, 179, 255, .1);--color-overlay-dark: rgba(0, 0, 0, .85);--color-shadow-light: rgba(0, 0, 0, .2);--color-shadow-medium: rgba(0, 0, 0, .35);--color-shadow-heavy: rgba(0, 0, 0, .5);--color-interactive-default-rgb: 199, 179, 255;--color-interactive-hover-rgb: 250, 197, 176;--color-status-warning-rgb: 232, 200, 112;--color-status-error-rgb: 224, 104, 104;--color-status-success-rgb: 49, 205, 193;--color-status-info-rgb: 128, 200, 224;--color-overlay-dark-rgb: 0, 0, 0;--color-white-rgb: 255, 255, 255;--color-glow-green: rgba(56, 201, 162, .2);--color-glow-blue: rgba(199, 179, 255, .2);--color-glow-red: rgba(224, 104, 104, .2);--color-glow-yellow: rgba(232, 200, 112, .2);--color-focus-ring: var(--core-lavender);--color-focus-glow: rgba(199, 179, 255, .3);--color-selection-bg: rgba(199, 179, 255, .25);--color-selection-text: var(--core-text);--color-glow-primary: rgba(199, 179, 255, .18);--color-glow-secondary: rgba(199, 179, 255, .08);--color-shadow-primary: rgba(0, 0, 0, .4);--color-shadow-secondary: rgba(0, 0, 0, .25);--font-family-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--font-family-serif: "Lora", Georgia, "Times New Roman", serif;--font-family-system: "Sora", -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;--font-size-2xs: 10px;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-base: 1.6;--line-height-relaxed: 1.75;--letter-spacing-tight: -.01em;--letter-spacing-base: 0;--letter-spacing-wide: .025em;--spacing-unit: 8px;--spacing-2xs: 2px;--spacing-xs: calc(var(--spacing-unit) * .5);--spacing-sm: calc(var(--spacing-unit) * 1);--spacing-md: calc(var(--spacing-unit) * 2);--spacing-lg: calc(var(--spacing-unit) * 3);--spacing-xl: calc(var(--spacing-unit) * 4);--spacing-2xl: calc(var(--spacing-unit) * 6);--spacing-3xl: calc(var(--spacing-unit) * 8);--border-width-thin: 1px;--border-width-base: 2px;--border-width-thick: 3px;--border-radius-none: 0;--border-radius-sm: 4px;--border-radius-base: 8px;--border-radius-md: 12px;--border-radius-lg: 16px;--border-radius-xl: 20px;--border-radius-circle: 50%;--border-radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-terminal: .1s linear;--animation-blink: 1s ease-in-out infinite;--animation-pulse: 2s cubic-bezier(.4, 0, .6, 1) infinite;--animation-scan: 8s linear infinite;--effect-glow-sm: 0 0 10px var(--color-glow-secondary);--effect-glow-base: 0 0 20px var(--color-glow-primary);--effect-glow-lg: 0 0 30px var(--color-glow-primary);--effect-shadow-sm: 0 1px 3px 0 var(--color-shadow-secondary);--effect-shadow-base: 0 4px 6px -1px var(--color-shadow-primary);--effect-shadow-lg: 0 10px 15px -3px var(--color-shadow-primary);--effect-shadow-xl: 0 20px 25px -5px var(--color-shadow-primary);--icon-size-sm: 18px;--icon-size-md: 24px;--icon-size-lg: 36px;--icon-size-xl: 48px;--effect-shadow-up: 0 -4px 12px -2px var(--color-shadow-primary);--effect-focus-ring: 0 0 0 2px rgba(var(--color-interactive-default-rgb), .2);--effect-text-glow: none;--effect-scanline-opacity: 0;--z-index-base: 0;--z-index-elevated: 10;--z-index-dropdown: 100;--z-index-sticky: 200;--z-index-overlay: 300;--z-index-modal: 400;--z-index-popover: 500;--z-index-tooltip: 600;--z-index-toast: 700;--z-index-max: 10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(calc(100% + var(--spacing-xl)))}to{opacity:1;transform:translate(0)}}@keyframes popIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{0%,to{opacity:.2}50%{opacity:1}}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-accent{color:var(--color-text-accent)}.text-disabled{color:var(--color-text-disabled)}.bg-primary{background-color:var(--color-bg-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.bg-tertiary{background-color:var(--color-bg-tertiary)}.bg-elevated{background-color:var(--color-bg-elevated)}.status-success{color:var(--color-status-success)}.status-error{color:var(--color-status-error)}.status-warning{color:var(--color-status-warning)}.status-info{color:var(--color-status-info)}html,body,#root{height:100%;margin:0;padding:0;overflow:hidden}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-family-system);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:var(--letter-spacing-base);position:relative;font-size:var(--font-size-base);line-height:var(--line-height-base)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-system);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}h1{font-size:var(--font-size-3xl);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}h2{font-size:var(--font-size-2xl);color:var(--color-text-primary)}h3{font-size:var(--font-size-xl);color:var(--color-text-secondary)}input,textarea,select{background:var(--color-bg-elevated);color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-border-primary);font-family:var(--font-family-system);font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-md);outline:none;border-radius:var(--border-radius-base);transition:border-color var(--transition-base),background var(--transition-base),box-shadow var(--transition-base)}input:focus,textarea:focus,select:focus{border-color:var(--color-border-focus);background:var(--color-bg-secondary);box-shadow:var(--effect-focus-ring)}input::placeholder,textarea::placeholder{color:var(--color-text-disabled)}button{background:var(--color-bg-elevated);color:var(--color-text-primary);border:var(--border-width-thin) solid var(--color-border-primary);font-family:var(--font-family-system);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:var(--spacing-sm) var(--spacing-lg);outline:none;border-radius:var(--border-radius-base);cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),color var(--transition-base)}button:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-active);box-shadow:var(--effect-shadow-base)}button:active:not(:disabled){box-shadow:var(--effect-shadow-sm)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}a{color:var(--color-text-link);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-text-link-hover);text-decoration:underline}code,pre{font-family:var(--font-family-mono);font-size:var(--font-size-sm);background:var(--color-bg-elevated);border-radius:var(--border-radius-sm)}code{padding:2px 6px}pre{padding:var(--spacing-md);overflow-x:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--border-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}::-webkit-scrollbar-corner{background:var(--color-bg-secondary)}::selection{background:var(--color-selection-bg);color:var(--color-selection-text)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.card{background:var(--color-bg-elevated);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--border-radius-md);padding:var(--spacing-lg);box-shadow:var(--effect-shadow-sm)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.fade-in{animation:fadeIn var(--transition-base)}.slide-up{animation:slideUp var(--transition-base)}@media (max-width: 768px){html,body,#root{height:100%;height:100dvh}body{-webkit-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}@supports (padding: max(0px)){body{padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}}input,textarea,select,button{font-size:16px;-webkit-appearance:none;-moz-appearance:none;appearance:none}::-webkit-scrollbar{width:0px;background:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}}@supports (-webkit-touch-callout: none){.mobile-layout{height:100vh;height:-webkit-fill-available}body{position:fixed;overflow:hidden;width:100%;height:100%}#root{overflow:hidden;height:100%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}}
