:root{--navy:#1b3a5c;--navy-light:#244a72;--navy-dark:#132a44;--teal:#3a9b8f;--teal-hover:#2e8377;--teal-light:#4db3a6;--red-orange:#d94f30;--light-blue:#7cb9d4;--green:#6b8e3d;--gold:#d4a843;--wc-blue:#0771b6;--wc-gold:#f4ab20;--wc-green:#22b473;--wc-red:#c0272c;--wc-light-blue:#6ecbdb;--color-bg:#fff;--color-bg-secondary:#f5f7fa;--color-bg-bubble-bot:#f0f4f8;--color-bg-bubble-user:#1b3a5c;--color-bubble-user-text:#fff;--color-text:#1b3a5c;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-border:#e2e8f0;--color-shadow:rgba(0,0,0,0.12);--white:#fff;--bg-page:#f5f7fa;--bg-bubble-bot:#f0f4f8;--border-light:#e2e8f0;--text-secondary:#64748b;--text-muted:#94a3b8;--sidebar-width:280px;--font-family:"Segoe UI",-apple-system,BlinkMacSystemFont,"Roboto","Helvetica Neue",sans-serif;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-pill:9999px;--shadow-sm:0 1px 3px rgba(0,0,0,0.08);--shadow-md:0 4px 12px rgba(0,0,0,0.1);--shadow-lg:0 8px 24px rgba(0,0,0,0.12)}[data-theme=dark]{--color-bg:#111827;--color-bg-secondary:#0f1521;--color-bg-bubble-bot:#1e293b;--color-bg-bubble-user:#0771b6;--color-bubble-user-text:#fff;--color-text:#e2e8f0;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-border:#1e293b;--color-shadow:rgba(0,0,0,0.4);--white:#111827;--bg-page:#0f1521;--bg-bubble-bot:#1e293b;--border-light:#1e293b;--text-secondary:#94a3b8;--text-muted:#64748b;--shadow-sm:0 1px 3px rgba(0,0,0,0.3);--shadow-md:0 4px 12px rgba(0,0,0,0.35);--shadow-lg:0 8px 24px rgba(0,0,0,0.4)}*,:after,:before{box-sizing:border-box}#root,body,html{height:100%}body{margin:0;font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);color:var(--color-text);transition:background-color .3s ease,color .3s ease}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}:focus-visible{outline:2px solid var(--teal);outline-offset:2px}body.overlay-open{overflow:hidden}.protected-route-loading{display:flex;justify-content:center;align-items:center;height:100vh;background:var(--navy);color:var(--light-blue);font-family:var(--font-sans,sans-serif);font-size:1rem}.login-page{display:flex;flex-direction:column;min-height:100vh;background-color:var(--color-bg-secondary);transition:background-color .3s ease}.login-stripe-bar{width:100%;height:8px;background-image:url(/bg-stripes.svg);background-size:100% 100%;background-repeat:no-repeat;flex-shrink:0}.login-content{flex:1 1;display:flex;justify-content:center;align-items:center;padding:var(--space-xl) var(--space-md)}.login-card{background:var(--color-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:40px 40px 32px;width:100%;max-width:420px;transition:background-color .3s ease}.login-logo{text-align:center;margin-bottom:var(--space-xl)}.login-wca-logo{width:100%;max-width:300px;height:auto;display:block;margin:0 auto var(--space-md)}[data-theme=dark] .login-wca-logo{filter:brightness(.9) saturate(.8)}.login-subtitle{font-size:.95rem;color:var(--color-text-secondary);margin:0}.login-btn{display:flex;align-items:center;justify-content:center;grid-gap:var(--space-sm);gap:var(--space-sm);width:100%;padding:12px var(--space-md);font-size:.95rem;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;border:none}.login-btn-google{background-color:var(--teal);color:#fff}.login-btn-google:hover{background-color:var(--teal-hover)}.login-divider{display:flex;align-items:center;grid-gap:var(--space-md);gap:var(--space-md);margin:var(--space-lg) 0;color:var(--color-text-muted);font-size:.85rem}.login-divider:after,.login-divider:before{content:"";flex:1 1;height:1px;background:var(--color-border)}.login-dev-form{display:flex;flex-direction:column;grid-gap:var(--space-sm);gap:var(--space-sm)}.login-dev-label{margin:0;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.login-password-input{width:100%;padding:10px var(--space-md);font-size:.95rem;font-family:var(--font-family);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;color:var(--color-text);background-color:var(--color-bg);transition:border-color .2s ease,background-color .3s ease;box-sizing:border-box}.login-password-input:focus{border-color:var(--teal)}.login-password-input::placeholder{color:var(--color-text-muted)}.login-error{margin:0;font-size:.85rem;color:var(--red-orange)}.login-btn-dev{background-color:initial;color:var(--color-text);border:2px solid var(--color-border);margin-top:var(--space-xs)}.login-btn-dev:hover:not(:disabled){border-color:var(--color-text);background-color:var(--color-bg-secondary)}.login-btn-dev:disabled{opacity:.6;cursor:not-allowed}.login-lab-brand{display:flex;justify-content:center;margin-top:var(--space-lg)}.login-lab-logo{height:80px;width:auto;opacity:.2}[data-theme=dark] .login-lab-logo{filter:brightness(0) invert(1);opacity:.15}@media (max-width:480px){.login-content{padding:var(--space-lg) var(--space-sm);align-items:flex-start;padding-top:var(--space-xl)}.login-card{padding:32px 24px 24px;border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.login-wca-logo{max-width:240px}}.sidebar{background-color:var(--navy);color:#fff;display:flex;flex-direction:column;height:100vh;overflow:hidden}.sidebar-stripe-bar{width:100%;height:5px;background-image:url(/bg-stripes.svg);background-size:100% 100%;background-repeat:no-repeat;flex-shrink:0}.sidebar-header{padding:var(--space-md) var(--space-md) var(--space-md);border-bottom:1px solid var(--navy-light)}.sidebar-logo{display:block;width:100%;max-width:200px;height:auto;filter:brightness(0) invert(1);opacity:.92;margin:0 auto var(--space-md)}.new-chat-btn{width:100%;padding:10px var(--space-md);background-color:var(--teal);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.new-chat-btn:hover{background-color:var(--teal-hover)}.sidebar-conversations{flex:1 1;overflow-y:auto;padding:var(--space-sm) 0}.sidebar-conversations::-webkit-scrollbar{width:4px}.sidebar-conversations::-webkit-scrollbar-thumb{background:var(--navy-light);border-radius:2px}.sidebar-empty,.sidebar-loading{padding:var(--space-md);font-size:.85rem;color:var(--color-text-muted);text-align:center}.sidebar-conv-item{display:flex;align-items:center;padding:10px var(--space-md);cursor:pointer;transition:background-color .15s ease;width:100%;background:none;border:none;border-left:3px solid transparent;color:#fff;font-family:var(--font-family);font-size:inherit;text-align:left}.sidebar-conv-item.active,.sidebar-conv-item:hover{background-color:var(--navy-light)}.sidebar-conv-item.active{border-left-color:var(--teal)}.sidebar-conv-title{flex:1 1;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:column}.sidebar-conv-persona{display:block;font-size:.7rem;font-weight:600;color:var(--teal-light);text-transform:uppercase;letter-spacing:.03em;margin-bottom:1px;line-height:1.2}.sidebar-conv-delete{background:none;border:none;color:var(--color-text-muted);font-size:1.1rem;cursor:pointer;padding:4px 8px;opacity:0;transition:opacity .15s ease,color .15s ease;line-height:1}.sidebar-conv-delete:focus,.sidebar-conv-item:hover .sidebar-conv-delete{opacity:1}.sidebar-conv-delete:hover{color:var(--red-orange)}.sidebar-footer{padding:var(--space-md);border-top:1px solid var(--navy-light)}.sidebar-lab-brand{display:flex;justify-content:center;padding:var(--space-sm) 0 var(--space-md)}.sidebar-lab-logo{width:90%;height:auto;opacity:.35;filter:brightness(10)}.sidebar-actions{display:flex;align-items:center;grid-gap:var(--space-xs);gap:var(--space-xs)}.sidebar-profile-btn{flex:1 1;display:flex;align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm);padding:10px var(--space-md);background:none;border:none;color:#fff;font-size:.9rem;cursor:pointer;border-radius:var(--radius-sm);transition:background-color .15s ease}.sidebar-profile-btn:hover{background-color:var(--navy-light)}.profile-icon{font-size:.6rem;color:var(--teal)}.sidebar-theme-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:none;border:1px solid var(--navy-light);border-radius:var(--radius-sm);color:#fff;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;flex-shrink:0}.sidebar-theme-btn:hover{background-color:var(--navy-light);border-color:var(--teal)}@media (max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);transform:translateX(-100%);transition:transform .3s ease;z-index:100}.sidebar.open{transform:translateX(0)}}.typing-dots{display:flex;grid-gap:4px;gap:4px;padding:4px 0}.typing-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-text-muted);animation:typing-bounce 1.4s ease-in-out infinite both}.typing-dot:first-child{animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.message-row{display:flex;width:100%;grid-gap:var(--space-sm);gap:var(--space-sm)}.message-row-user{justify-content:flex-end}.message-row-bot{justify-content:flex-start;align-items:flex-start}.message-avatar{border-radius:50%;object-fit:cover;object-position:top center;margin-top:20px;border:2px solid var(--color-border)}.message-avatar,.message-avatar-placeholder,.message-avatar-spacer{width:40px;height:40px;flex-shrink:0}.message-avatar-placeholder{border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;margin-top:20px;border:2px solid var(--color-border)}[data-theme=dark] .message-avatar-placeholder{background:var(--navy-light)}.message-content{display:flex;flex-direction:column;max-width:70%;min-width:0}.message-sender-name{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:2px;padding-left:4px}.message-bubble{padding:10px 16px;font-size:.9rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.message-bubble p{margin:0}.message-bubble p+p{margin-top:.5em}.message-user{background-color:var(--color-bg-bubble-user);color:var(--color-bubble-user-text);border-radius:var(--radius-lg) var(--radius-lg) var(--space-xs) var(--radius-lg)}.message-bot{background-color:var(--color-bg-bubble-bot);color:var(--color-text);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--space-xs)}@media (max-width:768px){.message-content{max-width:85%}.message-avatar,.message-avatar-placeholder,.message-avatar-spacer{width:34px;height:34px;margin-top:18px}}.chat-input-container{padding:var(--space-md) var(--space-lg) var(--space-lg);background-color:var(--color-bg);border-top:1px solid var(--color-border);transition:background-color .3s ease,border-color .3s ease}.chat-input-wrapper{display:flex;align-items:flex-end;grid-gap:var(--space-sm);gap:var(--space-sm);background-color:var(--color-bg-secondary);border-radius:var(--radius-pill);padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-md);border:1px solid var(--color-border);transition:border-color .2s ease,background-color .3s ease}.chat-input-wrapper:focus-within{border-color:var(--teal)}.chat-input{flex:1 1;border:none;background:transparent;font-family:var(--font-family);font-size:.9rem;color:var(--color-text);resize:none;outline:none;padding:6px 0;line-height:1.4}.chat-input::placeholder{color:var(--color-text-muted)}.chat-send-btn{width:36px;height:36px;border-radius:50%;border:none;background-color:var(--teal);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background-color .2s ease}.chat-send-btn:hover:not(:disabled){background-color:var(--teal-hover)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;background-color:var(--color-text-muted)}.chat-input:disabled{opacity:.5;cursor:not-allowed}.chat-input:disabled::placeholder{color:var(--color-text-muted)}@media (max-width:768px){.chat-input-container{padding:var(--space-sm) var(--space-md) var(--space-md)}}.persona-picker{flex:1 1;display:flex;flex-direction:column;align-items:center;padding:var(--space-xl) var(--space-lg);overflow-y:auto;background-color:var(--color-bg);transition:background-color .3s ease}.persona-picker-loading{color:var(--color-text-secondary);font-size:.95rem}.persona-picker-header{text-align:center;margin-bottom:var(--space-xl);max-width:600px}.persona-picker-logo{width:100%;max-width:240px;height:auto;margin-bottom:var(--space-md);opacity:.85}[data-theme=dark] .persona-picker-logo{filter:brightness(.9) saturate(.8);opacity:.7}.persona-picker-header h2{color:var(--color-text);font-size:1.4rem;font-weight:700;margin:0 0 var(--space-xs) 0}.persona-picker-header p{color:var(--color-text-secondary);font-size:.9rem;margin:0}.persona-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:var(--space-lg);gap:var(--space-lg);width:100%;max-width:960px}.persona-card{position:relative;display:flex;flex-direction:column;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;font-family:inherit;color:inherit;padding:0;text-align:left}.persona-card:hover:not(:disabled){transform:translateY(-4px);box-shadow:var(--shadow-lg)}.persona-card:disabled{opacity:.6;cursor:wait}.persona-card-photo{position:relative;width:100%;aspect-ratio:3/4;overflow:hidden;background:var(--navy)}.persona-card-photo img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .3s ease}.persona-card:hover:not(:disabled) .persona-card-photo img{transform:scale(1.04)}.persona-card-photo-overlay{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent);pointer-events:none}.persona-card-photo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--navy);color:#fff;font-size:3rem;font-weight:700}.persona-card-info{padding:var(--space-md) var(--space-md) var(--space-lg)}.persona-card-name-row{display:flex;align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm);flex-wrap:wrap;margin-bottom:4px}.persona-card-name{font-size:1.15rem;font-weight:700;color:var(--color-text);margin:0}.persona-card-worldview{display:inline-block;font-size:.65rem;font-weight:600;color:#fff;padding:2px 8px;border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.persona-card-subtitle{font-size:.78rem;color:var(--color-text-muted);margin:0 0 var(--space-sm) 0;font-weight:500}.persona-card-desc{font-size:.82rem;color:var(--color-text-secondary);margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.persona-card-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.5);color:#fff;font-weight:600;font-size:.95rem;border-radius:var(--radius-md)}@media (max-width:768px){.persona-picker{padding:var(--space-lg) var(--space-md)}.persona-picker-grid{grid-template-columns:repeat(2,1fr);grid-gap:var(--space-md);gap:var(--space-md)}.persona-picker-header h2{font-size:1.2rem}.persona-card-desc{-webkit-line-clamp:2}}@media (max-width:480px){.persona-picker-grid{grid-template-columns:1fr 1fr;grid-gap:var(--space-sm);gap:var(--space-sm)}.persona-card-info{padding:var(--space-sm) var(--space-sm) var(--space-md)}.persona-card-name{font-size:1rem}.persona-card-desc{display:none}}.chat-area{display:flex;flex-direction:column;height:100vh;height:100dvh;background-color:var(--color-bg);overflow:hidden;transition:background-color .3s ease}.chat-area-header{padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--color-border);background-color:var(--color-bg);transition:background-color .3s ease,border-color .3s ease}.chat-area-header,.chat-header-contact{display:flex;align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm)}.chat-header-contact{flex:1 1;min-width:0}.chat-header-avatar{object-fit:cover;object-position:top center}.chat-header-avatar,.chat-header-avatar-placeholder{width:44px;height:44px;border-radius:50%;flex-shrink:0;border:2px solid var(--color-border)}.chat-header-avatar-placeholder{background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700}[data-theme=dark] .chat-header-avatar-placeholder{background:var(--navy-light)}.chat-header-info{display:flex;flex-direction:column;min-width:0}.chat-header-name{font-size:.95rem;font-weight:700;color:var(--color-text);line-height:1.2}.chat-header-status{font-size:.75rem;color:var(--teal);font-weight:500}.chat-grading-toggle-btn{display:none;align-items:center;justify-content:center;background:none;border:2px solid var(--color-border);border-radius:50%;padding:2px;cursor:pointer;transition:border-color .2s ease;flex-shrink:0}.chat-grading-toggle-btn:hover{border-color:var(--wc-gold)}.grading-toggle-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.chat-area-messages{flex:1 1;overflow-y:auto;padding:var(--space-lg);display:flex;flex-direction:column;grid-gap:var(--space-md);gap:var(--space-md)}.chat-area-messages::-webkit-scrollbar{width:6px}.chat-area-messages::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.chat-area-loading{font-size:.9rem}.chat-area-empty,.chat-area-loading{text-align:center;color:var(--color-text-secondary)}.chat-area-empty{flex:1 1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--space-xl)}.chat-area-empty h2{color:var(--color-text);margin:0 0 var(--space-sm) 0;font-size:1.5rem}.chat-area-empty p{margin:0 0 var(--space-xs) 0;font-size:.95rem}.chat-area-hint{color:var(--color-text-muted);font-size:.85rem!important}.chat-area-error{color:var(--red-orange,#e05b3a);font-size:.85rem!important;margin-top:var(--space-sm)}.chat-area-empty-logo{width:100%;max-width:320px;height:auto;margin-bottom:var(--space-lg);opacity:.85}[data-theme=dark] .chat-area-empty-logo{filter:brightness(.9) saturate(.8);opacity:.7}.chat-area-menu-btn{display:none;flex-direction:column;justify-content:center;grid-gap:5px;gap:5px;background:none;border:none;cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-sm);flex-shrink:0}.chat-area-menu-btn:hover{background-color:var(--color-bg-secondary)}.chat-area-menu-btn span{display:block;width:20px;height:2px;background:var(--color-text);border-radius:1px}@media (max-width:1024px){.chat-grading-toggle-btn{display:flex}}@media (max-width:768px){.chat-area-menu-btn{display:flex}.chat-area-header{padding:var(--space-sm) var(--space-md)}.chat-area-messages{padding:var(--space-md)}}.assessment-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:assess-fade-in .2s ease-out}@keyframes assess-fade-in{0%{opacity:0}to{opacity:1}}.assessment-content{background-color:var(--color-bg);color:var(--color-text);border-radius:var(--radius-md);max-width:580px;width:92%;max-height:88vh;display:flex;flex-direction:column;position:relative;overflow:hidden;box-shadow:var(--shadow-lg),0 0 0 1px var(--color-border);animation:assess-slide-up .3s ease-out;transition:background-color .3s ease,color .3s ease}@keyframes assess-slide-up{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.assessment-stripe{width:100%;height:5px;background-image:url(/bg-stripes.svg);background-size:100% 100%;background-repeat:no-repeat;flex-shrink:0}.assessment-close-btn{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm);transition:color .15s ease,background-color .15s ease;z-index:2;display:flex;align-items:center;justify-content:center}.assessment-close-btn:hover{color:var(--color-text);background-color:var(--color-bg-secondary)}.assessment-header{padding:var(--space-lg) var(--space-lg) var(--space-md);text-align:center}.assessment-logo{width:180px;height:auto;margin-bottom:var(--space-sm);opacity:.85}[data-theme=dark] .assessment-logo{filter:brightness(.9) saturate(.8);opacity:.75}.assessment-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--color-text)}.assessment-loading{display:flex;flex-direction:column;align-items:center;padding:var(--space-xl) var(--space-lg);grid-gap:var(--space-md);gap:var(--space-md)}.assessment-spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--teal);border-radius:50%;animation:assess-spin .8s linear infinite}@keyframes assess-spin{to{transform:rotate(1turn)}}.assessment-loading p{margin:0;font-size:.9rem;color:var(--color-text-secondary)}.assessment-error{display:flex;align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm);margin:var(--space-md) var(--space-lg);padding:var(--space-sm) var(--space-md);background-color:rgba(217,79,48,.1);border:1px solid var(--red-orange);border-radius:var(--radius-sm);color:var(--red-orange);font-size:.85rem}.assessment-error svg{flex-shrink:0}.report-scroll{overflow-y:auto;flex:1 1;padding:0 var(--space-lg) var(--space-md)}.report-scroll::-webkit-scrollbar{width:6px}.report-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.assessment-total{display:flex;flex-direction:column;align-items:center;padding:var(--space-md) 0 var(--space-lg)}.score-ring-progress{transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-dashoffset 1s ease-out}.score-ring-text{font-size:2rem;font-weight:800;fill:var(--color-text)}.assessment-total-label{margin-top:var(--space-xs);font-size:.8rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.assessment-subscores{display:flex;flex-direction:column;grid-gap:var(--space-md);gap:var(--space-md);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-lg)}.score-bar-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.score-bar-label{font-size:.85rem;font-weight:600;color:var(--color-text)}.score-bar-value{font-size:.8rem;font-weight:700}.score-bar-track{width:100%;height:8px;background-color:var(--color-bg-secondary);border-radius:var(--radius-pill);overflow:hidden}.score-bar-fill{height:100%;border-radius:var(--radius-pill);transition:width 1s ease-out}.assessment-section{margin-bottom:var(--space-lg)}.assessment-section-title{align-items:center;font-size:.95rem;font-weight:700;color:var(--color-text);margin:0 0 var(--space-md) 0}.assessment-highlights,.assessment-section-title{display:flex;grid-gap:var(--space-sm);gap:var(--space-sm)}.assessment-highlights{flex-direction:column}.highlight-card{display:flex;grid-gap:var(--space-sm);gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-secondary);border-left:3px solid var(--wc-gold);border-radius:0 var(--radius-sm) var(--radius-sm) 0;transition:background-color .3s ease}.highlight-number{flex-shrink:0;width:22px;height:22px;background-color:var(--wc-gold);color:#fff;font-size:.7rem;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:2px}.highlight-card p{margin:0;font-size:.85rem;line-height:1.55;color:var(--color-text)}.assessment-explanations{display:flex;flex-direction:column;grid-gap:var(--space-sm);gap:var(--space-sm)}.explanation-card{padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-secondary);border-left:3px solid var(--teal);border-radius:0 var(--radius-sm) var(--radius-sm) 0;transition:background-color .3s ease}.explanation-card p{margin:0;font-size:.85rem;line-height:1.55;color:var(--color-text)}.assessment-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;flex-shrink:0}.assessment-export-btn{display:flex;align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm);padding:8px 16px;font-size:.85rem;font-weight:600;color:#fff;background-color:var(--teal);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .2s ease}.assessment-export-btn:hover{background-color:var(--teal-hover)}@media (max-width:600px){.assessment-content{width:100%;max-width:100%;max-height:100vh;border-radius:0;height:100vh}.assessment-header{padding:var(--space-md)}.assessment-logo{width:140px}.report-scroll{padding:0 var(--space-md) var(--space-md)}.assessment-footer{padding:var(--space-sm) var(--space-md)}}.grading-panel{flex-direction:column;height:100vh;border-left:1px solid var(--color-border);overflow:hidden;transition:background-color .3s ease,border-color .3s ease}.grading-panel,.grading-panel-header{display:flex;background-color:var(--color-bg)}.grading-panel-header{align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);transition:background-color .3s ease}.grading-header-left{display:flex;align-items:center;grid-gap:var(--space-sm);gap:var(--space-sm)}.grading-header-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}.grading-header-info{display:flex;flex-direction:column}.grading-header-name{font-size:.95rem;font-weight:700;color:var(--color-text);line-height:1.2}.grading-header-role{font-size:.75rem;color:var(--wc-gold);font-weight:500}.grading-close-btn{display:none;background:none;border:none;font-size:1.5rem;color:var(--color-text-secondary);cursor:pointer;padding:0 4px;line-height:1}.grading-close-btn:hover{color:var(--color-text)}.grading-feed{flex:1 1;overflow-y:auto;padding:var(--space-md);display:flex;flex-direction:column;grid-gap:var(--space-md);gap:var(--space-md)}.grading-feed::-webkit-scrollbar{width:5px}.grading-feed::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.coach-message{display:flex;grid-gap:var(--space-sm);gap:var(--space-sm);align-items:flex-start;animation:coach-fade-in .3s ease-out}@keyframes coach-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.coach-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0;margin-top:2px}.coach-bubble{background-color:var(--color-bg-bubble-bot);color:var(--color-text);padding:10px 14px;border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--space-xs);font-size:.85rem;line-height:1.55;max-width:280px;transition:background-color .3s ease}.coach-typing{display:flex;grid-gap:4px;gap:4px;padding:12px 16px}.coach-typing span{width:7px;height:7px;border-radius:50%;background-color:var(--color-text-muted);animation:coach-bounce 1.4s ease-in-out infinite both}.coach-typing span:first-child{animation-delay:0s}.coach-typing span:nth-child(2){animation-delay:.2s}.coach-typing span:nth-child(3){animation-delay:.4s}@keyframes coach-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.grading-panel-footer{padding:var(--space-md);border-top:1px solid var(--color-border);transition:border-color .3s ease}.full-grade-btn{width:100%;display:flex;align-items:center;justify-content:center;grid-gap:var(--space-sm);gap:var(--space-sm);padding:10px var(--space-md);font-size:.85rem;font-weight:600;background-color:var(--teal);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .2s ease}.full-grade-btn:hover:not(:disabled){background-color:var(--teal-hover)}.full-grade-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width:1024px){.grading-panel{position:fixed;right:0;top:0;bottom:0;width:360px;max-width:90vw;transform:translateX(100%);transition:transform .3s ease,background-color .3s ease;z-index:100;box-shadow:var(--shadow-lg)}.grading-panel.open{transform:translateX(0)}.grading-close-btn{display:block}}.profile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:100}.profile-panel{position:fixed;top:0;right:0;width:320px;height:100vh;background-color:var(--color-bg);box-shadow:var(--shadow-lg);z-index:101;display:flex;flex-direction:column;animation:slide-in .2s ease-out;transition:background-color .3s ease}@keyframes slide-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.profile-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg) var(--space-md);border-bottom:1px solid var(--color-border)}.profile-panel-header h3{margin:0;font-size:1.1rem;color:var(--color-text)}.profile-close-btn{background:none;border:none;font-size:1.5rem;color:var(--color-text-secondary);cursor:pointer;padding:0;line-height:1}.profile-close-btn:hover{color:var(--color-text)}.profile-panel-body{flex:1 1;padding:var(--space-lg) var(--space-md)}.profile-info{grid-gap:var(--space-md);gap:var(--space-md)}.profile-avatar,.profile-info{display:flex;align-items:center}.profile-avatar{width:48px;height:48px;border-radius:50%;background-color:var(--navy);color:#fff;justify-content:center;font-size:1.2rem;font-weight:700;flex-shrink:0}.profile-details{min-width:0}.profile-email{margin:0;font-size:.95rem;font-weight:600;color:var(--color-text);word-break:break-all}.profile-provider{margin:4px 0 0;font-size:.8rem;color:var(--color-text-muted);text-transform:capitalize}.profile-panel-footer{padding:var(--space-md);border-top:1px solid var(--color-border)}.profile-logout-btn{width:100%;padding:10px;background-color:initial;color:var(--red-orange);border:2px solid var(--red-orange);border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.profile-logout-btn:hover{background-color:var(--red-orange);color:#fff}@media (max-width:480px){.profile-panel{width:100%}}.chat-page{display:grid;grid-template-columns:var(--sidebar-width) 1fr 360px;height:100vh;overflow:hidden}.mobile-grading-overlay,.mobile-sidebar-overlay{display:none}@media (max-width:1024px){.chat-page{grid-template-columns:var(--sidebar-width) 1fr}.mobile-grading-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99}}@media (max-width:768px){.chat-page{grid-template-columns:1fr}.mobile-sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99}}
/*# sourceMappingURL=main.f475ac3d.chunk.css.map */