:root{--geoff-navy: #1a2332;--geoff-dark: #0f1923;--geoff-blue: #2563eb;--geoff-blue-light: #3b82f6;--geoff-green: #22c55e;--geoff-yellow: #eab308;--geoff-red: #ef4444;--geoff-gray-50: #f8fafc;--geoff-gray-100: #f1f5f9;--geoff-gray-200: #e2e8f0;--geoff-gray-300: #cbd5e1;--geoff-gray-400: #94a3b8;--geoff-gray-500: #64748b;--geoff-gray-600: #475569;--geoff-gray-700: #334155;--geoff-gray-800: #1e293b;--geoff-gray-900: #0f172a;--geoff-surface: #1e293b;--geoff-surface-hover: #273548;--geoff-text: #f1f5f9;--geoff-text-muted: #94a3b8;--geoff-border: #334155;--geoff-radius: 12px;--geoff-radius-sm: 8px;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;color:var(--geoff-text);background-color:var(--geoff-dark)}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh}.loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:1.1rem;color:var(--geoff-text-muted)}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--geoff-dark) 0%,var(--geoff-navy) 100%)}.login-card{text-align:center;padding:3rem;background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);max-width:400px;width:90%}.login-card h1{font-size:2.5rem;font-weight:700;color:var(--geoff-blue-light);margin-bottom:.25rem}.login-card p{color:var(--geoff-text-muted);margin-bottom:2rem;font-size:.95rem}.google-login-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:var(--geoff-blue);color:#fff;border:none;border-radius:var(--geoff-radius-sm);font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.google-login-btn:hover{background:var(--geoff-blue-light)}.driver-home{max-width:600px;margin:0 auto;padding:1rem;min-height:100vh}.driver-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--geoff-border);margin-bottom:1.5rem}.driver-header h1{font-size:1.5rem;font-weight:700;color:var(--geoff-blue-light)}.driver-header h1 .geotab-brand{color:#00843d;font-weight:800;letter-spacing:.5px}.driver-info{display:flex;align-items:center;gap:1rem;font-size:.875rem;color:var(--geoff-text-muted)}.user-email{color:var(--geoff-text-muted);font-size:.8rem;opacity:.8}.logout-btn{padding:.375rem .75rem;background:transparent;color:var(--geoff-text-muted);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);font-size:.8rem;cursor:pointer}.logout-btn:hover{color:var(--geoff-text);border-color:var(--geoff-gray-400)}.driver-select{padding:.375rem .75rem;background:var(--geoff-surface);color:var(--geoff-text);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);font-size:.875rem;font-family:inherit;cursor:pointer;outline:none}.driver-select:focus{border-color:var(--geoff-blue)}.pending-sessions h2,.completed-sessions h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--geoff-text-muted);margin-bottom:.75rem}.session-card{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);padding:1rem 1.25rem;margin-bottom:.75rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.session-card.incoming{border-left:3px solid var(--geoff-blue)}.session-info strong{display:block;font-size:.95rem;text-transform:capitalize;margin-bottom:.25rem}.session-info span{font-size:.85rem;color:var(--geoff-text-muted)}.session-actions{display:flex;gap:.5rem;flex-shrink:0}.accept-btn{padding:.5rem 1.25rem;background:var(--geoff-blue);color:#fff;border:none;border-radius:var(--geoff-radius-sm);font-weight:500;cursor:pointer;font-size:.95rem}.accept-btn:hover{background:var(--geoff-blue-light)}.later-btn{padding:.5rem 1rem;background:transparent;color:var(--geoff-text-muted);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);cursor:pointer;font-size:.95rem}.session-time{font-size:.75rem;color:var(--geoff-gray-500);display:block;margin-top:.25rem}.session-outcome-badge{flex-shrink:0}.outcome-badge{font-size:.75rem;padding:.2rem .6rem;border-radius:4px;text-transform:capitalize;background:var(--geoff-gray-700);color:var(--geoff-text-muted)}.outcome-badge.acknowledged,.outcome-badge.positive,.outcome-badge.completed{background:#22c55e26;color:var(--geoff-green)}.outcome-badge.escalated{background:#eab30826;color:var(--geoff-yellow)}.outcome-badge.disputed{background:#ef444426;color:var(--geoff-red)}.empty-state{color:var(--geoff-text-muted);font-size:.9rem;padding:2rem;text-align:center}.completed-sessions{margin-top:2rem}.shift-summary-card{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);padding:1.5rem;margin-bottom:1.5rem;text-align:center}.shift-summary-header{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin-bottom:1rem}.shift-event-count{font-size:2.5rem;font-weight:700;color:var(--geoff-blue-light);line-height:1}.shift-event-label{font-size:1rem;color:var(--geoff-text-muted)}.shift-summary-header.clean-shift{padding:1rem 0}.shift-summary-header.clean-shift .shift-event-label{font-size:1.25rem;color:var(--geoff-green);font-weight:600}.shift-type-pills{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.25rem}.type-pill{font-size:.8rem;padding:.25rem .75rem;border-radius:999px;background:var(--geoff-gray-700);color:var(--geoff-text-muted);text-transform:capitalize}.type-pill.speeding{background:#ef444426;color:var(--geoff-red)}.type-pill.harsh_braking,.type-pill.harshBraking{background:#eab30826;color:var(--geoff-yellow)}.type-pill.idling{background:#2563eb26;color:var(--geoff-blue-light)}.type-pill.seatbelt{background:#ef444426;color:var(--geoff-red)}.type-pill.harsh_cornering,.type-pill.harshCornering{background:#eab30826;color:var(--geoff-yellow)}.begin-coaching-btn{padding:.75rem 2.5rem;background:var(--geoff-blue);color:#fff;border:none;border-radius:var(--geoff-radius-sm);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s}.begin-coaching-btn:hover{background:var(--geoff-blue-light);transform:translateY(-1px)}.coaching-loading-interstitial{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1.5rem}.coaching-loading-interstitial p{font-size:1.1rem;color:var(--geoff-text-muted);animation:pulse 2s ease-in-out infinite}.coaching-loading-spinner{width:48px;height:48px;border:3px solid var(--geoff-border);border-top-color:var(--geoff-blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.event-list-panel{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);padding:.75rem 1rem;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.event-list-panel h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--geoff-text-muted);margin-bottom:.75rem}.event-list-scroll{flex:1 1 0;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;min-height:0}.event-list-scroll::-webkit-scrollbar{width:4px}.event-list-scroll::-webkit-scrollbar-track{background:transparent}.event-list-scroll::-webkit-scrollbar-thumb{background:var(--geoff-gray-600);border-radius:2px}.event-list-item{padding:.6rem .75rem;border-left:3px solid var(--geoff-gray-600);border-radius:0 var(--geoff-radius-sm) var(--geoff-radius-sm) 0;background:var(--geoff-gray-800);cursor:pointer;transition:all .15s}.event-list-item:hover{background:var(--geoff-surface-hover)}.event-list-item.selected{background:var(--geoff-surface-hover);outline:1px solid var(--geoff-blue);outline-offset:-1px}.event-list-item-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.event-list-rule{font-size:.85rem;font-weight:600;text-transform:capitalize}.event-list-time{font-size:.7rem;color:var(--geoff-gray-500)}.event-list-oneliner{font-size:.8rem;color:var(--geoff-text-muted);line-height:1.4}.coaching-session-layout{height:100vh;display:flex;flex-direction:column;padding:0 2rem;max-width:1400px;margin:0 auto;overflow:hidden}.session-top-bar{display:flex;align-items:center;gap:.75rem;padding:.75rem 0 .5rem;flex:0 0 auto;border-bottom:1px solid var(--geoff-border)}.back-btn{padding:.375rem .75rem;background:transparent;color:var(--geoff-text-muted);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);font-size:.8rem;cursor:pointer}.back-btn:hover{color:var(--geoff-text);border-color:var(--geoff-gray-400)}.session-event-type{font-size:.9rem;font-weight:600;text-transform:capitalize}.session-device{font-size:.8rem;color:var(--geoff-text-muted)}.session-status{margin-left:auto;font-size:.75rem;padding:.2rem .6rem;border-radius:4px;text-transform:capitalize;background:var(--geoff-gray-700);color:var(--geoff-text-muted)}.session-status.ready,.session-status.in_progress{background:#2563eb26;color:var(--geoff-blue-light)}.session-status.completed{background:#22c55e26;color:var(--geoff-green)}.session-status.escalated{background:#eab30826;color:var(--geoff-yellow)}.session-status.disputed{background:#ef444426;color:var(--geoff-red)}.session-columns{display:grid;grid-template-columns:1fr 380px;gap:1.5rem;flex:1;min-height:0;overflow:hidden}.session-conversation{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.session-closed{text-align:center;padding:2rem;color:var(--geoff-text-muted)}.back-link{margin-top:1rem;padding:.5rem 1.25rem;background:var(--geoff-blue);color:#fff;border:none;border-radius:var(--geoff-radius-sm);font-size:.9rem;cursor:pointer}.back-link:hover{background:var(--geoff-blue-light)}.avatar-container{flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:var(--geoff-radius);background:linear-gradient(180deg,#1a2332,#0f1923);overflow:hidden;max-height:560px;position:sticky;top:0;z-index:2}.geoff-avatar-video-container{width:100%;position:relative;display:flex;align-items:center;justify-content:center}.geoff-avatar-img{width:100%;max-height:560px;object-fit:contain;border-radius:var(--geoff-radius);transition:opacity .2s}.geoff-avatar-img.hidden{opacity:0}.geoff-avatar-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;border-radius:var(--geoff-radius);opacity:0;transition:opacity .2s}.geoff-avatar-video.visible{opacity:1}.session-sidebar{display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;min-height:0}.event-map{border-radius:var(--geoff-radius);overflow:hidden;border:1px solid var(--geoff-border);flex:0 1 auto}.map-iframe{width:100%;height:clamp(160px,30vh,300px);border:0;display:block}.event-map.no-location{min-height:80px;display:flex;align-items:center;justify-content:center;background:var(--geoff-surface);color:var(--geoff-text-muted);font-size:.85rem}.event-details{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);padding:1rem 1.25rem}.event-details h3,.event-recommendation h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--geoff-text-muted);margin-bottom:.75rem}.detail-row{display:flex;justify-content:space-between;align-items:baseline;padding:.35rem 0;border-bottom:1px solid var(--geoff-gray-800)}.detail-row:last-child{border-bottom:none}.detail-label{font-size:.8rem;color:var(--geoff-text-muted)}.detail-value{font-size:.85rem;font-weight:500;text-align:right;text-transform:capitalize}.detail-small{font-size:.75rem;font-weight:400;color:var(--geoff-gray-400)}.event-recommendation{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-left:3px solid var(--geoff-yellow);border-radius:var(--geoff-radius);padding:1rem 1.25rem}.event-recommendation p{font-size:.85rem;line-height:1.6;color:var(--geoff-text)}.geoff-thinking-indicator{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:.35rem;padding:.4rem .8rem;background:#0009;border-radius:1rem}.thinking-dot{width:8px;height:8px;border-radius:50%;background:var(--geoff-blue-light);animation:thinking-bounce 1.4s infinite ease-in-out both}.thinking-dot:nth-child(1){animation-delay:-.32s}.thinking-dot:nth-child(2){animation-delay:-.16s}@keyframes thinking-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.geoff-avatar-img.speaking{animation:speaking-glow 1.5s ease-in-out infinite}@keyframes speaking-glow{0%,to{filter:brightness(1) drop-shadow(0 0 0 transparent)}50%{filter:brightness(1.08) drop-shadow(0 0 20px rgba(37,99,235,.4))}}.geoff-speaking-indicator{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:3px;align-items:flex-end;padding:.4rem .8rem;background:#0009;border-radius:1rem;height:36px}.waveform-bar{width:4px;background:var(--geoff-blue-light);border-radius:2px;animation:waveform 1.2s ease-in-out infinite}.waveform-bar:nth-child(1){animation-delay:0s;height:8px}.waveform-bar:nth-child(2){animation-delay:.15s;height:14px}.waveform-bar:nth-child(3){animation-delay:.3s;height:18px}.waveform-bar:nth-child(4){animation-delay:.15s;height:14px}.waveform-bar:nth-child(5){animation-delay:0s;height:8px}@keyframes waveform{0%,to{transform:scaleY(.5)}50%{transform:scaleY(1.5)}}.transcript{flex:1 1 0;overflow-y:auto;padding:1rem 0;min-height:0}.transcript-entry{margin-bottom:1rem;padding:.75rem 1rem;border-radius:var(--geoff-radius-sm)}.transcript-entry.geoff{background:var(--geoff-surface);border-left:3px solid var(--geoff-blue)}.transcript-entry.driver{background:var(--geoff-gray-800);border-left:3px solid var(--geoff-green)}.transcript-entry strong{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--geoff-text-muted);display:block;margin-bottom:.25rem}.transcript-entry p{font-size:.95rem;line-height:1.6}.session-controls{flex:0 0 auto;padding:.75rem 0;border-top:1px solid var(--geoff-border);display:flex;flex-direction:column;gap:.75rem;background:var(--geoff-dark)}.geoff-processing-indicator{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;color:var(--geoff-muted);font-size:.85rem;animation:fadeInUp .3s ease}.processing-icon{width:10px;height:10px;border-radius:50%;background:var(--geoff-blue);animation:pulse-dot 1.2s ease-in-out infinite}.processing-phrase{animation:fadePhrase 2.5s ease;font-style:italic}@keyframes pulse-dot{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes fadePhrase{0%{opacity:0;transform:translateY(4px)}15%{opacity:1;transform:translateY(0)}85%{opacity:1}to{opacity:.6}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.input-row{display:flex;gap:.5rem;align-items:center}.text-input{flex:1;padding:.75rem 1rem;border-radius:var(--geoff-radius-sm);border:1px solid var(--geoff-border);background:var(--geoff-surface);color:var(--geoff-text);font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}.text-input:focus{border-color:var(--geoff-blue)}.text-input:disabled{opacity:.5}.send-btn{padding:.75rem 1.25rem;border-radius:var(--geoff-radius-sm);border:none;background:var(--geoff-blue);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.send-btn:hover{background:var(--geoff-blue-light)}.send-btn:disabled{opacity:.4;cursor:default}.mic-btn{width:44px;height:44px;border-radius:50%;border:2px solid var(--geoff-border);background:var(--geoff-surface);color:var(--geoff-text);font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0}.mic-btn.listening{border-color:var(--geoff-red);background:#ef444426;color:var(--geoff-red)}.mic-btn:disabled{opacity:.4;cursor:default}.outcome-buttons{display:flex;gap:.5rem}.outcome-btn{flex:1;padding:.75rem;border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);background:var(--geoff-surface);color:var(--geoff-text);font-size:.9rem;cursor:pointer;transition:all .2s}.outcome-btn.acknowledge:hover{border-color:var(--geoff-green);color:var(--geoff-green)}.outcome-btn.dispute:hover{border-color:var(--geoff-yellow);color:var(--geoff-yellow)}.outcome-btn.cancel{border-color:var(--geoff-blue);color:var(--geoff-blue-light)}.outcome-btn.cancel:hover{background:#2563eb1a}.end-session-toggle{padding:.5rem;background:transparent;color:var(--geoff-gray-500);border:none;font-size:.8rem;cursor:pointer;text-align:center;transition:color .2s}.end-session-toggle:hover{color:var(--geoff-text-muted)}#geoff-addin-root{--geoff-surface: #FFFFFF;--geoff-surface-hover: #E6EBEF;--geoff-dark: #F9FAFB;--geoff-navy: #F2F5F7;--geoff-text: #1F2833;--geoff-text-muted: #4E677E;--geoff-border: #C0CCD8;--geoff-blue: #0078D3;--geoff-blue-light: #005AA8;--geoff-red: #C51A11;--geoff-yellow: #59480D;--geoff-green: #2B6436;--geoff-gray-300: #748FAA;--geoff-gray-400: #8DA4B9;--geoff-gray-500: #4E677E;--geoff-gray-600: #C0CCD8;--geoff-gray-700: #E6EBEF;--geoff-gray-800: #F2F5F7;--geoff-gray-900: #F9FAFB;--geoff-radius: 8px;--geoff-radius-sm: 4px;font-family:Roboto,Segoe UI,Helvetica,sans-serif;line-height:1.5;color:#1f2833;background:#f2f5f7;min-height:100vh;-webkit-font-smoothing:antialiased}#geoff-addin-root *,#geoff-addin-root *:before,#geoff-addin-root *:after{box-sizing:border-box;margin:0;padding:0}.dashboard{min-height:100vh}.dashboard-header{display:flex;align-items:center;gap:2rem;padding:.75rem 2rem;background:var(--geoff-surface);border-bottom:1px solid var(--geoff-border);position:sticky;top:0;z-index:10}.brand h1{font-size:1.25rem;font-weight:700;color:var(--geoff-blue-light);line-height:1}.brand .subtitle{font-size:.7rem;color:var(--geoff-text-muted);text-transform:uppercase;letter-spacing:.1em}.dashboard-nav{display:flex;gap:.25rem;flex:1}.dashboard-nav button{padding:.5rem 1rem;background:transparent;border:none;color:var(--geoff-text-muted);font-size:.9rem;cursor:pointer;border-radius:var(--geoff-radius-sm);transition:all .2s;position:relative}.dashboard-nav button:hover{color:var(--geoff-text);background:var(--geoff-surface-hover)}.dashboard-nav button.active{color:var(--geoff-text);background:var(--geoff-gray-700)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--geoff-red);color:#fff;font-size:.7rem;font-weight:600;margin-left:.35rem;vertical-align:middle}.user-info{display:flex;align-items:center;gap:1rem;font-size:.85rem;color:var(--geoff-text-muted);margin-left:auto}.dashboard-content{padding:2rem;max-width:1200px;margin:0 auto}.live-feed h2,.action-queue h2,.analytics h2{font-size:1.25rem;margin-bottom:1.5rem}.feed-list{display:flex;flex-direction:column;gap:.5rem}.feed-item{display:flex;gap:1rem;padding:1rem 1.25rem;background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);transition:background .15s}.feed-item:hover{background:var(--geoff-surface-hover)}.feed-item.expanded{border-color:var(--geoff-blue)}.feed-summary{font-size:.8rem;color:var(--geoff-text-muted);margin-top:.25rem}.status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:.35rem}.feed-details{flex:1}.feed-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.35rem}.feed-header strong{font-size:.95rem}.event-type{font-size:.8rem;color:var(--geoff-text-muted);background:var(--geoff-gray-700);padding:.1rem .5rem;border-radius:4px;text-transform:capitalize}.timestamp{font-size:.75rem;color:var(--geoff-gray-500);margin-left:auto}.recommendation{font-size:.85rem;color:var(--geoff-yellow);margin-bottom:.25rem}.outcome{font-size:.8rem;color:var(--geoff-text-muted);text-transform:capitalize}.aq-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .6rem;border-radius:4px}.aq-badge--critical{background:#ef444426;color:#f87171}.aq-badge--warning{background:#eab30826;color:#facc15}.aq-badge--info{background:#2563eb26;color:#60a5fa}.aq-expanded{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--geoff-border)}.aq-quote{padding:.75rem 1rem;background:var(--geoff-gray-900);border-left:3px solid var(--geoff-gray-500);border-radius:0 var(--geoff-radius-sm) var(--geoff-radius-sm) 0;margin-bottom:.75rem}.aq-quote p{font-style:italic;font-size:.85rem;color:var(--geoff-gray-300);line-height:1.5;margin:0}.aq-rationale{padding:.75rem 1rem;background:var(--geoff-gray-900);border:1px solid var(--geoff-gray-700);border-radius:var(--geoff-radius-sm);margin-bottom:.75rem}.aq-rationale p{font-size:.85rem;color:var(--geoff-text-muted);line-height:1.5;margin:0}.aq-label{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--geoff-gray-500);margin-bottom:.35rem}.aq-actions{display:flex;gap:.5rem;margin-bottom:.75rem}.aq-btn{padding:.5rem 1.25rem;border-radius:var(--geoff-radius-sm);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.aq-btn--primary{background:var(--geoff-blue);color:#fff;border:none}.aq-btn--primary:hover{filter:brightness(1.15)}.aq-btn--secondary{background:transparent;color:var(--geoff-text-muted);border:1px solid var(--geoff-border)}.aq-btn--secondary:hover{border-color:var(--geoff-gray-400);color:var(--geoff-text)}.aq-detail{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--geoff-border)}.action-detail-columns{display:grid;grid-template-columns:1fr 340px;gap:1rem;margin-bottom:1rem}.action-transcript-panel h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--geoff-text-muted);margin-bottom:.75rem}.action-transcript-scroll{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.action-sidebar-panel{display:flex;flex-direction:column;gap:.75rem}.action-sidebar-panel .map-iframe{height:clamp(140px,25vh,240px)}@media(max-width:960px){.action-detail-columns{grid-template-columns:1fr}}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);padding:1.25rem;text-align:center}.stat-value{display:block;font-size:2rem;font-weight:700;color:var(--geoff-blue-light)}.stat-label{font-size:.8rem;color:var(--geoff-text-muted);text-transform:uppercase;letter-spacing:.05em}.analytics-section{margin-bottom:2rem}.analytics-section h3{font-size:.95rem;margin-bottom:1rem;color:var(--geoff-text-muted)}.bar-chart{display:flex;flex-direction:column;gap:.5rem}.bar-row{display:flex;align-items:center;gap:.75rem}.bar-label{width:140px;font-size:.85rem;color:var(--geoff-text-muted);text-transform:capitalize;flex-shrink:0}.bar-track{flex:1;height:24px;background:var(--geoff-gray-800);border-radius:4px;overflow:hidden}.bar-fill{height:100%;background:var(--geoff-blue);border-radius:4px;min-width:4px;transition:width .3s ease}.bar-fill.secondary{background:var(--geoff-green)}.bar-fill.accent{background:var(--geoff-yellow)}.bar-count{width:32px;font-size:.85rem;color:var(--geoff-text-muted);text-align:right;flex-shrink:0}.section-heading{font-size:1.1rem;margin:2rem 0 1rem;padding-top:1.5rem;border-top:1px solid var(--geoff-border)}.daily-trend{display:flex;gap:2px;align-items:flex-end;height:120px;padding:.5rem 0}.trend-bar{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;position:relative;justify-content:flex-end}.trend-fill{width:100%;max-width:24px;background:var(--geoff-blue);border-radius:3px 3px 0 0;min-height:2px;transition:height .3s ease}.trend-label{font-size:.65rem;color:var(--geoff-gray-500);margin-top:4px}.driver-rankings{display:flex;flex-direction:column;gap:.375rem}.ranking-row{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);font-size:.85rem}.ranking-position{font-weight:700;color:var(--geoff-blue-light);min-width:28px}.ranking-name{flex:1}.ranking-events{color:var(--geoff-text-muted);font-size:.8rem}.ranking-score{color:var(--geoff-green);font-size:.8rem;font-weight:600}#geoff-addin-root .dashboard-header{background:#fff;border-bottom:1px solid #C0CCD8}#geoff-addin-root .brand h1{color:#25477b}#geoff-addin-root .brand .subtitle{color:#4e677e}#geoff-addin-root .dashboard-nav button{color:#4e677e;border-radius:4px}#geoff-addin-root .dashboard-nav button:hover{background:#e6ebef;color:#1f2833}#geoff-addin-root .dashboard-nav button.active{background:#ebf6ff;color:#0078d3;font-weight:500}#geoff-addin-root .badge{background:#c51a11}#geoff-addin-root .user-info{color:#4e677e}#geoff-addin-root .feed-item{background:#fff;border:1px solid #C0CCD8;border-radius:8px}#geoff-addin-root .feed-item:hover{background:#f9fafb;border-color:#748faa}#geoff-addin-root .feed-item.expanded{border-color:#0078d3;box-shadow:0 0 8px 2px #0000001a}#geoff-addin-root .feed-header strong{color:#1f2833}#geoff-addin-root .event-type{background:#f2f5f7;color:#4e677e}#geoff-addin-root .timestamp{color:#8da4b9}#geoff-addin-root .feed-summary,#geoff-addin-root .outcome{color:#4e677e}#geoff-addin-root .aq-badge--critical{background:#ffeceb;color:#a01f0e}#geoff-addin-root .aq-badge--warning{background:#fef7ed;color:#59480d}#geoff-addin-root .aq-badge--info{background:#ebf6ff;color:#25477b}#geoff-addin-root .aq-quote{background:#f9fafb;border-left-color:#748faa}#geoff-addin-root .aq-quote p{color:#4e677e}#geoff-addin-root .aq-rationale{background:#f9fafb;border-color:#e6ebef}#geoff-addin-root .aq-rationale p{color:#4e677e}#geoff-addin-root .aq-btn--primary{background:#0078d3;border-radius:4px}#geoff-addin-root .aq-btn--primary:hover{background:#005aa8;filter:none}#geoff-addin-root .aq-btn--secondary{background:#fff;color:#1f2833;border:1px solid #C0CCD8;border-radius:4px}#geoff-addin-root .aq-btn--secondary:hover{background:#e6ebef;border-color:#748faa}#geoff-addin-root .transcript-entry.geoff{background:#fff;border-left-color:#0078d3}#geoff-addin-root .transcript-entry.driver{background:#f9fafb;border-left-color:#2b6436}#geoff-addin-root .transcript-entry strong{color:#4e677e}#geoff-addin-root .transcript-entry p{color:#1f2833}#geoff-addin-root .event-list-panel{background:#fff;border-color:#c0ccd8}#geoff-addin-root .event-list-panel h3{color:#4e677e}#geoff-addin-root .event-list-item{background:#fff}#geoff-addin-root .event-list-item:hover{background:#e6ebef}#geoff-addin-root .event-list-item.selected{background:#ebf6ff;outline-color:#0078d3}#geoff-addin-root .event-list-rule{color:#1f2833}#geoff-addin-root .event-list-time{color:#8da4b9}#geoff-addin-root .event-list-oneliner{color:#4e677e}#geoff-addin-root .event-details{background:#fff;border-color:#c0ccd8}#geoff-addin-root .event-details h3,#geoff-addin-root .detail-label{color:#4e677e}#geoff-addin-root .detail-value{color:#1f2833}#geoff-addin-root .detail-row{border-bottom-color:#f2f5f7}#geoff-addin-root .event-map.no-location{background:#f9fafb;color:#4e677e}#geoff-addin-root .stat-card{background:#fff;border:1px solid #C0CCD8;border-radius:8px;box-shadow:0 0 8px 2px #0000001a}#geoff-addin-root .stat-value{color:#0078d3}#geoff-addin-root .stat-label{color:#4e677e}#geoff-addin-root .bar-track{background:#f2f5f7}#geoff-addin-root .bar-fill{background:#0078d3}#geoff-addin-root .bar-fill.secondary{background:#2b6436}#geoff-addin-root .bar-fill.accent{background:#cc8400}#geoff-addin-root .bar-label,#geoff-addin-root .bar-count{color:#4e677e}#geoff-addin-root .ranking-row{background:#fff;border-color:#c0ccd8}#geoff-addin-root .ranking-position{color:#0078d3}#geoff-addin-root .ranking-name{color:#1f2833}#geoff-addin-root .ranking-events{color:#4e677e}#geoff-addin-root .ranking-score{color:#2b6436}#geoff-addin-root .trend-fill{background:#0078d3}#geoff-addin-root .trend-label{color:#8da4b9}#geoff-addin-root .section-heading{color:#1f2833;border-top-color:#c0ccd8}#geoff-addin-root .analytics-section h3{color:#4e677e}#geoff-addin-root .live-feed h2,#geoff-addin-root .action-queue h2,#geoff-addin-root .analytics h2{color:#1f2833}#geoff-addin-root .empty-state{color:#4e677e}#geoff-addin-root .event-list-scroll::-webkit-scrollbar-thumb{background:#c0ccd8}#geoff-addin-root .action-transcript-scroll::-webkit-scrollbar{width:4px}#geoff-addin-root .action-transcript-scroll::-webkit-scrollbar-thumb{background:#c0ccd8;border-radius:2px}.legal-page{max-width:860px;margin:0 auto;padding:2rem 1.5rem 4rem;min-height:100vh}.legal-header{padding-bottom:1.5rem;border-bottom:1px solid var(--geoff-border);margin-bottom:2rem}.legal-header h1{font-size:1.75rem;font-weight:700;color:var(--geoff-blue-light);margin-bottom:.25rem}.legal-header-subtitle{font-size:.9rem;color:var(--geoff-text-muted)}.legal-primary{margin-bottom:3rem}.legal-primary-badge{display:inline-block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .75rem;border-radius:4px;background:#2563eb26;color:var(--geoff-blue-light);margin-bottom:.75rem}.legal-primary h2{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.legal-primary-subtitle{font-size:1rem;color:var(--geoff-text-muted);margin-bottom:1rem}.legal-primary-desc{font-size:.95rem;line-height:1.7;color:var(--geoff-text);margin-bottom:1.5rem}.legal-claim-callout{margin-top:1.5rem;padding:1rem 1.25rem;background:#2563eb14;border-left:4px solid var(--geoff-blue);border-radius:0 var(--geoff-radius-sm) var(--geoff-radius-sm) 0;font-size:.9rem;line-height:1.6;color:var(--geoff-text)}.legal-claim-callout strong{color:var(--geoff-blue-light)}.legal-section-subtitle{font-size:.9rem;color:var(--geoff-text-muted);margin-bottom:1.25rem;line-height:1.5}.legal-domains{margin-bottom:3rem}.legal-domains h2{font-size:1.25rem;margin-bottom:.25rem}.legal-domain-table-wrap{overflow-x:auto;border:1px solid var(--geoff-border);border-radius:var(--geoff-radius)}.legal-domain-table{width:100%;border-collapse:collapse;font-size:.82rem}.legal-domain-table th{text-align:left;padding:.6rem .75rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--geoff-text-muted);background:var(--geoff-gray-800);border-bottom:1px solid var(--geoff-border);white-space:nowrap}.legal-domain-table td{padding:.55rem .75rem;border-bottom:1px solid var(--geoff-border);color:var(--geoff-text);vertical-align:top}.legal-domain-table tbody tr:last-child td{border-bottom:none}.legal-domain-implemented{background:#2563eb0d}.legal-domain-status{display:inline-block;font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:3px;white-space:nowrap}.legal-domain-status.implemented{background:#22c55e26;color:var(--geoff-green)}.legal-domain-status.applicable{background:var(--geoff-gray-700);color:var(--geoff-text-muted)}.legal-economics-section{margin-bottom:3rem}.legal-economics-section h2{font-size:1.25rem;margin-bottom:.25rem}.legal-economics{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}.legal-econ-card{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);padding:1.25rem;text-align:center}.legal-econ-card h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--geoff-text-muted);margin-bottom:.75rem}.legal-econ-stat{font-size:2rem;font-weight:700;line-height:1;margin-bottom:.25rem}.legal-econ-card.traditional .legal-econ-stat{color:var(--geoff-red)}.legal-econ-card.geoff .legal-econ-stat{color:var(--geoff-green)}.legal-econ-label{font-size:.8rem;color:var(--geoff-text-muted);margin-bottom:.5rem}.legal-econ-detail{font-size:.85rem;font-weight:600;margin-bottom:.25rem}.legal-econ-example{font-size:.8rem;color:var(--geoff-text-muted)}.legal-econ-argument{padding:1rem 1.25rem;background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);font-size:.9rem;line-height:1.6}.legal-econ-argument p{margin:0}.legal-econ-argument strong{color:var(--geoff-blue-light)}.legal-embodiment{margin-bottom:3rem}.legal-embodiment h2{font-size:1.25rem;margin-bottom:.25rem}.legal-embodiment-pipeline{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.5rem}.legal-embodiment-step{display:flex;gap:1rem;align-items:flex-start;padding:.85rem 1rem;background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm)}.legal-embodiment-toggle{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);cursor:pointer;transition:border-color .15s}.legal-embodiment-toggle:hover{border-color:var(--geoff-gray-400)}.legal-embodiment-toggle h3{font-size:.95rem;font-weight:600}.legal-embodiment-toggle span{font-size:.7rem;color:var(--geoff-text-muted)}.legal-embodiment-cards{margin-top:.75rem}.legal-embodiment-innovations{margin-top:.5rem}.legal-pipeline-title{font-size:1rem;color:var(--geoff-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.legal-pipeline{display:flex;flex-direction:column;gap:.75rem}.legal-pipeline-step{display:flex;gap:1rem;align-items:flex-start;padding:1rem;background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm)}.legal-step-number{width:28px;height:28px;border-radius:50%;background:var(--geoff-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0}.legal-step-content strong{display:block;font-size:.9rem;margin-bottom:.25rem}.legal-step-content p{font-size:.85rem;color:var(--geoff-text-muted);line-height:1.5;margin-bottom:.35rem}.legal-step-content code{font-size:.75rem;color:var(--geoff-gray-400);background:var(--geoff-gray-800);padding:.15rem .4rem;border-radius:3px}.legal-card{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius-sm);margin-bottom:.5rem;cursor:pointer;transition:border-color .15s}.legal-card:hover{border-color:var(--geoff-gray-400)}.legal-card.open{border-color:var(--geoff-blue)}.legal-card-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem}.legal-card-number{width:24px;height:24px;border-radius:50%;background:var(--geoff-gray-700);color:var(--geoff-text-muted);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.legal-card.open .legal-card-number{background:var(--geoff-blue);color:#fff}.legal-card-titles{flex:1}.legal-card-titles h3{font-size:.9rem;font-weight:600;margin-bottom:.1rem}.legal-card-subtitle{font-size:.8rem;color:var(--geoff-text-muted)}.legal-card-chevron{font-size:.7rem;color:var(--geoff-text-muted);flex-shrink:0}.legal-card-body{padding:0 1rem 1rem 3.5rem}.legal-card-body p{font-size:.85rem;line-height:1.6;color:var(--geoff-text);margin-bottom:.75rem}.legal-card-files{margin-bottom:.5rem}.legal-card-files strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--geoff-text-muted);margin-right:.5rem}.legal-card-files code{display:block;font-size:.75rem;color:var(--geoff-gray-400);background:var(--geoff-gray-800);padding:.2rem .5rem;border-radius:3px;margin-top:.25rem}.legal-card-novelty{font-size:.85rem;line-height:1.5;padding:.5rem .75rem;background:#2563eb14;border-left:3px solid var(--geoff-blue);border-radius:0 var(--geoff-radius-sm) var(--geoff-radius-sm) 0}.legal-card-novelty strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--geoff-blue-light);margin-right:.5rem}.legal-chat{border-top:1px solid var(--geoff-border);padding-top:2rem}.legal-chat h2{font-size:1.25rem;margin-bottom:.25rem}.legal-chat-subtitle{font-size:.9rem;color:var(--geoff-text-muted);margin-bottom:1rem}.legal-chat-messages{background:var(--geoff-surface);border:1px solid var(--geoff-border);border-radius:var(--geoff-radius);padding:1rem;min-height:200px;max-height:500px;overflow-y:auto;margin-bottom:.75rem}.legal-chat-empty{color:var(--geoff-text-muted);font-size:.9rem;text-align:center;padding:2rem 1rem}.legal-chat-msg{margin-bottom:1rem;padding:.5rem .75rem;border-radius:var(--geoff-radius-sm)}.legal-chat-msg.user{background:var(--geoff-gray-800);border-left:3px solid var(--geoff-green)}.legal-chat-msg.assistant{background:var(--geoff-gray-800);border-left:3px solid var(--geoff-blue)}.legal-chat-msg strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--geoff-text-muted);display:block;margin-bottom:.25rem}.legal-chat-msg-content{font-size:.9rem;line-height:1.6;white-space:pre-wrap}.legal-chat-thinking{color:var(--geoff-text-muted);animation:pulse 2s ease-in-out infinite}.legal-chat-input{display:flex;gap:.5rem}.legal-chat-input input{flex:1;padding:.75rem 1rem;border-radius:var(--geoff-radius-sm);border:1px solid var(--geoff-border);background:var(--geoff-surface);color:var(--geoff-text);font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}.legal-chat-input input:focus{border-color:var(--geoff-blue)}.legal-chat-input input:disabled{opacity:.5}.legal-chat-input button{padding:.75rem 1.25rem;border-radius:var(--geoff-radius-sm);border:none;background:var(--geoff-blue);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.legal-chat-input button:hover{background:var(--geoff-blue-light)}.legal-chat-input button:disabled{opacity:.4;cursor:default}.legal-chat-warning{font-size:.8rem;color:var(--geoff-yellow);margin-top:.5rem}@media(max-width:960px){.session-columns{grid-template-columns:1fr;overflow-y:auto}.coaching-session-layout{padding:0 1rem;height:100vh}.session-sidebar{order:-1;overflow:visible}.session-conversation{height:auto;min-height:60vh}.map-iframe{height:200px}}@media(max-width:768px){.dashboard-header{flex-wrap:wrap;padding:.5rem 1rem}.dashboard-nav{order:3;width:100%}.dashboard-content{padding:1rem}.stats-cards{grid-template-columns:1fr 1fr}.legal-page{padding:1rem}.legal-economics{grid-template-columns:1fr}.legal-econ-stat{font-size:1.5rem}.legal-domain-table{font-size:.75rem}.legal-domain-table th,.legal-domain-table td{padding:.4rem .5rem}}
