:root{--bg: #0d1117;--card: #161b22;--card-hover: #1c2129;--border: #30363d;--border-bright: #484f58;--text: #e6edf3;--text-dim: #8b949e;--text-muted: #6e7681;--blue: #4a90d9;--green: #3fb950;--yellow: #d29922;--rose: #f85149;--cyan: #39d2c0;--purple: #a371f7;--orange: #db6d28;--brand: #e85d4a}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text)}a{color:var(--brand)}[hidden]{display:none!important}.app-shell{max-width:1440px;margin:0 auto;padding:24px}.setup-banner{margin-bottom:18px;padding:14px 16px;border-radius:12px;border:1px solid rgba(210,153,34,.35);background:#d299221f;color:#f6d58e;font-size:13px}.auth-screen{min-height:calc(100vh - 48px);display:flex;align-items:center;justify-content:center}.auth-card{width:min(440px,100%);padding:28px;background:linear-gradient(135deg,#0d1520,#111827,#0d1520);border:1px solid rgba(232,93,74,.25);border-radius:18px;box-shadow:0 22px 60px #00000059}.auth-card h1{font-size:28px;font-weight:800;margin:0 0 8px;background:linear-gradient(135deg,#e85d4a,#f5937a,#d29922);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-card p{color:var(--text-dim);font-size:13px;margin:0 0 18px}.auth-meta{margin-bottom:18px;padding:12px 14px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;font-size:13px;color:var(--text-dim)}.auth-meta strong{color:var(--text);display:block;margin-bottom:4px}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:8px;font-size:12px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.auth-form input{width:100%;border:1px solid var(--border);border-radius:10px;background:#0d1117e0;color:var(--text);padding:12px 14px;font-size:14px}.auth-form input:focus{outline:none;border-color:#e85d4a99;box-shadow:0 0 0 3px #e85d4a1f}.button-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.button,.ghost-button{border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.button{border:1px solid rgba(232,93,74,.5);background:linear-gradient(135deg,#e85d4a40,#d299222e);color:#fff}.button:hover{filter:brightness(1.08)}.button:disabled,.ghost-button:disabled{opacity:.5;cursor:not-allowed}.ghost-button{border:1px solid var(--border);background:#ffffff08;color:var(--text-dim)}.ghost-button:hover{color:var(--text);border-color:var(--border-bright);background:#ffffff0d}.auth-message{min-height:20px;font-size:13px;color:var(--text-muted)}.auth-message.error,.sync-status.error{color:#ff938c}.auth-message.success,.sync-status.success{color:#7ee787}.sync-status{text-align:center;min-height:18px;font-size:12px;color:var(--text-muted);margin-bottom:14px}.board-header{text-align:center;margin-bottom:28px;padding:36px 32px 28px;background:linear-gradient(135deg,#0d1520,#111827,#0d1520);border-radius:16px;border:1px solid rgba(232,93,74,.2);position:relative;overflow:hidden}.board-header:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 30% 50%,rgba(232,93,74,.08) 0%,transparent 70%),radial-gradient(ellipse 60% 50% at 70% 50%,rgba(210,153,34,.05) 0%,transparent 70%);pointer-events:none}.board-header-row{position:relative;display:flex;justify-content:center;align-items:flex-start}.board-header-copy{position:relative}.board-header h1{font-size:32px;font-weight:800;margin:0 0 4px;background:linear-gradient(135deg,#e85d4a,#f5937a,#d29922);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.board-header p{color:var(--text-dim);font-size:13px;margin:0}.header-actions{position:absolute;top:0;right:0;display:flex;align-items:center;gap:10px;z-index:1}.session-badge{padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--text-dim);font-size:12px}.session-badge strong{color:var(--text)}.board-content-root{line-height:1.5}.board-content-root .tabs{display:flex;gap:6px;justify-content:center;margin-bottom:28px;flex-wrap:wrap}.board-content-root .tab{padding:9px 20px;border-radius:10px;background:var(--card);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.board-content-root .tab:hover{background:var(--card-hover);color:var(--text);border-color:var(--border-bright)}.board-content-root .tab.active{background:linear-gradient(135deg,#e85d4a40,#d2992226);color:#fff;border-color:#e85d4a80;box-shadow:0 0 16px #e85d4a26,inset 0 1px #ffffff0f;font-weight:600}.board-content-root .view{display:none}.board-content-root .view.active{display:block}.board-content-root section{margin-bottom:32px}.board-content-root section>h2{font-size:16px;font-weight:700;margin-bottom:16px;color:var(--text);display:flex;align-items:center;gap:10px}.board-content-root section>h2:before{content:"";display:inline-block;width:4px;height:20px;border-radius:2px;flex-shrink:0}.board-content-root .sec-tasks>h2:before,.board-content-root .sec-recon>h2:before,.board-content-root .sec-dimensions>h2:before{background:var(--brand);box-shadow:0 0 8px #e85d4a66}.board-content-root .sec-decisions>h2:before,.board-content-root .sec-arch>h2:before,.board-content-root .sec-quality>h2:before{background:var(--yellow);box-shadow:0 0 8px #d2992266}.board-content-root .sec-waiting>h2:before,.board-content-root .sec-discovery>h2:before{background:var(--rose);box-shadow:0 0 8px #f8514966}.board-content-root .sec-product>h2:before,.board-content-root .sec-discuss>h2:before,.board-content-root .sec-meetings>h2:before{background:var(--purple);box-shadow:0 0 8px #a371f766}.board-content-root .sec-stack>h2:before,.board-content-root .sec-web>h2:before{background:var(--cyan);box-shadow:0 0 8px #39d2c066}.board-content-root .sec-team>h2:before{background:var(--blue);box-shadow:0 0 8px #4a90d966}.board-content-root .sec-locked>h2:before,.board-content-root .sec-tests>h2:before,.board-content-root .sec-monetize>h2:before{background:var(--green);box-shadow:0 0 8px #3fb95066}.board-content-root .sec-business>h2:before,.board-content-root .sec-customer>h2:before{background:var(--orange);box-shadow:0 0 8px #db6d2866}.board-content-root .two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.board-content-root .three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.board-content-root .four-col{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.board-content-root .card,.board-content-root .product-card,.board-content-root .team-card,.board-content-root .recon-section,.board-content-root .timeline-item,.board-content-root .decision-item,.board-content-root .waiting-item,.board-content-root .task-item{background:var(--card);border:1px solid var(--border)}.board-content-root .card,.board-content-root .recon-section,.board-content-root .product-card,.board-content-root .team-card{border-radius:12px;padding:18px}.board-content-root .recon-section{margin-bottom:28px}.board-content-root .card:hover,.board-content-root .team-card:hover,.board-content-root .task-item:hover{background:var(--card-hover)}.board-content-root .task-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:10px;margin-bottom:8px;transition:all .2s;cursor:pointer}.board-content-root .task-item.checked{opacity:.45}.board-content-root .task-item.checked .task-label{text-decoration:line-through}.board-content-root .task-item input[type=checkbox]{margin-top:3px;accent-color:var(--brand);width:16px;height:16px;flex-shrink:0;cursor:pointer}.board-content-root .task-label{font-size:14px;color:var(--text);line-height:1.5}.board-content-root .task-label .blocked{font-size:12px;color:var(--rose);display:block;margin-top:2px}.board-content-root .owner-groups{display:grid;gap:14px}.board-content-root .owner-group{background:#ffffff05;border:1px solid var(--border);border-radius:12px;padding:14px}.board-content-root .owner-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.board-content-root .owner-group-title{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text)}.board-content-root .owner-group-count{font-size:12px;font-weight:700;color:#f8fbff;border:1px solid rgba(74,144,217,.35);border-radius:999px;padding:4px 10px;background:linear-gradient(135deg,#4a90d938,#a371f72e);box-shadow:inset 0 1px #ffffff14}.board-content-root .owner-group .task-item:last-child{margin-bottom:0}.board-content-root .decision-item,.board-content-root .timeline-item{border-left:3px solid var(--yellow);border-radius:10px;margin-bottom:10px;padding:14px 16px}.board-content-root .timeline-item{border-left-color:var(--brand);margin-bottom:12px}.board-content-root .decision-item strong,.board-content-root .timeline-item .title{color:var(--text);font-size:15px}.board-content-root .decision-item p,.board-content-root .timeline-item .desc,.board-content-root .waiting-item{color:#f5f8fcd1;font-size:14px;line-height:1.6}.board-content-root .waiting-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;margin-bottom:8px}.board-content-root .monetization-copy{font-size:14px;color:#f5f8fcd6;line-height:1.75}.board-content-root .monetization-copy strong{color:var(--text);font-size:14px}.board-content-root .waiting-dot{width:8px;height:8px;border-radius:50%;background:var(--rose);flex-shrink:0;animation:pulse 2s ease-in-out infinite}.board-content-root .product-card{border-radius:14px;padding:22px;position:relative;overflow:hidden}.board-content-root .product-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:14px 14px 0 0}.board-content-root .product-card.pc-recon:before{background:linear-gradient(90deg,var(--brand),rgba(232,93,74,.3))}.board-content-root .product-card.pc-web:before{background:linear-gradient(90deg,var(--blue),rgba(74,144,217,.3))}.board-content-root .product-card.pc-mobile:before{background:linear-gradient(90deg,var(--purple),rgba(163,113,247,.3))}.board-content-root .recon-section.priority-red{border-left:3px solid var(--rose)}.board-content-root .recon-section.priority-yellow{border-left:3px solid var(--yellow)}.board-content-root .recon-section.priority-green{border-left:3px solid var(--green)}.board-content-root .recon-section.priority-purple{border-left:3px solid var(--purple)}.board-content-root .recon-section.priority-cyan{border-left:3px solid var(--cyan)}.board-content-root .data-table{width:100%;border-collapse:collapse;font-size:13px}.board-content-root .data-table th{text-align:left;padding:10px 14px;background:#ffffff08;color:var(--text-dim);font-weight:600;border-bottom:1px solid var(--border)}.board-content-root .data-table td{padding:10px 14px;border-bottom:1px solid rgba(48,54,61,.4);color:var(--text-dim)}.board-content-root .data-table td strong{color:var(--text)}.board-content-root .team-card{border-radius:14px;padding:22px;text-align:center;transition:all .2s}.board-content-root .team-card .avatar{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 12px;border:2px solid var(--border-bright)}.board-content-root .team-card .name{font-size:16px;font-weight:700;color:var(--text);margin-bottom:4px}.board-content-root .team-card .role{font-size:13px;color:var(--text-dim);margin-bottom:8px}.board-content-root .team-card .detail{font-size:12px;color:var(--text-muted);line-height:1.5}.board-content-root .timeline-item .date{font-size:12px;color:var(--brand);font-weight:600;font-family:monospace;margin-bottom:4px}.board-content-root .insight-box{background:linear-gradient(135deg,#e85d4a0f,#d299220a);border:1px solid rgba(232,93,74,.15);border-radius:12px;padding:18px;margin-top:12px}.board-content-root .insight-box .label{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--brand);font-weight:600;margin-bottom:6px}.board-content-root footer{text-align:center;padding:32px 0 16px;color:var(--text-muted);font-size:12px;border-top:1px solid var(--border);margin-top:40px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@media(max-width:900px){.board-content-root .two-col,.board-content-root .three-col,.board-content-root .four-col{grid-template-columns:1fr}}@media(min-width:901px)and (max-width:1100px){.board-content-root .three-col,.board-content-root .four-col{grid-template-columns:1fr 1fr}}@media(max-width:760px){.app-shell{padding:16px}.board-header-row{display:block;text-align:center}.header-actions{position:static;justify-content:center;margin-top:14px}}
