@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;600&family=Source+Code+Pro:wght@400;600&display=swap";:root{--bg:#0b111a;--panel:#111827;--panel-soft:#0f172a;--panel-elev:#0f172a;--ink:#e5e7eb;--muted:#94a3b8;--accent:#38bdf8;--accent-2:#22c55e;--line:#1f2937;--warn:#f59e0b;--danger:#ef4444;--nav:#0b1220;--nav-ink:#e2e8f0;--nav-link:#cbd5f5;--pill-bg:#38bdf829;--pill-ink:#7dd3fc;--tag-bg:#38bdf824;--tag-ink:#7dd3fc;--input-bg:#0b1220;--button-bg:#0f172a;--button-ink:#e5e7eb;--accent-border:#38bdf866;--danger-bg:#ef44442e;--danger-border:#ef44444d;--danger-ink:#fecaca;--badge-bg:#94a3b840;--badge-ink:#e2e8f0;--overlay:#020617b3}:root[data-theme=light]{--bg:#f3f4f6;--panel:#fff;--panel-soft:#f8fafc;--panel-elev:#fff;--ink:#111827;--muted:#6b7280;--accent:#0ea5e9;--accent-2:#22c55e;--line:#e5e7eb;--warn:#f59e0b;--danger:#ef4444;--nav:#0f172a;--nav-ink:#e2e8f0;--nav-link:#cbd5f5;--pill-bg:#e0f2fe;--pill-ink:#0369a1;--tag-bg:#e0f2fe;--tag-ink:#0369a1;--input-bg:#f8fafc;--button-bg:#f8fafc;--button-ink:#111827;--accent-border:#0ea5e966;--danger-bg:#fee2e2;--danger-border:#fecaca;--danger-ink:#b91c1c;--badge-bg:#e2e8f0;--badge-ink:#1e293b;--overlay:#0f172a8c}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif}#root{min-height:100vh}a{color:inherit;text-decoration:none}.app{grid-template-rows:auto 1fr;min-height:100vh;display:grid}.topbar{background:var(--nav);color:var(--nav-ink);z-index:10;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0;box-shadow:0 10px 24px #0f172a33}.topbar-nav{align-items:center;gap:8px;display:flex}.topbar-right{align-items:center;gap:10px;display:flex}.brand{letter-spacing:.4px;font-size:18px;font-weight:600}.topbar .pill{background:#ffffff14;border:1px solid #94a3b84d;border-radius:999px;padding:6px 12px;font-size:12px}.spacer{flex:1}.container{gap:20px;width:min(1200px,94vw);margin:24px auto 48px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 8px 16px #0f172a2e}.sprint-focus{border-color:var(--accent);background:linear-gradient(#38bdf814,#0f172a05);box-shadow:0 12px 26px #38bdf82e,0 8px 16px #0f172a33}.sprint-tasks{background:linear-gradient(#38bdf824,#0f172a0a);border-width:2px;position:relative;box-shadow:0 18px 36px #38bdf838,0 12px 22px #0f172a3d}.sprint-tasks:before{content:"";pointer-events:none;border:1px solid #38bdf880;border-radius:18px;position:absolute;inset:-1px}.sprint-tasks .section-title h2{font-size:20px}.section-title{align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-title h2{margin:0;font-size:18px}.section-title h3{margin:0;font-size:16px}.muted{color:var(--muted);font-size:13px}.grid{gap:16px;display:grid}.grid.two{grid-template-columns:1fr 2fr}.grid.three{grid-template-columns:repeat(3,1fr)}.pill{background:var(--pill-bg);color:var(--pill-ink);border:1px solid var(--accent-border);border-radius:999px;padding:4px 10px;font-size:12px}.form{gap:10px;display:grid}.form.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form.compact .full{grid-column:1/-1}.field{gap:6px;display:grid}@media (width<=900px){.form.compact{grid-template-columns:1fr}}.label{color:var(--muted);font-size:12px}.input,.textarea,.select{border:1px solid var(--line);background:var(--input-bg);width:100%;color:var(--ink);border-radius:12px;padding:10px 12px;font-family:IBM Plex Sans,Segoe UI,sans-serif;font-size:14px}.textarea{resize:vertical;min-height:110px}.btn{border:1px solid var(--line);background:var(--button-bg);color:var(--button-ink);cursor:pointer;border-radius:10px;padding:10px 14px;font-size:14px;transition:transform .1s,box-shadow .1s}.btn.icon{text-align:center;min-width:30px;padding:6px 8px;font-size:14px;line-height:1}.icon-svg{display:block}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 12px #0f172a1f}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.ghost{border-color:var(--accent-border);color:var(--accent);background:0 0}.btn.danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-ink)}.sprint-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sprint-hero{gap:4px;padding:6px 10px;display:grid}.sprint-hero .section-title{flex-wrap:wrap;gap:4px 8px;margin-bottom:0}.sprint-hero .sprint-meta{gap:6px;margin:0}.sprint-hero .tag{padding:2px 6px;font-size:11px}.sprint-hero h2{font-size:16px;line-height:1.1}.sprint-hero .section-title .btn{padding:6px 10px;font-size:12px}.panel{background:var(--panel-soft);border:1px solid var(--line);border-radius:14px;gap:10px;padding:14px;display:grid}.data-section{gap:12px;margin-top:18px;display:grid}.data-section h3{margin:0;font-size:16px}.data-list{gap:8px;display:grid}.data-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.data-row.data-row-head{border-bottom:1px solid var(--line);color:var(--muted);padding:0 4px 6px;font-weight:600}.data-row.data-row-head .label{text-transform:uppercase;letter-spacing:.04em;font-size:11px}.data-row .input,.data-row .select{flex:160px;min-width:160px}.data-actions{gap:6px;display:flex}.data-add{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.data-add .input,.data-add .select{flex:160px;min-width:160px}.tree-list{gap:8px;display:grid}.tree-row{border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;grid-template-columns:2fr .9fr 1fr .8fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.tree-row.is-draggable{cursor:grab}.tree-row.is-draggable:active{cursor:grabbing}.tree-row.is-dragging{opacity:.6}.tree-main{gap:4px;display:grid}.tree-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tree-toggle{border:1px solid var(--line);background:var(--panel);width:20px;height:20px;color:var(--muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tree-toggle.placeholder{opacity:0;pointer-events:none}.tree-number{background:var(--badge-bg);color:var(--badge-ink);border-radius:999px;padding:2px 6px;font-family:Source Code Pro,monospace;font-size:11px}.tree-title{font-weight:600}.tree-title-action{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.tree-title-action:hover{text-decoration:underline}.tree-title-action:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px;border-radius:6px}.tree-meta{color:var(--muted);font-size:12px}.tag{background:var(--tag-bg);color:var(--tag-ink);border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.board{grid-template-columns:repeat(6,1fr);align-items:start;gap:12px;display:grid}.column{background:var(--panel-soft);border:1px solid var(--line);border-radius:14px;min-height:260px;padding:10px}.column.is-drop{border-color:var(--accent);box-shadow:0 0 0 2px #38bdf833}.column h4{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin:0 0 8px;font-size:13px}.task-card{background:var(--panel);border:1px solid var(--line);cursor:grab;border-radius:12px;gap:6px;margin-bottom:8px;padding:10px;display:grid}.task-card:active{cursor:grabbing}.task-card.is-dragging{opacity:.6}.sd-section{gap:12px;margin-top:16px;display:grid}.sd-list{gap:10px;display:grid}.sd-task.is-static{cursor:default}.sd-header{align-items:center;gap:8px;display:flex}.sd-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sd-case{color:var(--muted);font-size:12px}.sd-controls{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;display:grid}.task-number{background:var(--badge-bg);color:var(--badge-ink);border-radius:999px;justify-content:center;align-items:center;margin-right:6px;padding:2px 6px;font-family:Source Code Pro,monospace;font-size:11px;display:inline-flex}.tree-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.link{color:var(--accent);font-size:13px;text-decoration:underline}.task-actions{justify-content:flex-end;gap:6px;display:flex}.filter-toggle{align-items:center;gap:6px;display:flex}.archive-list{gap:8px;display:grid}.archive-item{border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;gap:4px;padding:10px 12px;display:grid}.archive-title{font-size:14px;font-weight:600}.archive-meta{color:var(--muted);gap:4px;font-size:12px;display:grid}.assignee-block{gap:12px;display:grid}.assignee-list,.assignee-form{gap:8px;display:grid}.assignee-row{border:1px solid var(--line);background:var(--panel-soft);border-radius:10px;gap:2px;padding:8px 10px;display:grid}.assignee-name{font-size:13px;font-weight:600}.assignee-role{color:var(--muted);font-size:12px}.assignee-select{gap:8px;display:grid}.assignee-chip{border:1px solid var(--line);background:var(--panel-soft);cursor:pointer;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;padding:8px 10px;font-size:13px;display:grid}.assignee-chip input{margin:0}.assignee-chip.is-selected{border-color:var(--accent-border);background:#38bdf81f}.error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-ink);border-radius:10px;padding:8px 10px;font-size:12px}.status-info{color:var(--muted);padding:4px 0 2px;font-size:12px}.btn-xs{padding:6px 10px;font-size:12px}.modal-overlay{background:var(--overlay);z-index:1000;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border-radius:16px;width:min(640px,96vw);max-height:90vh;padding:18px;overflow:auto;box-shadow:0 16px 40px #0f172a40}.modal.modal-wide{width:min(980px,96vw)}.modal-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.modal-header h3{margin:0 0 4px}.modal-header-actions{align-items:center;gap:8px;display:flex}.modal-actions{justify-content:space-between;gap:8px;display:flex}.status-meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin-top:6px;font-size:12px;display:flex}.accordion{border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;overflow:hidden}.accordion summary{cursor:pointer;padding:8px 10px;font-size:13px;font-weight:600;list-style:none}.accordion summary::-webkit-details-marker{display:none}.accordion[open] summary{border-bottom:1px solid var(--line)}.accordion-body{gap:10px;padding:10px;display:grid}.file-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.file-list li{justify-content:space-between;align-items:center;gap:8px;display:flex}.history-list{gap:10px;display:grid}.history-item{border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.history-status{font-size:13px;font-weight:600}.history-date{color:var(--muted);font-size:12px}.drop-zone{border:1px dashed var(--accent-border);background:var(--panel-soft);text-align:center;color:var(--muted);border-radius:12px;gap:8px;margin-bottom:12px;padding:12px;display:grid}.drop-zone.is-active{border-color:var(--accent);color:var(--ink);background:#38bdf81a}.drop-title{font-size:13px}.task-title{font-size:14px;font-weight:600}.task-meta{color:var(--muted);font-size:12px}.status-dot{border-radius:999px;width:8px;height:8px;display:inline-block}.dot-backlog{background:#94a3b8}.dot-new{background:#38bdf8}.dot-progress{background:#f59e0b}.dot-testing{background:#8b5cf6}.dot-done{background:#22c55e}.dot-paused{background:#ef4444}.details{gap:10px;display:grid}.mono{font-family:Source Code Pro,monospace}.empty{text-align:center;color:var(--muted);padding:24px}@media (width<=1100px){.board{grid-template-columns:repeat(2,1fr)}.grid.two,.grid.three{grid-template-columns:1fr}}@media (width<=720px){.board,.tree-row{grid-template-columns:1fr}}.auth-card{align-self:start;max-width:420px;margin:0 auto;padding:12px}.auth-card .section-title{margin-bottom:8px}.auth-card .form{gap:8px}.inline-check{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.inline-check input{margin:0}
