.coming-soon-overlay{position:absolute;inset:0;background:#f0f0f0d9;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:all;cursor:not-allowed;backdrop-filter:blur(2px)}.coming-soon-text{color:var(--bs-primary);font-size:1.75rem;font-weight:600;letter-spacing:.02em;opacity:.95;user-select:none;text-align:center}.coming-soon-container{position:relative;min-height:400px}.coming-soon-container *{pointer-events:none!important;user-select:none!important}.coming-soon-container .coming-soon-overlay{pointer-events:all!important}.wizard-pdf-dropzone{border:2px dashed #dee2e6;border-radius:8px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:#f8f9fa;display:block;width:100%}.wizard-pdf-dropzone:hover{border-color:var(--bs-primary);background:#e3f2fd}.wizard-pdf-dropzone.has-file{border-color:#4caf50;background:#e8f5e9;border-style:solid}.wizard-pdf-dropzone .pdf-icon-container{font-size:3rem;color:#6c757d;margin-bottom:1rem}.wizard-pdf-dropzone.has-file .pdf-icon-container{color:#4caf50}.wizard-pdf-selected{background:#fff;padding:.75rem;border-radius:6px;border:1px solid #4caf50;display:flex;align-items:center;justify-content:space-between;margin-top:1rem}.wizard-pdf-selected .wizard-selected-filename{flex:1;text-align:left;color:#2e7d32}:root{--md-sys-color-primary: #1DA7A0;--md-sys-color-on-primary: #FFFFFF;--md-sys-color-primary-container: #A8E4E0;--md-sys-color-on-primary-container: #00201F;--md-sys-color-secondary: #123C6B;--md-sys-color-on-secondary: #FFFFFF;--md-sys-color-secondary-container: #D3E4FF;--md-sys-color-on-secondary-container: #001A41;--md-sys-color-tertiary: #6750A4;--md-sys-color-on-tertiary: #FFFFFF;--md-sys-color-error: #BA1A1A;--md-sys-color-on-error: #FFFFFF;--md-sys-color-surface: #FDFCFC;--md-sys-color-on-surface: #1A1C1C;--md-sys-color-surface-variant:#E1E2E2;--md-sys-color-on-surface-variant: #414848;--md-sys-color-outline: #717979;--md-sys-color-outline-variant: #C1C7C7;--md-sys-color-shadow: rgba(0,0,0,.2);--md-sys-color-scrim: rgba(0,0,0,.32);--md-sys-color-inverse-surface: #2F3131;--md-sys-color-inverse-on-surface: #F0F1F1;--md-state-hover: rgba(29, 167, 160, .08);--md-state-focus: rgba(29, 167, 160, .12);--md-state-pressed: rgba(29, 167, 160, .12);--md-state-dragged: rgba(29, 167, 160, .16);--md-shape-corner-none: 0;--md-shape-corner-extra-small: 4px;--md-shape-corner-small: 8px;--md-shape-corner-medium: 12px;--md-shape-corner-large: 16px;--md-shape-corner-extra-large: 28px;--md-shape-corner-full: 9999px;--md-ease-standard: cubic-bezier(.2, 0, 0, 1);--md-ease-decelerate: cubic-bezier(0, 0, .2, 1);--md-ease-accelerate: cubic-bezier(.3, 0, .8, .15);--md-duration-short: .15s;--md-duration-medium: .25s;--md-duration-long: .35s;--md-duration-extra-long: .5s;--md-font-family: "Inter", "Roboto", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--md-elevation-0: none;--md-elevation-1: 0 1px 2px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.12);--md-elevation-2: 0 2px 4px rgba(0,0,0,.08), 0 3px 6px rgba(0,0,0,.12);--md-elevation-3: 0 4px 8px rgba(0,0,0,.1), 0 6px 12px rgba(0,0,0,.12);--md-elevation-4: 0 6px 12px rgba(0,0,0,.12), 0 8px 16px rgba(0,0,0,.15);--md-elevation-5: 0 8px 16px rgba(0,0,0,.14), 0 12px 24px rgba(0,0,0,.2);--bs-body-bg: var(--md-sys-color-surface);--bs-body-color: var(--md-sys-color-on-surface);--bs-primary: var(--md-sys-color-primary);--bs-secondary: var(--md-sys-color-secondary);--bs-success: #22c55e;--bs-info: var(--md-sys-color-tertiary);--bs-warning: #f59e0b;--bs-danger: var(--md-sys-color-error);--bs-border-color: var(--md-sys-color-outline-variant);--bs-border-radius: var(--md-shape-corner-medium);--bs-border-radius-sm: var(--md-shape-corner-small);--bs-border-radius-lg: var(--md-shape-corner-large);--bs-border-radius-pill: var(--md-shape-corner-full);--bs-link-color: var(--md-sys-color-primary);--bs-primary-rgb: 29, 167, 160;--bs-secondary-rgb: 18, 60, 107;--bs-font-sans-serif: var(--md-font-family);--bs-body-font-family: var(--md-font-family);--bs-box-shadow: var(--md-elevation-1);--bs-box-shadow-sm: var(--md-elevation-1);--bs-box-shadow-lg: var(--md-elevation-3)}body{font-family:var(--md-font-family);letter-spacing:.01em;line-height:1.5;color:var(--md-sys-color-on-surface);background-color:var(--md-sys-color-surface);transition:background-color var(--md-duration-long) var(--md-ease-standard),color var(--md-duration-long) var(--md-ease-standard)}h1,.h1{font-weight:700;font-size:clamp(2rem,1.5rem + 2vw,3.5rem);letter-spacing:-.02em;line-height:1.2}h2,.h2{font-weight:700;font-size:clamp(1.5rem,1.2rem + 1vw,2.25rem);letter-spacing:-.01em;line-height:1.3}h3,.h3{font-weight:600;font-size:clamp(1.25rem,1rem + .5vw,1.75rem);line-height:1.4}h4,.h4{font-weight:600;font-size:1.25rem;line-height:1.4}h5,.h5{font-weight:500;font-size:1.125rem;line-height:1.5}h6,.h6{font-weight:500;font-size:1rem;line-height:1.5}.small,.form-text{opacity:.75;font-size:.875rem}.btn{font-weight:500;text-transform:none;letter-spacing:.025em;border-radius:var(--md-shape-corner-full);padding:.625rem 1.5rem;position:relative;overflow:hidden;transition:all var(--md-duration-short) var(--md-ease-standard);border:none;isolation:isolate}.btn-primary{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);box-shadow:var(--md-elevation-1)}.btn-primary:hover{background-color:var(--md-sys-color-primary);filter:brightness(1.08);box-shadow:var(--md-elevation-2);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:var(--md-elevation-1)}.btn-primary:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.btn-outline-primary{background-color:transparent;color:var(--md-sys-color-primary);border:1px solid var(--md-sys-color-outline)}.btn-outline-primary:hover{background-color:var(--md-state-hover);border-color:var(--md-sys-color-primary);color:var(--md-sys-color-primary)}.btn-outline-primary:active{background-color:var(--md-state-pressed)}.btn-text{background-color:transparent;color:var(--md-sys-color-primary);box-shadow:none;padding:.625rem 1rem}.btn-text:hover{background-color:var(--md-state-hover)}.btn-fab{width:56px;height:56px;border-radius:var(--md-shape-corner-large);padding:0;display:inline-flex;align-items:center;justify-content:center;background-color:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--md-elevation-3)}.btn-fab:hover{box-shadow:var(--md-elevation-4);transform:translateY(-2px)}.btn-fab-sm{width:40px;height:40px;border-radius:var(--md-shape-corner-medium)}.card{border:none;border-radius:var(--md-shape-corner-medium);background:var(--md-sys-color-surface);box-shadow:var(--md-elevation-1);transition:box-shadow var(--md-duration-medium) var(--md-ease-standard),transform var(--md-duration-medium) var(--md-ease-standard);overflow:hidden}.card:hover{box-shadow:var(--md-elevation-3)}.card-elevated{box-shadow:var(--md-elevation-2)}.card-elevated:hover{box-shadow:var(--md-elevation-4);transform:translateY(-2px)}.card-filled{background:var(--md-sys-color-surface-variant);box-shadow:none}.card-outlined{box-shadow:none;border:1px solid var(--md-sys-color-outline-variant)}.form-control,.form-select{border:1px solid var(--md-sys-color-outline);border-radius:var(--md-shape-corner-extra-small);background:var(--md-sys-color-surface);padding:.75rem 1rem;font-size:1rem;transition:all var(--md-duration-short) var(--md-ease-standard)}.form-control:hover,.form-select:hover{border-color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface)}.form-control:focus,.form-select:focus{border-color:var(--md-sys-color-primary);background:var(--md-sys-color-surface);box-shadow:0 0 0 3px color-mix(in oklab,var(--md-sys-color-primary) 20%,transparent);outline:none}.form-label{color:var(--md-sys-color-on-surface-variant);font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-floating>.form-control,.form-floating>.form-select{padding:1.625rem .75rem .625rem}.form-floating>label{color:var(--md-sys-color-on-surface-variant);padding:1rem .75rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label{color:var(--md-sys-color-primary);transform:scale(.85) translateY(-.5rem) translate(.15rem)}.navbar{background:var(--md-sys-color-surface);box-shadow:var(--md-elevation-1);border:none;transition:background-color var(--md-duration-long) var(--md-ease-standard)}.navbar-brand{font-weight:600;font-size:1.25rem;color:var(--md-sys-color-primary);display:flex;align-items:center;gap:.5rem}.navbar-nav .nav-link{color:var(--md-sys-color-on-surface);padding:.75rem 1rem;border-radius:var(--md-shape-corner-full);transition:all var(--md-duration-short) var(--md-ease-standard);position:relative}.navbar-nav .nav-link:hover{background:var(--md-state-hover);color:var(--md-sys-color-primary)}.navbar-nav .nav-link.active{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.nav-rail{width:80px;background:var(--md-sys-color-surface);box-shadow:var(--md-elevation-1);display:flex;flex-direction:column;align-items:center;padding:1rem 0}.nav-rail-item{width:64px;height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--md-shape-corner-large);color:var(--md-sys-color-on-surface-variant);text-decoration:none;transition:all var(--md-duration-short) var(--md-ease-standard);margin:.25rem 0}.nav-rail-item:hover{background:var(--md-state-hover);color:var(--md-sys-color-on-surface)}.nav-rail-item.active{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.list-group{border-radius:var(--md-shape-corner-medium);overflow:hidden}.list-group-item{background:var(--md-sys-color-surface);border:none;border-bottom:1px solid var(--md-sys-color-outline-variant);padding:1rem;transition:background-color var(--md-duration-short) var(--md-ease-standard)}.list-group-item:last-child{border-bottom:none}.list-group-item-action:hover{background:var(--md-state-hover)}.list-group-item-action:active{background:var(--md-state-pressed)}.chip{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem 1rem;border-radius:var(--md-shape-corner-small);background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant);font-size:.875rem;font-weight:500;border:1px solid transparent;transition:all var(--md-duration-short) var(--md-ease-standard)}.chip:hover{background:color-mix(in oklab,var(--md-sys-color-surface-variant) 80%,var(--md-sys-color-on-surface) 20%)}.chip-outlined{background:transparent;border-color:var(--md-sys-color-outline)}.chip-primary{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.modal-content{border-radius:var(--md-shape-corner-extra-large);border:none;box-shadow:var(--md-elevation-5)}.modal-header{border-bottom:none;padding:1.5rem 1.5rem 1rem}.modal-body{padding:0 1.5rem 1rem}.modal-footer{border-top:none;padding:1rem 1.5rem 1.5rem;gap:.5rem}.nav-tabs{border-bottom:1px solid var(--md-sys-color-outline-variant)}.nav-tabs .nav-link{color:var(--md-sys-color-on-surface-variant);border:none;border-bottom:2px solid transparent;border-radius:0;padding:1rem 1.5rem;font-weight:500;transition:all var(--md-duration-short) var(--md-ease-standard)}.nav-tabs .nav-link:hover{color:var(--md-sys-color-primary);background:var(--md-state-hover);border-bottom-color:var(--md-sys-color-primary)}.nav-tabs .nav-link.active{color:var(--md-sys-color-primary);background:transparent;border-bottom-color:var(--md-sys-color-primary)}.progress{height:4px;background:var(--md-sys-color-surface-variant);border-radius:var(--md-shape-corner-full);overflow:hidden}.progress-bar{background:var(--md-sys-color-primary);transition:width var(--md-duration-long) var(--md-ease-standard)}.spinner-border{color:var(--md-sys-color-primary)}.toast{border-radius:var(--md-shape-corner-extra-small);border:none;box-shadow:var(--md-elevation-3);min-width:344px}.toast-body{padding:1rem;font-size:.875rem}.chat-messages{scrollbar-width:thin;scrollbar-color:var(--md-sys-color-outline-variant) transparent}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--md-sys-color-outline-variant);border-radius:var(--md-shape-corner-full)}.chat-message{max-width:80%;margin-bottom:1rem;animation:messageSlideIn var(--md-duration-medium) var(--md-ease-decelerate)}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.message-bubble{padding:.75rem 1rem;border-radius:var(--md-shape-corner-large);display:inline-block;max-width:100%;word-wrap:break-word;box-shadow:var(--md-elevation-1)}.chat-message.assistant .message-bubble{background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface)}.chat-message.user{text-align:right;margin-left:auto}.chat-message.user .message-bubble{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.material-icons,.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;vertical-align:middle;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga";font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.material-icons.md-18,.material-symbols-rounded.md-18{font-size:18px}.material-icons.md-24,.material-symbols-rounded.md-24{font-size:24px}.material-icons.md-36,.material-symbols-rounded.md-36{font-size:36px}.material-icons.md-48,.material-symbols-rounded.md-48{font-size:48px}.material-icons.filled,.material-symbols-rounded.filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.fade-in{animation:fadeIn var(--md-duration-medium) var(--md-ease-standard)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.scale-in{animation:scaleIn var(--md-duration-medium) var(--md-ease-decelerate)}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.slide-up{animation:slideUp var(--md-duration-medium) var(--md-ease-decelerate)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.surface{background:var(--md-sys-color-surface)}.surface-variant{background:var(--md-sys-color-surface-variant)}.surface-container{background:color-mix(in oklab,var(--md-sys-color-surface) 94%,var(--md-sys-color-primary) 6%)}.elevation-0{box-shadow:none}.elevation-1{box-shadow:var(--md-elevation-1)}.elevation-2{box-shadow:var(--md-elevation-2)}.elevation-3{box-shadow:var(--md-elevation-3)}.elevation-4{box-shadow:var(--md-elevation-4)}.elevation-5{box-shadow:var(--md-elevation-5)}.rounded-sm{border-radius:var(--md-shape-corner-small)}.rounded-md{border-radius:var(--md-shape-corner-medium)}.rounded-lg{border-radius:var(--md-shape-corner-large)}.rounded-xl{border-radius:var(--md-shape-corner-extra-large)}@media (max-width: 767.98px){.btn{padding:.5rem 1rem}.card{border-radius:var(--md-shape-corner-medium)}h1,.h1{font-size:2rem}h2,.h2{font-size:1.5rem}}.skip-to-content{position:absolute;top:-40px;left:0;background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);padding:.5rem 1rem;text-decoration:none;border-radius:var(--md-shape-corner-small);z-index:100}.skip-to-content:focus{top:.5rem;left:.5rem}@media print{.navbar,.btn,.nav-tabs{display:none!important}.card{border:1px solid #dee2e6!important;box-shadow:none!important}}.CodeMirror{border:1px solid var(--md-sys-color-outline-variant)!important;border-radius:var(--md-shape-corner-small)!important;font-family:Fira Code,Monaco,Menlo,Ubuntu Mono,monospace!important;font-size:14px!important;line-height:1.5!important;background-color:var(--md-sys-color-surface)!important;color:var(--md-sys-color-on-surface)!important;height:auto!important;min-height:300px!important;flex:1!important}.CodeMirror-scroll{min-height:300px!important;padding:12px!important}.CodeMirror.CodeMirror-focused{border-color:var(--md-sys-color-primary)!important;box-shadow:0 0 0 2px #1da7a033!important}.CodeMirror-linenumbers{background-color:var(--md-sys-color-surface-variant)!important;border-right:1px solid var(--md-sys-color-outline-variant)!important;padding:0 8px!important}.CodeMirror-linenumber{color:var(--md-sys-color-on-surface-variant)!important;font-size:12px!important}.CodeMirror-cursor{border-left:2px solid var(--md-sys-color-primary)!important}.CodeMirror-selected{background-color:var(--md-sys-color-primary-container)!important}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background-color:var(--md-sys-color-primary-container)!important}.CodeMirror-gutters{background-color:var(--md-sys-color-surface-variant)!important;border-right:1px solid var(--md-sys-color-outline-variant)!important}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar{background-color:var(--md-sys-color-surface-variant)!important}.cm-comment-triple-slash{color:var(--md-sys-color-tertiary)!important;font-style:italic!important;opacity:.8!important}.corpus-editor-fullscreen{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:1050!important;background:var(--md-sys-color-surface)!important;padding:60px 0 0!important}.corpus-editor-fullscreen .corpus-actions{position:fixed!important;top:0!important;left:0!important;right:0!important;background:var(--md-sys-color-surface)!important;border-bottom:1px solid var(--md-sys-color-outline-variant)!important;padding:.75rem 1rem!important;z-index:1051!important;display:flex!important;justify-content:space-between!important;align-items:center!important}.corpus-editor-fullscreen .corpus-content{height:calc(100vh - 60px)!important;padding:1rem!important}.corpus-editor-fullscreen .CodeMirror{height:100%!important;font-size:16px!important}.corpus-editor-fullscreen #corpusEditorContainer{height:100%!important}.corpus-editor-fullscreen .privacy-status-indicator,.corpus-editor-fullscreen .chat-container{display:none!important}.corpus-content{position:relative!important;width:100%!important;flex:1!important;display:flex!important;flex-direction:column!important;min-height:300px!important}#corpusEditor{display:none!important}.username-feedback{margin-top:.5rem;padding:.5rem;border-radius:var(--md-shape-corner-small);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.username-feedback.available{background-color:#4caf501a;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.username-feedback.unavailable{background-color:#f443361a;color:#f44336;border:1px solid rgba(244,67,54,.3)}.username-feedback .material-icons{font-size:18px}.username-suggestion{color:inherit;text-decoration:underline;cursor:pointer;font-weight:500}.username-suggestion:hover{text-decoration:none;opacity:.8}.floating-save-btn{position:fixed;bottom:2rem;right:2rem;background:var(--md-sys-color-primary, #1976d2);color:#fff!important;border:none;border-radius:28px;padding:.75rem 1.5rem;display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:500;cursor:pointer;box-shadow:0 4px 8px #0003;transition:all .3s ease;z-index:1000}.floating-save-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0000004d;background:var(--md-sys-color-primary-container, #1565c0);color:#fff!important}.floating-save-btn .material-icons,.floating-save-btn .material-symbols-rounded{font-size:20px}.floating-save-btn .btn-text{font-weight:500;color:var(--md-sys-color-on-primary, #fff)!important}.floating-save-btn:hover .btn-text{color:var(--md-sys-color-on-primary, #fff)!important}.profile-container .floating-save-btn,.profile-container .floating-save-btn .btn-text,.profile-container .floating-save-btn .material-symbols-rounded,.profile-container .floating-save-btn .material-icons{color:#fff!important}.corpus-html-view{flex:1;background:#fff;overflow-y:auto;min-height:300px;height:100%}*,*:before,*:after{animation:none!important;transition:none!important}.typing-dots span{animation:typing 1.2s infinite ease-in-out both!important}.spinner-border{animation:spinner-border .75s linear infinite!important}.fade,.toast,.alert{transition:opacity .15s ease-in-out!important}.corpus-html-content{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:var(--md-sys-color-on-surface)}.corpus-html-content h1{font-size:2rem;margin:1.5rem 0 1rem;color:var(--md-sys-color-primary);border-bottom:2px solid var(--md-sys-color-primary);padding-bottom:.5rem}.corpus-html-content h2{font-size:1.5rem;margin:1.25rem 0 .75rem;color:var(--md-sys-color-secondary)}.corpus-html-content h3{font-size:1.25rem;margin:1rem 0 .5rem;color:var(--md-sys-color-tertiary)}.corpus-html-content p{margin:.75rem 0}.corpus-html-content strong{font-weight:600;color:var(--md-sys-color-on-surface)}.corpus-html-content em{font-style:italic}.corpus-empty-state{color:var(--md-sys-color-on-surface-variant)}.corpus-editor-container{flex:1;display:flex;flex-direction:column;background:#fff;min-height:300px}#corpusEditorContainer{flex:1;width:100%;position:relative;display:flex;flex-direction:column}#corpusEditorContainer .CodeMirror{flex:1;height:auto!important;min-height:300px;border:1px solid #ddd;border-radius:4px}.typing-indicator{display:inline-flex;align-items:center;padding:8px 12px}.typing-indicator .typing-dots{display:inline-flex;align-items:center;gap:4px}.typing-dots span{display:inline-block;width:8px;height:8px;background:var(--md-sys-color-on-surface-variant);border-radius:50%;animation:typing 1.4s infinite ease-in-out both}.typing-dots span:nth-child(1){animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}.typing-dots span:nth-child(3){animation-delay:0s}.image-upload-area{border:2px dashed var(--md-sys-color-outline-variant);border-radius:12px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s ease;position:relative;min-height:150px;display:flex;align-items:center;justify-content:center}.image-upload-area:hover{border-color:var(--md-sys-color-primary);background-color:var(--md-sys-color-primary-container, rgba(33, 150, 243, .08))}.image-upload-area .upload-placeholder{color:var(--md-sys-color-on-surface-variant)}.image-upload-area .upload-placeholder .material-icons{font-size:48px;margin-bottom:.5rem;color:var(--md-sys-color-primary)}.image-upload-area .upload-placeholder p{margin:.5rem 0;font-weight:500}.image-upload-area .upload-placeholder small{color:var(--md-sys-color-outline)}.image-upload-area .preview-image{max-width:100%;max-height:50vh;object-fit:cover;border-radius:8px}.banner-upload{width:100%;min-height:200px}.profile-upload{max-width:400px;margin:0 auto}.image-actions{position:absolute;bottom:1rem;right:1rem;display:flex;gap:.5rem}.chat-message{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;position:relative}.chat-message.user{flex-direction:row-reverse}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;overflow:hidden}.message-avatar.assistant{background:var(--md-sys-color-primary-container, #e3f2fd);color:var(--md-sys-color-on-primary-container, #1976d2)}.message-avatar.user{background:var(--md-sys-color-secondary-container, #f3e5f5);color:var(--md-sys-color-on-secondary-container, #7b1fa2)}.message-avatar img{width:100%;height:100%;object-fit:cover}.message-avatar .material-icons,.message-avatar .material-symbols-rounded{font-size:20px}.message-content{max-width:70%;padding:.75rem 1rem;border-radius:18px;background:#fff;position:relative;box-shadow:0 1px 2px #0000001a}.message-content.user{background:var(--md-sys-color-primary-container, #e3f2fd);color:var(--md-sys-color-on-primary-container, #0d47a1)}.message-content.assistant{background:#fff;color:var(--md-sys-color-on-surface, #212121)}.rating-controls-wrapper{margin-top:-.5rem;padding-left:44px;display:flex;justify-content:flex-start}.chat-message.assistant .rating-controls-wrapper{max-width:70%}.rating-controls{display:inline-flex;gap:4px;opacity:.7;transition:opacity .2s ease;background:#fff;border-radius:18px;padding:4px 8px;box-shadow:0 1px 2px #0000001a}.chat-message:hover .rating-controls{opacity:1}.rating-controls button{background:transparent;border:none;cursor:pointer;color:var(--md-sys-color-outline);padding:4px;border-radius:50%;transition:all .2s ease;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center}.rating-controls button:hover{background:var(--md-sys-color-surface-variant);color:var(--md-sys-color-on-surface-variant)}.rating-controls button.active{color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container)}.rating-controls button.active:hover{background:var(--md-sys-color-primary-container);opacity:.8}.message-content .rating-inline{display:block;width:100%;margin-top:.5rem}.message-content .rating-inline .rating-controls{display:inline-flex}@media (max-width: 768px){.rating-controls-wrapper{padding-left:36px}.rating-controls{opacity:1}.rating-controls button{font-size:16px;padding:2px}.message-content{max-width:85%}}.message-text{margin:0;line-height:1.5}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.chat-buttons{display:flex;gap:.5rem;align-items:center}.chat-buttons .btn{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.chat-buttons .material-icons{font-size:18px}@media (max-width: 768px){.profile-header{flex-direction:column;align-items:stretch}.chat-buttons{justify-content:center}.chat-buttons .btn{flex:1;justify-content:center}#chatResumeBuilderBtn{font-size:0}#chatResumeBuilderBtn .material-icons{font-size:18px}#chatResumeBuilderBtn:after{content:"Resume Chat";font-size:.875rem;margin-left:.25rem}.chat-agent-btn{font-size:0}.chat-agent-btn .material-icons{font-size:18px}.chat-agent-btn:after{content:"Agent Chat";font-size:.875rem;margin-left:.25rem}.corpus-container{position:relative}.mobile-view-toggle{display:block;position:fixed;bottom:1rem;right:1rem;z-index:1010;border-radius:50%;width:56px;height:56px;box-shadow:0 4px 12px #00000026}.corpus-container{flex-direction:column}.chat-panel,.corpus-tab-content{flex:none;width:100%;height:50vh}.corpus-container.mobile-resume-view .chat-panel{display:none}.corpus-container.mobile-resume-view .corpus-tab-content,.corpus-container.mobile-chat-view .chat-panel{display:block;width:100%;height:calc(100vh - 120px)}.corpus-container.mobile-chat-view .corpus-tab-content{display:none}}.usage-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:1rem}.usage-stat-item{text-align:center;padding:1rem;background:var(--md-sys-color-surface-variant);border-radius:8px;border:1px solid var(--md-sys-color-outline-variant)}.usage-stat-number{font-size:1.5rem;font-weight:600;color:var(--md-sys-color-primary);line-height:1}.usage-stat-label{font-size:.875rem;color:var(--md-sys-color-on-surface-variant);margin-top:.25rem}.usage-progress .progress{height:8px;background-color:var(--md-sys-color-surface-variant);border-radius:4px}.usage-progress .progress-bar{background-color:var(--md-sys-color-primary);border-radius:4px;transition:width .3s ease}@media only screen and (max-width: 600px){.hide-mobile{display:none!important}.text-center-mobile{text-align:center!important}.full-width-mobile{width:100%!important}}@media only screen and (min-width: 600px){.hide-sm-up{display:none!important}}@media only screen and (min-width: 768px){.hide-md-up{display:none!important}}@media only screen and (min-width: 992px){.hide-lg-up{display:none!important}}@media only screen and (min-width: 1200px){.hide-xl-up{display:none!important}}.responsive-padding{padding:1rem}@media (min-width: 768px){.responsive-padding{padding:2rem}}@media (min-width: 992px){.responsive-padding{padding:3rem}}.responsive-text{font-size:.9rem}@media (min-width: 768px){.responsive-text{font-size:1rem}}@media (min-width: 992px){.responsive-text{font-size:1.1rem}}#mainNavbar{background:var(--md-sys-color-surface, #ffffff);border-bottom:1px solid var(--md-sys-color-outline-variant, #e0e0e0);transition:box-shadow .2s ease}#mainNavbar.elevation-1{box-shadow:0 1px 3px #0000000d}#mainNavbar .navbar-brand{font-weight:600;color:var(--md-sys-color-on-surface, #1a1a1a);transition:opacity .2s ease}#mainNavbar .navbar-brand:hover{opacity:.8}#mainNavbar .nav-link{color:var(--md-sys-color-on-surface-variant, #424242);padding:.5rem .75rem;border-radius:8px;transition:background-color .2s ease,color .2s ease;display:flex;align-items:center;position:relative!important;overflow:hidden!important}#mainNavbar .nav-link:hover{background-color:var(--md-sys-color-surface-variant, #f5f5f5);color:var(--md-sys-color-on-surface, #1a1a1a)}#mainNavbar .nav-link.active{background-color:var(--md-sys-color-primary-container, #e8f5e9);color:var(--md-sys-color-on-primary-container, #2e7d32);font-weight:500}#mainNavbar .nav-link .material-symbols-rounded{font-size:20px;vertical-align:middle}#mainNavbar .dropdown-menu{border:1px solid var(--md-sys-color-outline-variant, #e0e0e0);box-shadow:0 4px 6px #0000001a;border-radius:12px;padding:.5rem}#mainNavbar .dropdown-item{border-radius:8px;padding:.5rem 1rem;transition:background-color .2s ease;display:flex;align-items:center}#mainNavbar .dropdown-item:hover{background-color:var(--md-sys-color-surface-variant, #f5f5f5)}#mainNavbar .dropdown-item .material-symbols-rounded{font-size:20px}#mainNavbar .dropdown-divider{margin:.5rem 0;opacity:.2}#mainNavbar #navUser .dropdown-toggle:after,#mainNavbar .nav-item.dropdown .dropdown-toggle:after{display:none}#mainNavbar #navUser img,#mainNavbar .nav-item.dropdown img{object-fit:cover}#mainNavbar .dropdown-menu .px-3.py-2{background:var(--md-sys-color-surface-variant, #f5f5f5);border-radius:8px;margin-bottom:.5rem}@media (max-width: 991px){#mainNavbar .navbar-nav{padding:1rem 0}#mainNavbar .nav-link{padding:.75rem 1rem;margin:.25rem 0}#mainNavbar .dropdown-menu{position:static!important;box-shadow:none;border:none;background:var(--md-sys-color-surface-variant, #f5f5f5);margin:.5rem 0}}[data-bs-theme=dark] #mainNavbar{background:var(--md-sys-color-surface, #1a1a1a);border-bottom-color:var(--md-sys-color-outline-variant, #424242)}[data-bs-theme=dark] #mainNavbar .navbar-brand{color:var(--md-sys-color-on-surface, #e0e0e0)}[data-bs-theme=dark] #mainNavbar .nav-link{color:var(--md-sys-color-on-surface-variant, #b0b0b0)}[data-bs-theme=dark] #mainNavbar .nav-link:hover{background-color:var(--md-sys-color-surface-variant, #2c2c2c);color:var(--md-sys-color-on-surface, #e0e0e0)}[data-bs-theme=dark] #mainNavbar .nav-link.active{background-color:var(--md-sys-color-primary-container, #004d40);color:var(--md-sys-color-on-primary-container, #4db6ac)}[data-bs-theme=dark] #mainNavbar .dropdown-menu{background:var(--md-sys-color-surface, #1a1a1a);border-color:var(--md-sys-color-outline-variant, #424242)}[data-bs-theme=dark] #mainNavbar .dropdown-item{color:var(--md-sys-color-on-surface, #e0e0e0)}[data-bs-theme=dark] #mainNavbar .dropdown-item:hover{background-color:var(--md-sys-color-surface-variant, #2c2c2c)}#mainNavbar .navbar-toggler{border:none;padding:.25rem .5rem}#mainNavbar .navbar-toggler:focus{box-shadow:none}#mainNavbar .navbar-toggler .material-symbols-rounded{font-size:24px}#mainNavbar.sticky-top{position:sticky;top:0;z-index:1030}.navbar-scrolled{box-shadow:0 2px 4px #0000001a!important}.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 200px);min-height:250px;overflow-y:auto;padding:1rem;background:var(--md-sys-color-surface, #ffffff);border-radius:12px;margin-bottom:1rem}.chat-message,.message{display:flex;gap:12px;margin-bottom:16px;align-items:flex-start;animation:fadeIn .3s ease-in}.chat-message.user,.message.user{flex-direction:row-reverse}.message-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;transition:transform .2s ease}.message-avatar.assistant,.message.assistant .message-avatar,.chat-message.assistant .message-avatar{background:var(--md-sys-color-primary-container, #e8f5e9);color:var(--md-sys-color-on-primary-container, #2e7d32)}.message-avatar.user,.message.user .message-avatar,.chat-message.user .message-avatar{background:var(--md-sys-color-secondary-container, #f3e5f5);color:var(--md-sys-color-on-secondary-container, #7b1fa2)}.message-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.message-avatar:hover{transform:scale(1.05)}.message-content{flex:1;max-width:70%;background:var(--md-sys-color-surface-variant, #f5f5f5);padding:12px 16px;border-radius:12px;word-wrap:break-word;line-height:1.5}.message.user .message-content,.chat-message.user .message-content{background:var(--md-sys-color-primary, #1976d2);color:var(--md-sys-color-on-primary, #ffffff);margin-left:auto}.message.assistant .message-content,.chat-message.assistant .message-content{background:var(--md-sys-color-surface-variant, #f5f5f5);color:var(--md-sys-color-on-surface, #1a1a1a)}.message-actions{display:flex;gap:8px;margin-top:8px}.rating-btn{background:transparent;border:1px solid var(--md-sys-color-outline, #e0e0e0);border-radius:20px;padding:4px 12px;font-size:12px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px}.rating-btn:hover{background:var(--md-sys-color-surface-variant, #f5f5f5);border-color:var(--md-sys-color-primary, #1976d2)}.rating-btn.active{background:var(--md-sys-color-primary, #1976d2);color:var(--md-sys-color-on-primary, #ffffff);border-color:var(--md-sys-color-primary, #1976d2)}.typing-indicator{display:flex;gap:12px;margin-bottom:16px;align-items:center}.typing-indicator .message-avatar{background:var(--md-sys-color-primary-container, #e8f5e9);color:var(--md-sys-color-on-primary-container, #2e7d32)}.typing-dots{display:flex;gap:4px;padding:12px 16px;background:var(--md-sys-color-surface-variant, #f5f5f5);border-radius:12px}.typing-dots span{width:8px;height:8px;border-radius:50%;background:var(--md-sys-color-outline, #757575);animation:typing 1.4s;animation-iteration-count:20}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-10px);opacity:1}}.typing-indicator-wrapper{animation:fadeIn .3s ease-in;animation-duration:30s;animation-fill-mode:forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}[data-bs-theme=dark] .chat-messages,[data-bs-theme=dark] #chatMessages,[data-bs-theme=dark] #resumeChatMessages{background:var(--md-sys-color-surface, #1a1a1a)}[data-bs-theme=dark] .message-content{background:var(--md-sys-color-surface-variant, #2c2c2c)}[data-bs-theme=dark] .message.assistant .message-content,[data-bs-theme=dark] .chat-message.assistant .message-content{background:var(--md-sys-color-surface-variant, #2c2c2c);color:var(--md-sys-color-on-surface, #e0e0e0)}[data-bs-theme=dark] .typing-dots{background:var(--md-sys-color-surface-variant, #2c2c2c)}@media (min-height: 1200px){.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 180px)}}@media (min-height: 900px) and (max-height: 1200px){.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 200px)}}@media (min-height: 600px) and (max-height: 900px){.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 220px)}}@media (max-height: 600px){.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 250px);min-height:200px}}@media (max-height: 500px) and (orientation: landscape){.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 200px);min-height:150px}}@media (max-width: 768px){.message-content{max-width:85%}.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 280px)}}@media (min-width: 768px) and (max-width: 1024px){.chat-messages,#chatMessages,#resumeChatMessages{height:calc(100vh - 200px)}}.profile-content .sticky-top{top:80px}.upload-zone{border:2px dashed var(--bs-gray-400);border-radius:12px;padding:2rem;text-align:center;background:var(--bs-gray-100);transition:all .3s ease;cursor:pointer;position:relative}.upload-zone:hover{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.05)}.upload-zone.drag-over{border-color:var(--bs-success);background:rgba(var(--bs-success-rgb),.1);transform:scale(1.02)}.upload-icon{width:64px;height:64px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;background:var(--bs-primary);color:#fff;border-radius:50%;font-size:28px}.mini-preview-card{position:absolute;top:1rem;right:1rem;width:80px;height:80px;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #00000026;background:#fff;z-index:10}.mini-preview-card img{width:100%;height:100%;object-fit:cover}.mini-preview-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bs-gray-200);color:var(--bs-gray-500);font-size:32px}.upload-actions{display:flex;gap:1rem;justify-content:center;margin-top:1rem}.image-guidelines{margin-top:1rem;padding:1rem;background:var(--bs-light);border-radius:8px;font-size:.875rem}.image-guidelines ul{margin:.5rem 0 0;padding-left:1.5rem}.image-guidelines li{margin-bottom:.25rem}#profileImagePreview{max-width:128px;max-height:128px;width:auto!important;height:auto!important;object-fit:cover}#bannerImagePreview{max-width:100%;max-height:240px;width:100%;height:auto;object-fit:cover}.banner-upload-zone{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center}
