.notification-bell{position:relative;flex-shrink:0}.notification-trigger{display:grid;place-items:center;position:relative;width:38px;height:38px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--color-text-muted, #5c6b7e);cursor:pointer}.notification-trigger:hover,.notification-trigger[aria-expanded=true]{background:#eef2f8;color:var(--color-text, #182436)}.notification-trigger:focus-visible,.notification-dismiss:focus-visible,.notification-read-action:focus-visible{outline:2px solid var(--color-primary, #2358d6);outline-offset:-2px}.notification-count{position:absolute;top:-2px;right:-4px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:2px solid #fff;border-radius:10px;background:#b42335;color:#fff;font-size:10px;font-weight:700;line-height:1}.notification-panel{position:absolute;top:calc(100% + 12px);right:0;width:380px;max-height:min(520px,calc(100dvh - 90px));overflow-y:auto;z-index:100;background:var(--color-surface, #fff);border:1px solid var(--color-border, #dce3ed);border-radius:12px;box-shadow:0 12px 40px #1824361a,0 2px 8px #1824360a}.notification-panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px;border-bottom:1px solid var(--color-border, #dce3ed)}.notification-panel-header h2{font-size:14px;font-weight:650;margin:0}.notification-panel-header h2:focus{outline:none}.notification-list{margin:0;padding:0;list-style:none}.notification-item{display:flex;align-items:flex-start;gap:4px;padding-right:10px;border-bottom:1px solid var(--color-border, #dce3ed)}.notification-item:last-child{border-bottom:0}.notification-item.is-unread{background:#f3f6ff}.notification-message{display:flex;align-items:flex-start;gap:10px;width:100%;min-width:0;padding:15px 8px 15px 16px;text-align:left;background:none;border:0;color:var(--color-text, #182436);font:inherit}.notification-read-action{cursor:pointer}.notification-read-action:hover{background:#eaf0ff}.notification-read-action:disabled,.notification-dismiss:disabled{cursor:wait;opacity:.6}.notification-copy{display:flex;flex-direction:column;gap:4px;min-width:0;overflow-wrap:anywhere}.notification-title{font-size:13px;font-weight:500;line-height:1.45}.is-unread .notification-title{font-weight:650}.notification-body{color:var(--color-text-muted, #5c6b7e);font-size:12px;line-height:1.55}.notification-time{display:flex;flex-wrap:wrap;gap:5px;margin-top:3px;font-size:11px;color:var(--color-text-muted, #5c6b7e)}.notification-severity{flex-shrink:0;margin-top:2px}.notification-severity-info{color:var(--color-primary, #2358d6)}.notification-severity-warning{color:#865309}.notification-severity-critical{color:#b42335}.notification-dismiss{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;margin-top:9px;background:none;border:0;border-radius:6px;color:var(--color-text-muted, #5c6b7e);cursor:pointer}.notification-dismiss:hover{background:#e5ebf4;color:var(--color-text, #182436)}.notification-empty{display:flex;align-items:center;flex-direction:column;gap:8px;padding:32px 20px;margin:0;text-align:center;color:var(--color-text-muted, #5c6b7e);font-size:13px}.notification-empty p{margin:0;color:var(--color-text, #182436);font-weight:600}.notification-empty span{font-size:12px}.notification-error{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff5f3;border-bottom:1px solid #f0d2ce}.notification-error p{flex:1;margin:0;color:#9a2834;font-size:12px;line-height:1.5}@media (max-width: 700px){.notification-panel{position:fixed;top:60px;right:12px;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 76px)}}.app-shell{display:grid;grid-template-columns:200px minmax(0,1fr);grid-template-rows:68px 1fr;min-height:100vh;min-height:100dvh;background:var(--color-bg, #f5f7fa)}.app-header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px;position:sticky;top:0;z-index:50;background:var(--color-surface, #fff);border-bottom:1px solid var(--color-border, #dce3ed)}.app-brand{display:inline-flex;align-items:center;gap:10px;color:var(--color-text, #182436);text-decoration:none;flex-shrink:0}.app-brand img{object-fit:contain}.app-brand-name{font-size:18px;font-weight:700;letter-spacing:.8px;line-height:1.1}.app-brand-name>span{display:block;margin-top:5px;font-size:10px;font-weight:600;letter-spacing:1.2px;color:var(--color-text-muted, #5c6b7e)}.app-header-account{display:flex;align-items:center;gap:14px;min-width:0}.app-account{display:flex;align-items:center;gap:9px;min-width:0}.app-avatar{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;background:#eef2f8;border:1px solid var(--color-border, #dce3ed);border-radius:50%;color:var(--color-text-muted, #5c6b7e);font-size:11px;font-weight:600}.app-account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text, #182436);font-size:13px}.app-header .app-logout{color:var(--color-text-muted, #5c6b7e)}.app-sidebar{display:flex;flex-direction:column;justify-content:space-between;position:sticky;top:68px;height:calc(100vh - 68px);height:calc(100dvh - 68px);padding:26px 14px 20px;background:var(--color-surface, #fff);border-right:1px solid var(--color-border, #dce3ed)}.app-nav-label{padding:0 12px;margin-bottom:12px;color:var(--color-text-muted, #5c6b7e);font-size:10px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase}.app-navigation{list-style:none;display:flex;flex-direction:column;gap:5px;margin:0;padding:0}.app-nav-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:8px;font-size:13px;font-weight:500;text-decoration:none;color:var(--color-text-muted, #5c6b7e);white-space:nowrap}.app-nav-link svg{flex-shrink:0}.app-nav-link:hover{background:#f2f5fa;color:var(--color-text, #182436)}.app-nav-link.is-active{background:#eaf0ff;color:var(--color-primary, #2358d6);font-weight:600}.app-sidebar-footer{margin:24px 12px 0;padding-top:16px;border-top:1px solid var(--color-border, #dce3ed);color:var(--color-text-muted, #5c6b7e);font-size:12px;line-height:1.7}.app-content{min-width:0}.app-content:focus{outline:none}.app-brand:focus-visible,.app-nav-link:focus-visible{outline:2px solid var(--color-primary, #2358d6);outline-offset:3px}.app-skip-link{position:fixed;top:10px;left:16px;z-index:200;padding:10px 16px;border-radius:8px;background:var(--color-primary, #2358d6);color:#fff;transform:translateY(-160%)}.app-skip-link:focus{transform:translateY(0)}@media (max-width: 900px){.app-shell{grid-template-columns:176px minmax(0,1fr)}.app-sidebar{padding-right:10px;padding-left:10px}.app-nav-link{gap:8px;padding-right:10px;padding-left:10px}}@media (max-width: 700px){.app-shell{display:block}.app-header{height:64px;padding:0 16px;gap:10px}.app-header-account{gap:8px}.app-account-name{display:none}.app-header .app-logout{padding:9px}.app-logout>span{display:none}.app-sidebar{display:block;position:static;height:auto;padding:8px 12px;border-right:0;border-bottom:1px solid var(--color-border, #dce3ed);overflow-x:auto}.app-nav-label,.app-sidebar-footer{display:none}.app-navigation{flex-direction:row;gap:4px}.app-navigation>li{flex:1 0 auto}.app-nav-link{padding:10px;justify-content:center;gap:7px;font-size:12px}}@media (max-width: 380px){.app-header{padding:0 12px}.app-account{display:none}.app-sidebar{padding-right:8px;padding-left:8px}}.workspace-page{min-width:0}.workspace-eyebrow{color:var(--color-text-muted);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px}.workspace-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.workspace-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.workspace-kpi{padding:20px;min-width:0}.workspace-kpi-label{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;color:var(--color-text-muted);font-size:12px;font-weight:500}.workspace-kpi-label svg{flex-shrink:0;color:var(--workspace-tone, var(--color-text-muted))}.workspace-kpi-value{display:block;margin-top:12px;font-size:32px;font-weight:600;line-height:1.2;letter-spacing:-.8px;color:var(--workspace-tone, var(--color-text));font-variant-numeric:tabular-nums}.workspace-kpi-detail{display:block;margin-top:5px;font-size:12px;color:var(--workspace-tone, var(--color-text-muted))}.workspace-tone-info{--workspace-tone: var(--color-primary)}.workspace-tone-success{--workspace-tone: var(--color-success)}.workspace-tone-warning{--workspace-tone: var(--color-warning)}.workspace-tone-danger{--workspace-tone: var(--color-danger)}.workspace-section{min-width:0;margin-bottom:20px}.workspace-two-column>.workspace-section{margin-bottom:0}.workspace-section-header{padding:16px 20px;border-bottom:1px solid var(--color-border)}.workspace-section-header h2{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:600;line-height:1.4}.workspace-section-header h2>svg{color:var(--color-text-muted);flex-shrink:0}.workspace-section-header p{color:var(--color-text-muted);font-size:12px;margin:4px 0 0}.workspace-section-body{padding:16px 20px}.workspace-breakdown{display:grid;gap:12px}.workspace-breakdown-row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px}.workspace-breakdown-row strong{font-weight:600;font-variant-numeric:tabular-nums}.workspace-capitalize{text-transform:capitalize}.workspace-muted{color:var(--color-text-muted);font-size:13px}.workspace-row-list{margin:-6px 0}.workspace-data-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--color-border);font-size:13px;min-width:0}.workspace-data-row:last-child{border-bottom:0}.workspace-link-row{color:inherit;text-decoration:none;border-radius:5px}.workspace-link-row:hover{background:var(--color-bg)}.workspace-link-row:hover .workspace-row-main>strong,.workspace-link-row:hover>strong{color:var(--color-primary)}.workspace-row-main{flex:1;min-width:0;overflow-wrap:anywhere}.workspace-row-main strong,strong.workspace-row-main{font-size:13px;font-weight:550}.workspace-row-main p{color:var(--color-text-muted);font-size:12px;margin-top:3px}.workspace-row-tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.workspace-row-tags>svg{color:var(--color-text-muted)}.workspace-feed-row{align-items:flex-start}.workspace-inline-links{display:flex;flex-wrap:wrap;gap:4px 12px}.workspace-inline-links a{color:var(--color-primary);text-underline-offset:3px}.workspace-timestamp{color:var(--color-text-muted);font-size:12px;text-align:right}.workspace-empty-message{display:flex;align-items:center;gap:8px;color:var(--color-text-muted);font-size:13px;padding:6px 0}.workspace-empty-message svg{flex-shrink:0}.workspace-readiness{gap:12px}.workspace-environment{text-transform:uppercase;color:var(--color-text-muted);font-size:11px;font-weight:600}.workspace-score-meter{display:block;width:88px;height:6px;border-radius:3px;background:var(--color-border);overflow:hidden}.workspace-score-meter>span{display:block;height:100%;background:var(--workspace-tone, var(--color-primary));border-radius:inherit}.workspace-score{font-weight:600;font-variant-numeric:tabular-nums}.workspace-graph-summary{margin-bottom:12px}.workspace-graph-links{display:flex;flex-wrap:wrap;gap:8px}.workspace-graph-link{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--color-border);border-radius:6px;color:var(--workspace-tone, var(--color-text));text-decoration:none;font-size:12px}.workspace-graph-link:hover{border-color:var(--color-primary);background:var(--color-bg)}.workspace-filters{display:flex;align-items:flex-end;gap:16px;padding:16px 20px;margin-bottom:20px}.workspace-filter-label{display:block;margin-bottom:6px;font-size:12px;font-weight:500;color:var(--color-text-muted)}.workspace-search{flex:1;min-width:0}.workspace-search-control{display:block;position:relative}.workspace-search-control>svg{position:absolute;top:50%;left:12px;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.workspace-search-control>input{width:100%;padding-left:39px!important;min-height:38px}.workspace-status-filter{width:180px;flex-shrink:0}.workspace-status-filter select{min-height:38px;width:100%}.workspace-project-list{display:grid;gap:14px}.workspace-project-card{display:block;padding:20px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}.workspace-project-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.workspace-project-card:hover h2{color:var(--color-primary)}.workspace-project-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.workspace-project-heading{display:flex;flex-wrap:wrap;align-items:center;gap:9px 12px;min-width:0}.workspace-project-heading h2{font-size:16px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.workspace-project-updated{display:flex;align-items:center;gap:14px;color:var(--color-text-muted);font-size:12px;flex-shrink:0}.workspace-project-context{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:9px;font-size:12px;color:var(--color-text-muted)}.workspace-project-context>span{display:inline-flex;align-items:center;gap:6px}.workspace-project-stats{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:18px;font-size:12px;color:var(--color-text-muted)}.workspace-project-stats>span{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.workspace-project-stats svg{flex-shrink:0}.workspace-project-stats .workspace-critical{color:var(--color-danger)}.workspace-project-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.workspace-pagination{text-align:center;margin-top:24px}.workspace-back-link{display:inline-flex;align-items:center;gap:7px;color:var(--color-text-muted);font-size:12px;text-decoration:none;margin-bottom:20px}.workspace-back-link:hover{color:var(--color-primary)}.workspace-project-intro{min-width:0;flex:1}.workspace-project-intro .page-title{margin:0;overflow-wrap:anywhere}.workspace-project-intro .page-description{max-width:760px}.workspace-project-primary{flex-shrink:0}.workspace-project-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:8px 0 20px}.workspace-tabs{display:flex;align-items:stretch;overflow-x:auto;border-bottom:1px solid var(--color-border);gap:4px;margin-bottom:24px;padding:3px 3px 0;scrollbar-width:thin}.workspace-tabs>button{display:inline-flex;align-items:center;gap:7px;padding:12px 13px;min-height:43px;border:0;border-bottom:2px solid transparent;background:none;color:var(--color-text-muted);font:inherit;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer}.workspace-tabs>button:hover{color:var(--color-text);background:var(--color-surface)}.workspace-tabs>button[aria-selected=true]{border-bottom-color:var(--color-primary);color:var(--color-primary)}.workspace-tabs>button:focus-visible{outline-offset:-3px}.workspace-tab-panel{min-width:0}.workspace-tab-panel[hidden]{display:none}.workspace-info-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:7px 0;font-size:13px}.workspace-info-row>:last-child{text-align:right;overflow-wrap:anywhere}.workspace-doc-links{display:grid;gap:6px;font-size:13px;margin-top:7px}.workspace-doc-links>span{color:var(--color-text-muted)}.workspace-doc-links a{color:var(--color-primary);overflow-wrap:anywhere;text-underline-offset:3px}.workspace-tag-section{margin-bottom:24px}.workspace-tag-section h2{font-size:13px;font-weight:600}.workspace-audit-meta{color:var(--color-text-muted);font-size:12px;margin-top:24px;overflow-wrap:anywhere}@media (max-width: 1180px){.workspace-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 800px){.workspace-two-column{grid-template-columns:minmax(0,1fr);gap:16px}.workspace-project-card-header{flex-direction:column;gap:8px}.workspace-project-updated{width:100%;justify-content:space-between}.workspace-project-tools{margin-top:12px}}@media (max-width: 540px){.workspace-kpi-grid{grid-template-columns:minmax(0,1fr);gap:12px}.workspace-kpi{padding:16px}.workspace-kpi-value{margin-top:8px;font-size:28px}.workspace-filters{align-items:stretch;flex-direction:column;padding:16px;gap:12px}.workspace-status-filter{width:100%}.workspace-project-card,.workspace-section-body{padding:16px}.workspace-section-header{padding:14px 16px}.workspace-data-row{flex-wrap:wrap;gap:9px}.workspace-row-main{flex-basis:100%}.workspace-feed-row>.workspace-row-main{order:2}.workspace-feed-row>.workspace-timestamp{order:3;text-align:left}.workspace-project-stats{gap:10px 14px}.workspace-tabs>button{padding:12px 10px}}@media (pointer: coarse){.workspace-tabs>button,.workspace-graph-link{min-height:44px}}@media (prefers-reduced-motion: reduce){.workspace-project-card{transition:none}}.assistant-panel{position:fixed;inset:0 0 0 auto;margin:0;width:min(440px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;padding:0;color:var(--color-text);background:var(--color-surface);border:0;border-left:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.assistant-panel[open]{display:flex;flex-direction:column}.assistant-panel::backdrop{background:#18243640}.assistant-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:650}.assistant-title svg{color:var(--color-primary)}.operations-page .page-header{margin-bottom:24px}.operations-toolbar{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 18px;margin-bottom:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px}.operations-filter{display:flex;flex-direction:column;gap:6px}.operations-filter label{font-size:12px;font-weight:600;color:var(--color-text-muted)}.operations-filter select{min-width:180px;background:var(--color-surface)}.operations-result-count{font-size:12px;color:var(--color-text-muted);padding-bottom:10px}.release-train-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:18px}.release-train-card{display:block;padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;text-decoration:none;color:var(--color-text)}.release-train-card:hover{border-color:#b4c8f0;box-shadow:0 4px 16px #18243608}.release-train-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.release-train-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.operations-symbol{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#eef3fd;color:var(--color-primary)}.release-train-card h2{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 8px;font-size:16px;font-weight:600;overflow-wrap:anywhere}.release-train-card h2 svg{flex-shrink:0;color:var(--color-text-muted)}.release-train-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;color:var(--color-text-muted);line-height:1.6;margin-bottom:18px;overflow-wrap:anywhere}.release-train-meta{display:flex;flex-direction:column;gap:9px;font-size:12px;color:var(--color-text-muted)}.release-train-meta>span{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.operations-overdue{color:#b42335}.release-train-readiness{margin-top:17px;padding-top:14px;border-top:1px solid var(--color-border)}.release-create-dialog{width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;margin:auto;padding:24px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:14px;box-shadow:0 20px 60px #18243626}.release-create-dialog::backdrop{background:#18243680}.operations-dialog-description{font-size:13px;color:var(--color-text-muted);margin:-8px 0 20px}.operations-form-error{color:var(--color-danger);font-size:13px;margin:0 0 12px}.capacity-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.capacity-title .page-title{margin-bottom:0}.capacity-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.capacity-kpi{padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px}.capacity-kpi-label{font-size:12px;font-weight:500;color:var(--color-text-muted);margin-bottom:10px}.capacity-kpi-value{font-size:28px;font-weight:650;line-height:1.2}.capacity-source-note{font-size:12px;color:var(--color-text-muted);margin-top:20px}.capacity-engineer-header{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.capacity-engineer-identity{display:flex;align-items:flex-start;gap:12px}.capacity-engineer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex-shrink:0}.capacity-ticket-summary{flex:1;color:var(--color-text-muted);min-width:100px;overflow-wrap:anywhere}.capacity-ticket-row{flex-wrap:wrap}.capacity-timeline{max-width:160px;overflow:hidden}.capacity-unknown{padding:8px 10px;border-radius:6px;background:#eef2f8;color:var(--color-text-muted);font-size:12px}@media (max-width: 1000px){.capacity-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-engineer-identity{flex-wrap:wrap}.capacity-engineer-actions{width:100%;padding-left:48px;justify-content:space-between}}@media (max-width: 480px){.operations-filter,.operations-filter select{width:100%;min-width:0}.operations-result-count{padding-bottom:0}.capacity-kpi-grid{gap:10px}.capacity-kpi{padding:14px}.capacity-kpi-value{font-size:24px}.capacity-engineer-header{padding:15px}.capacity-engineer-actions{padding-left:0}.capacity-ticket-summary{flex:1 0 100%;order:3}.capacity-timeline{order:4}}@media (prefers-reduced-motion: reduce){.capacity-engineer-card *{transition:none!important}}.planning-page{max-width:1360px}.planning-back{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:500;text-decoration:none}.planning-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 24px}.planning-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.planning-title-row h1{margin:0;font-size:28px;line-height:1.3;letter-spacing:-.6px}.planning-header p{color:var(--color-text-muted);margin-top:7px;font-size:14px}.planning-version{flex-shrink:0;color:var(--color-text-muted);font-size:12px}.planning-notice{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;margin:12px 0;background:#eef3ff;color:#244d99;border:1px solid #d6e2fb;border-radius:8px;font-size:13px;line-height:1.6}.planning-notice>svg{flex-shrink:0;margin-top:2px}.planning-notice-warning{background:#fff5df;color:#865309;border-color:#f0deb8}.planning-notice-danger{background:#fff0ef;color:#a6322c;border-color:#f1d3d0}.planning-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:6px;gap:6px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);margin:0 0 24px}.planning-stage{display:flex;align-items:center;gap:11px;min-height:68px;padding:12px 16px;text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--color-text-muted);cursor:pointer}.planning-stage:hover{background:#f5f7fa}.planning-stage.is-current{background:#eaf0ff;color:#2358d6;border-color:#d8e3fc}.planning-stage-icon{display:flex;flex-shrink:0}.planning-stage-number{display:block;font-size:11px;line-height:1.5;font-weight:500}.planning-stage-label{display:block;font-weight:600;font-size:13px;line-height:1.5}.planning-stage:focus-visible,.planning-editor>summary:focus-visible,.planning-evidence>summary:focus-visible,.planning-table-scroll:focus-visible{outline:2px solid #2358d6;outline-offset:3px}.planning-layout{display:grid;grid-template-columns:minmax(0,1fr) 256px;gap:24px;align-items:start}.planning-main{min-width:0}.planning-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:24px}.planning-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.planning-section-heading h2{display:flex;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:650;line-height:1.45}.planning-section-heading p{max-width:620px;color:var(--color-text-muted);font-size:13px;margin-top:6px}.planning-section-heading>span{flex-shrink:0}.planning-page label{display:block;margin:16px 0;font-size:13px;font-weight:500;color:var(--color-text)}.planning-page input:not([type=checkbox]),.planning-page textarea,.planning-page select{display:block;width:100%;margin-top:7px;box-sizing:border-box;min-width:0;font-weight:400}.planning-page textarea{min-height:86px;resize:vertical}.planning-page input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:#2358d6;flex-shrink:0}.planning-page .planning-check{display:flex;align-items:center;gap:9px;margin:12px 0;font-weight:400;overflow-wrap:anywhere}.planning-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}.planning-actions .btn{flex-shrink:0}.planning-repo-link{background:#f8fafd;padding:14px 16px;border:1px solid var(--color-border);border-radius:8px;margin-bottom:20px}.planning-repo-link>label{margin:0}.planning-repo-link .planning-actions{margin-bottom:0}.planning-repo-link .planning-actions input{flex:1 1 200px;width:auto;margin-top:0}.planning-repo{border:1px solid var(--color-border);padding:4px 16px 12px;border-radius:8px;margin:12px 0}.planning-repo.is-selected{border-color:#b8cdf7}.planning-page .planning-repo-name{font-weight:600}.planning-repo-name svg{color:var(--color-text-muted);flex-shrink:0}.planning-repo .planning-columns label{margin-top:0}.planning-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0 18px}.planning-empty{display:flex;align-items:flex-start;gap:14px;padding:22px 16px;margin:16px 0;border:1px dashed var(--color-border);border-radius:8px;color:var(--color-text-muted)}.planning-empty svg{flex-shrink:0;margin-top:2px}.planning-empty strong{color:var(--color-text);font-size:14px}.planning-empty p{font-size:13px;margin-top:4px}.planning-section-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--color-border);padding-top:20px;margin-top:24px}.planning-section-footer>p,.planning-section-footer>div>p{font-size:12px;color:var(--color-text-muted);max-width:360px}.planning-section-footer>.btn{flex-shrink:0}.planning-section-footer .planning-actions{margin:0}.planning-suggestion{padding:16px;border:1px solid var(--color-border);border-radius:8px;margin:12px 0}.planning-suggestion>p{color:var(--color-text-muted);margin:7px 0;font-size:13px}.planning-suggestion strong{font-size:14px;overflow-wrap:anywhere}.planning-card-heading{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.planning-subheading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 12px}.planning-subheading h3{font-size:15px;margin:0}.planning-evidence{font-size:12px;margin:12px 0;color:var(--color-text-muted)}.planning-evidence summary{cursor:pointer;color:#2358d6;padding:5px 0;font-weight:500}.planning-evidence p{margin:10px 0;padding-left:12px;border-left:2px solid var(--color-border);overflow-wrap:anywhere}.planning-evidence a{display:inline-flex;align-items:center;gap:4px}.planning-team-picker{max-width:360px}.planning-editor{border:1px solid var(--color-border);border-radius:9px;margin:16px 0;min-width:0}.planning-editor>summary{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;list-style:none;border-radius:9px}.planning-editor>summary::-webkit-details-marker{display:none}.planning-editor[open]>summary{border-bottom:1px solid var(--color-border);border-radius:9px 9px 0 0;background:#fbfcfe}.planning-editor-icon{display:flex;padding:9px;background:#eef2f8;color:#5c6b7e;border-radius:8px;flex-shrink:0}.planning-editor-title{min-width:0;flex:1}.planning-editor-title strong{display:block;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.planning-editor-title>span{display:block;margin-top:3px;font-size:12px;color:var(--color-text-muted);overflow-wrap:anywhere}.planning-chevron{color:var(--color-text-muted);flex-shrink:0}.planning-editor[open]>summary .planning-chevron{transform:rotate(180deg)}.planning-editor fieldset{min-width:0;border:0;padding:4px 18px 18px;margin:0}.planning-choice-group{font-size:13px;padding-top:12px}.planning-choice-group>strong{font-weight:600}.planning-hint{color:var(--color-text-muted);font-size:12px;line-height:1.6;overflow-wrap:anywhere}.planning-editor fieldset>.planning-hint{margin-top:12px}.planning-choice-group .planning-hint{margin-top:8px}.planning-remove.btn{color:#a6322c;margin-top:12px}.planning-overview{padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px}.planning-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.planning-overview h2{font-size:16px;line-height:1.5;margin:10px 0 18px;overflow-wrap:anywhere}.planning-overview dl{margin:0}.planning-overview dl>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;font-size:13px}.planning-overview dt{color:var(--color-text-muted)}.planning-overview dd{font-variant-numeric:tabular-nums;font-weight:600}.planning-overview-note{display:flex;gap:8px;align-items:flex-start;padding-top:18px;margin-top:12px;border-top:1px solid var(--color-border);color:var(--color-text-muted)}.planning-overview-note svg{flex-shrink:0;margin-top:2px}.planning-overview-note p,.planning-review-note p{font-size:12px;line-height:1.7}.planning-review-note{display:flex;align-items:flex-start;gap:9px;padding:20px 8px;color:var(--color-text-muted)}.planning-review-note svg{flex-shrink:0;margin-top:2px}.planning-review-note strong{font-size:12px;font-weight:600;color:var(--color-text)}.planning-review-note p{margin-top:5px}.planning-stage-navigation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 24px}.planning-stage-navigation>span{color:var(--color-text-muted);font-size:12px}.planning-table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.planning-page table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.planning-page th{background:#f8fafd;color:var(--color-text-muted);font-size:12px;font-weight:600}.planning-page th,.planning-page td{padding:12px 14px;border-bottom:1px solid var(--color-border)}.planning-page tbody tr:last-child td{border-bottom:0}.planning-published-tasks{margin-top:20px}.planning-published-task{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 0;border-bottom:1px solid var(--color-border)}.planning-published-task:last-child{border-bottom:0}.planning-published-task strong{font-size:13px}.planning-published-task p{font-size:12px;color:var(--color-text-muted);margin-top:4px}.planning-published-task a{display:inline-flex;align-items:center;gap:5px;font-size:12px;flex-shrink:0}.planning-error-text,.planning-published-task .planning-error-text{color:#a6322c;font-size:12px;margin-top:8px;overflow-wrap:anywhere}.planning-activity{margin-top:4px}.planning-activity .planning-section-heading{margin-bottom:16px}.planning-operation{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-top:1px solid var(--color-border)}.planning-operation-detail{min-width:0}.planning-operation-detail strong{font-size:13px}.planning-operation .planning-actions{margin:0;justify-content:flex-end}.planning-receipts{margin:16px 0 0;padding:16px 16px 16px 34px;background:#f8fafd;border:1px solid var(--color-border);border-radius:8px;font-size:12px;overflow-wrap:anywhere}.planning-receipts li+li{margin-top:8px}.planning-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}@media (max-width: 1100px){.planning-layout{grid-template-columns:minmax(0,1fr)}.planning-sidebar{display:none}}@media (max-width: 680px){.planning-header{align-items:flex-start;margin-bottom:20px}.planning-title-row h1{font-size:24px}.planning-version{padding-top:7px}.planning-stages{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:16px}.planning-stage{min-height:62px;gap:8px;padding:10px}.planning-stage-label{font-size:12px}.planning-panel{padding:18px 14px}.planning-section-heading{gap:10px}.planning-section-heading h2{font-size:17px}.planning-section-heading>span{max-width:94px;text-align:center}.planning-columns{grid-template-columns:minmax(0,1fr)}.planning-section-footer{align-items:stretch;flex-direction:column;gap:14px}.planning-section-footer>.btn{align-self:flex-start}.planning-editor>summary{gap:9px;padding:13px 10px}.planning-editor-icon{display:none}.planning-editor fieldset{padding:2px 12px 14px}.planning-stage-navigation{flex-wrap:wrap}.planning-stage-navigation .btn{font-size:12px;padding-inline:8px}.planning-operation{align-items:flex-start;flex-direction:column;gap:12px}.planning-operation .planning-actions{justify-content:flex-start}.planning-published-task{flex-direction:column;gap:8px}}:root{--color-bg: #f5f7fa;--color-surface: #ffffff;--color-bg-card: #ffffff;--color-primary: #2358d6;--color-primary-hover: #1946b4;--color-text: #182436;--color-text-muted: #5c6b7e;--color-border: #dce3ed;--color-border-strong: #bcc8d8;--color-success: #196747;--color-success-bg: #eaf7ef;--color-warning: #865309;--color-warning-bg: #fff5df;--color-danger: #b42332;--color-danger-bg: #fff0f1;--color-info-bg: #eaf0ff;--color-soft: #eef2f8;--radius: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.1);--shadow-lg: 0 12px 32px -8px rgba(15,23,42,.18)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:var(--color-primary)}button svg,a svg{flex-shrink:0}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}input[type=checkbox],input[type=radio]{accent-color:var(--color-primary);width:16px;height:16px}.nav{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:56px;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.nav-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;color:var(--color-primary);text-decoration:none}.nav-brand span{font-size:12px;color:var(--color-text-muted);font-weight:400}.nav-links{display:flex;gap:24px;list-style:none}.nav-links a{text-decoration:none;color:var(--color-text-muted);font-size:14px;font-weight:500;transition:color .15s}.nav-links a:hover,.nav-links a.active{color:var(--color-primary)}.nav-user{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--color-text-muted)}.nav-user button{background:none;border:1px solid var(--color-border);border-radius:var(--radius);padding:6px 14px;font-size:13px;cursor:pointer;color:var(--color-text-muted);transition:border-color .15s}.nav-user button:hover{border-color:var(--color-primary);color:var(--color-primary)}.page{max-width:1440px;margin:0 auto;padding:32px;min-width:0}.page-title{font-size:28px;letter-spacing:-.035em;line-height:1.25;font-weight:700;margin-bottom:8px}.page-subtitle{font-size:14px;color:var(--color-text-muted);margin-bottom:24px}.state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center}.state-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--color-soft);color:var(--color-text-muted);margin-bottom:16px}.state-icon--error{background:var(--color-danger-bg);color:var(--color-danger)}.state-title{font-size:18px;font-weight:600;margin-bottom:8px}.state-message{font-size:14px;color:var(--color-text-muted);margin-bottom:24px;max-width:400px}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius);padding:8px 14px;min-height:38px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .05s}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover{color:var(--color-primary);border-color:var(--color-primary);background:#f1f5f9}.btn-danger{background:var(--color-surface);color:var(--color-danger);border-color:var(--color-border)}.btn-danger:hover{color:#fff;background:var(--color-danger);border-color:var(--color-danger)}.btn-ghost{background:transparent;color:var(--color-text-muted)}.btn-ghost:hover{color:var(--color-primary);background:#2563eb0f}.btn-primary:active,.btn-secondary:active,.btn-danger:active,.btn-ghost:active{transform:translateY(1px)}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-danger:focus-visible,.btn-ghost:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled,.btn-ghost:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn-sm{padding:6px 10px;min-height:32px;font-size:13px}.button-spinner{animation:spin .8s linear infinite}input:not([type=checkbox]):not([type=radio]),select,textarea{font-family:inherit;font-size:14px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:8px 12px;transition:border-color .15s,box-shadow .15s}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb26}input::placeholder,textarea::placeholder{color:var(--color-text-muted);opacity:.7}.spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.login-hero{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:radial-gradient(ellipse at 50% 25%,rgba(37,99,235,.13) 0%,transparent 60%),radial-gradient(ellipse at 82% 85%,rgba(6,182,212,.1) 0%,transparent 55%),var(--color-bg)}.login-card{width:100%;max-width:420px;padding:44px 40px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;box-shadow:var(--shadow-lg);animation:modal-in .4s cubic-bezier(.16,1,.3,1)}.login-orb{width:76px;height:76px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 24px rgba(37,99,235,.35));animation:breathe 3s ease-in-out infinite}.login-orb img{width:60px;height:60px;object-fit:contain}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.login-title{margin:0 0 6px;font-size:34px;font-weight:800;letter-spacing:.06em;background:linear-gradient(90deg,var(--color-primary),#06b6d4);-webkit-background-clip:text;background-clip:text;color:transparent}.login-tagline{margin:0 0 14px;font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--color-primary)}.login-desc{margin:0 auto 28px;max-width:300px;font-size:13px;line-height:1.6;color:var(--color-text-muted)}.login-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 30px;font-size:14px;font-weight:700;color:#fff;border:none;border-radius:999px;cursor:pointer;background:linear-gradient(90deg,var(--color-primary),#06b6d4);box-shadow:0 6px 20px #2563eb4d;transition:transform .15s,box-shadow .15s,opacity .15s}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 28px #2563eb6b}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:26px;font-size:11px;color:var(--color-text-muted)}.login-brand{margin-top:6px;font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--color-border-strong)}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.card-interactive{cursor:pointer;transition:box-shadow .18s,border-color .18s,transform .12s}.card-interactive:hover{box-shadow:var(--shadow-sm);border-color:var(--color-border-strong)}.card-interactive:active{transform:translateY(0)}.card-row{display:flex;align-items:center;gap:16px;padding:14px 16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;transition:border-color .15s,box-shadow .15s}.card-row:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.card-title{font-size:14px;font-weight:600;margin-bottom:12px}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.02em;line-height:1.4;color:#fff;white-space:nowrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:overlay-in .15s ease}.modal{width:460px;max-width:100%;max-height:85vh;overflow-y:auto;padding:28px;background:var(--color-surface);border-radius:16px;box-shadow:var(--shadow-lg);animation:modal-in .18s cubic-bezier(.16,1,.3,1)}.modal-title{font-size:18px;font-weight:700;margin:0 0 20px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.form-field{margin-bottom:16px}.form-label{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.form-control{width:100%}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:28px}.page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.page-description{max-width:72ch;color:var(--color-text-muted);font-size:14px}.page-meta{display:flex;align-items:center;flex-wrap:wrap;gap:16px;color:var(--color-text-muted);font-size:13px}.surface-panel{min-width:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.surface-panel-header{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--color-border)}.surface-panel-header h2,.surface-panel-header h3{font-size:15px;font-weight:650}.ui-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border:1px solid transparent;border-radius:6px;font-size:12px;font-weight:600;line-height:1.5;white-space:nowrap}.ui-badge--neutral{color:#4a586b;background:var(--color-soft)}.ui-badge--info{color:#234caa;background:var(--color-info-bg)}.ui-badge--success{color:var(--color-success);background:var(--color-success-bg)}.ui-badge--warning{color:var(--color-warning);background:var(--color-warning-bg)}.ui-badge--danger{color:var(--color-danger);background:var(--color-danger-bg)}.ui-badge--large{font-size:14px;padding:6px 12px}.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}.toast-region{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:10px;max-width:min(420px,calc(100vw - 32px))}.toast{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);box-shadow:var(--shadow-lg);animation:modal-in .15s ease}.toast>svg{flex-shrink:0;margin-top:2px}.toast--success>svg{color:var(--color-success)}.toast--error>svg{color:var(--color-danger)}.toast--info>svg{color:var(--color-primary)}.toast p{flex:1;overflow-wrap:anywhere}.toast button{min-height:28px;padding:5px}@media (max-width: 900px){.page{padding:24px}.page-header{flex-wrap:wrap;gap:16px}}@media (max-width: 600px){.page{padding:20px 16px}.page-title{font-size:24px}.page-header{margin-bottom:20px}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{min-height:40px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}.state-container{padding:40px 16px}.modal{padding:20px}.modal-actions{flex-wrap:wrap}.toast-region{bottom:16px;right:16px}.login-card{padding:32px 24px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
