:root{--surface-color:#f7f8fc;--surface-panel-color:#eef0f6}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f8fc;background:var(--surface-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media (max-width:768px){body{overflow:auto}}.App{--scrollbar-track-color:#e5e7ebcc;--scrollbar-thumb-color:#6b7280d9;background:var(--surface-color);display:flex;flex-direction:column;height:100vh;overflow:hidden;transition:background-color .3s ease}.App.dark{--scrollbar-track-color:#1c2630;--scrollbar-thumb-color:#4b5563;background:#1f2937}.App,.App *{scrollbar-color:var(--scrollbar-thumb-color) #0000;scrollbar-width:thin}.App ::-webkit-scrollbar{height:10px;width:10px}.App ::-webkit-scrollbar-track{background:var(--scrollbar-track-color);border-radius:999px}.App ::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:var(--scrollbar-thumb-color);border:2px solid #0000;border-radius:999px}.App-title{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem 2rem;transition:all .3s ease}.App.dark .App-title{border-bottom-color:#374151}.App-title-text{display:flex;flex-direction:column;gap:.15rem}.App-title h1{color:#1f2937;font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin:0;transition:color .3s ease}.App.dark .App-title h1{color:#f9fafb}.App-subtitle{color:#4b5563;font-size:.95rem;line-height:1.2;margin:0}.App.dark .App-subtitle{color:#d1d5db}.title-actions{align-items:center;display:flex;gap:.75rem}.uoft-logo{height:60px;object-fit:contain;width:345px}.App.dark .uoft-logo{filter:brightness(0) invert(1)}.collapse-icon{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:16px;transition:transform .2s ease;width:16px}.menu-container{position:relative}.hamburger-menu{background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;height:18px;justify-content:space-between;padding:0;transition:all .2s ease;width:24px}.hamburger-menu span{background-color:#374151;border-radius:2px;height:2px;transition:all .2s ease;width:100%}.dark .hamburger-menu span{background-color:#9ca3af}.hamburger-menu:hover span{background-color:#111827}.dark .hamburger-menu:hover span{background-color:#f9fafb}.dropdown-menu{background:var(--surface-color);border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:180px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);transition:all .3s ease;z-index:1000}.dark .dropdown-menu{background:#111827;border-color:#374151;box-shadow:0 4px 12px #00000080}.menu-section{padding:.5rem 0}.menu-label{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.5rem 1rem;text-transform:uppercase;transition:color .3s ease}.dark .menu-label{color:#9ca3af}.menu-item{background:#0000;border:none;color:#374151;cursor:pointer;font-family:inherit;font-size:.875rem;padding:.75rem 1rem;text-align:left;transition:all .2s ease;width:100%}.dark .menu-item{color:#d1d5db}.menu-item:hover{background-color:#f3f4f6}.dark .menu-item:hover{background-color:#374151}.menu-item.active{background-color:#e5e7eb;color:#111827;font-weight:600}.dark .menu-item.active{background-color:#4b5563;color:#f9fafb}.App-layout{border-radius:0;display:grid;flex:1 1;grid-template-columns:280px 1fr 340px;min-height:0;overflow:hidden;position:relative;transition:grid-template-columns .3s ease}.App-layout.sidebar-collapsed{grid-template-columns:40px 1fr 340px}.App-layout.insights-collapsed{grid-template-columns:280px 1fr 40px}.App-layout.sidebar-collapsed.insights-collapsed{grid-template-columns:40px 1fr 40px}@media (max-width:1024px){.App-layout{grid-template-columns:240px 1fr 300px}.App-layout.sidebar-collapsed{grid-template-columns:40px 1fr 300px}.App-layout.insights-collapsed{grid-template-columns:240px 1fr 40px}.App-layout.sidebar-collapsed.insights-collapsed{grid-template-columns:40px 1fr 40px}}@media (max-width:768px){.App{height:auto;min-height:100vh;overflow:auto;padding-bottom:1.5rem}.App-title{align-items:flex-start;flex-direction:column;gap:.5rem;padding:1rem}.App-title h1{font-size:1.5rem}.App-subtitle{font-size:.8rem}.title-actions{justify-content:flex-end;width:100%}.uoft-logo{height:40px;width:230px}.App-layout,.App-layout.insights-collapsed,.App-layout.sidebar-collapsed,.App-layout.sidebar-collapsed.insights-collapsed{display:flex;flex-direction:column;gap:.75rem;grid-template-columns:none;grid-template-rows:none;height:auto;overflow:visible;padding:0 .75rem 1.5rem}.App-layout>*{height:auto;min-height:auto;width:100%}.App-layout .client-sidebar{order:1}.App-layout .chat-interface{min-height:60vh;order:2}.App-layout .report-panel{order:3}.client-info-overlay{padding:0;position:fixed}.client-info-panel{border-radius:0;height:100%;max-height:100vh;max-width:100vw;padding:1rem;width:100%}.client-info-panel h2{font-size:1.25rem}.client-info-panel p{font-size:.9rem;line-height:1.6}.client-info-close-wrapper{background:inherit;padding-bottom:.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.client-profiles-browser{flex-direction:column}.client-profile-tabs{flex-direction:row;flex-wrap:wrap;gap:.5rem;max-height:none;overflow:visible;padding:.5rem 0}.client-profile-tab{flex:0 0 auto;font-size:.8rem;padding:.5rem .75rem}.client-profile-detail{padding:1rem}.client-profile-grid{gap:1rem}.profile-grid-row{gap:1rem;grid-template-columns:1fr!important}.profile-section h4{font-size:.95rem}.client-metadata-list,.profile-flat-list,.profile-list{font-size:.85rem}.client-transcript-scroll{max-height:300px}.transcript-line p{font-size:.85rem}.app-confirm-overlay,.app-notification-overlay{padding:1rem}.app-confirm-panel,.app-notification-panel{max-width:100%;width:100%}.section-expanded-overlay{padding:0}.section-expanded-panel{border-radius:0;height:100%;max-height:100vh;max-width:100vw;width:100%}.section-expanded-header{background:inherit;padding:.6rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:5}.section-expanded-header h3{font-size:1.05rem}.section-expanded-content{padding:1rem}.section-expanded-content .profile-flat-list.expanded,.section-expanded-content .profile-list.expanded{font-size:.9rem}.section-expanded-content .client-transcript-scroll.expanded{max-height:calc(100vh - 150px)}.section-popout-btn{font-size:.9rem;padding:.3rem .5rem}}.client-info-overlay{align-items:stretch;background:#0f172aa6;display:flex;inset:0;justify-content:center;padding:0;position:absolute;z-index:50}.client-info-panel{background:var(--surface-color);border-radius:0;box-shadow:0 20px 45px #0003;color:#1f2937;height:100%;line-height:1.6;max-width:none;overflow-y:auto;padding:2.5rem 3rem;position:relative;scrollbar-color:#94a3b880 #0000;scrollbar-width:thin;width:100%}.client-info-close-wrapper{height:0;position:-webkit-sticky;position:sticky;top:0;z-index:5}.client-info-panel::-webkit-scrollbar{width:9px}.client-info-panel::-webkit-scrollbar-track{background:#0000}.client-info-panel::-webkit-scrollbar-thumb{background-color:#94a3b8bf;border-radius:10px}.overlay-figure{margin:0 auto 1.5rem;max-width:900px;text-align:left;width:100%}.overlay-figure img{border-radius:12px;display:block;height:auto;margin:0 auto;max-width:900px;width:100%}.overlay-figure table{margin-top:0;width:100%}.overlay-figure-caption,.overlay-table-caption{color:#475569bf;font-size:.75rem;font-style:italic;margin-top:.5rem;text-align:center}.App.dark .overlay-figure-caption,.App.dark .overlay-table-caption{color:#e2e8f0d9}.App.dark .overlay-figure img{filter:grayscale(1) invert(1) brightness(1.1) contrast(.95);mix-blend-mode:screen}.overlay-article{line-height:1.7;margin-left:auto;margin-right:auto;max-width:900px}.client-info-panel .client-overlay-content{line-height:1.6;margin-left:auto;margin-right:auto;max-width:900px}.client-persona-callout{margin:1.5rem 0 0}.client-profiles-explorer{border-top:1px solid #94a3b866;margin-top:2rem;padding-top:1.5rem}.client-profiles-header h3{font-size:1rem;letter-spacing:.08em;margin-bottom:.5rem;text-transform:uppercase}.client-profiles-header p{margin-bottom:1.25rem}.client-profiles-status{background:#3b82f614;border-radius:10px;color:#0f172a;font-weight:500;padding:.85rem 1rem}.client-profiles-status.error{background:#f8717126;color:#991b1b}.client-profiles-browser{display:flex;flex-direction:column;gap:1.25rem}.client-profile-tabs{display:flex;gap:.75rem;margin-top:1.1rem;overflow-x:auto;padding-bottom:.35rem;position:relative;scrollbar-color:#94a3b88c #0000;scrollbar-width:thin;z-index:10}.client-profile-tabs::-webkit-scrollbar{height:6px}.client-profile-tabs::-webkit-scrollbar-thumb{background:#94a3b899;border-radius:999px}.App.light .client-profile-tabs{scrollbar-color:#2563eb73 #0000}.App.light .client-profile-tabs::-webkit-scrollbar-thumb{background:#2563eb66}.App.dark .client-profile-tabs{scrollbar-color:#94a3b859 #0000}.App.dark .client-profile-tabs::-webkit-scrollbar-thumb{background:#94a3b873}.client-profile-tab{align-items:center;background:#ffffffe6;border:1px solid #94a3b873;border-radius:999px;cursor:pointer;display:flex;flex:0 0 auto;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.client-profile-tab:hover{background:#fff;border-color:#2563eb;color:#1d4ed8}.client-profile-tab.active{background:#1d4ed8;border-color:#1d4ed8;color:#f9fafb}.App.light .client-profile-tab{background:#fff;border-color:#d1d5db;color:#1f2937;font-weight:600}.App.light .client-profile-tab:hover{background:#f8fbff;border-color:#2563eb;color:#1d4ed8}.App.light .client-profile-tab.active{background:linear-gradient(135deg,#2563eb,#3b82f6);border-color:#1d4ed8;color:#f9fafb}.client-profile-detail{background:#f9fafbb3;border:1px solid #94a3b880;border-radius:16px;display:flex;flex-direction:column;gap:2rem;overflow:hidden;padding:1.5rem;position:relative}.client-profile-content{transition:opacity .2s ease}.client-profile-number{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.client-profile-meta-note{color:#64748b;font-size:.82rem;font-style:italic;margin:0 0 .75rem}.client-profile-detail.obscured .client-profile-content{opacity:.1;pointer-events:none}.client-profile-mask{align-items:flex-start;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding-top:3rem;position:absolute;z-index:5}.client-profile-mask-content{align-items:center;display:flex;flex-direction:column;gap:.75rem;text-align:center}.client-profile-mask-title{color:#f8fafc;font-size:1.5rem;font-weight:700;margin:0;text-shadow:0 2px 4px #0000004d}.client-profile-mask-subtitle{color:#f8fafcd9;font-size:.95rem;margin:0}.client-profile-reveal-btn{background:#f8fafc;border:none;border-radius:999px;box-shadow:0 12px 25px #00000040;color:#111827;cursor:pointer;font-size:.95rem;font-weight:600;padding:.85rem 1.75rem;transition:transform .2s ease,box-shadow .2s ease}.client-profile-reveal-btn:hover{box-shadow:0 14px 28px #0f172a59;transform:translateY(-2px)}.client-profile-grid{display:flex;flex-direction:column;gap:1rem}.profile-grid-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.profile-grid-row.full-width{grid-template-columns:1fr}.profile-grid-row.full-width .profile-section{width:100%}@media (max-width:900px){.profile-grid-row{grid-template-columns:1fr}}.profile-section{background:var(--surface-color);border:1px solid #94a3b866;border-radius:14px;box-shadow:0 6px 14px #0f172a0f;padding:1rem 1.25rem}.profile-section h4{color:#0f172abf;font-size:.85rem;letter-spacing:.08em;margin:0 0 .65rem;text-transform:uppercase}.profile-list{color:#0f172a;display:flex;flex-direction:column;font-size:.95rem;gap:.4rem;list-style:disc;margin:0;padding-left:1.1rem}.profile-list.numbered,ol.profile-list{list-style:decimal}.profile-list.compact{font-size:.9rem;gap:.3rem}.profile-flat-list.compact{gap:.35rem}.profile-flat-list.compact .profile-flat-item{font-size:.9rem}.section-subtitle{color:#475569d9;font-size:.8rem;margin:0 0 .5rem}.profile-flat-list{display:flex;flex-direction:column;gap:.5rem}.profile-flat-item{align-items:flex-start;color:#0f172a;display:flex;font-size:.95rem;gap:.45rem}.profile-tag{background:#10b98126;border-radius:999px;color:#047857;flex-shrink:0;font-size:.75rem;font-weight:600;letter-spacing:.08em;padding:.15rem .55rem;text-transform:uppercase}.profile-tag.muted{background:#f871712e;color:#b91c1c}.profile-empty{color:#475569cc;font-size:.9rem;margin:0}.client-metadata-card{background:var(--surface-color);border:1px solid #94a3b880;border-radius:16px;box-shadow:0 10px 20px #0f172a12;padding:1.25rem}.client-metadata-heading h4{font-size:.85rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.client-metadata-heading p{color:#475569d9;font-size:.85rem;margin:.25rem 0 0}.client-metadata-grid{grid-gap:.85rem 1rem;display:grid;gap:.85rem 1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:1rem}.metadata-row dt{color:#475569d9;font-size:.75rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.metadata-row dd{color:#0f172a;font-size:.95rem;font-weight:600;margin:0}.client-metadata-list{display:flex;flex-direction:column;gap:.5rem;margin:0}.client-metadata-list .metadata-row{align-items:baseline;display:flex;gap:.5rem;justify-content:space-between}.client-metadata-list .metadata-row dt{font-size:.75rem}.client-metadata-list .metadata-row dd{font-size:.9rem;text-align:right}.metadata-section,.transcript-section{display:flex;flex-direction:column}.transcript-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.transcript-header h4{margin:0}.transcript-length{background:#94a3b826;border-radius:999px;color:#475569d9;font-size:.7rem;font-weight:500;margin-left:.5rem;padding:.15rem .5rem}.meta-row,.persona-meta{border-radius:.25rem;cursor:pointer;margin:-.15rem -.25rem;padding:.15rem .25rem;transition:background-color .15s ease,outline .15s ease}.hl{outline:2px solid #0000001f}.hl-num_daily{background:#e0f2fe}.hl-first_cig{background:#dcfce7}.hl-pre_convo_quit_attempt_made{background:#ede9fe}.hl-confi_pre{background:#ffedd5}.hl-impor_pre{background:#ffe4e6}.hl-readi_pre{background:#ccfbf1}.client-profile-table-wrapper{margin-bottom:1.5rem;overflow-x:auto;width:100%}.client-transcript-panel{background:var(--surface-color);border:1px solid #94a3b880;border-radius:16px;box-shadow:0 10px 25px #0f172a14;padding:1.25rem}.client-transcript-heading{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.client-transcript-heading h4{font-size:.85rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.client-transcript-heading p{color:#0f172acc;font-size:.85rem;margin:.15rem 0 0}.client-transcript-heading .transcript-subtitle{color:#475569e6;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.App.dark .client-transcript-heading .transcript-subtitle{color:#e2e8f0bf}.client-transcript-scroll{max-height:420px;overflow-y:auto;padding-right:.5rem;scrollbar-width:thin}.client-transcript-scroll::-webkit-scrollbar{width:8px}.client-transcript-scroll::-webkit-scrollbar-thumb{background:#94a3b8b3;border-radius:10px}.transcript-line{border-bottom:1px solid #94a3b84d;padding:.65rem 0}.transcript-line:last-child{border-bottom:none}.transcript-line .speaker-label{color:#475569;display:inline-block;font-size:.8rem;letter-spacing:.1em;margin-bottom:.25rem;text-transform:uppercase}.transcript-line p{font-size:.95rem;margin:0}.transcript-line.transcript-client{background:#10b98114;border-radius:8px;padding-left:.75rem}.transcript-line.transcript-counsellor{background:#3b82f614;border-radius:8px;padding-left:.75rem}.App.dark .client-profiles-status{background:#3b82f626;color:#bfdbfe}.App.dark .client-profiles-status.error{background:#f8717140;color:#fecaca}.App.dark .client-profile-tab{background:#1f2937cc;border-color:#94a3b880;color:#f3f4f6}.App.dark .client-profile-tab.active{background:#2563eb;border-color:#2563eb}.App.dark .client-profile-detail{background:#111827e6;border-color:#4b5563b3}.App.dark .client-profile-number{color:#f1f5f9}.App.dark .client-profile-meta-note{color:#94a3b8}.App.dark .client-profile-mask{background:#0f172acc}.App.dark .client-profile-reveal-btn{background:#f3f4f6;color:#111827}.App.dark .profile-section{background:#1f2937f2;border-color:#4b556399;box-shadow:none}.App.dark .profile-section h4{color:#e2e8f0cc}.App.dark .profile-flat-item,.App.dark .profile-list{color:#e5e7eb}.App.dark .profile-empty{color:#e2e8f0b3}.App.dark .profile-tag{background:#10b98140;color:#6ee7b7}.App.dark .profile-tag.muted{background:#f8717140;color:#fecaca}.App.dark .client-metadata-card{background:#1f2937f2;border-color:#4b556399;box-shadow:none}.App.dark .client-metadata-heading p{color:#e2e8f0bf}.App.dark .metadata-row dt{color:#cbd5e1cc}.App.dark .metadata-row dd{color:#f3f4f6}.App.dark .section-subtitle{color:#e2e8f0bf}.App.dark .transcript-length{background:#4b556366;color:#e2e8f0cc}.App.dark .hl{outline:2px solid #fff3}.App.dark .hl-num_daily{background:#0ea5e940}.App.dark .hl-first_cig{background:#22c55e40}.App.dark .hl-pre_convo_quit_attempt_made{background:#8b5cf640}.App.dark .hl-confi_pre{background:#fb923c40}.App.dark .hl-impor_pre{background:#f43f5e40}.App.dark .hl-readi_pre{background:#14b8a640}.App.dark .client-profile-card{background:#1f2937f2;border-color:#4b556399;box-shadow:none}.App.dark .client-transcript-panel{background:#1f2937f2;border-color:#4b5563b3;box-shadow:none}.App.dark .transcript-line .speaker-label{color:#cbd5f5}.App.dark .transcript-line.transcript-client{background:#10b9811f}.App.dark .transcript-line.transcript-counsellor{background:#3b82f61f}.section-header-with-popout{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.section-header-with-popout h4{margin:0}.section-popout-btn{background:#94a3b826;border:none;border-radius:4px;color:#475569b3;cursor:pointer;font-size:.85rem;line-height:1;padding:.2rem .4rem;transition:background-color .15s ease,color .15s ease}.section-popout-btn:hover{background:#94a3b84d;color:#475569}.App.dark .section-popout-btn{background:#4b556366;color:#e2e8f099}.App.dark .section-popout-btn:hover{background:#4b556399;color:#e2e8f0e6}.section-expanded-panel:has(.expanded-diagram-img){max-height:72vh;max-width:72vw}.section-expanded-panel:has(.expanded-diagram-img) .section-expanded-content{align-items:center;display:flex;justify-content:center;overflow:hidden}.expanded-diagram-img{border-radius:8px;display:block;height:auto;max-height:calc(72vh - 4rem);max-width:100%;object-fit:contain;width:auto}.App.dark .expanded-diagram-img{filter:grayscale(1) invert(1) brightness(1.1) contrast(.95);mix-blend-mode:screen}.overlay-figure--with-popout{position:relative}.overlay-figure-popout-btn{position:absolute;right:.5rem;top:.5rem;z-index:1}.section-expanded-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:1100}.section-expanded-panel{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:70vh;max-width:640px;overflow:hidden;width:100%}.App.dark .section-expanded-panel{background:#1f2937;border:1px solid #4b556399}.section-expanded-header{align-items:center;border-bottom:1px solid #94a3b84d;display:flex;justify-content:space-between;padding:.6rem 1.25rem}.section-expanded-header h3{color:#1e293b;font-size:1.2rem;font-weight:600;margin:0}.App.dark .section-expanded-header{border-bottom-color:#4b556380}.App.dark .section-expanded-header h3{color:#f3f4f6}.section-expanded-close-btn{background:#0000;border:none;border-radius:4px;color:#475569b3;cursor:pointer;font-size:1.5rem;line-height:1;padding:.25rem .5rem;transition:background-color .15s ease,color .15s ease}.section-expanded-close-btn:hover{background:#94a3b833;color:#475569}.App.dark .section-expanded-close-btn{color:#e2e8f099}.App.dark .section-expanded-close-btn:hover{background:#4b556366;color:#e2e8f0e6}.section-expanded-content{flex:1 1;overflow-y:auto;padding:1.5rem}.section-expanded-content .profile-list.expanded{font-size:1rem;line-height:1.7}.section-expanded-content .profile-list.expanded li{margin-bottom:.75rem}.section-expanded-content .client-metadata-list.expanded{font-size:1rem}.section-expanded-content .client-metadata-list.expanded .metadata-row{padding:.5rem 0}.section-expanded-content .profile-flat-list.expanded{font-size:1rem}.section-expanded-content .profile-flat-list.expanded .profile-flat-item{line-height:1.6;margin-bottom:.75rem}.section-expanded-content .client-transcript-scroll.expanded{max-height:60vh;overflow-y:auto;scrollbar-width:thin}.section-expanded-content .client-transcript-scroll.expanded::-webkit-scrollbar{width:8px}.section-expanded-content .client-transcript-scroll.expanded::-webkit-scrollbar-thumb{background:#94a3b8b3;border-radius:10px}.section-expanded-content .client-transcript-scroll.expanded .transcript-line{border-bottom:1px solid #94a3b84d;padding:.85rem 1rem}.section-expanded-content .client-transcript-scroll.expanded .transcript-line:last-child{border-bottom:none}.section-expanded-content .client-transcript-scroll.expanded .transcript-line.transcript-client{background:#10b98114;border-radius:8px;padding-left:1rem}.section-expanded-content .client-transcript-scroll.expanded .transcript-line.transcript-counsellor{background:#3b82f614;border-radius:8px;padding-left:1rem}.section-expanded-content .client-transcript-scroll.expanded .speaker-label{color:#475569;display:inline-block;font-size:.8rem;letter-spacing:.1em;margin-bottom:.25rem;text-transform:uppercase}.section-expanded-content .client-transcript-scroll.expanded .transcript-line p{color:#1e293b;font-size:1rem;line-height:1.6;margin:0}.App.dark .section-expanded-content .client-transcript-scroll.expanded .transcript-line.transcript-client{background:#10b9811f}.App.dark .section-expanded-content .client-transcript-scroll.expanded .transcript-line.transcript-counsellor{background:#3b82f61f}.App.dark .section-expanded-content .client-transcript-scroll.expanded .speaker-label{color:#cbd5f5}.App.dark .section-expanded-content .client-transcript-scroll.expanded .transcript-line p{color:#f3f4f6}.section-expanded-content .section-subtitle{margin-bottom:1rem}.overlay-article>*{margin-bottom:1.5rem}.overlay-article section{border-top:1px solid #94a3b866;margin-top:.5rem;padding-top:1.25rem}.overlay-article section:first-of-type{border-top:none;margin-top:0;padding-top:0}.overlay-article .article-intro{border-bottom:1px solid #94a3b859;margin-bottom:1.25rem;padding-bottom:1rem}.overlay-article h3{font-size:1.05rem;letter-spacing:.08em;margin:0 0 .75rem;text-transform:uppercase}.about-citation{color:#475569e6;font-size:.85rem}.about-citation a{color:#1d4ed8;text-decoration:none}.about-citation a:hover{text-decoration:underline}.App.dark .about-citation{color:#e2e8f0cc}.App.dark .about-citation a{color:#93c5fd}.io-table,.profile-table{border-collapse:collapse;column-span:all;font-size:.92rem;margin-top:1rem;width:100%}.io-table td,.io-table th,.profile-table td,.profile-table th{border:1px solid #94a3b880;padding:.75rem;vertical-align:top}.io-table th,.profile-table th{background:#f9fafbcc;font-weight:600}.App.dark .io-table th,.App.dark .profile-table th{background:#374151cc}.App.dark .client-info-panel{background:#1f2937;color:#f9fafb;scrollbar-color:#4b5563b3 #0000}.App.dark .client-info-panel::-webkit-scrollbar-thumb{background-color:#4b5563e6}.client-info-panel h2{font-size:1.5rem;margin-bottom:1rem;margin-top:0}.about-title,.client-title,.contact-title{margin-left:auto;margin-right:auto;max-width:900px;text-align:left}.contact-form{gap:.25rem;margin-top:1rem}.contact-form,.contact-form-field{display:flex;flex-direction:column}.contact-form-field{gap:.35rem;position:relative}.contact-form-field-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.contact-form-field-header label{margin:0}.contact-form-field label{color:#334155;font-size:.9rem;font-weight:500}.dark .contact-form-field label{color:#cbd5e1}.contact-form-field input,.contact-form-field textarea{background:#fffc;border:1px solid #94a3b866;border-radius:8px;color:#1e293b;font-size:.95rem;padding:.65rem .85rem;transition:border-color .2s,box-shadow .2s}.dark .contact-form-field input,.dark .contact-form-field textarea{background:#1e293b99;border-color:#64748b66;color:#e2e8f0}.contact-form-field input:focus,.contact-form-field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none}.contact-form-field textarea{min-height:120px;resize:vertical}.contact-char-count{color:#64748b;font-size:.75rem;margin:0;text-align:right;white-space:nowrap}.dark .contact-char-count{color:#94a3b8}.contact-submit-btn{align-self:flex-start;background:#e5e7eb;border:none;border-radius:8px;color:#1f2937;cursor:pointer;font-size:.95rem;font-weight:600;margin-top:.5rem;padding:.65rem 1.5rem;transition:background .2s,transform .2s}.contact-submit-btn:hover:not(:disabled){background:#d1d5db;transform:translateY(-1px)}.contact-submit-btn:disabled{cursor:not-allowed;opacity:.6}.App.dark .contact-submit-btn{background:#374151;color:#f8fafc}.App.dark .contact-submit-btn:hover:not(:disabled){background:#4b5563}.contact-error-message{background:#dc26261a;border-radius:6px;color:#dc2626;font-size:.9rem;margin:0;padding:.5rem .75rem}.dark .contact-error-message{background:#dc262633;color:#fca5a5}.contact-success-message{background:#22c55e1a;border-radius:8px;padding:1rem;text-align:center}.dark .contact-success-message{background:#22c55e26}.contact-success-message p{color:#16a34a;font-weight:500;margin-bottom:.75rem}.dark .contact-success-message p{color:#4ade80}.contact-reset-btn{background:#0000;border:1px solid #3b82f6;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:background .2s,color .2s}.contact-reset-btn:hover{background:#3b82f6;color:#fff}.client-info-panel p{font-size:.95rem;margin-bottom:1rem}.client-info-panel p:last-child{margin-bottom:0}.client-info-close-btn{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffc;border:1px solid #94a3b84d;border-radius:10px;color:#475569;cursor:pointer;display:flex;font-size:1.1rem;font-weight:300;height:36px;justify-content:center;position:absolute;right:1.25rem;top:.75rem;transition:background .2s ease,border-color .2s ease,color .2s ease;width:36px;z-index:5}.client-info-close-btn:hover{background:#f1f5f9f2;border-color:#94a3b880;color:#1e293b}.App.dark .client-info-close-btn{background:#1f2937b3;border-color:#4b556380;color:#e2e8f0b3}.App.dark .client-info-close-btn:hover{background:#374151e6;border-color:#6b728099;color:#f3f4f6}.app-confirm-overlay,.app-notification-overlay{align-items:center;background:#0f172a59;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:60}.app-confirm-panel,.app-notification-panel{background:var(--surface-color);border:1px solid #94a3b866;border-radius:16px;box-shadow:0 15px 35px #0f172a40;color:#0f172a;max-width:520px;padding:1.75rem 2rem;width:100%}.app-notification-panel{text-align:center}.app-dialog-head{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;text-align:left}.app-dialog-label{color:#0f172a8c;font-size:.7rem;letter-spacing:.18em;margin:0;text-transform:uppercase}.app-dialog-title{color:#0f172a;font-size:1.15rem;margin:0}.app-notification-content{font-size:1rem;line-height:1.6;margin-bottom:1.5rem;text-align:left}.app-notification-content p{margin:.75rem 0}.app-notification-close-btn{background:#e5e7eb;border:1px solid #d1d5db;border-radius:10px;color:#1f2937;cursor:pointer;font-size:.95rem;font-weight:600;padding:.65rem 1.75rem;transition:background .2s ease,transform .2s ease}.app-notification-close-btn:hover{background:#d1d5db;transform:translateY(-1px)}.app-confirm-content{font-size:1rem;line-height:1.6;margin-bottom:1.75rem;text-align:left}.app-confirm-content p{margin:.6rem 0}.app-confirm-actions,.app-dialog-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.app-dialog-actions.single{justify-content:flex-end}.app-confirm-btn{border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;min-width:120px;padding:.6rem 1.5rem;transition:background .2s ease,transform .2s ease,color .2s ease}.app-confirm-btn.secondary{background:#f8fafc;border:1px solid #94a3b899;color:#1f2937}.app-confirm-btn.secondary:hover{background:#e2e8f0;transform:translateY(-1px)}.app-confirm-btn.primary{background:#e5e7eb;border:none;color:#1f2937}.app-confirm-btn.primary:hover{background:#d1d5db;transform:translateY(-1px)}.App.dark .app-confirm-panel,.App.dark .app-notification-panel{background:#1c2630;border-color:#263447;box-shadow:0 15px 35px #00000080;color:#e5e7eb}.App.dark .app-notification-close-btn{background:#374151;border-color:#4b5563;color:#f8fafc}.App.dark .app-dialog-label{color:#e2e8f0a6}.App.dark .app-dialog-title{color:#f1f5f9}.App.dark .app-confirm-btn.secondary{background:#1e293be6;border:1px solid #94a3b866;color:#e5e7eb}.App.dark .app-confirm-btn.secondary:hover{background:#334155}.App.dark .app-confirm-btn.primary{background:#374151;color:#f8fafc}.client-sidebar{background:var(--surface-panel-color);border-right:1px solid #e5e7eb;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:all .3s ease}.client-sidebar.collapsed{max-width:40px;min-width:40px}.dark .client-sidebar{background:#1c2630;border-right-color:#374151}.dark .client-sidebar.collapsed{background:#1f2937}.sidebar-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:space-between;padding:1.5rem 1.25rem 1rem;transition:border-color .3s ease}.dark .sidebar-header{border-bottom-color:#374151}.sidebar-title{align-items:center;display:flex;gap:.35rem}.sidebar-header h3{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:1px;margin:0;text-transform:uppercase;transition:color .3s ease}.dark .sidebar-header h3{color:#9ca3af}.sidebar-info-btn{align-items:center;background:#0000;border:1.5px solid #9ca3af;border-radius:50%;color:#9ca3af;cursor:pointer;display:inline-flex;font-size:.75rem;font-style:italic;font-weight:600;height:20px;justify-content:center;padding:0;transition:all .2s ease;width:20px}.sidebar-info-btn:hover{transform:scale(1.1)}.dark .sidebar-info-btn,.sidebar-info-btn:hover{border-color:#6b7280;color:#6b7280}.dark .sidebar-info-btn:hover{border-color:#9ca3af;color:#9ca3af}.sidebar-settings{align-items:center;display:flex;position:relative}.sidebar-settings-btn{align-items:center;background:#0000;border:none;color:#9ca3af;cursor:pointer;display:inline-flex;justify-content:center;padding:0;transition:all .2s ease}.sidebar-settings-btn:hover{color:#4b5563}.dark .sidebar-settings-btn{color:#9ca3af}.dark .sidebar-settings-btn:hover{color:#f9fafb}.sidebar-settings-btn svg{display:block}.sidebar-settings-dropdown{min-width:190px;right:0;top:calc(100% + .5rem);z-index:20}.sidebar-settings-dropdown .menu-note{color:#6b7280;font-size:.75rem;line-height:1.3;margin:.35rem 0 0}.dark .sidebar-settings-dropdown .menu-note{color:#d1d5db}.client-selector{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem;padding:1.5rem 1.25rem}.selector-label{color:#1f2937;font-size:1.125rem;font-weight:700;text-align:center}.dark .selector-label{color:#f9fafb}.selector-description{color:#6b7280;font-size:.875rem;font-weight:400;line-height:1.5;margin:0;text-align:center}.dark .selector-description{color:#9ca3af}.client-wheel-picker{display:flex;flex-direction:column;gap:.5rem;width:100%}.wheel-inline-row{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-start;padding-left:.25rem;width:100%}.wheel-inline-label{color:#111827;font-size:1rem;font-weight:600;min-width:140px}.dark .wheel-inline-label{color:#f9fafb}.wheel-horizontal-control{align-items:center;display:flex;flex:0 0 auto;justify-content:flex-end}.wheel-window{align-items:center;background:var(--surface-color);border:1px solid #e5e7eb;border-radius:8px;color:#1f2937;display:flex;font-size:1.05rem;font-weight:600;height:40px;justify-content:center;padding:0 1.85rem 0 .25rem;position:relative;transition:border-color .2s ease,box-shadow .2s ease;width:80px}.wheel-window:focus-visible{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40;outline:none}.dark .wheel-window{background:#374151;border-color:#4b5563;color:#f9fafb}.wheel-window-number{flex:1 1;line-height:1;text-align:center}.wheel-scroll-track{background:var(--surface-color);border-left:1px solid #e5e7eb;border-radius:0 7px 7px 0;bottom:1px;display:flex;flex-direction:column;overflow:hidden;position:absolute;right:1px;top:1px;width:32px}.wheel-scroll-btn{align-items:center;background:#0000;border:none;color:#4b5563;cursor:pointer;display:flex;flex:1 1;font-size:.8rem;font-weight:700;justify-content:center;min-height:50%;position:relative;transition:background .15s ease,color .15s ease}.wheel-scroll-icon{height:11px;width:11px}.wheel-scroll-btn:first-child:after{background:#d1d5dbcc;bottom:0;content:"";height:1px;left:6px;position:absolute;right:6px}.wheel-scroll-btn:hover{background:#3b82f61a;color:#1f2937}.wheel-scroll-btn:focus-visible{background:#3b82f62e;color:#1f2937;outline:none}.dark .wheel-scroll-track{background:#374151;border-left-color:#4b5563}.dark .wheel-scroll-btn{color:#d1d5db}.dark .wheel-scroll-btn:first-child:after{background:#4b5563d9}.dark .wheel-scroll-btn:focus-visible,.dark .wheel-scroll-btn:hover{background:#60a5fa2e;color:#f9fafb}.client-mode-label{color:#6b7280;font-size:.8rem;font-weight:600;margin:0 0 -.25rem;text-align:center}.dark .client-mode-label{color:#d1d5db}.random-client-row{align-items:center;display:flex;gap:.35rem;justify-content:flex-start;margin:.5rem 0;padding-left:.25rem;width:100%}.random-client-btn{align-items:center;background:var(--surface-color);border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;flex:0 0 auto;height:40px;justify-content:center;position:relative;transition:border-color .2s ease,background-color .2s ease,transform .2s ease;width:80px}.random-client-btn:hover{background-color:#f9fafb;border-color:#d1d5db}.random-client-btn:active{transform:scale(.98)}.random-client-btn:disabled{cursor:not-allowed;opacity:.6}.dark .random-client-btn{background-color:#374151;border-color:#4b5563;color:#f9fafb}.dark .random-client-btn:hover{background-color:#4b5563;border-color:#6b7280}.dark .random-client-btn:disabled{background-color:#111827}.dice-icon{height:24px;width:24px}.random-client-spinner{animation:random-spin .7s linear infinite;border:2px solid #3b82f666;border-radius:50%;border-top-color:#3b82f6f2;height:18px;width:18px}@keyframes random-spin{to{transform:rotate(1turn)}}.difficulty-badge{border-radius:4px;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.difficulty-badge.easy{background-color:#d4edda;color:#155724}.difficulty-badge.medium{background-color:#fff3cd;color:#856404}.difficulty-badge.hard{background-color:#f8d7da;color:#721c24}.sidebar-error,.sidebar-loading{color:#6e6e80;padding:2rem 1rem;text-align:center}.sidebar-error button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:.5rem;padding:.5rem 1rem}.sidebar-error button:hover{background-color:#2980b9}.collapse-btn{align-items:center;background:#e5e7eb;border:none;border-radius:8px;bottom:16px;color:#374151;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;position:absolute;right:8px;transition:all .2s ease;width:32px;z-index:10}.dark .collapse-btn{background:#374151;color:#d1d5db}.collapse-btn:hover{background:#d1d5db;transform:scale(1.05)}.dark .collapse-btn:hover{background:#4b5563}.client-sidebar.collapsed .collapse-btn{right:50%;transform:translateX(50%)}.client-sidebar.collapsed .collapse-btn:hover{transform:translateX(50%) scale(1.05)}.client-sidebar .collapse-btn .collapse-icon{transform:rotate(0deg)}.client-sidebar.collapsed .collapse-btn .collapse-icon{transform:rotate(180deg)}@media (max-width:768px){.client-sidebar{background:#ffffff80;border-radius:12px;box-shadow:0 2px 8px #0000000d;height:auto;max-height:none;overflow:visible;padding:0}.dark .client-sidebar{background:#1f293780}.client-sidebar.collapsed{max-width:none;min-width:auto}.sidebar-header{padding:.75rem 1rem}.sidebar-header h2{font-size:1rem}.client-list{display:flex;flex-wrap:wrap;gap:.5rem;max-height:200px;overflow-y:auto;padding:.5rem}.client-card{flex:0 0 auto;min-width:80px;padding:.5rem .75rem}.client-card .client-name{font-size:.8rem}.client-card .client-description,.collapse-btn{display:none}.display-mode-toggle{padding:.5rem 1rem}.display-mode-toggle label{font-size:.75rem}.display-mode-toggle select{font-size:.8rem;padding:.3rem .5rem}.sidebar-footer{padding:.5rem 1rem}.sidebar-footer button{font-size:.8rem;padding:.4rem .6rem}}.chat-interface{background:var(--surface-color);display:flex;flex-direction:column;height:100%;min-height:0;position:relative;transition:background-color .3s ease}.dark .chat-interface{background:#1f2937}.chat-empty-state{align-items:center;color:#6e6e80;display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;padding:3.75rem 2rem 2rem;text-align:center;transition:color .3s ease}.chat-empty-state.embedded{padding-top:3.25rem}.chat-empty-state.entrance{padding-top:5.5rem}.dark .chat-empty-state{color:#9ca3af}.chat-empty-state h2{color:#2c3e50;margin-bottom:.5rem;transition:color .3s ease}.dark .chat-empty-state h2{color:#f9fafb}.chat-empty-logo{filter:drop-shadow(0 8px 20px rgba(0,0,0,.2));height:160px;margin-bottom:1.5rem;object-fit:contain;width:160px}.dark .chat-empty-logo{filter:drop-shadow(0 8px 20px rgba(0,0,0,.5))}.chat-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:1rem;justify-content:space-between;padding:1.5rem 2rem;transition:border-color .3s ease}.dark .chat-header{border-bottom-color:#374151}.chat-header h3{color:#111827;font-size:1rem;font-weight:600;letter-spacing:-.3px;margin:0;transition:color .3s ease}.dark .chat-header h3{color:#f9fafb}.info-icon{align-items:center;border:1.5px solid #9ca3af;border-radius:50%;color:#9ca3af;cursor:pointer;display:inline-flex;font-size:.75rem;font-style:italic;font-weight:600;height:20px;justify-content:center;transition:all .2s ease;width:20px}.dark .info-icon,.info-icon:hover{border-color:#6b7280;color:#6b7280}.info-icon:hover{transform:scale(1.1)}.dark .info-icon:hover{border-color:#9ca3af;color:#9ca3af}.llm-mode-btn{background:var(--surface-color);border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.dark .llm-mode-btn{background:#374151;border-color:#4b5563;color:#f9fafb}.llm-mode-btn:hover{background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px)}.dark .llm-mode-btn:hover{background:#4b5563;border-color:#6b7280}.llm-mode-btn:disabled{cursor:not-allowed;opacity:.5}.llm-mode-btn:disabled:hover{background:var(--surface-color);border-color:#d1d5db;transform:none}.dark .llm-mode-btn:disabled:hover{background:#374151;border-color:#4b5563}.messages-container{flex:1 1 auto;max-height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding:1.5rem;scrollbar-color:#d1d5dbb3 #0000;scrollbar-width:thin}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:#0000}.messages-container::-webkit-scrollbar-thumb{background-color:#d1d5dbcc;border-radius:10px}.dark .messages-container{scrollbar-color:#4b5563b3 #0000}.dark .messages-container::-webkit-scrollbar-thumb{background-color:#4b5563e6}.conversation-hint{background:#60a5fa14;border:1px dashed #cbd5f5;border-radius:999px;color:#1e3a8a;font-size:.95rem;margin:0 auto 1.5rem;max-width:420px;padding:1rem 1.5rem;text-align:center}.dark .conversation-hint{background:#2563eb1a;border-color:#2c3a68;color:#cbd5f5}.conversation-hint-bottom{margin-bottom:.75rem;margin-top:.5rem}.message{animation:fadeIn .3s ease-in;display:flex;margin-bottom:1.5rem}.message.client{justify-content:flex-start}.message.counsellor{justify-content:flex-end}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-text{word-wrap:break-word;background:#f3f4f6;border-radius:18px;color:#1f2937;line-height:1.6;max-width:70%;padding:1rem 1.25rem;transition:all .3s ease}.dark .message-text{background:#374151;color:#f9fafb}.message-text-plain{word-wrap:break-word;color:#1f2937;line-height:1.6;max-width:100%;padding:0;transition:color .3s ease}.dark .message-text-plain{color:#f9fafb}.typing-indicator{align-items:center;background-color:#f7f7f8;border-radius:8px;display:flex;gap:4px;padding:.75rem 1rem;transition:background-color .3s ease;width:-webkit-fit-content;width:fit-content}.dark .typing-indicator{background-color:#374151}.typing-indicator span{animation:typing 1.4s infinite;background-color:#95a5a6;border-radius:50%;height:8px;width:8px}.dark .typing-indicator span{background-color:#9ca3af}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}.llm-pause-container{bottom:6.5rem;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);z-index:10}.llm-pause-btn{align-items:center;background:#0f172a;border:1px solid #1e293b;border-radius:999px;box-shadow:0 2px 8px #0f172a40;color:#e5e7eb;cursor:pointer;display:flex;font-size:.9375rem;font-weight:600;gap:.4rem;padding:.45rem 1.05rem;pointer-events:auto;transition:background .2s ease,color .2s ease,transform .2s ease}.dark .llm-pause-btn{background:#111827;border-color:#374151;color:#f9fafb}.llm-pause-btn:hover{background:#1e3a8a;border-color:#3b82f6;transform:translateY(-1px)}.llm-pause-btn:active{background:#1d4ed8;transform:translateY(0)}.llm-pause-btn.paused{background:#10b981;border-color:#059669;color:#fff}.llm-pause-btn.paused:hover{background:#059669;transform:translateY(-1px)}.pause-icon{line-height:1}.pause-text{font-size:.85rem;letter-spacing:.4px;text-transform:uppercase}.pause-icon{align-items:center;display:flex;font-size:1rem}.chat-input-container{background:var(--surface-color);border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:.75rem;padding:1.25rem 1.5rem;transition:all .3s ease}.chat-input-container.disabled-preview{margin-top:1rem;opacity:.4;pointer-events:none}.dark .chat-input-container{background:#1f2937;border-top-color:#374151}.chat-input{background:var(--surface-color);border:1px solid #d1d5db;border-radius:24px;color:#1f2937;flex:1 1;font-family:inherit;font-size:.95rem;outline:none;padding:.875rem 1.25rem;transition:all .2s ease}.dark .chat-input{background:#374151;border-color:#4b5563;color:#f9fafb}.chat-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dark .chat-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.chat-input:disabled{background-color:#f9fafb;cursor:not-allowed}.dark .chat-input:disabled{background-color:#374151;color:#6b7280}.send-btn{align-items:center;background:linear-gradient(135deg,#60a5fa,#2563eb);border:1px solid #1d4ed8;border-radius:24px;box-shadow:0 6px 16px #2563eb59;color:#f0f9ff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.4rem;justify-content:center;padding:.875rem 2rem;transition:all .2s ease}.dark .send-btn{background:linear-gradient(135deg,#1e3a8a,#2563eb);border-color:#1e3a8a;box-shadow:0 6px 18px #0f172aa6;color:#e0f2fe}.send-btn:hover:not(:disabled){box-shadow:0 10px 20px #2563eb73;transform:translateY(-2px)}.dark .send-btn:hover:not(:disabled){box-shadow:0 12px 24px #0f172ad9;transform:translateY(-2px)}.send-btn:disabled{background:#cbd5f5;border-color:#b4c3f0;box-shadow:none;color:#6b7280;cursor:not-allowed}.dark .send-btn:disabled{background:#1f2937;border-color:#374151;color:#4b5563}.send-icon{fill:currentColor;height:20px;transition:transform .2s ease;width:20px}.send-btn:hover:not(:disabled) .send-icon{transform:translateX(2px)}.session-control-btn{align-items:center;background:#e5e7eb;border:1px solid #d1d5db;border-radius:20px;color:#111827;cursor:pointer;display:flex;font-size:1.25rem;font-weight:400;justify-content:center;min-width:48px;padding:.875rem 1rem;transition:all .2s ease}.dark .session-control-btn{background:#374151;border-color:#4b5563;color:#f9fafb}.session-control-btn:hover:not(:disabled){background:#cbd5e1;border-color:#94a3b8}.dark .session-control-btn:hover:not(:disabled){background:#4b5563;border-color:#6b7280}.session-control-btn:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed;opacity:.5}.dark .session-control-btn:disabled{background:#1f2937;border-color:#374151;color:#4b5563}.control-icon{fill:currentColor;height:20px;transition:transform .2s ease;width:20px}.session-control-btn:hover:not(:disabled) .control-icon{transform:translateY(-1px)}@media (max-width:768px){.chat-interface{background:#ffffff80;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;min-height:50vh}.dark .chat-interface{background:#1f293780}.chat-header{align-items:flex-start;flex-direction:column;gap:.35rem;padding:.75rem 1rem}.chat-header h3{font-size:.9rem}.llm-mode-btn{font-size:.75rem;padding:.35rem .6rem}.chat-empty-state{padding:1.5rem 1rem}.chat-empty-state h2{font-size:1.25rem}.chat-empty-state p{font-size:.85rem}.chat-empty-logo{height:80px;width:80px}.messages-container{flex:1 1;min-height:200px;padding:.75rem}.message{max-width:90%}.message-text,.message-text-plain{font-size:.9rem;max-width:100%;padding:.6rem .8rem}.chat-input-container{flex-direction:row;flex-wrap:wrap;gap:.5rem;padding:.75rem}.session-control-btn{flex-shrink:0;height:36px;width:36px}.chat-input{flex:1 1;font-size:.9rem;min-width:0;padding:.5rem .75rem}.send-btn{flex-shrink:0;height:36px;width:36px}.llm-pause-container{padding:.5rem}.llm-pause-btn{font-size:.8rem;padding:.4rem .8rem}}.message.message-faded{opacity:.3;transition:opacity .2s ease}.message.message-faded:hover{opacity:.5}.report-panel{background:var(--surface-panel-color);border-left:1px solid #e5e7eb;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:all .3s ease}.dark .report-panel{background:#1c2630;border-left-color:#374151}.report-panel.collapsed{align-items:center;justify-content:center;max-width:40px;min-width:40px;padding:0}.dark .report-panel.collapsed{background:#1f2937}.panel-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem 1.25rem 1rem;transition:border-color .3s ease}.dark .panel-header{border-bottom-color:#374151}.panel-header h3{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:1px;margin:0;text-transform:uppercase;transition:color .3s ease}.dark .panel-header h3{color:#9ca3af}.panel-header-actions{align-items:center;display:flex;gap:.75rem}.insights-collapse-btn{align-items:center;background:#e5e7eb;border:none;border-radius:8px;bottom:16px;color:#374151;cursor:pointer;display:flex;height:32px;justify-content:center;left:8px;padding:0;position:absolute;transition:all .2s ease;width:32px;z-index:10}.dark .insights-collapse-btn{background:#374151;color:#d1d5db}.insights-collapse-btn:hover{background:#d1d5db;transform:scale(1.05)}.dark .insights-collapse-btn:hover{background:#4b5563}.report-panel.collapsed .insights-collapse-btn{left:50%;transform:translateX(-50%)}.report-panel.collapsed .insights-collapse-btn:hover{transform:translateX(-50%) scale(1.05)}.insights-collapse-btn .collapse-icon{transform:rotate(180deg)}.report-panel.collapsed .insights-collapse-btn .collapse-icon{transform:rotate(0deg)}.panel-content{flex:1 1;min-height:0;overflow-y:auto;padding:1rem;scrollbar-color:#d1d5dbb3 #0000;scrollbar-width:thin}.panel-content::-webkit-scrollbar{width:8px}.panel-content::-webkit-scrollbar-track{background:#0000}.panel-content::-webkit-scrollbar-thumb{background-color:#d1d5dbcc;border-radius:10px}.dark .panel-content{scrollbar-color:#4b5563b3 #0000}.dark .panel-content::-webkit-scrollbar-thumb{background-color:#4b5563e6}.panel-empty,.panel-info,.panel-processing{padding:2rem 1rem;text-align:center}.panel-empty p{color:#6e6e80;font-size:.875rem;transition:color .3s ease}.dark .panel-empty p{color:#9ca3af}.info-text{color:#2c3e50;font-weight:500;margin-bottom:.5rem;transition:color .3s ease}.dark .info-text{color:#f9fafb}.info-subtext{color:#6e6e80;font-size:.8rem;line-height:1.5;transition:color .3s ease}.dark .info-subtext{color:#9ca3af}.panel-processing h4{color:#2c3e50;font-size:1rem;margin-bottom:.5rem;transition:color .3s ease}.dark .panel-processing h4{color:#f9fafb}.panel-processing p{color:#6e6e80;font-size:.875rem;margin-bottom:1rem;transition:color .3s ease}.dark .panel-processing p{color:#9ca3af}.progress-placeholder{background-color:var(--surface-color);border:1px solid #e0e0e0;border-radius:6px;padding:1rem;transition:all .3s ease}.dark .progress-placeholder{background-color:#374151;border-color:#4b5563}.progress-placeholder p{color:#3498db;font-size:.8rem;margin:0;transition:color .3s ease}.dark .progress-placeholder p{color:#60a5fa}.automisc-progress{margin-top:1rem;width:100%}.automisc-progress-bar{background:#94a3b84d;border-radius:999px;height:10px;overflow:hidden;width:100%}.automisc-progress-bar-fill{background:linear-gradient(90deg,#60a5fa,#2563eb);height:100%;transition:width .3s ease}.dark .automisc-progress-bar{background:#374151cc}.dark .automisc-progress-bar-fill{background:linear-gradient(90deg,#1f5bdd,#1e40af)}.automisc-progress-label{color:#475569;display:flex;font-size:.85rem;justify-content:space-between;margin-top:.35rem}.dark .automisc-progress-label{color:#cbd5f5}.dark .metric-value{color:#f9fafb}.download-row{align-items:center;border:1px solid #d1d5db;border-radius:.375rem;box-sizing:border-box;display:flex;flex-direction:column;gap:.375rem;margin-top:.75rem;padding:.625rem 1rem;width:100%}.dark .download-row{border-color:#374151}.download-row-inner{align-items:center;display:flex;gap:.5rem;justify-content:center}.download-row-status{color:#9ca3af;font-size:.6875rem;font-style:italic}.dark .download-row-status{color:#6b7280}.download-icon-button.disabled{cursor:not-allowed;opacity:.35}.download-icon-button.disabled:hover{background-color:#e5e7eb;border-color:#d1d5db}.dark .download-icon-button.disabled:hover{background-color:#1e3a8a;border-color:#1e40af}.download-label{color:#4b5563;font-size:.8125rem;font-weight:500;white-space:nowrap}.dark .download-label{color:#9ca3af}.download-icon-button{align-items:center;background-color:#e5e7eb;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;cursor:pointer;display:inline-flex;flex-shrink:0;height:2rem;justify-content:center;padding:0;transition:all .2s ease;width:2rem}.download-icon-button:hover{background-color:#d1d5db;border-color:#9ca3af}.dark .download-icon-button{background-color:#1e3a8a;border:1px solid #1e40af;color:#fff}.dark .download-icon-button:hover{background-color:#1e40af;border-color:#2563eb}.restart-session-container{margin-top:1rem}.restart-session-button{background-color:#e5e7eb;border:1px solid #d1d5db;border-radius:.375rem;color:#111827;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1rem;transition:all .2s ease;width:100%}.restart-session-button:hover{background-color:#d1d5db;border-color:#9ca3af}@media (max-width:768px){.report-panel{background:#ffffff80;border-radius:12px;box-shadow:0 2px 8px #0000000d;height:auto}.dark .report-panel{background:#1f293780}.report-panel.collapsed{max-width:none;min-width:auto;padding:0}.panel-header{padding:.75rem 1rem}.panel-header h2{font-size:1rem}.panel-content{padding:.75rem 1rem}.insights-collapse-btn{display:none}.in-session-analytics{padding:.5rem}.analytics-header h3{font-size:.9rem}.turn-navigator{flex-wrap:wrap;gap:.5rem}.turn-navigator button{font-size:.75rem;padding:.3rem .5rem}.turn-counter{font-size:.8rem}.system-messages-section h4{font-size:.85rem}.system-message-item{font-size:.8rem;padding:.4rem .6rem}.restart-session-button{font-size:.85rem;padding:.5rem 1rem}}.dark .restart-session-button{background-color:#1e3a8a;border:1px solid #1e40af;color:#fff}.dark .restart-session-button:hover{background-color:#1e40af;border-color:#2563eb}.in-session-analytics{display:flex;flex-direction:column;gap:.75rem;padding:.5rem 1rem 1rem}.analytics-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:.5rem;padding-bottom:1rem;text-align:center;transition:border-color .3s ease}.dark .analytics-header{border-bottom-color:#374151}.analytics-title{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .5rem;transition:color .3s ease}.dark .analytics-title{color:#f9fafb}.analytics-subtitle{color:#6b7280;font-size:.75rem;line-height:1.5;margin:0;transition:color .3s ease}.dark .analytics-subtitle{color:#9ca3af}.analytics-visibility-control{align-items:center;border-radius:6px;display:inline-flex;gap:.35rem;margin-top:.5rem;padding:.25rem .5rem}.light .analytics-visibility-control{background:#64748b14;border:1px solid #64748b26}.dark .analytics-visibility-control{background:#9ca3af14;border:1px solid #9ca3af26}.analytics-visibility-label{font-size:.8rem;font-weight:500}.light .analytics-visibility-label{color:#475569}.dark .analytics-visibility-label{color:#d1d5db}.analytics-toggle-icon{align-items:center;background:#0000;border:none;border-radius:6px;cursor:pointer;display:inline-flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.analytics-toggle-icon svg{height:16px;width:16px}.light .analytics-toggle-icon{color:#64748b}.light .analytics-toggle-icon:hover{background:#64748b1f;color:#475569}.light .analytics-toggle-icon.on{color:#2563eb}.light .analytics-toggle-icon.on:hover{background:#2563eb1f;color:#1d4ed8}.dark .analytics-toggle-icon{color:#9ca3af}.dark .analytics-toggle-icon:hover{background:#9ca3af26;color:#d1d5db}.dark .analytics-toggle-icon.on{color:#60a5fa}.dark .analytics-toggle-icon.on:hover{background:#60a5fa26;color:#93c5fd}.analytics-sections{display:flex;flex-direction:column;gap:1rem}.analytics-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:all .3s ease}.dark .analytics-card{background:#1f2937;border-color:#374151}.analytics-card-header{background:#f3f4f6;border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;transition:all .3s ease}.dark .analytics-card-header{background:#1f2937;border-bottom-color:#374151}.analytics-card-title{color:#374151;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase;transition:color .3s ease}.dark .analytics-card-title{color:#9ca3af}.analytics-card-content{min-height:60px;padding:.75rem 1rem 1rem}.analytics-message{align-items:flex-start;display:flex;font-size:.85rem;gap:.45rem;line-height:1.4;margin-bottom:.6rem;transition:all .3s ease}.analytics-message:last-child{margin-bottom:0}.analytics-bullet{color:#3b82f6;flex-shrink:0;font-weight:700;transition:color .3s ease}.dark .analytics-bullet{color:#60a5fa}.analytics-text{color:#374151;transition:color .3s ease}.dark .analytics-text{color:#d1d5db}.analytics-empty{color:#9ca3af;font-size:.875rem;font-style:italic;margin:0;padding:.5rem;text-align:center;transition:color .3s ease}.dark .analytics-empty{color:#6b7280}.analytics-hidden{border:1px dashed #d1d5db;border-radius:8px;color:#6b7280;font-size:.875rem;padding:1rem;text-align:center}.dark .analytics-hidden{border-color:#374151;color:#9ca3af}.stage-metrics-card .stage-metrics-grid{grid-gap:.6rem;display:grid;gap:.6rem;grid-template-columns:repeat(2,1fr);padding:.75rem 1rem 1rem}.metric-item{display:flex;flex-direction:column;gap:.15rem}.metric-label{color:#6b7280;font-size:.7rem;font-weight:600;letter-spacing:.4px;text-transform:uppercase;transition:color .3s ease}.dark .metric-label{color:#9ca3af}.metric-value{color:#1f2937;font-size:.82rem;font-weight:600;transition:color .3s ease}.dark .metric-value{color:#f3f4f6}.end-reason-section{background:#0f172a08;border-left:3px solid #3b82f699;border-radius:.5rem;border-right:3px solid #10b98199;margin:1.25rem 0 1rem;padding:.75rem 1rem}.dark .end-reason-section{background:#0f172ab3;border-left-color:#60a5facc;border-right-color:#34d39999}.end-reason-label{color:#1f2937;display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.4px;margin:0 0 .4rem;text-transform:uppercase}.dark .end-reason-label{color:#f9fafb}.end-reason-text{color:#1e293b;font-size:.88rem;line-height:1.5;margin:0}.dark .end-reason-text{color:#e5e7eb}.revealed-items-section{border-top:1px solid #e5e7eb;margin-top:.5rem;padding-top:1rem;transition:border-color .3s ease}.dark .revealed-items-section{border-top-color:#374151}.revealed-items-title{color:#1f2937;font-size:.875rem;font-weight:600;margin:0 0 1rem;transition:color .3s ease}.dark .revealed-items-title{color:#f9fafb}.revealed-category{margin-bottom:1rem}.revealed-category:last-child{margin-bottom:0}.revealed-category-title{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase;transition:color .3s ease}.dark .revealed-category-title{color:#9ca3af}.revealed-list{list-style:none;margin:0;padding-left:1.25rem}.revealed-item{color:#374151;font-size:.875rem;line-height:1.5;margin-bottom:.5rem;padding-left:.5rem;position:relative;transition:color .3s ease}.revealed-item:last-child{margin-bottom:0}.revealed-item:before{color:#10b981;content:"✓";font-weight:700;left:-1rem;position:absolute;transition:color .3s ease}.dark .revealed-item{color:#d1d5db}.dark .revealed-item:before{color:#34d399}.revealed-category.motivations .revealed-item:before{color:#059669;content:"+"}.dark .revealed-category.motivations .revealed-item:before{color:#34d399}.revealed-category.barriers .revealed-item:before{color:#dc2626;content:"-"}.dark .revealed-category.barriers .revealed-item:before{color:#f87171}.turn-navigator-sticky{background:var(--surface-color);border-top:1px solid #94a3b840;bottom:0;display:flex;flex-direction:column;gap:.5rem;left:0;margin-top:auto;padding:.75rem 1rem;position:-webkit-sticky;position:sticky;right:0}.dark .turn-navigator-sticky{background:#1c2630;border-top-color:#4b556366}.turn-navigator-title{color:#475569cc;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-align:center;text-transform:uppercase}.dark .turn-navigator-title{color:#cbd5e1b3}.turn-navigator-controls{gap:.75rem}.turn-nav-btn,.turn-navigator-controls{align-items:center;display:flex;justify-content:center}.turn-nav-btn{background:var(--surface-color);border:1px solid #94a3b866;border-radius:6px;color:#64748b;cursor:pointer;height:28px;transition:all .15s ease;width:28px}.turn-nav-btn:hover:not(:disabled){background:#94a3b826;border-color:#94a3b899;color:#334155}.turn-nav-btn:disabled{cursor:not-allowed;opacity:.35}.dark .turn-nav-btn{background:#1f2937cc;border-color:#4b556380;color:#94a3b8}.dark .turn-nav-btn:hover:not(:disabled){background:#374151cc;border-color:#64748b99;color:#e2e8f0}.turn-indicator{align-items:center;color:#475569;display:flex;font-size:.8rem;font-weight:500;gap:.5rem;justify-content:center;min-width:100px}.dark .turn-indicator{color:#cbd5e1}.turn-latest-badge{background:#22c55e26;border-radius:4px;color:#16a34a;font-size:.65rem;font-weight:600;letter-spacing:.05em;padding:.15rem .4rem;text-transform:uppercase}.dark .turn-latest-badge{background:#22c55e33;color:#4ade80}.turn-waiting{color:#64748bcc;font-style:italic}.dark .turn-waiting{color:#94a3b8b3}.review-analytics-container{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.dark .review-analytics-container{border-top-color:#374151}.review-analytics-button{background-color:initial;border:1px solid #3b82f6;border-radius:.375rem;color:#3b82f6;cursor:pointer;font-size:.875rem;font-weight:500;padding:.625rem 1rem;transition:all .2s ease;width:100%}.review-analytics-button:hover{background-color:#3b82f61a;border-color:#2563eb;color:#2563eb}.dark .review-analytics-button{border-color:#60a5fa;color:#60a5fa}.dark .review-analytics-button:hover{background-color:#60a5fa26;border-color:#93c5fd;color:#93c5fd}.panel-processing:has(.post-session-review){padding:0;text-align:left}.post-session-review{text-align:left}.back-to-metrics-container{border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1rem}.dark .back-to-metrics-container{border-top-color:#374151}.back-to-metrics-btn{align-items:center;background:#0000;border:1px solid #d1d5db;border-radius:6px;color:#4b5563;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:.35rem;padding:.4rem .75rem;transition:all .15s ease}.back-to-metrics-btn:hover{background:#6b72801a;border-color:#9ca3af;color:#374151}.back-to-metrics-btn svg{flex-shrink:0}.dark .back-to-metrics-btn{border-color:#4b5563;color:#9ca3af}.dark .back-to-metrics-btn:hover{background:#9ca3af1a;border-color:#6b7280;color:#d1d5db}.session-ended-badge{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:999px;color:#dc2626;display:inline-flex;font-size:.7rem;font-weight:600;letter-spacing:.05em;padding:.25rem .6rem;text-transform:uppercase}.dark .session-ended-badge{background:#ef444426;border-color:#f8717166;color:#f87171}
/*# sourceMappingURL=main.301d6f7a.css.map*/