:root {
  --ink: #182328; --muted: #6c797d; --line: #dde3e2; --paper: #f5f7f5;
  --white: #fff; --navy: #142c33; --teal: #087f73; --teal2: #dff3ef;
  --orange: #ef8354; --red: #c94f58; --amber: #a56d00; --blue: #3970b7;
  --shadow: 0 10px 30px rgba(23,42,47,.08);
}
body::before{content:"DEMO ENVIRONMENT · 샘플 데이터 및 시뮬레이션 기능";position:fixed;top:0;left:0;right:0;height:24px;display:grid;place-items:center;background:#6f5420;color:#fff7de;font-size:9px;font-weight:800;letter-spacing:.06em;z-index:100}
body{padding-top:24px}
* { box-sizing: border-box; }
body { margin: 0; font: 14px/1.5 Inter, Pretendard, "Noto Sans KR", system-ui, sans-serif; color: var(--ink); background: var(--paper); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.shell { display: grid; grid-template-columns: 244px 1fr; min-height: 100vh; }
.sidebar { background: var(--navy); color: white; padding: 24px 14px; position: sticky; top: 0; height: 100vh; }
.brand { padding: 0 10px 26px; }
.brand-mark { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--teal); font-weight: 800; margin-bottom: 12px; }
.brand h1 { font-size: 16px; margin: 0; letter-spacing: -.2px; }.brand p { font-size: 11px; opacity: .58; margin: 4px 0 0; }
.nav-label { font-size: 10px; text-transform: uppercase; letter-spacing: 1.4px; opacity: .4; padding: 8px 12px; }
.nav { display: grid; gap: 4px; }
.nav a { color: rgba(255,255,255,.68); text-decoration: none; padding: 10px 12px; border-radius: 8px; display: flex; align-items: center; gap: 10px; }
.nav a:hover,.nav a.active { color: white; background: rgba(255,255,255,.09); }.nav a.active { box-shadow: inset 3px 0 var(--teal); }
.nav .num { opacity: .45; font-size: 11px; width: 17px; }
.sidebar-foot { position: absolute; bottom: 20px; left: 22px; right: 22px; color: rgba(255,255,255,.55); font-size: 11px; border-top: 1px solid rgba(255,255,255,.1); padding-top: 14px; }
.main { min-width: 0; }.topbar { height: 64px; background: white; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; padding: 0 28px; }
.project-switch { font-weight: 650; }.project-switch span { color: var(--muted); font-weight: 400; margin-left: 8px; }.project-current { border:0;background:transparent;padding:8px 10px;border-radius:8px;text-align:left;cursor:pointer }.project-current:hover{background:var(--paper)}
.user { display: flex; gap: 12px; align-items: center; }.avatar { width: 32px; height: 32px; display: grid; place-items: center; background: var(--teal2); color: var(--teal); border-radius: 50%; font-weight: 700; }
.content { padding: 28px; max-width: 1480px; margin: auto; }.page-head { display: flex; justify-content: space-between; align-items: end; margin-bottom: 22px; gap: 20px; }
.eyebrow { color: var(--teal); font-size: 11px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; }.page-head h2 { margin: 3px 0 4px; font-size: 26px; letter-spacing: -.7px; }.page-head p { color: var(--muted); margin: 0; }
.btn { border: 1px solid var(--line); background: white; color: var(--ink); border-radius: 8px; padding: 9px 14px; font-weight: 650; }.btn:hover { border-color: #a9b7b4; }.btn.primary { background: var(--teal); border-color: var(--teal); color: white; }.btn.ghost { background: transparent; }.btn.small { padding: 6px 10px; font-size: 12px; }.btn.danger { color: var(--red); }
.actions { display: flex; gap: 8px; flex-wrap: wrap; }.grid { display: grid; gap: 16px; }.grid.kpis { grid-template-columns: repeat(4,1fr); }.grid.two { grid-template-columns: 1.4fr 1fr; }
.card { background: white; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 1px 2px rgba(0,0,0,.02); padding: 20px; }.card h3 { margin: 0 0 14px; font-size: 15px; }.kpi { position: relative; overflow: hidden; }.kpi .value { font-size: 30px; font-weight: 750; letter-spacing: -1px; }.kpi .label { color: var(--muted); }.kpi .trend { color: var(--teal); font-size: 12px; margin-top: 7px; }.kpi::after { content:""; position:absolute; right:-15px; top:-15px; width:70px; height:70px; background:var(--teal2); border-radius:50%; opacity:.65; }
.stagebar { display: grid; grid-template-columns: repeat(7,1fr); gap: 8px; margin: 18px 0 0; }.stage { border-top: 4px solid var(--line); padding-top: 10px; color: var(--muted); font-size: 12px; }.stage.done { border-color: var(--teal); color: var(--ink); }.stage.current { border-color: var(--orange); color: var(--ink); font-weight:700; }
.table-wrap { overflow-x: auto; }.table { width: 100%; border-collapse: collapse; }.table th { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .35px; text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); white-space:nowrap; }.table td { padding: 13px 12px; border-bottom: 1px solid #edf0ef; vertical-align: top; }.table tr:last-child td { border-bottom:0; }.table tr.clickable:hover { background:#f8faf9; cursor:pointer; }
.id { color:var(--teal); font-weight:750; white-space:nowrap; }.muted { color:var(--muted); }.tiny { font-size:11px; }.badge { display:inline-block; border-radius:999px; padding:3px 8px; font-size:11px; font-weight:750; background:#edf1f0; white-space:nowrap; }.badge.FIT { background:#daf1e8;color:#16705e }.badge.CONFIG { background:#e3effb;color:#356a9c }.badge.EXTEND { background:#fff0d7;color:#986515 }.badge.CUSTOMIZE { background:#fbe4da;color:#ad5535 }.badge.NEW { background:#f6dde0;color:#a43b48 }.badge.OUT { background:#e9e8ef;color:#5c5870 }.badge.ai { background:#ece7fb;color:#694aa8 }.badge.review { background:#fff0d7;color:#986515 }.badge.confirmed { background:#daf1e8;color:#16705e }
.tabs { display:flex; gap:2px; border-bottom:1px solid var(--line); margin-bottom:18px; overflow:auto; }.tab { border:0; background:transparent; padding:10px 13px; color:var(--muted); border-bottom:2px solid transparent; white-space:nowrap; }.tab.active { color:var(--teal); border-color:var(--teal); font-weight:750; }
.filterbar { display:flex; justify-content:space-between; gap:12px; margin-bottom:14px; }.search { border:1px solid var(--line); border-radius:8px; padding:8px 11px; min-width:280px; background:#fafbfa; }.select { border:1px solid var(--line); border-radius:8px; padding:8px 10px; background:white; }
.ai-panel { background:linear-gradient(135deg,#162f35,#1f4848); color:white; border:0; }.ai-panel .eyebrow { color:#62d0bd; }.ai-panel p { color:rgba(255,255,255,.7); }.ai-row { display:grid; grid-template-columns:1fr auto; align-items:center; gap:16px; }.ai-dots { display:flex; gap:6px; }.ai-dots i { width:7px; height:7px; background:#62d0bd; border-radius:50%; }
.modal-backdrop { position:fixed; inset:0; background:rgba(8,24,28,.55); display:grid; place-items:center; padding:20px; z-index:10; }.modal { background:white; width:min(680px,100%); max-height:90vh; overflow:auto; border-radius:14px; box-shadow:var(--shadow); padding:24px; }.modal h3 { margin:0 0 4px; font-size:19px; }.form { display:grid; gap:14px; margin-top:20px; }.form label { display:grid; gap:6px; font-weight:650; font-size:12px; }.form input,.form textarea,.form select { border:1px solid var(--line); border-radius:8px; padding:10px; width:100%; }.form textarea { min-height:100px; resize:vertical; }.modal-foot { display:flex; justify-content:flex-end; gap:8px; margin-top:20px; }
.detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.detail-box { background:#f7f9f8; border:1px solid var(--line); border-radius:9px; padding:14px; }.detail-box dt { color:var(--muted); font-size:11px; margin-bottom:4px; }.detail-box dd { margin:0; font-weight:650; }.scope-list { display:grid; gap:8px; }.scope-item { border-left:3px solid var(--teal); padding:9px 12px; background:#f6f9f8; display:flex; justify-content:space-between; gap:10px; }.empty-page { min-height:480px; display:grid; place-items:center; text-align:center; }.empty-page .icon { width:58px; height:58px; background:var(--teal2); color:var(--teal); display:grid; place-items:center; border-radius:16px; font-size:23px; margin:auto auto 15px; }.module-grid { grid-template-columns:repeat(3,1fr); }.module-card { min-height:170px; }.module-card .count { font-size:26px;font-weight:750;margin-top:18px; }.progress { height:6px;background:#edf1ef;border-radius:5px;overflow:hidden;margin-top:12px; }.progress i { display:block;height:100%;background:var(--teal); }
.toast { position:fixed; right:24px; bottom:24px; background:var(--navy); color:white; padding:12px 16px; border-radius:9px; box-shadow:var(--shadow); z-index:20; animation:pop .2s ease-out; } @keyframes pop { from{transform:translateY(8px);opacity:0} }
.nav-section{margin-top:14px;border-top:1px solid rgba(255,255,255,.1);padding-top:16px}.portfolio-row{display:grid;grid-template-columns:38px 1fr 48px 48px;gap:12px;align-items:center;padding:12px 4px;border-bottom:1px solid #edf0ef}.portfolio-row:last-child{border-bottom:0}.project-symbol{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--teal2);color:var(--teal);font-weight:800}.health{display:inline-block;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:750;background:#daf1e8;color:#16705e;white-space:nowrap}.health.주의{background:#fff0d7;color:#986515}.health.위험{background:#f6dde0;color:#a43b48}.insight-line{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.13)}.insight-line:last-child{border-bottom:0}.card-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.card-title-row h3{margin-bottom:0}.project-picker{display:grid;gap:8px;margin-top:20px}.project-choice{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;border:1px solid var(--line);background:white;border-radius:10px;padding:12px;text-align:left}.project-choice:hover,.project-choice.selected{border-color:var(--teal);background:#f5fbf9}.project-choice span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.project-choice strong{color:var(--teal)}
@media(max-width:900px){.shell{grid-template-columns:72px 1fr}.sidebar{padding:20px 8px}.brand h1,.brand p,.nav-label,.nav .text,.sidebar-foot{display:none}.brand{padding:0 10px 22px}.nav a{justify-content:center}.grid.kpis,.module-grid{grid-template-columns:repeat(2,1fr)}.grid.two{grid-template-columns:1fr}.content{padding:20px}.stagebar{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.grid.kpis,.module-grid,.detail-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.topbar{padding:0 16px}.content{padding:16px}.filterbar{flex-direction:column}.search{min-width:0;width:100%}}
.health.지연{background:#f6dde0;color:#a43b48}
.project-hero{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:center;background:linear-gradient(125deg,#17323a,#225055);color:white;border-radius:14px;padding:24px 26px;box-shadow:var(--shadow)}.project-hero.delayed{background:linear-gradient(125deg,#3b2526,#67383b)}.project-hero h3{font-size:22px;margin:8px 0 4px}.project-hero p{margin:0;color:rgba(255,255,255,.65)}.hero-meta{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.65);font-size:11px}.hero-progress>div:first-child{display:flex;justify-content:space-between;align-items:end}.hero-progress strong{font-size:34px}.hero-progress small{display:block;text-align:right;color:rgba(255,255,255,.65);margin-top:7px}.progress.large{height:9px;background:rgba(255,255,255,.18);position:relative}.progress.large i{background:#5dd0bb}.progress.large em{position:absolute;top:-3px;width:2px;height:15px;background:#fff}.project-kpis{margin-top:16px}.kpi .value.text-value{font-size:23px;margin-top:7px}.kpi .value small{font-size:13px;margin-left:3px;color:var(--muted)}.lifecycle{display:grid;grid-template-columns:repeat(7,1fr);margin-top:22px}.life-stage{position:relative;text-align:center;color:var(--muted)}.life-stage:before{content:"";position:absolute;height:3px;background:var(--line);left:0;right:0;top:15px}.life-stage:first-child:before{left:50%}.life-stage:last-child:before{right:50%}.life-stage.done:before,.life-stage.current:before{background:var(--teal)}.life-dot{position:relative;z-index:1;width:32px;height:32px;border:3px solid var(--line);background:white;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;font-size:11px;font-weight:800}.life-stage.done .life-dot{background:var(--teal);border-color:var(--teal);color:white}.life-stage.current .life-dot{border-color:var(--teal);color:var(--teal);box-shadow:0 0 0 5px var(--teal2)}.life-stage b,.life-stage span{display:block;font-size:12px}.life-stage span{font-size:10px;margin-top:2px}.life-stage.current b{color:var(--ink)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:17px 0}.metric{background:#f6f8f7;border-radius:8px;padding:12px}.metric span,.metric small{display:block;color:var(--muted);font-size:10px}.metric b{display:block;font-size:19px;margin:3px 0}.workstream-list{display:grid;grid-template-columns:1fr 1fr;gap:15px 20px;margin-top:20px}.workstream-list>div{display:grid;grid-template-columns:1fr auto;gap:3px 10px;font-size:12px}.workstream-list .progress{grid-column:1/3;margin-top:2px}.milestones{display:grid;margin:8px 0 17px}.milestone{display:grid;grid-template-columns:18px 1fr auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0ef}.milestone small{display:block;color:var(--muted)}.mile-dot{width:10px;height:10px;border-radius:50%;background:#d9dfdd}.mile-dot.done{background:var(--teal)}.mile-dot.late{background:var(--red);box-shadow:0 0 0 4px #f6dde0}.management-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}.management-strip>div{padding:12px;background:#f6f8f7;border-radius:8px}.management-strip span,.management-strip b{display:block}.management-strip span{font-size:11px;color:var(--muted)}.management-strip b{font-size:22px}.attention{border-left:3px solid var(--orange);background:#fff8f1;padding:12px 14px}.attention p{margin:4px 0 0;color:var(--muted);font-size:12px}.supporting{display:flex;align-items:center;justify-content:space-between;gap:20px}.supporting h3{margin-bottom:3px}.supporting p{margin:0}.support-metrics{display:flex;align-items:center;gap:22px}.support-metrics span{color:var(--muted)}.support-metrics b{color:var(--ink);margin-left:5px}.support-metrics a{color:var(--teal);font-weight:700;text-decoration:none}
@media(max-width:900px){.project-hero{grid-template-columns:1fr}.lifecycle{overflow-x:auto;grid-template-columns:repeat(7,120px)}.metric-grid{grid-template-columns:repeat(2,1fr)}.supporting,.support-metrics{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.metric-grid,.workstream-list{grid-template-columns:1fr}.management-strip{grid-template-columns:repeat(2,1fr)}.support-metrics{gap:8px}}
.management-head{display:grid;grid-template-columns:1fr auto auto;gap:30px;align-items:center;background:white;border:1px solid var(--line);border-radius:12px;padding:20px 24px}.management-head h3{font-size:20px;margin:7px 0 2px}.management-head p{margin:0;color:var(--muted)}.management-health{display:grid;border-left:1px solid var(--line);padding-left:28px}.management-health>span,.management-score>span{font-size:11px;color:var(--muted)}.management-health strong{font-size:20px;color:var(--amber)}.management-health strong.bad{color:var(--red)}.management-health small{color:var(--muted)}.management-score{display:grid;text-align:right}.management-score b{font-size:32px;color:var(--teal)}.management-score small{font-size:12px;color:var(--muted)}.control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.control-card{background:white;border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:12px;padding:18px;position:relative}.control-card.red{border-top-color:var(--red)}.control-card.amber{border-top-color:#d99526}.control-card-head{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center}.control-card-head h3{margin:0;font-size:14px}.control-card-head>div span{font-size:10px;color:var(--muted)}.control-icon{width:34px;height:34px;border-radius:9px;background:var(--teal2);display:grid;place-items:center;color:var(--teal);font-size:18px}.red .control-icon{background:#f6dde0;color:var(--red)}.amber .control-icon{background:#fff0d7;color:var(--amber)}.control-status{font-size:10px;font-weight:750;padding:3px 7px;border-radius:99px;background:var(--teal2);color:var(--teal)}.red .control-status{background:#f6dde0;color:var(--red)}.amber .control-status{background:#fff0d7;color:var(--amber)}.control-value{font-size:29px;font-weight:800;margin-top:15px}.control-card>p{color:var(--muted);font-size:11px;min-height:34px}.control-items{border-top:1px solid #edf0ef;margin-top:10px;padding-top:8px}.control-items>div{display:flex;justify-content:space-between;padding:4px 0;font-size:11px}.control-items span{color:var(--muted)}.control-link{border:0;background:transparent;color:var(--teal);font-weight:700;font-size:11px;padding:10px 0 0}.pm-lower{margin-top:16px}.gate-board{display:grid;margin-top:15px}.gate{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0ef}.gate>span{width:24px;height:24px;border-radius:50%;background:#edf1ef;display:grid;place-items:center;font-size:10px}.gate.done>span{background:var(--teal);color:white}.gate.current>span{box-shadow:0 0 0 4px var(--teal2);color:var(--teal)}.gate.blocked>span{background:var(--red);color:white}.gate small{display:block;color:var(--muted)}.gate em{font-style:normal;font-size:10px;font-weight:750}.gate.blocked em{color:var(--red)}.decision-list{display:grid;margin:10px 0 15px}.decision-list>div{display:grid;grid-template-columns:70px 1fr auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0ef}.decision-list small{display:block;color:var(--muted)}.impact-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:center;margin:22px 0}.impact-flow>div{background:#f5f8f7;border-radius:9px;padding:14px}.impact-flow span{display:block;color:var(--muted);font-size:10px}.impact-flow i{font-style:normal;color:var(--teal);font-size:18px}.impact-notes{display:flex;gap:8px}.impact-notes span{padding:3px 8px;background:var(--teal2);color:var(--teal);border-radius:99px;font-size:10px}
@media(max-width:1050px){.control-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.management-head{grid-template-columns:1fr}.management-health{border-left:0;border-top:1px solid var(--line);padding:15px 0 0}.management-score{text-align:left}.control-grid{grid-template-columns:1fr}.impact-flow{grid-template-columns:1fr}.impact-flow i{transform:rotate(90deg);text-align:center}}
.source-summary{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:16px}.source-summary>div{background:white;padding:15px 18px}.source-summary span,.source-summary small,.source-summary b{display:block}.source-summary span,.source-summary small{color:var(--muted);font-size:10px}.source-summary b{font-size:19px;margin:3px 0}.source-summary>div:first-child b{font-size:15px;color:var(--teal)}
@media(max-width:700px){.source-summary{grid-template-columns:1fr 1fr}}
.block{display:block;margin-top:3px}.req-shell{padding:0;overflow:hidden}.req-shell>.req-stage-head,.req-shell>.source-summary,.req-shell>.grid,.req-shell>.card,.req-shell>.filterbar,.req-shell>.table-wrap,.req-shell>.mapping-summary,.req-shell>.review-board,.req-shell>.baseline-banner{margin-left:20px;margin-right:20px}.req-tabs{padding:18px 20px 0;margin-bottom:20px;background:#fbfcfb}.req-stage-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.req-stage-head>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:10px}.req-stage-head h3{margin:0;font-size:18px}.req-stage-head p{grid-column:2;margin:3px 0 0;color:var(--muted)}.stage-no{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--teal2);color:var(--teal);font-weight:800}.import-source{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:12px;margin-top:9px}.import-source.active{border-color:#9dcfc6;background:#f6fbfa}.source-icon{width:34px;height:34px;display:grid;place-items:center;background:#e6f2ec;color:#227a62;border-radius:8px;font-weight:800}.import-source span{display:block;color:var(--muted);font-size:10px}.distribution{display:grid;grid-template-columns:110px 1fr 28px;gap:9px;align-items:center;margin:9px 0;font-size:11px}.distribution .progress{margin:0}.finding{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0ef}.finding small{display:block;color:var(--muted)}.finding strong{font-size:19px}.finding-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:var(--teal2);color:var(--teal);font-weight:800}.finding-icon.warn{background:#fff0d7;color:var(--amber)}.mapping-summary{display:flex;align-items:center;justify-content:center;gap:20px;background:#f6f9f8;border-radius:10px;padding:18px;margin-bottom:16px}.mapping-summary>div{text-align:center}.mapping-summary b,.mapping-summary span{display:block}.mapping-summary b{font-size:24px}.mapping-summary span{font-size:10px;color:var(--muted)}.mapping-summary i{font-style:normal;color:var(--teal);font-size:19px}.review-count{display:flex!important;align-items:center;gap:8px}.review-count b{font-size:25px;color:var(--teal)}.review-count span{color:var(--muted)}.review-board{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.review-board>div{background:#f6f9f8;border-radius:9px;padding:13px}.review-board span,.review-board b{display:block}.review-board span{color:var(--muted);font-size:10px}.review-board b{font-size:23px}.baseline-banner{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:20px;background:linear-gradient(120deg,#17323a,#225055);color:white;border-radius:11px;padding:18px 22px;margin-bottom:16px}.baseline-banner span,.baseline-banner small,.baseline-banner b{display:block}.baseline-banner>div:first-child>span,.baseline-banner small{color:rgba(255,255,255,.65);font-size:10px}.baseline-banner>div:first-child>b{font-size:21px}.baseline-flow{display:flex;align-items:center;justify-content:space-between;gap:10px}.baseline-flow span{font-size:10px;color:rgba(255,255,255,.7)}.baseline-flow b{font-size:16px;color:white}.baseline-flow i{font-style:normal;color:#5dd0bb}.readiness{display:grid;grid-template-columns:1fr auto;gap:4px 10px;margin:13px 0}.readiness .progress{grid-column:1/3;margin:0}.version{border-left:3px solid var(--line);padding:8px 12px;margin:10px 0}.version.current{border-color:var(--teal);background:#f6fbfa}.version span,.version small{display:block}.version span{font-size:11px}.version small{font-size:10px;color:var(--muted)}
@media(max-width:700px){.req-stage-head{align-items:flex-start;flex-direction:column}.review-board{grid-template-columns:1fr 1fr}.mapping-summary,.baseline-flow{align-items:stretch;flex-direction:column}.mapping-summary i,.baseline-flow i{transform:rotate(90deg);text-align:center}.baseline-banner{grid-template-columns:1fr}.req-tabs{padding-left:10px}.req-shell>.req-stage-head,.req-shell>.source-summary,.req-shell>.grid,.req-shell>.card,.req-shell>.filterbar,.req-shell>.table-wrap,.req-shell>.mapping-summary,.req-shell>.review-board,.req-shell>.baseline-banner{margin-left:12px;margin-right:12px}}
.project-context{display:grid;grid-template-columns:minmax(280px,1.35fr) minmax(300px,1fr) minmax(190px,.65fr) auto;gap:24px;align-items:center;background:linear-gradient(125deg,#17323a,#225055);color:white;border-radius:14px;padding:18px 20px;margin-bottom:22px;box-shadow:var(--shadow)}.project-context.delayed{background:linear-gradient(125deg,#3b2526,#67383b)}.context-top{display:flex;gap:7px;align-items:center;color:rgba(255,255,255,.6);font-size:10px}.context-main h2{font-size:18px;margin:6px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.context-main p{margin:0;color:rgba(255,255,255,.62);font-size:11px}.context-facts{display:grid;grid-template-columns:.55fr 1.35fr .75fr;gap:14px;border-left:1px solid rgba(255,255,255,.13);padding-left:22px}.context-facts span,.context-facts b{display:block}.context-facts span,.context-progress span,.context-progress small{color:rgba(255,255,255,.58);font-size:10px}.context-facts b{font-size:11px;margin-top:3px;white-space:nowrap}.context-progress>div:first-child{display:flex;align-items:end;justify-content:space-between}.context-progress strong{font-size:25px}.context-progress .progress{background:rgba(255,255,255,.18);margin:5px 0}.context-progress .progress i{background:#5dd0bb}.context-progress small{display:block;text-align:right}.context-actions{display:grid;gap:7px}.context-switch{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);color:white;white-space:nowrap}.context-all{color:rgba(255,255,255,.7);font-size:10px;text-align:center;text-decoration:none}.context-all:hover{color:white}.project-context + .page-head + .project-hero{display:none}
@media(max-width:1200px){.project-context{grid-template-columns:1.4fr 1fr .7fr}.context-actions{grid-column:1/4;display:flex;align-items:center}.context-all{padding:8px}}
@media(max-width:850px){.project-context{grid-template-columns:1fr}.context-facts{border-left:0;border-top:1px solid rgba(255,255,255,.13);padding:13px 0 0}.context-actions{grid-column:auto}.context-main h2{white-space:normal}}
.design-shell{padding:0;overflow:hidden}.design-tabs{padding:18px 20px 0;background:#fbfcfb;margin-bottom:20px}.design-shell>.design-stage-head,.design-shell>.grid,.design-shell>.design-area-grid,.design-shell>.card,.design-shell>.integration-banner,.design-shell>.design-list-grid,.design-shell>.review-board,.design-shell>.document-principle,.design-shell>.document-grid,.design-shell>.baseline-banner{margin-left:20px;margin-right:20px}.design-stage-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.design-stage-head>div:first-child{display:flex;align-items:center;gap:10px}.design-stage-head h3{font-size:18px;margin:0}.design-stage-head p{color:var(--muted);margin:3px 0 0}.design-area-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}.design-area{border:1px solid var(--line);border-radius:10px;padding:15px;background:white;cursor:pointer}.design-area:hover{border-color:#9bc9c1;box-shadow:var(--shadow)}.design-area h3{font-size:13px;margin:0}.design-area strong{color:var(--teal)}.design-area-stats{display:flex;justify-content:space-between;margin-top:12px;font-size:10px;color:var(--muted)}.design-area-stats b{color:var(--ink)}.coverage-row{display:grid;grid-template-columns:1fr auto;gap:3px 10px;margin:12px 0}.coverage-row .progress{grid-column:1/3;margin:0}.coverage-row small{grid-column:1/3;color:var(--muted)}.activity-row{display:grid;grid-template-columns:90px 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0ef}.activity-row small{display:block;color:var(--muted)}.activity-row time{font-size:10px;color:var(--muted)}.integration-banner{display:grid;grid-template-columns:42px 1fr auto;gap:13px;align-items:center;background:linear-gradient(110deg,#44306c,#6b4e9b);color:white;border-radius:11px;padding:15px 18px;margin-bottom:16px}.integration-banner.openspec{background:linear-gradient(110deg,#17323a,#225055)}.integration-banner span{display:block;color:rgba(255,255,255,.68);font-size:10px}.integration-logo{width:38px;height:38px;display:grid;place-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);border-radius:9px;font-weight:900;font-size:18px}.design-list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.design-item{border:1px solid var(--line);border-radius:11px;background:white;padding:17px}.design-item h3{font-size:15px;margin:10px 0 3px}.design-item>p{color:var(--muted);font-size:10px;margin:0 0 13px}.design-progress{display:grid;grid-template-columns:1fr auto;gap:3px 10px}.design-progress .progress{grid-column:1/3;margin:0}.design-item dl{display:grid;grid-template-columns:1fr 1fr;background:#f6f8f7;border-radius:8px;padding:10px;margin:13px 0}.design-item dl>div{padding:5px 8px}.design-item dt{font-size:9px;color:var(--muted)}.design-item dd{font-size:11px;font-weight:700;margin:2px 0 0;overflow:hidden;text-overflow:ellipsis}.design-item-actions{display:flex;gap:7px}.document-principle{display:flex;align-items:center;justify-content:center;gap:16px;background:#f6f9f8;border-radius:10px;padding:15px;margin-bottom:16px}.document-principle span{padding:7px 11px;background:white;border:1px solid var(--line);border-radius:7px}.document-principle i{font-style:normal;color:var(--teal)}.document-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.document-card{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:14px}.doc-icon{width:38px;height:44px;display:grid;place-items:center;background:var(--teal2);color:var(--teal);border-radius:6px;font-size:19px}.document-card h3{font-size:14px;margin:3px 0}.document-card p{font-size:10px;color:var(--muted);margin:0}.document-actions{grid-column:2/4;display:flex;gap:7px}.baseline-output{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 0;border-bottom:1px solid #edf0ef}.baseline-output small{grid-column:1/3;color:var(--muted)}
@media(max-width:1050px){.design-area-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.design-stage-head{align-items:flex-start;flex-direction:column}.design-list-grid,.document-grid,.design-area-grid{grid-template-columns:1fr}.integration-banner{grid-template-columns:42px 1fr}.integration-banner .btn{grid-column:1/3}.document-principle{align-items:stretch;flex-direction:column}.document-principle i{transform:rotate(90deg);text-align:center}.design-shell>.design-stage-head,.design-shell>.grid,.design-shell>.design-area-grid,.design-shell>.card,.design-shell>.integration-banner,.design-shell>.design-list-grid,.design-shell>.review-board,.design-shell>.document-principle,.design-shell>.document-grid,.design-shell>.baseline-banner{margin-left:12px;margin-right:12px}}
.baseline-steps{display:flex;align-items:center;justify-content:center;gap:13px;margin:0 20px 16px;background:#f6f9f8;border-radius:10px;padding:15px}.baseline-steps>div{display:grid;grid-template-columns:30px 1fr;column-gap:8px;align-items:center}.baseline-steps>div>span{grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#dfe5e3;color:var(--muted);font-weight:800}.baseline-steps .active>span{background:var(--teal);color:white}.baseline-steps .current>span{background:white;border:2px solid var(--teal);color:var(--teal);box-shadow:0 0 0 4px var(--teal2)}.baseline-steps b{font-size:11px}.baseline-steps small{font-size:9px;color:var(--muted)}.baseline-steps i{font-style:normal;color:var(--teal)}.decomp-rule{display:grid;grid-template-columns:90px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid #edf0ef}.decomp-rule span,.decomp-rule small{display:block}.decomp-rule span{font-size:11px}.decomp-rule small{font-size:9px;color:var(--muted)}.function-link{background:#f5f9f8;border-left:3px solid var(--teal);padding:8px 10px;margin:9px 0 13px}.function-link span,.function-link small{display:block;font-size:9px;color:var(--muted)}.function-link b{display:block;color:var(--teal);font-size:12px}.design-item>.function-link + .design-progress{margin-top:0}
.design-list-summary{display:flex;align-items:center;gap:18px;margin:0 20px 12px;padding:11px 14px;background:#f6f9f8;border:1px solid var(--line);border-radius:9px}.design-list-summary span{font-size:11px;color:var(--muted)}.design-list-summary b{color:var(--ink);font-size:13px}.design-list-summary small{margin-left:auto;color:var(--muted)}.design-list-table{margin-left:20px;margin-right:20px;padding:0;overflow-x:auto}.design-list-table table{min-width:980px}.design-list-table td{vertical-align:middle}.completion{display:block;width:max-content;margin-top:6px;padding:3px 7px;border-radius:12px;font-size:9px;font-weight:800}.completion.done{background:#dff3ea;color:#147252}.completion.pending{background:#eef1f0;color:#66736f}.design-row-actions{display:flex;gap:5px;white-space:nowrap}
.develop-flow{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 20px 16px;padding:16px;background:#f6f9f8;border:1px solid var(--line);border-radius:10px}.develop-flow>div{display:grid;grid-template-columns:30px auto;column-gap:8px;align-items:center}.develop-flow>div>span{grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#dfe5e3;color:var(--muted);font-weight:800}.develop-flow .active>span{background:var(--teal);color:white}.develop-flow b,.develop-flow small{display:block}.develop-flow small{color:var(--muted);font-size:9px}.develop-flow i{font-style:normal;color:var(--teal)}.dev-lane{display:grid;grid-template-columns:1fr repeat(3,auto);gap:8px 16px;align-items:center;padding:13px 0;border-bottom:1px solid #edf0ef}.dev-lane>b{font-size:14px}.dev-lane span{color:var(--muted);font-size:10px}.dev-lane .control-link{grid-column:1/5;text-align:left}.design-ref{border:0;background:#eef8f6;color:var(--teal);border-radius:5px;padding:4px 7px;font:inherit;font-weight:800;cursor:pointer}.design-ref:hover{text-decoration:underline}
.agent-contract{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 20px 16px;padding:16px;background:#f7f9f8;border:1px solid var(--line);border-radius:10px}.agent-contract>div{min-width:150px;padding:11px 14px;background:white;border:1px solid var(--line);border-radius:8px}.agent-contract .contract-core{background:#173f44;color:white;border-color:#173f44}.agent-contract span,.agent-contract small{display:block;font-size:9px;color:var(--muted)}.agent-contract .contract-core span,.agent-contract .contract-core small{color:#b8d7d2}.agent-contract b{display:block;margin:3px 0}.agent-contract i{font-style:normal;color:var(--teal);font-weight:900}.agent-mode-bar,.human-gate-note{display:flex;align-items:center;gap:12px;margin:0 20px 14px;padding:11px 14px;background:#f6f9f8;border:1px solid var(--line);border-radius:9px}.agent-mode-bar span,.human-gate-note span{padding:5px 9px;background:white;border:1px solid var(--line);border-radius:6px;font-size:10px}.agent-mode-bar i{font-style:normal;color:var(--muted);font-size:10px}.agent-step{display:inline-block;padding:5px 8px;background:#e7f4f1;color:var(--teal);border-radius:12px;font-weight:800;font-size:10px}.agent-step.done{background:#dff3ea;color:#147252}.agent-step.blocked{background:#fbe5e3;color:#a33b32}.human-gate-note{background:#fff8e8;border-color:#ebdcae}.human-gate-note b{color:#765b12}.human-gate-note span{background:#fffdf7;border-color:#eadfbf}
.today-review{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:10px;margin:0 20px 16px;padding:14px;background:#fff8e8;border:1px solid #ebdcae;border-radius:10px}.today-review>div:first-child span{font-size:9px;font-weight:900;color:#9a7215}.today-review h3{margin:3px 0;font-size:16px}.today-review p{margin:0;color:var(--muted);font-size:10px}.review-appointment{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;padding:10px;background:white;border:1px solid #eadfbf;border-radius:8px}.review-appointment time{grid-row:1/3;color:var(--teal);font-weight:900}.review-appointment span,.review-appointment small{grid-column:2;font-size:9px;color:var(--muted)}.development-master table{min-width:1350px}.schedule-health{display:inline-block;padding:4px 7px;border-radius:12px;background:#e7f4f1;color:var(--teal);font-size:9px;font-weight:800}.schedule-health.done{background:#dff3ea;color:#147252}.schedule-health.warn{background:#fff0c7;color:#8c6500}.schedule-health.blocked{background:#fbe5e3;color:#a33b32}
.run-action{display:grid;gap:5px;justify-items:start;min-width:105px}.run-mode{font-size:9px;font-weight:800;color:#765b12;background:#fff0c7;border-radius:10px;padding:3px 7px}.run-mode.auto{color:#16675c;background:#dff3ea}.run-mode.human{color:#5f6870;background:#eef1f0}.execution-modal{width:min(1180px,96vw);padding:0;overflow:hidden}.execution-head{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 22px;border-bottom:1px solid var(--line)}.execution-head p{margin:4px 0 0;color:var(--muted)}.execution-layout{display:grid;grid-template-columns:210px minmax(400px,1fr) 230px;min-height:470px}.run-steps{padding:18px;background:#f6f8f7;border-right:1px solid var(--line)}.run-steps>div{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:center;padding:8px 0;color:var(--muted)}.run-steps span{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#e1e6e4;font-size:9px;font-weight:900}.run-steps .done{color:var(--ink)}.run-steps .done span{background:#dff3ea;color:#147252}.run-steps .active span{background:var(--teal);color:white;box-shadow:0 0 0 4px var(--teal2)}.run-steps .blocked span{background:#fbe5e3;color:#a33b32}.shell-console{background:#10191c;color:#c7ddd8;min-width:0}.console-bar{display:flex;align-items:center;gap:5px;padding:10px 14px;background:#1a272b;border-bottom:1px solid #2c3b3f}.console-bar span{font-size:8px;color:#d9926f}.console-bar span:nth-child(2){color:#dabd62}.console-bar span:nth-child(3){color:#65aa8a}.console-bar b{margin-left:8px;font-size:10px;color:#9fb6b1}.shell-console pre{margin:0;padding:20px;white-space:pre-wrap;line-height:1.8;font:11px/1.8 Consolas,monospace;color:#bad2cc}.run-context{padding:18px;border-left:1px solid var(--line);overflow-wrap:anywhere}.run-context h4{margin:0 0 12px}.run-context dt{margin-top:10px;font-size:9px;color:var(--muted)}.run-context dd{margin:2px 0;font-size:10px;font-weight:700}.execution-modal>.modal-foot{padding:14px 20px;margin:0;border-top:1px solid var(--line)}
.test-flow{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 20px 16px;padding:16px;background:#f6f9f8;border:1px solid var(--line);border-radius:10px}.test-flow>div{display:grid;grid-template-columns:30px auto;column-gap:8px;align-items:center;min-width:150px}.test-flow>div>span{grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#dfe5e3;color:var(--muted);font-weight:800}.test-flow .done>span{background:#dff3ea;color:#147252}.test-flow .active>span{background:var(--teal);color:white;box-shadow:0 0 0 4px var(--teal2)}.test-flow b,.test-flow small{display:block}.test-flow small{font-size:9px;color:var(--muted)}.test-flow i{font-style:normal;color:var(--teal)}
.playwright-banner{display:grid;grid-template-columns:46px 1fr auto;gap:13px;align-items:center;margin:0 20px 16px;padding:14px 16px;border-radius:10px;background:linear-gradient(110deg,#20353b,#254b52);color:white}.playwright-banner b,.playwright-banner span{display:block}.playwright-banner span{font-size:10px;color:#b8d2ce}.playwright-banner>.badge{color:#147252}.pw-logo{width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,#e94f64,#45b67a);font-weight:900;color:white}.playwright-table table{min-width:1250px}.artifact-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px;padding:10px;background:#172529;border:1px solid #2b3c40;border-radius:7px}.artifact-strip span{font-size:9px;color:#8ba49e}.artifact-strip b{display:block;margin-top:3px;color:#d2e7e2}
.deploy-tabs{overflow-x:auto;white-space:nowrap}.deploy-view-switch{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 20px 12px;padding:11px 14px;background:#f6f9f8;border:1px solid var(--line);border-radius:9px}.deploy-view-switch>div{margin-right:auto}.deploy-view-switch small{display:block;color:var(--muted);margin-top:2px}.deploy-scope-table table{min-width:1050px}.deploy-pipeline{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 20px 18px;padding:17px;background:#f6f9f8;border:1px solid var(--line);border-radius:10px;overflow-x:auto}.deploy-pipeline>div{display:grid;justify-items:center;gap:5px;min-width:86px}.deploy-pipeline span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#dfe5e3;color:var(--muted);font-weight:900}.deploy-pipeline .done span{background:#dff3ea;color:#147252}.deploy-pipeline .active span{background:var(--teal);color:white;box-shadow:0 0 0 4px var(--teal2)}.deploy-pipeline i{font-style:normal;color:var(--teal)}.release-note{max-width:820px;margin-left:auto!important;margin-right:auto!important;padding:28px}.release-note h3{font-size:22px}.release-note h4{margin:20px 0 5px}.release-note p{color:var(--muted);line-height:1.7}
.trace-tabs{overflow-x:auto;white-space:nowrap}.trace-funnel{display:flex;align-items:center;gap:7px;margin:0 20px 16px;padding:16px;background:#f6f9f8;border:1px solid var(--line);border-radius:10px;overflow-x:auto}.trace-funnel>div{flex:1;min-width:105px}.trace-funnel span,.trace-funnel b{display:block}.trace-funnel span{font-size:9px;color:var(--muted)}.trace-funnel strong{float:right;margin-top:-26px;color:var(--teal)}.trace-funnel .progress{margin-top:7px}.trace-funnel em{font-style:normal;color:var(--teal)}.trace-alert{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0ef}.trace-alert small{display:block;color:var(--muted)}.trace-state{display:inline-block;max-width:260px;padding:4px 7px;border-radius:5px;background:#e9f5f1;color:#147252;font-size:9px;line-height:1.4}.trace-state.warn{background:#fff0c7;color:#8c6500}.trace-state.bad{background:#fbe5e3;color:#a33b32}.trace-matrix table{min-width:1380px}.trace-link{display:grid;gap:3px;text-align:left;border:0;background:none;cursor:pointer}.trace-link b{font-size:10px}.trace-select{min-width:280px;border:1px solid var(--line);border-radius:7px;padding:8px;background:white}.function-trace-head,.release-trace-root,.impact-root{display:flex;align-items:center;gap:12px;margin:0 20px 16px;padding:15px 18px;background:#173f44;color:white;border-radius:10px}.function-trace-head h3,.release-trace-root h3,.impact-root h3{margin:0}.function-trace-head>b{margin-left:auto}.trace-chain{width:min(760px,calc(100% - 40px));margin:0 auto 20px}.trace-chain article{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;padding:13px 15px;border:1px solid var(--line);border-radius:9px;background:white}.trace-chain article>span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--teal2);color:var(--teal);font-weight:900}.trace-chain article.problem{border-color:#e4aba5;background:#fff8f7}.trace-chain article.problem>span{background:#fbe5e3;color:#a33b32}.trace-chain small,.trace-chain b{display:block}.trace-chain i{display:block;text-align:center;font-style:normal;color:var(--teal);height:22px}.release-trace-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 20px 20px}.release-trace-grid article{padding:16px;border:1px solid var(--line);border-radius:9px;background:white}.release-trace-grid span,.release-trace-grid small{display:block;color:var(--muted)}.release-trace-grid b{display:block;font-size:22px;margin:6px 0}.impact-map{display:flex;align-items:stretch;gap:8px;margin:0 20px}.impact-map>div{flex:1;padding:14px;border:1px solid var(--line);border-radius:9px;background:white}.impact-map b,.impact-map span,.impact-map small{display:block}.impact-map span{margin:7px 0;font-size:10px}.impact-map small{color:var(--muted)}.impact-map i{align-self:center;font-style:normal;color:var(--teal)}.baseline-timeline{width:min(800px,calc(100% - 40px));margin:0 auto 20px}.baseline-timeline article{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:9px}.baseline-timeline article>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e6ecea}.baseline-timeline h3{margin:0;font-size:13px}.baseline-timeline small{display:block;color:var(--muted)}.baseline-timeline em{font-style:normal}.baseline-timeline .current{border-color:#8ec8bd;background:#f5fbf9}.baseline-timeline .outdated{border-color:#e7bd72;background:#fffaf0}.baseline-timeline>i{display:block;height:20px;text-align:center;color:var(--teal);font-style:normal}
@media(max-width:700px){.design-list-summary{margin-left:12px;margin-right:12px;align-items:flex-start;flex-wrap:wrap}.design-list-summary small{width:100%;margin-left:0}.design-list-table{margin-left:12px;margin-right:12px}}
@media(max-width:900px){.develop-flow{justify-content:flex-start;overflow-x:auto}.develop-flow>div{min-width:145px}}
@media(max-width:900px){.agent-contract{justify-content:flex-start;overflow-x:auto}.agent-contract>div{flex:0 0 180px}.agent-mode-bar,.human-gate-note{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:900px){.today-review{grid-template-columns:1fr}.review-appointment{grid-template-columns:55px 1fr}}
@media(max-width:900px){.execution-layout{grid-template-columns:1fr}.run-steps,.run-context{border:0}.run-steps{display:grid;grid-template-columns:repeat(3,1fr)}.shell-console{min-height:330px}}
@media(max-width:900px){.test-flow{justify-content:flex-start;overflow-x:auto}.test-flow>div{flex:0 0 180px}}
@media(max-width:900px){.deploy-view-switch{align-items:flex-start;flex-wrap:wrap;justify-content:flex-start}.deploy-view-switch>div{width:100%}.deploy-pipeline{justify-content:flex-start}}
@media(max-width:900px){.release-trace-grid{grid-template-columns:1fr 1fr}.impact-map{overflow-x:auto}.impact-map>div{min-width:180px}.trace-funnel>div{flex:0 0 120px}}
@media(max-width:700px){.baseline-steps{align-items:stretch;flex-direction:column}.baseline-steps i{transform:rotate(90deg);text-align:center}}
