/* BUILD 270 / CC SECURITY CONTROL PLANE
   Public sanitized security-state presentation only.
   No execution authority is exposed through the browser. */

.security-main-b270{
  width:min(1320px,calc(100% - 56px));
  margin:0 auto;
  padding:116px 0 88px;
  color:#edf5f2;
}

.security-b270-hero{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);
  gap:56px;
  align-items:end;
  padding:34px 0 30px;
  border-bottom:1px solid rgba(141,244,217,.18);
}

.security-b270-kicker,
.security-b270-section-kicker{
  margin-bottom:15px;
  font:800 10px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.15em;
  color:#8fb5aa;
}

.security-b270-hero h1{
  margin:0;
  font:850 clamp(64px,6.5vw,108px)/.82 Arial,sans-serif;
  letter-spacing:-.055em;
  color:#edf5f2;
}

.security-b270-hero h1 span{
  display:block;
}

.security-b270-hero h1 .outline{
  color:transparent;
  -webkit-text-stroke:1px rgba(237,245,242,.52);
}

.security-b270-hero p{
  margin:24px 0 0;
  max-width:760px;
  color:#b8c8c2;
  font:500 16px/1.7 Arial,sans-serif;
}

.security-b270-hero-status{
  min-height:180px;
  display:grid;
  align-content:space-between;
  gap:24px;
  padding:22px;
  border:1px solid rgba(141,244,217,.26);
  background:#06100d;
}

.security-b270-hero-status>span,
.security-b270-hero-status small{
  font:750 10px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.11em;
  color:#7f9890;
}

.security-b270-hero-status>b{
  font:850 clamp(28px,2.4vw,42px)/1 Arial,sans-serif;
  letter-spacing:-.025em;
  color:#edf5f2;
}

.security-b270-hero-status[data-state="verified"]>b{
  color:#a6ead9;
}

.security-b270-hero-status[data-state="review"]>b,
.security-b270-hero-status[data-state="rebaseline_pending"]>b{
  color:#d6bd7b;
}

.security-b270-hero-status[data-state="offline"]>b{
  color:#c98989;
}

.security-b270-status-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:18px;
  border:1px solid rgba(141,244,217,.16);
  background:#07100d;
}

.security-b270-status-strip>div{
  min-height:92px;
  display:grid;
  align-content:space-between;
  gap:12px;
  padding:16px;
  border-right:1px solid rgba(141,244,217,.11);
}

.security-b270-status-strip>div:last-child{
  border-right:0;
}

.security-b270-status-strip span,
.security-b270-row span,
.security-b270-metric span{
  font:750 10px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.1em;
  color:#7f958d;
}

.security-b270-status-strip b{
  font:800 13px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.045em;
  color:#dbe6e2;
}

.security-b270-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:16px;
}

.security-b270-panel{
  border:1px solid rgba(141,244,217,.17);
  background:#050d0a;
  padding:22px;
  min-width:0;
}

.security-b270-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding-bottom:16px;
  margin-bottom:8px;
  border-bottom:1px solid rgba(141,244,217,.11);
}

.security-b270-panel-head>div{
  min-width:0;
}

.security-b270-panel-head span{
  display:block;
  margin-bottom:8px;
  font:750 10px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.12em;
  color:#789087;
}

.security-b270-panel-head h2{
  margin:0;
  font:850 24px/1.03 Arial,sans-serif;
  letter-spacing:-.035em;
  color:#edf5f2;
}

.security-b270-panel-head>b{
  flex:0 0 auto;
  font:800 11px/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.08em;
  color:#a6ead9;
}

.security-b270-authority,
.security-b270-rows{
  display:grid;
}

.security-b270-row{
  min-height:52px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  border-bottom:1px solid rgba(141,244,217,.065);
}

.security-b270-row:last-child{
  border-bottom:0;
}

.security-b270-row b{
  text-align:right;
  font:800 11px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.065em;
  color:#dce7e3;
}

.security-b270-row b[data-state="on"],
.security-b270-row b[data-state="verified"],
.security-b270-row b[data-state="clean"]{
  color:#a6ead9;
}

.security-b270-row b[data-state="off"]{
  color:#899c95;
}

.security-b270-row b[data-state="review"]{
  color:#d6bd7b;
}

.security-b270-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:12px;
}

.security-b270-metric{
  min-height:86px;
  display:grid;
  align-content:space-between;
  gap:12px;
  padding:14px;
  border:1px solid rgba(141,244,217,.1);
  background:#07100d;
}

.security-b270-metric b{
  overflow-wrap:anywhere;
  font:800 16px/1.25 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.035em;
  color:#dce7e3;
}

