
/* =========================================================
   WFT POWERHOUSE MASTER
   Single coordinated design layer for public site + command center
   ========================================================= */
:root{
  --ph-red:#dc2632;
  --ph-red2:#9e131c;
  --ph-ink:#050b11;
  --ph-navy:#081825;
  --ph-card:#0b1c29;
  --ph-line:#274050;
  --ph-text:#f4f7f9;
  --ph-muted:#8fa2ae;
  --ph-gold:#d9b85d;
}
.ph-official-logo{object-fit:contain!important;background:#fff!important;border-radius:8px!important}
body.wft-public-v24 .v24-brand img{content:url("/assets/wft-official-logo.jpg")!important}
body.wft-public-v24 .v24-foot-brand img{content:url("/assets/wft-official-logo.jpg")!important}
body.cc2-body .cc2-side-brand img,
body.cc2-body .cc2-top-brand img{content:url("/assets/wft-official-logo.jpg")!important}

/* Public site: stronger premium/patriotic treatment */
.wft-public-v24{
  background:
    radial-gradient(circle at 80% 15%,rgba(128,18,28,.18),transparent 30%),
    #050b11;
}
.v24-header{box-shadow:0 10px 35px rgba(0,0,0,.42)}
.v24-header-inner{position:relative}
.ph-header-seal{
  margin-left:auto;width:58px;height:58px;border-radius:10px;
  border:1px solid rgba(255,255,255,.16);background:#fff;object-fit:contain;
  box-shadow:0 8px 25px rgba(0,0,0,.34);
}
.v24-hero{
  position:relative;isolation:isolate;overflow:hidden;
  background-image:
    linear-gradient(90deg,rgba(3,8,13,.94) 0%,rgba(3,8,13,.80) 42%,rgba(3,8,13,.26) 74%,rgba(3,8,13,.46) 100%),
    url("/assets/wft-approved-hero-v24.jpg")!important;
  background-size:cover!important;background-position:center right!important;
}
.v24-hero:before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(16,44,78,.42) 0 34%,transparent 34%),
    repeating-linear-gradient(to bottom,rgba(170,22,38,.20) 0 7.69%,rgba(255,255,255,.035) 7.69% 15.38%);
  mix-blend-mode:screen;opacity:.42;
}
.v24-hero:after{
  content:"★ ★ ★ ★ ★ ★\A ★ ★ ★ ★ ★\A★ ★ ★ ★ ★ ★\A ★ ★ ★ ★ ★";
  white-space:pre;position:absolute;left:4.5%;top:11%;z-index:-1;
  color:rgba(255,255,255,.055);letter-spacing:13px;line-height:1.85;font-size:18px;
}
.ph-mission-banner{
  position:relative;overflow:hidden;margin:28px auto;max-width:1420px;min-height:330px;
  border:1px solid #273c49;border-radius:18px;background:#07131d;
  box-shadow:0 24px 65px rgba(0,0,0,.33);
}
.ph-mission-banner img{width:100%;height:100%;min-height:330px;object-fit:cover;display:block;opacity:.47;filter:saturate(.82) contrast(1.12)}
.ph-mission-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,10,16,.96),rgba(4,10,16,.55) 56%,rgba(4,10,16,.24))}
.ph-mission-copy{position:absolute;z-index:2;left:5%;top:50%;transform:translateY(-50%);max-width:640px}
.ph-mission-copy small{color:#f25761;font-weight:900;letter-spacing:.18em}
.ph-mission-copy h2{font-size:clamp(30px,4vw,58px);line-height:.98;margin:10px 0;color:#fff}
.ph-mission-copy p{color:#c4d0d6;max-width:570px;font-size:16px;line-height:1.6}
.ph-public-tools{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.ph-public-tools a{font-size:11px;font-weight:900;letter-spacing:.06em;text-decoration:none}
.ph-student-link{border:1px solid #3a5260;padding:9px 11px;border-radius:7px;color:#eaf2f6}
.ph-review-link{border:1px solid #7e2028;padding:9px 11px;border-radius:7px;color:#ffb3b8}

/* Command Center patriotic backdrop */
.cc2-body{
  background:
    linear-gradient(rgba(3,11,18,.94),rgba(3,11,18,.94)),
    linear-gradient(90deg,rgba(14,42,76,.34) 0 35%,transparent 35%),
    repeating-linear-gradient(to bottom,rgba(177,28,44,.11) 0 7.69%,rgba(255,255,255,.025) 7.69% 15.38%),
    #06111a!important;
}
.cc2-main,.cc2-content{background:transparent!important}
.cc2-card,.cc2-metric{backdrop-filter:blur(6px)}
.ph-background-layer{
  position:fixed;inset:0 0 0 330px;z-index:0;pointer-events:none;
  background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.11;
}
.cc2-main{position:relative;z-index:1}

/* Individual widget edit diamond */
.ph-widget{position:relative!important;min-width:220px}
.ph-widget-diamond{
  position:absolute!important;right:8px!important;top:8px!important;z-index:40!important;
  width:24px!important;height:24px!important;padding:0!important;border:1px solid rgba(255,255,255,.17)!important;
  border-radius:7px!important;background:rgba(5,16,25,.90)!important;color:#b7cad4!important;
  display:none!important;place-items:center!important;font-size:11px!important;line-height:24px!important;
}
.cc2-body.ph-studio-enabled .ph-widget:hover>.ph-widget-diamond{display:grid!important}
.cc2-body.ph-studio-enabled .ph-widget{outline:1px dashed rgba(218,42,54,.18)}
.cc2-body.ph-studio-enabled .ph-widget.ph-selected{
  outline:2px solid rgba(239,54,66,.72)!important;box-shadow:0 0 0 4px rgba(218,38,50,.08),0 18px 42px rgba(0,0,0,.28)!important;
}
.cc2-body.ph-studio-enabled .ph-widget.ph-unlocked{resize:both!important;overflow:auto!important}
.ph-widget-tab{
  position:absolute;left:14px;top:-10px;z-index:15;padding:4px 10px;border-radius:7px 7px 0 0;
  color:#fff;font-size:9px;font-weight:900;letter-spacing:.08em;background:var(--ph-widget-accent,#dc2632);display:none;
}
.ph-widget[data-ph-tab]:not([data-ph-tab=""])>.ph-widget-tab{display:block}

/* Studio button/sidebar */
.ph-sidebar-control{
  width:calc(100% - 20px);margin:8px 10px;padding:10px 12px;border-radius:9px;border:1px solid #314a59;
  background:linear-gradient(180deg,#102535,#081721);color:#eaf3f7;font-weight:900;cursor:pointer;text-align:left
}
.ph-sidebar-control:hover{border-color:#b52b35;background:#132b3b}
.ph-sidebar-control.ai{border-color:#6330a1;background:linear-gradient(180deg,#251739,#120d21)}
.ph-sidebar-control.local{border-color:#2b7258;background:linear-gradient(180deg,#102b25,#081b17)}

#phStudio{
  position:fixed;z-index:17000;right:24px;top:142px;width:330px;height:590px;min-width:270px;min-height:220px;
  resize:both;overflow:auto;display:none;border:1px solid #355063;border-radius:14px;
  background:rgba(5,15,23,.97);color:#eef5f8;box-shadow:0 24px 75px rgba(0,0,0,.55);backdrop-filter:blur(16px)
}
#phStudio.open{display:block}
#phStudio.minimized{height:44px!important;min-height:44px!important;overflow:hidden}
.ph-studio-titlebar{
  position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:8px;padding:10px 11px;cursor:move;
  background:linear-gradient(180deg,#122839,#091722);border-bottom:1px solid #2d4657
}
.ph-studio-titlebar strong{flex:1;font-size:11px;letter-spacing:.08em}
.ph-studio-titlebar button{width:27px;height:25px;padding:0;border-radius:6px;border:1px solid #405969;background:#0a1922;color:#fff;cursor:pointer}
.ph-studio-body{padding:11px}
.ph-studio-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:10px}
.ph-studio-tabs button{padding:7px 4px;border-radius:6px;border:1px solid #304856;background:#0a1922;color:#9fb0ba;font-size:9px;font-weight:900;cursor:pointer}
.ph-studio-tabs button.active{background:#b51c26;color:#fff;border-color:#e0464f}
.ph-pane{display:none}.ph-pane.active{display:block}
.ph-field{margin:9px 0}.ph-field label{display:block;color:#8da1ad;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.ph-field input,.ph-field select,.ph-field textarea{width:100%;border:1px solid #36505f;background:#081720;color:#fff;border-radius:7px;padding:8px}
.ph-grid2{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.ph-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.ph-actions button{border:1px solid #35505f;background:#0d1d27;color:#fff;border-radius:7px;padding:7px 9px;font-size:10px;font-weight:800;cursor:pointer}
.ph-actions button.red{background:#b71c25;border-color:#e24750}.ph-actions button.gold{background:#2c240a;border-color:#806a00;color:#ffdc6b}
.ph-actions button.danger{background:#2f1014;border-color:#8e2930;color:#ffb7bb}
.ph-selected-label{padding:8px;border:1px solid #2e4656;background:#07151e;border-radius:7px;color:#bfd0d7;font-size:10px}

/* Context menu */
#phContext{
  position:fixed;z-index:18000;display:none;width:220px;padding:6px;border:1px solid #345063;border-radius:10px;
  background:rgba(6,17,26,.98);box-shadow:0 16px 45px rgba(0,0,0,.48)
}
#phContext button{display:block;width:100%;text-align:left;border:0;background:transparent;color:#dce8ed;padding:8px 9px;border-radius:6px;cursor:pointer;font-size:11px}
#phContext button:hover{background:#102738}#phContext button.ai{color:#c8a7ff}#phContext button.danger{color:#ff9da2}

/* Powerhouse injected widgets */
.ph-review-widget .ph-review-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.ph-review-kpi{padding:10px;background:#081722;border:1px solid #253c49;border-radius:8px;text-align:center}
.ph-review-kpi b{display:block;font-size:22px}.ph-review-kpi span{font-size:9px;color:#8fa2ad}
.ph-status-good{color:#62dda0}.ph-status-warn{color:#ffd66b}.ph-status-bad{color:#ff6c75}

/* AI Command */
#phAiPanel{
  position:fixed;z-index:16990;right:24px;bottom:24px;width:390px;max-height:72vh;display:none;border:1px solid #573291;border-radius:15px;
  background:rgba(12,8,22,.98);box-shadow:0 24px 80px rgba(0,0,0,.55);overflow:hidden
}
#phAiPanel.open{display:block}.ph-ai-head{display:flex;align-items:center;padding:11px 13px;background:#1b102e;border-bottom:1px solid #49306f}
.ph-ai-head strong{flex:1}.ph-ai-head button{background:#110b1d;color:#fff;border:1px solid #4f3971;border-radius:6px}
.ph-ai-log{height:310px;overflow:auto;padding:12px}.ph-ai-msg{padding:9px 10px;margin:7px 0;border-radius:9px;background:#161029;font-size:11px;line-height:1.45}
.ph-ai-msg.user{background:#102232}.ph-ai-form{display:flex;gap:6px;padding:10px;border-top:1px solid #3d285c}.ph-ai-form input{flex:1;background:#0d0a16;border:1px solid #473267;color:#fff;border-radius:8px;padding:9px}
.ph-ai-form button{background:#6f3fc0;border:0;border-radius:8px;color:#fff;font-weight:900;padding:9px 12px}

/* Reviews / student portal pages */
.ph-page{min-height:100vh;background:#06111a;color:#edf4f7;font-family:Arial,sans-serif}
.ph-page main{max-width:1000px;margin:0 auto;padding:30px 18px}
.ph-page .panel{background:#0a1923;border:1px solid #2b414f;border-radius:13px;padding:18px;margin:14px 0}
.ph-page input,.ph-page select,.ph-page textarea{width:100%;padding:10px;border:1px solid #3b5361;border-radius:7px;background:#07141d;color:#fff;margin:5px 0 11px}
.ph-page button,.ph-page .btn{display:inline-block;padding:9px 12px;border:0;border-radius:7px;background:#d62531;color:#fff;font-weight:900;text-decoration:none;cursor:pointer}
.ph-page .muted{color:#8fa1ab}
.ph-review-card{padding:14px 0;border-bottom:1px solid #263a46}.ph-verified{display:inline-block;padding:3px 7px;background:#113c2c;color:#6ee6a4;border-radius:14px;font-size:9px;font-weight:900}


/* =========================================================
   WFT POWERHOUSE PUBLIC HOME REFINEMENT 1
   ========================================================= */
.v24-class-layout{
  grid-template-columns:minmax(0,1fr) 300px;
  align-items:stretch;
}
.v24-class-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:stretch;
}
.ph-location-card{min-height:330px;display:flex;flex-direction:column}
.ph-location-head{
  display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;
  margin:-13px -13px 12px;padding:10px 12px;background:#091b2a;border-bottom:1px solid #284154
}
.ph-location-head>span{color:#ec2b36;font-size:18px}
.ph-location-head b{display:block;color:#ff4c55;font-size:10px;letter-spacing:.12em}
.ph-location-head small{display:block;margin-top:3px;color:#9eabb2;font-size:9px;line-height:1.35}
.ph-no-class{background:linear-gradient(145deg,#10151a,#07090c)}
.ph-no-class-body{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px 14px}
.ph-no-class-icon{font-size:33px;color:#758692}
.ph-no-class h3{font-size:22px;line-height:1.05;margin:10px 0;color:#c0c9cf}
.ph-no-class p{font-size:11px;color:#8f9ca4;max-width:310px;line-height:1.55}
.ph-no-class .v24-btn{margin-top:12px}
.ph-class-warning{grid-column:1/-1;min-height:90px}

.ph-home-faq{max-width:1500px;margin:0 auto;padding:30px 22px 10px}
.ph-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.ph-faq-grid details{
  background:linear-gradient(145deg,#0f161d,#080c10);
  border:1px solid #293d49;border-radius:7px;overflow:hidden
}
.ph-faq-grid summary{
  list-style:none;cursor:pointer;padding:13px 15px;font-size:11px;font-weight:900;color:#eef4f6;
  position:relative;padding-right:42px
}
.ph-faq-grid summary::-webkit-details-marker{display:none}
.ph-faq-grid summary:after{content:'+';position:absolute;right:15px;top:10px;font-size:19px;color:#e72c36}
.ph-faq-grid details[open] summary:after{content:'–'}
.ph-faq-grid details[open] summary{border-bottom:1px solid #263944;background:#0a1923}
.ph-faq-grid p{padding:12px 15px;margin:0;color:#aebbc2;font-size:10px;line-height:1.6}

@media(max-width:960px){
  .v24-class-layout{grid-template-columns:1fr}
  .v24-class-grid{grid-template-columns:1fr 1fr!important}
  .v24-difference{margin-top:0}
}
@media(max-width:760px){
  .v24-class-grid,.ph-faq-grid{grid-template-columns:1fr!important}
}

/* Retire the large second patriotic gun graphic. The upper hero remains the primary visual. */
.ph-mission-banner{display:none!important}
