.portal{--navy: #25275D;--navy-deep: #1B1D49;--navy-ink: #1E2050;--orange: #ED7D31;--orange-soft: #FDEBDD;--orange-ink: #9A4512;--ground: #F3F3F7;--surface: #FFFFFF;--line: #E1E2EB;--line-strong: #CDCFDD;--ink: #272943;--ink-muted: #595C78;--faint: #8A8CA3;--track: #E7E8F0;--ok: #24704F;--ok-bg: #E3F2EA;--risk: #985B07;--risk-bg: #FCF0D9;--block: #B42318;--block-bg: #FCE6E4;--hold: #5B5E7A;--hold-bg: #ECEDF3;--bar-ok: #3BA676;--bar-risk: #D99A1E;--bar-block: #E0564C;--corner: 8px;--shadow: 0 6px 20px -8px rgba(27, 29, 73, .22), 0 2px 4px rgba(27, 29, 73, .06);--display: "Barlow Condensed", "Arial Narrow", sans-serif;--body: "Mulish", system-ui, sans-serif;color-scheme:light;background:var(--ground);color:var(--ink);font:15px/1.5 var(--body);font-variant-numeric:tabular-nums;overflow-x:clip;-webkit-text-size-adjust:100%;min-height:100vh}.portal,.portal *,.portal *:before,.portal *:after{box-sizing:border-box}.portal ::-moz-selection{background:var(--orange-soft);color:var(--navy-ink)}.portal ::selection{background:var(--orange-soft);color:var(--navy-ink)}.portal a{color:var(--navy);text-underline-offset:3px}.portal button,.portal input,.portal select,.portal textarea{font:inherit;color:inherit}.portal :focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:4px}.portal h1,.portal h2,.portal h3{font-family:var(--display);color:var(--navy-ink);font-weight:700;letter-spacing:.01em;line-height:1.1;margin:0;text-wrap:balance}.portal h1{font-size:clamp(34px,4.6vw,52px)}.portal h2{font-size:24px}.portal h3{font-size:19px;font-weight:600}.portal .icon{width:18px;height:18px;flex:none}.portal .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.portal .muted{color:var(--ink-muted)}.portal .faint{color:var(--faint)}.portal .link{all:unset;color:var(--navy);font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.portal #portal-boot{height:64px;background:var(--navy)}.portal .bar{background:var(--navy);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.portal .bar-in{max-width:1240px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;gap:28px;position:relative}.portal .brand{display:flex;align-items:baseline;gap:10px;color:#fff;text-decoration:none}.portal .wordmark{font-family:var(--body);font-weight:800;font-size:26px;letter-spacing:-.02em}.portal .wordmark .dot-i{position:relative}.portal .wordmark svg{position:absolute;left:50%;top:-3px;width:12px;height:11px;transform:translate(-50%)}.portal .brand small{font-family:var(--display);font-size:17px;font-weight:600;color:#b9bbe0;letter-spacing:.04em;text-transform:uppercase}.portal .nav{display:flex;gap:4px;flex:1}.portal .nav a{color:#d5d6ee;text-decoration:none;padding:8px 12px;border-radius:8px;font-weight:600;font-size:14px}.portal .nav a:hover{background:#ffffff14;color:#fff}.portal .nav a[aria-current=page]{color:#fff;background:#ffffff1f;box-shadow:inset 0 -3px 0 var(--orange)}.portal .btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid transparent;border-radius:8px;padding:9px 16px;font-weight:700;font-size:14px;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}.portal .btn-primary{background:var(--orange);color:var(--navy-deep)}.portal .btn-primary:hover{background:#f28f4c}.portal .btn-ghost{background:var(--surface);border-color:var(--line-strong);color:var(--navy)}.portal .btn-ghost:hover{border-color:var(--navy)}.portal .btn[disabled]{opacity:.55;cursor:progress}.portal .avatar{width:34px;height:34px;border-radius:50%;background:#3a3d82;color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;flex:none}.portal .icon-btn,.portal .menu-btn{background:none;border:0;color:#ffffffb3;padding:6px;border-radius:6px;cursor:pointer;display:inline-grid;margin-left:-18px}.portal .icon-btn:hover,.portal .menu-btn:hover{color:#fff;background:#ffffff14}.portal .menu-btn{display:none;color:#fff;margin-left:0}.portal .menu-btn .icon{width:24px;height:24px}.portal main{max-width:1240px;margin:0 auto;padding:32px 24px 80px}.portal footer.site{max-width:1240px;margin:0 auto;padding:0 24px 32px;color:var(--faint);font-size:13px}.portal .band,.portal .page-head,.portal .crumbs,.portal .crumbs+.detail-head{background:var(--navy);color:#fff;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%)}.portal .band{margin-top:-32px;padding-top:36px;padding-bottom:40px;margin-bottom:8px}.portal .band h1,.portal .page-head h1,.portal .detail-head h1{color:#fff}.portal .page-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px;margin-top:-32px;padding-top:36px;padding-bottom:36px;margin-bottom:28px}.portal .page-head p{margin:6px 0 0;color:#ffffffb8;max-width:70ch}.portal .crumbs+.page-head{margin-top:0;padding-top:10px}.portal .crumbs{font-size:14px;margin-top:-32px;padding-top:24px;padding-bottom:6px;box-shadow:0 1px 0 var(--navy);position:relative;z-index:1}.portal .crumbs a{font-weight:700;text-decoration:none;display:inline-flex;gap:4px;align-items:center;color:#ffffffbf}.portal .crumbs a:hover{color:#fff}.portal .greet p{margin:8px 0 0;color:#ffffffb8;font-size:16px;max-width:64ch}.portal .greet strong{color:var(--orange)}.portal .panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--corner)}.portal .section{margin-top:40px}.portal .section-head,.portal .panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.portal .section-head{margin-bottom:12px}.portal .section-head a{font-weight:700;font-size:14px}.portal .section-head .count{font-family:var(--body);font-size:14px;font-weight:800;color:var(--ink-muted);letter-spacing:0;margin-left:4px}.portal .panel-head{padding:16px 20px;border-bottom:1px solid var(--line)}.portal .section-head h2,.portal .panel-head h2{text-transform:uppercase;letter-spacing:.05em;font-size:21px}.portal .section-head h2:before,.portal .panel-head h2:before{content:"";display:inline-block;width:4px;height:.8em;background:var(--orange);margin-right:10px;vertical-align:-1px}.portal .empty{padding:28px 20px;color:var(--ink-muted);text-align:center}.portal .calm{padding:18px 20px;display:flex;gap:10px;align-items:center;color:var(--ok);font-weight:700}.portal .nudge{margin-top:28px;font-size:14px}.portal .nudge a{font-weight:700;display:inline-flex;gap:4px;align-items:center}.portal .nudge .icon{width:15px;height:15px}.portal .gate{max-width:560px;margin:48px auto;padding:32px;display:grid;gap:14px;justify-items:start}.portal .gate p{margin:0}.portal .pill{display:inline-flex;align-items:center;gap:5px;padding:2px 9px 2px 7px;border-radius:999px;font-size:12.5px;font-weight:700;white-space:nowrap}.portal .pill .icon{width:14px;height:14px;stroke-width:2.4}.portal .h-ok{color:var(--ok);background:var(--ok-bg)}.portal .h-risk{color:var(--risk);background:var(--risk-bg)}.portal .h-block{color:var(--block);background:var(--block-bg)}.portal .h-hold{color:var(--hold);background:var(--hold-bg)}.portal .status{font-size:13px;font-weight:600;color:var(--ink-muted);white-space:nowrap}.portal .mine-tag{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:800;color:var(--orange-ink);background:var(--orange-soft);padding:1px 8px;border-radius:999px}.portal .due-soon{color:var(--risk);font-weight:700;white-space:nowrap}.portal .due-late{color:var(--block);font-weight:700;white-space:nowrap}.portal .progress{display:flex;align-items:center;gap:10px;min-width:130px}.portal .progress .track{flex:1;height:10px;background:var(--track);border-radius:99px;overflow:hidden}.portal .progress .fill{height:100%;background:var(--navy);border-radius:99px}.portal .progress .fill.live{background:var(--ok)}.portal .progress span{font-weight:700;font-size:13px;width:38px;text-align:right;color:var(--navy-ink)}.portal .stepper{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-top:10px}.portal .stepper i{height:6px;border-radius:99px;background:var(--track)}.portal .stepper i.on{background:var(--navy)}.portal .stepper i.now{background:var(--orange)}.portal .stepper.declined i.now{background:var(--block)}.portal .stage-label{font-size:13px;font-weight:700;color:var(--navy-ink)}.portal .stage-label .faint{font-weight:500}.portal .stage-names{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;font-size:12px;line-height:1.25;color:var(--faint);margin-top:4px;font-weight:700}.portal .table-wrap{overflow-x:auto}.portal table{width:100%;border-collapse:collapse}.portal th{text-align:left;font-size:12px;font-weight:700;color:var(--ink-muted);padding:12px 16px;border-bottom:1px solid var(--line);white-space:nowrap;text-transform:uppercase;letter-spacing:.07em;background:#fafafc}.portal th button{all:unset;cursor:pointer;display:inline-flex;gap:4px;align-items:center}.portal th button:hover{color:var(--navy)}.portal th button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.portal th .icon{width:13px;height:13px}.portal td{padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.portal tr:last-child td{border-bottom:0}.portal tbody tr{cursor:pointer;transition:background .12s}.portal tbody tr:hover{background:#f7f7fb}.portal tr.row-h-ok td:first-child{box-shadow:inset 4px 0 var(--ok)}.portal tr.row-h-risk td:first-child{box-shadow:inset 4px 0 var(--bar-risk)}.portal tr.row-h-block td:first-child{box-shadow:inset 4px 0 var(--block)}.portal tr.row-h-hold td:first-child{box-shadow:inset 4px 0 var(--line-strong)}.portal .proj-name{font-weight:700;color:var(--navy-ink);text-decoration:none}.portal .proj-name:hover{text-decoration:underline}.portal .client{font-size:13px;color:var(--ink-muted)}.portal .filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px}.portal .search{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;padding:0 12px;height:40px;min-width:240px;flex:1;max-width:360px;color:var(--ink-muted)}.portal .search input{border:0;outline:0;background:none;flex:1;height:100%;color:var(--ink)}.portal .search:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px #25275d1f}.portal select{height:40px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);padding:0 12px;max-width:240px}.portal .chips{display:flex;gap:6px;flex-wrap:wrap}.portal .chip{border:1px solid var(--line-strong);background:var(--surface);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer}.portal .chip[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy)}.portal .count-line{color:var(--ink-muted);margin:0 0 10px;font-size:14px}.portal .pager{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;font-size:14px}.portal .pager .chip{display:inline-flex;align-items:center;gap:4px}.portal .pager .chip:disabled{opacity:.45;cursor:default}.portal .rollup{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:16px}.portal .rollup-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;text-align:left;cursor:pointer;font:inherit;color:inherit}.portal .rollup-card[aria-pressed=true]{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}.portal .rollup-name{font-family:var(--display);font-size:20px;color:var(--navy-ink)}.portal .rollup-mix{display:flex;flex-wrap:wrap;gap:6px}.portal .mix{font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px}.portal .mix.h-ok{color:var(--ok);background:var(--ok-bg)}.portal .mix.h-risk{color:var(--risk);background:var(--risk-bg)}.portal .mix.h-block{color:var(--block);background:var(--block-bg)}.portal .mix.h-hold{color:var(--hold);background:var(--hold-bg)}.portal .shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.portal .watch{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:0 0 8px 8px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .2s,transform .2s cubic-bezier(.2,.8,.2,1)}.portal .watch:hover{border-color:var(--line-strong);box-shadow:var(--shadow);transform:translateY(-2px)}.portal .watch.w-h-ok{border-top-color:var(--bar-ok)}.portal .watch.w-h-risk{border-top-color:var(--bar-risk)}.portal .watch.w-h-block{border-top-color:var(--block)}.portal .watch.w-h-hold{border-top-color:var(--line-strong)}.portal .watch.req{border-top-color:var(--orange);background:linear-gradient(var(--orange-soft),var(--surface) 70%)}.portal .watch .top{display:flex;justify-content:space-between;align-items:center;gap:8px}.portal .watch .kind{font-size:12px;font-weight:800;color:var(--ink-muted);display:inline-flex;gap:5px;align-items:center;min-width:0}.portal .watch .kind .icon{width:14px;height:14px}.portal .watch h3{font-size:22px}.portal .watch .why{margin:0;font-size:14px;color:var(--ink)}.portal .watch .meta{font-size:13px;color:var(--ink-muted);display:flex;justify-content:space-between;gap:8px;margin-top:auto}.portal .since{margin-top:24px}.portal .since-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}.portal .since-head h2{color:#fff;font-size:18px;text-transform:uppercase;letter-spacing:.06em}.portal .since-head h2 span{font-family:var(--body);font-size:13px;font-weight:600;text-transform:none;letter-spacing:0;color:#ffffff8c;margin-left:8px}.portal .since-dismiss{background:none;border:0;color:#ffffffb3;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;white-space:nowrap}.portal .since-dismiss:hover{color:#fff}.portal .since-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}.portal .since-item{display:flex;gap:10px;align-items:flex-start;padding:11px 14px;border-radius:0;background:#ffffff12;color:#ffffffd1;text-decoration:none;font-size:14px;line-height:1.4;border-left:3px solid rgba(255,255,255,.3)}.portal .since-item:hover{background:#ffffff1f}.portal .since-item .icon{margin-top:1px;width:16px;height:16px}.portal .since-item .nm{color:#fff}.portal .since-item .at{display:block;font-size:12px;color:#ffffff80;margin-top:2px}.portal .s-block{border-left-color:var(--bar-block)}.portal .s-block .icon{color:#f08a82}.portal .s-risk{border-left-color:var(--bar-risk)}.portal .s-risk .icon{color:#e9b44c}.portal .s-ship,.portal .s-ok{border-left-color:var(--bar-ok)}.portal .s-ship .icon,.portal .s-ok .icon{color:#6cc79a}.portal .s-req{border-left-color:var(--orange)}.portal .s-req .icon{color:var(--orange)}.portal .s-stage .icon{color:#fff9}.portal .horizon{margin-top:28px;background:var(--navy-deep);box-shadow:inset 0 0 0 1px #ffffff14;color:#fff;border-radius:var(--corner);padding:18px 0 10px;overflow:hidden}.portal .hz-top{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;align-items:baseline;padding:0 20px 6px}.portal .hz-top h2{color:#fff}.portal .hz-top p{margin:2px 0 0;font-size:13px;color:#ffffffa6}.portal .hz-key{display:flex;gap:14px;font-size:12px;color:#ffffffb3}.portal .hz-key i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}.portal .k-ok{background:var(--bar-ok)}.portal .k-risk{background:var(--bar-risk)}.portal .k-block{background:var(--bar-block)}.portal .k-land{background:#fff;transform:rotate(45deg)}.portal .hz{display:grid;grid-template-columns:220px 1fr}.portal .hz-axis{position:relative;height:34px}.portal .hz-axis span{position:absolute;top:8px;transform:translate(-50%);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffffff80;white-space:nowrap}.portal .hz-axis span:first-child{transform:none}.portal .hz-axis b{position:absolute;bottom:0;transform:translate(-50%);background:var(--orange);color:var(--navy-deep);font-size:12px;font-weight:800;letter-spacing:.04em;padding:2px 6px;border-radius:3px;z-index:4}.portal .hz-row{display:contents;color:#fff;text-decoration:none}.portal .hz-row>*{border-top:1px solid rgba(255,255,255,.1);height:40px}.portal .hz-row:hover>*{background:#ffffff0f}.portal .hz-row:focus-visible>*{background:#ffffff1a}.portal .hz-name{padding:0 14px 0 20px;display:flex;flex-direction:column;justify-content:center;min-width:0}.portal .hz-name b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal .hz-name span{font-size:12px;color:#ffffff8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal .hz-track{position:relative}.portal .hz-track .wk{position:absolute;top:0;bottom:0;width:1px;background:#ffffff14}.portal .hz-track .past{position:absolute;top:0;bottom:0;left:0;background:#00000029}.portal .hz-track .now{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--orange);z-index:3}.portal .hz-bar{position:absolute;top:10px;height:20px;border-radius:4px;padding:0 7px;font-size:12px;font-weight:800;line-height:20px;white-space:nowrap;z-index:2;color:#fff;overflow:hidden}.portal .hz-bar.ok{background:var(--bar-ok)}.portal .hz-bar.risk{background:var(--bar-risk);color:#2a1c00}.portal .hz-bar.block{background:var(--bar-block)}.portal .hz-land{position:absolute;top:13px;width:14px;height:14px;margin-left:-7px;background:#fff;border-radius:2px;transform:rotate(45deg);z-index:2}.portal .hz-land.shipped{background:var(--bar-ok);box-shadow:0 0 0 2px var(--navy-deep)}.portal .hz-note{position:absolute;top:11px;font-size:12px;font-weight:700;color:#ffffffb3;white-space:nowrap;z-index:2}.portal .hz-foot{padding:10px 20px 4px;font-size:12px;color:#ffffff8c}.portal .crumbs+.detail-head{padding-top:10px;padding-bottom:36px;margin-bottom:4px}.portal .detail-head{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end}.portal .detail-head h1{margin-top:10px}.portal .head-tags{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.portal .detail-head .status{color:#ffffffb3}.portal .detail-head .pill{box-shadow:0 0 0 1px #ffffff26}.portal .facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:12px;color:#ffffffb3;font-size:14px}.portal .facts b{color:#fff}.portal .reason{display:inline-block;margin:14px 0 0;padding:8px 14px;border-radius:8px;font-size:14px;font-weight:700}.portal .big-progress{text-align:right}.portal .big-progress .pct{font-family:var(--display);font-size:84px;font-weight:700;color:#fff;line-height:1;letter-spacing:-.01em}.portal .big-progress .pct small{font-size:32px}.portal .big-progress .of{color:#ffffffa6;font-size:14px}.portal .detail-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:28px;align-items:start}.portal .stack{display:grid;gap:20px}.portal .epic{display:grid;grid-template-columns:1fr 170px;gap:6px 18px;padding:14px 20px;border-bottom:1px solid var(--line);align-items:center}.portal .epic:last-child{border-bottom:0}.portal .epic .name{font-weight:700;color:var(--navy-ink)}.portal .epic .sub{font-size:13px;color:var(--ink-muted)}.portal .list-row{display:flex;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid var(--line);font-size:14px}.portal .list-row:last-child{border-bottom:0}.portal .list-row>span:first-child{display:inline-flex;gap:6px;align-items:baseline}.portal .list-row .icon{width:15px;height:15px;align-self:center}.portal .list-row .icon.ok{color:var(--ok)}.portal .list-row .when{color:var(--ink-muted);white-space:nowrap;font-weight:600}.portal .kind-tag{font-size:12px;font-weight:800;color:var(--ink-muted);background:var(--ground);padding:1px 7px;border-radius:5px;text-transform:capitalize}.portal .tabs{display:flex;gap:2px;box-shadow:inset 0 -1px var(--line);margin-bottom:18px;overflow-x:auto;overflow-y:hidden}.portal .tabs button{border:0;background:none;padding:10px 14px;font-weight:700;color:var(--ink-muted);cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap}.portal .tabs button[aria-selected=true]{color:var(--navy-ink);border-color:var(--orange)}.portal .req-list .req{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(220px,1fr) 150px;gap:8px 24px;padding:16px 20px;border-bottom:1px solid var(--line);align-items:center}.portal .req-list .req:last-child{border-bottom:0}.portal .req .title{font-weight:700;color:var(--navy-ink)}.portal .req .sub{font-size:13px;color:var(--ink-muted)}.portal .req .right{text-align:right;font-size:13px;color:var(--ink-muted)}.portal .req .right a{font-weight:700}.portal .form-wrap{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}.portal .form{padding:28px;display:grid;gap:20px}.portal .field{display:grid;gap:6px;align-content:start}.portal .field label{font-weight:700;font-size:14px;color:var(--navy-ink)}.portal .field .opt{font-weight:500;color:var(--ink-muted)}.portal .field .hint{font-size:13px;color:var(--ink-muted)}.portal .field input,.portal .field textarea{border:1px solid var(--line-strong);border-radius:8px;padding:10px 12px;background:var(--surface);width:100%}.portal .field input{height:42px}.portal .field textarea{min-height:130px;resize:vertical}.portal .field input:focus,.portal .field textarea:focus,.portal select:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px #25275d1f}.portal .field.err input,.portal .field.err textarea{border-color:var(--block)}.portal .field .msg{font-size:13px;color:var(--block);font-weight:600}.portal .row2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal .form-error{margin:0;padding:10px 14px;border-radius:8px;background:var(--block-bg);color:var(--block);font-weight:700;font-size:14px}.portal .form-actions{display:flex;gap:12px;justify-content:flex-end}.portal .aside{padding:22px;font-size:14px}.portal .aside ol{margin:10px 0 0;padding-left:20px;display:grid;gap:8px}.portal .aside li b{color:var(--navy-ink)}.portal .note{font-size:13px;color:var(--ink-muted);margin:14px 0 0}.portal .success{max-width:640px;margin:40px auto;padding:40px 28px;text-align:center}.portal .success p{max-width:46ch;margin:10px auto 22px}.portal .success .actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.portal .success .tick{width:56px;height:56px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;margin:0 auto 16px}.portal .success .tick .icon{width:28px;height:28px}@media (max-width: 1080px){.portal .brand small{display:none}.portal .bar-in{gap:18px}}@media (max-width: 960px){.portal .detail-grid,.portal .form-wrap{grid-template-columns:1fr}}@media (max-width: 760px){.portal main{padding:22px 16px 64px}.portal .bar-in{padding:0 16px;gap:12px}.portal .band,.portal .page-head{margin-top:-22px;padding-top:26px;padding-bottom:28px}.portal .crumbs{margin-top:-22px}.portal .crumbs+.page-head{margin-top:0}.portal .nav{display:none}.portal .nav.open{display:flex;flex-direction:column;position:absolute;top:64px;left:0;right:0;background:var(--navy);padding:8px 16px 16px;z-index:5}.portal .menu-btn{display:inline-grid}.portal .bar .btn-primary{margin-left:auto;padding:9px 11px}.portal .bar .btn-primary .label{display:none}.portal .icon-btn{margin-left:0}.portal .detail-head{grid-template-columns:1fr}.portal .big-progress{text-align:left}.portal .big-progress .pct{font-size:60px}.portal .row2,.portal .req-list .req{grid-template-columns:1fr}.portal .req .right{text-align:left}.portal .epic{grid-template-columns:1fr}.portal .search{max-width:none;min-width:0;flex-basis:100%}.portal .hz{grid-template-columns:120px 1fr}.portal .hz-name{padding-left:14px}.portal .hz-name span,.portal .hz-key{display:none}.portal .hz-axis span:nth-of-type(3n+2),.portal .hz-axis span:nth-of-type(3n+3){display:none}.portal table.projects th:nth-child(3),.portal table.projects td:nth-child(3),.portal table.projects th:nth-child(6),.portal table.projects td:nth-child(6){display:none}}@media (prefers-reduced-motion: reduce){.portal,.portal *{transition:none!important}}.portal .star{background:none;border:0;padding:4px;border-radius:6px;cursor:pointer;color:var(--faint);display:inline-grid;place-items:center;flex:none;transition:color .15s,transform .2s cubic-bezier(.2,.8,.2,1)}.portal .star:hover{color:var(--navy)}.portal .star.on{color:var(--orange)}.portal .star.on .icon{fill:currentColor}.portal .star:active{transform:scale(.88)}.portal .star[disabled]{opacity:.4;cursor:default}.portal .star .icon{width:18px;height:18px}.portal .head-tags .star{color:#fff9}.portal .head-tags .star:hover,.portal .head-tags .star.on{color:var(--orange)}.portal .name-cell{display:flex;gap:8px;align-items:flex-start}.portal .name-cell .star{margin:1px 0 0 -6px}.portal .watch-card{position:relative;display:flex}.portal .watch-card .watch{flex:1;min-width:0}.portal .watch-card .meta{padding-right:30px}.portal .watch-card>.star{position:absolute;right:10px;bottom:10px}.portal .watch-hint{margin:0;display:flex;gap:8px;align-items:center;font-size:14px}.portal .watch-hint .icon{width:16px;height:16px;color:var(--orange)}.portal .page-head .chip{background:transparent;border-color:#ffffff59;color:#fff}.portal .page-head .chip:hover{border-color:#fff}.portal .page-head .chip[aria-pressed=true]{background:#fff;border-color:#fff;color:var(--navy)}.portal .team-total{padding:24px;display:grid;grid-template-columns:1fr 1.4fr;gap:32px;align-items:center}.portal .load-figure{font-family:var(--display);font-size:56px;font-weight:700;color:var(--navy-ink);line-height:1}.portal .load-caption{color:var(--ink-muted);font-weight:700}.portal .load-bar{display:flex;height:18px;border-radius:99px;overflow:hidden;margin:10px 0 12px;background:var(--track)}.portal .load-bar i{display:block;transition:width .4s cubic-bezier(.2,.8,.2,1)}.portal .legend{display:flex;flex-wrap:wrap;gap:16px;font-size:14px}.portal .legend span{display:inline-flex;align-items:center;gap:6px;font-weight:600}.portal .legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.portal .l-spare{background:#7fb89b}.portal .l-busy{background:var(--navy)}.portal .l-loaded{background:var(--orange)}.portal .note{font-size:13px;color:var(--ink-muted);margin:10px 0 0}.portal .people{margin-top:24px;overflow:hidden}.portal .person{all:unset;box-sizing:border-box;width:100%;display:grid;grid-template-columns:34px minmax(160px,1fr) 120px minmax(160px,1.4fr) 20px;gap:14px;align-items:center;padding:12px 20px;border-bottom:1px solid var(--line);cursor:pointer}.portal .person:hover{background:#f7f7fb}.portal .person:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}.portal .initials{width:34px;height:34px;border-radius:50%;background:var(--ground);color:var(--navy);display:grid;place-items:center;font-weight:800;font-size:13px}.portal .who b{display:block;color:var(--navy-ink)}.portal .who span{font-size:13px;color:var(--ink-muted)}.portal .lvl{font-size:12px;font-weight:800;padding:2px 9px;border-radius:999px;justify-self:start;white-space:nowrap}.portal .lvl-spare{color:var(--ok);background:var(--ok-bg)}.portal .lvl-busy{color:var(--navy);background:#e7e8f4}.portal .lvl-loaded{color:var(--orange-ink);background:var(--orange-soft)}.portal .person .load{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--ink-muted);min-width:0}.portal .person .load span:first-child{font-weight:700;color:var(--navy-ink)}.portal .person .progress .fill{display:block;height:100%}.portal .person .progress .track{display:block;width:auto}.portal .fill.f-spare{background:#7fb89b}.portal .fill.f-busy{background:var(--navy)}.portal .fill.f-loaded{background:var(--orange)}.portal .chev{color:var(--faint);transition:transform .2s}.portal .person[aria-expanded=true] .chev{transform:rotate(180deg)}.portal .person-detail{padding:4px 20px 14px 68px;border-bottom:1px solid var(--line);background:#fafafc;font-size:14px}.portal .person-detail div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px dashed var(--line)}.portal .person-detail div:last-child{border-bottom:0}.portal .person-detail a{font-weight:600;text-decoration:none}.portal .person-detail a:hover{text-decoration:underline}@media (max-width: 760px){.portal .team-total{grid-template-columns:1fr;gap:16px}.portal .person{grid-template-columns:34px 1fr auto;row-gap:6px}.portal .person .progress,.portal .person .load{grid-column:2 / -1}.portal .person .chev{display:none}.portal .person-detail{padding-left:20px}}.portal .label-text{font-weight:700;font-size:14px;color:var(--navy-ink)}.portal .drop{display:flex;flex-direction:column;align-items:center;gap:6px;border:2px dashed var(--line-strong);border-radius:var(--corner);padding:20px;text-align:center;color:var(--ink-muted);font-size:14px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.portal .drop:hover,.portal .drop.over{border-color:var(--navy);color:var(--navy);background:#f7f7fb}.portal .drop:focus-within{outline:3px solid var(--orange);outline-offset:2px}.portal .drop .icon{width:22px;height:22px}.portal .file-list{list-style:none;margin:8px 0 0;padding:0;border:1px solid var(--line);border-radius:var(--corner)}.portal .file-list li{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px;border-bottom:1px solid var(--line);font-size:14px}.portal .file-list li:last-child{border-bottom:0}.portal .file-list .icon{width:16px;height:16px;color:var(--ink-muted)}.portal .file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal .file-list .icon-btn{margin:0;color:var(--ink-muted)}.portal .file-list .icon-btn:hover{color:var(--block);background:var(--block-bg)}.portal .notice-region{position:fixed;left:16px;right:16px;bottom:20px;display:flex;justify-content:center;pointer-events:none;z-index:20}.portal .notice{pointer-events:auto;display:flex;align-items:center;gap:12px;max-width:520px;background:var(--navy-deep);color:#fff;border-left:4px solid var(--orange);border-radius:var(--corner);padding:10px 8px 10px 16px;box-shadow:var(--shadow);font-size:14px;font-weight:600}.portal .notice .icon-btn{margin:0}
