/* Sacred Legacy deal bench — chrome (top bar, login gate) + bench surfaces.
   Relies on the ER design tokens declared in style.css :root (link style.css first). */

/* ---- top bench bar ---- */
.bench-bar{
  position:fixed; top:0; left:0; right:0; height:52px; z-index:8000;
  display:flex; align-items:center; gap:18px; padding:0 18px;
  background:rgba(15,15,15,.82); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--hair, rgba(255,255,255,.10));
}
.bench-bar .bb-brand{display:flex; align-items:center; gap:9px; text-decoration:none;}
.bench-bar .bb-brand img{height:17px; width:auto; display:block;}
.bench-bar .bb-brand .bb-sl{height:19px;}
.bench-bar .bb-brand .bb-x{color:var(--dim,#8A8A8A); font-size:13px;}
.bench-bar .bb-nav{display:flex; gap:4px; margin-left:8px;}
.bench-bar .bb-nav a{
  font-family:var(--mono,monospace); font-size:11px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--muted,#AFAFAF); text-decoration:none; padding:7px 12px; border:1px solid transparent;
}
.bench-bar .bb-nav a:hover{color:var(--text,#F3F3F3);}
.bench-bar .bb-nav a.on{color:#0F0F0F; background:var(--gold,#F9A720); font-weight:600;}
.bench-bar .bb-user{margin-left:auto; display:flex; align-items:center; gap:14px;}
.bench-bar .bb-who{display:flex; flex-direction:column; line-height:1.15; text-align:right; font-family:var(--sans,sans-serif); font-size:12.5px; color:var(--text);}
.bench-bar .bb-who small{font-family:var(--mono,monospace); font-size:9.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold,#F9A720);}
.bench-bar #bbSignOut{
  font-family:var(--mono,monospace); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted); background:transparent; border:1px solid var(--hair); padding:6px 10px; cursor:pointer;
}
.bench-bar #bbSignOut:hover{color:var(--text); border-color:var(--muted);}

/* push fixed deck chrome below the bar so nothing hides under it */
body.has-bench-bar .rail{top:52px;}
@media (max-width:680px){
  .bench-bar{gap:10px; padding:0 12px;}
  .bench-bar .bb-nav a{padding:6px 8px; font-size:10px;}
  .bench-bar .bb-who{display:none;}
}

/* ---- login / waiting gate ---- */
.bench-gate{
  position:fixed; inset:0; z-index:9500;
  display:flex; align-items:center; justify-content:center; padding:24px;
  background:var(--bg,#151515);
  background-image:radial-gradient(120% 90% at 50% -10%, #1d1b16 0%, #121212 55%, #0d0d0d 100%);
}
.bench-gate .bg-card{
  width:min(440px,100%); background:var(--panel,#1A1A1A); border:1px solid var(--hair);
  padding:38px 34px; clip-path:polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 0 100%);
}
.bench-gate .bg-brand{display:flex; align-items:center; gap:11px; margin-bottom:24px;}
.bench-gate .bg-brand img{height:20px; width:auto;}
.bench-gate .bg-brand .bg-sl{height:23px;}
.bench-gate .bg-brand span{color:var(--dim); font-size:14px;}
.bench-gate h1{font-family:var(--display,sans-serif); font-size:26px; letter-spacing:-.02em; margin:0 0 10px; color:var(--text);}
.bench-gate p{font-family:var(--sans,sans-serif); font-size:14.5px; line-height:1.5; color:var(--muted); margin:0 0 20px;}
.bench-gate form{display:flex; flex-direction:column; gap:10px;}
.bench-gate input{
  font-family:var(--sans,sans-serif); font-size:15px; padding:13px 14px;
  background:#0F0F0F; border:1px solid var(--hair); color:var(--text);
}
.bench-gate input:focus{outline:none; border-color:var(--gold,#F9A720);}
.bench-gate button{
  font-family:var(--mono,monospace); font-size:12px; letter-spacing:.1em; text-transform:uppercase; font-weight:600;
  padding:13px 14px; background:var(--gold,#F9A720); color:#0F0F0F; border:none; cursor:pointer;
}
.bench-gate button:hover{background:var(--gold-deep,#F98520);}
.bench-gate #bgOut{background:transparent; color:var(--muted); border:1px solid var(--hair); margin-top:18px;}
.bench-gate .bg-msg{min-height:1em; font-size:13px; color:var(--gold); margin:12px 0 0;}

/* ---- shared bench page shell (conversation / tracker) ---- */
.bench-page{max-width:880px; margin:0 auto; padding:84px 22px 80px;}
.bench-page .bp-eyebrow{font-family:var(--mono,monospace); font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--gold,#F9A720);}
.bench-page h1.bp-h{font-family:var(--display,sans-serif); font-size:clamp(28px,4vw,40px); letter-spacing:-.03em; margin:8px 0 8px; color:var(--text);}
.bench-page .bp-sub{font-family:var(--sans,sans-serif); font-size:15.5px; line-height:1.55; color:var(--muted); max-width:64ch; margin:0 0 30px;}

/* ---- conversation (transcripts) ---- */
.txn{border:1px solid var(--hair); margin:0 0 22px; background:#151515;}
.txn>summary{list-style:none; cursor:pointer; padding:16px 20px; display:flex; align-items:baseline; gap:14px;}
.txn>summary::-webkit-details-marker{display:none;}
.txn>summary .tx-date{font-family:var(--mono,monospace); font-size:11px; letter-spacing:.1em; color:var(--gold);}
.txn>summary .tx-title{font-family:var(--display,sans-serif); font-size:18px; letter-spacing:-.01em; color:var(--text);}
.txn>summary .tx-meta{margin-left:auto; font-family:var(--mono,monospace); font-size:10.5px; color:var(--dim); text-transform:uppercase; letter-spacing:.08em;}
.txn .tx-body{padding:4px 20px 22px; border-top:1px solid var(--hair);}
.turn{display:grid; grid-template-columns:120px 1fr; gap:16px; padding:9px 0; border-bottom:1px solid rgba(255,255,255,.04);}
.turn .sp{font-family:var(--mono,monospace); font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--gold); padding-top:2px;}
.turn .sp.er{color:var(--muted);}
.turn .ut{font-family:var(--sans,sans-serif); font-size:14.5px; line-height:1.55; color:var(--text);}
@media (max-width:560px){ .turn{grid-template-columns:1fr; gap:2px;} }

/* ---- tracker ---- */
.tk-new{border:1px solid var(--hair); background:var(--panel,#1A1A1A); padding:18px 20px; margin:0 0 26px;}
.tk-new .tk-row{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:10px;}
.tk-new select, .tk-new input, .tk-new textarea{
  font-family:var(--sans,sans-serif); font-size:14px; padding:10px 12px; background:#0F0F0F; border:1px solid var(--hair); color:var(--text);
}
.tk-new select{font-family:var(--mono,monospace); font-size:11px; letter-spacing:.08em; text-transform:uppercase;}
.tk-new input.tk-title{flex:1; min-width:200px;}
.tk-new textarea{width:100%; min-height:64px; resize:vertical;}
.tk-new button{font-family:var(--mono,monospace); font-size:11px; letter-spacing:.1em; text-transform:uppercase; font-weight:600; padding:10px 16px; background:var(--gold,#F9A720); color:#0F0F0F; border:none; cursor:pointer; margin-top:8px;}
.tk-new button:hover{background:var(--gold-deep,#F98520);}
.tk-filter{display:flex; gap:6px; margin:0 0 16px;}
.tk-filter button{font-family:var(--mono,monospace); font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; padding:6px 12px; background:transparent; border:1px solid var(--hair); color:var(--muted); cursor:pointer;}
.tk-filter button.on{background:var(--gold); color:#0F0F0F; border-color:var(--gold);}
.tk-item{border:1px solid var(--hair); border-left:3px solid var(--gold); padding:14px 18px; margin:0 0 12px; background:#151515;}
.tk-item.resolved{border-left-color:var(--dim,#8A8A8A); opacity:.62;}
.tk-item .tk-top{display:flex; align-items:baseline; gap:10px; margin-bottom:5px;}
.tk-item .tk-kind{font-family:var(--mono,monospace); font-size:9.5px; letter-spacing:.1em; text-transform:uppercase; color:#0F0F0F; background:var(--gold); padding:2px 6px;}
.tk-item .tk-kind.deal_term{background:var(--gold-soft,#FFD082);}
.tk-item .tk-kind.note{background:var(--dim,#8A8A8A);}
.tk-item .tk-t{font-family:var(--display,sans-serif); font-size:16px; letter-spacing:-.01em; color:var(--text);}
.tk-item .tk-b{font-family:var(--sans,sans-serif); font-size:14px; line-height:1.5; color:var(--muted); margin:4px 0 8px;}
.tk-item .tk-foot{display:flex; align-items:center; gap:12px; font-family:var(--mono,monospace); font-size:10px; letter-spacing:.06em; text-transform:uppercase; color:var(--dim);}
.tk-item .tk-foot .tk-resolve{margin-left:auto; background:transparent; border:1px solid var(--hair); color:var(--muted); padding:4px 9px; cursor:pointer; font:inherit;}
.tk-item .tk-foot .tk-resolve:hover{color:var(--gold); border-color:var(--gold);}
.tk-empty{font-family:var(--sans,sans-serif); color:var(--dim); font-size:14px; padding:30px 0; text-align:center;}

/* ---- meeting log: synthesised note inside an opened card ---- */
.mtg-note{padding-top:4px;}
.mtg-note .mtg-lead{font-family:var(--sans,sans-serif); font-size:15.5px; line-height:1.55; color:var(--text); margin:0 0 18px;}
.mtg-note .mtg-sec{margin:0 0 16px;}
.mtg-note .mtg-h{display:block; font-family:var(--mono,monospace); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--gold,#F9A720); margin:0 0 8px;}
.mtg-note ul{list-style:none; padding-left:0; margin:0;}
.mtg-note li{position:relative; padding-left:18px; font-family:var(--sans,sans-serif); font-size:14px; line-height:1.5; color:var(--muted); margin:0 0 7px;}
.mtg-note li::before{content:""; position:absolute; left:0; top:.55em; width:7px; height:7px; background:var(--gold,#F9A720); clip-path:polygon(0 0,100% 0,100% 100%);}
