.app{min-height:100vh;min-height:100dvh;height:100%;display:flex;flex-direction:column;background:#1e1e1e;overflow:hidden}.chat-container{flex:1;min-height:0;display:flex;flex-direction:column;max-width:100%;margin:0 auto;overflow:hidden;position:relative}.messages-area{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:2rem;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:#333 #0f0f0f;-webkit-overflow-scrolling:touch}.messages-area::-webkit-scrollbar{width:8px}.messages-area::-webkit-scrollbar-track{background:#0f0f0f}.messages-area::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.messages-area::-webkit-scrollbar-thumb:hover{background:#444}.welcome-screen{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.welcome-screen h1{font-size:2.5rem;font-weight:400;color:#fff;opacity:.9}.messages-list{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:2rem}.message{display:flex;max-width:85%;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end;margin-left:auto}.message.assistant{align-self:flex-start}.message-content{padding:1rem 1.25rem;border-radius:1rem;line-height:1.6;font-size:1rem;white-space:pre-wrap;word-wrap:break-word}.message.user .message-content{background:#2a2a2a;color:#fff}.message.assistant .message-content{background:#1a1a1a;color:#e0e0e0;border:1px solid #2a2a2a}.sources{margin-top:1rem;padding-top:1rem;border-top:1px solid #333;font-size:.85rem}.sources strong{display:block;margin-bottom:.75rem;color:#888;font-size:.9rem}.citation-item{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:.5rem;padding:.75rem;margin-bottom:.5rem;font-size:.85rem}.citation-header{display:flex;gap:1rem;margin-bottom:.25rem;align-items:center}.law-name{font-weight:600;color:#4a9eff;font-size:.95rem}.section{background:#2a2a2a;padding:.2rem .5rem;border-radius:.25rem;font-weight:500;color:orange;font-size:.8rem}.citation-details{display:flex;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.jurisdiction,.country,.page{background:#2a2a2a;padding:.15rem .4rem;border-radius:.2rem;font-size:.75rem;color:#aaa}.citation-text{color:#888;font-style:italic;font-size:.8rem;line-height:1.3}.jurisdiction-info{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:.5rem;padding:.75rem;margin-top:.75rem;font-size:.85rem;color:#e0e0e0}.jurisdiction-info strong{color:#888;margin-right:.5rem}.chunks-used{color:#666;font-size:.8rem;margin-left:.5rem}.source-tag{display:inline-block;background:#2a2a2a;padding:.25rem .5rem;border-radius:.25rem;margin:.25rem .25rem .25rem 0;font-size:.75rem;color:#aaa}.typing-indicator{display:flex;gap:.5rem;padding:.5rem 0}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:#888;animation:typing 1.4s infinite}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-10px);opacity:1}}.input-area{padding:1rem 1.5rem;background:transparent;border-top:none}.input-container{max-width:100%;margin:0 auto;display:flex;align-items:center;gap:.5rem;background:transparent;border:none;border-radius:0;padding:.25rem 0;transition:border-color .2s}.input-container:focus-within{border-color:transparent}.chat-input{flex:1;min-width:200px;background:transparent;border:none;outline:none;color:#fff;font-size:1rem;font-family:inherit;padding:.5rem 0}.chat-input:disabled{opacity:.5;cursor:not-allowed}.send-button{background:transparent;border:none;color:#fff;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:.5rem;transition:background .2s;opacity:.7}.send-button:hover:not(:disabled){background:#2a2a2a;opacity:1}.send-button:disabled{opacity:.3;cursor:not-allowed}.send-button svg{width:20px;height:20px}.language-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;padding:2rem;text-align:center}.language-selection h1{font-size:2.5rem;font-weight:400;color:#fff;margin-bottom:3rem;opacity:.9}.language-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;max-width:800px;width:100%}.language-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:1rem;padding:2rem;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:1rem;color:#fff;font-size:1.1rem}.language-card:hover{background:#2a2a2a;border-color:#4a4a4a;transform:translateY(-2px)}.language-card .flag{font-size:3rem}.language-card .language-name{font-weight:500}.language-card.more{opacity:.7}.language-card.more:hover{opacity:1}.more-text{font-size:1rem;color:#888}.selection-area{padding:1.5rem;background:#0f0f0f;border-top:1px solid #1a1a1a}.selection-area h3{color:#fff;margin-bottom:1rem;font-size:1.2rem;font-weight:500}.button-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;max-height:300px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#333 #0f0f0f}.button-grid::-webkit-scrollbar{width:6px}.button-grid::-webkit-scrollbar-track{background:#0f0f0f}.button-grid::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.selection-button{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:.75rem;padding:1rem;color:#fff;cursor:pointer;transition:all .2s ease;font-size:.95rem;display:flex;align-items:center;gap:.5rem;justify-content:center}.selection-button:hover{background:#2a2a2a;border-color:#4a4a4a;transform:translateY(-1px)}.selection-button .flag{font-size:1.5rem}.questions-form{padding:1.5rem;background:#0f0f0f;border-top:1px solid #1a1a1a}.questions-form h3{color:#fff;margin-bottom:1.5rem;font-size:1.2rem;font-weight:500}.offense-form{display:flex;flex-direction:column;gap:1.25rem;max-width:600px;margin:0 auto}.form-group label{color:#e0e0e0;font-size:.95rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:.75rem;padding:.75rem 1rem;color:#fff;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4a4a4a}.form-group textarea{resize:vertical;min-height:80px}.submit-button{background:#2a2a2a;border:1px solid #4a4a4a;border-radius:.75rem;padding:1rem 2rem;color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;margin-top:.5rem}.submit-button:hover{background:#3a3a3a;border-color:#5a5a5a;transform:translateY(-1px)}@media (max-width: 768px){body{font-size:15px;line-height:1.6}.app{height:100vh;overflow:hidden}.chat-container{height:100vh;display:flex;flex-direction:column;position:relative}h1{font-size:1.75rem;line-height:1.3}h2{font-size:1.5rem;line-height:1.3}h3{font-size:1.25rem;line-height:1.4}p{font-size:.95rem;line-height:1.6;margin-bottom:.75rem}button{min-height:44px;padding:10px 16px;font-size:.95rem}input,textarea{font-size:16px;padding:10px 12px}.messages-area{padding:1rem .5rem;padding-bottom:200px!important;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-bottom:0}.message{max-width:95%}.welcome-screen h1{font-size:2rem;padding:0 1rem}.input-area{padding:10px;position:fixed;bottom:0;left:0;right:0;z-index:100}.language-grid{grid-template-columns:1fr;gap:1rem}.button-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.chat-interface{padding-bottom:0}}@media (max-width: 480px){body{font-size:14px}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1rem}p{font-size:.9rem}button{padding:8px 14px;font-size:.9rem}}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#0f0f0f;color:#fff}.loading-spinner-large{width:50px;height:50px;border:4px solid rgba(16,163,127,.2);border-top-color:#10a37f;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.lawyer-registration-container{width:100%;max-width:100%;background:transparent;color:#e0e0e0}.registration-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #404040}.registration-header h1{color:#00bcd4;font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.registration-header p{color:#b0b0b0;font-size:.95rem;margin:0}.progress-indicator{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:0 1rem}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;position:relative}.progress-step:not(:last-child):after{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background:#404040;z-index:-1}.progress-step.completed:not(:last-child):after{background:#00bcd4}.step-number{width:32px;height:32px;border-radius:50%;background:#2d2d2d;border:2px solid #404040;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#888;transition:all .3s}.progress-step.active .step-number{background:#00bcd4;border-color:#00bcd4;color:#fff;box-shadow:0 0 20px #00bcd480}.progress-step.completed .step-number{background:#00bcd4;border-color:#00bcd4;color:#fff}.step-label{font-size:.75rem;color:#888;text-align:center;font-weight:600}.progress-step.active .step-label,.progress-step.completed .step-label{color:#00bcd4}.registration-content{animation:slideIn .4s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.registration-step h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.step-description{color:#b0b0b0;font-size:.95rem;margin:0 0 2rem;line-height:1.6}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-group.full-width{grid-column:1 / -1}.form-group input,.form-group select,.form-group textarea{padding:.75rem 1rem;background:#2d2d2d;border:1px solid #404040;border-radius:8px;color:#fff;font-size:.95rem;font-family:inherit;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#00bcd4;box-shadow:0 0 0 2px #00bcd41a;background:#1a1a1a}.form-group textarea{resize:vertical;min-height:100px;line-height:1.6}.form-group small{color:#888;font-size:.8rem}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ff6b6b}.error-message{color:#ff6b6b;font-size:.8rem;margin-top:.25rem}.multi-select-options{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.option-chip{padding:.5rem 1rem;background:#2d2d2d;border:1px solid #404040;border-radius:20px;color:#e0e0e0;font-size:.875rem;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.option-chip:hover{background:#3d3d3d;border-color:#00bcd4}.option-chip.selected{background:#00bcd4;border-color:#00bcd4;color:#fff;font-weight:600}.file-upload-area{border:2px dashed #404040;border-radius:12px;padding:2rem;text-align:center;background:#2d2d2d;cursor:pointer;transition:all .2s}.file-upload-area:hover{border-color:#00bcd4;background:#00bcd40d}.file-upload-area.has-file{border-style:solid;border-color:#00bcd4;background:#00bcd41a}.upload-icon{width:48px;height:48px;margin:0 auto 1rem;color:#00bcd4}.file-upload-area p{color:#e0e0e0;font-weight:600;margin:0 0 .5rem}.file-upload-area small{color:#888;font-size:.85rem}.file-info{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#1a1a1a;border-radius:8px;margin-top:.75rem}.file-details{display:flex;align-items:center;gap:.75rem}.file-name{color:#e0e0e0;font-weight:600;font-size:.9rem}.file-size{color:#888;font-size:.8rem}.remove-file-btn{background:transparent;border:1px solid #404040;border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#e0e0e0;transition:all .2s}.remove-file-btn:hover{border-color:#ff6b6b;color:#ff6b6b;background:#ff6b6b1a}.upload-progress-bar{width:100%;height:4px;background:#2d2d2d;border-radius:2px;overflow:hidden;margin-top:.5rem}.upload-progress-fill{height:100%;background:linear-gradient(90deg,#00bcd4,#0097a7);transition:width .3s ease;border-radius:2px}.terms-group{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#00bcd40d;border:1px solid rgba(0,188,212,.2);border-radius:10px;margin:2rem 0}.terms-group input[type=checkbox]{margin-top:.25rem;width:20px;height:20px;cursor:pointer}.terms-group label{color:#e0e0e0;font-size:.9rem;line-height:1.6;cursor:pointer}.terms-group a{color:#00bcd4;text-decoration:underline}.terms-group a:hover{color:#0097a7}.review-summary{display:grid;gap:1.5rem}.review-section{background:#2d2d2d;border:1px solid #404040;border-radius:12px;padding:1.5rem}.review-section h3{color:#00bcd4;font-size:1.1rem;font-weight:700;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #404040}.review-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #333}.review-item:last-child{border-bottom:none}.review-label{color:#888;font-size:.875rem;font-weight:600}.review-value{color:#e0e0e0;font-size:.875rem;text-align:right;max-width:60%}.review-chip{display:inline-block;padding:.25rem .75rem;background:#00bcd426;border:1px solid rgba(0,188,212,.3);border-radius:12px;color:#00bcd4;font-size:.8rem;margin:0 .25rem .25rem 0}.registration-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #404040}.btn-primary,.btn-secondary{padding:.875rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-secondary{background:transparent;border:1px solid #404040;color:#e0e0e0}.btn-secondary:hover:not(:disabled){border-color:#666;background:#2d2d2d}.btn-primary{background:linear-gradient(135deg,#00bcd4,#0097a7);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #00bcd466}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.registration-success{text-align:center;padding:3rem 2rem}.success-icon{font-size:4rem;margin-bottom:1rem;animation:successPop .6s ease-out}.registration-success h2{color:#00bcd4;font-size:1.75rem;font-weight:700;margin:0 0 1rem}.registration-success p{color:#b0b0b0;font-size:1rem;line-height:1.6;margin-bottom:2rem}@media (max-width: 768px){.form-grid{grid-template-columns:1fr}.progress-indicator{padding:0}.step-label{font-size:.65rem}.step-number{width:28px;height:28px;font-size:.8rem}.registration-footer{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}.multi-select-options{gap:.5rem}.option-chip{padding:.4rem .875rem;font-size:.8rem}}@media (max-width: 480px){.registration-header h1{font-size:1.35rem}.form-group input,.form-group select,.form-group textarea{font-size:16px}}.login-page{min-height:100vh;width:100%;background:#0a0a0a;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.login-background{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.bg-chat-interface{display:flex;width:90%;max-width:1200px;height:70vh;background:#111;border-radius:16px;overflow:hidden;border:1px solid #222}.bg-sidebar{width:60px;background:#0d0d0d;padding:16px 12px;display:flex;flex-direction:column;gap:12px;border-right:1px solid #1a1a1a}.bg-sidebar-item{width:36px;height:36px;background:#1a1a1a;border-radius:8px}.bg-sidebar-item.active{background:#2a2a2a}.bg-chat-main{flex:1;display:flex;flex-direction:column}.bg-chat-header{padding:16px 24px;border-bottom:1px solid #1a1a1a}.bg-header-text{width:120px;height:20px;background:#1a1a1a;border-radius:4px}.bg-chat-messages{flex:1;padding:24px;display:flex;flex-direction:column;gap:16px}.bg-message{border-radius:12px;padding:16px}.bg-message.user{width:60%;height:40px;background:#1a2a1a;margin-left:auto}.bg-message.user.short{width:40%}.bg-message.assistant{width:70%;height:80px;background:#1a1a2a}.bg-message.assistant.long{height:120px}.bg-chat-input{padding:16px 24px;border-top:1px solid #1a1a1a}.bg-input-box{height:50px;background:#1a1a1a;border-radius:25px}.blur-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.login-modal{position:relative;z-index:10;width:100%;max-width:420px;margin:0 auto;background:#111;border:1px solid #2a2a2a;border-radius:16px;padding:40px 36px;box-shadow:0 25px 80px #00000080;animation:modalSlideIn .3s ease-out;max-height:calc(100vh - 32px);overflow-y:auto}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;background:transparent;border:none;color:#666;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.modal-close:hover{background:#222;color:#fff}.modal-logo{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:20px;flex-shrink:0}.modal-logo svg{width:48px;height:48px}.modal-logo-text{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:.05em}.modal-title{font-size:1.5rem;font-weight:600;color:#fff;text-align:center;margin-bottom:8px}.modal-subtitle{font-size:.875rem;color:#888;text-align:center;margin-bottom:28px}.modal-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:12px 16px;border-radius:8px;font-size:.875rem;margin-bottom:20px;text-align:center}.modal-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e;padding:12px 16px;border-radius:8px;font-size:.875rem;margin-bottom:20px;text-align:center}.modal-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.modal-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px 20px;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;color:#fff;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.modal-btn:hover:not(:disabled){background:#222;border-color:#3a3a3a}.modal-btn:disabled{opacity:.6;cursor:not-allowed}.modal-btn .btn-icon{flex-shrink:0}.google-btn:hover:not(:disabled){background:#1a2020;border-color:#34a853}.guest-btn{background:#1a1a1a;border-color:#4a4a4a;color:#fff}.guest-btn:hover:not(:disabled){background:#2a2a2a;border-color:#6a6a6a}.microsoft-btn:hover:not(:disabled){background:#1a1a25;border-color:#00a4ef}.email-btn:hover:not(:disabled){background:#201a1a;border-color:#666}.modal-divider{display:flex;align-items:center;margin:24px 0}.modal-divider:before,.modal-divider:after{content:"";flex:1;height:1px;background:#2a2a2a}.modal-divider span{padding:0 16px;color:#666;font-size:.8rem;font-weight:500;letter-spacing:.05em}.quick-email-form{display:flex;flex-direction:column;gap:12px}.modal-input{width:100%;padding:14px 16px;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:8px;color:#fff;font-size:.95rem;transition:all .2s}.modal-input::placeholder{color:#555}.modal-input:focus{outline:none;border-color:#444;background:#111}.modal-input:disabled{opacity:.6;cursor:not-allowed}.modal-continue-btn{width:100%;padding:14px 24px;background:#fff;border:none;border-radius:8px;color:#000;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-height:48px}.modal-continue-btn:hover:not(:disabled){background:#e5e5e5}.modal-continue-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{width:20px;height:20px;border:2px solid rgba(0,0,0,.2);border-top-color:#000;border-radius:50%;animation:spin .8s linear infinite}.modal-signup-link{text-align:center;color:#888;font-size:.875rem;margin-top:24px}.modal-signup-link button{background:none;border:none;color:#fff;font-weight:600;cursor:pointer;text-decoration:underline;font-size:.875rem}.modal-signup-link button:hover{color:#ccc}.modal-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.85rem;color:#888;font-weight:500}.forgot-password-link{background:none;border:none;color:#888;font-size:.85rem;cursor:pointer;text-align:left;padding:0;margin-top:-8px;transition:color .2s}.forgot-password-link:hover{color:#fff;text-decoration:underline}.back-link{background:none;border:none;color:#666;font-size:.85rem;cursor:pointer;margin-top:16px;display:block;text-align:center;transition:color .2s}.back-link:hover{color:#fff}.otp-form{display:flex;flex-direction:column;align-items:center;gap:20px}.otp-inputs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.otp-digit{width:44px;height:52px;text-align:center;font-size:1.5rem;font-weight:600;border:2px solid #333;border-radius:8px;background:#1a1a1a;color:#fff;transition:border-color .2s}.otp-digit:focus{outline:none;border-color:#06b6d4}.otp-digit:disabled{opacity:.6;cursor:not-allowed}.resend-link{background:none;border:none;color:#666;font-size:.9rem;cursor:pointer;padding:8px 0}.resend-link:hover:not(:disabled){color:#06b6d4}.resend-link:disabled{cursor:not-allowed;opacity:.7}.modal-footer{margin-top:28px;padding-top:20px;border-top:1px solid #1a1a1a;text-align:center}.modal-footer p{font-size:.75rem;color:#555;line-height:1.6}.modal-footer a{color:#888;text-decoration:underline;transition:color .2s}.modal-footer a:hover{color:#fff}.bottom-banner{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:12px 20px;background:#141414e6;border:1px solid #2a2a2a;border-radius:50px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:20}.banner-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.7rem;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.05em}.banner-text{color:#ccc;font-size:.85rem}.banner-btn{background:#222;border:1px solid #333;color:#fff;font-size:.8rem;font-weight:500;padding:8px 16px;border-radius:20px;cursor:pointer;transition:all .2s}.banner-btn:hover{background:#333;border-color:#444}@media (max-width: 768px){.login-page{align-items:flex-start;padding:12px 0 24px}.login-modal{margin:16px;padding:24px 20px;max-width:calc(100% - 32px)}.modal-logo{gap:8px;margin-bottom:16px}.modal-logo svg{width:40px;height:40px}.modal-logo-text,.modal-title{font-size:1.25rem}.modal-subtitle{font-size:.875rem;margin-bottom:20px}.modal-btn{min-height:52px;padding:14px 20px;font-size:1rem}.bg-chat-interface{width:95%;height:60vh}.bottom-banner{bottom:16px;padding:12px 16px;gap:10px;max-width:calc(100% - 32px)}.banner-text{font-size:.8rem}.banner-btn{min-height:40px;padding:8px 14px;font-size:.85rem}}@media (max-width: 480px){.login-modal{margin:12px;padding:20px 16px}.modal-logo svg{width:36px;height:36px}.modal-logo-text,.modal-title{font-size:1.1rem}.modal-subtitle{font-size:.8rem}.modal-btn{min-height:48px;padding:12px 16px;font-size:.95rem}.banner-text{display:none}.banner-btn{min-height:36px;padding:6px 12px;font-size:.8rem}}.lawyer-registration-banner{margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,#00bcd41a,#0097a71a);border:1px solid rgba(0,188,212,.3);border-radius:12px;text-align:center}.lawyer-registration-banner p{margin:0 0 .75rem;color:#00bcd4;font-size:1rem;font-weight:600}.lawyer-register-link{background:none;border:none;color:#00bcd4;font-size:.95rem;font-weight:700;cursor:pointer;text-decoration:underline;padding:0;transition:all .2s}.lawyer-register-link:hover{color:#0097a7;transform:translate(2px)}.lawyer-registration-wrapper{width:100%;max-height:70vh;overflow-y:auto;margin-top:-1rem}.lawyer-registration-wrapper::-webkit-scrollbar{width:6px}.lawyer-registration-wrapper::-webkit-scrollbar-track{background:#2d2d2d}.lawyer-registration-wrapper::-webkit-scrollbar-thumb{background:#404040;border-radius:3px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chat-interface-wrapper{display:flex;min-height:100vh;min-height:100dvh;max-height:100vh;max-height:100dvh;background:#1e1e1e;color:#e0e0e0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;-webkit-overflow-scrolling:touch}.chat-interface{display:flex;flex-direction:column;flex:1;min-height:0;min-height:100dvh;max-height:100vh;max-height:100dvh;background:#0f1115;color:#e0e0e0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}.chat-header-clean{display:flex;align-items:center;justify-content:space-between;height:var(--header-h, 56px);min-height:var(--header-h, 56px);padding:0 clamp(12px,2vw,16px);padding-right:max(clamp(12px,2vw,16px),env(safe-area-inset-right,0px));padding-top:env(safe-area-inset-top,0);background:#0f0f10;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0;gap:clamp(8px,1.5vw,12px);min-width:0;width:100%;position:sticky;top:0;z-index:200;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.header-left-clean{display:flex;align-items:center;gap:clamp(8px,1.5vw,16px);min-width:0;flex:1 1 auto;overflow:hidden}.header-right-clean{display:flex;align-items:center;gap:clamp(8px,1.5vw,16px);flex-shrink:0;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-right:0}.header-right-clean::-webkit-scrollbar{display:none}.portal-indicator-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;transition:all .2s ease;box-shadow:0 2px 4px #0003}.portal-indicator-badge.user-portal{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:1px solid rgba(255,255,255,.2)}.portal-indicator-badge.lawyer-portal{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;border:1px solid rgba(255,255,255,.2);animation:glow-pulse 2s ease-in-out infinite}@keyframes glow-pulse{0%,to{box-shadow:0 2px 4px #0003,0 0 8px #f5576c4d}50%{box-shadow:0 2px 4px #0003,0 0 16px #f5576c80}}.hamburger-menu-btn{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;height:44px;background:transparent;border:none;color:#eaeaea;cursor:pointer;border-radius:8px;transition:background .2s ease;flex-shrink:0}.hamburger-menu-btn:hover{background:#ffffff14}.hamburger-menu-btn:active{transform:scale(.95)}.hamburger-menu-btn svg{width:24px;height:24px}.mobile-sidebar-backdrop{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:1000;animation:fadeIn .25s ease;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.mobile-sidebar-backdrop.visible{display:block}@media (max-width: 768px){.mobile-sidebar-backdrop.visible{display:block}}.legid-logo{font-size:15px;font-weight:500;color:#eaeaea;letter-spacing:.02em;padding-top:2px}.law-type-display{padding:6px 14px;background:#00bcd41f;border:1px solid rgba(0,188,212,.3);border-radius:6px;color:#00bcd4;font-size:13px;font-weight:600;white-space:nowrap}.voice-toggle-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#a1a1aa;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;flex-shrink:0;white-space:nowrap}.voice-toggle-btn:hover{background:#ffffff14}.voice-toggle-btn.active{background:#10a37f26;border-color:#10a37f4d;color:#10a37f}.language-display{padding:6px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:6px;color:#eaeaea;font-size:13px;font-weight:500}.header-selector-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#eaeaea;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap;flex-shrink:0}.header-selector-btn:hover{background:#ffffff1a;border-color:#ffffff26}.law-type-btn{background:#00bcd41a;border-color:#00bcd440;color:#00bcd4}.law-type-btn:hover{background:#00bcd433;border-color:#00bcd466}.language-btn{background:#8b5cf61a;border-color:#8b5cf640;color:#a78bfa}.language-btn:hover{background:#8b5cf633;border-color:#8b5cf666}.country-btn{background:#f59e0b1a;border-color:#f59e0b40;color:#fbbf24}.country-btn:hover{background:#f59e0b33;border-color:#f59e0b66}.offence-input-clean{padding:6px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px;color:#eaeaea;font-size:13px;width:160px;min-width:80px;flex-shrink:0;transition:all .15s ease}.offence-input-clean::placeholder{color:#71717a}.offence-input-clean:focus{outline:none;background:#ffffff0d;border-color:#ffffff1f}.profile-button-clean{background:transparent;border:none;padding:4px;cursor:pointer;border-radius:8px;transition:background .15s ease;flex-shrink:0}.profile-button-clean:hover{background:#ffffff0f}.profile-avatar-clean{width:32px;height:32px;border-radius:50%;background:#00bcd4;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff}.profile-avatar-img{width:32px;height:32px;border-radius:50%;object-fit:cover}.profile-avatar-large-img{width:48px;height:48px;border-radius:50%;object-fit:cover}.chat-header{display:none}.header-left{display:flex;align-items:center;gap:12px;flex:1;overflow-x:auto;overflow-y:hidden}.header-left::-webkit-scrollbar{height:0}.chat-header h1{margin:0;font-size:1.5rem;font-weight:600;color:#00d4ff}.legid-header-logo{font-size:1.25rem!important;font-weight:700!important;letter-spacing:.05em;color:#fff!important;text-shadow:0 0 10px rgba(255,255,255,.5),0 0 20px rgba(255,255,255,.3);font-family:Arial Black,Arial Bold,sans-serif!important;background:linear-gradient(135deg,#fff,#e0e0e0,#fff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.preferences-badge{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.pref-item{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:#1a1a1a;border:1px solid #404040;border-radius:20px;font-size:.8rem;color:#b0b0b0}.pref-clickable{cursor:pointer;transition:all .2s}.pref-clickable:hover{border-color:#00d4ff;color:#00d4ff;background:#00d4ff1a;transform:scale(1.05)}.law-type-badge{background:#00d4ff26;border-color:#00d4ff;color:#00d4ff;font-weight:600}.reset-prefs-btn{padding:.25rem .5rem;background:transparent;border:1px solid #404040;border-radius:6px;color:#b0b0b0;cursor:pointer;font-size:.9rem;transition:all .2s}.reset-prefs-btn:hover{border-color:#00d4ff;color:#00d4ff;background:#00d4ff1a}.offence-input{display:flex;flex-direction:column;gap:.5rem}.offence-input label{font-size:.875rem;color:#b0b0b0;font-weight:500}.offence-field{padding:.5rem .75rem;background:#1a1a1a;border:1px solid #404040;border-radius:6px;color:#e0e0e0;font-size:.875rem;min-width:150px;transition:border-color .2s}.offence-field:focus{outline:none;border-color:#00bcd4;box-shadow:0 0 0 2px #00bcd433}.profile-section{position:relative;display:flex;align-items:center}.profile-button{background:transparent;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.profile-button:hover{opacity:.8}.profile-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#00bcd4,#0097a7);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;color:#fff;text-transform:uppercase}.profile-avatar-large{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#00bcd4,#0097a7);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;color:#fff;text-transform:uppercase;flex-shrink:0}.profile-menu{position:absolute;top:calc(100% + 8px);right:0;background:#2d2d2d;border:1px solid #404040;border-radius:12px;min-width:280px;box-shadow:0 8px 24px #00000080;z-index:1000;padding:.5rem;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-menu-header{display:flex;align-items:center;gap:1rem;padding:.75rem}.profile-info{flex:1;min-width:0}.profile-name{font-weight:600;color:#fff;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-email{font-size:.85rem;color:#b0b0b0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-menu-divider{height:1px;background:#404040;margin:.5rem 0}.profile-menu-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem;background:transparent;border:none;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:.95rem;text-align:left;transition:all .2s}.profile-menu-item:hover{background:#404040}.profile-menu-item svg{flex-shrink:0;opacity:.8}.profile-menu-item span{flex:1}.upload-progress{padding:1rem 2rem;background:#2d2d2d;border-bottom:1px solid #404040;display:flex;align-items:center;gap:1rem;flex-shrink:0}.progress-bar{flex:1;height:6px;background:#404040;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#00bcd4,#0097a7);border-radius:3px;transition:width .3s ease}.upload-progress span{font-size:.875rem;color:#b0b0b0;white-space:nowrap}.messages-container{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px 12px;padding-bottom:calc(100px + env(safe-area-inset-bottom,0));background:#0f1115;position:relative;display:flex;flex-direction:column;align-items:center;-webkit-overflow-scrolling:touch}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#2d2d2d}.messages-container::-webkit-scrollbar-thumb{background:#404040;border-radius:3px}.drag-drop-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00bcd426;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:9999;border:4px dashed #00bcd4;border-radius:0;margin:0;padding:0;animation:pulse-border 1.5s ease-in-out infinite;pointer-events:none}.drag-drop-content{text-align:center;color:#00bcd4;pointer-events:none}.drag-drop-content svg{margin-bottom:1rem;animation:bounce 1s ease-in-out infinite}.drag-drop-content h2{font-size:2rem;margin:0 0 .5rem;font-weight:600}.drag-drop-content p{font-size:1rem;opacity:.8;margin:0}@keyframes pulse-border{0%,to{border-color:#00bcd4;background:#00bcd41a}50%{border-color:#00e5ff;background:#00bcd433}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.welcome-message{display:flex;align-items:center;justify-content:center;width:100%;max-width:40rem;margin:0 auto;padding:1rem 1.25rem;padding-bottom:calc(100px + env(safe-area-inset-bottom,0));box-sizing:border-box}.welcome-greeting{font-size:1.25rem;font-weight:500;color:#ffffffe6;text-align:center;margin:0;letter-spacing:-.01em;line-height:1.4}.mobile-welcome-screen{display:none;flex-direction:column;align-items:center;width:100%;padding:0 .75rem}.mobile-greeting{font-size:1.125rem;font-weight:600;color:#eaeaea;margin-bottom:.25rem;line-height:1.4}.mobile-subtitle{font-size:.9375rem;color:#ffffffb3;margin-bottom:1.25rem;font-weight:400;line-height:1.5}.suggestion-chips{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;width:100%;max-width:400px}.suggestion-chip{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#eaeaea;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left;min-height:44px;touch-action:manipulation}.suggestion-chip:hover{background:#ffffff14;border-color:#fff3}.suggestion-chip:active{transform:scale(.98)}.chip-icon{font-size:1.125rem;flex-shrink:0}.desktop-greeting{display:block;font-size:1.125rem}.input-footer{text-align:center;font-size:.7rem;color:var(--chatgpt-text-tertiary, rgba(255, 255, 255, .5));margin-top:.5rem;padding:0 .5rem;line-height:1.4}@media (max-width: 899px){.hamburger-menu-btn{display:flex}}@media (max-width: 1023px){.chat-header-clean .portal-indicator-badge,.chat-header-clean .country-btn,.chat-header-clean .offence-input-clean{display:none!important}}@media (max-width: 768px){.mobile-welcome-screen{display:flex}.desktop-greeting{display:none}.mobile-greeting{font-size:1rem;font-weight:600}.mobile-subtitle{font-size:.8125rem;margin-bottom:1rem}.suggestion-chips{max-width:100%;gap:8px}.suggestion-chip{padding:12px 14px;font-size:.8125rem}.chip-icon{font-size:1rem}.input-footer{font-size:.65rem}}@media (max-width: 480px){.mobile-greeting{font-size:1rem}.mobile-subtitle{font-size:.8125rem}.suggestion-chips{grid-template-columns:1fr;gap:8px}.suggestion-chip{padding:12px 14px;font-size:.875rem}}.message{margin-bottom:14px;display:flex;width:min(950px,92vw);padding:0 16px}.message.user{justify-content:flex-end}.message.assistant,.message.system{justify-content:flex-start}.message-bubble{max-width:80%;padding:12px 16px;border-radius:14px;position:relative;word-wrap:break-word;overflow-wrap:break-word;transition:all .2s ease}.message.user .message-bubble{background:#2a2d34;color:#e9e9ea;border:1px solid rgba(255,255,255,.1);padding:12px 16px;font-weight:500;font-size:.95rem;letter-spacing:.01em;line-height:1.3}.message.assistant .message-bubble{background:transparent;color:#e9e9ea;border:none;padding:12px 0;font-weight:500;font-size:.95rem;letter-spacing:.01em;line-height:1.5;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.message.assistant .message-bubble:hover{border-color:transparent}.message.system .message-bubble{display:none}.message-text{line-height:1.3;margin-bottom:.5rem;white-space:pre-wrap;color:#e0e0e0;font-weight:600;font-size:1.05rem;letter-spacing:.02em}.uploaded-image-preview{display:flex;flex-direction:column;gap:.5rem;max-width:100%}.preview-image{max-width:100%;max-height:400px;width:auto;height:auto;border-radius:8px;object-fit:contain;background:#1a1a1a;box-shadow:0 4px 12px #0000004d}.image-info{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;opacity:.9;padding:.25rem 0}.file-name{font-weight:500;color:#e0e0e0}.file-size{color:#b0b0b0;font-size:.8rem}.uploaded-document-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#00bcd41a;border:1px solid rgba(0,188,212,.3);border-radius:12px;max-width:400px;transition:all .3s ease}.uploaded-document-card:hover{background:#00bcd426;border-color:#00bcd480;transform:translateY(-2px);box-shadow:0 4px 12px #00bcd433}.document-icon{font-size:2.5rem;line-height:1;flex-shrink:0}.document-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.document-name{font-weight:600;color:#00bcd4;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-size{color:#fff9;font-size:.85rem;font-weight:400}.message-actions{display:flex;gap:.2rem;margin-top:.5rem;opacity:0;transition:opacity .2s ease;padding-top:.4rem;border-top:1px solid rgba(255,255,255,.1)}.message-bubble:hover .message-actions{opacity:1}.action-btn{padding:.25rem .4rem;min-width:28px;min-height:28px;background:transparent;border:1px solid transparent;border-radius:6px;color:#b0b0b0;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;font-size:.8rem}.action-btn:hover{background:#00bcd41a;border-color:#00bcd4;color:#00bcd4}.action-btn.active{color:#00bcd4;background:#00bcd433}.action-btn svg{stroke-width:2}.context-menu{background:#2d2d2d;border:1px solid #404040;border-radius:12px;padding:.5rem;box-shadow:0 8px 24px #00000080;min-width:200px;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.context-menu button{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;color:#e0e0e0;cursor:pointer;border-radius:8px;font-size:.9rem;text-align:left;transition:all .2s}.context-menu button:hover{background:#404040;color:#00bcd4}.context-menu button svg{flex-shrink:0;stroke-width:2}.new-chat-btn{padding:.5rem 1rem;background:transparent;border:1px solid #404040;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:.85rem;display:flex;align-items:center;gap:.5rem;transition:all .2s}.new-chat-btn:hover{border-color:#00bcd4;color:#00bcd4;background:#00bcd41a}.new-chat-btn svg{stroke-width:2}.voice-chat-toggle.active{border-color:#00bcd4;background:#00bcd433;color:#00bcd4}.summary-btn{background:linear-gradient(135deg,#4caf50,#45a049);border-color:#4caf50}.summary-btn:hover{border-color:#4caf50;background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 4px 12px #4caf504d}.header-controls{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.tts-controls{display:flex;align-items:center;gap:.75rem}.tts-btn{padding:.5rem 1rem;background:#2d2d2d;border:1px solid #404040;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:.85rem;display:flex;align-items:center;gap:.5rem;transition:all .2s;font-weight:500}.tts-btn:hover{border-color:#00bcd4;color:#00bcd4;background:#00bcd41a}.tts-btn.active{background:#00bcd433;border-color:#00bcd4;color:#00bcd4}.tts-btn.stop-btn{background:#ff6b6b33;border-color:#ff6b6b;color:#ff6b6b}.tts-btn.stop-btn:hover{background:#ff6b6b4d}.tts-lang-badge{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;background:#ffffff1a;border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.5px}.speaking-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#00bcd41a;border:1px solid #00bcd4;border-radius:8px;color:#00bcd4;font-size:.85rem;font-weight:500}.pulse{width:10px;height:10px;background:#00bcd4;border-radius:50%;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.citations{border-top:1px solid #404040;padding-top:1rem;margin-top:1rem}.citations strong{color:#00bcd4;display:block;margin-bottom:.5rem}.citation-item{background:#1a1a1a;border:1px solid #404040;border-radius:6px;padding:.75rem;margin-bottom:.5rem;font-size:.875rem}.citation-file{color:#00bcd4;font-weight:500}.citation-page{color:#b0b0b0;margin-left:.5rem}.citation-score{color:#4caf50;margin-left:.5rem;font-weight:500}.chunks-info{font-size:.75rem;color:#888;margin-top:.5rem;font-style:italic}.message-time{font-size:.7rem;color:#666;margin-top:.5rem;text-align:right}.typing-indicator{display:flex;gap:4px;padding:.5rem 0}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:#00bcd4;animation:typing 1.4s infinite}.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);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.loading-indicator-container{display:flex;align-items:center;justify-content:flex-start;padding:1.5rem 2rem;background:transparent;border:none;box-shadow:none;width:100%;max-width:800px}.loading-stage{font-size:1rem;font-weight:600;letter-spacing:.1em;display:inline-flex;align-items:center;gap:.5rem;padding:0;text-transform:uppercase;background:transparent;border:none;box-shadow:none}.loading-text{color:#fff6;opacity:.4}.blinking-dot-white{display:inline-block;width:10px;height:10px;background:#fff;border-radius:50%;animation:blinkBright 1s ease-in-out infinite;box-shadow:0 0 12px #ffffffe6,0 0 20px #fff9;flex-shrink:0}@keyframes blinkBright{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 12px #ffffffe6,0 0 20px #fff9}50%{opacity:.3;transform:scale(.9);box-shadow:0 0 8px #ffffff80,0 0 12px #ffffff4d}}.input-area{position:fixed;bottom:0;left:0;right:0;padding:12px 20px;background:#14161a;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0;display:flex;flex-direction:column;align-items:center;z-index:10}.input-container{display:flex;align-items:center;gap:8px;padding:14px 18px;background:#101218;border:1px solid rgba(255,255,255,.08);border-radius:14px;transition:all .2s;width:min(950px,92vw);min-height:56px}.input-container:focus-within{border-color:#00bcd4;box-shadow:0 0 0 2px #00bcd41a}.input-container:focus-within{border-color:#565656;background:#353535}.chat-input{flex:1;border:none;background:transparent;color:#e0e0e0;font-size:1.125rem;outline:none;padding:0;font-family:inherit}.chat-input::placeholder{color:#666}.upload-menu-container{position:relative}.plus-upload-btn{width:40px;height:40px;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:all .2s;flex-shrink:0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:700}.plus-upload-btn:hover:not(:disabled){transform:scale(1.1) rotate(90deg);box-shadow:0 4px 12px #667eea66}.plus-upload-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.upload-menu{position:absolute;bottom:50px;right:0;background:#2d2d2d;border:1px solid #404040;border-radius:12px;padding:.5rem;display:flex;flex-direction:column;gap:.25rem;min-width:150px;box-shadow:0 8px 24px #0006;z-index:1000;animation:slideUpMenu .2s ease-out}@keyframes slideUpMenu{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.upload-menu-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;transition:all .2s;text-align:left}.upload-menu-item:hover{background:#404040;color:#00bcd4}.menu-icon{font-size:1.2rem;color:#fff}.voice-input-btn{width:48px;height:48px;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:2px solid #FFFFFF;border-radius:50%;color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;margin-right:.5rem;flex-shrink:0;position:relative;overflow:visible;box-shadow:0 4px 12px #ffffff4d}.voice-input-btn:before{content:"";position:absolute;width:100%;height:100%;border-radius:50%;border:2px solid #FFFFFF;animation:voice-ripple 2s ease-out infinite;opacity:0}@keyframes voice-ripple{0%{transform:scale(1);opacity:.8}to{transform:scale(1.5);opacity:0}}.voice-input-btn:hover:not(:disabled){border-color:#fff;color:#fff;background:linear-gradient(135deg,#fff3,#ffffff26);transform:scale(1.15);box-shadow:0 6px 20px #00bcd480}.voice-input-btn.active{border-color:#00e5ff;background:linear-gradient(135deg,#00bcd44d,#0097a74d);color:#00e5ff;animation:pulse-voice 1.5s ease-in-out infinite;box-shadow:0 0 20px #00e5ff99}.voice-input-btn.active:after{content:"";position:absolute;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,rgba(0,229,255,.4),transparent);animation:active-glow 1.5s ease-in-out infinite}@keyframes pulse-voice{0%,to{transform:scale(1);border-color:#00bcd4;box-shadow:0 0 #00bcd499}50%{transform:scale(1.1);border-color:#00e5ff;box-shadow:0 0 0 12px #00bcd400}}@keyframes active-glow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.voice-input-btn:disabled{opacity:.3;cursor:not-allowed;border-color:#404040;color:#404040;background:transparent;box-shadow:none}.voice-input-btn:disabled:before{display:none}.send-btn{width:40px;height:40px;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .2s;flex-shrink:0}.send-btn{background:#404040;color:#e0e0e0}.send-btn:hover:not(:disabled){background:#505050;transform:scale(1.05)}.send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.input-footer{text-align:center;font-size:.75rem;color:#666;margin-top:1rem;max-width:800px;width:100%}@media (max-width: 1024px){.chat-interface-wrapper{position:relative}.chat-sidebar{position:fixed;left:0;top:0;z-index:100;box-shadow:2px 0 12px #00000080}.chat-sidebar.collapsed{transform:translate(-100%)}}@media (max-width: 768px){.chat-interface-wrapper{flex-direction:column}.chat-sidebar{width:100%;max-width:280px}.chat-header{flex-direction:column;gap:1rem;padding:1rem}.chat-header h1{font-size:1.25rem}.new-chat-btn{font-size:.75rem;padding:.4rem .75rem}.messages-container{padding:.5rem}.message{padding:0 .5rem}.message-bubble{max-width:85%;padding:.75rem 1rem}.message-actions{flex-wrap:wrap;gap:.5rem}.action-btn{padding:.35rem .5rem;font-size:.85rem}.welcome-message h2{font-size:1.5rem}.quick-actions{grid-template-columns:1fr}.input-area{padding:1rem}.input-container{padding:.5rem .75rem}.context-menu{min-width:180px}.context-menu button{padding:.6rem .75rem;font-size:.85rem}.header-controls{flex-direction:column;gap:1rem;width:100%}.tts-controls{width:100%;justify-content:center}.tts-btn,.speaking-indicator{font-size:.75rem;padding:.4rem .75rem}.preferences-badge{flex-wrap:wrap;justify-content:center}.sidebar-logo{padding:1rem}.nav-button{padding:.65rem .85rem;font-size:.8rem}}.input-area{position:sticky;bottom:0;left:0;right:0;padding:10px 12px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0));background:#14161aeb;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0;display:flex;flex-direction:column;align-items:center;z-index:150;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.input-container{display:flex;align-items:flex-end;gap:8px;width:100%;max-width:48rem;padding:8px 12px}.chat-input{flex:1;min-height:44px;max-height:140px;padding:10px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#eaeaea;font-size:16px;line-height:1.4;resize:none;font-family:inherit}.chat-input::placeholder{color:#ffffff73}.chat-input:focus{outline:none;border-color:#ffffff40}@media (max-width: 768px){.chat-header-clean{height:56px;min-height:56px;padding:0 10px;padding-top:env(safe-area-inset-top,0);gap:6px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;position:sticky;top:0;z-index:250;background:#0f0f10}.hamburger-menu-btn{display:flex;width:44px;height:44px;min-width:44px;min-height:44px;flex-shrink:0;touch-action:manipulation}.header-left-clean{gap:8px;flex:1;min-width:0;display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.header-left-clean::-webkit-scrollbar{display:none}.header-right-clean{gap:6px;flex-shrink:0}.header-selector-btn.country-btn,.header-selector-btn.law-type-btn{display:flex!important;padding:4px 8px;font-size:11px;white-space:nowrap;flex-shrink:0}.header-selector-btn.language-btn,.voice-toggle-btn,.offence-input-clean{display:none}.legid-logo{font-size:13px;flex-shrink:0}.profile-button-clean{width:40px;height:40px;min-width:40px;flex-shrink:0}.profile-avatar-clean,.profile-avatar-img{width:32px;height:32px}.messages-container{padding:12px 8px calc(96px + env(safe-area-inset-bottom,0)) 8px!important;margin-bottom:0}.messages-area{padding:.75rem;padding-bottom:calc(96px + env(safe-area-inset-bottom,0))!important}.message{max-width:100%;width:min(95%,40rem);box-sizing:border-box}.message-bubble{max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.message-content{padding:.75rem 1rem;font-size:15px;line-height:1.5}.message.assistant .message-bubble{font-size:14px;line-height:1.5}.input-area{padding:10px 12px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0));position:fixed;bottom:0;left:0;right:0;background:#14161af2;border-top:1px solid rgba(255,255,255,.08);z-index:150;touch-action:manipulation;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.input-container{padding:8px 0;gap:8px;align-items:center}.chat-input{font-size:16px;min-height:44px}.send-button{width:44px;height:44px;min-width:44px;padding:0}.send-button svg{width:22px;height:22px}.send-btn{width:44px;height:44px;min-width:44px;font-size:1rem}.plus-upload-btn{width:44px;height:44px;min-width:44px}.voice-input-btn{width:44px;height:44px;min-width:44px;margin-right:.25rem}.voice-input-btn svg{width:20px;height:20px}.upload-menu{bottom:60px;right:auto;left:0;width:200px}.upload-menu-item{padding:12px 14px;font-size:.9rem}.profile-menu{right:0;left:auto;width:280px;max-width:calc(100vw - 24px);z-index:300}.header-selector-btn,.profile-button-clean{min-width:44px;min-height:44px;touch-action:manipulation}.portal-indicator-badge{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width: 480px){.chat-header-clean{height:52px;padding:0 8px}.legid-logo{font-size:12px}.profile-button-clean{width:36px;height:36px;min-width:36px}.profile-avatar-clean,.profile-avatar-img{width:28px;height:28px}.messages-area{padding:.75rem .5rem;padding-bottom:220px!important}.message{max-width:95%}.message-content{padding:.65rem .85rem;font-size:.9rem}.input-area{padding:8px}.input-container{padding:8px 10px}.send-btn,.plus-upload-btn,.voice-input-btn{width:40px;height:40px;min-width:40px}.offence-input{width:100%}.offence-field{width:100%;min-width:unset}.upload-progress{padding:.75rem 1rem}.messages-container{padding:12px 8px calc(96px + env(safe-area-inset-bottom,0)) 8px!important}.welcome-message{padding-bottom:calc(96px + env(safe-area-inset-bottom,0))!important}}.meeting-scheduler-container{margin:20px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.input-container-with-pending{position:relative;flex-wrap:wrap}.pending-image-preview{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:8px;padding:6px 10px;background:#00000040;border-radius:8px 8px 0 0;z-index:1}.pending-image-thumb{width:60px;height:60px;object-fit:cover;border-radius:6px;flex-shrink:0}.pending-image-filename{flex:1;min-width:0;font-size:.85rem;color:#e0e0e0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-image-remove{width:28px;height:28px;padding:0;border:none;border-radius:6px;background:#ff5050e6;color:#fff;font-size:18px;line-height:1;cursor:pointer;flex-shrink:0;transition:background .2s}.pending-image-remove:hover{background:#ff5050}.chat-input.chat-input-with-pending{padding-top:78px}.legal-report-block{padding:12px 0;font-size:.95rem;color:#e0e0e0}.legal-report-block.legal-report-loading{color:#ffffffb3;font-style:italic}.legal-report-block.legal-report-error{color:#ff6464}.legal-report-header{font-weight:600;font-size:1rem;margin-bottom:12px;color:#00bcd4}.legal-report-cards{display:flex;flex-wrap:wrap;gap:12px}.legal-report-card{flex:1;min-width:140px;padding:12px;background:#0003;border-radius:10px;border:1px solid rgba(255,255,255,.08)}.legal-report-card.full-width{flex:1 1 100%;min-width:100%}.legal-report-card-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:#fff9;margin-bottom:4px}.legal-report-card-value{font-size:.9rem;color:#e0e0e0}.legal-report-fulltext{margin:8px 0 0;padding:12px;background:#00000040;border-radius:8px;white-space:pre-wrap;word-break:break-word;font-size:.85rem;max-height:280px;overflow-y:auto}.draft-review-card{margin-top:12px;padding:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:12px;max-width:100%}.draft-review-header{margin-bottom:10px}.draft-review-to{font-size:12px;color:#ffffffb3}.draft-review-textarea{width:100%;min-height:80px;padding:10px 12px;margin-bottom:10px;background:#00000040;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#e0e0e0;font-size:14px;font-family:inherit;resize:vertical;box-sizing:border-box}.draft-review-textarea:focus{outline:none;border-color:#7c5cff80}.draft-review-error{color:#f87171;font-size:13px;margin-bottom:8px}.draft-review-actions{display:flex;flex-wrap:wrap;gap:10px}.draft-review-btn{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#e0e0e0}.draft-review-btn:hover:not(:disabled){background:#ffffff1f}.draft-review-btn.primary{background:#7c5cff66;border-color:#7c5cff80}.draft-review-btn.primary:hover:not(:disabled){background:#7c5cff80}.draft-review-btn:disabled{opacity:.6;cursor:not-allowed}.messages-from-history .message{animation:none}.message.message-live{animation:messageSlideIn .35s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.plus-upload-btn{display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;padding:0;background:transparent;border:none;border-radius:0;color:#ffffffd9;cursor:pointer;transition:color .2s;box-shadow:none}.plus-upload-btn:hover{color:#fff;background:transparent}.plus-upload-btn:disabled{opacity:.5;cursor:not-allowed}.plus-icon{font-size:1.25rem;font-weight:300;line-height:1}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px;box-sizing:border-box}.modal-content{background:#1a202c;border-radius:16px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 25px #0000004d}.modal-content .modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0;background:#ffffff0a}.modal-content .modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#e1e5e9}.modal-content .close-btn,.legal-research-modal .close-btn,.meetings-modal .close-btn{min-width:36px;min-height:36px;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff14;color:#e1e5e9;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.modal-content .close-btn:hover,.legal-research-modal .close-btn:hover,.meetings-modal .close-btn:hover{background:#ffffff26;color:#fff;border-color:#ffffff4d}.legal-research-modal .close-btn{background:#fff;border-color:#ddd;color:#333}.legal-research-modal .close-btn:hover{background:#f0f0f0;color:#000;border-color:#000}� � .legal-research-modal{max-width:800px;width:95%;max-height:90vh;overflow-y:auto;background:#1a1a2e;border-radius:16px;box-shadow:0 25px 50px #00000080;border:1px solid rgba(255,255,255,.1)}.legal-research-modal .modal-header{padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#007aff,#0051d5);border-radius:16px 16px 0 0}.legal-research-modal .modal-header h2{margin:0;color:#fff;font-size:1.75rem;font-weight:700}.legal-research-modal .close-btn{background:#fff3;border:1px solid rgba(255,255,255,.4);border-radius:50%;min-width:36px;min-height:36px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;color:#fff}.legal-research-modal .close-btn svg{stroke:currentColor;stroke-width:2.5}.legal-research-modal .close-btn:hover{background:#ffffff4d;border-color:#fff9;color:#fff}.legal-research-modal .modal-body{padding:2rem;background:#1a1a2e}.legal-research-content h3{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.legal-research-content>p{color:#94a3b8;font-size:1rem;margin:0 0 2rem;line-height:1.6}.research-links{display:flex;flex-direction:column;gap:2rem}.research-category h4{color:#06b6d4;font-size:1.25rem;font-weight:700;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.resource-link{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;text-decoration:none;color:inherit;transition:all .2s;margin-bottom:.75rem}.resource-link:hover{background:#ffffff14;border-color:#06b6d480;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.resource-link .link-icon{font-size:1.5rem;flex-shrink:0}.resource-link strong{display:block;color:#fff;font-size:1rem;font-weight:700;margin-bottom:.25rem}.resource-link small{display:block;color:#94a3b8;font-size:.875rem;line-height:1.4}@media (max-width: 768px){.legal-research-modal{width:100%;max-width:100%;border-radius:0;max-height:100vh}.legal-research-modal .modal-header{padding:1rem 1.25rem;border-radius:0}.legal-research-modal .modal-header h2{font-size:1.25rem}.legal-research-modal .modal-body{padding:1.25rem}.research-category h4{font-size:1.1rem}.resource-link{padding:.875rem}.resource-link strong{font-size:.95rem}.resource-link small{font-size:.8rem}}.citation-source-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;color:#e0e0e0;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;margin:4px 4px 4px 0}.citation-source-btn:hover{background:#ffffff1a;border-color:#60a5fa80;transform:translateY(-1px);box-shadow:0 2px 8px #60a5fa33}.citation-source-btn:active{transform:translateY(0)}.source-icon{font-size:14px;line-height:1}.source-name{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.primary-badge{background:#60a5fa33;color:#60a5fa;padding:2px 6px;border-radius:8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.citation-sources-container{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0;padding:12px;background:#0003;border-radius:12px;border:1px solid rgba(255,255,255,.05)}.citation-sources-label{width:100%;font-size:12px;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.light-theme .citation-source-btn{background:#00000008;border-color:#0000001a;color:#374151}.light-theme .citation-source-btn:hover{background:#0000000d;border-color:#3b82f64d;box-shadow:0 2px 8px #3b82f626}.light-theme .primary-badge{background:#3b82f61a;color:#2563eb}.light-theme .citation-sources-container{background:#00000005;border-color:#00000014}.light-theme .citation-sources-label{color:#00000080}.citation-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;margin:16px 0;transition:all .3s ease}.citation-card:hover{background:#ffffff0d;border-color:#60a5fa4d;box-shadow:0 4px 16px #0003}.citation-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.citation-number{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#60a5fa26;border:1px solid rgba(96,165,250,.3);border-radius:8px;color:#60a5fa;font-size:14px;font-weight:700;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.citation-title{flex:1}.case-name{font-size:16px;font-weight:600;color:#e0e0e0;margin:0 0 6px;line-height:1.4;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.case-meta{display:flex;align-items:center;gap:8px;font-size:13px;color:#ffffff80;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.court-name{font-weight:500}.case-year{color:#fff6}.similarity-badge{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#22c55e26,#3b82f626);border:1px solid rgba(34,197,94,.3);border-radius:20px}.similarity-icon{font-size:14px}.similarity-value{font-size:16px;font-weight:700;color:#22c55e;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.similarity-label{font-size:11px;color:#fff9;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.citation-section{margin:14px 0}.section-label{font-size:11px;font-weight:700;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.section-content{font-size:14px;line-height:1.6;color:#ffffffd9;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.relevance-section{background:#60a5fa14;border-left:3px solid rgba(96,165,250,.5);padding:12px;border-radius:6px;margin-top:16px}.relevance-section .section-label{color:#60a5fa}.relevance-section .section-content{color:#ffffffe6;font-weight:500}.action-section{background:#22c55e14;border-left:3px solid rgba(34,197,94,.5);padding:12px;border-radius:6px;margin-top:16px}.action-section .section-label{color:#22c55e}.action-section .section-content{color:#ffffffe6;font-weight:500}.citation-sources{display:flex;flex-wrap:wrap;gap:6px}.light-theme .citation-card{background:#00000005;border-color:#00000014}.light-theme .citation-card:hover{background:#00000008;border-color:#3b82f64d;box-shadow:0 4px 16px #00000014}.light-theme .citation-number{background:#3b82f61a;border-color:#3b82f64d;color:#2563eb}.light-theme .case-name{color:#111827}.light-theme .case-meta{color:#00000080}.light-theme .case-year{color:#0006}.light-theme .similarity-badge{background:linear-gradient(135deg,#22c55e1a,#3b82f61a);border-color:#22c55e4d}.light-theme .similarity-value{color:#16a34a}.light-theme .similarity-label,.light-theme .section-label{color:#00000080}.light-theme .section-content{color:#000c}.light-theme .relevance-section{background:#3b82f60d;border-left-color:#3b82f680}.light-theme .relevance-section .section-label{color:#2563eb}.light-theme .relevance-section .section-content{color:#000000d9}.light-theme .action-section{background:#22c55e0d;border-left-color:#22c55e80}.light-theme .action-section .section-label{color:#16a34a}.light-theme .action-section .section-content{color:#000000d9}.enhanced-legal-response{max-width:100%;margin:1rem 0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.3}.markdown-content{position:relative;line-height:1.3;font-size:1.02em;color:#f5f5f5}.markdown-content p{margin:.02em 0;line-height:1.3;color:#f5f5f5}.markdown-content h1,.legal-heading-1{font-size:1.8em;font-weight:700;color:#1a1a1a;margin:.6em 0 .3em;border-bottom:2px solid #00bcd4;padding-bottom:.2em}.markdown-content h2,.legal-heading-2{font-size:1.4em;font-weight:700;color:#fff;margin:.5em 0 .25em;padding:0 0 4px;background:transparent;border:none;border-bottom:2px solid #E0E0E0;border-radius:0;text-transform:uppercase;letter-spacing:1px}.markdown-content h3,.legal-heading-3{font-size:1.15em;font-weight:700;color:#f5f5f5;margin:.4em 0 .2em;padding:0 0 2px;background:transparent;border:none;border-bottom:1px solid #D0D0D0;border-radius:0;letter-spacing:.5px}.markdown-content strong{font-weight:600;color:#1a1a1a}.markdown-content em{font-style:italic;color:#4a4a4a}.inline-code{background:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:#d63384;border:1px solid #e0e0e0}.code-block{background:#f8f9fa;padding:12px;border-radius:6px;overflow-x:auto;border-left:4px solid #00bcd4;margin:1em 0}.code-block code{font-family:Courier New,monospace;font-size:.9em;color:#333}.legal-blockquote{background:#fff8e1;border-left:4px solid #ffc107;padding:12px 16px;margin:1em 0;font-style:italic;color:#5d4037;border-radius:4px}.markdown-content ul,.markdown-content ol{margin:.15em 0;padding-left:2em;line-height:1.3}.markdown-content li{margin:.02em 0;padding-left:.3em;color:#f5f5f5}.markdown-content li::marker{color:#06c;font-weight:600}.markdown-content a{color:#00bcd4;text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease}.markdown-content a:hover{border-bottom-color:#00bcd4}.typing-text{position:relative;display:inline-block}.typing-text:after{content:"▋";color:#00bcd4;animation:blink .8s infinite;margin-left:2px;font-weight:700}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.animated-response-box{position:relative;overflow:hidden;animation:fadeInScale .4s ease-out}.animated-response-box:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:2px;background:linear-gradient(90deg,transparent,#00bcd4,transparent);animation:shimmer 2s infinite}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{left:-100%}to{left:100%}}.response-section{margin-bottom:1.5rem;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000004d;border:1px solid #404040}.section-header{display:flex;align-items:center;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.section-icon{font-size:1.5rem;margin-right:.75rem}.section-header h3{margin:0;font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.section-content{padding:1.25rem;background:#2d2d2d;color:#fff}.offense-section .section-header{background:linear-gradient(135deg,#ff6b6b,#ee5a24)}.offense-text{font-size:1.1rem;font-weight:500;color:#fff;margin:.5rem 0}.offense-text:first-child{font-weight:600;font-size:1.2rem;color:#ff6b6b}.solution-section .section-header{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.solution-list{margin:0;padding-left:1.5rem}.solution-item{margin-bottom:.75rem;padding:.5rem;background:#1a1a1a;border-radius:4px;border-left:4px solid #4ecdc4;color:#fff;font-weight:500}.solution-item:hover{background:#404040}.reference-section .section-header{background:linear-gradient(135deg,#45b7d1,#96c93d)}.reference-item{font-family:Courier New,monospace;font-size:.9rem;color:#b0b0b0;margin:.5rem 0;padding:.5rem;background:#1a1a1a;border-radius:4px}.citation-item{display:flex;align-items:center;margin:.5rem 0;padding:.5rem;background:#1a1a1a;border-radius:4px;border-left:4px solid #45b7d1}.citation-number{font-weight:700;color:#45b7d1;margin-right:.75rem;min-width:20px}.citation-filename{flex:1;color:#fff;font-weight:500}.citation-score{color:#b0b0b0;font-size:.85rem;margin-left:.5rem}.statistics-section .section-header{background:linear-gradient(135deg,#a8e6cf,#ffd3a5)}.statistics-item{font-family:Courier New,monospace;font-size:.9rem;color:#b0b0b0;margin:.25rem 0;padding:.25rem;background:#1a1a1a;border-radius:3px}.response-metadata{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}.confidence-badge,.chunks-badge{display:inline-block;padding:.25rem .75rem;background:#404040;color:#e0e0e0;border-radius:20px;font-size:.85rem;font-weight:500}.confidence-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.chunks-badge{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.fallback-response{padding:0;background:transparent;border-radius:0;border:none;color:#fff;box-shadow:none;position:relative}.fallback-response:before{display:none}@keyframes gradientShift{0%{background-position:0% 0%}to{background-position:200% 0%}}.fallback-response p{margin:0 0 .5rem;line-height:1.6;color:#fff;font-size:1.05rem}.fallback-response .message-text{line-height:1.6;font-size:1.05rem;white-space:pre-wrap;word-wrap:break-word;font-weight:600;letter-spacing:.02em}.no-response{color:#b0b0b0;font-style:italic;padding:1rem;text-align:center;background:#2d2d2d;border-radius:8px;border:1px dashed #404040}.fallback-citations{border-top:1px solid #404040;padding-top:1rem}.fallback-citations h4{margin:0 0 .5rem;color:#00bcd4;font-size:1rem}.fallback-citations p{margin:.25rem 0;color:#b0b0b0;font-size:.9rem}@media (max-width: 768px){.enhanced-legal-response{margin:.5rem 0}.section-header{padding:.75rem}.section-content{padding:1rem}.section-icon{font-size:1.25rem;margin-right:.5rem}.section-header h3{font-size:1rem}.response-metadata{flex-direction:column;gap:.5rem}}.response-section{animation:slideInUp .3s ease-out}.response-section:nth-child(1){animation-delay:.1s}.response-section:nth-child(2){animation-delay:.2s}.response-section:nth-child(3){animation-delay:.3s}.response-section:nth-child(4){animation-delay:.4s}.response-section:hover{box-shadow:0 4px 12px #00bcd44d;transform:translateY(-2px);transition:all .2s ease;border-color:#00bcd4}.response-link{color:#00d4ff;text-decoration:none;font-weight:500;border-bottom:1px solid rgba(0,212,255,.3);transition:all .2s ease;word-break:break-all}.response-link:hover{color:#fff;border-bottom-color:#00d4ff;background:#00d4ff1a;padding:2px 4px;border-radius:3px;box-shadow:0 0 10px #00d4ff4d}.response-link:active{color:#09f;transform:translateY(1px)}.offense-text .response-link{color:#ff6b6b;border-bottom-color:#ff6b6b4d}.offense-text .response-link:hover{color:#fff;border-bottom-color:#ff6b6b;background:#ff6b6b1a;box-shadow:0 0 10px #ff6b6b4d}.solution-item .response-link{color:#4ecdc4;border-bottom-color:#4ecdc44d}.solution-item .response-link:hover{color:#fff;border-bottom-color:#4ecdc4;background:#4ecdc41a;box-shadow:0 0 10px #4ecdc44d}.reference-item .response-link{color:#45b7d1;border-bottom-color:#45b7d14d}.reference-item .response-link:hover{color:#fff;border-bottom-color:#45b7d1;background:#45b7d11a;box-shadow:0 0 10px #45b7d14d}.legal-citation{color:#a8c7fa;font-weight:600;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:#a8c7fa80;cursor:help;transition:all .2s ease;padding:0 2px;background:transparent}.legal-citation:hover{color:#c4d7ff;background:transparent;text-decoration-style:solid;border-radius:3px}.statute-reference{background:#ffffff1a;color:#fdd663;padding:2px 6px;border-radius:3px;font-family:Courier New,Consolas,monospace;font-weight:600;font-size:.95em;border:1px solid rgba(253,214,99,.3);transition:all .2s ease}.statute-reference:hover{background:#ffffff26;border-color:#fdd66380;box-shadow:0 2px 4px #fdd6631a}.case-law-block{background:#a8c7fa0d;border-left:3px solid #A8C7FA;padding:12px 16px;margin:15px 0;border-radius:4px;box-shadow:none;transition:all .3s ease;color:#f5f5f5}.case-law-block:hover{border-left-width:6px;box-shadow:0 4px 12px #06c3;transform:translate(2px)}.case-law-block h3,.case-law-block h4{color:#06c;margin-top:0;margin-bottom:10px;font-weight:700}.case-law-block ul{margin:10px 0;padding-left:20px}.case-law-block li{margin:5px 0;color:#495057}.immediate-action{background:#ff6b6b1a;border-left:3px solid #FF6B6B;padding:12px 16px;margin:15px 0;border-radius:4px;box-shadow:none;animation:none;color:#f5f5f5}@keyframes pulse-warning{0%,to{box-shadow:0 2px 8px #ff6b6b26}50%{box-shadow:0 4px 16px #ff6b6b4d}}.immediate-action h3,.immediate-action h4{color:#d63031;margin-top:0;margin-bottom:10px;font-weight:700}.immediate-action ul{margin:10px 0;padding-left:20px}.immediate-action li{margin:8px 0;color:#856404;font-weight:500}.immediate-action strong{color:#ff6b6b}.jurisdiction-badge{display:inline-block;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:6px 14px;border-radius:20px;font-size:.85em;font-weight:600;margin-bottom:12px;box-shadow:0 2px 6px #28a7454d;letter-spacing:.5px;text-transform:uppercase;animation:fadeInDown .5s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.jurisdiction-badge.canada{background:linear-gradient(135deg,#d63031,#e17055);box-shadow:0 2px 6px #d630314d}.jurisdiction-badge.usa{background:linear-gradient(135deg,#0984e3,#74b9ff);box-shadow:0 2px 6px #0984e34d}.jurisdiction-badge.lawyer{background:linear-gradient(135deg,#2d3436,#636e72);box-shadow:0 2px 6px #2d34364d}.markdown-content .legal-citation,.markdown-content .statute-reference{display:inline}.case-name-heading{display:inline-block;font-size:1.15em;font-weight:700;color:#fff;margin:1.2em 0 .5em;padding:0 0 4px;background:transparent;border:none;border-bottom:2px solid #FFFFFF;border-radius:0;letter-spacing:.3px}.section-heading-bold{display:inline-block;font-size:1.3em;font-weight:800;color:#fff;margin:1em 0 .5em;padding:0 0 4px;background:transparent;border:none;border-bottom:2px solid #FFFFFF;border-radius:0;text-transform:uppercase;letter-spacing:1.2px;box-shadow:none}.markdown-content strong{font-weight:600;color:#fff}.case-law-collapsible{margin:15px 0}.case-law-collapsible-header{background:#e9ecef;padding:12px 15px;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;border:1px solid #dee2e6}.case-law-collapsible-header:hover{background:#dee2e6;border-color:#06c}.case-law-collapsible-header h3{margin:0;color:#06c;font-size:1.1em;font-weight:600}.case-law-collapsible-icon{font-size:1.2em;transition:transform .3s ease}.case-law-collapsible-icon.expanded{transform:rotate(90deg)}.case-law-collapsible-content{max-height:0;overflow:hidden;transition:max-height .3s ease}.case-law-collapsible-content.expanded{max-height:2000px;padding-top:10px}@media (max-width: 768px){.markdown-content{font-size:.95rem;line-height:1.5}.markdown-content h1,.legal-heading-1{font-size:1.4rem;margin:.5rem 0 .25rem}.markdown-content h2,.legal-heading-2{font-size:1.2rem;margin:.4rem 0 .2rem;letter-spacing:.5px}.markdown-content h3,.legal-heading-3{font-size:1.05rem;margin:.3rem 0 .15rem}.case-citation{padding:10px 12px;margin:8px 0}.citation-header{flex-direction:column;align-items:flex-start;gap:8px}.citation-title{font-size:.9rem}.citation-meta{flex-direction:column;align-items:flex-start;gap:6px;font-size:.8rem}.citation-badge{font-size:.7rem;padding:3px 8px}.citation-details{padding:8px 0;font-size:.85rem}.citation-actions{gap:6px}.citation-btn{padding:6px 10px;font-size:.8rem}.legal-section{padding:10px;margin:8px 0}.section-title{font-size:1rem;padding:8px 10px}.section-content{padding:8px 10px;font-size:.9rem}.markdown-content ul,.markdown-content ol{padding-left:1.25rem;margin:.3rem 0}.markdown-content li{margin:.2rem 0;font-size:.9rem}.code-block{padding:8px 10px;font-size:.8rem}.legal-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.legal-table{font-size:.85rem}.legal-table th,.legal-table td{padding:6px 8px}}@media (max-width: 480px){.markdown-content{font-size:.9rem}.markdown-content h1,.legal-heading-1{font-size:1.25rem}.markdown-content h2,.legal-heading-2{font-size:1.1rem}.markdown-content h3,.legal-heading-3{font-size:1rem}.case-citation{padding:8px 10px}.citation-title{font-size:.85rem}.citation-meta{font-size:.75rem}.citation-btn{padding:5px 8px;font-size:.75rem}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes thinking-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes thinking-dots{0%,80%,to{transform:scale(0);opacity:.3}40%{transform:scale(1);opacity:1}}.thinking-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffffff0d;border-radius:12px;color:#9ca3af;font-size:.95rem;animation:fadeIn .3s ease}.thinking-dots{display:flex;gap:.3rem;align-items:center}.thinking-dots span{width:6px;height:6px;background:var(--accent-lawyer, #b8860b);border-radius:50%;animation:thinking-dots 1.4s infinite ease-in-out both}.thinking-dots span:nth-child(1){animation-delay:-.32s}.thinking-dots span:nth-child(2){animation-delay:-.16s}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blinkCursor{0%,to{border-color:transparent}50%{border-color:var(--accent-lawyer, #b8860b)}}.typewriter-container{overflow:hidden;white-space:nowrap;border-right:2px solid var(--accent-lawyer, #b8860b);animation:typewriter 3s steps(40) 1s 1 normal both,blinkCursor .5s steps(40) infinite normal}.typing-text{animation:fadeIn .1s ease}@keyframes checkmark-stroke{0%{stroke-dashoffset:100;stroke-dasharray:100}to{stroke-dashoffset:0;stroke-dasharray:100}}@keyframes checkmark-scale{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.checkmark-circle{stroke:#10b981;stroke-width:3;fill:none;animation:fadeIn .3s ease}.checkmark-check{stroke:#10b981;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;animation:checkmark-stroke .6s cubic-bezier(.65,0,.45,1) forwards,checkmark-scale .3s ease .6s}.elevated-card{transition:all .3s cubic-bezier(.4,0,.2,1)}.elevated-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000026}@keyframes elevate{0%{transform:translateY(0);box-shadow:0 4px 8px #0000001a}to{transform:translateY(-4px);box-shadow:0 12px 24px #00000026}}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{background:linear-gradient(90deg,#ffffff0d,#ffffff1a,#ffffff0d 40%,#ffffff0d);background-size:200px 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:8px}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-title{height:24px;width:60%;margin-bottom:12px}.skeleton-paragraph{height:14px;margin-bottom:6px}.skeleton-paragraph:nth-child(3){width:80%}.skeleton-paragraph:nth-child(4){width:90%}.skeleton-paragraph:last-child{width:70%}.spinner{width:40px;height:40px;border:4px solid rgba(184,134,11,.2);border-top-color:var(--accent-lawyer, #b8860b);border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:20px;height:20px;border-width:2px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}.animated-section{animation:fadeInUp .6s ease both}.animated-section:nth-child(1){animation-delay:0s}.animated-section:nth-child(2){animation-delay:.1s}.animated-section:nth-child(3){animation-delay:.2s}.animated-section:nth-child(4){animation-delay:.3s}.animated-section:nth-child(5){animation-delay:.4s}@keyframes citation-slide-in{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.citation-card{animation:citation-slide-in .4s ease both}.citation-card:nth-child(1){animation-delay:.1s}.citation-card:nth-child(2){animation-delay:.2s}.citation-card:nth-child(3){animation-delay:.3s}.citation-card:nth-child(4){animation-delay:.4s}@keyframes blurToFocus{0%{filter:blur(10px);opacity:0}to{filter:blur(0);opacity:1}}.blur-focus{animation:blurToFocus .5s ease}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.gradient-text{background:linear-gradient(45deg,var(--accent-lawyer),var(--accent-lawyer-light),var(--accent-lawyer));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease infinite}.smooth-scroll{scroll-behavior:smooth}@keyframes ripple{to{transform:scale(4);opacity:0}}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);animation:ripple .6s ease-out}@keyframes progress-bar{0%{width:0%}to{width:var(--progress-width, 100%)}}.progress-bar{width:0;height:4px;background:linear-gradient(90deg,var(--accent-lawyer),var(--accent-lawyer-light));border-radius:2px;animation:progress-bar 1s ease-out forwards}.stagger-item{opacity:0;animation:fadeInUp .5s ease forwards}.stagger-item:nth-child(1){animation-delay:.05s}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.15s}.stagger-item:nth-child(4){animation-delay:.2s}.stagger-item:nth-child(5){animation-delay:.25s}.stagger-item:nth-child(6){animation-delay:.3s}.stagger-item:nth-child(7){animation-delay:.35s}.stagger-item:nth-child(8){animation-delay:.4s}.fade-in{animation:fadeIn .4s ease}.fade-in-up{animation:fadeInUp .5s ease}.fade-in-down{animation:fadeInDown .5s ease}.slide-in-left{animation:slideInFromLeft .4s ease}.slide-in-right{animation:slideInFromRight .4s ease}.bounce-in{animation:bounceIn .6s ease}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.recent-updates-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem;overflow-y:auto}.updates-container{max-width:1000px;width:100%;background:#1a1a1a;border-radius:16px;border:1px solid #404040;max-height:90vh;display:flex;flex-direction:column}.updates-header{padding:2rem;border-bottom:1px solid #404040;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.updates-header h2{margin:0;color:#00bcd4;font-size:1.75rem;font-weight:700;flex:1}.jurisdiction-label{padding:.5rem 1rem;background:#00bcd426;border:1px solid #00bcd4;border-radius:8px;color:#00bcd4;font-weight:600;font-size:.9rem}.close-btn{padding:.75rem 1.5rem;background:transparent;border:1px solid #404040;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.close-btn:hover{border-color:#00bcd4;color:#00bcd4;background:#00bcd41a}.notifications-your-activity{padding:1rem 2rem 0;border-bottom:1px solid #333;margin-bottom:0}.notifications-section-title{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#a0a0a0;text-transform:uppercase;letter-spacing:.05em}.notifications-section-title.legal-news-title{margin-top:1.5rem;margin-bottom:1rem}.notification-items{display:flex;flex-direction:column;gap:.75rem}.notification-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#ffffff0a;border:1px solid #333;border-radius:10px}.notification-icon{font-size:1.5rem;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-content strong{color:#e0e0e0;font-size:1rem}.notification-desc{margin:.35rem 0 0;color:#a0a0a0;font-size:.9rem;line-height:1.4}.notification-action-btn{flex-shrink:0;padding:.5rem 1rem;background:#00bcd4;color:#0a0a0a;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .2s}.notification-action-btn:hover{background:#00acc1}.updates-loading{padding:4rem 2rem;text-align:center;color:#b0b0b0}.loading-spinner{width:50px;height:50px;border:4px solid #404040;border-top-color:#00bcd4;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.updates-list{flex:1;overflow-y:auto;padding:2rem}.updates-list::-webkit-scrollbar{width:6px}.updates-list::-webkit-scrollbar-track{background:#2d2d2d}.updates-list::-webkit-scrollbar-thumb{background:#404040;border-radius:3px}.no-updates{text-align:center;padding:3rem 2rem;color:#b0b0b0}.no-updates p{margin:.5rem 0;font-size:1.1rem}.no-updates .note{font-size:.9rem;color:#888;font-style:italic;margin-top:1rem}.update-card{background:#2d2d2d;border:1px solid #404040;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;transition:all .2s}.update-card:hover{border-color:#00bcd4;box-shadow:0 4px 12px #00bcd433}.update-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.update-badges{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.jurisdiction-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.4rem .8rem;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.jurisdiction-badge.canada{background:linear-gradient(135deg,#dc3545,#a71d2a);color:#fff}.jurisdiction-badge.usa{background:linear-gradient(135deg,#0d6efd,#0a58ca);color:#fff}.update-type,.update-source-badge{display:inline-block;padding:.35rem .75rem;background:linear-gradient(135deg,#00bcd4,#0097a7);color:#fff;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.update-date{color:#b0b0b0;font-size:.9rem;font-weight:500}.update-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.law-type-tag{display:inline-block;padding:.25rem .6rem;background:#00bcd426;border:1px solid rgba(0,188,212,.3);border-radius:4px;color:#00bcd4;font-size:.75rem;font-weight:600}.update-title{margin:0 0 1rem;color:#e0e0e0;font-size:1.3rem;font-weight:600;line-height:1.4}.update-summary{color:#b0b0b0;line-height:1.6;margin:0 0 1rem;font-size:1rem}.update-citation{padding:.75rem 1rem;background:#1a1a1a;border-left:3px solid #00bcd4;border-radius:4px;margin:1rem 0;font-family:Courier New,monospace;font-size:.9rem;color:#e0e0e0}.update-citation strong{color:#00bcd4;font-weight:700}.update-changes{margin:1rem 0;padding:1rem;background:#00bcd40d;border-radius:8px;border:1px solid rgba(0,188,212,.2)}.update-changes strong{color:#00bcd4;font-weight:700;display:block;margin-bottom:.5rem}.update-changes ul{margin:0;padding-left:1.5rem;color:#e0e0e0}.update-changes li{margin:.5rem 0;line-height:1.5}.update-effective{margin:1rem 0;color:#e0e0e0;font-size:.95rem}.update-effective strong{color:#00bcd4;font-weight:700}.update-source{margin-top:1rem;padding-top:1rem;border-top:1px solid #404040}.source-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:1px solid #00bcd4;border-radius:8px;color:#00bcd4;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .2s}.source-link:hover{background:#00bcd41a;transform:translate(4px)}.source-link:after{content:"→";font-size:1.2rem}.updates-footer{padding:1.5rem 2rem;border-top:1px solid #404040;text-align:center}.updates-footer p{margin:.25rem 0;font-size:.85rem;color:#888}@media (max-width: 768px){.recent-updates-modal{padding:1rem}.updates-container{max-height:95vh}.updates-header{padding:1.5rem}.updates-header h2{font-size:1.4rem;width:100%}.updates-list{padding:1rem}.update-card{padding:1.25rem}.update-title{font-size:1.1rem}}.government-resources{background:#1a1a1a;border:1px solid #404040;border-radius:12px;padding:1.5rem;margin:1rem 0;box-shadow:0 4px 12px #0000004d}.resources-title{color:#00bcd4;font-size:1.3rem;font-weight:600;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.province-badge{background:#00bcd433;border:1px solid #00bcd4;color:#00bcd4;font-size:.85rem;font-weight:500;padding:.25rem .75rem;border-radius:20px;margin-left:.5rem}.resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:1rem}.resource-card{background:#2d2d2d;border:2px solid #404040;border-radius:10px;padding:1.25rem;text-decoration:none;color:inherit;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.75rem}.resource-card:hover{border-color:#00bcd4;transform:translateY(-4px);box-shadow:0 8px 20px #00bcd44d;background:#333}.resource-card:hover .resource-hover-text{opacity:1;transform:translateY(0)}.resource-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.resource-icon{font-size:1.5rem}.resource-number{background:#00bcd4;color:#1a1a1a;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:12px}.resource-title{color:#fff;font-size:1.05rem;font-weight:600;margin:0;line-height:1.4}.resource-source{color:#b0b0b0;font-size:.9rem;margin:0;display:flex;align-items:center;gap:.5rem}.source-label{color:#00bcd4;font-weight:500}.resource-url{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#1a1a1a;border-radius:6px;margin-top:auto}.url-icon{font-size:1rem}.url-text{color:#00bcd4;font-size:.85rem;font-family:Courier New,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-hover-text{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,188,212,.95),transparent);color:#fff;padding:1rem;text-align:center;font-weight:600;opacity:0;transform:translateY(10px);transition:all .3s ease}.resources-note{color:#b0b0b0;font-size:.9rem;font-style:italic;margin:1rem 0 0;padding:.75rem;background:#00bcd41a;border-left:3px solid #00bcd4;border-radius:4px}@media (max-width: 768px){.resources-grid{grid-template-columns:1fr}.government-resources{padding:1rem}.resources-title{font-size:1.1rem}}.voice-chat-container{padding:1.5rem;background:linear-gradient(135deg,#1a1a1a,#252525);border-radius:16px;margin:1rem 0;box-shadow:0 8px 32px #0006;border:1px solid rgba(0,188,212,.2)}.voice-info{background:#00bcd41a;border:1px solid rgba(0,188,212,.3);border-radius:8px;padding:.75rem;margin-bottom:1rem;color:#00bcd4;font-size:.9rem;text-align:center}.auto-read-badge{margin-top:.5rem;padding:.5rem;background:#4caf5033;border:1px solid rgba(76,175,80,.4);border-radius:6px;color:#4caf50;font-weight:600;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #4caf504d}50%{box-shadow:0 0 15px #4caf5099}}.auto-read-controls{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem;padding:1rem;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.auto-read-toggle{padding:.75rem 1.5rem;background:linear-gradient(135deg,#404040,#2d2d2d);border:2px solid #606060;border-radius:12px;color:#b0b0b0;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0000004d}.auto-read-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0006;border-color:gray}.auto-read-toggle.active{background:linear-gradient(135deg,#4caf50,#388e3c);border-color:#4caf50;color:#fff;animation:pulse-active 2s ease-in-out infinite}@keyframes pulse-active{0%,to{box-shadow:0 4px 12px #4caf5066}50%{box-shadow:0 6px 20px #4caf5099}}.auto-read-hint{font-size:.85rem;color:#888;text-align:center}.voice-error{background:#f443361a;border:1px solid rgba(244,67,54,.3);border-radius:8px;padding:.75rem;margin-bottom:1rem;color:#f44336;font-size:.9rem;text-align:center}.voice-controls{display:flex;justify-content:center;align-items:center;min-height:100px}.voice-btn{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 2.5rem;background:linear-gradient(135deg,#00bcd4,#0097a7);border:none;border-radius:20px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #00bcd466;position:relative;overflow:visible}.voice-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 32px #00bcd499}.voice-btn:active{transform:translateY(-1px) scale(.98)}.voice-btn svg{width:32px;height:32px;stroke-width:2}.voice-btn-start{background:linear-gradient(135deg,#00bcd4,#0097a7)}.voice-btn-stop{background:linear-gradient(135deg,#f44336,#d32f2f);animation:pulse 1.5s ease-in-out infinite}.voice-btn-speaking{background:linear-gradient(135deg,#4caf50,#388e3c)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.mic-icon-container{position:relative;width:64px;height:64px;display:flex;align-items:center;justify-content:center}.mic-icon{position:relative;z-index:2;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));transition:all .3s ease}.mic-icon.recording{animation:mic-pulse 1.5s ease-in-out infinite}@keyframes mic-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.mic-ripple{position:absolute;width:64px;height:64px;border:2px solid rgba(255,255,255,.6);border-radius:50%;animation:ripple-effect 2s ease-out infinite;z-index:1}.mic-ripple-delay{animation-delay:1s}@keyframes ripple-effect{0%{transform:scale(1);opacity:.8}to{transform:scale(2);opacity:0}}.recording-indicator{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%}.mic-icon-container.active{animation:float 2s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.pulse-ring{position:absolute;width:80px;height:80px;border:3px solid rgba(255,255,255,.8);border-radius:50%;animation:pulse-ring 1.5s ease-out infinite;z-index:1}@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}to{transform:scale(2);opacity:0}}.sound-wave-container{display:flex;align-items:center;justify-content:center;gap:4px;height:60px;padding:0 1rem}.sound-wave-bar{width:6px;background:linear-gradient(180deg,#fff,#fff9);border-radius:3px;transition:height .1s ease-out;box-shadow:0 0 10px #ffffff80}.sound-wave-container.speaking .sound-wave-bar{animation:wave-speaking .6s ease-in-out infinite}.sound-wave-container.speaking .sound-wave-bar:nth-child(1){animation-delay:0s}.sound-wave-container.speaking .sound-wave-bar:nth-child(2){animation-delay:.1s}.sound-wave-container.speaking .sound-wave-bar:nth-child(3){animation-delay:.2s}.sound-wave-container.speaking .sound-wave-bar:nth-child(4){animation-delay:.3s}.sound-wave-container.speaking .sound-wave-bar:nth-child(5){animation-delay:.4s}@keyframes wave-speaking{0%,to{height:20%}50%{height:80%}}.speaking-indicator{display:flex;flex-direction:column;align-items:center;gap:1rem}.speaker-icon{position:relative;z-index:2;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.speaker-icon .sound-wave-1{animation:speaker-wave-1 1.5s ease-in-out infinite}.speaker-icon .sound-wave-2{animation:speaker-wave-2 1.5s ease-in-out infinite;animation-delay:.2s}@keyframes speaker-wave-1{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes speaker-wave-2{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.voice-status{display:flex;flex-direction:column;align-items:center;gap:1rem;color:#00bcd4;font-size:1rem;font-weight:500}.spinner{width:40px;height:40px;border:4px solid rgba(0,188,212,.2);border-top-color:#00bcd4;border-radius:50%;animation:spin 1s linear infinite}.voice-transcript{margin-top:1.5rem;padding:1rem;background:#2d2d2d;border:1px solid #404040;border-radius:8px;border-left:4px solid #00bcd4}.transcript-label{display:block;color:#00bcd4;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.transcript-text{color:#fff;font-size:1rem;line-height:1.6;margin:0}@media (max-width: 768px){.voice-btn{padding:1.25rem 1.5rem;font-size:.9rem}.voice-btn svg{width:28px;height:28px}}.case-lookup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}.case-lookup-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:20px;width:90%;max-width:900px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}.case-lookup-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.case-lookup-header h2{margin:0;color:#fff;font-size:24px}.close-button{background:#ffffff1a;border:none;color:#fff;font-size:24px;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all .3s ease}.close-button:hover{background:#ff3b30cc;transform:rotate(90deg)}.case-lookup-content{padding:30px;overflow-y:auto;max-height:calc(90vh - 80px)}.search-form{margin-bottom:30px}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.form-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:15px}.search-button{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.search-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #667eea66}.search-button:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#ff3b3033;border:1px solid rgba(255,59,48,.5);border-radius:10px;padding:15px;color:#ff6b6b;margin-bottom:20px}.search-results{margin-top:30px}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.1)}.results-header h3{margin:0;color:#fff}.results-count{color:#ffffffb3;font-size:14px}.results-note{width:100%;margin-top:10px;padding:10px;background:#4a9eff1a;border-radius:8px;color:#4a9eff;font-size:13px}.results-list{display:flex;flex-direction:column;gap:15px}.case-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease}.case-item:hover{background:#ffffff1a;border-color:#667eea80;transform:translate(5px)}.case-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.case-header h4{margin:0;color:#fff;font-size:18px;flex:1}.case-citation{color:#4a9eff;font-size:14px;font-weight:500;margin-left:15px}.case-meta{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:12px;font-size:13px}.case-court,.case-year,.case-jurisdiction,.case-relevance{color:#ffffffb3;padding:4px 10px;background:#ffffff0d;border-radius:6px}.case-relevance{background:#667eea33;color:#667eea}.case-summary{color:#fffc;line-height:1.6;margin:12px 0}.case-link{display:inline-block;color:#4a9eff;text-decoration:none;font-size:14px;margin-top:10px;transition:all .3s ease}.case-link:hover{color:#667eea;text-decoration:underline}@media (max-width: 768px){.case-lookup-modal{width:95%;max-height:95vh}.form-row{grid-template-columns:1fr}.case-header{flex-direction:column}.case-citation{margin-left:0;margin-top:5px}}.amendment-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}.amendment-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:20px;width:90%;max-width:800px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}.amendment-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.amendment-header h2{margin:0;color:#fff;font-size:24px}.amendment-content{padding:30px;overflow-y:auto;max-height:calc(90vh - 80px)}.amendment-form{display:flex;flex-direction:column;gap:20px}.form-group label{display:block;color:#fff;margin-bottom:8px;font-weight:500}.form-group input,.form-group select{width:100%;padding:12px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:14px;transition:all .3s ease}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.form-group select option{background:#1a1a2e;color:#fff;padding:10px;font-size:14px}.form-group select option:hover{background:#667eea}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4a9eff;background:#ffffff26}.form-group input::placeholder{color:#ffffff80}.form-group select::-ms-expand{display:none}.form-group select optgroup{background:#1a1a2e;color:#fff;font-weight:700}.form-group select{position:relative;z-index:10}.form-group select:focus option{background:#2a2a3e;color:#fff}.form-group select:focus option:checked{background:#667eea;color:#fff}.form-group textarea{width:100%;padding:12px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:14px;font-family:inherit;resize:vertical;transition:all .3s ease}.form-group textarea:focus{outline:none;border-color:#4a9eff;background:#ffffff26}.form-group textarea::placeholder{color:#ffffff80}.generate-button{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.generate-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #667eea66}.generate-button:disabled{opacity:.6;cursor:not-allowed}.disclaimer{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:10px;padding:15px;color:#ffc107;font-size:13px;line-height:1.5}.amendment-result{display:flex;flex-direction:column;gap:20px}.result-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.1)}.result-header h3{margin:0;color:#fff}.result-actions{display:flex;gap:10px}.action-button{padding:8px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:14px;cursor:pointer;transition:all .3s ease}.action-button:hover{background:#fff3;transform:translateY(-2px)}.result-note{padding:12px;background:#4a9eff1a;border-radius:8px;color:#4a9eff;font-size:13px}.result-content{background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:20px;max-height:500px;overflow-y:auto}.result-content pre{margin:0;color:#ffffffe6;font-family:Courier New,monospace;font-size:13px;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.result-meta{display:flex;justify-content:space-between;padding-top:15px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:#fff9}@media (max-width: 768px){.amendment-modal{width:95%;max-height:95vh}.result-header{flex-direction:column;gap:15px;align-items:flex-start}.result-actions{width:100%;justify-content:space-between}.action-button{flex:1}}.document-generator-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}.document-generator-modal{background:#fff;border-radius:16px;width:90%;max-width:1200px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:2px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-header h2{margin:0;font-size:24px;font-weight:700}.close-button{background:#fff3;border:none;font-size:24px;cursor:pointer;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s}.close-button:hover{background:#ffffff4d;transform:rotate(90deg)}.progress-indicator{display:flex;justify-content:space-between;padding:24px 32px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.progress-step{display:flex;align-items:center;gap:8px;flex:1;position:relative;opacity:.4;transition:opacity .3s}.progress-step.active{opacity:1}.progress-step:not(:last-child):after{content:"";position:absolute;right:-50%;top:15px;width:100%;height:2px;background:#e5e7eb}.progress-step.active:not(:last-child):after{background:#667eea}.step-number{width:32px;height:32px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;color:#6b7280}.progress-step.active .step-number{background:#667eea;color:#fff}.step-label{font-size:14px;font-weight:500;color:#6b7280}.progress-step.active .step-label{color:#111827}.modal-content{padding:32px;overflow-y:auto;flex:1}.document-type-selection h3{margin:0 0 24px;font-size:20px;color:#111827}.document-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.document-type-card{border:2px solid #e5e7eb;border-radius:12px;padding:24px;cursor:pointer;transition:all .3s;text-align:center;background:#fff}.document-type-card:hover{border-color:#667eea;transform:translateY(-4px);box-shadow:0 8px 24px #667eea26}.doc-icon{font-size:48px;margin-bottom:12px}.document-type-card h4{margin:0 0 8px;font-size:16px;color:#111827;font-weight:600}.document-type-card p{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.document-form{max-width:800px;margin:0 auto}.form-header{text-align:center;margin-bottom:32px}.form-header h3{margin:0 0 8px;font-size:24px;color:#111827}.form-header p{margin:0;color:#6b7280;font-size:14px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.required{color:#ef4444;margin-left:4px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s;color:#111827;background-color:#fff}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#667eea}.form-group textarea{resize:vertical;min-height:100px}.form-group input[type=checkbox]{width:auto;margin-right:8px}.error-message{background:#fee2e2;border:1px solid #fecaca;color:#991b1b;padding:12px 16px;border-radius:8px;margin:16px 0;font-size:14px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.btn-primary,.btn-secondary,.btn-action{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #667eea4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb}.btn-action{background:#f3f4f6;color:#374151;padding:8px 16px;font-size:13px}.btn-action:hover{background:#667eea;color:#fff}.disclaimer{background:#fef3c7;border:1px solid #fde68a;color:#92400e;padding:12px 16px;border-radius:8px;margin-top:24px;font-size:13px;line-height:1.6}.document-preview{max-width:900px;margin:0 auto}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.preview-header h3{margin:0;font-size:20px;color:#111827}.preview-actions{display:flex;gap:8px}.preview-note{background:#dbeafe;border:1px solid #bfdbfe;color:#1e40af;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.preview-content{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:24px;margin-bottom:16px;max-height:500px;overflow-y:auto}.preview-content pre{white-space:pre-wrap;word-wrap:break-word;font-family:Courier New,monospace;font-size:13px;line-height:1.8;color:#111827;margin:0}.preview-meta{display:flex;gap:24px;padding:16px;background:#f9fafb;border-radius:8px;font-size:13px;color:#6b7280;margin-bottom:16px}.preview-meta span{display:flex;align-items:center;gap:4px}.preview-footer{display:flex;justify-content:center;padding-top:16px;border-top:1px solid #e5e7eb}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.document-generator-modal{width:95%;max-height:95vh}.modal-header{padding:16px 20px}.modal-header h2{font-size:18px}.modal-content{padding:20px}.document-types-grid{grid-template-columns:1fr}.progress-indicator{padding:16px 20px}.step-label{display:none}.preview-actions{flex-wrap:wrap}.preview-meta{flex-direction:column;gap:8px}}.chat-history-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}.chat-history-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:20px;width:90%;max-width:800px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}.chat-history-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.chat-history-header h2{margin:0;color:#fff;font-size:24px}.chat-history-content{padding:20px 30px 30px;overflow-y:auto;max-height:calc(90vh - 80px)}.search-bar{display:flex;gap:10px;margin-bottom:20px}.search-bar input{flex:1;padding:12px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:14px;transition:all .3s ease}.search-bar input:focus{outline:none;border-color:#4a9eff;background:#ffffff26}.search-bar button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;font-size:18px;cursor:pointer;transition:all .3s ease}.search-bar button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #667eea66}.search-bar button:disabled{opacity:.6;cursor:not-allowed}.tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1)}.tab{padding:12px 20px;background:transparent;border:none;border-bottom:2px solid transparent;color:#fff9;font-size:14px;cursor:pointer;transition:all .3s ease}.tab:hover{color:#ffffffe6}.tab.active{color:#fff;border-bottom-color:#667eea}.sessions-list,.search-results-list{display:flex;flex-direction:column;gap:12px}.session-item{display:flex;justify-content:space-between;align-items:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px;cursor:pointer;transition:all .3s ease}.session-item:hover{background:#ffffff1a;border-color:#667eea80;transform:translate(5px)}.session-content{flex:1;min-width:0}.session-preview{color:#ffffffe6;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-meta{display:flex;gap:15px;font-size:13px;color:#fff9}.delete-button{background:#ff3b3033;border:1px solid rgba(255,59,48,.3);border-radius:8px;padding:8px 12px;color:#ff6b6b;cursor:pointer;transition:all .3s ease}.delete-button:hover{background:#ff3b3066;transform:scale(1.1)}.message-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px;cursor:pointer;transition:all .3s ease}.message-item:hover{background:#ffffff1a;border-color:#667eea80}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.message-time{font-size:13px;color:#fff9}.message-category{font-size:12px;padding:4px 10px;background:#667eea33;border-radius:6px;color:#667eea}.message-content{display:flex;flex-direction:column;gap:10px}.message-question,.message-answer{color:#ffffffe6;line-height:1.5}.message-question strong,.message-answer strong{color:#4a9eff;margin-right:8px}.message-content mark{background:#ffc1074d;color:#ffc107;padding:2px 4px;border-radius:3px}.empty-state{text-align:center;padding:60px 20px;color:#fff9}.empty-state p{font-size:18px;margin-bottom:10px}.empty-state small{font-size:14px;color:#fff6}@media (max-width: 768px){.chat-history-modal{width:95%;max-height:95vh}.tabs{flex-direction:column}.tab{border-bottom:none;border-left:2px solid transparent}.tab.active{border-left-color:#667eea}.session-meta{flex-direction:column;gap:5px}}.ai-summary-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease}.ai-summary-modal{background:#fff;border-radius:24px;width:95%;max-width:clamp(720px,90vw,1100px);max-height:90dvh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 80px #0009;border:1px solid rgba(0,0,0,.1);animation:slideUp .4s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.summary-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#0000000d;border-bottom:1px solid rgba(0,0,0,.1);position:relative;flex-shrink:0}.header-actions-top,.header-title{display:flex;align-items:center;gap:.75rem}.header-title svg{color:#667eea}.header-title h2{margin:0;color:#000;font-size:1.5rem;font-weight:700}.header-actions-top{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end;position:absolute;top:1.5rem;right:60px}.lawyer-select-btn,.send-email-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#0000000d;border:1px solid rgba(0,0,0,.2);border-radius:8px;color:#000;font-size:.875rem;font-weight:500;cursor:not-allowed;transition:all .2s ease;white-space:nowrap;position:relative}.lawyer-select-btn:hover:not(:disabled),.send-email-btn:hover:not(:disabled){background:#0000001a;border-color:#0000004d}.lawyer-select-btn:disabled,.send-email-btn:disabled{opacity:.6;cursor:not-allowed}.coming-soon-badge{background:#ffc107;color:#000;padding:.125rem .5rem;border-radius:12px;font-size:.7rem;font-weight:600;margin-left:.25rem}.close-button{min-width:36px;min-height:36px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(0,0,0,.2);border-radius:10px;color:#000;font-size:1.5rem;cursor:pointer;transition:all .2s ease;flex-shrink:0}.close-button:hover{background:#0000001a;border-color:#0000004d;color:#000}.summary-content-area{padding:2rem;overflow-y:auto;flex:1;min-height:0;-webkit-overflow-scrolling:touch}.summary-content-area::-webkit-scrollbar{width:8px}.summary-content-area::-webkit-scrollbar-track{background:#0000000d}.summary-content-area::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}.summary-intro{text-align:center;padding:2rem}.intro-icon{margin-bottom:1.5rem;color:#667eea}.summary-intro h3{margin:0 0 1rem;font-size:1.75rem;color:#000;font-weight:700}.summary-intro p{color:#000;font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.features-list{list-style:none;padding:0;margin:2rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;text-align:left}.features-list li{padding:1rem;background:#0000000d;border-radius:10px;color:#000;font-size:.95rem;border:1px solid rgba(0,0,0,.1)}.conversation-info{display:flex;justify-content:center;gap:1.5rem;margin:2rem 0;flex-wrap:wrap}.conversation-info span{padding:.5rem 1rem;background:#667eea1a;border:1px solid rgba(102,126,234,.3);border-radius:8px;color:#667eea;font-size:.9rem;font-weight:500}.generate-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #667eea66;margin:2rem auto 0}.generate-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 35px #667eea80}.generate-btn:disabled{opacity:.6;cursor:not-allowed}.summary-loading{text-align:center;padding:3rem 2rem}.loading-spinner{margin-bottom:2rem}.spinner{width:60px;height:60px;border:4px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.summary-loading h3{margin:0 0 .5rem;font-size:1.5rem;color:#000}.summary-loading p{color:#000;font-size:1rem}.loading-steps{display:flex;flex-direction:column;gap:.75rem;margin-top:2rem;max-width:300px;margin-left:auto;margin-right:auto}.loading-steps .step{padding:.75rem;background:#0000000d;border-radius:8px;color:#000;text-align:left}.loading-steps .step.active{background:#667eea33;color:#667eea;font-weight:600}.summary-error{text-align:center;padding:3rem 2rem;color:#ef4444}.summary-error svg{margin-bottom:1.5rem}.summary-error h3{margin:0 0 1rem;font-size:1.5rem}.summary-error p{color:#000;margin-bottom:2rem}.retry-btn{padding:.75rem 2rem;background:transparent;border:2px solid #667eea;border-radius:10px;color:#667eea;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-btn:hover{background:#667eea1a}.summary-result{animation:fadeIn .5s ease}.result-header{margin-bottom:2rem}.header-info h3{margin:0 0 .75rem;font-size:1.5rem;color:#000;font-weight:700}.summary-meta{display:flex;gap:1rem;flex-wrap:wrap}.summary-meta span{padding:.375rem .75rem;background:#0000000d;border-radius:6px;color:#000;font-size:.875rem}.header-actions{display:flex;gap:.75rem;margin-top:1rem}.action-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#0000000d;border:1px solid rgba(0,0,0,.1);border-radius:8px;color:#000;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#0000001a;border-color:#667eea80;color:#000}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{padding:1.25rem;background:#0000000d;border:1px solid rgba(0,0,0,.1);border-radius:12px;text-align:center}.stat-value{font-size:2rem;font-weight:700;color:#667eea;margin-bottom:.5rem}.stat-label{font-size:.875rem;color:#000;text-transform:uppercase;letter-spacing:.5px}.summary-text{background:#00000008;border:1px solid rgba(0,0,0,.1);border-radius:16px;padding:2rem;margin-bottom:1.5rem}.formatted-summary{color:#000;line-height:1.8;font-size:1rem}.summary-section{margin-bottom:2rem}.summary-section h3{margin:0 0 1rem;font-size:1.25rem;color:#667eea;font-weight:700;padding-bottom:.5rem;border-bottom:2px solid rgba(102,126,234,.3)}.summary-content p{margin:.5rem 0;color:#000;line-height:1.7}.summary-disclaimer{display:flex;gap:1rem;padding:1.5rem;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:12px;color:#000;font-size:.9rem;line-height:1.6}.summary-disclaimer svg{flex-shrink:0;color:#ffc107}.summary-disclaimer strong{color:#ffc107}@media (max-width: 768px){.ai-summary-modal{width:98%;max-height:95vh}.summary-header{padding:1rem;flex-wrap:wrap}.header-actions-top{position:static;order:3;width:100%;margin-top:1rem;align-items:stretch}.lawyer-select-btn,.send-email-btn{width:100%;justify-content:center}.summary-content-area{padding:1rem}.features-list{grid-template-columns:1fr}.summary-stats{grid-template-columns:repeat(2,1fr)}.header-actions{flex-direction:column}.action-btn{width:100%;justify-content:center}}:root{--bg: #1e1e1e;--panel: #252525;--panel-2: #2a2a2a;--panel-3: #1e1e1e;--top: #3a3a3a;--border: rgba(255, 255, 255, .08);--text: rgba(255, 255, 255, .9);--muted: rgba(255, 255, 255, .6);--muted2: rgba(255, 255, 255, .4);--accent: #147c91;--accent-lawyer: #b8860b;--accent-lawyer-light: #daa520;--green: #1f8a5b;--radius: 10px;--radius-lg: 12px}.chat-sidebar{width:280px;min-width:0;max-width:100%;height:100vh;background:var(--panel);border-right:1px solid var(--border);padding:clamp(10px,2.5vw,14px);display:grid;grid-template-rows:auto auto auto auto 1fr auto;gap:clamp(8px,2vw,12px);flex-shrink:0;position:relative;z-index:100;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);overflow-y:auto;box-sizing:border-box}.chat-sidebar.collapsed{width:60px;padding:8px}.chat-sidebar.user-sidebar{grid-template-rows:auto auto auto auto auto auto;gap:clamp(4px,1vw,8px)}.chat-sidebar.lawyer-sidebar{display:flex;flex-direction:column;padding-bottom:10px}.chat-sidebar.lawyer-sidebar .sidebar-logo-header{flex-shrink:0}.chat-sidebar.lawyer-sidebar .resources-section{min-height:0;overflow-y:auto}.chat-sidebar.lawyer-sidebar .resources-section.resources-collapsed{flex:0 0 auto}.chat-sidebar.lawyer-sidebar .sidebar-history-section{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.chat-sidebar.lawyer-sidebar .switch-portal-section,.chat-sidebar.lawyer-sidebar .user-profile-section{flex-shrink:0}.sidebar-logo-header{display:flex;align-items:center;gap:10px;padding:8px 6px}.logo-brand{display:flex;align-items:center;gap:10px}.brand-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#ffffff0f}.brand-icon svg{width:20px;height:20px;stroke:var(--accent)}.brand-title{font-size:1rem;font-weight:700;color:var(--text);letter-spacing:.5px;margin:0}.back-btn{display:none}.new-chat-section{width:100%}.new-chat-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:clamp(6px,1.5vw,10px);padding:clamp(8px,2vw,10px) clamp(8px,2vw,12px);background:#ffffff0f;border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text);font-size:clamp(12px,2.5vw,14px);font-weight:500;cursor:pointer;transition:background .12s ease;min-width:0}.new-chat-btn:hover{background:#ffffff14}.new-chat-btn svg{opacity:.75}.search-section{width:100%}.search-wrapper{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:8px;padding:10px;border-radius:var(--radius);background:#ffffff0d;border:1px solid var(--border)}.search-icon{color:var(--muted2);display:flex;align-items:center}.search-input{width:100%;background:transparent;border:none;outline:none;color:var(--text);font-size:13px}.search-input::placeholder{color:var(--muted2)}.resources-section{display:flex;flex-direction:column;gap:clamp(6px,1.5vw,10px);overflow-y:auto;min-width:0;flex-shrink:0}.resources-section::-webkit-scrollbar{width:4px}.resources-section::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.section-title{color:var(--text);font-size:clamp(10px,2.2vw,12px);letter-spacing:.8px;text-transform:uppercase;margin:0;font-weight:700;flex-shrink:0}.resources-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,2vw,12px);align-content:start;min-width:0}.resource-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:clamp(8px,2vw,12px);padding:clamp(8px,2vw,16px) clamp(6px,1.5vw,10px);min-height:clamp(56px,12vw,82px);min-width:0;display:grid;justify-items:center;gap:clamp(4px,1vw,10px);cursor:pointer;transition:transform .12s ease,background .12s ease,border-color .12s ease;overflow:hidden}.resource-card:hover{transform:translateY(-1px);background:#ffffff0f;border-color:#ffffff1f}.resource-card.active{background:#ffffff1a;border-color:var(--accent, rgba(255, 255, 255, .2));box-shadow:0 0 0 1px var(--accent, rgba(255, 255, 255, .15))}.card-icon{width:clamp(28px,6vw,36px);height:clamp(28px,6vw,36px);min-width:24px;min-height:24px;border-radius:clamp(6px,1.5vw,10px);background:#ffffff0d;border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;color:#ffffffb3;font-size:clamp(14px,3vw,17px);flex-shrink:0}.card-icon svg{width:clamp(16px,4vw,20px);height:clamp(16px,4vw,20px);stroke:currentColor}.resource-card:hover .card-icon{color:#ffffffe6;background:#ffffff14;border-color:#ffffff1f}.card-label{font-size:clamp(11px,2.5vw,13px);color:#ffffffd9;text-align:center;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-spacer{flex:1;min-height:1rem}.user-profile-section{position:relative;border-top:1px solid var(--border);padding-top:clamp(8px,2vw,12px);flex-shrink:0;min-width:0}.profile-card{display:grid;grid-template-columns:clamp(32px,8vw,40px) 1fr clamp(22px,5vw,26px);align-items:center;gap:clamp(6px,1.5vw,10px);padding:clamp(8px,2vw,10px);border-radius:var(--radius-lg);border:1px solid var(--border);background:#ffffff0a;cursor:pointer;transition:background .12s ease;min-width:0}.profile-card:hover{background:#ffffff0f}.profile-avatar{width:clamp(28px,7vw,34px);height:clamp(28px,7vw,34px);min-width:24px;min-height:24px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:700;font-size:clamp(10px,2.2vw,12px)}.profile-info{display:flex;flex-direction:column;gap:2px}.profile-name{font-size:clamp(11px,2.5vw,13px);font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis}.profile-specialization{font-size:clamp(10px,2vw,11px);font-weight:500;color:var(--muted);font-style:italic}.profile-portal-type{font-size:clamp(9px,2vw,10px);font-weight:500;color:var(--muted2);text-transform:uppercase;letter-spacing:.5px}.profile-menu-btn{color:var(--muted);text-align:right;background:transparent;border:none;cursor:pointer;padding:0}.profile-menu-btn:hover{color:var(--text)}.profile-dropdown{position:absolute;bottom:100%;left:14px;right:14px;margin-bottom:8px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:8px;box-shadow:0 -8px 24px #0006;z-index:1000}.dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:10px;color:var(--text);font-size:13px;cursor:pointer;text-align:left;transition:background .12s ease}.dropdown-item:hover{background:#ffffff0f}.collapse-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff1a;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);color:var(--text);cursor:pointer;margin:auto}.collapse-toggle:hover{background:#ffffff26;border-color:#ffffff2e;color:var(--text)}.history-section{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1;min-height:0}.history-section::-webkit-scrollbar{width:6px}.history-section::-webkit-scrollbar-track{background:#ffffff0a;border-radius:3px}.history-section::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.history-section::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.section-header{display:flex;align-items:center;justify-content:space-between;padding:clamp(6px,1.5vw,8px) clamp(8px,2vw,10px);margin-bottom:clamp(4px,1vw,6px);background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:clamp(8px,2vw,10px);min-width:0;flex-shrink:0}.section-header.clickable{cursor:pointer;transition:background .12s ease,border-color .12s ease}.section-header.clickable:hover{background:#ffffff0d;border-color:#ffffff1a}.expand-icon{transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.history-content{display:flex;flex-direction:column;gap:16px}.chat-group{display:flex;flex-direction:column;gap:6px}.group-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.5px;padding:4px 8px}.group-icon{font-size:12px}.group-count{margin-left:auto;opacity:.6}.chat-list{display:flex;flex-direction:column;gap:4px}.chat-item{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#ffffff0a;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:all .12s ease;position:relative}.chat-item:hover{background:#ffffff0f;border-color:#ffffff14}.chat-item.active{background:#ffffff14;border-color:#ffffff26}.chat-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.chat-title{font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted2)}.chat-time{font-variant-numeric:tabular-nums}.chat-count{padding:2px 6px;background:#ffffff14;border-radius:6px;font-size:10px;font-weight:600}.chat-icons{display:flex;gap:4px;margin-top:4px}.icon-badge{font-size:11px;padding:2px 4px;background:#ffffff14;border-radius:4px}.chat-actions{display:none;gap:4px}.chat-item:hover .chat-actions{display:flex}.action-btn{padding:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:6px;cursor:pointer;font-size:12px;transition:all .12s ease}.action-btn:hover{background:#ffffff1a}.delete-btn:hover{background:#dc354533;border-color:#dc354566}.archive-btn:hover{background:#ffc10733;border-color:#ffc10766}.archive-section{padding:8px 0;border-top:1px solid var(--border)}.archive-toggle-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:all .12s ease}.archive-toggle-btn:hover{background:#ffffff0f}.empty-state{padding:20px;text-align:center;color:var(--muted)}.empty-state p{font-size:13px;font-weight:500;margin-bottom:4px}.empty-state small{font-size:11px;color:var(--muted2)}@media (max-width: 768px){.chat-sidebar{position:fixed;left:0;top:0;width:280px;max-width:85vw;height:100vh;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1001;box-shadow:4px 0 24px #0009;background:var(--panel)}.chat-sidebar.mobile-open{transform:translate(0)}.chat-sidebar.collapsed{transform:translate(-100%)}.drawerPanel .chat-sidebar{position:relative;left:auto;top:auto;width:100%;max-width:100%;height:auto;min-height:0;transform:none;box-shadow:none;z-index:auto;display:flex;flex-direction:column}.drawerPanel .chat-sidebar.collapsed{transform:none}.drawerPanel .resources-section,.drawerPanel .history-section,.drawerPanel .sidebar-history-section{display:flex;flex-direction:column;width:100%;min-width:0;max-height:none;flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.drawerPanel .resources-section{flex-shrink:0}.drawerPanel .history-section,.drawerPanel .sidebar-history-section{flex:1;min-height:0;overflow-y:auto}.drawerPanel .chat-sidebar.user-sidebar .history-section,.drawerPanel .chat-sidebar.user-sidebar .sidebar-history-section{flex:0 1 auto}.resources-grid,.drawerPanel .resources-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,1.5vw,10px)}.resource-card,.drawerPanel .resource-card{padding:clamp(8px,2vw,14px) clamp(6px,1.5vw,12px);min-height:clamp(52px,11vw,60px)}.card-label,.drawerPanel .card-label{font-size:clamp(10px,2.2vw,12px)}.back-btn{width:40px;height:40px}.resources-section{overflow-y:auto}}.portal-badge{font-size:10px;font-weight:600;padding:3px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;margin-left:4px}.user-badge{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff}.lawyer-badge{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff}.switch-portal-section{padding:8px 0;border-top:1px solid var(--border)}.switch-portal-btn{width:100%;padding:12px 16px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.switch-portal-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.lawyer-switch-btn{background:linear-gradient(135deg,#f59e0b,#ef4444)}.lawyer-switch-btn:hover{box-shadow:0 4px 12px #f59e0b4d}.lawyer-sidebar .profile-avatar{background:linear-gradient(135deg,#b8860b,#daa520);box-shadow:0 2px 8px #b8860b4d}.lawyer-avatar{background:linear-gradient(135deg,#b8860b,#daa520)!important;box-shadow:0 2px 8px #b8860b4d}.notification-badge{position:absolute;top:8px;right:8px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.priority-card{border:1px solid rgba(239,68,68,.3)!important;background:#ef44440d!important}.priority-card:hover{border-color:#ef444480!important;background:#ef44441a!important}.resource-card{position:relative}.profile-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.profile-name{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-portal-type{font-size:11px;font-weight:500;color:#3b82f6;text-transform:uppercase;letter-spacing:.5px}.lawyer-portal-type{color:#f59e0b}.profile-card{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .2s ease}.profile-card:hover{background:var(--panel-3);border-color:#ffffff1f}.lawyer-sidebar .brand-icon svg{stroke:var(--accent-lawyer-light)}.lawyer-sidebar .brand-title{background:linear-gradient(135deg,#daa520,#b8860b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:.8px}.lawyer-sidebar .resource-card{position:relative;overflow:hidden}.lawyer-sidebar .resource-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#b8860b0d,#daa52005);opacity:0;transition:opacity .3s ease}.lawyer-sidebar .resource-card:hover:before{opacity:1}.lawyer-sidebar .resource-card:hover{border-color:#daa5204d;box-shadow:0 4px 12px #b8860b26}.lawyer-sidebar .portal-indicator-badge{background:linear-gradient(135deg,#b8860b,#daa520);box-shadow:0 2px 8px #b8860b66;font-weight:600;letter-spacing:.5px}.profile-specialization{color:var(--accent-lawyer-light);font-style:italic;font-weight:500}.lawyer-sidebar .profile-name{font-weight:600;letter-spacing:.3px}.lawyer-sidebar{border-right:1px solid rgba(184,134,11,.15)}.lawyer-sidebar .new-chat-btn{background:linear-gradient(135deg,#b8860b1a,#daa5200d);border:1px solid rgba(218,165,32,.2)}.lawyer-sidebar .new-chat-btn:hover{background:linear-gradient(135deg,#b8860b26,#daa52014);border-color:#daa5204d;box-shadow:0 2px 8px #b8860b26}.lawyer-sidebar .card-icon svg{stroke:var(--accent-lawyer-light)}.lawyer-sidebar .notification-badge{background:linear-gradient(135deg,#b8860b,#daa520);font-weight:700;box-shadow:0 2px 6px #b8860b66}.chat-header-clean{border-bottom:1px solid rgba(255,255,255,.08);background:var(--panel);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:12px;height:var(--header-h, 56px);min-height:var(--header-h, 56px);overflow:hidden}.chat-header-clean .header-left-clean,.chat-header-clean .header-right-clean{min-height:0;overflow:hidden}.lawyer-portal .chat-header-clean{border-bottom:1px solid rgba(184,134,11,.15)}.document-dashboard-card{position:relative;background:linear-gradient(135deg,#b8860b1a,#daa5200d)!important;border:1px solid rgba(184,134,11,.3)!important}.document-dashboard-card:hover{background:linear-gradient(135deg,#b8860b26,#daa52014)!important;border-color:var(--accent-lawyer)!important;box-shadow:0 4px 12px #b8860b33!important}.feature-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.65rem;font-weight:700;padding:.2rem .5rem;border-radius:10px;letter-spacing:.05em;box-shadow:0 2px 6px #10b98166;animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}:root{--bg: #0b0f14;--panel: #0f1620;--panel2: #0b121b;--border: rgba(255, 255, 255, .08);--text: rgba(255, 255, 255, .92);--muted: rgba(255, 255, 255, .62);--accent-user: #7c5cff;--accent-lawyer: #ff5db1;--shadow: 0 10px 30px rgba(0, 0, 0, .55);--r12: 12px;--r16: 16px;--sidebarW: 320px;--sidebarCollapsedW: 60px;--topbarH: 56px;--header-h: 56px;--drawerW: min(86vw, 360px);--gap: 14px;--pad: 16px;--safeB: env(safe-area-inset-bottom, 0px);--safeT: env(safe-area-inset-top, 0px)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1200px 600px at 25% 0%,rgba(124,92,255,.12),transparent 60%),radial-gradient(900px 500px at 80% 20%,rgba(255,93,177,.1),transparent 55%),var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}.no-scroll{overflow:hidden}.legid[data-portal=user]{--accent: var(--accent-user)}.legid[data-portal=lawyer]{--accent: var(--accent-lawyer)}.legid{height:100vh;height:100dvh;min-height:100svh;display:grid;grid-template-columns:var(--sidebarW) 1fr;grid-template-rows:1fr;overflow:hidden;transition:grid-template-columns .2s ease}.legid.sidebar-collapsed{grid-template-columns:var(--sidebarCollapsedW) 1fr}.legid .sidebar{border-right:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 55%),var(--panel2);padding:var(--pad);overflow:auto}.legid .main{min-width:0;min-height:0;display:flex;flex-direction:column;height:100%;overflow:hidden}.legid .topbar{display:none;position:sticky;top:0;z-index:30;width:100%;height:calc(var(--topbarH) + var(--safeT));padding:calc(10px + var(--safeT)) var(--pad) 10px;padding-right:max(var(--pad),env(safe-area-inset-right,0px));background:#0b0f14b8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);align-items:center;gap:10px}.legid .brand{display:flex;align-items:center;gap:10px;min-width:0}.legid .brandMark{filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}.legid .brandText{font-weight:800;letter-spacing:.16em;font-size:16px}.legid .pill{font-size:12px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);white-space:nowrap}.legid .topbarLeftExtra{display:flex;align-items:center;gap:8px;min-width:0}.legid .topbarRight{margin-left:auto;display:flex;align-items:center;gap:8px;min-width:0;flex-shrink:0}.legid .chip,.legid .legid-topbar-chip{background:#ffffff0f;border:1px solid var(--border);color:var(--text);padding:7px 10px;border-radius:999px;font-size:12px;cursor:pointer;white-space:nowrap}.legid .legid-topbar-chip:hover{background:#ffffff1a}.legid .legid-topbar-chip.active{border-color:var(--accent);background:#ffffff14}.legid .legid-topbar-law{max-width:140px;overflow:hidden;text-overflow:ellipsis}.legid .legid-topbar-profile-btn{flex-shrink:0}.legid .iconBtn{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);cursor:pointer}.legid .iconBtn:active{transform:translateY(1px)}.legid .drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;opacity:0;transition:opacity .18s ease}.legid .drawer.isOpen{pointer-events:auto;opacity:1}.legid .drawerOverlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c}.legid .drawerPanel{position:absolute;top:0;left:0;height:100%;width:var(--drawerW);max-width:360px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 55%),var(--panel2);border-right:1px solid var(--border);box-shadow:var(--shadow);transform:translate(-100%);transition:transform .22s ease;display:flex;flex-direction:column}.legid .drawer.isOpen .drawerPanel{transform:translate(0)}.legid .drawerHeader{flex-shrink:0;height:calc(var(--topbarH) + var(--safeT));min-height:56px;padding:calc(10px + var(--safeT)) var(--pad) 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border)}.legid .drawerBrand{display:flex;align-items:center;gap:10px;min-width:0}.legid .drawerBrandMark{font-size:1.25rem;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3))}.legid .drawerBrandText{font-weight:800;letter-spacing:.12em;font-size:16px;color:var(--text)}.legid .drawerPill{font-size:11px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);white-space:nowrap}.legid .drawerCloseBtn{flex-shrink:0}.legid .drawerBody{flex:1;min-height:0;padding:clamp(10px,2.5vw,var(--pad));overflow:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.legid .drawerPanel .chat-sidebar .sidebar-logo-header{display:none}.legid .drawerPanel .chat-sidebar{width:100%;max-width:none;min-width:0;height:100%;min-height:0;align-self:stretch}.legid .page{flex:1;min-height:0;overflow:auto;padding:var(--pad);display:flex;flex-direction:column;gap:var(--gap)}.legid .centerStage{flex:1;min-height:0;display:grid;place-items:center;color:var(--muted)}.legid .thread{flex:1;min-height:0;overflow:auto;padding:var(--pad);display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}.legid .msg{max-width:min(78ch,100%);overflow-wrap:break-word;border:1px solid var(--border);background:#ffffff0a;border-radius:14px;padding:12px 14px;line-height:1.45}.legid .main .chatMain .message,.legid .main .chatMain .message-bubble,.legid .main .chatMain .message-text,.legid .main .chatMain .welcome-message,.legid .main .chatMain .welcome-greeting{max-width:100%;overflow-wrap:break-word}.legid .main .chatMain .uploaded-image-preview{display:flex;flex-direction:column;gap:8px;max-width:100%;margin-top:6px}.legid .main .chatMain .uploaded-image-preview .preview-image{max-width:100%;max-height:min(60vh,320px);width:auto;height:auto;object-fit:contain;border-radius:10px;background:#ffffff0f;box-shadow:0 2px 8px #0003;cursor:pointer;display:block}.legid .main .chatMain .uploaded-image-preview .image-info{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.legid .main .chatMain .uploaded-image-preview .file-name,.legid .main .chatMain .uploaded-image-preview .file-size{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legid .image-fullscreen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#000000e6;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.legid .image-fullscreen-overlay .image-fullscreen-close{position:absolute;top:16px;right:16px;width:44px;height:44px;border:none;border-radius:50%;background:#ffffff26;color:var(--text);font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1}.legid .image-fullscreen-overlay .image-fullscreen-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.legid .msg.user{margin-left:auto;border-color:#7c5cff40;background:linear-gradient(180deg,#7c5cff29,#ffffff08)}.legid[data-portal=lawyer] .msg.user{border-color:#ff5db140;background:linear-gradient(180deg,#ff5db129,#ffffff08)}.legid .msg.assistant{margin-right:auto}.legid .composer{padding:10px var(--pad) calc(10px + var(--safeB));border-top:1px solid var(--border);background:#0b0f14b8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.legid .composerRow{display:flex;gap:10px;align-items:flex-end;max-width:1100px;margin:0 auto}.legid .input{flex:1;min-height:44px;max-height:140px;resize:none;padding:12px;border-radius:14px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);outline:none}.legid .input:focus{border-color:#ffffff2e;box-shadow:0 0 0 4px #7c5cff24}.legid[data-portal=lawyer] .input:focus{box-shadow:0 0 0 4px #ff5db11f}.legid .sendBtn{width:44px;height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(120% 120% at 20% 20%,#ffffff24,#ffffff0f),linear-gradient(135deg,#7c5cff59,#ffffff0a);color:var(--text);cursor:pointer}.legid[data-portal=lawyer] .sendBtn{background:radial-gradient(120% 120% at 20% 20%,#ffffff24,#ffffff0f),linear-gradient(135deg,#ff5db159,#ffffff0a)}.legid .desktopOnly{display:block}@media (max-width: 1023px){.legid{grid-template-columns:1fr;grid-template-rows:auto 1fr;--pad: 10px;--header-h: 48px;--topbarH: 48px;--drawerW: min(92vw, 340px)}.legid .topbar{display:flex;min-width:0;overflow:hidden;gap:clamp(4px,1.5vw,8px);padding-left:clamp(6px,1.5vw,8px);padding-right:clamp(6px,1.5vw,8px)}.legid .topbar .brand{min-width:0;overflow:hidden}.legid .topbar .brandText{font-size:clamp(13px,3.5vw,16px)}.legid .topbar .pill{font-size:clamp(10px,2.2vw,12px);padding:clamp(3px,.8vw,4px) clamp(6px,1.5vw,8px);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legid .topbarRight{min-width:0;overflow:hidden;flex-shrink:1}.legid .topbarLeftExtra{min-width:0;overflow:hidden}.legid .chip,.legid .legid-topbar-chip{font-size:clamp(10px,2.2vw,12px);padding:clamp(4px,1vw,7px) clamp(6px,1.5vw,10px);max-width:min(120px,28vw);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legid .legid-topbar-law{max-width:min(140px,28vw)}.legid .iconBtn{width:clamp(36px,9vw,40px);height:clamp(36px,9vw,40px);min-width:32px;min-height:32px}.legid .desktopOnly{display:none}.legid .main{height:calc(100svh - var(--topbarH) - var(--safeT));transition:margin-left .22s ease}.legid.drawer-open .main{margin-left:var(--drawerW)}.legid.drawer-open .drawerOverlay{display:none}.legid .main .chatMain .messages-container,.legid .main .chatMain.chatMain-empty .messages-container{flex:1;min-height:0}}.legid .main .chatMain{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.legid .main .chatMain .messages-container{flex:1;min-height:0;width:100%;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.legid .main .chatMain .message-actions{display:inline-flex;flex-wrap:nowrap;gap:4px;margin-top:6px;opacity:1;position:relative;z-index:2}.legid .main .chatMain .message-actions .action-btn{opacity:1;color:#ffffffd9;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.legid .main .chatMain .message-actions .action-btn:hover{color:#fff;background:#ffffff26;border-color:#fff3}.legid .main .chatMain .message-actions .action-btn svg{color:inherit;stroke:currentColor}.legid .main .chatMain .input-area{flex-shrink:0;padding:10px 12px;padding-bottom:calc(10px + var(--safeB));width:100%;box-sizing:border-box;min-height:48px}.legid .main .chatMain .input-container{width:100%;max-width:100%;box-sizing:border-box;display:flex;align-items:center;gap:10px;flex-wrap:nowrap;min-width:0}.legid .main .chatMain .input-container .chat-input{flex:1 1 auto;min-width:0}.legid .main .chatMain .upload-menu-container{flex-shrink:0;display:inline-flex}.legid .main .chatMain .plus-upload-btn,.legid .main .chatMain .voice-input-btn,.legid .main .chatMain .send-btn{flex-shrink:0;min-width:44px;min-height:44px}@media (max-width: 1023px){.legid .main .chat-header-clean{display:none!important}.legid .main .chatMain .messages-container{padding-bottom:56px}.legid .main .chatMain .input-container{gap:8px}.legid .main .chatMain .input-area{padding:clamp(4px,1vw,6px) clamp(6px,1.5vw,12px);padding-bottom:max(12px,var(--safeB))}.legid .main .chatMain .input-footer{display:none}.legid .main .chatMain .input-container{gap:clamp(6px,1.5vw,8px)}.legid .main .chatMain .chat-input{min-width:60px;font-size:clamp(14px,3.5vw,16px);padding:clamp(8px,2vw,12px) clamp(8px,2vw,12px)}.legid .main .chatMain .send-btn{padding:clamp(.3rem,1vw,.4rem) clamp(.5rem,1.2vw,.6rem);font-size:clamp(12px,2.8vw,13px);min-width:clamp(40px,10vw,44px);min-height:clamp(40px,10vw,44px)}.legid .main .chatMain .plus-upload-btn,.legid .main .chatMain .voice-input-btn{min-width:clamp(40px,10vw,44px);min-height:clamp(40px,10vw,44px)}.legid .main .chatMain .messages-container{padding-top:clamp(8px,2vw,12px)}.legid .main .chatMain .message-actions{display:inline-flex;flex-wrap:nowrap;gap:4px;margin-top:4px}.legid .main .chatMain .message-actions .action-btn{padding:4px 6px;min-width:28px;min-height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center}.legid .main .chatMain .message-actions .action-btn svg{width:14px;height:14px}}@media (max-width: 400px){.legid .topbar{padding-left:6px;padding-right:6px;gap:6px}.legid .legid-topbar-law{max-width:80px}.legid .brand .brandText{font-size:14px}.legid .chip,.legid .legid-topbar-chip{font-size:11px;padding:5px 8px}}@media (min-width: 1024px){.legid .main .chat-header-clean{display:flex;flex-shrink:0;height:var(--header-h);min-height:var(--header-h);align-items:center;overflow:hidden}.legid .main .chat-header-clean .header-left-clean,.legid .main .chat-header-clean .header-right-clean{min-height:0;overflow:hidden}}.legidApp[data-layout=mobile] .legid{min-height:100dvh;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;overflow-x:hidden;width:100%;max-width:100vw}.legidApp[data-layout=mobile] .legid .legidMain,.legidApp[data-layout=mobile] .legid .main{min-width:0;overflow:hidden;width:100%;max-width:100vw;height:calc(100svh - var(--topbarH) - var(--safeT))}.legidApp[data-layout=mobile] .legid .desktopOnly,.legidApp[data-layout=mobile] .legid .legidSidebar{display:none!important}.legidApp[data-layout=mobile] .legid .legidHeader,.legidApp[data-layout=mobile] .legid .topbar{display:flex!important;align-items:center;flex-wrap:nowrap;flex-shrink:0;min-width:0;overflow:hidden;height:calc(var(--topbarH) + var(--safeT));padding:calc(8px + var(--safeT)) 8px 8px;position:sticky;top:0;z-index:1000;background:#0b0f14d9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);gap:8px}.legidApp[data-layout=mobile] .legid .topbar .topbarLeftExtra{min-width:0;overflow:hidden}.legidApp[data-layout=mobile] .legid .legid-topbar-law{max-width:min(140px,28vw)}.legidApp[data-layout=mobile] .legid .topbar .legidHeaderRow{display:flex;align-items:center;flex-wrap:nowrap;width:100%;min-width:0;gap:8px}.legidApp[data-layout=mobile] .legid .topbar .legidHeaderLeft{flex-shrink:0;display:flex;align-items:center;gap:8px}.legidApp[data-layout=mobile] .legid .topbar .legidHeaderCenter{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.legidApp[data-layout=mobile] .legid .topbar .legidHeaderCenter .chip-strip{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.legidApp[data-layout=mobile] .legid .topbar .legidHeaderCenter .chip-strip::-webkit-scrollbar{display:none}.legidApp[data-layout=mobile] .legid .topbar .legidHeaderRight{flex-shrink:0;display:flex;align-items:center;gap:8px}.legidApp[data-layout=mobile] .legid .topbar .iconBtn{min-width:44px;min-height:44px}.legidApp[data-layout=mobile] .legid .topbar .brand{display:flex;align-items:center;gap:8px;min-width:0}.legidApp[data-layout=mobile] .legid .topbar .brandMark{filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}.legidApp[data-layout=mobile] .legid .topbar .brandText{font-weight:800;letter-spacing:.16em;font-size:clamp(14px,4vw,16px)}.legidApp[data-layout=mobile] .legid .topbar .pill{font-size:12px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);white-space:nowrap}.legidApp[data-layout=mobile] .legid .topbar .chip{min-height:44px;flex-shrink:0;white-space:nowrap}.legidApp[data-layout=mobile] .legid .topbar .legid-topbar-profile-btn{flex-shrink:0;width:40px;height:40px;min-width:44px;min-height:44px;padding:0;border:none;border-radius:50%;background:#ffffff1a;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.legidApp[data-layout=mobile] .legid .topbar .legid-topbar-profile-img{width:100%;height:100%;object-fit:cover}.legidApp[data-layout=mobile] .legid .topbar .legid-topbar-profile-initials{font-size:13px;font-weight:600;color:var(--text)}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1001;background:#0006}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap{position:fixed;top:calc(var(--topbarH) + var(--safeT));right:8px;z-index:1002;min-width:min(280px,90vw);max-width:90vw}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-menu{background:var(--panel2);border:1px solid var(--border);border-radius:12px;padding:12px;box-shadow:var(--shadow)}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-menu-header{display:flex;align-items:center;gap:12px;padding-bottom:12px}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-avatar-large,.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-avatar-large-img{width:44px;height:44px;border-radius:50%;flex-shrink:0}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-avatar-large-img{object-fit:cover}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-info{min-width:0}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-name,.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-menu-item{width:100%;text-align:left;padding:10px 12px;border-radius:8px;display:flex;align-items:center;gap:10px;background:transparent;border:none;color:var(--text);cursor:pointer;font-size:14px}.legidApp[data-layout=mobile] .legid .main .profile-menu-mobile-wrap .profile-menu-divider{height:1px;background:var(--border);margin:8px 0}.legidApp[data-layout=mobile] .legid .main .chat-header-clean,.legidApp[data-layout=mobile] .legid .chat-header-clean .hamburger-menu-btn,.legidApp[data-layout=mobile] .legid .chat-header-clean .header-left-clean .legid-logo,.legidApp[data-layout=mobile] .legid .chat-header-clean .header-left-clean .portal-indicator-badge{display:none!important}.legidApp[data-layout=mobile] .legid .chat-header-clean .header-left-clean{margin-left:0}.legidApp[data-layout=mobile] .legid .legidDrawer,.legidApp[data-layout=mobile] .legid .drawer{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;pointer-events:none;overflow:hidden}.legidApp[data-layout=mobile] .legid .drawer.isOpen{pointer-events:auto}.legidApp[data-layout=mobile] .legid .drawerPanel{visibility:hidden}.legidApp[data-layout=mobile] .legid .drawer.isOpen .drawerPanel{visibility:visible}.legidApp[data-layout=mobile] .legid .drawerOverlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;cursor:pointer}.legidApp[data-layout=mobile] .legid .drawer.isOpen .drawerOverlay{pointer-events:auto}.legidApp[data-layout=mobile] .legid.drawer-open .main{margin-left:0!important}.legidApp[data-layout=mobile] .legid.drawer-open .drawerOverlay{display:block!important}.legidApp[data-layout=mobile] .legid .drawerPanel{position:absolute;top:0;left:0;width:min(85vw,320px);max-width:320px;height:100%;min-height:100%;transform:translate(-100%);transition:transform .22s ease;box-sizing:border-box;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 55%),var(--panel2);border-right:1px solid var(--border);box-shadow:var(--shadow);display:flex;flex-direction:column}.legidApp[data-layout=mobile] .legid .drawer.isOpen .drawerPanel{transform:translate(0)}.legidApp[data-layout=mobile] .legid .drawerHeader{flex-shrink:0;min-height:44px;padding-top:calc(10px + var(--safeT));padding-left:var(--pad);padding-right:var(--pad);padding-bottom:10px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border)}.legidApp[data-layout=mobile] .legid .drawerTitle{font-weight:700;color:var(--text)}.legidApp[data-layout=mobile] .legid .drawerBody{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;padding:var(--pad);padding-bottom:max(16px,env(safe-area-inset-bottom,0))}.legidApp[data-layout=mobile] .legid .drawerPanel .chat-sidebar{position:relative;width:100%;max-width:100%;height:auto;min-height:0;transform:none;display:flex;flex-direction:column}.legidApp[data-layout=mobile] .legid .drawerPanel .resources-section,.legidApp[data-layout=mobile] .legid .drawerPanel .history-section,.legidApp[data-layout=mobile] .legid .drawerPanel .sidebar-history-section{display:flex;flex-direction:column;width:100%;min-width:0;visibility:visible}.legidApp[data-layout=mobile] .legid .drawerPanel .resources-section{flex-shrink:0}.legidApp[data-layout=mobile] .legid .drawerPanel .resources-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,1.5vw,10px);width:100%}.legidApp[data-layout=mobile] .legid .drawerPanel .history-section,.legidApp[data-layout=mobile] .legid .drawerPanel .sidebar-history-section{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.legidApp[data-layout=mobile] .legid .main .chatMain{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.legidApp[data-layout=mobile] .legid .main .chatMain .messages-container,.legidApp[data-layout=mobile] .legid .main .chatMain .legidThread{padding-bottom:calc(72px + 16px + var(--safeB));flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;max-height:none}.legidApp[data-layout=mobile] .legid .main .chatMain .messages-container::-webkit-scrollbar,.legidApp[data-layout=mobile] .legid .main .chatMain .legidThread::-webkit-scrollbar{display:none}.legidApp[data-layout=mobile] .legid .main .chatMain.chatMain-empty .messages-container,.legidApp[data-layout=mobile] .legid .main .chatMain.chatMain-empty .legidThread{flex:0 1 auto}.legidApp[data-layout=mobile] .legid .main .chatMain .input-area,.legidApp[data-layout=mobile] .legid .main .chatMain .legidComposer{min-height:44px;position:fixed;left:0;right:0;bottom:var(--keyboard-offset, 0);padding:clamp(6px,1.5vw,8px) clamp(8px,2.5vw,12px);padding-bottom:max(12px,var(--safeB));flex-shrink:0;z-index:100;background:var(--bg);border-top:1px solid var(--border)}.legidApp[data-layout=mobile] .legid .main .chatMain .input-container{display:flex;align-items:flex-end;flex-wrap:nowrap;gap:clamp(6px,1.5vw,8px);min-height:clamp(40px,10vw,44px);max-height:140px;padding:clamp(4px,1vw,6px) clamp(6px,1.5vw,8px);border-radius:18px;background:#ffffff0f;border:1px solid var(--border)}.legidApp[data-layout=mobile] .legid .main .chatMain .chat-input{flex:1;min-width:0;min-height:40px;max-height:120px;line-height:1.35;padding:clamp(8px,2vw,10px) clamp(8px,2vw,12px);font-size:clamp(14px,3.5vw,16px);resize:none;overflow-y:auto;font-family:inherit}.legidApp[data-layout=mobile] .legid .main .chatMain .plus-upload-btn,.legidApp[data-layout=mobile] .legid .main .chatMain .voice-input-btn,.legidApp[data-layout=mobile] .legid .main .chatMain .send-btn{width:clamp(40px,10vw,44px);height:clamp(40px,10vw,44px);min-width:44px;min-height:44px;flex-shrink:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}.legidApp[data-layout=mobile] .legid .main .chatMain{overflow-x:hidden}.legidApp[data-layout=mobile] .legid .main .chatMain .messages-container{overflow-x:hidden;min-width:0}.legidApp[data-layout=mobile] .legid .main .chatMain .message-actions .action-btn{min-width:44px;min-height:44px;padding:10px}:root{--appShell-bg: #0f1115;--appShell-panel: #1e1e1e;--appShell-border: rgba(255, 255, 255, .08);--appShell-text: #e0e0e0;--appShell-muted: rgba(255, 255, 255, .6);--appShell-accent: #00bcd4}.appShell{display:flex;flex-direction:row;height:100%;height:100dvh;max-height:100dvh;background:var(--appShell-bg);color:var(--appShell-text);overflow:hidden}.appShell .topBar{flex-shrink:0;position:sticky;top:0;z-index:50;padding-top:env(safe-area-inset-top,0)}.appShell .body{display:flex;flex-shrink:0;overflow:visible}.appShell .sideDrawer{flex-shrink:0;width:280px;max-width:280px;height:100%;overflow:hidden;display:flex;flex-direction:column}.appShell .sideDrawer .chat-sidebar{width:100%;max-width:100%;height:100%;overflow-y:auto}.appShell .backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:1001;opacity:0;pointer-events:none;transition:opacity .25s ease}.appShell .backdrop[data-open=true]{display:block;opacity:1;pointer-events:auto}.appShell .chatMain{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--appShell-bg)}.appShell .chatMain .messages-container{flex:1;min-height:0;overflow-y:auto}.appShell .chatMain .input-area{position:sticky;bottom:0;left:auto;right:auto;padding-bottom:env(safe-area-inset-bottom,0)}@media (max-width: 899px){.appShell .chatMain .input-area{padding-left:8px;padding-right:8px}}.appShell .chatMain .chat-input{font-size:16px}.appShell .chatScroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.appShell .composer{flex-shrink:0;position:sticky;bottom:0;z-index:40;padding-bottom:env(safe-area-inset-bottom,0)}@media (max-width: 899px){.appShell .sideDrawer{position:fixed;left:0;top:0;width:min(86vw,360px);max-width:none;height:100dvh;height:100vh;transform:translate(-105%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1002;box-shadow:4px 0 24px #00000080}.appShell .sideDrawer[data-open=true]{transform:translate(0)}}@media (min-width: 900px){.appShell .backdrop{display:none!important}}.meeting-scheduler-button{background:#fff;border:2px solid #000000;border-radius:8px;padding:20px;margin:20px 0;box-shadow:0 2px 8px #0000001a}.meeting-suggestion{display:flex;align-items:center;gap:15px;margin-bottom:15px;color:#000}.meeting-icon{font-size:48px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.meeting-text p{margin:5px 0;font-size:16px;font-weight:500;color:#000}.meeting-subtext{opacity:.9;font-size:14px!important;font-weight:400!important}.schedule-meeting-btn{width:100%;background:#000;color:#fff;border:2px solid #000000;padding:15px 30px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;letter-spacing:.5px}.schedule-meeting-btn:hover:not(:disabled){background:#fff;color:#000}.schedule-meeting-btn:disabled{opacity:.6;cursor:not-allowed}.meeting-form-container{background:#fff;border:2px solid #000000;border-radius:0;padding:40px;box-shadow:none;max-width:900px;margin:20px auto}.meeting-form-header{text-align:left;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #000000}.meeting-form-header h2{color:#000;margin-bottom:10px;font-weight:700;letter-spacing:-.5px}.meeting-form-header p{color:#000;font-size:14px;opacity:.7}.meeting-error{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:15px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.meeting-form{display:flex;flex-direction:column;gap:30px}.form-section{background:#fff;padding:25px;border-radius:0;border:1px solid #000000;margin-bottom:20px}.form-section h3{color:#000;margin-bottom:20px;font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #000000;padding-bottom:10px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#000;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #000000;border-radius:0;font-size:14px;font-family:inherit;transition:border-color .2s ease;background:#fff;color:#000}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#000;border-width:2px;box-shadow:none}.form-group input:disabled,.form-group textarea:disabled{background:#f5f5f5;cursor:not-allowed;color:#666;border-style:dashed}.form-group small{display:block;margin-top:5px;color:#6c757d;font-size:12px}.case-summary{font-size:14px;line-height:1.6;resize:vertical}.lawyer-card{background:#000;color:#fff;padding:20px;border-radius:0;border:none}.lawyer-name{font-size:18px;font-weight:700;color:#fff;margin-bottom:5px;letter-spacing:.5px}.lawyer-specialty{font-size:12px;color:#fff;opacity:.8;margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.lawyer-email{color:#fff;font-size:14px;opacity:.9}.time-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-top:10px}.time-slot{padding:12px;border:2px solid #ced4da;background:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.time-slot:hover{border-color:#667eea;background:#f8f9fa}.time-slot.selected{background:#667eea;color:#fff;border-color:#667eea}.form-actions{display:flex;gap:15px;justify-content:flex-end;padding-top:20px;border-top:2px solid #f0f0f0}.btn-cancel,.btn-schedule{padding:12px 30px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-cancel{background:#e9ecef;color:#495057}.btn-cancel:hover:not(:disabled){background:#dee2e6}.btn-schedule{background:#000;color:#fff;border:2px solid #000000;box-shadow:none}.btn-schedule:hover:not(:disabled){background:#fff;color:#000;transform:none;box-shadow:none}.btn-cancel:disabled,.btn-schedule:disabled{opacity:.5;cursor:not-allowed}.meeting-scheduling{background:#fff;border-radius:12px;padding:60px 30px;margin:20px 0;text-align:center;box-shadow:0 4px 20px #0000001a}.scheduling-spinner{display:flex;flex-direction:column;align-items:center;gap:20px}.spinner{width:60px;height:60px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scheduling-spinner h3{color:#333;margin:0}.scheduling-spinner p{color:#666;font-size:14px}.meeting-success-container{background:#fff;border-radius:12px;padding:40px;box-shadow:0 4px 20px #0000001a;max-width:700px;margin:20px auto}.success-header{text-align:center;margin-bottom:30px}.success-icon{font-size:80px;margin-bottom:15px;animation:successPop .6s ease-out}@keyframes successPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.success-header h2{color:#28a745;margin:0}.meeting-details-card{background:#f8f9fa;padding:25px;border-radius:10px;margin-bottom:25px;border:2px solid #28a745}.meeting-details-card h3{color:#333;margin-bottom:20px;font-size:18px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #dee2e6}.detail-row:last-child{border-bottom:none}.detail-label{color:#6c757d;font-weight:500;font-size:14px}.detail-value{color:#333;font-weight:600;font-size:14px}.meeting-link-row{flex-direction:column;align-items:flex-start;gap:10px}.meet-link{background:#667eea;color:#fff;padding:10px 20px;border-radius:6px;text-decoration:none;font-weight:600;transition:all .3s ease;display:inline-block}.meet-link:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.email-notifications{background:#e7f5ff;padding:20px;border-radius:8px;margin-bottom:25px}.email-notifications h4{color:#333;margin-bottom:15px;font-size:16px}.email-notifications ul{list-style:none;padding:0;margin:0}.email-notifications li{padding:8px 0;color:#495057;font-size:14px}.next-steps{background:#fff3cd;padding:20px;border-radius:8px;margin-bottom:25px}.next-steps h4{color:#333;margin-bottom:15px;font-size:16px}.next-steps ol{padding-left:20px;margin:0}.next-steps li{padding:8px 0;color:#495057;font-size:14px}.success-actions{text-align:center}.btn-close{background:#667eea;color:#fff;border:none;padding:12px 40px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-close:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}@media (max-width: 768px){.meeting-form-container,.meeting-success-container{padding:20px;margin:10px}.time-slots-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.form-actions{flex-direction:column}.btn-cancel,.btn-schedule{width:100%}.meeting-suggestion{flex-direction:column;text-align:center}}.consultation-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;overflow-y:auto;animation:fadeIn .3s ease}.consultation-modal{background:#1a1a1a;border-radius:16px;border:1px solid #404040;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px #00000080;animation:slideUp .4s ease-out}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.consultation-header{padding:1.5rem 2rem;border-bottom:1px solid #404040;display:flex;align-items:center;justify-content:space-between;background:#0f0f0f;flex-shrink:0}.header-title{display:flex;align-items:center;gap:.75rem}.header-title svg{color:#00bcd4}.header-title h2{margin:0;color:#fff;font-size:1.5rem;font-weight:700}.consultation-header .close-btn{background:#fff3;border:1px solid rgba(255,255,255,.5);border-radius:50%;min-width:36px;min-height:36px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;flex-shrink:0;transition:all .2s;font-size:20px;font-weight:600;line-height:1}.consultation-header .close-btn.consultation-close-x{font-size:22px;color:#fff!important}.consultation-header .close-btn:hover{border-color:#00bcd4;color:#00bcd4;background:#00bcd440}.consultation-header .close-btn:hover.consultation-close-x{color:#00bcd4!important}.consultation-content{flex:1;overflow-y:auto;padding:2rem}.consultation-content::-webkit-scrollbar{width:8px}.consultation-content::-webkit-scrollbar-track{background:#2d2d2d}.consultation-content::-webkit-scrollbar-thumb{background:#404040;border-radius:4px}.form-section{background:#2d2d2d;border:1px solid #404040;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.form-section h3{margin:0 0 1.25rem;color:#00bcd4;font-size:1.1rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.section-description{color:#b0b0b0;font-size:.9rem;margin-bottom:1rem;line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#e0e0e0;font-size:.875rem;font-weight:600}.form-group input,.form-group textarea{padding:.75rem 1rem;background:#1a1a1a;border:1px solid #404040;border-radius:8px;color:#fff;font-size:.95rem;font-family:inherit;transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#00bcd4;box-shadow:0 0 0 2px #00bcd41a;background:#0f0f0f}.form-group input:disabled{background:#252525;color:#888;cursor:not-allowed;border-style:dashed}.form-group input::placeholder,.form-group textarea::placeholder{color:#666}.form-group small{color:#888;font-size:.8rem;margin-top:.25rem}.form-group textarea{resize:vertical;min-height:120px;line-height:1.6}.ai-summary-section{background:#00bcd40d;border:1px solid rgba(0,188,212,.2);border-radius:10px;padding:1.25rem;margin-bottom:1.5rem}.ai-summary-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;gap:1rem;flex-wrap:wrap}.ai-icon-label{display:flex;align-items:center;gap:.5rem;color:#00bcd4;font-weight:600;font-size:1rem;flex-wrap:wrap}.chat-count-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;background:#00bcd426;border:1px solid rgba(0,188,212,.4);border-radius:12px;color:#00bcd4;font-size:.8rem;font-weight:600;letter-spacing:.3px}.ai-sparkle-icon{color:#00bcd4;animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:1;transform:rotate(0) scale(1)}50%{opacity:.7;transform:rotate(180deg) scale(1.1)}}.generate-summary-btn{padding:.65rem 1.25rem;background:#00bcd4;border:none;border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.generate-summary-btn:hover:not(:disabled){background:#0097a7;transform:translateY(-1px);box-shadow:0 4px 12px #00bcd44d}.generate-summary-btn:disabled{opacity:.6;cursor:not-allowed}.ai-summary-description{color:#b0b0b0;font-size:.85rem;margin:0;line-height:1.7}.ai-summary-description strong{color:#00bcd4;font-weight:600}.ai-summary-card{background:#0f0f0f;border:1px solid #00bcd4;border-radius:10px;padding:1.25rem;margin-bottom:1rem}.summary-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#00bcd4;font-weight:700;font-size:.95rem}.ai-icon{color:#00bcd4}.summary-content{color:#e0e0e0;line-height:1.7;font-size:.95rem;white-space:pre-wrap;padding:.75rem;background:#00bcd408;border-radius:6px}.file-upload-area{margin-bottom:1rem}.file-upload-btn{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:#404040;border:2px dashed #666;border-radius:10px;color:#e0e0e0;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.file-upload-btn:hover{background:#4a4a4a;border-color:#00bcd4;color:#00bcd4}.uploaded-documents-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.document-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#0f0f0f;border:1px solid #404040;border-radius:8px;transition:all .2s}.document-item:hover{border-color:#00bcd4;background:#00bcd40d}.document-info{display:flex;align-items:center;gap:.75rem;flex:1}.document-info svg{color:#00bcd4;flex-shrink:0}.doc-name{color:#e0e0e0;font-weight:600;font-size:.9rem}.doc-size{color:#888;font-size:.8rem;margin-top:.15rem}.remove-doc-btn{background:transparent;border:1px solid #404040;border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#e0e0e0;transition:all .2s;flex-shrink:0}.remove-doc-btn:hover{border-color:#ff6b6b;color:#ff6b6b;background:#ff6b6b1a}.info-note{background:#00bcd414;border:1px solid rgba(0,188,212,.25);border-radius:10px;padding:1.25rem;display:flex;gap:1rem;align-items:flex-start}.info-note svg{color:#00bcd4;flex-shrink:0;margin-top:.15rem}.info-note strong{color:#00bcd4;display:block;margin-bottom:.5rem;font-size:.95rem}.info-note p{color:#b0b0b0;font-size:.875rem;line-height:1.6;margin:0}.error-message{background:#ff6b6b26;border:1px solid #ff6b6b;border-radius:10px;padding:1rem 1.25rem;color:#ff6b6b;font-size:.9rem;display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.error-message svg{flex-shrink:0}.consultation-footer{padding:1.5rem 2rem;border-top:1px solid #404040;display:flex;align-items:center;justify-content:flex-end;gap:1rem;background:#0f0f0f;flex-shrink:0}.btn-cancel,.btn-submit{padding:.875rem 2rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem;border:none}.btn-cancel{background:transparent;border:1px solid #404040;color:#e0e0e0}.btn-cancel:hover:not(:disabled){border-color:#666;background:#2d2d2d}.btn-submit{background:linear-gradient(135deg,#00bcd4,#0097a7);color:#fff;border:none}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #00bcd466}.btn-cancel:disabled,.btn-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.case-type-select{width:100%;padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e5e5e5;font-size:.95rem;cursor:pointer;transition:all .3s ease}.case-type-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.case-type-select option{background:#1a1a1a;color:#e5e5e5}.lawyer-suggestions-section{background:linear-gradient(135deg,#b8860b0d,#daa52005);border:1px solid rgba(184,134,11,.2)!important}.loading-lawyers{display:flex;align-items:center;justify-content:center;gap:1rem;padding:2rem;color:#9ca3af}.lawyers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem}.lawyer-card{position:relative;background:#ffffff08;border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .3s ease;overflow:hidden}.lawyer-card:hover{border-color:#b8860b66;background:#ffffff0d;transform:translateY(-2px);box-shadow:0 8px 16px #0003}.lawyer-card.selected{border-color:var(--accent-lawyer);background:linear-gradient(135deg,#b8860b26,#daa52014);box-shadow:0 8px 24px #b8860b4d}.recommended-badge{position:absolute;top:.75rem;right:.75rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.75rem;font-weight:700;padding:.3rem .6rem;border-radius:12px;box-shadow:0 2px 8px #10b9814d}.lawyer-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--accent-lawyer),var(--accent-lawyer-light));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin-bottom:1rem;box-shadow:0 4px 12px #b8860b4d}.lawyer-info{flex:1}.lawyer-name{font-size:1.1rem;font-weight:700;margin:0 0 .25rem;color:var(--accent-lawyer-light)}.lawyer-specialization{font-size:.9rem;color:#9ca3af;margin:0 0 .75rem;font-style:italic}.lawyer-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;font-size:.85rem;color:#9ca3af}.practice-areas{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.practice-area-badge{padding:.25rem .6rem;background:#3b82f633;border:1px solid rgba(59,130,246,.3);border-radius:12px;font-size:.75rem;color:#60a5fa;text-transform:capitalize;font-weight:600}.selected-checkmark{position:absolute;top:.75rem;left:.75rem;width:32px;height:32px;background:linear-gradient(135deg,var(--accent-lawyer),var(--accent-lawyer-light));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;box-shadow:0 4px 12px #b8860b66;animation:checkmark-pop .3s ease}@keyframes checkmark-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width: 768px){.consultation-modal-overlay{padding:0;align-items:flex-start}.consultation-modal{max-width:100%;max-height:100vh;border-radius:0;border:none}.consultation-header{padding:1rem 1.25rem}.header-title h2{font-size:1.25rem}.consultation-content,.form-section{padding:1.25rem}.form-grid{grid-template-columns:1fr}.consultation-footer{padding:1rem 1.25rem;flex-direction:column-reverse;gap:.75rem}.btn-cancel,.btn-submit{width:100%;justify-content:center}.ai-summary-header{flex-direction:column;align-items:flex-start}.generate-summary-btn{width:100%;justify-content:center}}@media (max-width: 480px){.consultation-header{padding:.875rem 1rem}.header-title h2{font-size:1.1rem}.close-btn{width:36px;height:36px}.consultation-content,.form-section{padding:1rem}.form-group input,.form-group textarea{font-size:16px}}.applicant-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease-in}.applicant-modal-content{background:linear-gradient(145deg,#1e1e1e,#2a2a2a);border-radius:20px;width:90%;max-width:1000px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px #00000080,0 0 0 1px #ffffff0d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.applicant-modal-header{padding:25px 30px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;background:#1e1e1ecc}.applicant-modal-header h2{font-size:24px;font-weight:600;color:#fff;margin:0;display:flex;align-items:center;gap:12px}.applicant-modal-header .close-btn{background:#fff3;border:1px solid rgba(255,255,255,.5);border-radius:50%;min-width:36px;min-height:36px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;flex-shrink:0;transition:all .2s;font-size:22px;font-weight:600;line-height:1}.applicant-modal-header .close-btn.applicant-close-x{color:#fff!important}.applicant-modal-header .close-btn:hover{background:#ff3b304d;border-color:#ff3b3080;color:#fff;transform:rotate(90deg)}.applicant-modal-body{flex:1;overflow-y:auto;padding:30px}.applicant-modal-body::-webkit-scrollbar{width:8px}.applicant-modal-body::-webkit-scrollbar-track{background:#ffffff05}.applicant-modal-body::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.applicant-modal-body::-webkit-scrollbar-thumb:hover{background:#ffffff26}.applicants-filter{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap}.filter-btn{padding:10px 20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#999;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.filter-btn:hover{background:#ffffff14;border-color:#ffffff26;color:#fff}.filter-btn.active{background:linear-gradient(135deg,#007aff,#0051d5);border-color:transparent;color:#fff}.applicants-list{display:flex;flex-direction:column;gap:20px}.applicant-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px;transition:all .2s;cursor:pointer}.applicant-card:hover{background:#ffffff0d;border-color:#ffffff1f;transform:translateY(-2px);box-shadow:0 10px 30px #0000004d}.applicant-card.expanded{background:#ffffff0f;border-color:#007aff4d}.applicant-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.applicant-info h3{font-size:18px;font-weight:600;color:#fff;margin:0 0 8px}.applicant-info .contact-info{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#999}.applicant-badges{display:flex;gap:8px;flex-wrap:wrap}.badge{padding:6px 12px;border-radius:8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge.status-pending{background:#ff950026;color:#ff9500;border:1px solid rgba(255,149,0,.3)}.badge.status-accepted{background:#34c75926;color:#34c759;border:1px solid rgba(52,199,89,.3)}.badge.status-rejected{background:#ff3b3026;color:#ff3b30;border:1px solid rgba(255,59,48,.3)}.badge.urgency-urgent{background:#ff3b3033;color:#ff3b30;border:1px solid rgba(255,59,48,.4);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.badge.urgency-high{background:#ff950033;color:#ff9500;border:1px solid rgba(255,149,0,.4)}.badge.urgency-medium{background:#ffcc0026;color:#fc0;border:1px solid rgba(255,204,0,.3)}.applicant-details{padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.detail-section{margin-bottom:20px}.detail-section h4{font-size:14px;font-weight:600;color:#fff;margin:0 0 10px;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.detail-section p{font-size:14px;line-height:1.6;color:#ccc;margin:0;white-space:pre-wrap}.applicant-actions{display:flex;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.btn-action{flex:1;padding:14px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-accept{background:linear-gradient(135deg,#34c759,#30d158);color:#fff;box-shadow:0 4px 15px #34c7594d}.btn-accept:hover{transform:translateY(-2px);box-shadow:0 6px 20px #34c75966}.btn-reject{background:#ff3b3026;color:#ff3b30;border:1px solid rgba(255,59,48,.3)}.btn-reject:hover{background:#ff3b3040;border-color:#ff3b3080}.btn-view-details{background:#007aff26;color:#007aff;border:1px solid rgba(0,122,255,.3)}.btn-view-details:hover{background:#007aff40;border-color:#007aff80}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state svg{opacity:.3;margin-bottom:20px}.empty-state h3{font-size:20px;font-weight:600;color:#fff;margin:0 0 10px}.empty-state p{font-size:14px;color:#999;margin:0}.loading-state{text-align:center;padding:60px 20px;color:#999}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#007aff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@media (max-width: 768px){.applicant-modal-content{width:95%;max-height:90vh}.applicant-modal-header{padding:20px}.applicant-modal-header h2{font-size:20px}.applicant-modal-body{padding:20px}.applicants-filter{gap:10px}.filter-btn{padding:8px 16px;font-size:13px}.applicant-card{padding:15px}.applicant-header{flex-direction:column;gap:12px}.applicant-info h3{font-size:16px}.applicant-actions{flex-direction:column}.btn-action{padding:12px 20px;font-size:14px}}.meetings-modal .modal-body{padding:30px}.meetings-content{min-height:400px;display:flex;align-items:center;justify-content:center}.meetings-modal .empty-state{max-width:400px;margin:0 auto}.meetings-modal .btn-primary{margin-top:20px;padding:12px 24px;background:linear-gradient(135deg,#007aff,#0051d5);border:none;border-radius:12px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.meetings-modal .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #007aff66}.btn-chat{background:linear-gradient(135deg,#c9a84c,#b8943f)!important;color:#111!important}.btn-chat:hover{box-shadow:0 4px 16px #c9a84c66!important}.direct-chat-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:1000;display:flex;justify-content:center;align-items:center;animation:dcFadeIn .2s ease}@keyframes dcFadeIn{0%{opacity:0}to{opacity:1}}.direct-chat-container{width:520px;max-width:95vw;height:600px;max-height:90vh;background:#1a1a2e;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px #00000080;border:1px solid rgba(255,255,255,.08);animation:dcSlideUp .25s ease}@keyframes dcSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.dc-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#16213e,#1a1a2e);border-bottom:1px solid rgba(255,255,255,.06)}.dc-header-info h3{margin:0;color:#e0e0e0;font-size:15px;font-weight:600}.dc-subtitle{font-size:12px;color:#89a}.dc-close{background:none;border:none;color:#89a;cursor:pointer;padding:6px;border-radius:8px;transition:all .15s}.dc-close:hover{background:#ffffff14;color:#fff}.dc-messages{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:6px}.dc-messages::-webkit-scrollbar{width:6px}.dc-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.dc-loading,.dc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:#6b7b8d;gap:8px}.dc-empty p{margin:8px 0 2px;font-size:14px}.dc-empty span{font-size:12px;opacity:.7}.dc-spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.1);border-top-color:#c9a84c;border-radius:50%;animation:dcSpin .8s linear infinite}@keyframes dcSpin{to{transform:rotate(360deg)}}.dc-date-divider{text-align:center;margin:10px 0}.dc-date-divider span{background:#ffffff0f;color:#7a8a9a;font-size:11px;padding:3px 12px;border-radius:10px}.dc-msg{display:flex}.dc-msg-mine{justify-content:flex-end}.dc-msg-theirs{justify-content:flex-start}.dc-msg-bubble{max-width:75%;padding:10px 14px;border-radius:14px;line-height:1.45}.dc-msg-mine .dc-msg-bubble{background:linear-gradient(135deg,#c9a84c,#b8943f);color:#111;border-bottom-right-radius:4px}.dc-msg-theirs .dc-msg-bubble{background:#ffffff14;color:#d0d5dd;border-bottom-left-radius:4px}.dc-msg-sender{font-size:11px;font-weight:600;margin-bottom:3px;display:flex;align-items:center;gap:6px}.dc-msg-mine .dc-msg-sender{color:#0000008c}.dc-msg-theirs .dc-msg-sender{color:#89a}.dc-role-badge{font-size:9px;padding:1px 6px;border-radius:6px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.dc-role-lawyer{background:#c9a84c33;color:#c9a84c}.dc-msg-mine .dc-role-lawyer{background:#00000026;color:#00000080}.dc-role-user{background:#4285f433;color:#4285f4}.dc-msg-mine .dc-role-user{background:#00000026;color:#00000080}.dc-msg-content{font-size:13.5px;white-space:pre-wrap;word-break:break-word}.dc-msg-time{font-size:10px;margin-top:4px;text-align:right}.dc-msg-mine .dc-msg-time{color:#0006}.dc-msg-theirs .dc-msg-time{color:#5a6a7a}.dc-read-tick{color:#4285f4}.dc-input-area{display:flex;align-items:flex-end;gap:10px;padding:14px 20px;background:#0003;border-top:1px solid rgba(255,255,255,.06)}.dc-input{flex:1;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#e0e0e0;padding:10px 14px;font-size:13.5px;resize:none;outline:none;font-family:inherit;max-height:100px;transition:border-color .15s}.dc-input:focus{border-color:#c9a84c}.dc-input::placeholder{color:#5a6a7a}.dc-send-btn{width:42px;height:42px;border-radius:12px;border:none;background:linear-gradient(135deg,#c9a84c,#b8943f);color:#111;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;flex-shrink:0}.dc-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #c9a84c4d}.dc-send-btn:disabled{opacity:.4;cursor:not-allowed}.dc-send-spinner{width:18px;height:18px;border:2px solid rgba(0,0,0,.2);border-top-color:#111;border-radius:50%;animation:dcSpin .6s linear infinite}.lawyer-meeting-booker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.lawyer-meeting-booker-modal{background:var(--bg-secondary, #1e1e2e);border-radius:12px;padding:1.25rem;min-width:320px;max-width:420px;box-shadow:0 8px 32px #0000004d}.lawyer-meeting-booker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.lawyer-meeting-booker-header h3{margin:0;font-size:1.1rem}.lawyer-meeting-booker-close{background:none;border:none;color:#888;font-size:1.5rem;cursor:pointer;padding:0 4px;line-height:1}.lawyer-meeting-booker-close:hover{color:#fff}.lawyer-meeting-booker-form label{display:block;margin-bottom:.75rem;font-size:.9rem}.lawyer-meeting-booker-form input[type=datetime-local],.lawyer-meeting-booker-form textarea{width:100%;padding:.5rem;margin-top:.25rem;border:1px solid #444;border-radius:6px;background:#2a2a3e;color:#fff;box-sizing:border-box}.lawyer-meeting-booker-error{color:#f66;font-size:.9rem;margin-bottom:.75rem}.lawyer-meeting-booker-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.lawyer-meeting-booker-actions button{padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem}.lawyer-meeting-booker-actions button[type=button]{background:#444;color:#fff}.lawyer-meeting-booker-actions button[type=submit]{background:#3b82f6;color:#fff}.lawyer-meeting-booker-actions button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.uc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:900;display:flex;justify-content:center;align-items:center;animation:ucFadeIn .2s ease}@keyframes ucFadeIn{0%{opacity:0}to{opacity:1}}.uc-container{width:600px;max-width:95vw;max-height:85vh;background:#1a1a2e;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px #00000080;border:1px solid rgba(255,255,255,.08);animation:ucSlideUp .25s ease}@keyframes ucSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.uc-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.06)}.uc-header h2{margin:0;color:#e0e0e0;font-size:18px}.uc-subtitle{margin:2px 0 0;font-size:12px;color:#6b7b8d}.uc-close{background:none;border:none;color:#89a;cursor:pointer;padding:6px;border-radius:8px;transition:all .15s}.uc-close:hover{background:#ffffff14;color:#fff}.uc-body{flex:1;overflow-y:auto;padding:16px 24px}.uc-body::-webkit-scrollbar{width:6px}.uc-body::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.uc-loading,.uc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0;color:#6b7b8d;gap:8px}.uc-empty p{margin:8px 0 2px;font-size:14px}.uc-empty span{font-size:12px;opacity:.7}.uc-spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.1);border-top-color:#c9a84c;border-radius:50%;animation:ucSpin .8s linear infinite}@keyframes ucSpin{to{transform:rotate(360deg)}}.uc-list{display:flex;flex-direction:column;gap:12px}.uc-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:16px;transition:all .15s}.uc-card:hover{border-color:#c9a84c33}.uc-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.uc-ticket{font-weight:600;color:#c9a84c;font-size:14px;margin-right:10px}.uc-case-type{font-size:12px;color:#89a;background:#ffffff0f;padding:2px 8px;border-radius:6px}.uc-status{font-size:11px;font-weight:600;text-transform:uppercase;padding:3px 10px;border-radius:8px;letter-spacing:.3px}.uc-card-desc{font-size:13px;color:#b0b8c4;line-height:1.45;margin-bottom:10px}.uc-card-meta{display:flex;gap:16px;font-size:11px;color:#6b7b8d;margin-bottom:10px}.uc-chat-btn{width:100%;padding:10px;background:linear-gradient(135deg,#c9a84c,#b8943f);color:#111;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s}.uc-chat-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #c9a84c4d}.uc-pending-note{text-align:center;font-size:12px;color:#f59e0b;background:#f59e0b14;border-radius:8px;padding:8px}.dashboard-container{padding:2rem;max-width:1400px;margin:0 auto;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);min-height:100vh;color:#e5e5e5}.dashboard-header{margin-bottom:2.5rem;animation:fadeInUp .5s ease}.dashboard-title{font-size:2.5rem;font-weight:600;margin:0 0 .5rem;letter-spacing:-.02em;background:linear-gradient(135deg,var(--accent-lawyer) 0%,var(--accent-lawyer-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-subtitle{font-size:1.1rem;color:#9ca3af;margin:0;font-weight:400}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.loading-spinner{width:48px;height:48px;border:4px solid rgba(184,134,11,.2);border-top-color:var(--accent-lawyer);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;margin-bottom:3rem;animation:fadeInUp .6s ease .1s both}.stat-card{background:linear-gradient(135deg,#1a1a1a,#222);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.75rem;display:flex;align-items:center;gap:1.25rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--status-color) 0%,transparent 100%);opacity:0;transition:opacity .3s ease}.stat-card:hover:before{opacity:.05}.stat-card:hover{transform:translateY(-4px);border-color:var(--status-color);box-shadow:0 12px 24px #0000004d,0 0 0 1px var(--status-color)}.stat-icon{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.stat-content{flex:1}.stat-count{font-size:2.25rem;font-weight:700;color:var(--status-color);line-height:1;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.stat-title{font-size:.95rem;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-indicator{width:4px;height:40px;background:var(--status-color);border-radius:2px;opacity:.6;transition:opacity .3s ease}.stat-card:hover .stat-indicator{opacity:1}.documents-section{animation:fadeInUp .7s ease .2s both}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-title{font-size:1.5rem;font-weight:600;margin:0;color:#e5e5e5}.refresh-btn{background:linear-gradient(135deg,#b8860b33,#daa52033);border:1px solid rgba(184,134,11,.3);color:var(--accent-lawyer-light);padding:.65rem 1.25rem;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .3s ease}.refresh-btn:hover{background:linear-gradient(135deg,#b8860b4d,#daa5204d);border-color:var(--accent-lawyer);transform:translateY(-1px)}.empty-state{text-align:center;padding:4rem 2rem;background:#ffffff05;border:2px dashed rgba(255,255,255,.1);border-radius:16px;animation:fadeIn .5s ease}.empty-icon{font-size:4rem;margin-bottom:1rem;filter:grayscale(.5);opacity:.6}.empty-message{font-size:1.25rem;font-weight:600;color:#e5e5e5;margin:0 0 .5rem}.empty-description{color:#9ca3af;margin:0}.documents-list{display:grid;gap:1.25rem}.document-card{background:linear-gradient(135deg,#1a1a1a,#1f1f1f);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideIn .4s ease both}.document-card:hover{transform:translate(4px);border-color:#b8860b4d;box-shadow:0 8px 16px #0003,-4px 0 0 0 var(--accent-lawyer)}.doc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.05)}.doc-type{display:flex;align-items:center;gap:.75rem}.doc-icon{font-size:1.5rem}.doc-type-text{font-size:1.1rem;font-weight:600;color:#e5e5e5;letter-spacing:.02em}.doc-status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,var(--badge-color) 0%,var(--badge-color) 100%);color:#fff;box-shadow:0 2px 8px #0003}.doc-body{margin-bottom:1.25rem}.doc-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.doc-info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.85rem;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.info-value{font-size:1rem;color:#e5e5e5;font-weight:500;font-family:JetBrains Mono,monospace}.doc-warnings{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.warning-badge{padding:.4rem .75rem;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);border-radius:6px;color:#fbbf24;font-size:.85rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.doc-actions{display:flex;gap:.75rem;flex-wrap:wrap}.action-btn{flex:1;min-width:120px;padding:.75rem 1.25rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;position:relative;overflow:hidden}.action-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff1a;transform:translate(-50%,-50%);transition:width .6s,height .6s}.action-btn:hover:before{width:300px;height:300px}.review-btn{background:linear-gradient(135deg,var(--accent-lawyer) 0%,var(--accent-lawyer-light) 100%);color:#fff;box-shadow:0 4px 12px #b8860b33}.review-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #b8860b4d}.approve-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b98133}.approve-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b9814d}.export-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f633}.export-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f64d}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.dashboard-container{padding:1.5rem 1rem}.dashboard-title{font-size:2rem}.stats-grid{grid-template-columns:1fr}.doc-actions{flex-direction:column}.action-btn{width:100%}}.onboarding-wizard{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0a;padding:2rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative;overflow:hidden}.onboarding-wizard:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 20% 20%,rgba(20,184,166,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(59,130,246,.06) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(139,92,246,.04) 0%,transparent 60%);pointer-events:none}.onboarding-profile-section{position:fixed;top:1.5rem;right:1.5rem;z-index:100}.profile-badge{display:flex;align-items:center;gap:10px;padding:8px 14px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:50px;cursor:pointer;transition:all .2s ease;color:#fff;font-size:14px}.profile-badge:hover{background:#ffffff1f;border-color:#fff3}.profile-badge-img{width:32px;height:32px;border-radius:50%;object-fit:cover}.profile-badge-initials{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#0d9488);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff}.profile-badge-name{font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;background:#111;border:1px solid #2a2a2a;border-radius:12px;box-shadow:0 10px 40px #00000080;min-width:260px;overflow:hidden;animation:dropdownFade .2s ease}.profile-dropdown-header{display:flex;align-items:center;gap:12px;padding:16px;background:#ffffff08}.profile-dropdown-img{width:48px;height:48px;border-radius:50%;object-fit:cover}.profile-dropdown-initials{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#0d9488);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;color:#fff}.profile-dropdown-info{flex:1;overflow:hidden}.profile-dropdown-name{font-weight:600;color:#fff;font-size:15px;margin-bottom:2px}.profile-dropdown-email{font-size:13px;color:#ffffff80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-dropdown-divider{height:1px;background:#2a2a2a}.profile-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;color:#fff;font-size:14px;cursor:pointer;transition:background .15s ease}.profile-dropdown-item:hover{background:#ffffff14}.profile-dropdown-item svg{opacity:.6}.wizard-container{position:relative;z-index:10;background:#111;border:1px solid #2a2a2a;border-radius:16px;box-shadow:0 25px 80px #00000080;max-width:580px;width:100%;padding:40px;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.wizard-header{text-align:center;margin-bottom:32px}.logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:8px}.logo-text{font-size:2rem;font-weight:800;letter-spacing:.15em;color:#fff;text-shadow:0 0 30px rgba(20,184,166,.3)}.wizard-subtitle{font-size:.9rem;color:#666;margin:0}.wizard-progress{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:32px;padding:0 20px}.progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative}.step-circle{width:36px;height:36px;border-radius:50%;background:#1a1a1a;border:2px solid #333;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;color:#666;transition:all .3s ease}.progress-step.active .step-circle{background:linear-gradient(135deg,#14b8a6,#0d9488);border-color:#14b8a6;color:#fff;box-shadow:0 0 20px #14b8a666}.progress-step span:last-child{font-size:.75rem;color:#555;font-weight:500}.progress-step.active span:last-child{color:#14b8a6}.progress-line{width:60px;height:2px;background:#2a2a2a;margin:0 8px 24px;transition:background .3s ease}.progress-line.active{background:linear-gradient(90deg,#14b8a6,#0d9488)}.wizard-content{text-align:center}.wizard-step h2{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:8px}.step-description{font-size:.875rem;color:#666;margin-bottom:28px}.language-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.language-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:20px 16px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff}.language-card:hover{background:#222;border-color:#3a3a3a;transform:translateY(-2px)}.language-card.selected{background:#14b8a61a;border-color:#14b8a6;box-shadow:0 0 20px #14b8a633}.language-flag{font-size:1.75rem}.language-name{font-size:.9rem;font-weight:500}.more-options-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:transparent;border:1px dashed #333;border-radius:10px;color:#14b8a6;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:8px}.more-options-btn:hover{background:#14b8a60d;border-color:#14b8a6}.plus-icon{font-size:1.1rem}.additional-languages{margin-top:20px;padding-top:20px;border-top:1px solid #2a2a2a}.additional-languages h3{font-size:.85rem;color:#888;margin-bottom:16px;font-weight:500}.country-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.country-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;padding:28px 20px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:12px;color:#fff}.country-card:hover{background:#222;border-color:#3a3a3a}.country-card.selected{background:#14b8a61a;border-color:#14b8a6;box-shadow:0 0 20px #14b8a633}.country-code{font-size:1.5rem;font-weight:700;color:#14b8a6}.country-name{font-size:.95rem;font-weight:500}.province-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px;max-height:300px;overflow-y:auto;padding-right:8px}.province-grid::-webkit-scrollbar{width:6px}.province-grid::-webkit-scrollbar-track{background:#1a1a1a;border-radius:3px}.province-grid::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.province-grid::-webkit-scrollbar-thumb:hover{background:#444}.province-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;padding:16px 12px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:6px;color:#fff;text-align:center}.province-card:hover{background:#222;border-color:#3a3a3a}.province-card.selected{background:#14b8a61a;border-color:#14b8a6}.province-name{font-size:.85rem;font-weight:500;line-height:1.3}.province-code{font-size:.75rem;color:#14b8a6;font-weight:600}.back-btn{display:inline-flex;align-items:center;gap:6px;padding:12px 24px;background:transparent;border:1px solid #333;border-radius:8px;color:#888;font-size:.9rem;cursor:pointer;transition:all .2s ease;margin-top:16px}.back-btn:hover{background:#1a1a1a;border-color:#444;color:#fff}@media (max-width: 768px){.wizard-container{margin:12px;padding:24px 16px;max-width:100%}.wizard-title{font-size:1.5rem;margin-bottom:.75rem}.wizard-subtitle{font-size:.9rem;margin-bottom:1.5rem}.language-card,.country-card,.province-card{min-height:56px;padding:14px 16px;font-size:.95rem}.language-card .flag,.country-card .flag{font-size:1.75rem}.language-grid{grid-template-columns:repeat(2,1fr);gap:10px}.country-grid{grid-template-columns:1fr;gap:10px}.province-grid{grid-template-columns:repeat(2,1fr);gap:10px}.next-btn,.back-btn{min-height:48px;padding:12px 20px;font-size:1rem}.progress-line{width:40px}.progress-step{width:36px;height:36px;font-size:.9rem}}@media (max-width: 480px){.wizard-container{margin:8px;padding:20px 12px}.wizard-title{font-size:1.25rem}.wizard-subtitle{font-size:.85rem}.language-grid,.province-grid{grid-template-columns:1fr;gap:8px}.language-card,.country-card,.province-card{min-height:52px;padding:12px 14px}.progress-step{width:32px;height:32px;font-size:.85rem}.progress-line{width:30px}}.law-type-selector{min-height:100vh;background:#0a0a0a;color:#e0e0e0;padding:2rem;overflow-y:auto;position:relative;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.law-type-selector:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 20% 20%,rgba(20,184,166,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(59,130,246,.04) 0%,transparent 50%);pointer-events:none;z-index:0}.selector-profile-section{position:fixed;top:1.5rem;right:1.5rem;z-index:100}.selector-profile-section .profile-badge{display:flex;align-items:center;gap:10px;padding:8px 14px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:50px;cursor:pointer;transition:all .2s ease;color:#fff;font-size:14px}.selector-profile-section .profile-badge:hover{background:#ffffff1f;border-color:#fff3}.selector-profile-section .profile-badge-img{width:32px;height:32px;border-radius:50%;object-fit:cover}.selector-profile-section .profile-badge-initials{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#0d9488);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff}.selector-profile-section .profile-badge-name{font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selector-profile-section .profile-dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;background:#111;border:1px solid #2a2a2a;border-radius:12px;box-shadow:0 10px 40px #00000080;min-width:260px;overflow:hidden;animation:dropdownFade .2s ease}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.selector-profile-section .profile-dropdown-header{display:flex;align-items:center;gap:12px;padding:16px;background:#ffffff08}.selector-profile-section .profile-dropdown-img{width:48px;height:48px;border-radius:50%;object-fit:cover}.selector-profile-section .profile-dropdown-initials{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#0d9488);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;color:#fff}.selector-profile-section .profile-dropdown-info{flex:1;overflow:hidden}.selector-profile-section .profile-dropdown-name{font-weight:600;color:#fff;font-size:15px;margin-bottom:2px}.selector-profile-section .profile-dropdown-email{font-size:13px;color:#ffffff80;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selector-profile-section .profile-dropdown-divider{height:1px;background:#2a2a2a}.selector-profile-section .profile-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;color:#fff;font-size:14px;cursor:pointer;transition:background .15s ease}.selector-profile-section .profile-dropdown-item:hover{background:#ffffff14}.selector-profile-section .profile-dropdown-item svg{opacity:.6}.selector-container{position:relative;z-index:10;max-width:1200px;margin:0 auto}.selector-header{text-align:center;margin-bottom:32px;padding:28px;background:#111;border-radius:16px;border:1px solid #2a2a2a;position:relative}.back-btn-header{position:absolute;left:20px;top:50%;transform:translateY(-50%);background:transparent;border:1px solid #333;border-radius:8px;color:#888;padding:10px 18px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.back-btn-header:hover{background:#1a1a1a;border-color:#444;color:#fff}.legid-logo{font-size:2rem;font-weight:800;letter-spacing:.15em;color:#fff;margin-bottom:12px;text-shadow:0 0 30px rgba(20,184,166,.3)}.selector-title{font-size:1.25rem;font-weight:600;color:#14b8a6;margin-bottom:8px}.selector-subtitle{font-size:.875rem;color:#666;margin-bottom:16px}.jurisdiction-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#14b8a61a;border:1px solid rgba(20,184,166,.3);border-radius:50px;color:#14b8a6;font-size:.9rem;font-weight:500}.jurisdiction-icon{font-size:1rem}.selection-step{margin-top:24px}.step-title{font-size:1rem;font-weight:600;color:#fff;margin-bottom:20px;display:flex;align-items:center;gap:12px}.step-number{background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff;font-size:.7rem;font-weight:700;padding:6px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.05em}.categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:32px}.category-card{background:#111;border:1px solid #2a2a2a;border-radius:16px;padding:28px 24px;cursor:pointer;transition:all .3s ease;text-align:left;min-height:140px;display:flex;flex-direction:column;gap:12px}.category-card:hover,.category-card.hovered{background:#161616;border-color:#14b8a6;transform:translateY(-4px);box-shadow:0 8px 24px #14b8a633}.category-card.selected{background:#14b8a614;border-color:#14b8a6;box-shadow:0 0 20px #14b8a626}.category-header{display:flex;align-items:center;gap:10px}.category-name{font-size:1.05rem;font-weight:600;color:#fff;margin-bottom:0;line-height:1.3}.category-description-text{font-size:.85rem;color:#fff9;line-height:1.5}.category-card:hover .category-description-text,.category-card.hovered .category-description-text{color:#14b8a6}.law-info-panel{position:sticky;top:20px;background:linear-gradient(135deg,#111,#161616);border:2px solid #14b8a6;border-radius:20px;padding:28px;margin-top:24px;box-shadow:0 12px 40px #14b8a64d;animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.law-info-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(20,184,166,.3)}.law-info-header h3{font-size:1.4rem;font-weight:700;color:#fff;margin:0}.info-badge{background:#14b8a626;color:#14b8a6;padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:600}.law-info-content{display:flex;flex-direction:column;gap:20px}.info-section h4{font-size:1rem;font-weight:600;color:#14b8a6;margin:0 0 10px}.info-section p{font-size:.95rem;color:#fffc;line-height:1.6;margin:0}.scope-text{background:#14b8a60d;padding:12px;border-radius:8px;border-left:3px solid #14b8a6}.jurisdiction-tags{display:flex;flex-wrap:wrap;gap:10px}.jurisdiction-tag{background:#14b8a61a;border:1px solid rgba(20,184,166,.3);color:#14b8a6;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:500}@media (max-width: 1200px){.category-grid{grid-template-columns:repeat(3,1fr);gap:18px}}@media (max-width: 900px){.category-grid{grid-template-columns:repeat(2,1fr);gap:16px}.selector-header{padding:20px}.back-btn-header{position:static;transform:none;margin-bottom:16px}}@media (max-width: 480px){.law-type-selector{padding:1rem}.category-grid{grid-template-columns:1fr;gap:14px}.category-card{padding:20px 16px;min-height:auto}.legid-logo{font-size:1.5rem}}.law-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:16px}.law-type-card{background:#111;border:1px solid #2a2a2a;border-radius:10px;padding:16px;cursor:pointer;transition:all .2s ease}.law-type-card:hover{background:#161616;border-color:#3a3a3a}.law-type-card.selected{background:#14b8a614;border-color:#14b8a6}.law-type-name{font-size:.9rem;font-weight:500;color:#fff}.continue-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:linear-gradient(135deg,#14b8a6,#0d9488);border:none;border-radius:10px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:24px}.continue-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #14b8a64d}.continue-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.law-type-selector::-webkit-scrollbar{width:8px}.law-type-selector::-webkit-scrollbar-track{background:#0a0a0a}.law-type-selector::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.law-type-selector::-webkit-scrollbar-thumb:hover{background:#444}@media (max-width: 768px){.law-type-selector{padding:20px 16px}.selector-header h2{font-size:1.5rem}.selector-header p{font-size:.9rem}.jurisdiction-badge{padding:10px 16px;font-size:.9rem}.category-card{min-height:60px;padding:14px 16px}.category-icon{font-size:1.75rem;width:44px;height:44px}.category-name{font-size:.95rem}.category-description{font-size:.8rem}.jurisdiction-card{min-height:56px;padding:12px 14px;font-size:.9rem}.jurisdiction-icon{font-size:1.5rem}.continue-btn{width:100%;min-height:52px;padding:14px 24px;font-size:1rem;margin-top:20px}.back-button{min-height:48px;padding:12px 20px;font-size:.95rem}}@media (max-width: 480px){.law-type-selector{padding:16px 12px}.selector-header h2{font-size:1.25rem}.selector-header p{font-size:.85rem}.jurisdiction-badge{padding:8px 12px;font-size:.85rem}.category-card{min-height:56px;padding:12px 14px}.category-icon{font-size:1.5rem;width:40px;height:40px}.category-name{font-size:.9rem}.category-description{font-size:.75rem}.jurisdiction-card{min-height:52px;padding:10px 12px;font-size:.85rem}.continue-btn{min-height:48px;padding:12px 20px}}.portal-selector-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0a;overflow:hidden}.portal-background{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.portal-bg-pattern{position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 50%,rgba(59,130,246,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(168,85,247,.05) 0%,transparent 50%);animation:pulse 8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:.8}}.portal-selector-container{position:relative;z-index:1;max-width:1200px;width:100%;padding:40px 20px}.portal-header{text-align:center;margin-bottom:60px}.portal-logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:20px}.portal-logo svg{width:50px;height:50px}.portal-logo span{font-size:32px;font-weight:700;color:#fff;letter-spacing:2px}.portal-welcome{font-size:20px;color:#fffc;margin:0}.portal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:40px;margin-bottom:40px}.portal-card{background:#1a1a1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:40px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.portal-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6);transform:scaleX(0);transition:transform .3s ease}.portal-card:hover:before{transform:scaleX(1)}.portal-card:hover{transform:translateY(-8px);background:#222;border-color:#ffffff26;box-shadow:0 20px 60px #0009}.portal-card-icon{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);box-shadow:0 8px 24px #3b82f64d}.lawyer-icon{background:linear-gradient(135deg,#b8860b,#daa520);box-shadow:0 8px 24px #b8860b4d}.portal-card-icon svg{color:#fff}.portal-card-title{font-size:28px;font-weight:700;color:#fff;margin:0 0 16px}.portal-card-description{font-size:16px;color:#ffffffb3;line-height:1.6;margin:0 0 32px}.portal-card-features{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}.feature-item{display:flex;align-items:center;gap:12px;color:#fffc;font-size:14px}.feature-item svg{color:#3b82f6;flex-shrink:0}.lawyer-card .feature-item svg{color:#daa520}.portal-card-btn{width:100%;padding:16px 24px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease}.lawyer-btn{background:linear-gradient(135deg,#b8860b,#daa520)}.portal-card-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #3b82f666}.lawyer-btn:hover{box-shadow:0 8px 24px #b8860b66}.portal-footer{text-align:center;padding:20px}.portal-footer p{color:#fff9;font-size:14px;margin:0}@media (max-width: 900px){.portal-cards{grid-template-columns:1fr;gap:30px}.portal-card{padding:30px}.portal-logo span{font-size:28px}.portal-welcome{font-size:18px}}@media (max-width: 600px){.portal-selector-container{padding:20px 16px}.portal-header{margin-bottom:40px}.portal-card{padding:24px}.portal-card-icon{width:64px;height:64px}.portal-card-icon svg{width:36px;height:36px}.portal-card-title{font-size:24px}.portal-card-description{font-size:14px}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#1e1e1e;color:#fff;height:100dvh;overflow:hidden}#root{height:100%;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden}[class*=modal] .close-btn,[class*=modal] .close-button,[class*=overlay] .close-btn,[class*=overlay] .close-button,.legid-bot-overlay .close-btn,.uc-overlay .close-btn,.direct-chat-overlay .close-btn,.applicant-modal-header .close-btn,.consultation-header .close-btn{min-width:36px!important;min-height:36px!important;color:#fff!important;background:#ffffff26!important;border:1px solid rgba(255,255,255,.35)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important}[class*=modal] .close-btn svg,[class*=modal] .close-button svg,.legid-bot-overlay .close-btn svg,.applicant-modal-header .close-btn svg,.consultation-header .close-btn svg,.legal-research-modal .close-btn svg{stroke:currentColor!important;stroke-width:2.5}.legid-exit-bar{cursor:pointer}.legid-exit-bar .close-btn{flex-shrink:0}
