.login{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:1rem;position:relative;overflow:hidden}.login:before{content:"";position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:radial-gradient(circle,var(--bk-accent-light) 0%,transparent 70%);opacity:.15;animation:pulse 8s ease-in-out infinite}.login:after{content:"";position:absolute;bottom:-30%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,var(--bk-purple) 0%,transparent 70%);opacity:.1;animation:pulse 10s ease-in-out infinite reverse}.login-card{position:relative;z-index:1;background:var(--bk-surface);border-radius:var(--radius-xl);padding:3rem;box-shadow:var(--shadow-xl);text-align:center;max-width:440px;width:100%;animation:scaleIn .5s var(--transition-slow);border:1px solid var(--bk-border)}.login-logo{display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;filter:drop-shadow(0 10px 15px rgb(15 23 42 / .15))}.login-card h1{margin:0 0 .5rem;color:var(--bk-text);font-size:1.75rem;font-weight:700;letter-spacing:-.02em}.login-card p{margin:0 0 2rem;color:var(--bk-text-secondary);line-height:1.6;font-size:.95rem}.login-features{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;text-align:left}.login-feature{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bk-bg);border-radius:var(--radius-md);font-size:.9rem;color:var(--bk-text-secondary);transition:transform var(--transition-fast)}.login-feature:hover{transform:translate(4px)}.login-feature-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bk-surface);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);flex-shrink:0}.login-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;background:linear-gradient(135deg,var(--bk-accent) 0%,var(--bk-purple) 55%);color:#fff;text-decoration:none;padding:1rem 1.5rem;border-radius:var(--radius-lg);font-weight:600;font-size:1rem;transition:all var(--transition-base);box-shadow:var(--shadow-lg);border:none;cursor:pointer}.login-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.login-button:active{transform:translateY(0)}.login-footer{margin-top:1.5rem;font-size:.8rem;color:var(--bk-text-secondary)}@media (max-width: 768px){.login-card{padding:2rem 1.5rem}.login-card h1{font-size:1.5rem}}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;justify-content:center;gap:.25rem;padding:.35rem;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.user-menu-trigger:hover{background:var(--bk-surface-hover);border-color:var(--bk-border)}.user-avatar{width:36px;height:36px;background:linear-gradient(135deg,var(--bk-accent) 0%,var(--bk-purple) 55%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.85rem;flex-shrink:0}.user-menu-chevron{font-size:.7rem;color:var(--bk-text-muted)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:280px;background:var(--bk-surface);border:1px solid var(--bk-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:200;animation:scaleIn .2s var(--transition-slow);overflow:hidden}.user-menu-header{padding:1.25rem;background:linear-gradient(135deg,var(--bk-bg) 0%,var(--bk-surface) 100%);border-bottom:1px solid var(--bk-border)}.user-menu-header-top{display:flex;align-items:center;gap:.875rem;margin-bottom:.75rem}.user-menu-header .user-avatar{width:48px;height:48px;font-size:1.25rem}.user-menu-header-info{display:flex;flex-direction:column;min-width:0}.user-menu-header-name{font-weight:700;color:var(--bk-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-header-email{font-size:.85rem;color:var(--bk-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-id{font-size:.75rem;color:var(--bk-text-secondary);font-family:ui-monospace,SFMono-Regular,monospace;background:var(--bk-surface);padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--bk-border);word-break:break-all}.user-menu-section{padding:.75rem;border-bottom:1px solid var(--bk-border)}.user-menu-section-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--bk-text-secondary);margin-bottom:.5rem;padding:0 .5rem}.user-menu-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:var(--radius-md);font-size:.9rem;color:var(--bk-text-secondary);transition:all var(--transition-fast)}.user-menu-item:hover{background:var(--bk-surface-hover);color:var(--bk-text)}.user-menu-item-icon{font-size:1rem;width:20px;text-align:center}.user-menu-item.danger{color:var(--bk-danger);cursor:pointer;width:100%;border:none;background:transparent;font-family:inherit}.user-menu-item.danger:hover{background:#ef444414}.user-menu-jira{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#0ea5e914;border-radius:var(--radius-md);margin:.75rem;font-size:.85rem;color:var(--bk-text-secondary)}.user-menu-jira strong{color:var(--bk-accent)}@media (max-width: 768px){.user-menu-dropdown{position:fixed;top:auto;bottom:0;left:0;right:0;min-width:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:slideUp .25s var(--transition-slow);padding-bottom:env(safe-area-inset-bottom)}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:90;opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.sidebar-overlay.open{opacity:1;pointer-events:auto}.sidebar{width:var(--bk-sidebar-width);background:var(--bk-surface);border-right:1px solid var(--bk-border);display:flex;flex-direction:column;height:100vh;height:100dvh;box-shadow:var(--shadow-lg);z-index:100;animation:slideIn .3s var(--transition-slow)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--bk-border);background:linear-gradient(135deg,var(--bk-surface) 0%,var(--bk-bg) 100%);gap:var(--space-sm);flex-shrink:0}.sidebar-brand{display:flex;align-items:center;gap:var(--space-sm);min-width:0}.sidebar-logo{display:flex;align-items:center;justify-content:center;flex-shrink:0;filter:drop-shadow(0 1px 2px rgb(15 23 42 / .12))}.sidebar-brand-text{display:flex;flex-direction:column;min-width:0;gap:.1rem}.sidebar-header h2{margin:0;font-size:1.05rem;color:var(--bk-text);font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.sidebar-subtitle{font-size:.72rem;color:var(--bk-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-toolbar{padding:var(--space-md) var(--space-lg) 0;flex-shrink:0}.new-conversation-button{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-xs);background:linear-gradient(135deg,var(--bk-accent) 0%,var(--bk-purple) 55%);color:#fff;border:none;padding:.75rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:.9rem;transition:all var(--transition-fast);box-shadow:var(--shadow)}.new-conversation-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.new-conversation-button:active{transform:translateY(0) scale(.98)}.new-conversation-icon{font-size:1.05rem;line-height:1;transition:transform var(--transition-fast)}.new-conversation-button:hover .new-conversation-icon{transform:rotate(90deg)}.sidebar-search{display:flex;align-items:center;gap:var(--space-xs);margin:var(--space-md) var(--space-lg) 0;padding:.5rem .75rem;background:var(--bk-bg);border:1px solid var(--bk-border);border-radius:var(--radius-md);flex-shrink:0;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.sidebar-search:focus-within{border-color:var(--bk-accent);box-shadow:0 0 0 3px #0ea5e91a}.sidebar-search-icon{font-size:.8rem;opacity:.6;flex-shrink:0}.sidebar-search input{flex:1;border:none;background:transparent;outline:none;font-size:.85rem;color:var(--bk-text);min-width:0}.sidebar-search input::placeholder{color:var(--bk-text-muted)}.sidebar-list{flex:1;overflow-y:auto;padding:var(--space-md);display:flex;flex-direction:column;gap:.4rem}.empty{padding:2.5rem 1rem;color:var(--bk-text-secondary);text-align:center;font-size:.9rem;animation:fadeIn .4s var(--transition-slow)}.empty-icon{font-size:2rem;margin-bottom:.5rem;display:block}.empty p{margin:.35rem 0 0;font-size:.8rem}.conversation-item{display:flex;align-items:flex-start;gap:.65rem;width:100%;text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);padding:.7rem .75rem;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);animation:fadeIn .3s var(--transition-slow);animation-fill-mode:both}.conversation-item:hover{background:var(--bk-surface-hover);border-color:var(--bk-border);transform:translate(2px)}.conversation-item.active{background:var(--bk-bg);border-color:var(--bk-accent);box-shadow:var(--shadow-sm)}.conversation-item.active .conversation-title{color:var(--bk-text);font-weight:600}.conversation-icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0;margin-top:.05rem;background:var(--bk-bg);color:var(--bk-text-muted);border:1px solid var(--bk-border);transition:all var(--transition-fast)}.conversation-icon.created{background:#10b9811f;color:var(--bk-success);border-color:transparent}.conversation-icon.refining{background:#f59e0b1f;color:var(--bk-warning);border-color:transparent}.conversation-body{flex:1;min-width:0}.conversation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.conversation-title{font-weight:500;color:var(--bk-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;font-size:.92rem}.conversation-time{font-size:.72rem;color:var(--bk-text-secondary);flex-shrink:0}.conversation-header-right{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.conversation-edit-button{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;background:transparent;border-radius:var(--radius-sm);font-size:.75rem;cursor:pointer;opacity:0;transition:opacity var(--transition-fast),background var(--transition-fast)}.conversation-item:hover .conversation-edit-button,.conversation-item:focus-within .conversation-edit-button{opacity:1}.conversation-edit-button:hover{background:var(--bk-border)}@media (hover: none){.conversation-edit-button{opacity:1;width:28px;height:28px}}.conversation-title-input{flex:1;min-width:0;font-family:inherit;font-weight:500;font-size:.92rem;color:var(--bk-text);background:var(--bk-surface);border:1px solid var(--bk-accent);border-radius:var(--radius-sm);padding:.1rem .4rem}.conversation-title-input:focus{outline:none;box-shadow:0 0 0 2px #0ea5e926}.conversation-meta{display:flex;align-items:center;gap:.5rem;font-size:.8rem;flex-wrap:wrap}.status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .5rem;border-radius:999px;font-weight:500;font-size:.7rem}.status-badge.created{background:#10b9811f;color:var(--bk-text-secondary)}.status-badge.refining{background:#f59e0b1f;color:var(--bk-text-secondary)}.status-dot{width:6px;height:6px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-badge.created .status-dot{background:var(--bk-success)}.status-badge.refining .status-dot{background:var(--bk-warning)}.ticket-key{display:inline-flex;align-items:center;color:var(--bk-purple);text-decoration:none;font-weight:600;font-size:.75rem;transition:color var(--transition-fast)}.ticket-key:hover{color:var(--bk-accent);text-decoration:underline}@media (max-width: 768px){.sidebar-overlay{display:block}.sidebar{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform var(--transition-base);width:85%;max-width:340px;box-shadow:var(--shadow-xl)}.sidebar.open{transform:none}.sidebar-search input,.conversation-title-input{font-size:16px}}.chat{flex:1;display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bk-bg);position:relative}.chat:before{content:"";position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(180deg,var(--bk-surface) 0%,transparent 100%);pointer-events:none;z-index:0}.chat-header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--bk-surface);border-bottom:1px solid var(--bk-border);box-shadow:var(--shadow-sm)}.chat-header-left{display:flex;align-items:center;gap:var(--space-sm);min-width:0}.chat-header-right{display:flex;align-items:center;gap:var(--space-xs);flex-shrink:0}.back-button{display:none;width:36px;height:36px;background:var(--bk-bg);border:1px solid var(--bk-border);border-radius:var(--radius-md);font-size:1.1rem;cursor:pointer;color:var(--bk-text-secondary);transition:all var(--transition-fast);align-items:center;justify-content:center;flex-shrink:0}.back-button:hover{background:var(--bk-surface-hover);border-color:var(--bk-accent);color:var(--bk-accent)}.chat-avatar{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0;filter:drop-shadow(0 1px 2px rgb(15 23 42 / .12))}.chat-info{flex:1;min-width:0}.chat-info h3{margin:0;font-size:1rem;color:var(--bk-text);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-status{display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--bk-text-secondary)}.chat-status-dot{width:6px;height:6px;background:var(--bk-success);border-radius:50%;animation:pulse 2s ease-in-out infinite}.chat-stage-pill{display:inline-flex;align-items:center;padding:.3rem .65rem;border-radius:999px;font-weight:500;font-size:.72rem;white-space:nowrap}.chat-stage-pill.refining{background:#f59e0b1f;color:var(--bk-text-secondary)}.chat-stage-pill.created{background:#10b9811f;color:var(--bk-text-secondary)}.chat-ticket{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;background:#10b9811f;color:var(--bk-success);border-radius:999px;text-decoration:none;font-weight:600;font-size:.8rem;transition:all var(--transition-fast)}.chat-ticket:hover{background:#10b98133;transform:translateY(-1px)}.chat-messages{flex:1;overflow-y:auto;padding:var(--space-lg);display:flex;flex-direction:column;gap:1.1rem;position:relative;z-index:1}.welcome{text-align:center;color:var(--bk-text-secondary);margin:auto;max-width:420px;animation:fadeIn .5s var(--transition-slow)}.welcome-icon{font-size:3rem;margin-bottom:1rem;display:block}.welcome h3{margin:0 0 .5rem;color:var(--bk-text);font-size:1.25rem}.welcome p{margin:0 0 1.5rem;line-height:1.6}.welcome-tips{display:flex;flex-direction:column;gap:.5rem;text-align:left;font-size:.9rem}.welcome-tip{display:flex;align-items:center;gap:.65rem;padding:.6rem .85rem;background:var(--bk-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.welcome-tip:hover{transform:translate(4px)}.welcome-tip-index{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--bk-accent) 0%,var(--bk-purple) 55%);color:#fff;font-size:.75rem;font-weight:700;flex-shrink:0}.message{display:flex;gap:.75rem;max-width:85%;animation:fadeIn .35s var(--transition-slow)}.message.user{align-self:flex-end;flex-direction:row-reverse}.message.assistant{align-self:flex-start}.message-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;box-shadow:var(--shadow-sm)}.message.user .message-avatar{background:var(--bk-primary-light);color:#fff}.message.assistant .message-avatar{filter:drop-shadow(0 1px 2px rgb(15 23 42 / .12))}.message-stack{display:flex;flex-direction:column;gap:.3rem;min-width:0}.message.user .message-stack{align-items:flex-end}.message.assistant .message-stack{align-items:flex-start}.message-time{font-size:.7rem;color:var(--bk-text-secondary);padding:0 .35rem}.bubble{padding:.875rem 1.125rem;border-radius:var(--radius-lg);background:var(--bk-surface);color:var(--bk-text);box-shadow:var(--shadow);border:1px solid var(--bk-border);line-height:1.6;position:relative}.message.user .bubble{background:linear-gradient(135deg,var(--bk-accent) 0%,var(--bk-purple) 55%);color:#fff;border-color:transparent;border-bottom-right-radius:var(--radius-sm)}.message.assistant .bubble{border-bottom-left-radius:var(--radius-sm)}.message-text{margin:0;font-family:inherit;font-size:.95rem;overflow-wrap:anywhere}.md-paragraph{margin:0 0 .6rem}.md-paragraph:last-child{margin-bottom:0}.md-list{margin:0 0 .6rem;padding-left:1.2rem}.md-list:last-child{margin-bottom:0}.md-list li{margin-bottom:.2rem}.typing-bubble{display:flex;align-items:center;gap:.25rem;padding:.75rem 1rem;min-width:60px}.typing-dot{width:6px;height:6px;background:var(--bk-text-muted);border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.typing-dot:nth-child(3){animation-delay:0s}.chat-error{margin:0 1.25rem;padding:.75rem 1rem;color:var(--bk-danger);background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);font-size:.9rem;animation:fadeIn .3s var(--transition-slow)}.chat-input-area{position:relative;z-index:1;padding:var(--space-md) var(--space-lg) var(--space-lg);background:var(--bk-surface);border-top:1px solid var(--bk-border);display:flex;flex-direction:column;gap:.65rem;box-shadow:0 -4px 6px -1px #0f172a08}.ticket-banner{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-md);font-size:.9rem;color:var(--bk-success);animation:fadeIn .3s var(--transition-slow)}.ticket-banner-icon{font-size:1.1rem}.ticket-banner a{color:var(--bk-success);font-weight:600;text-decoration:none}.ticket-banner a:hover{text-decoration:underline}.ticket-step{position:relative;display:flex;flex-direction:column;gap:var(--space-sm);background:var(--bk-bg);border:1px solid var(--bk-border);border-radius:var(--radius-lg);padding:var(--space-md);animation:fadeIn .35s var(--transition-slow)}.ticket-step-header{display:flex;align-items:flex-start;gap:.6rem}.ticket-step-icon{width:30px;height:30px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.95rem;background:var(--bk-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.ticket-step-heading{display:flex;flex-direction:column;gap:.15rem;min-width:0}.ticket-step-title{font-size:.9rem;font-weight:700;color:var(--bk-text)}.ticket-step-subtitle{font-size:.78rem;color:var(--bk-text-secondary);line-height:1.4}.ticket-step-body{display:flex;flex-direction:column;gap:.65rem}.field-label{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--bk-text-secondary);margin-bottom:.3rem}.create-ticket-button{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;background:var(--bk-success);color:#fff;border:none;padding:.7rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:.92rem;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.create-ticket-button:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:var(--shadow)}.create-ticket-button:active:not(:disabled){transform:translateY(0) scale(.98)}.create-ticket-button:disabled{background:var(--bk-text-muted);cursor:not-allowed;opacity:.7}.epic-picker{position:relative;width:100%}.epic-input-wrap{position:relative}.epic-picker input{width:100%;padding:.625rem 2rem .625rem .875rem;border:1px solid var(--bk-border);border-radius:var(--radius-md);font-size:.9rem;background:var(--bk-surface);box-sizing:border-box;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.epic-picker input:focus{outline:none;border-color:var(--bk-accent);box-shadow:0 0 0 3px #0ea5e91a}.epic-clear{position:absolute;right:.25rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:var(--radius-sm);color:var(--bk-text-secondary);cursor:pointer;font-size:.85rem}.epic-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:240px;overflow-y:auto;background:var(--bk-surface);border:1px solid var(--bk-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);list-style:none;margin:0;padding:.35rem;z-index:20;transform-origin:top;animation:dropIn .18s var(--transition-base)}.epic-dropdown li{padding:.625rem .75rem;border-radius:var(--radius-sm);font-size:.85rem;color:var(--bk-text-secondary);cursor:pointer;transition:background var(--transition-fast)}.epic-dropdown li strong{color:var(--bk-text)}.epic-dropdown li:hover,.epic-dropdown li.active{background:var(--bk-surface-hover)}.input-row{display:flex;gap:.75rem;align-items:flex-end}.input-row textarea{flex:1;padding:.875rem 1rem;border:1px solid var(--bk-border);border-radius:var(--radius-lg);resize:none;font-family:inherit;font-size:.95rem;line-height:1.5;min-height:48px;max-height:160px;transition:all var(--transition-fast);background:var(--bk-bg)}.input-row textarea:focus{outline:none;border-color:var(--bk-accent);box-shadow:0 0 0 3px #0ea5e91a;background:var(--bk-surface)}.input-row button{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:linear-gradient(135deg,var(--bk-accent) 0%,var(--bk-purple) 55%);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:1.1rem;transition:all var(--transition-fast);box-shadow:var(--shadow);flex-shrink:0}.input-row button:hover:not(:disabled){transform:translateY(-2px) scale(1.02);box-shadow:var(--shadow-lg)}.input-row button:active:not(:disabled){transform:translateY(0) scale(.96)}.input-row button:disabled{background:var(--bk-text-muted);cursor:not-allowed;transform:none;box-shadow:none}.input-hint{font-size:.72rem;color:var(--bk-text-secondary);text-align:right;padding-right:.25rem}@media (max-width: 768px){.back-button{display:flex;width:44px;height:44px}.chat{width:100%}.message{max-width:92%}.chat-header-right{flex-direction:column;align-items:flex-end;gap:.3rem}.input-hint{display:none}.epic-picker input,.input-row textarea{font-size:16px}.chat-input-area{padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom))}}.app-layout{display:flex;min-height:100vh;min-height:100dvh;overflow:hidden}.mobile-menu-button{display:none;position:fixed;top:1rem;left:1rem;z-index:50;width:40px;height:40px;background:var(--bk-surface);border:1px solid var(--bk-border);border-radius:var(--radius-md);font-size:1.25rem;cursor:pointer;color:var(--bk-text-secondary);transition:all var(--transition-fast);box-shadow:var(--shadow);align-items:center;justify-content:center}.mobile-menu-button:hover{background:var(--bk-surface-hover);border-color:var(--bk-accent);color:var(--bk-accent)}.main-content{flex:1;display:flex;align-items:center;justify-content:center;position:relative}.empty-state{text-align:center;color:var(--bk-text-secondary);padding:2rem;max-width:420px;animation:fadeIn .5s var(--transition-slow)}.empty-state-icon{font-size:4rem;margin-bottom:1rem;display:block}.empty-state h2{color:var(--bk-text);margin-bottom:.75rem;font-size:1.5rem}.empty-state p{margin-bottom:1.5rem;line-height:1.6}.create-button{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--bk-accent) 0%,var(--bk-purple) 55%);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:var(--radius-lg);cursor:pointer;font-weight:600;font-size:1rem;transition:all var(--transition-fast);box-shadow:var(--shadow-lg)}.create-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.create-button:active{transform:translateY(0)}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;color:var(--bk-text-secondary);gap:1rem;animation:fadeIn .3s var(--transition-slow)}.loading-spinner{width:40px;height:40px;border:3px solid var(--bk-border);border-top-color:var(--bk-accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.mobile-menu-button{display:flex;width:44px;height:44px}.main-content{width:100%}}:root{--bk-primary: #0f172a;--bk-primary-light: #1e293b;--bk-accent: #0ea5e9;--bk-accent-light: #38bdf8;--bk-success: #10b981;--bk-warning: #f59e0b;--bk-danger: #ef4444;--bk-purple: #8b5cf6;--bk-blush: #fda4af;--bk-bg: #f8fafc;--bg-gradient-start: #f1f5f9;--bg-gradient-end: #e2e8f0;--bk-surface: #ffffff;--bk-surface-elevated: #ffffff;--bk-surface-hover: #f1f5f9;--bk-text: #0f172a;--bk-text-secondary: #475569;--bk-text-muted: #94a3b8;--bk-text-on-primary: #ffffff;--bk-border: #e2e8f0;--bk-border-light: #f1f5f9;--shadow-sm: 0 1px 2px 0 rgb(15 23 42 / .05);--shadow: 0 4px 6px -1px rgb(15 23 42 / .08), 0 2px 4px -2px rgb(15 23 42 / .04);--shadow-lg: 0 10px 15px -3px rgb(15 23 42 / .1), 0 4px 6px -4px rgb(15 23 42 / .08);--shadow-xl: 0 20px 25px -5px rgb(15 23 42 / .12), 0 8px 10px -6px rgb(15 23 42 / .08);--bk-sidebar-width: 340px;--bk-mobile-breakpoint: 768px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem}*{box-sizing:border-box}html{font-size:16px}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);background-attachment:fixed;color:var(--bk-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bk-text-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--bk-text-secondary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-4px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes dropIn{0%{opacity:0;transform:translateY(-6px) scaleY(.96)}to{opacity:1;transform:translateY(0) scaleY(1)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
