.spinner-container{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm)}.spinner{display:inline-block;border-style:solid;border-radius:50%;animation:spin .8s linear infinite}.spinner-md{width:24px;height:24px;border-width:3px}.spinner-lg{width:40px;height:40px;border-width:4px}.spinner-xl{width:64px;height:64px;border-width:5px}.spinner-primary{border-color:var(--primary);border-top-color:transparent}.spinner-secondary{border-color:var(--secondary);border-top-color:transparent}.spinner-white{border-color:#fff;border-top-color:transparent}.spinner-label{margin:0;font-size:14px;color:var(--text-secondary)}.spinner-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-lg);font-family:inherit;font-weight:500;font-size:14px;line-height:1.4;cursor:pointer;transition:all .2s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover:not(:disabled){background:var(--primary-dark);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){background:var(--primary-dark);transform:scale(.98)}.btn-secondary{background:var(--secondary);color:var(--on-secondary)}.btn-secondary:hover:not(:disabled){background:var(--secondary-dark);box-shadow:var(--shadow-md)}.btn-tertiary{background:var(--tertiary);color:var(--on-primary)}.btn-tertiary:hover:not(:disabled){background:var(--warning);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--primary);border:2px solid var(--primary)}.btn-outline:hover:not(:disabled){background:var(--primary);color:#fff}.btn-text{background:transparent;color:var(--primary);padding:var(--spacing-xs) var(--spacing-sm)}.btn-text:hover:not(:disabled){background:#1976d214}.btn-ghost{background:transparent;color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm)}.btn-ghost:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:12px;border-radius:var(--radius-md)}.btn-md{padding:var(--spacing-sm) var(--spacing-md);font-size:14px}.btn-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:16px}.btn-full-width{width:100%}.btn-loading{position:relative;color:transparent}.btn-spinner{position:absolute;inset:0;margin:auto;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .6s linear infinite}.btn-primary .btn-spinner{border-color:var(--on-primary);border-right-color:transparent}.btn-secondary .btn-spinner{border-color:var(--on-secondary);border-right-color:transparent}.btn-tertiary .btn-spinner{border-color:var(--on-primary);border-right-color:transparent}.btn-icon{display:inline-flex;align-items:center;font-size:18px}.input-container{display:flex;flex-direction:column;gap:6px}.input-full-width{width:100%}.input-label{font-size:13px;font-weight:500;color:var(--text-secondary);line-height:1.4}.input-required{color:var(--error);margin-left:2px}.input-wrapper{position:relative;display:flex;align-items:center;width:100%;height:46px;background:var(--bg-secondary);border:1.5px solid var(--border);border-radius:10px;transition:all .15s ease;overflow:hidden}.input-wrapper:hover{border-color:var(--primary-light)}.input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #1976d21f;background:var(--bg-primary)}.input-container:has(.input:disabled) .input-wrapper{opacity:.5;cursor:not-allowed}.input-error .input-wrapper{border-color:var(--error)}.input-error .input-wrapper:focus-within{border-color:var(--error);box-shadow:0 0 0 3px #d32f2f1f}.input-icon-left{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:42px;height:100%;color:var(--text-tertiary);pointer-events:none}.input-icon-left svg{width:18px;height:18px}.input{flex:1;min-width:0;height:100%;padding:0 14px;border:none;background:transparent;font-family:inherit;font-size:15px;color:var(--text-primary);outline:none}.input::placeholder{color:var(--text-tertiary)}.input:disabled{cursor:not-allowed}.input.has-icon-left{padding-left:0}.input.has-icon-right{padding-right:0}.input-right-area{display:flex;align-items:center;flex-shrink:0;height:100%;padding-right:4px;gap:2px}.input-toggle-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:8px;transition:all .15s ease;flex-shrink:0}.input-toggle-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.input-toggle-btn:focus{outline:none;background:var(--bg-tertiary)}.input-toggle-btn:disabled{cursor:not-allowed;opacity:.4}.input-toggle-btn svg{width:18px;height:18px}.input-helper{font-size:12px;color:var(--text-tertiary);line-height:1.4}.input-helper-error{color:var(--error);font-weight:500}@media(prefers-color-scheme:dark){.input-wrapper{background:var(--bg-tertiary)}.input-wrapper:focus-within{background:var(--bg-secondary)}}.input-with-icon{padding-left:0}.input-with-toggle{padding-right:0}.input-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:42px;height:100%;color:var(--text-tertiary);pointer-events:none}.input-password-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:8px;transition:all .15s ease}.card{display:flex;flex-direction:column;border-radius:var(--radius-lg);background:var(--bg-primary);transition:all .2s ease}.card-elevated{box-shadow:var(--shadow-md)}.card-outlined{border:2px solid var(--border)}.card-filled{background:var(--bg-tertiary)}.card-padding-none{padding:0}.card-padding-sm{padding:var(--spacing-sm)}.card-padding-md{padding:var(--spacing-md)}.card-padding-lg{padding:var(--spacing-lg)}.card-hoverable{cursor:pointer}.card-hoverable:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-outlined.card-hoverable:hover{border-color:var(--primary)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border)}.card-header-text{flex:1}.card-title{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.card-subtitle{margin:var(--spacing-xs) 0 0;font-size:14px;color:var(--text-secondary)}.card-header-action{display:flex;align-items:center;gap:var(--spacing-xs)}.card-content{flex:1;padding-top:var(--spacing-md)}.card-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--border)}.badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xl);font-size:12px;font-weight:500;line-height:1;white-space:nowrap}.badge-sm{padding:2px var(--spacing-xs);font-size:10px;border-radius:var(--radius-md)}.badge-md{padding:var(--spacing-xs) var(--spacing-sm);font-size:12px}.badge-lg{padding:var(--spacing-sm) var(--spacing-md);font-size:14px}.badge-success{background:#c8e6c9;color:#2e7d32}.badge-info{background:#bbdefb;color:#1565c0}.badge-warning{background:#ffe0b2;color:#e65100}.badge-error{background:#ffcdd2;color:#c62828}.badge-neutral{background:var(--bg-tertiary);color:var(--text-secondary)}.badge-primary{background:#bbdefb;color:#1565c0}.badge-secondary{background:var(--bg-tertiary);color:var(--text-secondary)}.badge-dot{padding:0;width:8px;height:8px;border-radius:50%}.badge-dot.badge-sm{width:6px;height:6px}.badge-dot.badge-lg{width:10px;height:10px}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:fadeIn .2s ease}.modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:90vh;animation:slideUp .3s ease}.modal-sm{width:100%;max-width:400px}.modal-md{width:100%;max-width:600px}.modal-lg{width:100%;max-width:800px}.modal-xl{width:100%;max-width:1200px}.modal-full{width:calc(100vw - var(--spacing-lg) * 2);height:calc(100vh - var(--spacing-lg) * 2);max-width:none;max-height:none}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border)}.modal-title{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:20px;cursor:pointer;transition:all .2s ease}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-content{flex:1;padding:0;overflow-y:auto}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border)}@media(prefers-color-scheme:dark){.modal-backdrop{background:#000000b3}.modal{background:var(--bg-primary);box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0006}}@media(max-width:768px){.modal-backdrop{padding:0}.modal,.modal-sm,.modal-md,.modal-lg,.modal-xl{width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0}}.toast-container{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm);z-index:2000;max-width:400px}.toast{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-lg);background:var(--bg-primary);box-shadow:var(--shadow-lg);animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:14px;font-weight:700;flex-shrink:0}.toast-message{flex:1;font-size:14px;color:var(--text-primary)}.toast-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:16px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.toast-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.toast-success{border-left:4px solid var(--success)}.toast-success .toast-icon{background:#c8e6c9;color:#2e7d32}.toast-info{border-left:4px solid var(--info)}.toast-info .toast-icon{background:#bbdefb;color:#1565c0}.toast-warning{border-left:4px solid var(--warning)}.toast-warning .toast-icon{background:#ffe0b2;color:#e65100}.toast-error{border-left:4px solid var(--error)}.toast-error .toast-icon{background:#ffcdd2;color:#c62828}@media(max-width:768px){.toast-container{left:var(--spacing-sm);right:var(--spacing-sm);max-width:none}}.checkbox-wrapper{display:inline-flex;align-items:flex-start;position:relative;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-wrapper.checkbox-disabled{cursor:not-allowed;opacity:.5}.checkbox-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-2);cursor:pointer;font-size:.9375rem;color:var(--color-gray-900)}.dark .checkbox-label{color:var(--color-gray-100)}.checkbox-wrapper.checkbox-disabled .checkbox-label{cursor:not-allowed}.checkbox-box{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:2px solid var(--color-gray-400);border-radius:var(--border-radius-sm);background-color:var(--color-white);transition:all .2s ease;flex-shrink:0}.dark .checkbox-box{border-color:var(--color-gray-600);background-color:var(--color-gray-800)}.checkbox-wrapper:hover .checkbox-box{border-color:var(--color-primary)}.checkbox-input:focus+.checkbox-label .checkbox-box{outline:2px solid var(--color-primary);outline-offset:2px}.checkbox-input:checked+.checkbox-label .checkbox-box{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.checkbox-input:indeterminate+.checkbox-label .checkbox-box{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.checkbox-wrapper.checkbox-disabled .checkbox-box{background-color:var(--color-gray-100);border-color:var(--color-gray-300)}.dark .checkbox-wrapper.checkbox-disabled .checkbox-box{background-color:var(--color-gray-700);border-color:var(--color-gray-600)}.checkbox-icon{width:14px;height:14px}.checkbox-text{line-height:1.5}@media(max-width:768px){.checkbox-label{font-size:.875rem}.checkbox-box{width:18px;height:18px}.checkbox-icon{width:12px;height:12px}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-4);background-color:var(--color-gray-50)}.dark .error-boundary{background-color:var(--color-gray-900)}.error-boundary-card{max-width:600px;width:100%;text-align:center;padding:var(--spacing-8)}.error-boundary-icon{font-size:4rem;margin-bottom:var(--spacing-4)}.error-boundary-title{font-size:1.75rem;font-weight:600;color:var(--color-gray-900);margin:0 0 var(--spacing-3) 0}.dark .error-boundary-title{color:var(--color-gray-100)}.error-boundary-message{font-size:1rem;color:var(--color-gray-600);margin:0 0 var(--spacing-6) 0;line-height:1.6}.dark .error-boundary-message{color:var(--color-gray-400)}.error-boundary-details{margin:var(--spacing-6) 0;text-align:left;border:1px solid var(--color-gray-200);border-radius:var(--border-radius-md);background-color:var(--color-gray-100);padding:var(--spacing-4)}.dark .error-boundary-details{border-color:var(--color-gray-700);background-color:var(--color-gray-800)}.error-boundary-summary{font-weight:600;color:var(--color-gray-900);cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:var(--spacing-2)}.dark .error-boundary-summary{color:var(--color-gray-100)}.error-boundary-summary:hover{color:var(--color-primary)}.error-boundary-stack{margin-top:var(--spacing-3)}.error-boundary-stack strong{display:block;color:var(--color-gray-900);margin-top:var(--spacing-3);margin-bottom:var(--spacing-1)}.dark .error-boundary-stack strong{color:var(--color-gray-100)}.error-boundary-stack pre{font-size:.875rem;color:var(--color-gray-700);background-color:var(--color-white);padding:var(--spacing-3);border-radius:var(--border-radius-sm);overflow-x:auto;margin:0;white-space:pre-wrap;word-wrap:break-word}.dark .error-boundary-stack pre{color:var(--color-gray-300);background-color:var(--color-gray-900)}.error-boundary-actions{display:flex;gap:var(--spacing-3);justify-content:center;flex-wrap:wrap}@media(max-width:768px){.error-boundary-card{padding:var(--spacing-6) var(--spacing-4)}.error-boundary-icon{font-size:3rem}.error-boundary-title{font-size:1.5rem}.error-boundary-message{font-size:.9375rem}.error-boundary-actions{flex-direction:column}.error-boundary-actions button{width:100%}}@media(max-width:480px){.error-boundary{padding:var(--spacing-3)}.error-boundary-card{padding:var(--spacing-4)}.error-boundary-icon{font-size:2.5rem}.error-boundary-title{font-size:1.25rem}.error-boundary-details{padding:var(--spacing-3)}.error-boundary-stack pre{font-size:.75rem;padding:var(--spacing-2)}}.select-wrapper{display:flex;flex-direction:column;gap:var(--spacing-1)}.select-label{font-size:.875rem;font-weight:500;color:var(--color-gray-900)}.dark .select-label{color:var(--color-gray-100)}.select-container{position:relative;display:flex;align-items:center}.select-input{width:100%;padding:var(--spacing-2) var(--spacing-10) var(--spacing-2) var(--spacing-3);font-size:.9375rem;color:var(--color-gray-900);background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);outline:none;cursor:pointer;appearance:none;transition:all .2s ease}.dark .select-input{color:var(--color-gray-100);background-color:var(--color-gray-800);border-color:var(--color-gray-600)}.select-input:hover:not(:disabled){border-color:var(--color-primary)}.select-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.select-input:disabled{background-color:var(--color-gray-100);cursor:not-allowed;opacity:.6}.dark .select-input:disabled{background-color:var(--color-gray-700)}.select-arrow{position:absolute;right:var(--spacing-3);pointer-events:none;color:var(--color-gray-600);transition:transform .2s ease}.dark .select-arrow{color:var(--color-gray-400)}.select-input:focus+.select-arrow{color:var(--color-primary);transform:rotate(180deg)}.select-error .select-input{border-color:var(--color-danger)}.select-error .select-input:focus{box-shadow:0 0 0 3px rgba(var(--color-danger-rgb),.1)}.select-error-text{font-size:.8125rem;color:var(--color-danger);margin-top:var(--spacing-1)}@media(max-width:768px){.select-input{padding:var(--spacing-2);padding-right:var(--spacing-8);font-size:.875rem}.select-label{font-size:.8125rem}.select-error-text{font-size:.75rem}}.confirm-dialog-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}.confirm-dialog{background:var(--card-bg, #ffffff);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:440px;width:90%;max-height:90vh;overflow:hidden;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.confirm-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 0;margin-bottom:.5rem}.confirm-dialog-title{font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827);margin:0}.confirm-dialog-close{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--text-tertiary, #9ca3af);display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.confirm-dialog-close:hover{background-color:var(--hover-bg, #f3f4f6);color:var(--text-secondary, #4b5563)}.confirm-dialog-content{padding:0 1.5rem 1.5rem}.confirm-dialog-message{font-size:.9375rem;color:var(--text-secondary, #4b5563);line-height:1.6;margin:0}.confirm-dialog-footer{display:flex;gap:.75rem;padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--border, #e5e7eb);justify-content:flex-end}.confirm-dialog-footer button{min-width:80px}.button-danger{background-color:#dc2626;border-color:#dc2626}.button-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.button-danger:active:not(:disabled){background-color:#991b1b;border-color:#991b1b}@media(prefers-color-scheme:dark){.confirm-dialog{background:var(--card-bg-dark, #1f2937)}.confirm-dialog-title{color:var(--text-primary-dark, #f9fafb)}.confirm-dialog-message{color:var(--text-secondary-dark, #d1d5db)}.confirm-dialog-close{color:var(--text-tertiary-dark, #9ca3af)}.confirm-dialog-close:hover{background-color:var(--hover-bg-dark, #374151);color:var(--text-secondary-dark, #d1d5db)}.confirm-dialog-footer{border-top-color:var(--border-dark, #374151)}}.skeleton{background-color:var(--color-gray-200);border-radius:var(--border-radius-md);display:inline-block;position:relative;overflow:hidden}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--color-gray-100),transparent);animation:skeleton-wave 1.5s ease-in-out infinite}.dark .skeleton{background-color:var(--color-gray-700)}.dark .skeleton:after{background:linear-gradient(90deg,transparent,var(--color-gray-600),transparent)}.skeleton-text{border-radius:var(--border-radius-sm);height:1em}.skeleton-circular{border-radius:50%}.skeleton-rectangular{border-radius:var(--border-radius-md)}.skeleton-pulse{animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-wave:after{animation:skeleton-wave 1.5s ease-in-out infinite}.skeleton-none{animation:none}.skeleton-none:after{display:none}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes skeleton-wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}.conversation-list-skeleton{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-4)}.conversation-skeleton-item{border-radius:var(--border-radius-lg);overflow:hidden}.message-list-skeleton{display:flex;flex-direction:column;gap:var(--spacing-4);padding:var(--spacing-4)}.message-skeleton-item{display:flex;gap:var(--spacing-3);align-items:flex-start}.message-skeleton-item.user{flex-direction:row-reverse}.message-skeleton-item.assistant .message-skeleton-content{align-items:flex-start}.message-skeleton-item.user .message-skeleton-content{align-items:flex-end}.message-skeleton-avatar{flex-shrink:0}.message-skeleton-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-2)}.instruction-list-skeleton{display:flex;flex-direction:column;gap:var(--spacing-4);padding:var(--spacing-4)}.instruction-skeleton-item{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-4);border:1px solid var(--color-gray-200);border-radius:var(--border-radius-lg);background:var(--color-white)}.dark .instruction-skeleton-item{border-color:var(--color-gray-700);background:var(--color-gray-800)}.instruction-skeleton-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-3)}.instruction-skeleton-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-3);margin-top:var(--spacing-2)}.instruction-skeleton-actions{display:flex;gap:var(--spacing-2)}.comment-list-skeleton{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-3)}.comment-skeleton-item{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-3);border-radius:var(--border-radius-md);background:var(--color-gray-50)}.dark .comment-skeleton-item{background:var(--color-gray-700)}.comment-skeleton-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-2)}.document-list-skeleton{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-4)}.document-skeleton-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);border:1px solid var(--color-gray-200);border-radius:var(--border-radius-md);background:var(--color-white)}.dark .document-skeleton-item{border-color:var(--color-gray-700);background:var(--color-gray-800)}.document-skeleton-icon{flex-shrink:0}.document-skeleton-info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-1)}.tags-list-skeleton{display:flex;flex-wrap:wrap;gap:var(--spacing-2);padding:var(--spacing-3)}.tag-skeleton{border-radius:var(--border-radius-full)}.team-card-skeleton{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-4);border:1px solid var(--color-gray-200);border-radius:var(--border-radius-lg);background:var(--color-white)}.dark .team-card-skeleton{border-color:var(--color-gray-700);background:var(--color-gray-800)}.team-card-skeleton__header{display:flex;align-items:center;gap:var(--spacing-3)}.team-card-skeleton__info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-2)}.team-card-skeleton__body{display:flex;flex-direction:column;gap:var(--spacing-2)}.team-card-skeleton__footer{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-3);margin-top:var(--spacing-2)}.team-list-skeleton{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-4);padding:var(--spacing-4)}.team-member-skeleton{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);border-bottom:1px solid var(--color-gray-100)}.dark .team-member-skeleton{border-color:var(--color-gray-700)}.team-member-skeleton__info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-1)}.team-members-list-skeleton{display:flex;flex-direction:column}@media(max-width:768px){.conversation-list-skeleton,.message-list-skeleton,.instruction-list-skeleton,.document-list-skeleton{padding:var(--spacing-2)}.message-skeleton-item{gap:var(--spacing-2)}.instruction-skeleton-item,.document-skeleton-item{padding:var(--spacing-3)}.team-list-skeleton{grid-template-columns:1fr;padding:var(--spacing-2)}.team-card-skeleton{padding:var(--spacing-3)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-8) var(--spacing-6);min-height:400px}.empty-state-compact{min-height:200px;padding:var(--spacing-6) var(--spacing-4)}.empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-4);opacity:.8}.empty-state-title{font-size:1.5rem;font-weight:600;color:var(--color-gray-900);margin:0 0 var(--spacing-2) 0}.dark .empty-state-title{color:var(--color-gray-100)}.empty-state-description{font-size:1rem;color:var(--color-gray-600);margin:0 0 var(--spacing-6) 0;max-width:500px;line-height:1.6}.dark .empty-state-description{color:var(--color-gray-400)}.empty-state-error .empty-state-icon{color:var(--color-danger)}.empty-state-offline .empty-state-icon{color:var(--color-warning)}@media(max-width:768px){.empty-state{padding:var(--spacing-6) var(--spacing-4);min-height:300px}.empty-state-compact{min-height:150px;padding:var(--spacing-4) var(--spacing-3)}.empty-state-icon{font-size:3rem;margin-bottom:var(--spacing-3)}.empty-state-title{font-size:1.25rem}.empty-state-description{font-size:.875rem;margin-bottom:var(--spacing-4)}}@media(max-width:480px){.empty-state{padding:var(--spacing-4) var(--spacing-3);min-height:250px}.empty-state-icon{font-size:2.5rem}.empty-state-title{font-size:1.125rem}.empty-state-description{font-size:.8125rem}}.loading-spinner{border:2px solid var(--border-color, #e5e7eb);border-top-color:var(--primary-color, #3b82f6);border-radius:50%;animation:spin .6s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}.spinner-md{width:32px;height:32px;border-width:3px}.spinner-lg{width:48px;height:48px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.page-loader-full{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ffffffe6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9999}.page-loader-inline{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;min-height:200px}.loading-message{margin-top:1rem;color:var(--text-secondary, #6b7280);font-size:.875rem}[data-theme=dark] .page-loader-full{background:#000000e6}.hamburger-button{display:flex;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;padding:8px;border:none;border-radius:var(--radius-md);background:transparent;cursor:pointer;transition:background var(--duration-fast) var(--ease-out);min-width:44px;min-height:44px}.hamburger-button:hover{background:var(--bg-tertiary)}.hamburger-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.hamburger-button__line{display:block;width:24px;height:2px;background:var(--text-primary);border-radius:1px;transition:transform var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out);transform-origin:center}.hamburger-button__line--top{transform:translateY(-6px)}.hamburger-button__line--bottom{transform:translateY(6px)}.hamburger-button--open .hamburger-button__line--top{transform:translateY(0) rotate(45deg)}.hamburger-button--open .hamburger-button__line--middle{opacity:0;transform:scaleX(0)}.hamburger-button--open .hamburger-button__line--bottom{transform:translateY(0) rotate(-45deg)}@media(prefers-reduced-motion:reduce){.hamburger-button__line{transition:none}}.mobile-drawer-overlay{position:fixed;top:var(--header-height-mobile, 56px);left:0;right:0;bottom:0;background:#0000004d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity var(--duration-normal) var(--ease-out),visibility var(--duration-normal) var(--ease-out);z-index:var(--z-drawer)}.mobile-drawer-overlay--visible{opacity:1;visibility:visible}.mobile-drawer{position:fixed;top:var(--header-height-mobile, 56px);left:0;height:calc(100vh - var(--header-height-mobile, 56px));width:var(--sidebar-width-mobile, 280px);max-width:85vw;background:var(--glass-bg-heavy);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border-right:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg);transform:translate(-100%);transition:transform var(--duration-normal) var(--ease-out);z-index:calc(var(--z-drawer) + 1);overflow-y:auto;overscroll-behavior:contain}.mobile-drawer--open{transform:translate(0)}.mobile-drawer__content{display:flex;flex-direction:column;padding:var(--spacing-md);min-height:100%}.mobile-drawer__nav-section{margin-bottom:var(--spacing-md)}.mobile-drawer__nav-header{font-size:var(--text-xs);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-sm) 12px;margin-bottom:var(--spacing-xs)}.mobile-drawer__nav-link{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-md);text-decoration:none;color:var(--text-primary);font-size:var(--text-base);font-weight:500;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.mobile-drawer__nav-link:hover,.mobile-drawer__nav-link:focus-visible{background:var(--bg-tertiary)}.mobile-drawer__nav-link:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.mobile-drawer__nav-link.active{background:var(--primary);color:var(--on-primary)}.mobile-drawer__nav-link-icon{font-size:1.25em;flex-shrink:0}.mobile-drawer__divider{height:1px;background:var(--border);margin:12px 0}.mobile-drawer__theme-section{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--bg-tertiary);border-radius:var(--radius-md);margin-top:auto}.mobile-drawer__theme-label{font-size:var(--text-sm);color:var(--text-secondary)}.mobile-drawer__theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius-full);background:var(--bg-primary);font-size:1.25rem;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.mobile-drawer__theme-toggle:hover{background:var(--bg-secondary);transform:scale(1.05)}.mobile-drawer__theme-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.mobile-drawer__close{position:absolute;top:12px;right:12px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.mobile-drawer__close:hover{background:var(--bg-tertiary);color:var(--text-primary)}@supports not (backdrop-filter: blur(1px)){.mobile-drawer-overlay{background:#00000080}.mobile-drawer{background:var(--bg-primary)}}@media(prefers-reduced-motion:reduce){.mobile-drawer-overlay,.mobile-drawer{transition:none}.mobile-drawer-overlay--visible{opacity:1}.mobile-drawer--open{transform:translate(0)}}.tooltip-trigger{display:inline-flex;position:relative}.tooltip{z-index:var(--z-tooltip, 99999);pointer-events:none;animation:tooltipFadeIn var(--duration-fast) var(--ease-out)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tooltip--bottom{animation-name:tooltipFadeInBottom}@keyframes tooltipFadeInBottom{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tooltip--left{animation-name:tooltipFadeInLeft}@keyframes tooltipFadeInLeft{0%{opacity:0;transform:translate(4px)}to{opacity:1;transform:translate(0)}}.tooltip--right{animation-name:tooltipFadeInRight}@keyframes tooltipFadeInRight{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.tooltip__content{padding:var(--spacing-sm) var(--spacing-md);background:var(--glass-bg-heavy, rgba(0, 0, 0, .85));backdrop-filter:blur(var(--glass-blur-md, 12px));-webkit-backdrop-filter:blur(var(--glass-blur-md, 12px));border:1px solid var(--glass-border, rgba(255, 255, 255, .1));border-radius:var(--radius-md);box-shadow:var(--glass-shadow-md, 0 4px 16px rgba(0, 0, 0, .2));color:var(--text-on-dark, #fff);font-size:var(--text-sm, 13px);line-height:1.4;max-width:280px;text-align:center;white-space:normal;word-wrap:break-word}[data-theme=dark] .tooltip__content{background:var(--glass-bg-heavy, rgba(255, 255, 255, .15));color:var(--text-primary)}.tooltip__arrow{position:absolute;width:8px;height:8px;background:var(--glass-bg-heavy, rgba(0, 0, 0, .85));border:1px solid var(--glass-border, rgba(255, 255, 255, .1));transform:rotate(45deg)}.tooltip__arrow--top{bottom:-5px;left:50%;margin-left:-4px;border-top:none;border-left:none}.tooltip__arrow--bottom{top:-5px;left:50%;margin-left:-4px;border-bottom:none;border-right:none}.tooltip__arrow--left{right:-5px;top:50%;margin-top:-4px;border-left:none;border-bottom:none}.tooltip__arrow--right{left:-5px;top:50%;margin-top:-4px;border-right:none;border-top:none}[data-theme=dark] .tooltip__arrow{background:var(--glass-bg-heavy, rgba(255, 255, 255, .15))}@media(prefers-reduced-motion:reduce){.tooltip,.tooltip--bottom,.tooltip--left,.tooltip--right{animation:none}}@supports not (backdrop-filter: blur(1px)){.tooltip__content{background:#000000f2}[data-theme=dark] .tooltip__content{background:#282828fa}}.compact-toggle{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs, 4px)}.compact-toggle__button{min-width:44px;min-height:44px;width:44px;height:44px;border-radius:var(--radius-md, 8px);display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:2px solid var(--border);cursor:pointer;transition:all var(--duration-fast, .15s) var(--ease-out);position:relative;overflow:hidden}.compact-toggle__button:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary)}.compact-toggle__button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.compact-toggle__button--active{background:var(--primary);border-color:var(--primary);color:var(--on-primary, white)}.compact-toggle__button--active:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.compact-toggle__button--disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.compact-toggle__button--loading{cursor:wait}.compact-toggle__icon{font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform var(--duration-fast, .15s) var(--ease-out)}.compact-toggle__button:active:not(:disabled) .compact-toggle__icon{transform:scale(.9)}.compact-toggle__spinner{width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:compactToggleSpin .8s linear infinite}@keyframes compactToggleSpin{to{transform:rotate(360deg)}}.compact-toggle__label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--duration-fast, .15s) var(--ease-out)}.compact-toggle:hover .compact-toggle__label{color:var(--text-secondary)}.compact-toggle__label--disabled{cursor:not-allowed;opacity:.5}.compact-toggle__button:after{content:"";position:absolute;inset:0;background:radial-gradient(circle,currentColor 10%,transparent 10%);transform:scale(10);opacity:0;transition:transform .3s,opacity .5s}.compact-toggle__button:active:not(:disabled):after{transform:scale(0);opacity:.2;transition:0s}[data-theme=dark] .compact-toggle__button{background:var(--bg-tertiary)}[data-theme=dark] .compact-toggle__button--active{background:var(--primary)}@media(max-width:768px){.compact-toggle__button{min-width:48px;min-height:48px;width:48px;height:48px}.compact-toggle__icon{font-size:20px}}@media(prefers-reduced-motion:reduce){.compact-toggle__button,.compact-toggle__icon,.compact-toggle__label{transition:none}.compact-toggle__button:hover:not(:disabled){transform:none}.compact-toggle__spinner{animation:none}}.info-modal .modal-content{padding:0}.info-modal__content{padding:var(--spacing-lg)}.info-modal__subtitle{color:var(--text-secondary);font-size:var(--text-base, 14px);margin:0 0 var(--spacing-lg) 0;line-height:1.5}.info-modal__sections{display:flex;flex-direction:column;gap:var(--spacing-lg)}.info-modal__section{padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border)}.info-modal__section-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.info-modal__section-icon{font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center}.info-modal__section-title{margin:0;font-size:var(--text-lg, 16px);font-weight:600;color:var(--text-primary)}.info-modal__section-description{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);font-size:var(--text-sm, 13px);line-height:1.5}.info-modal__section-details{margin:0;padding-left:var(--spacing-lg);color:var(--text-tertiary);font-size:var(--text-xs, 12px);line-height:1.6}.info-modal__section-details li{margin-bottom:var(--spacing-xs)}.info-modal__section-details li:last-child{margin-bottom:0}.info-modal__footer-note{display:flex;align-items:flex-start;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding:var(--spacing-md);background:#1976d214;border-radius:var(--radius-md);border:1px solid rgba(25,118,210,.2);color:var(--text-secondary);font-size:var(--text-sm, 13px);line-height:1.5}.info-modal__footer-note-icon{font-size:16px;flex-shrink:0}[data-theme=dark] .info-modal__section{background:var(--bg-tertiary)}[data-theme=dark] .info-modal__footer-note{background:#90caf914;border-color:#90caf933}@media(max-width:480px){.info-modal__content{padding:var(--spacing-md)}.info-modal__section{padding:var(--spacing-sm)}.info-modal__section-icon{font-size:20px}.info-modal__section-title{font-size:var(--text-base, 14px)}}:root{--dd-bg-deep: #1a1625;--dd-bg-mid: #231c35;--dd-bg-light: #2d2447;--dd-glass-surface: rgba(255, 255, 255, .1);--dd-glass-border: rgba(255, 255, 255, .2);--dd-glass-highlight: rgba(255, 255, 255, .05);--dd-text-primary: #ffffff;--dd-text-secondary: rgba(255, 255, 255, .8);--dd-text-tertiary: rgba(255, 255, 255, .5);--dd-text-hint: rgba(255, 255, 255, .3);--dd-voice-sage: #f59e0b;--dd-voice-aurora: #14b8a6;--dd-voice-atlas: #22c55e;--dd-voice-ember: #f97316;--dd-voice-river: #a78bfa;--dd-space-xs: 4px;--dd-space-sm: 8px;--dd-space-md: 16px;--dd-space-lg: 24px;--dd-space-xl: 32px;--dd-space-2xl: 48px;--dd-radius-sm: 8px;--dd-radius-md: 12px;--dd-radius-lg: 16px;--dd-radius-xl: 24px;--dd-radius-full: 9999px;--dd-blur-sm: 8px;--dd-blur-md: 12px;--dd-blur-lg: 20px}.diamond-day-layout{background:linear-gradient(180deg,var(--dd-bg-deep) 0%,var(--dd-bg-mid) 50%,var(--dd-bg-light) 100%);min-height:100vh;color:var(--dd-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.dd-glass-card{background:var(--dd-glass-surface);border:1px solid var(--dd-glass-border);backdrop-filter:blur(var(--dd-blur-md));-webkit-backdrop-filter:blur(var(--dd-blur-md));border-radius:var(--dd-radius-lg);padding:var(--dd-space-lg)}.dd-glass-card--sm{padding:var(--dd-space-md);border-radius:var(--dd-radius-md)}.dd-glass-card--interactive{cursor:pointer;transition:background .2s ease,border-color .2s ease}.dd-glass-card--interactive:hover{background:#ffffff26;border-color:#ffffff4d}.dd-text-primary{color:var(--dd-text-primary)}.dd-text-secondary{color:var(--dd-text-secondary)}.dd-text-tertiary{color:var(--dd-text-tertiary)}.dd-text-hint{color:var(--dd-text-hint)}.dd-heading-xl{font-size:2rem;font-weight:700;color:var(--dd-text-primary);line-height:1.2}.dd-heading-lg{font-size:1.5rem;font-weight:600;color:var(--dd-text-primary);line-height:1.3}.dd-heading-md{font-size:1.25rem;font-weight:600;color:var(--dd-text-primary);line-height:1.4}.dd-body{font-size:1rem;color:var(--dd-text-secondary);line-height:1.6}.dd-label{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--dd-text-tertiary)}.dd-accent-sage{color:var(--dd-voice-sage)}.dd-accent-aurora{color:var(--dd-voice-aurora)}.dd-accent-atlas{color:var(--dd-voice-atlas)}.dd-accent-ember{color:var(--dd-voice-ember)}.dd-accent-river{color:var(--dd-voice-river)}.dd-glow-sage{box-shadow:0 0 20px #f59e0b26,0 0 60px #f59e0b0d}.dd-glow-aurora{box-shadow:0 0 20px #14b8a626,0 0 60px #14b8a60d}.dd-glow-atlas{box-shadow:0 0 20px #22c55e26,0 0 60px #22c55e0d}.dd-glow-ember{box-shadow:0 0 20px #f9731626,0 0 60px #f973160d}.dd-glow-river{box-shadow:0 0 20px #a78bfa26,0 0 60px #a78bfa0d}.dd-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--dd-space-sm);padding:14px 24px;border-radius:var(--dd-radius-md);font-size:1rem;font-weight:600;border:none;cursor:pointer;transition:opacity .2s ease,transform .1s ease}.dd-button:active{transform:scale(.98)}.dd-button--primary{background:var(--dd-voice-sage);color:#1a1625}.dd-button--primary:hover{opacity:.9}.dd-button--ghost{background:transparent;color:var(--dd-text-secondary);border:1px solid var(--dd-glass-border)}.dd-button--ghost:hover{background:var(--dd-glass-highlight)}.dd-divider{border:none;border-top:1px solid var(--dd-glass-border);margin:var(--dd-space-lg) 0}.dd-fade-in{animation:ddFadeIn .4s ease-out forwards;opacity:0}@keyframes ddFadeIn{to{opacity:1}}.dd-slide-up{animation:ddSlideUp .5s ease-out forwards;opacity:0;transform:translateY(12px)}@keyframes ddSlideUp{to{opacity:1;transform:translateY(0)}}.dd-button:disabled{opacity:.4;cursor:not-allowed;transform:none}.dd-welcome{display:flex;align-items:center;justify-content:center;padding:var(--dd-space-lg)}.dd-welcome__content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:480px;width:100%;gap:var(--dd-space-lg)}.dd-welcome__icon{color:var(--dd-voice-sage);filter:drop-shadow(0 0 20px rgba(245,158,11,.4));margin-bottom:var(--dd-space-sm)}.dd-welcome__title,.dd-welcome__subtitle{margin:0}.dd-welcome__privacy{display:flex;align-items:flex-start;gap:var(--dd-space-md);text-align:left;width:100%}.dd-welcome__privacy-icon{color:var(--dd-text-tertiary);flex-shrink:0;margin-top:2px}.dd-welcome__cta{width:100%;max-width:300px;padding:16px 32px;font-size:1.1rem;margin-top:var(--dd-space-sm)}.dd-voice-selection{display:flex;flex-direction:column;align-items:center;padding:var(--dd-space-xl) var(--dd-space-lg);overflow-y:auto}.dd-voice-selection__content{display:flex;flex-direction:column;align-items:center;width:100%;max-width:1000px;gap:var(--dd-space-xl)}.dd-voice-selection__header{text-align:center}.dd-voice-selection__header h1{margin:0 0 var(--dd-space-sm) 0}.dd-voice-selection__header p{margin:0}.dd-voice-selection__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--dd-space-md);width:100%}@media(min-width:768px){.dd-voice-selection__grid{grid-template-columns:repeat(5,1fr)}}@media(max-width:767px){.dd-voice-selection__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:400px){.dd-voice-selection__grid{grid-template-columns:1fr}}.dd-voice-selection__card-wrapper{display:flex;flex-direction:column}.dd-voice-selection__card-wrapper .dd-glass-card{flex:1}.dd-voice-preview-error{font-size:.75rem;color:var(--error, #FCA5A5);margin-top:4px;text-align:center}.dd-voice-selection__error{color:#ef4444;font-size:.875rem;text-align:center;padding:var(--dd-space-sm) var(--dd-space-md);background:#ef44441a;border-radius:var(--dd-radius-sm)}.dd-voice-selection__start{width:100%;max-width:300px;padding:16px 32px;font-size:1.1rem}.dd-voice-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--dd-space-sm);padding:var(--dd-space-lg) var(--dd-space-md);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;min-height:240px}.dd-voice-card--selected{border-width:2px}.dd-voice-card__icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid;flex-shrink:0;position:relative}.dd-voice-card__icon--playing,.dd-voice-card__speaker-icon{animation:dd-pulse-icon 1s ease-in-out infinite alternate}@keyframes dd-pulse-icon{0%{opacity:.6}to{opacity:1}}@media(prefers-reduced-motion:reduce){.dd-voice-card__icon--playing,.dd-voice-card__speaker-icon{animation:none}}.dd-voice-card__name{font-size:1.25rem;font-weight:700;color:var(--dd-text-primary)}.dd-voice-card__tagline{font-size:.875rem;font-weight:500}.dd-voice-card__description{font-size:.875rem;color:var(--dd-text-secondary);line-height:1.6;margin-top:auto}.dd-voice-card__preview{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:var(--dd-radius-sm);border:1px solid;background:transparent;cursor:pointer;font-size:.8125rem;font-weight:500;transition:background .2s ease;margin-top:auto}.dd-voice-card__preview:hover{background:#ffffff0d}.dd-voice-card__selected{display:flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600;margin-top:var(--dd-space-xs)}.dd-turn-progress{display:inline-flex;align-items:center;padding:6px 14px;background:var(--dd-glass-surface);border:1px solid var(--dd-glass-border);border-radius:var(--dd-radius-full);font-size:.75rem;font-weight:500;color:var(--dd-text-tertiary);backdrop-filter:blur(var(--dd-blur-sm));-webkit-backdrop-filter:blur(var(--dd-blur-sm))}.dd-turn-progress--warning{color:var(--dd-voice-sage);border-color:var(--dd-voice-sage)}.dd-session{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:var(--dd-space-xl) var(--dd-space-lg)}.dd-session__header{display:flex;justify-content:center;padding-top:var(--dd-space-md)}.dd-session__orb-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--dd-space-lg)}.dd-session__state-text{font-size:.875rem;min-height:1.4em}.dd-session__footer{display:flex;justify-content:center;padding-bottom:var(--dd-space-lg)}.dd-session__end-btn{padding:12px 32px}.dd-session__turn-warning{text-align:center;padding:8px 16px;background:#fbbf2426;border:1px solid rgba(251,191,36,.3);border-radius:8px;color:#fbbf24;font-size:.875rem;margin:0 auto;max-width:300px}.dd-session__text-chat{display:flex;flex-direction:column;width:100%;max-width:600px;margin:0 auto;padding:0 var(--dd-space-md);flex:1;min-height:0}.dd-session__messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:var(--dd-space-sm) 0;max-height:300px}.dd-session__message{padding:10px 16px;border-radius:16px;max-width:80%;font-size:.9375rem;line-height:1.5;word-wrap:break-word}.dd-session__message--user{align-self:flex-end;background:#ffffff26;color:var(--dd-text-primary, #fff)}.dd-session__message--assistant{align-self:flex-start;background:#ffffff14;color:var(--dd-text-secondary, rgba(255, 255, 255, .85))}.dd-session__message--error{background:#fca5a526;border-left:3px solid #FCA5A5;color:#fca5a5}.dd-session__text-input{display:flex;gap:8px;padding:var(--dd-space-sm) 0}.dd-session__input{flex:1;padding:10px 16px;border-radius:24px;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:var(--dd-text-primary, #fff);font-size:.9375rem;outline:none;transition:border-color .2s}.dd-session__input:focus{border-color:#fff6}.dd-session__input::placeholder{color:#fff6}.dd-session__send-btn{padding:10px 20px;border-radius:24px;min-width:64px}.dd-emotional-journey{display:flex;flex-direction:column;gap:var(--dd-space-md)}.dd-emotional-journey__row{display:flex;align-items:flex-start;justify-content:center;gap:0}.dd-emotional-journey__waypoint{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:0}.dd-emotional-journey__dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.dd-emotional-journey__emotion{font-size:.8125rem;font-weight:600;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.dd-emotional-journey__turn{font-size:.6875rem;color:var(--dd-text-tertiary);text-align:center}.dd-emotional-journey__line{width:32px;height:1px;background:var(--dd-glass-border);margin-top:6px;flex-shrink:0}.dd-reflection-card{width:100%}.dd-reflection-card h2{margin:0 0 var(--dd-space-lg) 0}.dd-reflection-card__section{display:flex;flex-direction:column;gap:var(--dd-space-sm);margin-bottom:var(--dd-space-lg)}.dd-reflection-card__section p{margin:0}.dd-reflection-card__next-step{display:flex;align-items:flex-start;gap:var(--dd-space-md);padding:12px 16px;border-radius:var(--dd-radius-md);border:1px solid}.dd-reflection-card__arrow{flex-shrink:0;margin-top:2px}.dd-reflection-card__when{font-size:.8125rem;font-style:italic;margin:var(--dd-space-sm) 0 0 0}.dd-completion-animation{display:flex;align-items:center;justify-content:center;min-height:100vh}.dd-completion-animation__diamond{animation:ddDiamondReveal 2s cubic-bezier(.175,.885,.32,1.275) forwards;opacity:0;transform:scale(0)}@keyframes ddDiamondReveal{0%{opacity:0;transform:scale(0)}40%{opacity:1}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.dd-completion-animation__diamond{animation:none;opacity:1;transform:scale(1)}}.dd-summary{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--dd-space-xl) var(--dd-space-lg)}.dd-summary__animation{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%}.dd-summary__loading{display:flex;flex-direction:column;align-items:center;gap:var(--dd-space-lg);padding-top:20vh}.dd-summary__spinner{width:40px;height:40px;border:3px solid var(--dd-glass-border);border-top-color:var(--dd-voice-sage);border-radius:50%;animation:ddSpin .8s linear infinite}@keyframes ddSpin{to{transform:rotate(360deg)}}.dd-summary__error{display:flex;flex-direction:column;align-items:center;gap:var(--dd-space-lg);padding-top:20vh}.dd-summary__content{display:flex;flex-direction:column;align-items:center;width:100%;max-width:600px;gap:var(--dd-space-xl)}.dd-summary__title{margin:0;text-align:center}.dd-summary__share-toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%);background:var(--dd-glass-surface);border:1px solid var(--dd-glass-border);backdrop-filter:blur(var(--dd-blur-md));-webkit-backdrop-filter:blur(var(--dd-blur-md));padding:8px 20px;border-radius:var(--dd-radius-full);font-size:.875rem;color:var(--dd-text-secondary);z-index:100}.dd-summary__actions{display:flex;gap:var(--dd-space-md);justify-content:center;width:100%}.dd-summary__actions .dd-button{flex:1;max-width:200px}.dd-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--dd-space-lg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.dd-modal{max-width:400px;width:100%;animation:ddSlideUp .3s ease-out forwards}.dd-modal__actions{display:flex;gap:var(--dd-space-md);margin-top:var(--dd-space-xl);justify-content:flex-end}.dd-modal__actions .dd-button{min-width:120px}.dd-diamond-btn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:transparent;color:var(--dd-voice-sage);cursor:pointer;flex-shrink:0;overflow:hidden;transition:background .2s ease}.dd-diamond-btn:hover{background:#f59e0b1a}.dd-diamond-btn:focus-visible{outline:2px solid var(--dd-voice-sage);outline-offset:2px}.dd-diamond-btn--glitter:before{content:"";position:absolute;inset:-2px;border-radius:50%;background:linear-gradient(120deg,transparent 30%,rgba(245,158,11,.4) 45%,rgba(255,255,255,.6) 50%,rgba(245,158,11,.4) 55%,transparent 70%);background-size:300% 300%;animation:ddShimmerSweep 4s ease-in-out infinite;pointer-events:none}@keyframes ddShimmerSweep{0%{background-position:100% 100%}50%{background-position:0% 0%}to{background-position:100% 100%}}.dd-diamond-btn--glitter:after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:4px -6px 0 -2px #fff0,-5px 3px 0 -2px #fff0,6px 5px 0 -2px #fff0,-3px -4px 0 -2px #fff0;animation:ddSparkleBurst 6s ease-in-out infinite;pointer-events:none}@keyframes ddSparkleBurst{0%,70%,to{box-shadow:4px -6px 0 -2px #fff0,-5px 3px 0 -2px #fff0,6px 5px 0 -2px #fff0,-3px -4px 0 -2px #fff0}80%{box-shadow:8px -10px 0 -1px #f59e0bcc,-9px 5px 0 -1px #ffffffb3,10px 8px 0 -1px #f59e0b99,-6px -8px 0 -1px #ffffff80}90%{box-shadow:12px -14px 0 -2px #f59e0b00,-13px 7px 0 -2px #fff0,14px 12px 0 -2px #f59e0b00,-9px -12px 0 -2px #fff0}}@media(prefers-reduced-motion:reduce){.dd-diamond-btn--glitter:before,.dd-diamond-btn--glitter:after{animation:none;display:none}}.dd-diamond-btn__event-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:#22c55e;border:2px solid var(--bg-primary, #1A1625);animation:ddEventPulse 2s ease-in-out infinite;pointer-events:none}@keyframes ddEventPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}@media(prefers-reduced-motion:reduce){.dd-diamond-btn__event-dot{animation:none}}.dd-promo-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:24px;animation:ddPromoBackdropIn .3s ease-out forwards}@keyframes ddPromoBackdropIn{0%{opacity:0}to{opacity:1}}.dd-promo-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:400px;width:100%;padding:40px 32px 32px;background:#1a1625f2;border:1px solid rgba(255,255,255,.15);border-radius:20px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 24px 48px #0006,0 0 80px #f59e0b14;animation:ddPromoCardIn .4s cubic-bezier(.16,1,.3,1) forwards;transform:scale(.9);opacity:0}@keyframes ddPromoCardIn{to{transform:scale(1);opacity:1}}.dd-promo-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:#ffffff1a;color:#fff9;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.dd-promo-close:hover{background:#fff3;color:#fff}.dd-promo-close:focus-visible{outline:2px solid var(--dd-voice-sage);outline-offset:2px}.dd-promo-hero-icon{color:var(--dd-voice-sage);filter:drop-shadow(0 0 24px rgba(245,158,11,.5));margin-bottom:16px}.dd-promo-heading{font-size:1.75rem;font-weight:700;color:#fff;margin:0 0 8px;line-height:1.2}.dd-promo-subtitle{font-size:1rem;color:#ffffffb3;margin:0 0 24px;line-height:1.5}.dd-promo-features{display:flex;flex-direction:column;gap:12px;width:100%;padding:16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:24px}.dd-promo-feature{display:flex;align-items:center;gap:12px}.dd-promo-feature-icon{color:var(--dd-voice-sage);flex-shrink:0;display:flex}.dd-promo-feature-text{font-size:.9375rem;color:#ffffffd9;text-align:left}.dd-promo-cta{width:100%;padding:14px 24px;font-size:1rem;margin-bottom:12px}.dd-promo-dismiss{border:none;background:none;color:#ffffff80;font-size:.875rem;cursor:pointer;padding:8px;transition:color .2s ease}.dd-promo-dismiss:hover{color:#fffc}.dd-promo-dismiss:focus-visible{outline:2px solid var(--dd-voice-sage);outline-offset:2px}@media(max-width:640px){.dd-promo-overlay{align-items:flex-end;padding:0}.dd-promo-card{max-width:100%;border-radius:20px 20px 0 0;padding:32px 24px 24px;animation:ddPromoSheetIn .4s cubic-bezier(.16,1,.3,1) forwards;transform:translateY(100%)}@keyframes ddPromoSheetIn{to{transform:translateY(0);opacity:1}}}@media(prefers-reduced-motion:reduce){.dd-promo-overlay{animation:none;opacity:1}.dd-promo-card{animation:none;transform:none;opacity:1}}.dd-back-button{position:fixed;top:16px;left:16px;z-index:50;width:44px;height:44px;border-radius:50%;border:1px solid var(--dd-glass-border);background:var(--dd-glass-surface);backdrop-filter:blur(var(--dd-blur-md));-webkit-backdrop-filter:blur(var(--dd-blur-md));color:var(--dd-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease}.dd-back-button:hover{background:#ffffff26;border-color:#ffffff4d}.dd-back-button:active{transform:scale(.95)}.dd-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.diamond-day-layout *,.diamond-day-layout *:before,.diamond-day-layout *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-header{background:var(--bg-primary);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:var(--z-sticky);box-shadow:var(--shadow-sm)}.header-container{max-width:100%;margin:0;padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.header-hamburger{display:none;flex-shrink:0}.header-brand{display:flex;align-items:center;gap:var(--spacing-md);text-decoration:none;transition:opacity var(--duration-fast) var(--ease-out);flex-shrink:0}.header-brand:hover{opacity:.8}.header-logo{font-size:40px;line-height:1;display:flex;align-items:center;justify-content:center}.header-logo-img{width:40px;height:40px;display:block}.header-brand-text{display:flex;flex-direction:column}.header-title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.2}.header-subtitle{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.2}.header-nav{display:flex;align-items:center;gap:var(--spacing-xs);flex:1}.header-nav-link{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);text-decoration:none;color:var(--text-secondary);font-size:14px;font-weight:500;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap}.header-nav-link:hover{background:var(--bg-tertiary);color:var(--text-primary)}.header-nav-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.header-nav-link.active{background:var(--primary);color:#fff}.header-nav-link-icon{font-size:1em}.header-theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius-full);background:transparent;font-size:20px;cursor:pointer;transition:background var(--duration-fast) var(--ease-out);flex-shrink:0}.header-theme-toggle:hover{background:var(--bg-tertiary)}.header-theme-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.header-user{position:relative;flex-shrink:0}.header-user-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.header-user-button:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.header-user-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.header-user-avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);background:var(--primary);color:#fff;font-weight:600;font-size:16px}.header-user-info{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.header-user-name{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1}.header-user-chevron{font-size:10px;color:var(--text-tertiary);margin-left:var(--spacing-xs)}.header-user-menu{position:absolute;top:calc(100% + var(--spacing-xs));right:0;min-width:240px;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:slideDown var(--duration-fast) var(--ease-out);z-index:var(--z-dropdown)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.header-user-menu-header{padding:var(--spacing-md)}.header-user-menu-name{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.header-user-menu-email{font-size:12px;color:var(--text-secondary)}.header-user-menu-divider{height:1px;background:var(--border);margin:var(--spacing-xs) 0}.header-user-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--text-primary);font-size:14px;text-align:left;text-decoration:none;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.header-user-menu-item:hover{background:var(--bg-tertiary)}.header-user-menu-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.header-user-menu-logout{color:var(--error)}.header-user-menu-logout:hover{background:#d32f2f1a}.avatar-wrapper{position:relative}.avatar-color-picker{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--spacing-sm);z-index:var(--z-popover);min-width:200px;animation:slideDown var(--duration-fast) var(--ease-out)}.color-picker-header{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm);text-align:center}.color-picker-colors{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-xs)}.color-option{width:40px;height:40px;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer;transition:all var(--duration-fast) var(--ease-out);display:flex;align-items:center;justify-content:center;position:relative}.color-option:hover{transform:scale(1.1);box-shadow:0 4px 12px #00000026}.color-option:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.color-option.selected{border-color:var(--text-primary);box-shadow:0 4px 12px #0003}@media(min-width:1024px){.header-nav{display:flex}.header-hamburger{display:none}.header-theme-toggle{display:flex}}@media(min-width:768px)and (max-width:1023px){.header-nav{display:flex}.header-nav-link.priority-gamma,.header-hamburger{display:none}.header-theme-toggle{display:flex}.header-container{padding:var(--spacing-sm) var(--spacing-md)}}@media(max-width:767px){.header-container{padding:var(--spacing-sm) var(--spacing-md)}.header-hamburger{display:flex;order:-1}.header-nav,.header-theme-toggle,.header-user-info{display:none}.header-user-button{padding:var(--spacing-xs)}.header-user-chevron{display:none}.header-logo{font-size:32px}.header-logo-img{width:32px;height:32px}.header-title{font-size:16px}.header-subtitle{font-size:10px}}@media(max-width:400px){.header-brand-text{display:none}.header-container{gap:var(--spacing-sm)}}@media(prefers-reduced-motion:reduce){.header-user-menu,.avatar-color-picker{animation:none}}.app-layout{display:flex;flex-direction:column;height:100vh;background:var(--bg-secondary);overflow:hidden}.app-main{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.trial-layout{display:flex;flex-direction:column;height:100vh;background:var(--bg-secondary);overflow:hidden}.trial-layout-content{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:linear-gradient(135deg,var(--primary-light) 0%,var(--primary-dark) 100%)}.auth-card{width:100%;max-width:400px;padding:40px 32px!important;border-radius:16px}.auth-header{text-align:center;margin-bottom:28px}.auth-logo-img{width:72px;height:72px;margin:0 auto 16px;display:block}.auth-title{margin:0 0 4px;font-size:28px;font-weight:700;color:var(--text-primary);line-height:1.2}.auth-subtitle-primary{margin:0 0 4px;font-size:15px;font-weight:500;color:var(--primary)}.auth-subtitle{margin:0;font-size:14px;color:var(--text-secondary)}.login-mode-selector{display:flex;margin-bottom:16px;padding:3px;background-color:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:10px}.mode-tab{flex:1;height:40px;padding:0 16px;background:transparent;border:none;border-radius:8px;font-size:14px;font-weight:600;color:var(--text-tertiary);cursor:pointer;transition:all .2s ease}.mode-tab:hover:not(:disabled){color:var(--text-secondary);background-color:#ffffff0a}.mode-tab.active{background-color:var(--primary);color:#fff;box-shadow:0 2px 8px #1976d24d}.mode-tab:disabled{cursor:not-allowed;opacity:.5}.social-auth-section{display:flex;flex-direction:column;gap:10px;margin-bottom:0}.social-auth-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:44px;padding:0 20px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.social-auth-button:disabled{opacity:.6;cursor:not-allowed}.social-auth-button.azure{background-color:#0078d4;color:#fff}.social-auth-button.azure:hover:not(:disabled){background-color:#106ebe;transform:translateY(-1px);box-shadow:0 4px 12px #0078d440}.social-auth-button.apple{background-color:#000;color:#fff}.social-auth-button.apple:hover:not(:disabled){background-color:#1a1a1a;transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.auth-divider-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:36px;margin-top:8px;padding:0 16px;background:transparent;border:none;font-size:13px;font-weight:500;color:var(--text-tertiary);cursor:pointer;transition:color .2s ease}.auth-divider-toggle:hover:not(:disabled){color:var(--text-secondary)}.auth-divider-toggle.expanded{color:var(--primary)}.auth-divider-toggle:disabled{cursor:not-allowed;opacity:.5}.auth-divider-toggle .chevron-icon{transition:transform .2s ease}.auth-divider-toggle .chevron-icon.rotated{transform:rotate(180deg)}.auth-form{display:flex;flex-direction:column;gap:0;margin-bottom:0}.email-form-section{display:flex;flex-direction:column;gap:16px;overflow:hidden;transition:max-height .3s ease,opacity .25s ease,margin .3s ease}.email-form-section.collapsed{max-height:0;opacity:0;margin:0;pointer-events:none}.email-form-section.expanded{max-height:500px;opacity:1;margin-top:20px}.auth-form .input-container,.auth-card .input-container{gap:6px}.auth-form .input-wrapper,.auth-card .input-wrapper{height:46px}.auth-form-options{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.remember-me-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--text-secondary);font-size:13px;-webkit-user-select:none;user-select:none}.remember-me-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary);border-radius:4px}.remember-me-label:hover{color:var(--text-primary)}.forgot-password-link{font-size:13px;color:var(--primary);text-decoration:none;font-weight:500;transition:color .15s ease}.forgot-password-link:hover{color:var(--primary-light);text-decoration:underline}.auth-error-message{padding:10px 14px;background-color:#d32f2f1f;border:1px solid rgba(211,47,47,.25);border-radius:8px;color:#f87171;font-size:13px;font-weight:500;text-align:center}.auth-form .btn{height:46px;font-size:15px;font-weight:600;border-radius:10px}.auth-footer{text-align:center;padding-top:20px;margin-top:24px;border-top:1px solid rgba(255,255,255,.08)}.auth-footer p{margin:0;font-size:14px;color:var(--text-secondary)}.auth-link{color:var(--primary);text-decoration:none;font-weight:500;transition:color .15s ease}.auth-link:hover{color:var(--primary-light);text-decoration:underline}.trial-help-text{margin:-8px 0 0;padding:10px 12px;background-color:#ffffff0a;border-radius:8px;font-size:13px;color:var(--text-secondary);line-height:1.5}.auth-success-banner{display:flex;gap:16px;padding:16px;margin-bottom:20px;background:#4caf501a;border:1px solid rgba(76,175,80,.25);border-radius:10px}.auth-error-banner{display:flex;gap:16px;padding:16px;margin-bottom:20px;background:#d32f2f1a;border:1px solid rgba(211,47,47,.25);border-radius:10px}.success-icon,.error-icon{font-size:24px;line-height:1}.success-content h3,.error-content h3{margin:0 0 4px;font-size:15px;font-weight:600}.success-content h3{color:#4caf50}.error-content h3{color:#ef5350}.success-content p,.error-content p{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5}.password-requirements{padding:14px;background-color:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;margin-top:8px}.requirements-title{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--text-primary)}.requirements-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.requirements-list li{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-tertiary);transition:color .2s ease}.requirements-list li.valid{color:#4caf50}.requirements-list li svg{flex-shrink:0;width:14px;height:14px}.password-info-box{padding:14px;background-color:#1976d214;border:1px solid rgba(25,118,210,.15);border-radius:8px}.password-info-text{margin:0 0 4px;font-size:14px;font-weight:500;color:var(--primary)}.password-info-description{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5}.auth-success-message{text-align:center;padding:20px}.auth-success-message .success-icon{display:flex;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;background-color:#1976d21a;border-radius:50%;color:var(--primary)}.auth-success-message .success-text{margin:0 0 12px;font-size:14px;color:var(--text-primary);line-height:1.6}.auth-success-message .success-text strong{color:var(--primary)}.auth-success-message .success-subtext{margin:0 0 12px;font-size:13px;color:var(--text-secondary)}.auth-success-message .success-help{margin:0;font-size:12px;color:var(--text-tertiary)}.error-actions{display:flex;gap:10px;margin-top:14px}.error-action-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s ease;cursor:pointer}.error-action-button.primary{background-color:var(--primary);color:#fff;border:none}.error-action-button.primary:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.error-action-button.secondary{background-color:transparent;color:var(--primary);border:1.5px solid var(--primary)}.error-action-button.secondary:hover{background-color:#1976d214;transform:translateY(-1px)}@media(prefers-color-scheme:light){.login-mode-selector{background-color:var(--bg-secondary);border-color:var(--border)}.mode-tab{color:var(--text-secondary)}.mode-tab:hover:not(:disabled){color:var(--text-primary);background-color:#0000000a}.auth-form .input{background:var(--bg-secondary);border-color:var(--border)}.auth-form .input:hover:not(:disabled){border-color:var(--primary-light)}.auth-form .input:focus{background:#fff}.auth-footer{border-color:var(--border)}}@media(max-width:480px){.auth-container{padding:16px}.auth-card{padding:28px 20px!important}.auth-title{font-size:24px}.auth-subtitle-primary{font-size:14px}.social-auth-button{height:48px;font-size:15px}.auth-form .input{height:48px}}:root{--primary: #F59E0B;--primary-light: #FBBF24;--primary-dark: #D97706;--on-primary: #1A1625;--secondary: rgba(240, 230, 255, .7);--secondary-light: rgba(240, 230, 255, .85);--secondary-dark: rgba(200, 180, 230, .6);--on-secondary: #1A1625;--tertiary: #A78BFA;--tertiary-light: #C4B5FD;--tertiary-dark: #7C3AED;--error: #FCA5A5;--success: #86EFAC;--warning: #FCD34D;--info: #A78BFA;--bg-primary: #1A1625;--bg-secondary: #1F1A2E;--bg-tertiary: #2D2447;--text-primary: #F0E6FF;--text-secondary: rgba(240, 230, 255, .7);--text-tertiary: rgba(240, 230, 255, .55);--border: rgba(255, 255, 255, .1);--outline: rgba(255, 255, 255, .15);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5), 0 4px 8px rgba(0, 0, 0, .3);--primary-rgb: 245, 158, 11;--glass-bg-light: rgba(26, 22, 37, .6);--glass-bg-medium: rgba(26, 22, 37, .7);--glass-bg-heavy: rgba(26, 22, 37, .85);--glass-border: rgba(255, 255, 255, .08);--glass-border-subtle: rgba(255, 255, 255, .04);--glass-border-strong: rgba(255, 255, 255, .12);--glass-shadow-sm: 0 4px 16px rgba(0, 0, 0, .35);--glass-shadow-md: 0 8px 32px rgba(0, 0, 0, .45);--glass-shadow-lg: 0 12px 48px rgba(0, 0, 0, .55);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 40px;--spacing-xxxl: 48px}.app{display:flex;flex-direction:column;height:100vh;background:var(--bg-secondary)}.header{background:var(--bg-primary);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:1rem}.logo{font-size:2rem}.title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.subtitle{font-size:.875rem;color:var(--text-secondary)}.status-badges{display:flex;gap:.5rem}.badge{padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:#86efac26;color:var(--success)}.badge-info{background:#a78bfa26;color:var(--info)}.badge-warning{background:#fcd34d26;color:var(--warning)}.chat-container{flex:1;overflow-y:auto;padding:2rem 1rem}.messages{max-width:900px;margin:0 auto}.welcome{text-align:center;padding:4rem 2rem}.welcome-icon{font-size:4rem;margin-bottom:1.5rem}.welcome h2{font-size:2rem;color:var(--text-primary);margin-bottom:.5rem}.welcome p{font-size:1.125rem;color:var(--text-secondary);margin-bottom:2rem}.quick-starts{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.quick-start-btn{padding:.75rem 1.5rem;background:var(--bg-primary);border:2px solid var(--border);border-radius:var(--radius-md);font-size:.95rem;color:var(--text-primary);cursor:pointer;transition:all .2s}.quick-start-btn:hover{border-color:var(--primary);background:var(--primary);color:var(--on-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.message{display:flex;gap:1rem;margin-bottom:1.5rem;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:var(--bg-tertiary)}.message-user .message-avatar{background:var(--primary-light);opacity:.3}.message-assistant .message-avatar{background:var(--secondary-light);opacity:.3}.message-content{flex:1;min-width:0}.message-text{background:var(--bg-primary);padding:1rem 1.25rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);line-height:1.6;color:var(--text-primary);white-space:pre-wrap;word-wrap:break-word}.message-user .message-text{background:var(--primary);color:var(--on-primary)}.cursor{animation:blink 1s infinite;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.citations{margin-top:.75rem;padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:.875rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.citation{padding:.25rem .5rem;background:var(--bg-primary);border-radius:var(--radius-sm);font-size:.8rem;color:var(--text-secondary)}.metadata{margin-top:.75rem;padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:.875rem}.metadata-item{color:var(--text-secondary);margin-bottom:.25rem}.metadata-item:last-child{margin-bottom:0}.metadata-item strong{color:var(--text-primary);margin-right:.5rem}.thinking-indicator{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:1.5rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.thinking-spinner{font-size:1.5rem;animation:rotate 2s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.thinking-text{color:var(--text-secondary);font-style:italic}.legacy-input-container{background:var(--bg-primary);border-top:1px solid var(--border);box-shadow:var(--shadow-lg);position:sticky;bottom:0}.legacy-input-wrapper{max-width:900px;margin:0 auto;padding:1.5rem;display:flex;gap:1rem;align-items:flex-end}.legacy-chat-input{flex:1;padding:1rem;border:2px solid var(--border);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;resize:none;max-height:200px;transition:all .2s}.legacy-chat-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.15)}.legacy-chat-input:disabled{background:var(--bg-tertiary);cursor:not-allowed}.send-button{flex-shrink:0;width:48px;height:48px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1.25rem;cursor:pointer;transition:all .2s}.send-button:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.send-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.input-footer{max-width:900px;margin:0 auto;padding:0 1.5rem 1rem}.powered-by{font-size:.75rem;color:var(--text-tertiary);display:block;text-align:center}@media(max-width:768px){.header-content{flex-direction:column;gap:1rem}.status-badges{width:100%;justify-content:center}.quick-starts{flex-direction:column}.quick-start-btn{width:100%}}:root{--primary-rgb: 245, 158, 11;--secondary-rgb: 167, 139, 250;--error-rgb: 252, 165, 165;--success-rgb: 134, 239, 172;--warning-rgb: 252, 211, 77;--glass-bg-light: rgba(26, 22, 37, .6);--glass-bg-medium: rgba(26, 22, 37, .7);--glass-bg-heavy: rgba(26, 22, 37, .85);--glass-border: rgba(255, 255, 255, .08);--glass-border-subtle: rgba(255, 255, 255, .04);--glass-border-strong: rgba(255, 255, 255, .12);--glass-blur-sm: 8px;--glass-blur-md: 12px;--glass-blur-lg: 20px;--glass-blur-xl: 32px;--glass-shadow-sm: 0 4px 16px rgba(0, 0, 0, .35);--glass-shadow-md: 0 8px 32px rgba(0, 0, 0, .45);--glass-shadow-lg: 0 12px 48px rgba(0, 0, 0, .55);--emotion-joy: #FFD700;--emotion-joy-rgb: 255, 215, 0;--emotion-joy-glow: rgba(255, 215, 0, .4);--emotion-joy-light: #FFF4B8;--emotion-excitement: #FF6B35;--emotion-excitement-rgb: 255, 107, 53;--emotion-excitement-glow: rgba(255, 107, 53, .4);--emotion-excitement-light: #FFD1C1;--emotion-curiosity: #9B59B6;--emotion-curiosity-rgb: 155, 89, 182;--emotion-curiosity-glow: rgba(155, 89, 182, .4);--emotion-curiosity-light: #E8D4F0;--emotion-interest: #9B59B6;--emotion-interest-rgb: 155, 89, 182;--emotion-interest-glow: rgba(155, 89, 182, .4);--emotion-interest-light: #E8D4F0;--emotion-determination: #27AE60;--emotion-determination-rgb: 39, 174, 96;--emotion-determination-glow: rgba(39, 174, 96, .4);--emotion-determination-light: #C8F7D6;--emotion-confusion: #3498DB;--emotion-confusion-rgb: 52, 152, 219;--emotion-confusion-glow: rgba(52, 152, 219, .4);--emotion-confusion-light: #D4E9F7;--emotion-frustration: #E74C3C;--emotion-frustration-rgb: 231, 76, 60;--emotion-frustration-glow: rgba(231, 76, 60, .4);--emotion-frustration-light: #F9D5D2;--emotion-sadness: #7F8C8D;--emotion-sadness-rgb: 127, 140, 141;--emotion-sadness-glow: rgba(127, 140, 141, .4);--emotion-sadness-light: #D8DCDD;--emotion-calm: #1ABC9C;--emotion-calm-rgb: 26, 188, 156;--emotion-calm-glow: rgba(26, 188, 156, .4);--emotion-calm-light: #C2F0E7;--emotion-surprise: #E67E22;--emotion-surprise-rgb: 230, 126, 34;--emotion-surprise-glow: rgba(230, 126, 34, .4);--emotion-surprise-light: #FDEBD0;--emotion-neutral: #95A5A6;--emotion-neutral-rgb: 149, 165, 166;--emotion-neutral-glow: rgba(149, 165, 166, .4);--emotion-neutral-light: #E5E8E8;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .35s;--duration-slower: .5s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--transition-fast: all var(--duration-fast) var(--ease-out);--transition-normal: all var(--duration-normal) var(--ease-out);--transition-slow: all var(--duration-slow) var(--ease-out);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-drawer: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-toast: 800;--header-height: 64px;--header-height-mobile: 56px;--sidebar-width: 300px;--sidebar-width-mobile: 280px;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--bubble-radius: 18px;--bubble-radius-tail: 4px;--bubble-padding-x: 16px;--bubble-padding-y: 12px;--bubble-max-width: 70%;--bubble-gap-same-sender: 4px;--bubble-gap-different-sender: 16px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--text-xs: 11px;--text-sm: 13px;--text-base: 15px;--text-lg: 17px;--text-xl: 20px;--text-2xl: 24px;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .025em}@media(prefers-reduced-motion:reduce){:root{--duration-fast: 0ms;--duration-normal: 0ms;--duration-slow: 0ms;--duration-slower: 0ms}}.glass{background:var(--glass-bg-medium);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-sm)}.glass-light{background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--glass-border-subtle)}.glass-heavy{background:var(--glass-bg-heavy);backdrop-filter:blur(var(--glass-blur-lg));-webkit-backdrop-filter:blur(var(--glass-blur-lg));border:1px solid var(--glass-border-strong);box-shadow:var(--glass-shadow-md)}.glass-borderless{background:var(--glass-bg-medium);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border:none;box-shadow:var(--glass-shadow-sm)}@supports not (backdrop-filter: blur(1px)){.glass,.glass-light,.glass-heavy,.glass-borderless{background:var(--bg-primary);opacity:.95}}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.px-0{padding-left:var(--space-0);padding-right:var(--space-0)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-0{padding-top:var(--space-0);padding-bottom:var(--space-0)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.m-auto{margin:auto}.mx-0{margin-left:var(--space-0);margin-right:var(--space-0)}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.mx-4{margin-left:var(--space-4);margin-right:var(--space-4)}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:var(--space-0);margin-bottom:var(--space-0)}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.mt-0{margin-top:var(--space-0)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mb-0{margin-bottom:var(--space-0)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.gap-0{gap:var(--space-0)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:9999px}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-glass-sm{box-shadow:var(--glass-shadow-sm)}.shadow-glass-md{box-shadow:var(--glass-shadow-md)}.shadow-glass-lg{box-shadow:var(--glass-shadow-lg)}.shadow-primary{box-shadow:0 4px 14px rgba(var(--primary-rgb),.3)}.shadow-primary-lg{box-shadow:0 8px 24px rgba(var(--primary-rgb),.4)}.transition-none{transition:none}.transition-fast{transition:var(--transition-fast)}.transition-normal{transition:var(--transition-normal)}.transition-slow{transition:var(--transition-slow)}.transition-colors{transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.transition-transform{transition:transform var(--duration-normal) var(--ease-out)}.transition-opacity{transition:opacity var(--duration-normal) var(--ease-out)}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.flex-wrap{flex-wrap:wrap}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.leading-tight{line-height:var(--leading-tight)}.leading-normal{line-height:var(--leading-normal)}.leading-relaxed{line-height:var(--leading-relaxed)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-default{cursor:default}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.bg-emotion-joy{background-color:var(--emotion-joy)}.bg-emotion-excitement{background-color:var(--emotion-excitement)}.bg-emotion-curiosity{background-color:var(--emotion-curiosity)}.bg-emotion-determination{background-color:var(--emotion-determination)}.bg-emotion-confusion{background-color:var(--emotion-confusion)}.bg-emotion-frustration{background-color:var(--emotion-frustration)}.bg-emotion-sadness{background-color:var(--emotion-sadness)}.bg-emotion-calm{background-color:var(--emotion-calm)}.bg-emotion-surprise{background-color:var(--emotion-surprise)}.bg-emotion-neutral{background-color:var(--emotion-neutral)}.text-emotion-joy{color:var(--emotion-joy)}.text-emotion-excitement{color:var(--emotion-excitement)}.text-emotion-curiosity{color:var(--emotion-curiosity)}.text-emotion-determination{color:var(--emotion-determination)}.text-emotion-confusion{color:var(--emotion-confusion)}.text-emotion-frustration{color:var(--emotion-frustration)}.text-emotion-sadness{color:var(--emotion-sadness)}.text-emotion-calm{color:var(--emotion-calm)}.text-emotion-surprise{color:var(--emotion-surprise)}.text-emotion-neutral{color:var(--emotion-neutral)}.glow-emotion-joy{box-shadow:0 0 20px var(--emotion-joy-glow)}.glow-emotion-excitement{box-shadow:0 0 20px var(--emotion-excitement-glow)}.glow-emotion-curiosity{box-shadow:0 0 20px var(--emotion-curiosity-glow)}.glow-emotion-determination{box-shadow:0 0 20px var(--emotion-determination-glow)}.glow-emotion-confusion{box-shadow:0 0 20px var(--emotion-confusion-glow)}.glow-emotion-frustration{box-shadow:0 0 20px var(--emotion-frustration-glow)}.glow-emotion-sadness{box-shadow:0 0 20px var(--emotion-sadness-glow)}.glow-emotion-calm{box-shadow:0 0 20px var(--emotion-calm-glow)}.glow-emotion-surprise{box-shadow:0 0 20px var(--emotion-surprise-glow)}.glow-emotion-neutral{box-shadow:0 0 20px var(--emotion-neutral-glow)}@keyframes pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.05);opacity:1}}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-out)}@keyframes slideInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in-up{animation:slideInUp var(--duration-slow) var(--ease-out)}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slideInLeft var(--duration-slow) var(--ease-out)}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.animate-bounce{animation:bounce 1.4s infinite ease-in-out}.animate-bounce-delay-1{animation:bounce 1.4s infinite ease-in-out;animation-delay:.2s}.animate-bounce-delay-2{animation:bounce 1.4s infinite ease-in-out;animation-delay:.4s}.z-base{z-index:var(--z-base)}.z-dropdown{z-index:var(--z-dropdown)}.z-sticky{z-index:var(--z-sticky)}.z-fixed{z-index:var(--z-fixed)}.z-drawer{z-index:var(--z-drawer)}.z-modal{z-index:var(--z-modal)}.z-popover{z-index:var(--z-popover)}.z-tooltip{z-index:var(--z-tooltip)}.z-toast{z-index:var(--z-toast)}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.visible{visibility:visible}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[data-theme=dark] .app-header{background:#1a1625cc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.06);box-shadow:0 1px #ffffff08,0 4px 24px #0000004d}[data-theme=dark] .header-nav-link.active{background:#f59e0b26;color:#f59e0b}[data-theme=dark] .header-nav-link:hover{background:#f0e6ff0f}[data-theme=dark] .header-user-button{border-color:#ffffff14;background:#1a162599}[data-theme=dark] .header-user-button:hover{border-color:#f59e0b66;background:#1a1625cc}[data-theme=dark] .header-user-menu{background:#1f1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:#ffffff14;box-shadow:0 8px 32px #00000080}[data-theme=dark] .header-user-menu-item:hover,[data-theme=dark] .header-theme-toggle:hover{background:#f0e6ff0f}[data-theme=dark] .avatar-color-picker{background:#1f1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:#ffffff14}[data-theme=dark] .conversation-list{background:#1a162599;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}[data-theme=dark] .conversation-item{background:#ffffff08;border-color:#ffffff0f}[data-theme=dark] .conversation-item:hover{background:#f0e6ff0f;border-color:#ffffff1a}[data-theme=dark] .conversation-item.selected{background:#f59e0b14;border-color:#f59e0b4d}[data-theme=dark] .conversations-section-header,[data-theme=dark] .conversation-list-items{background:transparent;border-color:#ffffff0a}[data-theme=dark] .btn-new-conversation{background:#f59e0b;color:#1a1625}[data-theme=dark] .btn-new-conversation:hover:not(:disabled){background:#d97706}[data-theme=dark] .tag-filter-button.active{background:#f59e0b26;border-color:#f59e0b66;color:#f59e0b}[data-theme=dark] .tag-filter-dropdown{background:#1f1a2ef2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:#ffffff14}[data-theme=dark] .tag-filter-option.selected{background:#f59e0b26;color:#f59e0b}[data-theme=dark] .conversation-menu-dropdown{background:#1f1a2ef2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:#ffffff14}[data-theme=dark] .conversation-menu-item:hover{background:#f0e6ff0f}[data-theme=dark] .message-bubble-assistant .message-content-modern{background:#1f1a2e80;border:1px solid rgba(255,255,255,.06);box-shadow:0 2px 8px #0003,inset 0 1px 1px #ffffff08}[data-theme=dark] .message-bubble-assistant .message-content-modern:hover{box-shadow:0 4px 16px #00000040,inset 0 1px 1px #ffffff0a}[data-theme=dark] .user-message-box{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 2px 12px #d9770640}[data-theme=dark] .user-message-box:hover{box-shadow:0 4px 20px #d9770659}[data-theme=dark] .message-cursor{color:#f59e0b}[data-theme=dark] .thinking-process-container:hover{background:#f0e6ff08}[data-theme=dark] .thinking-process-toggle:hover{background:#f0e6ff0a}[data-theme=dark] .thinking-process-count,[data-theme=dark] .action-icon-btn:hover{background:#f0e6ff14}[data-theme=dark] .chat-input-container-modern{background:#1f1a2e99;border-color:#ffffff14;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}[data-theme=dark] .chat-input-container-modern:focus-within{border-color:#f59e0b80;box-shadow:0 0 0 3px #f59e0b26}[data-theme=dark] .chat-send-button-modern{background:#f59e0b;color:#1a1625}[data-theme=dark] .chat-send-button-modern:hover:not(:disabled){background:#d97706;box-shadow:0 4px 12px #f59e0b59}[data-theme=dark] .chat-send-button-modern:disabled{background:#f0e6ff14;color:#f0e6ff4d}[data-theme=dark] .chat-action-button:hover{background:#f0e6ff14}[data-theme=dark] .chat-model-selector{border-color:#ffffff14}[data-theme=dark] .chat-model-selector:hover{background-color:#f0e6ff0f}[data-theme=dark] .chat-model-selector:focus{border-color:#f59e0b80;box-shadow:0 0 0 3px #f59e0b26}[data-theme=dark] .welcome-card{background:#1f1a2e80;border-color:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=dark] .welcome-card--clickable:hover{background:#2d2447b3;border-color:#f59e0b33;box-shadow:0 4px 16px #0000004d,0 0 0 1px #f59e0b1a}[data-theme=dark] .welcome-card--clickable:focus{box-shadow:0 0 0 2px #f59e0b}[data-theme=dark] .app-layout{background:#1f1a2e}[data-theme=dark] .modal-overlay{background:#0f0a19cc}[data-theme=dark] .modal-container{background:#1f1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .card{background:#1f1a2e99;border-color:#ffffff0f}[data-theme=dark] .toast{background:#1f1a2ef2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:#ffffff14}[data-theme=dark] .tooltip-content{background:#2d2447f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=dark] .confirm-dialog-content{background:#1f1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .custom-select-dropdown{background:#1f1a2ef2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:#ffffff14}[data-theme=dark] .custom-input:focus{border-color:#f59e0b80;box-shadow:0 0 0 3px #f59e0b26}[data-theme=dark] .btn-primary{background:#f59e0b;color:#1a1625}[data-theme=dark] .btn-primary:hover:not(:disabled){background:#d97706}[data-theme=dark] .mobile-drawer-panel{background:#1a1625f2;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}[data-theme=dark] .mobile-drawer__nav-link.active{background:#f59e0b1f;color:#f59e0b}[data-theme=dark] .mobile-drawer__nav-link:hover{background:#f0e6ff0f}[data-theme=dark] .coach-panel{background:#1a162599;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}[data-theme=dark] .coach-config-card{background:#1f1a2e80;border-color:#ffffff0f}[data-theme=dark] .share-dialog-content,[data-theme=dark] .export-dialog-content{background:#1f1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08)}[data-theme=dark] ::-webkit-scrollbar{width:6px}[data-theme=dark] ::-webkit-scrollbar-track{background:transparent}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#f0e6ff26;border-radius:3px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#f0e6ff40}[data-theme=dark] .metric-card{background:#1f1a2e80;border-color:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=dark] .analytics-chart-card,[data-theme=dark] .instruction-card{background:#1f1a2e80;border-color:#ffffff0f}[data-theme=dark] .instruction-card:hover{border-color:#f59e0b33}[data-theme=dark] .form-field input:focus,[data-theme=dark] .form-field textarea:focus,[data-theme=dark] .form-field select:focus{border-color:#f59e0b80;box-shadow:0 0 0 3px #f59e0b26}[data-theme=dark] .voice-button-active{background:#f59e0b26;border-color:#f59e0b66}[data-theme=dark] .loading-spinner-small,[data-theme=dark] .conversation-list-loading .spinner{border-top-color:#f59e0b}[data-theme=dark] .new-conversation-dialog,[data-theme=dark] .branch-dialog-content,[data-theme=dark] .feedback-modal-content{background:#1f1a2ef2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .chat-page-wrapper{background:linear-gradient(180deg,#1a1625,#1f1a2e,#2d2447)}[data-theme=dark] .chat-page{background:transparent}[data-theme=dark] .chat-sidebar{background:#1a1625b3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right-color:#ffffff0f}[data-theme=dark] .chat-input-container{background:#1a1625cc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top-color:#ffffff0f}[data-theme=dark] .mobile-overlay{background:#0f0a19cc}[data-theme=dark] .chat-messages{background:radial-gradient(ellipse 80% 40% at 50% 30%,rgba(167,139,250,.03) 0%,transparent 70%)}[data-theme=dark] .chat-breadcrumb{background:#1a1625b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:#ffffff0f}[data-theme=dark] .chat-breadcrumb-back:hover{background:#f59e0b1a;color:#f59e0b}[data-theme=dark] .chat-sidebar-toggle:hover{background:#f59e0b1a;border-color:#f59e0b4d;color:#f59e0b}[data-theme=dark] .session-header{background:#1a1625b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:#ffffff0f}[data-theme=dark]{--streak-active: #F59E0B;--streak-warning: #EF4444;--streak-inactive: rgba(255, 255, 255, .25);--streak-glow: rgba(245, 158, 11, .35);--points-positive: #34D399;--points-bonus: #A78BFA;--milestone-gold: #F59E0B}@media(prefers-reduced-motion:reduce){[data-theme=dark] .app-header,[data-theme=dark] .conversation-list,[data-theme=dark] .chat-input-container-modern,[data-theme=dark] .mobile-drawer-panel{backdrop-filter:none;-webkit-backdrop-filter:none}}.streak-indicator{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:600;color:var(--primary);background:#f59e0b1f;border:1px solid rgba(245,158,11,.25);transition:all .2s ease;cursor:default;-webkit-user-select:none;user-select:none;white-space:nowrap}.streak-indicator:hover{background:#f59e0b2e;border-color:#f59e0b59}.streak-indicator__flame{font-size:16px;line-height:1;animation:streakFlameGlow 2s ease-in-out infinite}.streak-indicator--at-risk .streak-indicator__flame{opacity:.5;animation:none;filter:grayscale(.5)}.streak-indicator--at-risk{border-color:#f59e0b1f;background:#f59e0b0f;color:var(--text-tertiary)}@keyframes streakFlameGlow{0%,to{filter:drop-shadow(0 0 4px rgba(245,158,11,.4))}50%{filter:drop-shadow(0 0 8px rgba(245,158,11,.7))}}.points-toast{position:fixed;z-index:9999;top:calc(var(--header-height, 64px) + 16px);right:16px;display:flex;align-items:center;gap:10px;padding:12px 20px;border-radius:12px;font-size:14px;font-weight:600;color:var(--on-primary, #1A1625);background:var(--primary, #F59E0B);box-shadow:0 8px 24px #f59e0b59,0 2px 8px #00000026;animation:toastSlideIn .35s var(--ease-out, ease-out) forwards;pointer-events:auto}.points-toast--exiting{animation:toastSlideOut .25s ease-in forwards}.points-toast__icon{font-size:20px;line-height:1}.points-toast__text{display:flex;flex-direction:column;gap:2px}.points-toast__points{font-size:18px;font-weight:700}.points-toast__source{font-size:12px;font-weight:500;opacity:.85}.points-toast__dismiss{margin-left:4px;padding:4px;background:none;border:none;color:var(--on-primary, #1A1625);opacity:.6;cursor:pointer;border-radius:4px;font-size:16px;line-height:1;transition:opacity .15s}.points-toast__dismiss:hover{opacity:1}@keyframes toastSlideIn{0%{opacity:0;transform:translate(40px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(40px) scale(.95)}}@media(max-width:639px){.points-toast{inset:auto 16px 16px;justify-content:center}}.explorer-modal__backdrop{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f0a19d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:explorerBackdropIn .3s ease-out}.explorer-modal__card{position:relative;width:100%;max-width:400px;padding:40px 32px 32px;border-radius:20px;background:var(--glass-bg-heavy, rgba(22, 18, 32, .85));border:1px solid var(--glass-border, rgba(255, 255, 255, .06));box-shadow:var(--glass-shadow-lg, 0 12px 48px rgba(0, 0, 0, .55));text-align:center;overflow:hidden;animation:explorerCardIn .5s var(--ease-out, ease-out)}.explorer-modal__particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.explorer-modal__particle{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--primary, #F59E0B);opacity:0;animation:explorerSparkle 2s ease-in-out infinite}.explorer-modal__particle:nth-child(1){left:20%;top:15%;animation-delay:0s}.explorer-modal__particle:nth-child(2){left:75%;top:10%;animation-delay:.3s}.explorer-modal__particle:nth-child(3){left:10%;top:60%;animation-delay:.6s}.explorer-modal__particle:nth-child(4){left:85%;top:55%;animation-delay:.9s}.explorer-modal__particle:nth-child(5){left:50%;top:80%;animation-delay:1.2s}.explorer-modal__particle:nth-child(6){left:35%;top:30%;animation-delay:.4s}.explorer-modal__particle:nth-child(7){left:65%;top:75%;animation-delay:.8s}.explorer-modal__particle:nth-child(8){left:90%;top:35%;animation-delay:1.1s}.explorer-modal__icon{position:relative;z-index:1;font-size:56px;line-height:1;margin-bottom:16px;animation:explorerIconBounce .6s cubic-bezier(.34,1.56,.64,1) .2s both}.explorer-modal__name{position:relative;z-index:1;font-size:22px;font-weight:700;color:var(--text-primary, #F0E6FF);margin:0 0 8px}.explorer-modal__description{position:relative;z-index:1;font-size:15px;color:var(--text-secondary, rgba(240, 230, 255, .7));line-height:1.5;margin:0 0 20px}.explorer-modal__points-badge{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:20px;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);color:var(--primary, #F59E0B);font-size:15px;font-weight:700;margin-bottom:24px}.explorer-modal__continue{position:relative;z-index:1;width:100%;padding:14px 24px;border-radius:12px;background:var(--primary, #F59E0B);color:var(--on-primary, #1A1625);border:none;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.explorer-modal__continue:hover{background:var(--primary-dark, #D97706);transform:translateY(-1px);box-shadow:0 4px 16px #f59e0b59}.explorer-modal__continue:focus-visible{outline:2px solid var(--primary-light, #FBBF24);outline-offset:2px}@keyframes explorerBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes explorerCardIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes explorerIconBounce{0%{opacity:0;transform:scale(.3) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes explorerSparkle{0%,to{opacity:0;transform:scale(.5)}50%{opacity:.8;transform:scale(1.5)}}.milestone-modal__backdrop{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f0a19d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:explorerBackdropIn .3s ease-out}.milestone-modal__card{position:relative;width:100%;max-width:420px;padding:40px 32px 32px;border-radius:20px;background:var(--glass-bg-heavy, rgba(22, 18, 32, .85));border:1px solid var(--glass-border, rgba(255, 255, 255, .06));box-shadow:var(--glass-shadow-lg, 0 12px 48px rgba(0, 0, 0, .55));text-align:center;animation:explorerCardIn .5s var(--ease-out, ease-out)}.milestone-modal__icon{font-size:56px;line-height:1;margin-bottom:12px;animation:explorerIconBounce .6s cubic-bezier(.34,1.56,.64,1) .2s both}.milestone-modal__title{font-size:22px;font-weight:700;color:var(--text-primary, #F0E6FF);margin:0 0 8px}.milestone-modal__subtitle{font-size:15px;color:var(--text-secondary, rgba(240, 230, 255, .7));margin:0 0 24px;line-height:1.5}.milestone-modal__stages{display:flex;align-items:center;gap:4px;margin-bottom:24px;padding:0 8px}.milestone-modal__stage-dot{flex:1;height:6px;border-radius:3px;background:#f0e6ff1a;transition:background .3s ease}.milestone-modal__stage-dot--filled{background:var(--primary, #F59E0B);box-shadow:0 0 8px #f59e0b4d}.milestone-modal__stage-dot--current{background:var(--primary-light, #FBBF24);box-shadow:0 0 12px #f59e0b80}.milestone-modal__flame{font-size:48px;line-height:1;margin-bottom:8px;animation:milestoneFlameFloat 1.5s ease-in-out infinite alternate}@keyframes milestoneFlameFloat{0%{transform:translateY(0) scale(1);filter:drop-shadow(0 0 8px rgba(245,158,11,.4))}to{transform:translateY(-6px) scale(1.05);filter:drop-shadow(0 0 16px rgba(245,158,11,.7))}}.milestone-modal__continue{width:100%;padding:14px 24px;border-radius:12px;background:var(--primary, #F59E0B);color:var(--on-primary, #1A1625);border:none;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.milestone-modal__continue:hover{background:var(--primary-dark, #D97706);transform:translateY(-1px);box-shadow:0 4px 16px #f59e0b59}.milestone-modal__continue:focus-visible{outline:2px solid var(--primary-light, #FBBF24);outline-offset:2px}.growth-dashboard{display:flex;flex-direction:column;gap:16px;padding:20px;border-radius:var(--radius-xl, 16px);background:var(--bg-primary);border:1px solid var(--border);transition:border-color .15s ease}.growth-dashboard:hover{border-color:#f59e0b33}[data-theme=dark] .growth-dashboard{background:#1f1a2e80;border-color:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=dark] .growth-dashboard:hover{border-color:#f59e0b40}.growth-dashboard__header{display:flex;align-items:center;justify-content:space-between}.growth-dashboard__title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.growth-dashboard__stage-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:16px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.25);font-size:12px;font-weight:600;color:var(--primary, #F59E0B)}.growth-dashboard__stage-icon{font-size:14px;line-height:1}.growth-dashboard__points{display:flex;align-items:baseline;gap:8px}.growth-dashboard__points-value{font-size:36px;font-weight:700;color:var(--primary, #F59E0B);line-height:1}.growth-dashboard__points-label{font-size:14px;color:var(--text-tertiary)}.growth-dashboard__progress{display:flex;flex-direction:column;gap:6px}.growth-dashboard__progress-labels{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-tertiary)}.growth-dashboard__progress-bar{width:100%;height:6px;border-radius:3px;background:#f0e6ff14;overflow:hidden}.growth-dashboard__progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--primary-dark, #D97706),var(--primary, #F59E0B));transition:width .5s var(--ease-out, ease-out);box-shadow:0 0 8px #f59e0b4d}.growth-dashboard__transactions{display:flex;flex-direction:column;gap:8px}.growth-dashboard__transactions-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:4px 0 0}.growth-dashboard__tx{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border, rgba(255, 255, 255, .06))}.growth-dashboard__tx:last-child{border-bottom:none}.growth-dashboard__tx-desc{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.growth-dashboard__tx-points{font-size:13px;font-weight:600;color:var(--primary, #F59E0B);white-space:nowrap}.growth-dashboard__explorer{display:flex;flex-direction:column;gap:8px;margin-top:4px}.growth-dashboard__explorer-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0}.growth-dashboard__explorer-items{display:flex;flex-wrap:wrap;gap:6px}.growth-dashboard__explorer-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;color:var(--text-secondary);background:#f0e6ff0f;border:1px solid var(--glass-border-subtle, rgba(255, 255, 255, .04))}.growth-dashboard__explorer-badge--complete{background:#f59e0b1f;border-color:#f59e0b33;color:var(--primary, #F59E0B)}.insight-recap{display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:var(--radius-xl, 16px);background:var(--bg-primary);border:1px solid var(--border);min-height:120px}[data-theme=dark] .insight-recap{background:#1f1a2e80;border-color:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.insight-recap__header{display:flex;align-items:center;gap:8px}.insight-recap__icon{font-size:18px;color:var(--tertiary, #A78BFA)}.insight-recap__title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.insight-recap__content{position:relative;min-height:48px}.insight-recap__text{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0;animation:insightFadeIn .4s ease-out}@keyframes insightFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.insight-recap__empty{font-size:14px;color:var(--text-tertiary);font-style:italic;margin:0}.insight-recap__dots{display:flex;align-items:center;justify-content:center;gap:6px;padding:4px 0}.insight-recap__dot{width:6px;height:6px;border-radius:50%;background:#f0e6ff26;transition:background .2s ease}.insight-recap__dot--active{background:var(--tertiary, #A78BFA)}.hub-gamification{display:flex;flex-direction:column;gap:var(--spacing-md)}.hub-gamification__streak-card{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:var(--radius-xl, 16px);background:var(--bg-primary);border:1px solid rgba(245,158,11,.15)}[data-theme=dark] .hub-gamification__streak-card{background:#1f1a2e80;border-color:#f59e0b26;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.hub-gamification__streak-flame{font-size:36px;line-height:1;animation:streakFlameGlow 2s ease-in-out infinite}.hub-gamification__streak-info{display:flex;flex-direction:column;gap:2px}.hub-gamification__streak-count{font-size:20px;font-weight:700;color:var(--primary, #F59E0B)}.hub-gamification__streak-label{font-size:13px;color:var(--text-tertiary)}.hub-gamification__cards{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media(min-width:640px){.hub-gamification__cards{grid-template-columns:1fr 1fr}}@media(max-width:639px){.growth-dashboard__points-value{font-size:28px}.explorer-modal__card,.milestone-modal__card{margin:16px;padding:32px 20px 24px}}@media(prefers-reduced-motion:reduce){.streak-indicator__flame{animation:none}.points-toast{animation:none;opacity:1}.points-toast--exiting{animation:none;display:none}.explorer-modal__backdrop,.explorer-modal__card{animation:none}.explorer-modal__icon{animation:none;opacity:1}.explorer-modal__particle{animation:none;display:none}.milestone-modal__backdrop,.milestone-modal__card{animation:none}.milestone-modal__icon{animation:none;opacity:1}.milestone-modal__flame{animation:none}.growth-dashboard__progress-fill{transition:none}.insight-recap__text{animation:none}}
