@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_d8ebd1{font-family:Inter,Inter Fallback;font-style:normal}.__variable_d8ebd1{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:100 700;font-display:swap;src:url(/_next/static/media/1f160ec2cb9962ef-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:100 700;font-display:swap;src:url(/_next/static/media/ad8a7e2c3c2c120b-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:100 700;font-display:swap;src:url(/_next/static/media/cde148027b808b99-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:100 700;font-display:swap;src:url(/_next/static/media/e61ae719f7cc4155-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:100 700;font-display:swap;src:url(/_next/static/media/0ea4f4df910e6120-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:100 700;font-display:swap;src:url(/_next/static/media/739c2d8941231bb4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Roboto Mono Fallback;src:local("Arial");ascent-override:77.84%;descent-override:20.13%;line-gap-override:0.00%;size-adjust:134.61%}.__className_91f60a{font-family:Roboto Mono,Roboto Mono Fallback;font-style:normal}.__variable_91f60a{--font-roboto-mono:"Roboto Mono","Roboto Mono Fallback"}:root{--font-sans:var(--font-inter),"Inter","Segoe UI",sans-serif;--font-mono:var(--font-roboto-mono),"Roboto Mono",ui-monospace,monospace;--sidebar-width:260px;--sidebar-width-collapsed:64px;--header-height:64px;--bg-sidebar:#0f1115;--border-sidebar:#1f2937;--nav-active-bg:#1f2937;--text-sidebar:#d1d5db;--text-sidebar-muted:#9ca3af;--text-sidebar-bright:#f9fafb;--amber:#d97706;--btn-bg:#92400e;--header-bg:#ffffff;--header-border:#e5e7eb;--text-primary:#111827;--text:var(--text-primary);--text-muted:#4b5563;--text-secondary:#4b5563;--bg-page:#f9fafb;--bg-input:#ffffff;--border-input:#9ca3af;--status-active-bg:#ecfdf5;--status-active-fg:#047857;--status-global-bg:#eff6ff;--status-global-fg:#1d4ed8;--radius-md:6px;--input-height:36px;--field-gap:8px;--nav-item-height:36px;color-scheme:light;font-family:var(--font-sans);background:var(--bg-page);color:var(--text-primary)}*,:after,:before{box-sizing:border-box}body,html{margin:0;min-height:100%}body{font-size:13px;line-height:18px}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.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}.skip-link{position:absolute;left:12px;top:-40px;z-index:20;background:#fff;color:var(--text-primary);padding:8px 12px;border-radius:4px}.skip-link:focus{top:12px}.identity-frame{min-height:100vh;background:var(--bg-page)}.identity-header{display:flex;align-items:center;gap:8px;height:var(--header-height);padding:0 24px;border-bottom:1px solid var(--header-border);background:var(--header-bg)}.identity-header .brand-mark,.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;background:var(--amber);color:#fff;font-family:var(--font-mono);font-size:13px}.brand-name{font-weight:600;font-size:18px;letter-spacing:-.3px}.identity-header .brand-name{color:var(--text-primary)}.brand-badge{background:#374151;color:#d1d5db;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.2px;line-height:14px;padding:1px 4px;border-radius:3px}.identity-main{max-width:28rem;margin:0 auto;padding:2.5rem 1.25rem 4rem}.identity-main a{color:var(--amber)}.identity-main code{font-family:var(--font-mono);background:#f3f4f6;padding:.1rem .3rem}.shell-banner{display:inline-block;margin:0 0 1rem;padding:.2rem .5rem;font-size:11px;font-family:var(--font-mono);letter-spacing:.2px;text-transform:uppercase;color:var(--status-global-fg);background:var(--status-global-bg);border-radius:4px}.field{display:flex;flex-direction:column;gap:var(--field-gap);margin:.75rem 0}.field label,.identity-main label{display:block;margin:.75rem 0 0;color:var(--text-secondary)}.field label{margin:0}.control-select,.deliverables-toolbar select,.gantt-edit-actions select,.kanban-move select,.project-switcher,.structure-inspector select{-moz-appearance:none;appearance:none;-webkit-appearance:none;box-sizing:border-box;height:var(--input-height);padding:0 32px 0 12px;border:1px solid var(--border-input);border-radius:var(--radius-md);font:inherit;color:var(--text-primary);background-color:var(--bg-input);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 4.5L6 8L9.5 4.5' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px;cursor:pointer}.control-select:disabled,.deliverables-toolbar select:disabled,.gantt-edit-actions select:disabled,.kanban-move select:disabled,.project-switcher:disabled,.structure-inspector select:disabled{opacity:.6;cursor:not-allowed}.field input,.identity-main input{width:100%;height:var(--input-height);padding:0 12px;border:1px solid var(--border-input);border-radius:var(--radius-md);font:inherit;background:var(--bg-input)}.btn,.identity-main button,button.btn{display:inline-flex;align-items:center;justify-content:center;margin-top:1rem;height:var(--input-height);padding:0 14px;background:var(--btn-bg);color:#fff;border:0;border-radius:var(--radius-md);font:inherit;font-weight:500;cursor:pointer}.error,.hint{font-size:.9rem}.error{color:#b91c1c}.org-list{padding-left:1.2rem}.org-list li{margin:.6rem 0}.shell-root{display:flex;height:100vh;max-height:100vh;overflow:hidden;background:var(--bg-page)}.shell-root button{margin-top:0;font:inherit}.shell-sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100%;min-height:0;background:var(--bg-sidebar);border-right:1px solid var(--border-sidebar);color:var(--text-sidebar);display:flex;flex-direction:column;gap:24px;padding:16px;overflow:hidden;flex-shrink:0;transition:width .16s ease,min-width .16s ease,padding .16s ease}.shell-sidebar[data-collapsed]{width:var(--sidebar-width-collapsed);min-width:var(--sidebar-width-collapsed);padding-inline:8px;align-items:center}.sidebar-brand{display:flex;flex-direction:column;gap:12px}.logo-row{color:#fff}.logo-row,.org-selector{display:flex;align-items:center;gap:8px}.org-selector{position:relative;height:36px;padding:0 12px;background:#1f2937;border:1px solid #374151;border-radius:6px}.org-swatch{width:16px;height:16px;border-radius:3px;flex-shrink:0}.org-selector select{flex:1 1;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--text-sidebar-bright);font:inherit;font-weight:500;cursor:pointer}.org-chevron{color:#9ca3af;pointer-events:none}.sidebar-nav{display:flex;flex-direction:column;gap:16px;flex:1 1;min-height:0;overflow-y:auto;width:100%}.shell-sidebar[data-collapsed] .logo-row{justify-content:center}.shell-sidebar[data-collapsed] .sidebar-brand{align-items:center;width:100%}.shell-sidebar[data-collapsed] .nav-item{justify-content:center;padding:0;width:var(--nav-item-height);margin-inline:auto}.shell-sidebar[data-collapsed] .nav-active-dot,.shell-sidebar[data-collapsed] .nav-chevron{display:none}.nav-group{display:flex;flex-direction:column;gap:4px}.nav-group-label{margin:0;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.2px;line-height:14px;color:var(--text-sidebar-muted)}.nav-item{position:relative;display:flex;align-items:center;gap:10px;height:var(--nav-item-height);padding:0 12px;border-radius:6px;color:var(--text-sidebar)}.nav-item.is-active{background:var(--nav-active-bg)}.nav-item.is-disabled{opacity:.55;cursor:not-allowed}.nav-icon{display:inline-flex;width:16px;height:16px;flex-shrink:0}.nav-label{flex:1 1;min-width:0}.nav-chevron{display:inline-flex;transform:rotate(180deg);color:var(--text-sidebar-muted)}.nav-active-dot{position:absolute;right:12px;width:4px;height:4px;border-radius:2px;background:var(--amber)}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-sidebar);padding-top:12px;width:100%;flex-shrink:0}.shell-sidebar[data-collapsed] .sidebar-footer{justify-content:center}.sidebar-version{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--font-mono);font-size:12px;color:var(--text-sidebar)}.version-dot{width:8px;height:8px;border-radius:50%;border:1.4px solid}.sidebar-collapse{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:6px;background:#1f2937;border:0;border-radius:4px;color:inherit;cursor:pointer}.shell-sidebar[data-collapsed] .sidebar-collapse{transform:rotate(180deg)}.shell-main-column{flex:1 1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.shell-header{min-height:var(--header-height);justify-content:space-between;padding:0 24px;background:var(--header-bg);border-bottom:1px solid var(--header-border);flex-shrink:0}.breadcrumbs,.crumb,.header-left,.header-right,.shell-header,.user-chip{display:flex;align-items:center;gap:16px}.header-left{flex-wrap:wrap;min-width:0;flex:1 1 auto;row-gap:8px}.header-right{flex-shrink:0}.breadcrumbs,.crumb{gap:6px}.breadcrumbs,.crumb,.crumb-sep{color:var(--text-muted)}.crumb-current{color:var(--text-primary)}.status-badge{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.2px;line-height:14px;padding:2px 8px;border-radius:4px}.status-active{background:var(--status-active-bg);color:var(--status-active-fg)}.status-global{background:var(--status-global-bg);color:var(--status-global-fg)}.project-switcher{min-width:0;max-width:220px}.search-field{display:flex;align-items:center;gap:8px;width:220px;height:var(--input-height);padding:0 12px;border:1px solid var(--border-input);border-radius:var(--radius-md);color:var(--text-secondary)}.search-field input{flex:1 1;min-width:0;border:0;background:transparent;font:inherit;color:var(--text-secondary)}.search-field kbd{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.icon-button,.text-button{background:transparent;border:0;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:16px}.text-button{color:var(--text-muted);font-size:12px}.header-divider{width:1px;height:16px;background:var(--header-border)}.user-chip{gap:8px}.avatar{width:32px;height:32px;border-radius:16px;background:#e5e7eb;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.user-meta{display:flex;flex-direction:column;gap:2px}.user-name{color:var(--text-primary)}.user-role{font-family:var(--font-mono);font-size:11px;letter-spacing:.2px;color:var(--text-muted)}.shell-content{flex:1 1;min-height:0;padding:24px;overflow:auto}.placeholder-page,.project-card-list,.state-screen{max-width:720px}.placeholder-page h1,.projects-page h1,.state-screen h1{margin:0 0 8px;font-size:18px;font-weight:600;letter-spacing:-.3px}.placeholder-page p,.state-screen p{margin:0 0 12px;color:var(--text-secondary)}.project-card-list{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-gap:12px;gap:12px}.project-card{display:block;padding:16px;background:#fff;border:1px solid var(--header-border);border-radius:8px}.project-card:focus-visible,.project-card:hover{border-color:var(--amber)}.project-card strong{display:block;font-size:14px;margin-bottom:4px}.project-card span{color:var(--text-muted);font-family:var(--font-mono);font-size:11px}.structure-page{max-width:960px}.structure-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.structure-header h1,.structure-inspector h2{margin:0 0 8px;font-size:18px;font-weight:600;letter-spacing:-.3px}.muted,.structure-header p{margin:0;color:var(--text-secondary)}.discipline-context h2{margin:0 0 8px;font-size:13px;font-weight:600}.discipline-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 24px}.discipline-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;background:#fff;border:1px solid var(--header-border);font-size:12px}.phase-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:8px;gap:8px}.phase-card{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid var(--header-border);border-radius:8px;text-align:left;cursor:pointer}.phase-card.is-active,.phase-card:focus-visible,.phase-card:hover{border-color:var(--amber)}.phase-sequence{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);min-width:1.5rem}.phase-body{display:flex;flex-direction:column;gap:2px}.phase-meta{color:var(--text-muted);font-size:12px}.structure-overlay{position:fixed;inset:0;z-index:80;isolation:isolate;display:flex;justify-content:flex-end}body[data-drawer-open],body[data-drawer-open] .shell-content{overflow:hidden}.structure-backdrop{position:absolute;inset:0;border:0;background:rgba(17,24,39,.28);cursor:pointer}.structure-inspector{position:relative;width:min(420px,100%);height:100%;background:#fff;border-left:1px solid var(--header-border);padding:24px;overflow:auto;box-shadow:-8px 0 24px rgba(15,17,21,.08)}.structure-inspector label{display:flex;flex-direction:column;align-items:stretch;gap:var(--field-gap);margin:12px 0;color:var(--text-secondary)}.structure-inspector input,.structure-inspector select,.structure-inspector textarea{display:block;width:100%;margin-top:0;border:1px solid var(--border-input);border-radius:var(--radius-md);font:inherit;background-color:var(--bg-input)}.structure-inspector input{height:var(--input-height);padding:0 12px}.structure-inspector textarea{min-height:72px;padding:8px 12px;resize:vertical}.inspector-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.btn.secondary{background:#fff;color:var(--text-primary);border:1px solid var(--header-border)}@media (max-width:1280px){.structure-inspector{width:min(100%,420px)}}.deliverables-page{max-width:1120px}.deliverables-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;align-items:center}.deliverables-search{min-width:min(100%,240px);flex:1 1;height:var(--input-height);padding:0 12px;border:1px solid var(--border-input);border-radius:var(--radius-md);font:inherit;background:var(--bg-input)}.deliverables-table-wrap{overflow:auto;background:#fff;border:1px solid var(--header-border);border-radius:8px}.deliverables-table{width:100%;border-collapse:collapse;font-size:13px}.deliverables-table th{text-align:left;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:10px 12px;border-bottom:1px solid var(--header-border)}.deliverables-table td{padding:12px;border-bottom:1px solid var(--header-border);vertical-align:top;color:var(--text-secondary)}.deliverables-table tr.is-active{background:#fff8eb}.deliverable-link{display:flex;flex-direction:column;gap:2px;background:none;border:0;padding:0;text-align:left;cursor:pointer;font:inherit;color:inherit}.deliverable-link:focus-visible,.deliverables-table tr:hover{outline:none}.deliverable-link:focus-visible strong{color:var(--amber)}.status-pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;padding:2px 8px;border-radius:999px;background:#f3f4f6}.status-pill.status-planned{background:#fef3c7}.status-pill.status-in_progress{background:#dbeafe}.status-pill.status-in_review{background:#e0e7ff}.status-pill.status-approved{background:#d1fae5}.status-pill.status-delivered{background:#dcfce7}.status-pill.status-cancelled{background:#fee2e2}.status-pill.status-active,.status-pill.status-done{background:#d1fae5}.status-pill.status-blocked{background:#fee2e2}.linked-work-packages{margin-top:16px;padding-top:12px;border-top:1px solid var(--header-border)}.linked-wp-list{list-style:none;padding:0;margin:8px 0;display:flex;flex-direction:column;gap:8px}.linked-wp-list li{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.block-reason-form,.linked-wp-create{display:flex;flex-direction:column;gap:8px;margin-top:12px}.traceability-panel{margin-top:16px;padding-top:12px;border-top:1px solid var(--header-border);display:flex;flex-direction:column;gap:16px}.traceability-section h3{margin:0 0 4px;font-size:1rem}.table-count{margin:8px 12px 12px}.owner-fieldset{border:1px solid var(--header-border);border-radius:8px;padding:8px 12px;margin:12px 0}.hub-page{max-width:1100px}.hub-links{display:flex;flex-wrap:wrap;gap:8px;margin:0}.hub-links .btn{margin-top:0}.hub-stale{margin:0 0 16px;padding:10px 12px;border-radius:8px;background:#fef3c7;color:var(--text)}.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.hub-card,.hub-related{background:#fff;border:1px solid var(--header-border);border-radius:8px;padding:16px}.hub-card h2,.hub-related h2{margin:0 0 6px;font-size:14px;font-weight:600}.hub-origin{margin:0 0 12px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.hub-counts,.hub-list,.hub-related-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.hub-counts li,.hub-list li{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.hub-project-meta{margin-top:16px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.planner-page{max-width:1120px}.planner-page.is-gantt,.planner-page.is-kanban,.planner-page.is-milestones{max-width:none}.milestone-board{display:flex;flex-direction:column;gap:16px}.milestone-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.milestone-kpi-value{margin:0 0 6px;font-size:28px;font-weight:650;letter-spacing:-.04em}.milestone-timeline{background:#fff;border:1px solid var(--header-border);border-radius:8px;padding:12px 16px}.milestone-timeline h2{margin:0 0 4px;font-size:14px}.milestone-timeline-list{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:12px 0 0;padding:0}.milestone-diamond-btn{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid transparent;border-radius:8px;padding:4px 8px;cursor:pointer;text-align:left}.milestone-diamond-btn.is-active,.milestone-diamond-btn:focus-visible{border-color:#d97706;outline:2px solid #d97706}.milestone-diamond-btn .gantt-diamond{position:static;transform:none;display:inline-block;width:10px;height:10px;flex-shrink:0;background:#6b7280;-webkit-clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.milestone-reasons{font-size:13px}.milestone-reasons,.milestone-task-list{margin:0 0 12px;padding-left:18px}@media (max-width:1180px){.milestone-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.gantt-derived-note{margin:0 0 12px;padding:8px 10px;border-radius:8px;background:#fff7ed;border:1px solid #fdba74;font-size:13px}.gantt-alert{border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.gantt-alert,.gantt-status{margin:0 0 12px;padding:8px 10px}.gantt-status{border-radius:8px;background:#ecfdf5;border:1px solid #6ee7b7;color:#065f46}.gantt-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:10px}.gantt-board-scroll{overflow-y:hidden;border:1px solid var(--header-border);border-radius:8px;background:#fff}.gantt-board{display:grid;grid-template-columns:minmax(240px,280px) minmax(720px,1fr);min-width:1000px;align-items:start}.gantt-hierarchy{position:-webkit-sticky;position:sticky;left:0;z-index:2;background:#fff;border-right:1px solid var(--header-border)}.gantt-hierarchy-head,.gantt-scale{height:40px;display:flex;align-items:center;padding:0 12px;font-size:12px;font-weight:600;border-bottom:1px solid var(--header-border);background:#f9fafb}.gantt-hierarchy-row,.gantt-row{height:40px;min-height:40px;max-height:40px;display:flex;align-items:center;gap:8px;padding:4px 12px;border-bottom:1px solid #f3f4f6;position:relative;overflow:hidden;box-sizing:border-box}.gantt-hierarchy-row.is-active{background:#fffbeb}.gantt-kind{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.gantt-title,.gantt-title-btn{min-width:0;flex:1 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.gantt-title-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.gantt-bar:focus-visible,.gantt-edit-actions select:focus-visible,.gantt-table input:focus-visible,.gantt-timeline .gantt-diamond:focus-visible,.gantt-title-btn:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.gantt-timeline{position:relative;min-width:720px}.gantt-scale{position:relative;padding:0}.gantt-scale-cell{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;border-right:1px dashed #e5e7eb;font-size:11px;color:var(--text-secondary)}.gantt-rows{position:relative}.gantt-bar{position:absolute;top:8px;height:24px;min-width:36px;max-width:100%;overflow:hidden;box-sizing:border-box;border:0;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:4px;padding:0 8px;font-size:11px;color:#111827;cursor:pointer;white-space:nowrap}.gantt-bar-phase{background:#dbeafe}.gantt-bar-deliverable{background:#fef3c7}.gantt-bar-work_package{background:#e0e7ff}.gantt-bar-task{background:#bfdbfe}.gantt-bar.is-late{background:#fed7aa}.gantt-timeline .gantt-diamond{position:absolute;top:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:0;color:#6b7280;font-size:16px;transform:translateX(-50%);cursor:default}.gantt-undated{font-size:11px;color:var(--text-muted)}.gantt-row-risk{display:none}.gantt-links{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.gantt-link{stroke:#9ca3af;stroke-width:1.5;fill:none}.gantt-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin:12px 0 16px;padding:0;list-style:none;font-size:12px;color:var(--text-secondary)}.gantt-table-wrap{margin-top:8px}.gantt-domain{display:block;font-size:11px;color:var(--text-muted)}.gantt-edit-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:12px}.gantt-shift{display:flex;gap:6px;align-items:center;font-size:13px}@media (prefers-reduced-motion:reduce){.gantt-bar,.gantt-timeline .gantt-diamond{transition:none}}.kanban-derived-note{margin:0 0 12px;padding:8px 10px;border-radius:8px;background:#fff7ed;border:1px solid #fdba74;font-size:13px}.kanban-board-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:8px}.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(240px,1fr));grid-gap:12px;gap:12px;min-width:1000px;align-items:start}.kanban-column{background:#f9fafb;border:1px solid var(--header-border);border-radius:8px;padding:12px;min-height:280px}.kanban-column.is-derived{background:#fff7ed}.kanban-column-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px}.kanban-column-header h2{margin:0;font-size:11px;letter-spacing:.06em}.kanban-card-list{margin:0;padding:0;list-style:none;display:grid;grid-gap:10px;gap:10px}.kanban-card{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:10px 12px;display:grid;grid-gap:6px;gap:6px}.kanban-card.is-active{outline:2px solid var(--amber)}.kanban-card-open:focus-visible,.kanban-card:focus-visible,.kanban-move select:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.kanban-card-open{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}.kanban-card-id{display:block;font-size:11px;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.kanban-card-meta,.kanban-card-risk{margin:0;font-size:12px;color:var(--text-secondary)}.kanban-card-chips{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}.kanban-move{display:grid;grid-gap:var(--field-gap);gap:var(--field-gap);font-size:12px}.kanban-move select{width:100%}.kanban-block-prompt{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:85;isolation:isolate;width:min(420px,calc(100vw - 48px));margin:0;padding:16px;border-radius:8px;border:1px solid #fdba74;background:#fff7ed}.kanban-block-prompt:before{content:"";position:fixed;inset:0;z-index:-1;background:rgba(17,24,39,.28)}@media (prefers-reduced-motion:reduce){.kanban-card,.kanban-column{transition:none}}.planner-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 16px;border-bottom:1px solid var(--header-border)}.planner-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-bottom:2px solid transparent;padding:8px 12px;font:inherit;color:var(--text-secondary);cursor:pointer}.planner-tab.is-active{color:var(--text);border-bottom-color:var(--amber);font-weight:600}.planner-tab:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.planner-issue-rel{display:block;margin-top:2px;font-size:11px;color:var(--text-muted)}.planner-late{display:inline-flex;padding:2px 8px;border-radius:999px;background:#fff7ed;color:#9a3412;font-size:11px;border:1px solid #fdba74}.planner-late-explain{padding:8px 10px;border-radius:8px;background:#fff7ed;border:1px solid #fdba74}.planner-dep-block{padding:8px 10px;border-radius:8px;background:#eef2ff;border:1px solid #c7d2fe}.planner-task-blocked{padding:8px 10px;border-radius:8px;background:#f3f4f6;border:1px solid #d1d5db}.planner-dep-wait{display:inline-flex;padding:2px 8px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:11px;border:1px solid #c7d2fe}.planner-late+.planner-dep-wait,.status-pill+.planner-dep-wait,.status-pill+.planner-late{-webkit-margin-start:8px;margin-inline-start:8px}.planner-deps{margin:20px 0 0}.planner-deps h3,.planner-deps h4{margin:0 0 8px}.planner-dep-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 16px;gap:12px 16px}.planner-dep-list{margin:0;padding:0;list-style:none}.planner-dep-list li{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:6px 0}.planner-dep-add{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.planner-readonly{margin:0 0 16px;padding:10px 12px;border-radius:8px;background:#f3f4f6}.planner-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px 16px;gap:10px 16px;margin:16px 0 0}.planner-dl dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.planner-dl dd{margin:2px 0 0}.planner-pager{display:flex;align-items:center;gap:12px;margin-top:16px}.planner-assign,.planner-lifecycle{display:grid;grid-gap:8px;gap:8px;margin:16px 0}.planner-confirm{padding:10px 12px;border-radius:8px;background:#fff7ed;border:1px solid #fdba74}.planner-history{margin-top:20px}.planner-history-list{margin:8px 0 0;padding-left:18px}.planner-history-list li{display:flex;justify-content:space-between;gap:12px;margin:4px 0}.planner-skel{display:block;background:#e5e7eb;border-radius:4px}.planner-skel-title{width:180px;height:22px;margin-bottom:8px}.planner-skel-line{width:280px;height:12px}.planner-skel-tabs{display:flex;gap:8px;margin-bottom:16px}.planner-skel-tab{width:72px;height:28px}.planner-skel-row{height:14px;width:70%}.inspector-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}.inspector-form{display:grid;grid-gap:10px;gap:10px;margin-bottom:16px}@media (prefers-reduced-motion:reduce){.planner-skel,.planner-tab{transition:none}}@media (max-width:1180px){.deliverables-table td:nth-child(3),.deliverables-table th:nth-child(3),.planner-table td:nth-child(5),.planner-table th:nth-child(5){display:none}.planner-dep-columns,.planner-dl{grid-template-columns:1fr}.kanban-board{grid-template-columns:repeat(4,minmax(220px,1fr))}.deliverables-inspector-shell .structure-inspector{width:min(100%,calc(100vw - var(--sidebar-width)));max-width:calc(100vw - var(--sidebar-width-collapsed))}.hub-grid{grid-template-columns:1fr}.hub-links{width:100%}.hub-links .btn{flex:1 1 auto;text-align:center}}@media (max-width:1280px){.search-field,.user-role{display:none}.project-switcher{max-width:160px}}.gantt-status:empty{display:none}.gantt-board-scroll{overflow-x:auto;overflow-y:auto;max-height:min(52vh,420px)}.gantt-scale-cell{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 4px;box-sizing:border-box}.gantt-table-wrap{overflow-x:auto}.gantt-edit-actions{margin:0 0 12px}.gantt-date-fields{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.gantt-bar{container-type:inline-size;container-name:gantt-bar}.gantt-bar time,.gantt-bar>span[aria-hidden=true]{font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;opacity:.62;flex-shrink:0}@container gantt-bar (max-width: 120px){span[aria-hidden=true],time{display:none}}.gantt-timeline .gantt-body-grid{position:absolute;inset:0;pointer-events:none;z-index:0}.gantt-timeline .gantt-body-grid-cell{position:absolute;top:0;bottom:0;box-sizing:border-box;border-right:1px solid #f3f4f6}.gantt-timeline .gantt-links,.gantt-timeline .gantt-row{z-index:1}.calendar-hub,.calendar-schedule,.calendar-share,.calendar-workspace{max-width:1200px}.calendar-create-grid,.calendar-nav,.calendar-toolbar,.calendar-workspace-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.calendar-toolbar{margin-bottom:16px;justify-content:space-between}.calendar-confirm,.calendar-create,.calendar-group,.calendar-referenced-note,.calendar-share-form,.calendar-share-owner{background:#fff;border:1px solid var(--header-border);border-radius:8px;padding:16px;margin:16px 0}.calendar-confirm h2,.calendar-create h2,.calendar-group h2,.calendar-share-form h2,.calendar-share-owner h2,.calendar-sources h2{margin:0 0 8px;font-size:14px}.calendar-create-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;margin:12px 0}.calendar-create-wide{grid-column:1/-1}.calendar-create label,.calendar-share-form label,.calendar-sources label{display:flex;flex-direction:column;gap:6px}.calendar-card-list{max-width:none}.calendar-card span+span{display:block;margin-top:2px}.calendar-tabs{display:flex;gap:4px}.calendar-heading{margin:0;min-width:10rem;text-align:center;font-weight:600}.calendar-canvas{background:#fff;border:1px solid var(--header-border);border-radius:8px;overflow:auto}.calendar-canvas:focus-visible,.calendar-day-scroll:focus-visible,.calendar-week-scroll:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.calendar-agenda,.calendar-day,.calendar-month,.calendar-week{background:transparent;border:0}.calendar-month{width:100%;border-collapse:collapse;table-layout:fixed;min-width:52rem}.calendar-month td,.calendar-month th{vertical-align:top}.calendar-allday-row,.calendar-month-grid,.calendar-week-head,.calendar-week-row,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(7.5rem,1fr));min-width:52rem}.calendar-allday-row,.calendar-week-head,.calendar-week-row{grid-template-columns:4.5rem repeat(7,minmax(7rem,1fr))}.calendar-time-gutter,.calendar-week-day,.calendar-weekday{padding:8px;color:var(--text-muted);font-size:12px;border-bottom:1px solid var(--header-border)}.calendar-day-cell{min-height:7rem;border-right:1px solid var(--header-border);border-bottom:1px solid var(--header-border);padding:6px;overflow:hidden}.calendar-day-cell.is-outside{background:#f3f4f6;color:var(--text-muted)}.calendar-agenda-item,.calendar-chip,.calendar-day-number,.calendar-day-slot,.calendar-slot,.calendar-target{display:block;width:100%;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit}.calendar-day-number{font-weight:600;margin-bottom:4px}.calendar-day-events{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.calendar-agenda-item,.calendar-chip,.calendar-target{border:1px solid var(--header-border);border-radius:4px;padding:4px 6px;background:#fff7ed;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-agenda-item,.calendar-chip.is-referenced{background:#eff6ff}.calendar-more{color:var(--text-muted);font-size:12px}.calendar-day-scroll,.calendar-week-scroll{max-height:min(62vh,640px);overflow:auto}.calendar-day-slot,.calendar-slot{min-height:2.5rem;border-bottom:1px solid var(--header-border);border-right:1px solid var(--header-border);padding:2px}.calendar-day-slot{display:grid;grid-template-columns:4.5rem 1fr;min-width:28rem}.calendar-day-heading{margin:12px 16px 0;font-size:14px}.calendar-agenda-list{list-style:none;margin:0;padding:12px;display:grid;grid-gap:8px;gap:8px}.calendar-schedule-layout{display:grid;grid-template-columns:minmax(14rem,18rem) 1fr;grid-gap:16px;gap:16px}.calendar-sources{background:#fff;border:1px solid var(--header-border);border-radius:8px;padding:16px;height:-moz-fit-content;height:fit-content}.calendar-check{flex-direction:row!important;align-items:center;gap:8px!important;margin:8px 0}.calendar-check input{width:auto;height:auto}.calendar-grant-list,.calendar-target-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.calendar-grant-row,.calendar-target{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;background:#fff;border:1px solid var(--header-border);border-radius:8px}.calendar-agenda-item:focus-visible,.calendar-chip:focus-visible,.calendar-day-number:focus-visible,.calendar-slot:focus-visible,.calendar-target.is-active{outline:2px solid var(--amber);outline-offset:2px}.calendar-skel{height:12px;width:40%;margin-bottom:12px;border-radius:4px;background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb)}.calendar-empty-hint{padding:12px 16px}@media (max-width:1180px){.calendar-schedule-layout{grid-template-columns:1fr}.calendar-allday-row,.calendar-day-slot,.calendar-month,.calendar-month-grid,.calendar-week-head,.calendar-week-row,.calendar-weekdays{min-width:48rem}}@media (prefers-reduced-motion:reduce){.calendar-skel,.planner-tab,.shell-sidebar{transition:none;animation:none}}