:root{--bg:var(--c-f7f9fa-bg);--panel:var(--c-ffffff-bg);--ink:var(--c-1d2b32-fg);--muted:var(--c-7b858c-fg);--line:var(--c-e9edef-border);--teal:var(--c-087d70-fg);--teal-soft:var(--c-e8f5f1-bg);--amber:var(--c-b97d12-fg);--amber-soft:var(--c-fff6e5-bg);--blue:var(--c-527bc0-fg);--blue-soft:var(--c-edf3fe-bg);--red:var(--c-c96262-fg);--red-soft:var(--c-fceeee-bg);--purple:var(--c-8b72ba-fg);--radius:12px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-size:calc(13px * var(--font-scale,1));line-height:1.5}button,select,input{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--c-75cdbb-border);outline-offset:3px}svg{width:calc(18px * var(--font-scale,1));height:calc(18px * var(--font-scale,1));fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.symbols{display:none}.sidebar{width:calc(234px * var(--font-scale,1));background:var(--c-ffffff-bg);border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:33px 19px 0;z-index:10}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-size:calc(28px * var(--font-scale,1));font-weight:740;letter-spacing:-1.2px;margin:0 9px 42px;line-height:1.2}.brand:hover{text-decoration:none}.brand-mark{width:calc(38px * var(--font-scale,1));height:calc(41px * var(--font-scale,1));display:flex;align-items:center;justify-content:center;background:var(--teal);border-radius:12px;color:var(--c-ffffff-fg);font-size:calc(36px * var(--font-scale,1));position:relative;font-style:italic;padding-right:3px}.brand-mark>span{position:absolute;width:calc(8px * var(--font-scale,1));height:calc(8px * var(--font-scale,1));border-radius:50%;background:var(--c-9ddacb-bg);right:5px;top:5px;border:2px solid var(--teal)}.brand-sub{display:block;color:var(--muted);font-size:calc(8px * var(--font-scale,1));font-weight:600;letter-spacing:2px;margin-top:4px}.workspace-label{font-size:calc(9px * var(--font-scale,1));letter-spacing:1.7px;font-weight:650;color:var(--c-99a1a7-fg);padding:0 14px;margin-bottom:13px}.resources-label{margin-top:36px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;border:0;background:transparent;border-radius:7px;text-align:left;color:var(--c-69747b-fg);padding:12px 13px;margin-bottom:5px;font-size:calc(12px * var(--font-scale,1));white-space:nowrap}.nav-item:hover{background:var(--c-f5f8f7-bg);text-decoration:none}.nav-item.active{background:var(--teal-soft);color:var(--teal);font-weight:650}.nav-count{margin-left:auto;font-size:calc(10px * var(--font-scale,1));padding:0 7px;background:var(--c-d9ede6-bg);color:var(--teal);border-radius:4px;line-height:calc(20px * var(--font-scale,1))}.nav-external{width:13px;height:13px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding:24px 11px 0}.connected{font-size:calc(11px * var(--font-scale,1));font-weight:600;display:flex;align-items:center;gap:8px}.dot{display:inline-block;width:calc(6px * var(--font-scale,1));height:calc(6px * var(--font-scale,1));background:var(--c-2eae8d-bg);border-radius:50%;flex-shrink:0}.sidebar-bottom p{color:var(--muted);font-size:calc(10px * var(--font-scale,1));line-height:1.8;margin:8px 0 25px}.account{border-top:1px solid var(--line);margin:0 -11px;padding:22px 9px;display:flex;align-items:center;gap:10px;font-size:calc(11px * var(--font-scale,1));font-weight:600}.account small{display:block;color:var(--muted);font-size:calc(10px * var(--font-scale,1));font-weight:400;margin-top:2px}.avatar{background:var(--c-edf1ef-bg);color:var(--c-526b61-fg);display:inline-flex;width:calc(34px * var(--font-scale,1));height:calc(34px * var(--font-scale,1));align-items:center;justify-content:center;border-radius:50%;font-size:calc(11px * var(--font-scale,1));font-weight:650}.avatar.small{width:calc(29px * var(--font-scale,1));height:calc(29px * var(--font-scale,1));font-size:calc(10px * var(--font-scale,1))}.lock-icon{margin-left:auto;color:var(--muted)}.shell{margin-left:calc(234px * var(--font-scale,1))}.topbar{height:76px;background:var(--c-ffffff-bg);border-bottom:1px solid var(--line);padding:0 39px;display:flex;align-items:center;justify-content:space-between;font-size:calc(11px * var(--font-scale,1))}.breadcrumb{color:var(--c-899298-fg);display:flex;gap:14px}.breadcrumb b{font-weight:550;color:var(--c-4f5c65-fg)}.breadcrumb span{color:var(--c-c4cbd0-fg)}.top-right{display:flex;align-items:center;gap:23px}.private-label{display:flex;gap:7px;align-items:center;color:var(--c-829087-fg);font-size:calc(10px * var(--font-scale,1))}main{padding:34px 39px 22px;max-width:1600px;margin:auto}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.eyebrow{font-size:calc(9px * var(--font-scale,1));letter-spacing:1.8px;color:var(--c-91a09e-fg);font-weight:650}h1{font-size:calc(29px * var(--font-scale,1));letter-spacing:-1px;font-weight:650;margin:8px 0 5px;line-height:1.3}.page-heading p{color:var(--muted);margin:0;font-size:calc(12px * var(--font-scale,1))}.heading-actions{display:flex;gap:9px;align-items:center}.button,select{background:var(--c-ffffff-bg);border:1px solid var(--c-dfe5e7-border);border-radius:7px;min-height:calc(37px * var(--font-scale,1));color:var(--c-56626a-fg);padding:8px 12px;font-size:calc(11px * var(--font-scale,1));display:inline-flex;align-items:center;justify-content:center;gap:7px}.button:hover{background:var(--c-f7fafa-bg);border-color:var(--c-b3ccc4-border)}.button svg{width:calc(14px * var(--font-scale,1));height:calc(14px * var(--font-scale,1))}.button:disabled{opacity:.55;cursor:default}select{max-width:240px;appearance:auto}.button.primary{background:var(--teal);color:var(--c-ffffff-fg);border-color:var(--teal)}.sync-row{display:flex;align-items:center;gap:8px;font-size:calc(10px * var(--font-scale,1));color:var(--c-899298-fg);margin:23px 0 25px}.project-badge{font-size:calc(8px * var(--font-scale,1));font-weight:650;letter-spacing:.8px;padding:3px 7px;background:var(--c-eaf0ed-bg);color:var(--c-567364-fg);border:1px solid var(--c-dde7e0-border);border-radius:4px;margin-right:4px}.sync-dot{width:calc(5px * var(--font-scale,1));height:calc(5px * var(--font-scale,1))}.sync-interval{margin-left:auto}.notice{background:var(--amber-soft);border:1px solid var(--c-f1e5c8-border);color:var(--c-876327-fg);border-radius:9px;padding:12px 16px;margin-bottom:18px;font-size:calc(12px * var(--font-scale,1))}.notice.error{background:var(--red-soft);color:var(--c-9a5050-fg);border-color:var(--c-efd3d3-border)}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric{background:var(--c-ffffff-bg);border:1px solid var(--line);border-radius:var(--radius);padding:19px 20px;min-height:139px;position:relative}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--c-6d787f-fg);font-size:calc(11px * var(--font-scale,1))}.metric-icon{width:calc(30px * var(--font-scale,1));height:calc(30px * var(--font-scale,1));border-radius:8px;background:var(--c-f3f6f7-bg);color:var(--c-819097-fg);display:flex;align-items:center;justify-content:center}.metric-icon svg{width:calc(16px * var(--font-scale,1));height:calc(16px * var(--font-scale,1))}.metric-icon.amber{color:var(--amber);background:var(--amber-soft)}.metric-icon.teal{color:var(--teal);background:var(--teal-soft)}.metric-icon.blue{color:var(--blue);background:var(--blue-soft)}.metric-value{font-size:calc(34px * var(--font-scale,1));line-height:1.1;letter-spacing:-1px;font-weight:620;margin-top:9px}.metric-note{font-size:calc(10px * var(--font-scale,1));color:var(--c-96a0a4-fg);margin-top:9px}.metric-note .text-teal{color:var(--teal)}.text-amber{color:var(--amber)}.metric-click{border:0;background:none;padding:0;text-align:left;color:inherit}.metric-click:hover .metric-value{color:var(--teal)}.panels{display:grid;grid-template-columns:1.12fr 1fr;gap:18px;margin:23px 0}.panel{background:var(--c-ffffff-bg);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.panel-head{padding:21px 22px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.panel h2{font-size:calc(13px * var(--font-scale,1));font-weight:620;letter-spacing:-.1px;margin:0}.panel-sub{color:var(--c-97a0a5-fg);font-size:calc(10px * var(--font-scale,1));margin:5px 0 0}.subtle-label{font-size:calc(9px * var(--font-scale,1));background:var(--c-f5f7f8-bg);padding:4px 8px;border-radius:4px;color:var(--c-8c969c-fg);white-space:nowrap}.pipeline{padding:20px 22px 23px}.pipeline-summary{display:flex;align-items:baseline;gap:8px;margin-bottom:16px}.pipeline-summary b{font-size:calc(27px * var(--font-scale,1));font-weight:620;letter-spacing:-.8px}.pipeline-summary span{color:var(--c-929da3-fg);font-size:calc(10px * var(--font-scale,1))}.stacked-bar{display:flex;gap:4px;height:12px;border-radius:4px;overflow:hidden;background:var(--c-f2f5f6-bg)}.stacked-bar button{border:0;min-width:5px;transition:opacity .15s}.stacked-bar button:hover{opacity:.7}.status-legend{display:grid;grid-template-columns:1fr 1fr;gap:13px 24px;margin-top:22px}.legend-row{display:flex;align-items:center;gap:8px;font-size:calc(10px * var(--font-scale,1));color:var(--c-78848c-fg);background:none;border:0;padding:0;text-align:left}.legend-row b{color:var(--c-3c4d55-fg);margin-left:auto;font-size:calc(12px * var(--font-scale,1));font-weight:550}.legend-dot{width:calc(7px * var(--font-scale,1));height:calc(7px * var(--font-scale,1));border-radius:2px;flex-shrink:0}.chart-box{padding:14px 20px 0}.chart-number{font-size:calc(25px * var(--font-scale,1));font-weight:620;letter-spacing:-.7px}.chart-number span{color:var(--c-99a1a6-fg);font-size:calc(10px * var(--font-scale,1));font-weight:400;letter-spacing:0;margin-left:7px}.activity-chart{width:100%;height:122px;stroke:none;overflow:visible;margin-top:8px}.chart-axis{display:flex;justify-content:space-between;color:var(--c-9ba6ab-fg);font-size:calc(9px * var(--font-scale,1));margin-top:-3px;padding:0 3px 17px}.attention{display:flex;align-items:center;gap:12px;padding:14px 17px;margin:0 0 23px;background:var(--c-fffbf1-bg);border:1px solid var(--c-f1e6c7-border);border-radius:9px}.attention>svg{color:var(--c-b88b35-fg);width:calc(19px * var(--font-scale,1));height:calc(19px * var(--font-scale,1))}.attention b{font-size:calc(11px * var(--font-scale,1));font-weight:600;color:var(--c-7d6532-fg)}.attention p{font-size:calc(10px * var(--font-scale,1));color:var(--c-a19375-fg);margin:3px 0 0}.attention .text-button{margin-left:auto;white-space:nowrap;color:var(--c-9e7a2f-fg)}.text-button{border:0;background:none;font-size:calc(10px * var(--font-scale,1));font-weight:600;color:var(--teal);display:flex;align-items:center;gap:5px;padding:4px 0}.text-button svg{width:calc(13px * var(--font-scale,1));height:calc(13px * var(--font-scale,1))}.table-panel .panel-head{align-items:center;padding-bottom:19px}.table-tools{padding:0 22px 15px;display:flex;justify-content:space-between;gap:12px;align-items:center}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tab{border:0;background:transparent;color:var(--c-94a0a6-fg);font-size:calc(10px * var(--font-scale,1));border-radius:5px;padding:6px 10px;white-space:nowrap}.tab.active{color:var(--teal);background:var(--teal-soft);font-weight:600}.tab span{font-size:calc(9px * var(--font-scale,1));margin-left:4px;opacity:.8}.table-search{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:6px;padding:7px 10px;width:215px}.table-search svg{width:calc(14px * var(--font-scale,1));height:calc(14px * var(--font-scale,1));color:var(--c-9ca8ac-fg)}.table-search input{border:0;outline:none;width:100%;min-width:0;font-size:calc(10px * var(--font-scale,1));color:var(--c-4d606b-fg);background:transparent}.table-search input::placeholder{color:var(--c-a5aeb3-fg)}.filter-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:0 22px 15px}.filter-row select{min-height:calc(30px * var(--font-scale,1));padding:5px 8px;font-size:calc(10px * var(--font-scale,1))}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:var(--c-fafbfc-bg);color:var(--c-919ca3-fg);font-size:calc(9px * var(--font-scale,1));font-weight:550;padding:11px 22px;border-top:1px solid var(--c-f0f2f4-border);border-bottom:1px solid var(--line)}td{padding:15px 22px;border-bottom:1px solid var(--c-f0f3f4-border);font-size:calc(10px * var(--font-scale,1));color:var(--c-8a979e-fg)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--c-fcfdfd-bg)}.task-name{font-weight:580;color:var(--c-40545e-fg);font-size:calc(11px * var(--font-scale,1));display:block;border:0;background:none;padding:0;text-align:left;white-space:normal;max-width:290px;overflow-wrap:anywhere}.task-name:hover{color:var(--teal)}.task-id{color:var(--c-a3adb3-fg);font-family:ui-monospace,SFMono-Regular,monospace;font-size:calc(8px * var(--font-scale,1));margin-top:4px}.task-title-cell{display:flex;align-items:center;gap:11px}.task-icon{width:calc(30px * var(--font-scale,1));height:calc(33px * var(--font-scale,1));border:1px solid var(--c-e8edef-border);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--c-9aa9b1-fg);flex-shrink:0}.task-icon svg{width:calc(14px * var(--font-scale,1));height:calc(14px * var(--font-scale,1))}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:4px;padding:4px 7px;line-height:1.2;font-size:calc(9px * var(--font-scale,1));font-weight:500;background:var(--c-f0f3f4-bg);color:var(--c-7a8790-fg);white-space:nowrap}.badge .dot{width:calc(4px * var(--font-scale,1));height:calc(4px * var(--font-scale,1));background:currentColor}.badge.amber{color:var(--c-b0842c-fg);background:var(--c-fff6e5-bg)}.badge.teal{color:var(--c-378b73-fg);background:var(--c-eaf5ef-bg)}.badge.blue{color:var(--c-6884b5-fg);background:var(--c-edf3fc-bg)}.badge.red{color:var(--c-bb6c6c-fg);background:var(--c-fceeee-bg)}.badge.purple{color:var(--c-8975b0-fg);background:var(--c-f3effa-bg)}.table-bottom{border-top:1px solid var(--line);padding:14px 22px;color:var(--c-a1a9af-fg);font-size:calc(9px * var(--font-scale,1));display:flex;justify-content:space-between;gap:12px}.row-arrow{color:var(--c-a3b1b8-fg);border:0;background:none;display:flex}.row-arrow svg{width:calc(13px * var(--font-scale,1));height:calc(13px * var(--font-scale,1))}.empty{padding:45px 25px;text-align:center;color:var(--c-91a0a8-fg);white-space:normal}.empty b{color:var(--c-556c77-fg);font-size:calc(13px * var(--font-scale,1))}.empty p{font-size:calc(11px * var(--font-scale,1))}.loading{text-align:center;padding:100px 20px;color:var(--c-93a1a9-fg)}.loading h2{font-size:calc(18px * var(--font-scale,1));color:var(--c-46625f-fg);font-weight:550}.loading p{font-size:calc(12px * var(--font-scale,1))}.loader{display:inline-block;border:2px solid var(--c-dfefea-border);border-top-color:var(--teal);width:calc(30px * var(--font-scale,1));height:calc(30px * var(--font-scale,1));border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinning svg{animation:spin 1.3s linear infinite}footer{display:flex;justify-content:space-between;gap:20px;font-size:calc(9px * var(--font-scale,1));color:var(--c-a2abb0-fg);padding:23px 0 0}footer>span:first-child{display:flex;align-items:center;gap:7px}footer .dot{background:var(--c-b7c6c0-bg);width:calc(5px * var(--font-scale,1));height:calc(5px * var(--font-scale,1))}.section-space{margin-top:22px}.project-info{padding:24px}.project-info>p{color:var(--c-788b94-fg);max-width:800px;font-size:calc(12px * var(--font-scale,1))}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.info-item{padding:14px 0;border-bottom:1px solid var(--line)}.info-item small{font-size:calc(10px * var(--font-scale,1));color:var(--c-98a4ab-fg);display:block;margin-bottom:5px}.info-item strong{font-size:calc(12px * var(--font-scale,1));font-weight:550;overflow-wrap:anywhere}.mono{font-family:ui-monospace,SFMono-Regular,monospace;font-size:calc(11px * var(--font-scale,1))}.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}.role-card{padding:22px}.role-card h3{font-size:calc(13px * var(--font-scale,1));margin:0 0 10px}.role-card p{color:var(--c-91a1a9-fg);font-size:calc(11px * var(--font-scale,1));margin:10px 0 0}.timeline{padding:7px 24px 20px}.timeline-item{display:flex;gap:17px;padding:22px 0;border-bottom:1px solid var(--line)}.timeline-item:last-child{border-bottom:0}.timeline-icon{width:calc(32px * var(--font-scale,1));height:calc(32px * var(--font-scale,1));background:var(--c-edf5f2-bg);color:var(--c-6c9c8e-fg);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.timeline-body{flex:1;min-width:0}.timeline-body .task-name{max-width:none}.timeline-body p{font-size:calc(11px * var(--font-scale,1));color:var(--c-96a2a9-fg);margin:5px 0}.timeline-time{font-size:calc(10px * var(--font-scale,1));color:var(--c-9ba7ad-fg);white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{border:1px solid var(--c-e2e9e6-border);border-radius:16px;padding:0;width:min(870px,calc(100% - 32px));max-height:90vh;box-shadow:0 20px 100px var(--c-163c3933-shadow);color:var(--ink)}dialog::backdrop{background:var(--c-112b3666-bg);backdrop-filter:blur(3px)}.dialog-top{padding:18px 25px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--c-ffffff-bg);z-index:1}.icon-button{border:0;background:var(--c-f4f7f7-bg);font-size:calc(23px * var(--font-scale,1));color:var(--c-7c8e97-fg);border-radius:6px;width:calc(29px * var(--font-scale,1));height:calc(29px * var(--font-scale,1));line-height:1}.detail-main{padding:24px 28px 30px}.detail-main h2{font-size:calc(23px * var(--font-scale,1));letter-spacing:-.5px;overflow-wrap:anywhere;margin:0 0 7px}.detail-badges{display:flex;gap:8px;margin:17px 0;flex-wrap:wrap}.detail-actions{display:flex;gap:10px;align-items:center;margin:20px 0}.detail-section-title{font-size:calc(13px * var(--font-scale,1));margin:28px 0 12px;font-weight:600}.detail-note{font-size:calc(11px * var(--font-scale,1));color:var(--c-93a0a7-fg)}.detail-main details{border:1px solid var(--line);border-radius:7px;margin-bottom:9px;overflow:hidden}.detail-main summary{padding:12px 14px;font-size:calc(12px * var(--font-scale,1));font-weight:550;cursor:pointer;background:var(--c-f9fbfb-bg)}.detail-main pre{font:calc(11px * var(--font-scale,1))/1.8 ui-monospace,SFMono-Regular,monospace;white-space:pre-wrap;overflow-wrap:anywhere;padding:0 16px 12px;max-height:440px;overflow:auto;color:var(--c-60727d-fg)}.evaluation{padding:14px 16px;border-top:1px solid var(--line)}.evaluation h4{margin:0 0 8px;font-weight:550;font-size:calc(12px * var(--font-scale,1))}.evaluation p{font-size:calc(11px * var(--font-scale,1));color:var(--c-7f919b-fg);white-space:pre-wrap;overflow-wrap:anywhere}.evaluation-heading{display:flex;justify-content:space-between;gap:15px;align-items:center}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--c-173e37-bg);color:var(--c-ffffff-fg);border-radius:8px;padding:11px 20px;font-size:calc(12px * var(--font-scale,1));box-shadow:0 6px 25px var(--c-00000022-shadow);z-index:99}
@media(min-width:1600px){main{padding-top:42px}.metric{min-height:154px;padding:22px 25px}.panels{margin-top:25px}.pipeline{padding-bottom:27px}.activity-chart{height:134px}}
@media(max-width:1200px){.sidebar{width:calc(205px * var(--font-scale,1));padding-left:12px;padding-right:12px}.shell{margin-left:calc(205px * var(--font-scale,1))}main{padding:27px 25px}.topbar{padding:0 25px}.heading-actions{flex-wrap:wrap;justify-content:flex-end}.heading-actions select{max-width:200px}.metric{padding:16px}.table-tools{align-items:flex-start;flex-wrap:wrap}.table-search{width:100%}th,td{padding-left:15px;padding-right:15px}.page-heading{align-items:flex-start}.brand{font-size:calc(25px * var(--font-scale,1))}.status-legend{gap:13px 15px}}
@media(max-width:900px){.sidebar{width:calc(72px * var(--font-scale,1));padding:23px 10px}.brand{margin:0 6px 33px}.brand>span:last-child,.workspace-label,.nav-item>svg~*,.sidebar-bottom,.nav-item .nav-external{display:none}.brand-mark{font-size:calc(34px * var(--font-scale,1));min-width:36px}.nav-item{font-size:0;justify-content:center;padding:13px 0;gap:0}.nav-item svg{width:calc(19px * var(--font-scale,1));height:calc(19px * var(--font-scale,1))}.resources-label{margin-top:23px}.shell{margin-left:calc(72px * var(--font-scale,1))}.topbar{height:61px}.cards{gap:10px}.metric{padding:14px 12px}.metric-value{font-size:calc(29px * var(--font-scale,1))}.metric-top{font-size:calc(10px * var(--font-scale,1))}.metric-icon{width:calc(26px * var(--font-scale,1));height:calc(26px * var(--font-scale,1))}.metric-note{font-size:calc(9px * var(--font-scale,1))}.panels{gap:13px}h1{font-size:calc(26px * var(--font-scale,1))}.panel-head{padding:17px 17px 0}.pipeline{padding:17px}.private-label{display:none}}
@media(max-width:650px){.sidebar{position:relative;width:100%;height:auto;padding:14px 16px 0;border-right:0;border-bottom:1px solid var(--line);display:block}.brand{font-size:calc(23px * var(--font-scale,1));margin:0 0 15px;gap:9px}.brand>span:last-child{display:block}.brand-mark{height:calc(30px * var(--font-scale,1));min-width:29px;width:calc(29px * var(--font-scale,1));font-size:calc(28px * var(--font-scale,1));border-radius:9px}.brand-sub{font-size:calc(6px * var(--font-scale,1));letter-spacing:1.8px}.brand-mark>span{width:calc(7px * var(--font-scale,1));height:calc(7px * var(--font-scale,1));right:3px;top:4px}.sidebar nav{display:flex;gap:2px;overflow-x:auto}.nav-item{font-size:calc(10px * var(--font-scale,1));gap:6px;white-space:nowrap;padding:9px 9px;width:auto;margin-bottom:10px;border-radius:5px}.nav-item svg{width:calc(13px * var(--font-scale,1));height:calc(13px * var(--font-scale,1))}.sidebar>a.nav-item{display:none}.nav-count{display:none}.shell{margin:0}.topbar{display:none}main{padding:24px 16px 15px}.page-heading{display:block}.eyebrow{font-size:calc(8px * var(--font-scale,1))}h1{font-size:calc(27px * var(--font-scale,1))}.heading-actions{margin-top:18px;justify-content:flex-start}.heading-actions select{flex:1;max-width:none;min-width:0}/* min-width:0, or the flex item refuses to shrink below its longest option, which at the larger text sizes is wider than a 320px phone */.sync-row{margin:17px 0 20px;gap:6px;flex-wrap:wrap;font-size:calc(9px * var(--font-scale,1))}.sync-interval{display:none}.cards{grid-template-columns:1fr 1fr;gap:11px}.metric{min-height:132px;padding:16px}.metric-top{font-size:calc(11px * var(--font-scale,1))}.metric-note{font-size:calc(9px * var(--font-scale,1))}.metric-value{font-size:calc(32px * var(--font-scale,1))}.panels{grid-template-columns:1fr;gap:16px;margin:17px 0}.pipeline{padding-bottom:24px}.activity-chart{height:110px}.attention{gap:9px;align-items:flex-start}.attention .text-button{font-size:calc(9px * var(--font-scale,1));margin-top:2px}.attention b{font-size:calc(10px * var(--font-scale,1))}.attention p{font-size:calc(9px * var(--font-scale,1))}.table-panel .panel-head{padding:16px}.table-tools{padding:0 14px 13px}.tab{padding:5px 7px;font-size:calc(9px * var(--font-scale,1))}.filter-row{padding:0 14px 12px}.table-bottom{padding:12px 15px;flex-wrap:wrap}.info-grid{grid-template-columns:1fr}.role-grid{grid-template-columns:1fr}.timeline{padding:5px 16px 10px}.timeline-time{font-size:calc(8px * var(--font-scale,1))}.timeline-item{gap:10px}.timeline-body .task-name{font-size:calc(10px * var(--font-scale,1))}.timeline-body p{font-size:calc(10px * var(--font-scale,1))}footer{font-size:calc(8px * var(--font-scale,1))}.detail-main{padding:20px 18px}.detail-main h2{font-size:calc(20px * var(--font-scale,1))}.dialog-top{padding:14px 18px}.detail-actions{flex-wrap:wrap}.info-item{padding:10px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.table-scroll{position:relative}table{min-width:760px}th:first-child:not(.row-number),td:first-child:not(.row-number),th.row-number+th,td.row-number+td{min-width:235px}

/* --- Collapsing the sidebar ----------------------------------------------------------
   The control sits at the top right of the sidebar, beside the wordmark, and reads "<"
   while there is something to fold away and ">" once it is folded. Collapsed, the sidebar
   takes exactly the icons-only shape it already takes between 651px and 900px, so this is
   a layout the design is known to hold rather than a second one to keep in step. Labels
   stay in the accessibility tree at font-size 0, the way that breakpoint leaves them, and
   the tooltip below carries them for the eye. */
.sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sidebar-toggle{width:calc(26px * var(--font-scale,1));height:calc(26px * var(--font-scale,1));margin-top:7px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sidebar-toggle:hover{color:var(--teal);border-color:var(--c-c2d9d2-border)}
.sidebar-toggle svg{width:calc(13px * var(--font-scale,1));height:calc(13px * var(--font-scale,1));transform:rotate(180deg)}
:root[data-sidebar="collapsed"] .sidebar-toggle svg{transform:none}
/* Below 900px the sidebar is already icons only, and below 650px it is a bar across the
   top, so there is nothing for this control to fold and it does not appear. */
@media(max-width:900px){.sidebar-toggle{display:none}}
@media(max-width:650px){.sidebar-head{display:block}}
@media(min-width:901px){
  :root[data-sidebar="collapsed"] .sidebar{width:calc(72px * var(--font-scale,1));padding:33px 10px 0}
  :root[data-sidebar="collapsed"] .shell{margin-left:calc(72px * var(--font-scale,1))}
  :root[data-sidebar="collapsed"] .sidebar-head{flex-direction:column;align-items:center;gap:0}
  :root[data-sidebar="collapsed"] .brand{margin:0 0 13px}
  :root[data-sidebar="collapsed"] .sidebar-toggle{margin:0 0 21px}
  :root[data-sidebar="collapsed"] .brand>span:last-child,
  :root[data-sidebar="collapsed"] .workspace-label,
  :root[data-sidebar="collapsed"] .nav-item>svg~*,
  :root[data-sidebar="collapsed"] .sidebar-bottom,
  :root[data-sidebar="collapsed"] .nav-item .nav-external{display:none}
  :root[data-sidebar="collapsed"] .brand-mark{font-size:calc(34px * var(--font-scale,1));min-width:36px}
  :root[data-sidebar="collapsed"] .nav-item{font-size:0;justify-content:center;padding:13px 0;gap:0}
  :root[data-sidebar="collapsed"] .nav-item svg{width:calc(19px * var(--font-scale,1));height:calc(19px * var(--font-scale,1))}
  :root[data-sidebar="collapsed"] .resources-label{margin-top:23px}
  :root[data-sidebar="collapsed"] .nav-item[data-tip]::after{content:attr(data-tip)}
  :root[data-sidebar="collapsed"] .nav-item[data-tip]:hover::after,
  :root[data-sidebar="collapsed"] .nav-item[data-tip]:focus-visible::after{opacity:1;visibility:visible}
}
/* The tooltip belongs to the state of having no labels, not to the way that state was
   reached. Between 651px and 900px the rail is icons only by breakpoint, and until this rule
   it carried no tooltip at all: the same picture with two different affordances depending on
   how the reader arrived at it. */
.sidebar .nav-item{position:relative}
/* The pseudo-element is generated only where it can actually be shown. A hidden one still
   takes part in layout: it inflated every nav item's scrollWidth by its own width, which is
   a false positive for any "does this label fit" check, and it stretched the scroll range of
   the phone bar's nav strip with empty space nothing could ever occupy. Styles sit here;
   `content` is what the two contexts below switch on. */
.sidebar .nav-item[data-tip]::after{content:none;position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:var(--ink);color:var(--panel);font-size:calc(11px * var(--font-scale,1));font-weight:550;padding:6px 10px;border-radius:7px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .12s ease;z-index:30}
@media(min-width:651px) and (max-width:900px){
  .sidebar .nav-item[data-tip]::after{content:attr(data-tip)}
  .sidebar .nav-item[data-tip]:hover::after,
  .sidebar .nav-item[data-tip]:focus-visible::after{opacity:1;visibility:visible}
}
