*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #0d0d0d;--bg-secondary: #161616;--bg-tertiary: #1a1a1a;--bg-hover: #222;--border: #2a2a2a;--text-primary: #f5f5f5;--text-secondary: #a0a0a0;--text-muted: #666;--accent: #6366f1;--accent-hover: #4f46e5;--danger: #ef4444}html,body{overflow-x:hidden;width:100%;max-width:100vw}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.5}.app{display:flex;height:100vh;overflow:hidden;max-width:100vw}.app.loading,.app.error{justify-content:center;align-items:center}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--text-muted)}.loading-spinner .spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{text-align:center;padding:32px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--danger)}.error-message p{margin:0 0 12px}.error-hint{color:var(--text-muted);font-size:14px}.error-hint code{background:var(--bg-tertiary);padding:2px 8px;border-radius:4px;font-family:monospace}.error-message .btn{margin-top:16px}.sidebar{width:240px;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0)}.sidebar-header{padding:16px;display:flex;align-items:center;gap:8px;font-weight:600;border-bottom:1px solid var(--border)}.sidebar-nav{flex:1;overflow-y:auto;padding:12px 0}.sidebar-section{padding:0 8px;margin-bottom:16px}.sidebar-section-title{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-muted);padding:8px;display:flex;align-items:center;gap:6px}.sidebar-item{width:100%;padding:8px 12px;background:none;border:none;border-radius:6px;color:var(--text-secondary);font-size:14px;cursor:pointer;display:flex;align-items:center;gap:8px;text-align:left;transition:all .15s}.sidebar-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-item.active{background:var(--accent);color:#fff}.sidebar-item-icon{width:20px;text-align:center}.sidebar-item-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sidebar-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-empty{padding:8px 12px;color:var(--text-muted);font-size:13px}.sidebar-epic-row{display:flex;align-items:center;gap:4px}.sidebar-epic-row .sidebar-item{flex:1;min-width:0}.sidebar-epic-complete{padding:6px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:4px;opacity:0;transition:all .15s;flex-shrink:0}.sidebar-epic-row:hover .sidebar-epic-complete{opacity:1}.sidebar-epic-complete:hover{background:var(--bg-hover);color:#10b981}.sidebar-clear{margin:8px;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px}.sidebar-clear:hover{background:var(--bg-hover)}.sidebar-footer{padding:12px 16px;border-top:1px solid var(--border);font-size:12px;color:var(--text-muted);display:flex;flex-direction:column;gap:8px}.sidebar-reset{width:100%;padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s}.sidebar-reset:hover{background:var(--bg-hover);color:var(--text-primary)}.main{flex:1;display:flex;flex-direction:column;overflow:hidden;padding-top:env(safe-area-inset-top,0)}.header{padding:16px 24px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:12px}.header h1{font-size:18px;font-weight:600}.filter-badge{padding:4px 10px;background:var(--bg-tertiary);border-radius:12px;font-size:12px;color:var(--text-secondary)}.filter-badge.epic{background:var(--accent);color:#fff}.header-actions{display:flex;gap:8px}.btn{padding:8px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .15s,transform .1s,box-shadow .15s;border:none}.btn:active{transform:scale(.96)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 4px 12px #6366f14d}.btn-secondary{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-hover)}.btn-danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff;box-shadow:0 4px 12px #ef44444d}.create-menu-wrapper{position:relative}.create-menu-backdrop{position:fixed;inset:0;z-index:50}.create-menu{position:absolute;top:100%;right:0;margin-top:8px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:4px;min-width:160px;z-index:60;box-shadow:0 4px 12px #0000004d}.create-menu-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;background:none;border:none;border-radius:6px;color:var(--text-primary);font-size:14px;cursor:pointer;transition:background .15s}.create-menu-item:hover{background:var(--bg-hover)}.create-menu-item svg{color:var(--text-secondary)}.board{flex:1;display:flex;gap:16px;padding:24px;overflow-x:auto}.column{flex:0 0 300px;background:var(--bg-secondary);border-radius:8px;display:flex;flex-direction:column;max-height:100%}.column-over{background:var(--bg-tertiary);box-shadow:inset 0 0 0 2px var(--accent);border-radius:8px}.column-over .column-content{position:relative}.column-over .column-content:after{content:"";position:absolute;bottom:12px;left:12px;right:12px;height:4px;background:var(--accent);border-radius:2px;animation:dropPulse 1s ease-in-out infinite}.column-over .column-empty{border-color:var(--accent);background:#6366f11a}@keyframes dropPulse{0%,to{opacity:.5;transform:scaleX(.95)}50%{opacity:1;transform:scaleX(1)}}.column-header{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border)}.column-indicator{width:10px;height:10px;border-radius:50%}.column-title{font-size:13px;font-weight:600;flex:1}.column-count{background:var(--bg-tertiary);padding:2px 8px;border-radius:10px;font-size:11px;color:var(--text-muted)}.column-content{flex:1;padding:12px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.column-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:13px;border:2px dashed var(--border);border-radius:6px}.task-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:12px;cursor:grab;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,border-color .15s ease,opacity .15s ease}.task-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.task-card:active{transform:scale(.98);transition-duration:.1s}.task-card-dragging{opacity:1;box-shadow:0 8px 24px #0006,0 0 0 2px var(--accent),0 0 20px #6366f14d;cursor:grabbing;transform:rotate(2deg) scale(1.02);z-index:1000}.task-card-drop-target{position:relative}.task-card-drop-target:before{content:"";position:absolute;top:-6px;left:0;right:0;height:4px;background:var(--accent);border-radius:2px;animation:dropIndicatorPulse .8s ease-in-out infinite;box-shadow:0 0 8px #6366f180}@keyframes dropIndicatorPulse{0%,to{opacity:.7;transform:scaleX(.98)}50%{opacity:1;transform:scaleX(1)}}.task-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.task-id{font-size:11px;color:var(--text-muted);font-family:monospace}.drag-handle{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);cursor:grab;padding:4px;border-radius:4px;touch-action:none;transition:color .15s,background .15s}.drag-handle:hover{background:var(--bg-hover);color:var(--text-primary)}.drag-handle:active{cursor:grabbing;color:var(--accent)}.task-title{font-size:14px;font-weight:500;margin-bottom:6px;line-height:1.4}.task-description{font-size:12px;color:var(--text-secondary);margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-card-footer{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.task-project{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}.task-epic{padding:2px 8px;background:var(--bg-hover);border-radius:4px;font-size:11px;color:var(--text-secondary)}.task-priority{font-size:12px}.task-assignee{font-size:11px;padding:2px 6px;border-radius:4px;background:var(--bg-hover)}.task-assignee.aaron{color:#f59e0b}.assignee-avatar{width:16px;height:16px;border-radius:50%;vertical-align:middle;margin-right:4px}.task-assignee.andrew{color:#3b82f6}.task-blocked{font-size:11px;color:var(--danger)}.task-due{font-size:11px;color:var(--text-muted)}.task-due.overdue{color:var(--danger)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;animation:modalFadeIn .2s ease-out}.modal-overlay{animation:overlayFadeIn .15s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.modal-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:16px;font-weight:600}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px}.modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.modal form{padding:20px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:14px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.assignee-toggle{display:flex;gap:8px}.toggle-btn{flex:1;padding:10px 16px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}.toggle-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.toggle-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.modal-body{padding:20px;overflow-y:auto;flex:1}.modal-footer{display:flex;align-items:center;gap:8px;padding:16px 20px;border-top:1px solid var(--border);background:var(--bg-secondary)}.modal-footer-spacer{flex:1}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px;border-top:1px solid var(--border);margin-top:8px}.task-modal{display:flex;flex-direction:column}.task-modal form{display:flex;flex-direction:column;flex:1;min-height:0;padding:0}.menu-toggle{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer;padding:4px;border-radius:4px}.menu-toggle:hover{background:var(--bg-hover)}.sidebar-close{display:none;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;margin-left:auto}.sidebar-close:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-overlay{display:none}@media(max-width:767px){.main{max-width:100vw;overflow-x:hidden}.menu-toggle{display:flex;flex-shrink:0}.header-icon,.header h1 .title-prefix{display:none}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:200;transform:translate(-100%);transition:transform .25s ease-out;width:280px;max-width:85vw}.sidebar.sidebar-open{transform:translate(0)}.sidebar-close{display:flex}.sidebar-overlay{display:block;position:fixed;inset:0;background:#0009;z-index:150}.header{padding:12px;gap:8px}.header-left{gap:8px;min-width:0;flex-shrink:1}.header h1{font-size:16px;white-space:nowrap}.header-actions{gap:6px;flex-shrink:0}.header-actions .btn{padding:10px}.sidebar-epic-complete{opacity:.6}.sidebar-epic-row:hover .sidebar-epic-complete,.sidebar-epic-complete:active{opacity:1}.board{padding:12px;gap:12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.column{flex:0 0 calc(100vw - 24px);min-width:calc(100vw - 24px);scroll-snap-align:start}.filter-badge{display:none}.task-card{padding:10px}.task-title{font-size:13px}.task-description{font-size:11px;-webkit-line-clamp:1}.modal-overlay{padding:0;align-items:flex-end}.modal{position:relative;width:100%;max-width:100%;height:80vh;max-height:80vh;border-radius:16px 16px 0 0;display:flex;flex-direction:column;animation:slideUp .25s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}70%{transform:translateY(-3%)}to{transform:translateY(0)}}.task-modal .modal-body{flex:1;overflow-y:auto;padding:16px;-webkit-overflow-scrolling:touch}.task-modal .modal-footer{position:sticky;bottom:0;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0));flex-shrink:0}.form-group input,.form-group select,.form-group textarea{font-size:16px}.form-row{grid-template-columns:1fr;gap:12px}.assignee-toggle{flex-wrap:wrap}.toggle-btn{flex:1 1 45%;min-width:0}}.hub-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.hub-nav{display:flex;justify-content:space-around;align-items:center;background:var(--bg-secondary);border-top:1px solid var(--border);padding:8px 0;padding-bottom:calc(8px + env(safe-area-inset-bottom,0));flex-shrink:0}.nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 16px;color:var(--text-muted);text-decoration:none;font-size:11px;font-weight:500;transition:color .15s,transform .15s}.nav-item:hover{color:var(--text-secondary)}.nav-item:active{transform:scale(.92)}.nav-item.active{color:var(--accent)}.nav-item.active svg{transform:scale(1.1);transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.nav-item svg{stroke-width:1.5;transition:transform .15s}.coming-soon{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--text-muted)}.coming-soon h1{font-size:24px;margin-bottom:8px}.prompts-page{flex:1;display:flex;flex-direction:column;overflow:hidden}.prompts-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;padding-top:calc(16px + env(safe-area-inset-top,0));background:var(--bg-secondary);border-bottom:1px solid var(--border)}.prompts-header h1{font-size:20px;font-weight:600}.prompts-filters{padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.search-box{display:flex;align-items:center;gap:8px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:8px 12px;margin-bottom:12px}.search-box input{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:14px;outline:none}.search-box svg{color:var(--text-muted)}.filter-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.filter-chips::-webkit-scrollbar{display:none}.chip{display:flex;align-items:center;gap:4px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:20px;color:var(--text-secondary);font-size:13px;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .1s}.chip:hover{background:var(--bg-hover);transform:translateY(-1px)}.chip:active{transform:scale(.96)}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 8px #6366f14d}.prompts-loading,.prompts-empty{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--text-muted);padding:40px}.prompts-empty p{margin-bottom:16px}.prompts-list{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.prompt-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:border-color .15s,box-shadow .2s,transform .15s}.prompt-card:hover{border-color:var(--text-muted);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.prompt-card:active{transform:scale(.99)}.prompt-card.expanded{border-color:var(--accent);box-shadow:0 4px 20px #6366f126;transform:none}.prompt-card-header{padding:14px 16px;cursor:pointer}.prompt-title-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.prompt-category-badge{font-size:16px}.prompt-card h3{font-size:15px;font-weight:500;color:var(--text-primary)}.prompt-meta{display:flex;gap:12px;font-size:12px;color:var(--text-muted)}.prompt-variables{color:var(--accent)}.prompt-card-body{padding:12px 16px 16px;border-top:1px solid var(--border);margin-top:0;animation:expandIn .2s ease-out}@keyframes expandIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.prompt-content{background:var(--bg-tertiary);padding:12px;border-radius:8px;font-size:13px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;max-height:300px;overflow-y:auto;margin-bottom:12px}.prompt-variable-list{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.prompt-variable-list strong{color:var(--text-primary)}.prompt-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.tag{padding:3px 8px;background:var(--bg-tertiary);border-radius:4px;font-size:11px;color:var(--text-secondary)}.prompt-actions{display:flex;gap:8px;justify-content:flex-end}.btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.btn-icon:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-icon.copied{background:#22c55e;border-color:#22c55e;color:#fff}.btn-icon.favorite{color:#fbbf24}.btn-icon.danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}.prompt-modal .modal-body textarea{font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;line-height:1.6;resize:vertical}.app{flex:1;overflow:hidden}
