:root{--font-sans:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--bg:#f5f6f8;--surface:#fff;--column:#ebedf1;--border:#e3e6eb;--border-strong:#d4d8df;--ink:#161a21;--ink-2:#2b313b;--ink-3:#3d4552;--muted:#5b6472;--subtle:#f1f3f6;--sidebar:#161a21;--sidebar-text:#c9ced6;--sidebar-muted:#8a93a1;--sidebar-active:#2a303a;--brand:#e30d1a;--accent:#c2410c;--accent-hover:#9a3412;--accent-soft:#fff1e8;--accent-ink:#8a2e08;--shared:#0f766e;--shared-soft:#e3f4f2;--shared-ink:#0f5f58;--bug:#b91c1c;--bug-soft:#fdecec;--task:#1d4ed8;--task-soft:#e8eefd;--story:#6d28d9;--story-soft:#f0eafd;--idea:#a16207;--idea-soft:#fdf6e3;--done:#15803d;--ins:#e7f6ec;--ins-ink:#14532d;--del:#fdecec;--del-ink:#991b1b;--radius-sm:6px;--radius:8px;--radius-lg:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45}a{color:var(--accent)}a:hover{color:var(--accent-hover)}h1,h2,h3,p{margin:0}code,kbd,.mono{font-family:var(--font-mono)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);min-height:40px;color:var(--ink);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--subtle);color:var(--ink)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border:0;font-weight:600}.btn-primary:hover{background:var(--accent-hover);color:#fff}.btn-danger{border-color:var(--bug);color:var(--bug)}.btn-danger:hover{background:var(--bug-soft);color:var(--bug)}.btn-lg{min-height:44px;padding:0 18px}.btn-sm{min-height:36px;color:var(--ink-3);border-color:var(--border);padding:0 12px;font-size:13px}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--subtle)}.icon-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;width:44px;height:44px;color:var(--ink);flex:none;place-items:center;display:grid;position:relative}.icon-btn:hover{background:var(--subtle)}.icon-btn-sm{background:0 0;border-color:#0000;width:32px;height:32px}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}.link-btn:hover{color:var(--accent-hover);text-decoration:underline}.field{flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.field .hint{color:var(--muted);margin-left:4px;font-weight:400}.input,.select,.textarea{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;min-height:44px;padding:0 12px;font-size:14px;font-weight:400}.select{padding:0 10px}.textarea{resize:vertical;min-height:80px;padding:10px 12px;line-height:1.5}.input:disabled,.select:disabled{background:var(--subtle);color:var(--muted)}.check{color:var(--ink-3);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.check input{width:18px;height:18px;accent-color:var(--accent);margin:0}.error-text{color:var(--bug);font-size:13px}.muted{color:var(--muted)}.form-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.form-row>*{flex:160px}.stack{flex-direction:column;gap:16px;display:flex}.badge{white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.type-bug{color:var(--bug);background:var(--bug-soft)}.type-task{color:var(--task);background:var(--task-soft)}.type-story{color:var(--story);background:var(--story-soft)}.type-idea{color:var(--idea);background:var(--idea-soft)}.badge-shared{color:var(--shared);background:0 0;padding:0}.badge-shared-soft{color:var(--shared);background:var(--shared-soft);padding:1px 5px;font-size:10px}.badge-staff{color:var(--accent-ink);background:var(--accent-soft);padding:3px 8px;font-size:12px}.badge-external{color:var(--ink-3);background:#eef0f3;padding:3px 8px;font-size:12px}.badge-internal{color:var(--ink-3);background:var(--border)}.badge-role{color:var(--ink-3);background:var(--subtle);padding:3px 8px;font-size:12px}.badge-client{color:var(--accent-ink);background:var(--accent-soft)}.badge-waiting{color:var(--story);background:var(--story-soft)}.badge-approver{color:var(--shared-ink);background:var(--shared-soft);font-size:11px}.badge.status-backlog,.badge.status-todo{color:var(--ink-3);background:var(--subtle)}.badge.status-in_progress{color:var(--accent-ink);background:var(--accent-soft)}.badge.status-review{color:var(--story);background:var(--story-soft)}.badge.status-done{color:var(--ins-ink);background:var(--ins)}.banner-approval{background:var(--story-soft);color:var(--ink-2);border:1px solid #ddd0f7;margin-bottom:14px}.banner-approved{background:var(--ins);color:var(--ins-ink);margin-bottom:14px}.plain-list{flex-direction:column;gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.plain-list li{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.plain-list .key{font-family:var(--font-mono);color:var(--muted);margin-right:4px;font-size:12px}.plain-fieldset{border:0;min-width:0;margin:0;padding:0}.field-title{color:var(--ink-2);padding:0;font-size:13px;font-weight:600}.check-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 16px;display:grid}.guest-overview{flex-wrap:wrap;gap:12px;padding:0 28px 12px;display:flex}.guest-overview>*{flex:320px;min-width:0}.guest-overview h2{margin:0 0 8px;font-size:15px}.guest-overview .count{color:var(--muted);font-weight:500}.guest-approvals{border-color:#ddd0f7}.guest-requests summary{cursor:pointer;margin-bottom:8px;font-size:15px}@media (width<=720px){.guest-overview{padding:0 16px 12px}}.progress{background:var(--subtle);border-radius:4px;height:8px;overflow:hidden}.progress>span{background:var(--done);border-radius:4px;height:100%;display:block}.milestone-card{flex-direction:column;gap:10px;display:flex}.milestone-card.closed{opacity:.7}.milestone-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.milestone-head h2{margin:0;font-size:17px}.milestone-head h2 a{color:var(--ink);text-decoration:none}.milestone-head h2 a:hover{text-decoration:underline}.milestone-meta{color:var(--muted);flex-wrap:wrap;gap:6px 16px;font-size:13px;display:flex}.milestone-meta .overdue,.guest-milestone .overdue{color:var(--bug);font-weight:600}.doc-with-comments{align-items:flex-start;gap:20px;display:flex}.doc-with-comments>.doc-body{flex:auto;min-width:0}.page-comments{flex:0 0 340px;max-height:calc(100vh - 32px);position:sticky;top:16px;overflow-y:auto}.page-comment.resolved{opacity:.65}.comment-quote{border-left:3px solid var(--border-strong);color:var(--ink-3);white-space:pre-wrap;margin:4px 0;padding:4px 10px;font-size:13px;font-style:italic}.selection-comment{z-index:30;position:absolute;transform:translate(-50%);box-shadow:0 2px 8px #00000026}.count-badge{background:var(--accent);color:#fff;text-align:center;border-radius:9px;min-width:18px;margin-left:4px;padding:0 5px;font-size:11px;line-height:18px;display:inline-block}@media (width<=900px){.doc-with-comments{flex-direction:column}.page-comments{flex-basis:auto;width:100%;max-height:none;position:static}}a.ticket-ref{font-family:var(--font-mono);color:var(--task);border-bottom:1px dotted;font-size:.92em;text-decoration:none}a.ticket-ref:hover{border-bottom-style:solid}a.project-ref{color:var(--task);border-bottom:1px dotted;font-weight:500;text-decoration:none}a.project-ref:hover{border-bottom-style:solid}.project-card-desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ticket-card{z-index:60;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);pointer-events:none;flex-direction:column;gap:2px;width:280px;padding:10px 12px;font-size:13px;display:flex;position:fixed;box-shadow:0 6px 20px #0000001f}.ticket-card .key{font-family:var(--font-mono);color:var(--muted);font-size:12px}.badge-blocked{color:var(--bug);background:var(--bug-soft)}.link-list{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;font-weight:400;list-style:none;display:flex}.link-list li{align-items:center;gap:6px;display:flex}.link-add{gap:6px;margin-top:6px;display:flex}.link-add .select{flex:none;width:auto;min-height:34px;font-size:13px}.link-add .input{flex:80px;min-width:0;min-height:34px;font-size:13px}.ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.template-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}.template-card{text-align:left;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;flex-direction:column;align-items:flex-start;gap:4px;min-height:76px;padding:12px 14px;font-size:14px;display:flex}.template-card:hover,.template-card:focus-visible{border-color:var(--accent);background:var(--accent-soft)}.template-card .muted{font-size:12px}.template-card.blank{border-style:dashed}.rich table{border-collapse:collapse;table-layout:fixed;width:100%;margin:12px 0;overflow:hidden}.rich th,.rich td{border:1px solid var(--border-strong);vertical-align:top;text-align:left;padding:6px 8px}.rich th{background:var(--subtle);font-weight:600}.rich th p,.rich td p{margin:0}.rich .selectedCell{background:var(--accent-soft)}.rich .tableWrapper{overflow-x:auto}.mermaid-diagram{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);text-align:center;color:var(--muted);margin:12px 0;padding:8px;font-size:13px;overflow-x:auto}.mermaid-diagram.mermaid-error{color:var(--bug);text-align:left}.mermaid-diagram.mermaid-ok+.mermaid-source{display:none}.comment .text.comment-md,.comment-md{white-space:normal}.comment-md pre{white-space:pre}.comment-md>:first-child{margin-top:0}.comment-md>:last-child{margin-bottom:0}.comment-md p,.comment-md ul,.comment-md ol,.comment-md blockquote,.comment-md pre{margin:0 0 6px}.comment-md ul,.comment-md ol{padding-left:20px}.comment-md blockquote{border-left:3px solid var(--border-strong);color:var(--ink-3);padding-left:10px}.comment-md code{font-family:var(--font-mono);background:var(--subtle);border-radius:4px;padding:1px 4px;font-size:.9em}.comment-md pre{background:var(--subtle);border-radius:var(--radius-sm);padding:8px 10px;overflow-x:auto}.comment-md pre code{background:0 0;padding:0}.comment-box{flex-direction:column;gap:6px;display:flex}.comment-box-tabs{align-items:center;gap:4px;font-size:13px;display:flex}.comment-box-tabs button{border-radius:var(--radius-sm);cursor:pointer;color:var(--muted);background:0 0;border:0;padding:4px 8px;font-weight:600}.comment-box-tabs button[aria-selected=true]{background:var(--subtle);color:var(--ink)}.comment-box-tabs .hint{margin-left:auto;font-size:12px}.comment-preview{border:1px solid var(--border);border-radius:var(--radius);min-height:74px;padding:8px 10px;font-size:14px}@media (width<=720px){.comment-box-tabs .hint{display:none}}.import-results{flex-direction:column;gap:4px;max-height:50vh;margin:0;padding:0;font-size:14px;list-style:none;display:flex;overflow-y:auto}.import-results li{align-items:baseline;gap:8px;display:flex}.import-results .status{width:80px;color:var(--muted);flex:none;font-size:12px}.import-created{color:var(--ins-ink)}.import-updated{color:var(--task)}.import-failed{color:var(--bug)}.dropbox-chip-wrap{display:inline;position:relative}.dropbox-chip{color:#1e3a8a;font:inherit;cursor:pointer;vertical-align:baseline;background:#eef4ff;border:1px solid #bfd3f5;border-radius:10px;align-items:center;gap:4px;margin:0 1px;padding:0 7px;font-size:.92em;line-height:1.6;display:inline-flex}.dropbox-chip-wrap.broken .dropbox-chip{background:var(--subtle);border-color:var(--border);color:var(--muted);text-decoration:line-through}.dropbox-card{z-index:40;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);white-space:normal;text-align:left;flex-direction:column;gap:6px;width:min(360px,80vw);padding:12px 14px;font-size:13px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000024}.dropbox-crumbs{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:12px}.dropbox-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.dropbox-list{flex-direction:column;gap:12px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.dropbox-list li{flex-direction:column;gap:2px;display:flex}.dropbox-list li.broken strong{color:var(--muted);text-decoration:line-through}.dropbox-used{font-size:12px}.tree-extra{margin:12px 6px 0;font-size:13px;display:block}.search-dropbox{text-align:left;border-radius:var(--radius-sm);cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;gap:10px;padding:8px 10px;display:flex}.search-dropbox:hover{background:var(--subtle)}.tree-row.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.tree-row.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.tree-row.drop-into{background:var(--accent-soft);outline:1px dashed var(--accent);outline-offset:-1px}.tree-row.lifted{opacity:.55}.tree-drag-overlay{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);align-items:center;gap:6px;padding:6px 10px;font-size:14px;display:inline-flex;box-shadow:0 6px 18px #00000026}.mixed-dot{background:var(--shared);opacity:.45;border-radius:50%;flex:none;width:7px;height:7px}.toast-action{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin-left:12px;font-weight:700;text-decoration:underline}.label-chip{background:var(--subtle);color:var(--ink-3);border-radius:10px;padding:2px 8px;font-size:11px}.prio-urgent{color:var(--bug);font-weight:600}.prio-high{color:var(--accent);font-weight:600}.prio-medium,.prio-low{color:var(--muted)}.dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot-backlog{background:#8a93a1}.dot-todo{background:var(--task)}.dot-in_progress{background:var(--accent)}.dot-review{background:var(--story)}.dot-done{background:var(--done)}.swatch{cursor:pointer;width:36px;height:36px;box-shadow:0 0 0 1px var(--border);border:2px solid #0000;border-radius:50%}.swatch[aria-checked=true]{border-color:var(--surface);box-shadow:0 0 0 2px var(--ink)}.avatar{color:#fff;object-fit:cover;border-radius:50%;flex:none;place-items:center;font-weight:600;display:inline-grid;overflow:hidden}.shell{align-items:stretch;min-height:100vh;display:flex}.sidebar{background:var(--sidebar);width:250px;color:var(--sidebar-text);flex-direction:column;flex:none;gap:22px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{color:#fff;align-items:center;gap:10px;padding:0 6px;font-size:16px;font-weight:700;text-decoration:none;display:flex}.brand:hover{color:#fff}.brand-red{color:var(--brand)}.nav-group{flex-direction:column;gap:4px;display:flex}.nav-heading{text-transform:uppercase;letter-spacing:.08em;color:var(--sidebar-muted);padding:0 8px 4px;font-size:11px}.nav-link{border-radius:var(--radius);color:var(--sidebar-text);align-items:center;gap:10px;min-height:40px;padding:9px 10px;font-size:14px;text-decoration:none;display:flex}.nav-link:hover{background:var(--sidebar-active);color:#fff}.nav-link.active{background:var(--sidebar-active);color:#fff;font-weight:500}.nav-link .nav-key{font-family:var(--font-mono);color:var(--sidebar-muted);text-overflow:ellipsis;flex:none;width:44px;font-size:11px;overflow:hidden}.nav-link .nav-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.nav-link .nav-star{color:#e5b94e;flex:none;font-size:12px}.user-block{border-top:1px solid var(--sidebar-active);color:var(--sidebar-text);border-radius:var(--radius);align-items:center;gap:10px;margin-top:auto;padding:10px 8px;text-decoration:none;display:flex}.user-block:hover{background:var(--sidebar-active);color:var(--sidebar-text)}.user-block .who{flex-direction:column;gap:2px;min-width:0;display:flex}.user-block .who strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.user-block .who span{color:var(--sidebar-muted);font-size:12px}.sidebar .signout{color:var(--sidebar-muted);cursor:pointer;text-align:left;background:0 0;border:0;padding:4px 10px;font-size:13px}.sidebar .signout:hover{color:#fff}.mobile-bar{display:none}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px;padding:18px 28px;display:flex}.topbar .titles{flex-direction:column;gap:2px;min-width:0;margin-right:auto;display:flex}.topbar .crumb{color:var(--muted);font-size:12px}.topbar h1{font-size:22px;font-weight:600}.search-trigger{border:1px solid var(--border);border-radius:var(--radius);width:300px;max-width:100%;height:40px;color:var(--muted);background:var(--surface);cursor:pointer;text-align:left;align-items:center;gap:8px;padding:0 12px;font-size:14px;display:flex}.search-trigger span.grow{flex:1}.kbd{font-family:var(--font-mono);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:11px}.page{flex-direction:column;gap:18px;padding:24px 28px 40px;display:flex}.main-bare{flex-direction:column;flex:1;min-height:0;display:flex}.page-narrow{max-width:1180px}.banner{border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;font-size:14px;display:flex}.banner-accent{background:var(--accent-soft);color:var(--accent-ink)}.banner-shared{background:var(--shared-soft);color:var(--shared-ink);border-radius:0;padding:12px 28px}.banner-offline{color:#78350f;background:#fef3c7;border-radius:0;padding:8px 28px}@media (width<=900px){.shell{flex-direction:column}.sidebar{display:none}.sidebar.open{z-index:50;width:280px;height:100vh;display:flex;position:fixed;inset:0 auto 0 0;box-shadow:0 0 0 100vmax #161a2173}.mobile-bar{background:var(--sidebar);color:#fff;z-index:40;align-items:center;gap:12px;padding:8px 16px;display:flex;position:sticky;top:0}.mobile-bar .icon-btn{border-color:var(--sidebar-active);color:#fff;background:0 0}.topbar{padding:14px 16px}.page{padding:16px 16px 32px}.banner-shared,.banner-offline{padding-left:16px;padding-right:16px}.search-trigger{order:3;width:100%}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.panel-lg{padding:24px}.panel h2{font-size:16px;font-weight:600}.section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.work-group{margin-top:20px}.work-group h2{color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:13px;font-weight:600}.work-group h2.overdue{color:var(--bug)}.work-group h2 .count{color:var(--muted);margin-left:4px;font-weight:500}.work-list{margin:0;padding:4px 8px;list-style:none}.work-list li+li{border-top:1px solid var(--border)}.work-list a{min-height:44px;color:var(--ink);align-items:center;gap:12px;padding:8px 4px;font-size:14px;text-decoration:none;display:flex}.work-list a:hover .title{text-decoration:underline}.work-list .key{color:var(--muted);flex:none;width:72px;font-size:12px}.work-list .title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.work-list .project{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:none;width:140px;font-size:12px;overflow:hidden}.work-list .status{color:var(--ink-3);flex:none;width:90px;font-size:12px}.work-list .prio{flex:none;width:56px;font-size:12px}.work-list .due{color:var(--muted);text-align:right;flex:none;width:88px;font-size:12px}@media (width<=720px){.work-list a{flex-wrap:wrap;gap:4px 10px}.work-list .title{white-space:normal;flex-basis:100%;order:-1}.work-list .key,.work-list .project,.work-list .status,.work-list .prio,.work-list .due{width:auto}}.audit-list{margin:0;padding:0;font-size:14px;list-style:none}.audit-list li{align-items:baseline;gap:16px;padding:8px 0;display:flex}.audit-list li+li{border-top:1px solid var(--border)}.audit-list time{flex:none;width:128px;font-size:12px}.audit-list li.audit-shared{box-shadow:inset 3px 0 0 var(--shared);padding-left:10px}@media (width<=720px){.audit-list li{flex-direction:column;gap:2px}}.error-stack{white-space:pre-wrap;word-break:break-word;background:var(--subtle);border-radius:var(--radius-sm);margin:6px 0 0;padding:8px;font-size:12px}.shortcut-table{border-collapse:collapse;font-size:14px}.shortcut-table td{padding:6px 12px 6px 0}.empty{text-align:center;color:var(--muted);padding:32px}.center-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.notice{text-align:center;flex-direction:column;align-items:center;gap:14px;max-width:440px;display:flex}.notice h1{font-size:22px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--ink);flex-direction:column;gap:8px;min-height:120px;padding:18px;text-decoration:none;display:flex}.project-card:hover{border-color:var(--border-strong);color:var(--ink);box-shadow:0 2px 8px #161a210f}.project-card .top{align-items:center;gap:8px;display:flex}.project-card h2{font-size:16px;font-weight:600}.star-btn{cursor:pointer;color:var(--border-strong);border-radius:var(--radius-sm);background:0 0;border:0;flex:none;width:32px;height:32px;font-size:18px;line-height:1}.star-btn:hover{background:var(--subtle);color:#a16207}.star-btn.on{color:#a16207}.project-list{margin:0;padding:4px 8px;list-style:none}.project-list li{align-items:center;gap:8px;min-height:48px;display:flex}.project-list li+li{border-top:1px solid var(--border)}.project-list a{min-width:0;color:var(--ink);flex:1;align-items:baseline;gap:12px;padding:10px 0;text-decoration:none;display:flex}.project-list a:hover .name{text-decoration:underline}.project-list .key{flex:none;width:84px;font-size:12px}.project-list .name{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:40%;font-weight:500;overflow:hidden}.project-list .desc{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}@media (width<=700px){.project-list .desc{display:none}.project-list .name{max-width:none}}.project-card p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.filters{flex-wrap:wrap;align-items:center;gap:8px;padding:14px 28px;display:flex}.chip{border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;border-radius:17px;min-height:34px;padding:0 14px;font-size:13px}.chip[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}.filter-input{border:1px solid var(--border-strong);border-radius:17px;width:180px;min-height:34px;padding:0 14px;font-size:13px}.filters .summary{color:var(--muted);margin-left:auto;font-size:13px}.board-scroll{padding:0 28px 28px;overflow-x:auto}.board{grid-template-columns:repeat(5,minmax(240px,1fr));gap:14px;min-width:1240px;display:grid}.column{background:var(--column);border-radius:var(--radius-lg);flex-direction:column;gap:10px;min-height:560px;padding:12px;display:flex}.column.drop-over{outline:2px dashed var(--accent);outline-offset:-2px}.column-head{align-items:center;gap:8px;padding:2px 4px 4px;display:flex}.column-head h2{text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:600}.column-head .count{color:var(--muted);font-size:12px}.column-note{color:var(--muted);text-align:center;padding:4px;font-size:12px}.card{background:var(--surface);border:1px solid var(--border);color:var(--ink);cursor:pointer;touch-action:manipulation;border-radius:10px;flex-direction:column;gap:10px;padding:12px;text-decoration:none;display:flex;box-shadow:0 1px 2px #161a210d}.card:hover{border-color:var(--border-strong);color:var(--ink)}.card.done{opacity:.72}.card.dragging{opacity:.35}.card.overlay{cursor:grabbing;transform:rotate(1.5deg);box-shadow:0 12px 28px #161a212e}.card.drop-before{box-shadow:0 -3px 0 0 var(--accent)}.card .row{align-items:center;gap:8px;display:flex}.card .key{font-family:var(--font-mono);color:var(--muted);font-size:12px}.card .title{font-size:14px;font-weight:500;line-height:1.4}.card .labels{flex-wrap:wrap;gap:6px;display:flex}.card .meta{color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.card .meta .prio{margin-right:auto}.breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.breadcrumb a{text-decoration:none}.two-col{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.two-col>.primary{flex-direction:column;flex:999 520px;gap:18px;min-width:0;display:flex}.two-col>.side{flex:280px;max-width:340px}@media (width<=900px){.two-col>.side{max-width:none}}.ticket-title{font-size:26px;font-weight:600;line-height:1.25}.title-input{border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;padding:4px 8px;font-size:26px;font-weight:600;line-height:1.25}.editable-title{text-align:left;cursor:text;background:0 0;border:0;width:100%;padding:0}.editable-title:hover .ticket-title{-webkit-text-decoration:underline dotted var(--border-strong);text-decoration:underline dotted var(--border-strong)}.side-panel{flex-direction:column;gap:16px;display:flex}.side-panel .field .select,.side-panel .field .input{min-height:40px}.share-box{background:var(--shared-soft);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.share-box .check{color:var(--shared-ink);font-size:14px;font-weight:600}.share-box .check input{accent-color:var(--shared)}.share-box p{color:var(--shared-ink);font-size:12px;line-height:1.45}.watchers{flex-wrap:wrap;gap:4px;display:flex}.timeline{flex-direction:column;gap:16px;display:flex}.event{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.event .dot{background:#b8bec8;margin:0 9px}.event strong{color:var(--ink);font-weight:600}.event .from{text-decoration:line-through}.comment{gap:12px;display:flex}.comment.internal{background:#f4f5f8;border:1px dashed #b8bec8;border-radius:10px;padding:12px}.comment .body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.comment .head{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.comment .head strong{font-weight:600}.comment .text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.55}.comment .actions{gap:12px;display:flex}.mention{color:var(--task);background:var(--task-soft);border-radius:4px;padding:0 3px;font-weight:500}.mention-list{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:220px;margin:0;padding:4px;list-style:none;position:absolute;bottom:calc(100% + 4px);left:0;box-shadow:0 8px 24px #161a2124}.mention-list li{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:7px 8px;font-size:14px;display:flex}.mention-list li[aria-selected=true]{background:var(--accent-soft);color:var(--accent-ink)}.composer{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding-top:16px;display:flex}.composer .bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.composer .bar .btn{margin-left:auto}.attachments{flex-wrap:wrap;gap:10px;display:flex}.attachment{border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);background:var(--surface);align-items:center;gap:10px;max-width:100%;padding:8px 8px 8px 12px;font-size:13px;display:flex}.attachment a{color:var(--ink);align-items:center;gap:8px;min-width:0;text-decoration:none;display:flex}.attachment a:hover{text-decoration:underline}.attachment .name{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.attach-btn{border-radius:var(--radius);min-height:40px;color:var(--ink-3);cursor:pointer;background:0 0;border:1px dashed #b8bec8;padding:0 14px;font-size:13px}.attach-btn:hover{background:var(--subtle)}.usage-bar{background:var(--column);border-radius:5px;height:10px;overflow:hidden}.usage-bar>span{border-radius:5px;height:100%;display:block}.progress{background:var(--border);border-radius:2px;width:120px;height:4px;overflow:hidden}.progress>span{background:var(--accent);height:100%;display:block}.docs{flex-wrap:wrap;flex:1;align-items:stretch;min-height:0;display:flex}.tree{width:var(--tree-w,260px);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:none;gap:12px;max-width:45vw;padding:20px 12px;display:flex;position:relative}.tree-resize{cursor:col-resize;z-index:5;touch-action:none;width:8px;position:absolute;top:0;bottom:0;right:-4px}.tree-resize:hover,.tree-resize:focus-visible,.tree-resize:active{background:linear-gradient(to right, transparent 3px, var(--accent) 3px, var(--accent) 5px, transparent 5px);outline:none}.tree-head{align-items:center;gap:8px;padding:0 6px;display:flex}.tree-head h2{margin-right:auto;font-size:15px;font-weight:600}.tree ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.tree-row{border-radius:var(--radius-sm);align-items:center;gap:2px;display:flex;position:relative}.tree-row:hover{background:var(--subtle)}.tree-row.active{background:var(--accent-soft)}.tree-row.active>a{color:var(--accent-ink);font-weight:600}.tree-row a{min-width:0;color:var(--ink-2);flex:1;align-items:center;gap:8px;padding:7px 4px;font-size:14px;text-decoration:none;display:flex}.tree-row a span.t{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tree-toggle{cursor:pointer;width:22px;height:28px;color:var(--muted);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.tree-toggle.hidden{visibility:hidden}.tree-menu-btn{opacity:0}.tree-row:hover .tree-menu-btn,.tree-row:focus-within .tree-menu-btn,.tree-menu-btn[aria-expanded=true]{opacity:1}.menu{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;min-width:210px;padding:6px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #161a2124}.menu button{text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;min-height:38px;padding:9px 10px;font-size:14px}.menu button:hover,.menu button:focus-visible{background:var(--subtle)}.menu button.danger{color:var(--bug)}.menu hr{border:0;border-top:1px solid var(--border);margin:4px 0}.doc-main{flex-direction:column;flex:999 420px;gap:16px;min-width:0;padding:24px 32px 40px;display:flex}.doc-head{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.doc-head .titles{flex-direction:column;gap:6px;min-width:0;margin-right:auto;display:flex}.doc-head h1{overflow-wrap:anywhere;font-size:30px;font-weight:700}.doc-head .meta{color:var(--muted);font-size:13px}.doc-body{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 32px}.history{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;flex:none;gap:14px;width:340px;padding:20px;display:flex}.history ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.version-btn{border-radius:var(--radius);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.version-btn:hover,.version-btn[aria-current=true]{background:var(--subtle)}.version-btn .n{font-family:var(--font-mono);color:var(--muted);flex:none;width:30px;font-size:12px}.version-btn .who{flex-direction:column;gap:2px;display:flex}.version-btn .who span:first-child{font-size:13px;font-weight:500}.version-btn .who span:last-child{color:var(--muted);font-size:12px}.diff{white-space:pre-wrap;overflow-wrap:anywhere;max-height:60vh;font-size:13px;line-height:1.6;overflow:auto}.diff ins{background:var(--ins);color:var(--ins-ink);text-decoration:none}.diff del{background:var(--del);color:var(--del-ink)}@media (width<=1100px){.history{border-left:0;border-top:1px solid var(--border);width:100%}}@media (width<=900px){.tree{border-right:0;border-bottom:1px solid var(--border);width:100%;max-width:none}.tree-resize{display:none}.doc-main{padding:16px}.doc-body{padding:18px}}.table-wrap{overflow-x:auto}table.prefs{border-collapse:collapse;font-size:14px}table.prefs th,table.prefs td{text-align:left;padding:8px 14px 8px 0;font-weight:400}table.prefs thead th{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}table.prefs td{text-align:center}table.prefs input{width:18px;height:18px;accent-color:var(--accent)}table.members{border-collapse:collapse;width:100%;min-width:680px;font-size:14px}table.members th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:12px;font-size:12px;font-weight:600}table.members td{border-top:1px solid var(--border);vertical-align:middle;padding:12px}table.members th:first-child,table.members td:first-child{padding-left:20px}table.members th:last-child,table.members td:last-child{text-align:right;padding-right:20px}.person{align-items:center;gap:12px;display:flex}.person .who{flex-direction:column;gap:2px;display:flex}.person .who span{color:var(--muted);font-size:13px}.list-row{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 0;font-size:14px;display:flex}.list-row+.list-row{border-top:1px solid var(--border)}.list-row .end{margin-left:auto}dialog.modal{border-radius:var(--radius-lg);width:min(640px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--ink);border:0;padding:0;box-shadow:0 24px 64px #161a2140}dialog.modal.wide{width:min(900px,100vw - 32px)}dialog.modal::backdrop{background:#161a2173}.modal-inner{flex-direction:column;max-height:calc(100vh - 48px);display:flex}.modal-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:18px 20px;display:flex}.modal-head h2{margin-right:auto;font-size:18px;font-weight:600}.modal-body{flex-direction:column;gap:16px;padding:20px;display:flex;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.popover{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;width:min(380px,100vw - 32px);max-height:70vh;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #161a2129}.popover-head{border-bottom:1px solid var(--border);align-items:center;padding:12px 14px;display:flex}.popover-head h2{margin-right:auto;font-size:14px;font-weight:600}.popover ul{margin:0;padding:6px;list-style:none;overflow-y:auto}.notif{text-align:left;border-radius:var(--radius);cursor:pointer;background:0 0;border:0;flex-direction:column;gap:2px;width:100%;padding:10px;display:flex}.notif:hover{background:var(--subtle)}.notif strong{font-size:13px;font-weight:600}.notif span{color:var(--ink-2);font-size:13px}.notif small{color:var(--muted);font-size:12px}.bell-count{background:var(--accent);color:#fff;border-radius:8px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:grid;position:absolute;top:6px;right:6px}.search-results{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.search-results .group{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:10px 10px 4px;font-size:12px;font-weight:600}.search-results button{text-align:left;border-radius:var(--radius);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:14px;display:flex}.search-results button[aria-selected=true]{background:var(--accent-soft);color:var(--accent-ink)}.search-results li.group{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:10px 10px 4px;font-size:12px;font-weight:600}.search-results .hit-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.search-results .hit-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-results .hit-snippet{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.search-results .hit-status{flex:none;align-items:center;gap:6px;font-size:12px;display:inline-flex}.search-results mark{color:inherit;background:#fde7c8;border-radius:2px;padding:0 1px}.search-results .show-all{padding:6px 10px}.token-box{background:var(--accent-soft);border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.token-box code{background:var(--ink);color:#e6e9ee;border-radius:var(--radius);white-space:pre-wrap;word-break:break-all;padding:12px;font-size:12px;display:block;overflow-x:auto}.toast{z-index:100;background:var(--ink);color:#fff;border-radius:var(--radius);max-width:calc(100vw - 32px);padding:10px 16px;font-size:14px;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #161a2140}.toast.error{background:var(--bug)}.login{background:var(--sidebar);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border-radius:var(--radius-lg);flex-direction:column;gap:18px;width:min(420px,100%);padding:32px;display:flex}.login-card .brand{color:var(--ink);padding:0;font-size:18px}.login-card h1{font-size:22px}.divider{color:var(--muted);align-items:center;gap:12px;font-size:13px;display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--border);flex:1}.rich{color:var(--ink-2);overflow-wrap:anywhere;font-size:15px;line-height:1.65}.rich .tiptap{outline:none;min-height:1.6em}.rich.editing .tiptap{min-height:240px}.rich .tiptap>*+*{margin-top:12px}.rich p{margin:0}.rich h1,.rich h2,.rich h3{color:var(--ink);line-height:1.3}.rich h1{margin-top:20px;font-size:24px}.rich h2{margin-top:20px;font-size:19px;font-weight:600}.rich h3{margin-top:16px;font-size:16px;font-weight:600}.rich ul,.rich ol{margin:0;padding-left:22px}.rich li>p{margin:0}.rich blockquote{border-left:3px solid var(--border-strong);color:var(--muted);margin:0;padding-left:14px}.rich code{background:var(--subtle);border-radius:4px;padding:1px 5px;font-size:13px}.rich pre{color:#e6e9ee;border-radius:var(--radius);background:#161a21;margin:0;padding:14px 16px;font-size:13px;line-height:1.5;overflow-x:auto}.rich pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.rich a:not(.btn){color:var(--accent)}.rich hr{border:0;border-top:1px solid var(--border)}.rich .inline-image{margin:12px 0;line-height:0;display:block}.rich .inline-image img{border-radius:var(--radius-sm);max-width:100%;height:auto}.rich .inline-image.selected img,.rich .inline-image.selected .image-box{outline:2px solid var(--accent);outline-offset:2px}.rich .image-box{background:var(--column);border-radius:var(--radius-sm);max-width:100%;color:var(--muted);place-items:center;font-size:13px;line-height:1.4;display:grid}.rich ul[data-type=taskList]{padding-left:4px;list-style:none}.rich ul[data-type=taskList] li{align-items:flex-start;gap:8px;display:flex}.rich ul[data-type=taskList] li>label{flex:none;margin-top:4px}.rich ul[data-type=taskList] li>label input{width:16px;height:16px;accent-color:var(--accent)}.rich ul[data-type=taskList] li>div{flex:1}.rich p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#8a93a1;float:left;pointer-events:none;height:0}.rich .hljs-comment,.rich .hljs-quote{color:#8a93a1;font-style:italic}.rich .hljs-keyword,.rich .hljs-selector-tag,.rich .hljs-built_in{color:#f0a878}.rich .hljs-string,.rich .hljs-attr,.rich .hljs-template-tag{color:#9bd3a4}.rich .hljs-number,.rich .hljs-literal{color:#e5c07b}.rich .hljs-title,.rich .hljs-section,.rich .hljs-function{color:#8db8f2}.rich .hljs-variable,.rich .hljs-params,.rich .hljs-property{color:#e6e9ee}.rich .hljs-type,.rich .hljs-name,.rich .hljs-tag{color:#c4a7f5}.rich .hljs-meta{color:#8a93a1}.editor-frame{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface)}.editor-frame .rich{padding:14px 16px}.toolbar{border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;z-index:5;background:#fafbfc;flex-wrap:wrap;gap:2px;padding:6px;display:flex;position:sticky;top:0}.toolbar button{border-radius:var(--radius-sm);cursor:pointer;min-width:34px;height:34px;color:var(--ink-3);background:0 0;border:0;place-items:center;padding:0 8px;font-size:13px;font-weight:600;display:grid}.toolbar button:hover{background:var(--subtle)}.toolbar button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink)}.toolbar button:disabled{opacity:.4;cursor:default}.toolbar .sep{background:var(--border);width:1px;margin:4px}.toolbar select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);height:34px;padding:0 6px;font-size:12px}.toolbar-pop{display:inline-flex;position:relative}.project-list{max-height:320px;top:calc(100% + 4px);bottom:auto;overflow-y:auto}.project-list li{padding:0}.project-list li.muted{cursor:default;padding:7px 8px}.toolbar .project-list button{text-align:left;justify-content:flex-start;align-items:center;gap:8px;width:100%;height:auto;padding:7px 8px;font-weight:400;display:flex}.project-list .key{font-family:var(--font-mono);color:var(--muted);font-size:12px}.print-root{color:#161a21;background:#fff;max-width:820px;margin:0 auto;padding:24px;font-size:10.5pt;line-height:1.45}.print-toolbar{z-index:5;background:var(--accent-soft);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;padding:10px 12px;font-size:14px;display:flex;position:sticky;top:0}.print-cover{border-bottom:2px solid #e30d1a;margin-bottom:20px;padding-bottom:16px}.print-brand{color:#e30d1a;align-items:center;gap:8px;font-size:16pt;font-weight:700;display:flex}.print-cover h1{margin:8px 0 4px;font-size:22pt}.print-project,.print-meta{color:#5b6472;margin:2px 0}.print-sub{margin:2px 0;font-size:12pt}.print-toc ol{padding:0;list-style:none}.print-toc li{padding:2px 0}.print-page-title{margin:0 0 10px;font-size:18pt}.print-section .rich,.print-section-inline .rich{font-size:10.5pt}.print-fields,.print-table{border-collapse:collapse;width:100%;margin:8px 0 16px;font-size:10pt}.print-fields th,.print-fields td,.print-table th,.print-table td{text-align:left;vertical-align:top;border:1px solid #d4d8df;padding:4px 6px}.print-fields th,.print-table th{white-space:nowrap;background:#f4f5f8;width:1%}.print-comment{break-inside:avoid;border-left:3px solid #d4d8df;margin:8px 0;padding-left:8px}.print-missing{text-align:center;padding:40px}@media print{.no-print{display:none!important}body{background:#fff}.print-root{max-width:none;padding:0}.print-section+.print-section,.print-toc+.print-section{break-before:page}.print-root h1,.print-root h2,.print-root h3{break-after:avoid}.print-root pre,.print-root table,.print-root img,.print-root ul[data-type=taskList],.mermaid-diagram{break-inside:avoid}.print-root pre{white-space:pre-wrap;color:#161a21!important;background:#f4f5f8!important}.print-root thead{display:table-header-group}.print-root a[href^=http]:not(.ticket-ref):after{content:" (" attr(href) ")";color:#666;font-size:8pt}.print-root a{color:inherit;text-decoration:none}}.dev-signin{border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface);max-width:440px;margin:16px auto 0;padding:14px 18px;font-size:13px}.dev-signin h2{margin:0 0 8px;font-size:14px}.dev-signin ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.guide-frame{background:#fff;border:0;width:100%;height:calc(100vh - 72px);display:block}.nav-link-small{opacity:.85;font-size:13px}.gitlab-repos{gap:8px;margin:0;padding:0;list-style:none;display:grid}.gitlab-repos li{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.gitlab-ok{color:var(--done)}.copy-row{align-items:center;gap:8px;display:flex}.copy-row .input{flex:1;min-width:0;font-size:13px}.steps{gap:6px;margin:0;padding-left:20px;font-size:14px;display:grid}.dev-panel{gap:8px}.dev-list{gap:8px;margin:0;padding:0;font-size:13px;font-weight:400;list-style:none;display:grid}.dev-list li{gap:2px;min-width:0;display:grid}.dev-list a{color:var(--ink);overflow-wrap:anywhere;text-decoration:none}.dev-list a:hover{color:var(--accent);text-decoration:underline}.dev-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.badge.mr-opened{color:var(--task);background:var(--task-soft)}.badge.mr-draft{color:var(--muted);background:var(--line)}.badge.mr-merged{color:var(--story);background:var(--story-soft)}.badge.mr-closed{color:var(--bug);background:var(--bug-soft)}.pipeline{font-size:12px;font-weight:700}.pipeline-success{color:var(--done)}.pipeline-failed{color:var(--bug)}.pipeline-running{color:var(--idea)}.pipeline-canceled{color:var(--muted)}.gitlab-tag{color:var(--accent-ink);background:var(--accent-soft);border-radius:4px;margin-right:2px;padding:0 5px;font-size:11px;font-weight:600;display:inline-block}.event-gitlab a{color:inherit}.dev-badge{color:var(--muted);align-items:center;gap:3px;font-size:12px;display:inline-flex;position:relative}.dev-badge.merged{color:var(--done)}.dev-fail{background:var(--bug);border-radius:50%;width:7px;height:7px;margin-left:2px;display:inline-block}.column-cards{flex-direction:column;gap:10px;display:flex}.column-head.drop-top{box-shadow:inset 0 -2px 0 var(--accent)}.column-collapse{width:28px;height:28px;min-height:28px;margin-left:auto;font-size:16px;line-height:1}.board.backlog-collapsed{grid-template-columns:48px repeat(4,minmax(240px,1fr));min-width:1040px}.column-strip{align-items:stretch;padding:8px 0}.strip-btn{writing-mode:vertical-rl;cursor:pointer;height:100%;color:var(--ink);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius);background:0 0;border:0;align-items:center;gap:10px;padding:8px 0;font-size:13px;font-weight:600;display:flex}.strip-btn:hover{background:var(--border)}.strip-btn .count{color:var(--muted);text-transform:none;font-size:12px;font-weight:400}.show-more{align-self:center}.board-hint{color:var(--muted);margin:-6px 28px 10px;font-size:13px}.view-toggle{border:1px solid var(--border-strong);border-radius:var(--radius);flex:none;display:inline-flex;overflow:hidden}.view-toggle a{color:var(--ink);background:var(--surface);padding:6px 12px;font-size:13px;text-decoration:none}.view-toggle a+a{border-left:1px solid var(--border-strong)}.view-toggle a:hover{background:var(--column);color:var(--ink)}.view-toggle a[aria-current]{background:var(--ink);color:var(--surface)}@media (width>=701px){.shell.fill{height:100vh;min-height:0}.shell.fill .main,.shell.fill .main-bare{min-height:0;overflow:hidden}.shell.fill .board-scroll{flex:1;min-height:0;padding-bottom:16px}.shell.fill .board{height:100%}.shell.fill .column{min-height:0;overflow:hidden}.shell.fill .column-cards{overscroll-behavior:contain;flex:1;min-height:0;margin:-2px;padding:2px;overflow-y:auto}}.list-wrap{padding:0 28px;overflow-x:auto}.ticket-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;font-size:13px}.ticket-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface);z-index:1;padding:8px 10px;font-size:12px;font-weight:600;position:sticky;top:0}.ticket-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 10px}.ticket-table tbody tr{cursor:pointer}.ticket-table tbody tr:hover{background:var(--bg)}.ticket-table tbody tr.selected{background:var(--accent-soft)}.ticket-table tbody tr.cursor{box-shadow:inset 3px 0 0 var(--accent)}.ticket-table .col-check{width:36px}.ticket-table .key{white-space:nowrap;color:var(--muted)}.ticket-table .title-cell{min-width:240px}.ticket-table .title-cell a{color:var(--ink);font-weight:500;text-decoration:none}.ticket-table .title-cell a:hover{color:var(--accent);text-decoration:underline}.ticket-table .title-cell .badge{vertical-align:middle;margin-left:6px}.ticket-table .label-chip{margin-right:4px}.ticket-table .assignee{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ticket-table .nowrap{white-space:nowrap}.ticket-table .empty-row{text-align:center;cursor:default;padding:28px}.th-sort{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.th-sort:hover{color:var(--ink)}.pager{flex-wrap:wrap;align-items:center;gap:12px;padding:14px 28px 28px;font-size:13px;display:flex}.pager-keys{margin-left:auto;font-size:12px}.bulk-bar{background:var(--surface);border:1px solid var(--accent);border-radius:var(--radius);z-index:2;flex-wrap:wrap;align-items:center;gap:8px;margin:0 28px 12px;padding:10px 14px;display:flex;position:sticky;top:0}.bulk-label{align-items:center;gap:6px;display:inline-flex}.bulk-label .filter-input{width:120px}@media (width<=900px){.list-wrap,.pager{padding-left:16px;padding-right:16px}.bulk-bar{margin:0 16px 12px}}.cc-steps{gap:18px;margin:0;padding-left:22px;display:grid}.cc-steps>li{flex-direction:column;gap:8px;display:flex}.cc-steps>li::marker{font-weight:600}.cc-code{background:var(--subtle);border:1px solid var(--border);border-radius:var(--radius);overflow-wrap:anywhere;white-space:pre-wrap;flex:1;min-width:0;padding:8px 10px;font-size:12px;display:block}.cc-command{min-height:56px}.cc-hash summary{cursor:pointer;color:var(--muted);font-size:13px}.cc-notes{color:var(--muted);gap:2px;margin:0;padding-left:18px;font-size:13px;display:grid}.cc-done{color:var(--done);font-size:13px}.view-toggle button{background:var(--surface);color:var(--ink);cursor:pointer;border:0;padding:6px 12px;font-size:13px}.view-toggle button+button{border-left:1px solid var(--border-strong)}.view-toggle button.on{background:var(--ink);color:var(--surface)}.cc-howto{border-top:1px solid var(--border);padding-top:14px;font-size:14px}.cc-howto h3{margin-bottom:8px;font-size:15px}.cc-howto ol{gap:8px;margin:0;padding-left:20px;display:grid}.cc-howto ul{gap:4px;margin:6px 0 0;padding-left:18px;display:grid}.cc-howto code{background:var(--subtle);overflow-wrap:anywhere;border-radius:4px;padding:1px 5px;font-size:12px}
