/* BKS Client Portal — brand styling */
.bks-portal{--navy:#16264F;--gold:#D1A41E;--cream:#FBF8F2;--ink:#20242c;--mut:#5b6270;--line:#e7e2d6;
  max-width:960px;margin:0 auto;padding:8px 14px 60px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);}
.bks-portal *{box-sizing:border-box;}
.bks-head{display:flex;align-items:center;gap:16px;padding:14px 0 18px;border-bottom:1px solid var(--line);margin-bottom:18px;flex-wrap:wrap;}
.bks-logo{width:150px;max-width:46%;height:auto;}
.bks-hi{font-size:16px;color:var(--mut);}
.bks-hi strong{color:var(--navy);}
.bks-flash{background:#eaf6ec;border:1px solid #bfe2c6;color:#1f6b34;padding:12px 16px;border-radius:10px;margin:0 0 16px;font-size:15px;}

.bks-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px rgba(20,38,79,.04);}
.bks-tab{background:#fff;border:1px solid var(--line);color:var(--navy);font-weight:bold;font-size:14px;
  padding:10px 16px;border-radius:999px;cursor:pointer;transition:.15s;}
.bks-tab:hover{border-color:var(--gold);}
.bks-tab.active{background:var(--navy);color:#fff;border-color:var(--navy);}

.bks-pane{display:none;}
.bks-pane.active{display:block;animation:bksfade .2s ease;}
@keyframes bksfade{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:none;}}

.bks-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 24px;margin-bottom:18px;box-shadow:0 1px 3px rgba(20,38,79,.04);}
.bks-card h3{margin:0;color:var(--navy);font-size:20px;}
.bks-card h4{color:var(--navy);margin:22px 0 10px;font-size:15px;text-transform:uppercase;letter-spacing:.5px;}
.bks-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap;}
.bks-badge{background:var(--cream);border:1px solid var(--line);color:var(--navy);font-size:12px;font-weight:bold;padding:5px 12px;border-radius:999px;white-space:nowrap;}
.bks-meta{color:var(--mut);font-size:14px;margin:2px 0 10px;}

.bks-bar{background:#eee;border-radius:999px;height:12px;overflow:hidden;margin:6px 0;}
.bks-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--navy),var(--gold));border-radius:999px;transition:width .5s;}
.bks-prog-label{font-size:13px;color:var(--mut);font-weight:bold;}
.bks-update{background:var(--cream);border-left:3px solid var(--gold);padding:10px 14px;border-radius:0 8px 8px 0;font-size:15px;margin:12px 0 0;}