.security-b270-boundary{
  margin-top:16px;
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:1px;
  border:1px solid rgba(141,244,217,.16);
  background:rgba(141,244,217,.12);
}

.security-b270-boundary>div{
  padding:22px;
  background:#050d0a;
}

.security-b270-boundary span{
  display:block;
  margin-bottom:10px;
  font:800 10px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.12em;
  color:#829a91;
}

.security-b270-boundary h2{
  margin:0;
  font:850 28px/1.05 Arial,sans-serif;
  letter-spacing:-.035em;
}

.security-b270-boundary p{
  margin:0;
  max-width:780px;
  font:500 14px/1.7 Arial,sans-serif;
  color:#b5c5bf;
}

.security-b270-foot{
  margin-top:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px 0;
  border-top:1px solid rgba(141,244,217,.12);
  border-bottom:1px solid rgba(141,244,217,.12);
  font:750 10px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.08em;
  color:#7e948c;
}

.security-b270-foot a{
  color:#a6ead9;
  text-decoration:none;
  border-bottom:1px solid rgba(166,234,217,.3);
}

.cc-os-security-entry-b270{
  margin:18px 0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  padding:20px;
  border:1px solid rgba(141,244,217,.19);
  background:#06100d;
}

.cc-os-security-entry-b270 span{
  display:block;
  margin-bottom:8px;
  font:800 10px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.12em;
  color:#829a91;
}

.cc-os-security-entry-b270 h2{
  margin:0 0 8px;
  font:850 25px/1 Arial,sans-serif;
  letter-spacing:-.035em;
}

.cc-os-security-entry-b270 p{
  margin:0;
  max-width:760px;
  font:500 13px/1.65 Arial,sans-serif;
  color:#aebfb8;
}

.cc-os-security-entry-b270 a{
  display:grid;
  place-items:center;
  min-height:52px;
  padding:0 18px;
  border:1px solid rgba(141,244,217,.28);
  color:#dff7f0;
  text-decoration:none;
  font:800 10px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.09em;
  white-space:nowrap;
}

@media(max-width:900px){

  .security-main-b270{
    width:calc(100% - 24px);
    padding:84px 0 calc(82px + env(safe-area-inset-bottom));
  }

  .security-b270-hero{
    grid-template-columns:1fr;
    gap:22px;
    padding:20px 0 24px;
  }

  .security-b270-hero h1{
    font-size:clamp(48px,13vw,72px);
  }

  .security-b270-hero p{
    font-size:14px;
    line-height:1.68;
  }

  .security-b270-hero-status{
    min-height:142px;
    padding:18px;
  }

  .security-b270-status-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .security-b270-status-strip>div:nth-child(2){
    border-right:0;
  }

  .security-b270-status-strip>div:nth-child(-n+2){
    border-bottom:1px solid rgba(141,244,217,.11);
  }

  .security-b270-grid{
    grid-template-columns:1fr;
  }

  .security-b270-boundary{
    grid-template-columns:1fr;
  }

  .cc-os-security-entry-b270{
    grid-template-columns:1fr;
  }

  .cc-os-security-entry-b270 a{
    width:100%;
  }
}

@media(max-width:600px){

  .security-main-b270{
    width:calc(100% - 18px);
  }

  .security-b270-kicker,
  .security-b270-section-kicker,
  .security-b270-status-strip span,
  .security-b270-row span,
  .security-b270-metric span,
  .security-b270-panel-head span,
  .security-b270-boundary span,
  .security-b270-foot,
  .cc-os-security-entry-b270 span{
    font-size:9.5px;
  }

  .security-b270-status-strip{
    grid-template-columns:1fr;
  }

  .security-b270-status-strip>div{
    min-height:72px;
    border-right:0;
    border-bottom:1px solid rgba(141,244,217,.11);
  }

  .security-b270-status-strip>div:last-child{
    border-bottom:0;
  }

  .security-b270-panel{
    padding:16px;
  }

  .security-b270-panel-head{
    display:grid;
    gap:10px;
  }

  .security-b270-panel-head h2{
    font-size:22px;
  }

  .security-b270-row{
    min-height:56px;
  }

  .security-b270-row b{
    font-size:10.5px;
  }

  .security-b270-metrics{
    grid-template-columns:1fr;
  }

  .security-b270-boundary>div{
    padding:17px;
  }

  .security-b270-boundary h2{
    font-size:24px;
  }

  .security-b270-boundary p{
    font-size:13.5px;
  }

  .security-b270-foot{
    display:grid;
  }
}
