.session-flow{display:flex;justify-content:space-between;gap:20px;align-items:center;border-block:1px solid var(--line,#252a31);padding:18px 0;margin:0 0 24px}.flow-steps{display:flex;gap:22px;align-items:center}.flow-steps span{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:#8e95a1}.flow-steps span.active{color:#f5f5f2;font-weight:750}.flow-steps span.active::before{content:'';display:inline-block;width:7px;height:7px;background:#d31920;border-radius:50%;margin-right:8px}.db-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:30px 0 20px}.db-top h2{font-size:clamp(25px,3vw,40px);letter-spacing:-.035em;margin:8px 0 10px}.db-top p{color:#9298a3}.db-driver-filter{min-width:220px}.db-driver-filter select,.db-trace-select select{width:100%;margin:8px 0;background:#15181e;color:#f5f5f2;border:1px solid #303641;border-radius:8px;padding:12px}.db-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.db-metric{padding:22px;background:#101216;border:1px solid #252a31;border-radius:12px;display:flex;flex-direction:column;gap:9px}.db-metric>span{color:#9ba2ad;text-transform:uppercase;letter-spacing:.09em;font-size:11px}.db-metric strong{font:600 clamp(24px,2.4vw,38px) ui-monospace,monospace;letter-spacing:-.035em}.db-metric small{font-size:12px;color:#9298a3;line-height:1.5}.db-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:20px;align-items:start;margin:24px 0}.db-card{padding:25px;border:1px solid #252a31;border-radius:12px;background:#0d0f12;min-width:0}.db-card h3{font-size:20px;margin:0 0 16px}.db-card label{display:block;color:#e5e8ed;margin:18px 0 8px;font-weight:550}.db-card textarea{width:100%;resize:vertical;min-height:95px;border:1px solid #303641;border-radius:9px;background:#161920;color:#f5f5f2;padding:13px;font:inherit;line-height:1.55;box-sizing:border-box}.db-card textarea:focus{outline:2px solid #a4d0ad;outline-offset:2px}.db-card textarea:disabled{opacity:1;background:#111317;color:#bcc3cd}.db-card .db-notes-small{min-height:75px}.db-save-row{display:flex;gap:16px;align-items:center;margin-top:20px}.db-save-row small{color:#a4d0ad}.db-notice{margin:16px 0;color:#a4d0ad;line-height:1.5}.db-notice.error{color:#e5bd75}.db-stint{padding:14px 0;border-bottom:1px solid #252a31;display:grid;grid-template-columns:1fr auto;gap:6px}.db-stint span{color:#a4d0ad;font-size:12px}.db-stint small{grid-column:1/-1;color:#9298a3;font-size:12px}.db-markers{display:grid;gap:10px}.db-marker{text-align:left;border:1px solid #2e343e;border-radius:9px;background:#161920;color:#f5f5f2;padding:14px;display:grid;gap:7px;cursor:pointer}.db-marker small{color:#e5bd75;font-size:10px;letter-spacing:.08em}.db-trace-select{display:grid;grid-template-columns:1fr 1fr;gap:15px}.db-trace{display:block;width:100%;height:260px;margin:16px 0}.db-help{font-size:13px;line-height:1.65;color:#9298a3;margin:12px 0}.db-table-scroll{overflow:auto;margin-top:18px}.db-table{width:100%;border-collapse:collapse;min-width:550px}.db-table th,.db-table td{padding:13px 8px;text-align:left;border-bottom:1px solid #252a31;font-size:13px}.db-table th{color:#9298a3;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.db-table input{accent-color:#d31920;width:18px;height:18px}.db-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;border:1px solid #303641;border-radius:12px;background:#101216;margin:24px 0}.db-footer p{font-size:13px;color:#9298a3;max-width:580px;line-height:1.6}.db-receipt{border:1px solid #53745a;border-radius:10px;padding:20px;background:#101a13;color:#c5e3cd;line-height:1.6}.db-receipt a{color:#c5e3cd;text-decoration:underline}.db-note-section{position:sticky;top:15px}.db-text-line{color:#aeb5be;font-size:13px;line-height:1.6}.session-debrief .stale-readouts #debrief-workspace{opacity:1}.db-dialog{max-width:560px}.db-dialog p{line-height:1.7}.db-dialog .dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:25px}
@media(min-width:1600px){.db-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:850px){.db-grid{grid-template-columns:1fr}.db-note-section{position:static}.db-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.db-top{flex-direction:column}.db-driver-filter{width:100%}.db-footer{flex-direction:column;align-items:stretch}.flow-steps{gap:10px}.flow-steps span{font-size:10px}.session-flow{align-items:flex-start;flex-wrap:wrap}.db-card{padding:18px}}@media(max-width:480px){.db-trace-select{grid-template-columns:1fr}.db-metric{padding:16px}.db-save-row{flex-wrap:wrap}.db-top h2{font-size:27px}}
/* Keep a wide lap table inside its scroll container on narrow coach screens. */
.db-grid>div{min-width:0}.db-card{max-width:100%;box-sizing:border-box}.db-driver-filter{min-width:0}.session-flow [hidden],#debrief-workspace[hidden],.db-receipt[hidden]{display:none!important}

.console-menu{display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;overflow-x:auto;padding:6px;margin:0 0 22px;background:#0d0f12;border:1px solid var(--line,#292c32);scrollbar-width:thin}
.console-menu-button{min-height:40px;border:1px solid transparent;background:transparent;color:#9ba3af;padding:9px 16px;font:650 11px/1 var(--font,Inter,sans-serif);letter-spacing:.045em;white-space:nowrap}
.console-menu-button:hover{background:#181c22;border-color:#343b46;color:#eef1f5}.console-menu-button.active{background:#242a33;border-color:#566171;color:#fff}.console-menu-button:focus-visible{outline:2px solid var(--redlight,#ff777d);outline-offset:2px}
.session-flow-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-left:auto}.button.danger{background:#241417;border-color:#75353b;color:#ffd9dc}.button.danger:hover{background:#3a191e;border-color:#ad4b54}.button.danger:disabled{background:#171416;border-color:#463135;color:#927b7e}
@media(max-width:850px){.console-menu{width:100%}.console-menu-button{flex:1}.session-flow-actions{width:100%;margin-left:0}.session-flow-actions .button{flex:1}}
@media(max-width:520px){.console-menu{justify-content:flex-start}.console-menu-button{flex:0 0 auto;padding-inline:13px}.session-flow-actions{display:grid;grid-template-columns:1fr}.session-flow-actions .button{width:100%}}

.db-top-controls{display:flex;align-items:flex-end;gap:10px}.db-top-controls .db-driver-filter{min-width:220px}.db-top-controls #db-print{margin-bottom:0;white-space:nowrap}
#db-print-report{display:none}
@media(max-width:850px){.db-top-controls{width:100%;align-items:stretch}.db-top-controls .db-driver-filter{flex:1}.db-top-controls #db-print{align-self:flex-end}}
@page{size:A4 portrait;margin:12mm}
@media print{
  html,body{background:#fff!important;color:#111!important}
  body.db-printing>*:not(#db-print-report){display:none!important}
  body.db-printing #db-print-report{display:block!important;color:#15181c;font:10pt/1.45 Arial,Helvetica,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .db-print-header{display:flex;justify-content:space-between;align-items:center;gap:12mm;border-bottom:2px solid #15181c;padding:0 0 6mm;margin-bottom:6mm}
  .db-print-brand{display:flex;align-items:center;gap:7mm}.db-print-brand img{width:48mm;height:auto;color:#111}.db-print-brand span,.db-print-status span{display:block;font-size:7.5pt;letter-spacing:.12em;color:#5b6470}.db-print-brand strong{display:block;font-size:18pt;margin-top:1.5mm}.db-print-status{text-align:right}.db-print-status b{display:block;font-size:8pt;letter-spacing:.08em;margin-bottom:1.5mm}
  .db-print-context{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5mm;margin-bottom:5mm}.db-print-context>div{border:1px solid #d8dce2;padding:3mm;break-inside:avoid}.db-print-context span,.db-print-metrics span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:7pt;color:#68717d}.db-print-context strong{display:block;margin-top:1mm;font-size:10pt}
  .db-print-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5mm;margin:0 0 6mm}.db-print-metrics>div{border:1px solid #cfd5dc;border-top:2px solid #252a31;padding:3mm;break-inside:avoid}.db-print-metrics strong{display:block;font:700 15pt/1.15 "Courier New",monospace;margin-top:1.5mm}.db-print-metrics small{display:block;font-size:7.5pt;color:#68717d;margin-top:1mm}
  .db-print-section{margin:0 0 6mm;break-inside:auto}.db-print-section h2{font-size:12pt;margin:0 0 3mm;padding-bottom:1.5mm;border-bottom:1px solid #cfd5dc}.db-print-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:5mm}.db-print-section-head p{font-size:8pt;color:#68717d;margin:0 0 3mm}
  .db-print-notes{display:grid;grid-template-columns:1fr 1fr;gap:3mm}.db-print-note{border:1px solid #d8dce2;padding:3.5mm;break-inside:avoid}.db-print-note:nth-child(4),.db-print-note:nth-child(5){grid-column:1/-1}.db-print-note h3{font-size:8pt;text-transform:uppercase;letter-spacing:.07em;color:#505965;margin:0 0 1.5mm}.db-print-note p{white-space:pre-wrap;margin:0;font-size:9.5pt}
  .db-print-table{width:100%;border-collapse:collapse;font-size:8.5pt}.db-print-table th,.db-print-table td{padding:2.2mm 1.8mm;border-bottom:1px solid #d8dce2;text-align:left;vertical-align:top}.db-print-table th{font-size:7pt;text-transform:uppercase;letter-spacing:.06em;color:#5b6470;background:#f1f3f5}.db-print-table tr{break-inside:avoid}.db-print-small{font-size:8pt;color:#59636f;line-height:1.5}
  .db-print-columns{display:grid;grid-template-columns:1fr 1fr;gap:5mm;align-items:start}.db-print-row{display:grid;gap:.8mm;padding:2.4mm 0;border-bottom:1px solid #e0e3e7;break-inside:avoid}.db-print-row b{font-size:8.5pt}.db-print-row span{font-size:8pt;color:#59636f}
  .db-print-footer{display:flex;justify-content:space-between;gap:8mm;border-top:1px solid #bfc5cc;padding-top:3mm;margin-top:8mm;font-size:7pt;color:#68717d}
  .mono{font-family:"Courier New",monospace}
}

/* Durable session receipt and optional coaching handoff. */
.db-library-banner{background:#13251f;border:1px solid #3c6553;border-radius:8px;padding:15px 18px;margin:14px 0 20px;color:#cee9de;}
.db-library-banner strong{display:block;font-size:13px;margin-bottom:6px;}
.db-library-banner p{font-size:12px;line-height:1.7;margin:0;color:#b2d5c6;}
.db-library-banner.warning{background:#292018;border-color:#866848;color:#f4d0a3;}
.db-library-banner.warning p{color:#dfbc8d;}
.db-library-banner button{margin-top:12px;min-height:44px;}

/* Handoff status lives next to its action, not in the global console footer. */
.db-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:13px;flex-wrap:wrap}
.db-footer-actions #hub-handoff-status{font-size:10px;font-weight:650;letter-spacing:.025em;color:#b9c6d4}
@media(max-width:640px){.db-footer-actions{justify-content:stretch;align-items:stretch;flex-direction:column}.db-footer-actions .button{width:100%}}