.bks-stages{list-style:none;margin:16px 0 0;padding:0;}
.bks-stage{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px dashed var(--line);font-size:15px;}
.bks-stage:last-child{border-bottom:none;}
.bks-dot{width:12px;height:12px;border-radius:50%;background:#cfd4dc;flex:none;}
.bks-done .bks-dot{background:#2e9e54;}
.bks-active .bks-dot{background:var(--gold);box-shadow:0 0 0 3px rgba(209,164,30,.25);}
.bks-review .bks-dot{background:#e07b39;box-shadow:0 0 0 3px rgba(224,123,57,.2);}
.bks-stage-name{flex:1;}
.bks-status-txt{color:var(--mut);font-size:13px;}
.bks-approved{color:#2e9e54;font-weight:bold;font-size:13px;}
.bks-approve{margin:0;}

.bks-btn{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;font-weight:bold;font-size:14px;
  padding:11px 20px;border-radius:9px;border:none;cursor:pointer;margin:6px 8px 6px 0;transition:.15s;}
.bks-btn:hover{opacity:.9;}
.bks-btn-gold{background:var(--gold);color:var(--navy);}
.bks-btn-sm{padding:6px 14px;font-size:13px;margin:0;}
.bks-btn-quiet{background:#fff;color:var(--navy);border:1px solid var(--line);}
.bks-inline{display:inline;}

.bks-file{display:block;background:var(--cream);border:1px solid var(--line);border-radius:9px;padding:12px 16px;margin:8px 0;color:var(--navy);
  text-decoration:none;font-weight:bold;}
.bks-file:hover{border-color:var(--gold);}
.bks-file::before{content:"\2193";display:inline-block;margin-right:8px;color:var(--gold);}

.bks-embed{position:relative;padding-top:62%;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-top:12px;}
.bks-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

.bks-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:6px;}
.bks-table{width:100%;border-collapse:collapse;margin-top:6px;font-size:14px;}
.bks-table th{text-align:left;color:var(--mut);font-size:12px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--line);padding:8px 10px;}
.bks-table td{border-bottom:1px solid var(--line);padding:10px;}
.bks-table td,.bks-table th{overflow-wrap:anywhere;word-break:break-word;}
.bks-table a{color:var(--navy);font-weight:bold;overflow-wrap:anywhere;word-break:break-word;}

/* Time-gated consultation join control */
.bks-joincell{display:inline-block;}
.bks-join-live{margin:0;box-shadow:0 0 0 0 rgba(209,164,30,.5);animation:bksPulse 2s infinite;}
@keyframes bksPulse{0%{box-shadow:0 0 0 0 rgba(209,164,30,.45);}70%{box-shadow:0 0 0 8px rgba(209,164,30,0);}100%{box-shadow:0 0 0 0 rgba(209,164,30,0);}}
.bks-join-locked{display:inline-flex;align-items:center;gap:6px;color:var(--mut);font-size:12px;font-weight:bold;
  background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:6px 12px;white-space:nowrap;}
.bks-join-locked::before{content:"";width:9px;height:9px;border-radius:50%;background:#cfd4dc;flex:none;}
.bks-join-ended{color:var(--mut);font-size:12px;}

/* Branded sign-in card (replaces the default WordPress/host login) */
.bks-login-wrap{display:flex;justify-content:center;padding:24px 14px 60px;}
.bks-login-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 24px rgba(20,38,79,.07);
  padding:34px 30px;max-width:420px;width:100%;text-align:center;}
.bks-login-logo{width:158px;max-width:58%;height:auto;margin:0 auto 14px;display:block;}
.bks-login-card h2{color:var(--navy);margin:6px 0 6px;font-size:24px;}
.bks-login-sub{color:var(--mut);font-size:14px;line-height:1.55;margin:0 0 20px;}
.bks-login-form{text-align:left;margin-top:8px;}
.bks-login-field{display:block;color:var(--navy);font-weight:bold;font-size:13px;margin-bottom:14px;}
.bks-login-field input{display:block;width:100%;margin-top:6px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;
  font-size:15px;color:var(--ink);background:#fff;font-weight:normal;}
.bks-login-field input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(209,164,30,.18);}
.bks-login-remember{display:flex;align-items:center;gap:8px;color:var(--mut);font-size:13px;font-weight:normal;margin:2px 0 18px;}
.bks-btn-block{display:block;width:100%;text-align:center;margin:0;padding:13px;font-size:15px;}
.bks-login-error{background:#fdecef;border:1px solid #f5c2cd;color:#a3123a;padding:11px 14px;border-radius:10px;font-size:14px;margin:0 0 16px;text-align:left;}
.bks-login-forgot{display:inline-block;margin-top:16px;color:var(--mut);font-size:13px;text-decoration:none;border-bottom:1px solid transparent;}
.bks-login-forgot:hover{color:var(--navy);border-bottom-color:var(--gold);}

@media(max-width:600px){
  .bks-tab{flex:1 1 auto;text-align:center;}
  .bks-card{padding:18px 16px;}
  .bks-login-card{padding:26px 20px;}

  /* Stack data tables into labeled cards so nothing wraps or overflows */
  .bks-table{display:block;}
  .bks-table tr:first-child{display:none;}            /* hide the header row */
  .bks-table tr{display:block;border:1px solid var(--line);border-radius:12px;background:#fff;
    margin:0 0 12px;padding:4px 2px;box-shadow:0 1px 3px rgba(20,38,79,.04);}
  .bks-table td{display:flex;justify-content:space-between;align-items:center;gap:14px;
    border:none;border-bottom:1px dashed var(--line);padding:11px 14px;font-size:14px;text-align:right;}
  .bks-table tr td:last-child{border-bottom:none;}
  .bks-table td::before{content:attr(data-label);font-weight:bold;color:var(--mut);
    font-size:11px;text-transform:uppercase;letter-spacing:.4px;text-align:left;flex:0 0 auto;white-space:nowrap;}
  .bks-table td[data-label=""]::before{display:none;}
  .bks-joincell,.bks-join-live,.bks-join-locked{white-space:normal;}
}
