body{margin:0}code{font-family:SF Mono,Monaco,Inconsolata,Fira Code,Fira Mono,Roboto Mono,source-code-pro,Menlo,Consolas,Courier New,monospace}#root{min-height:100vh}*{scrollbar-color:var(--border-color) var(--bg-secondary);scrollbar-width:thin}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.text-gradient{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);-webkit-background-clip:text;background-clip:text}:focus-visible{outline-offset:2px}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toast{align-items:center;animation:slideIn .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-primary);border:1px solid;border-radius:var(--radius);box-shadow:var(--shadow-lg);display:flex;gap:14px;max-width:500px;min-width:320px;padding:16px 20px}.toast-success,[data-theme=dark] .toast-success{background:var(--success-light);border-color:var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-error,[data-theme=dark] .toast-error{background:var(--danger-light);border-color:var(--danger)}.toast-error .toast-icon{color:var(--danger)}.toast-warning,[data-theme=dark] .toast-warning{background:var(--warning-light);border-color:var(--warning)}.toast-warning .toast-icon{color:var(--warning)}.toast-icon{align-items:center;display:flex;flex-shrink:0;height:24px;width:24px}.toast-message{color:var(--text-primary);flex:1 1;font-size:.95rem;font-weight:500;line-height:1.5}.toast-close{background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);flex-shrink:0;padding:6px;transition:all .2s ease}.toast-close:hover{background:var(--bg-tertiary);color:var(--text-primary);transform:scale(1.1)}.toast-close:active{transform:scale(.95)}@keyframes slideIn{0%{opacity:0;transform:translateX(100%) scale(.9)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes slideOut{0%{opacity:1;transform:translateX(0) scale(1)}to{opacity:0;transform:translateX(100%) scale(.9)}}.toast.toast-exit{animation:slideOut .2s cubic-bezier(.4,0,1,1) forwards}@media (max-width:768px){.toast{max-width:calc(100vw - 32px);min-width:280px}}.toast-container{display:flex;flex-direction:column;gap:12px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:10000}.toast-container .toast{pointer-events:auto}@media (max-width:768px){.toast-container{left:10px;right:10px;top:10px}.toast{min-width:auto;width:100%}}.confirm-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.confirm-modal{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:440px;width:90%}.confirm-modal-header{align-items:center;display:flex;justify-content:space-between;padding:24px 24px 0}.confirm-modal-icon{align-items:center;border-radius:var(--radius);box-shadow:var(--shadow-sm);display:flex;height:56px;justify-content:center;width:56px}.confirm-modal-icon-danger{background:var(--danger-light);color:var(--danger)}.confirm-modal-icon-warning{background:var(--warning-light);color:var(--warning)}.confirm-modal-close{background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);padding:8px;transition:all .2s ease}.confirm-modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary);transform:scale(1.1)}.confirm-modal-close:active{transform:scale(.95)}.confirm-modal-content{padding:24px;text-align:center}.confirm-modal-title{color:var(--text-primary);font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin-bottom:14px}.confirm-modal-message{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin:0}.confirm-modal-actions{display:flex;gap:12px;padding:0 24px 24px}.confirm-modal-btn{border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:14px 20px;transition:all .2s ease}.confirm-modal-btn-cancel{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.confirm-modal-btn-cancel:hover{background:var(--bg-hover);border-color:var(--text-secondary);box-shadow:var(--shadow);transform:translateY(-1px)}.confirm-modal-btn-cancel:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.confirm-modal-btn-danger{background:linear-gradient(135deg,var(--danger) 0,var(--danger-hover) 100%);border:1px solid var(--danger);color:#fff}.confirm-modal-btn-danger:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.confirm-modal-btn-danger:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.confirm-modal-btn-warning{background:linear-gradient(135deg,var(--warning) 0,#d97706 100%);border:1px solid var(--warning);color:#fff}.confirm-modal-btn-warning:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.confirm-modal-btn-warning:active{box-shadow:var(--shadow-sm);transform:translateY(0)}@media (max-width:768px){.confirm-modal{margin:20px;max-width:95%}.confirm-modal-actions{flex-direction:column}.confirm-modal-btn{width:100%}.confirm-modal-header{padding:20px 20px 0}.confirm-modal-content{padding:20px}.confirm-modal-actions{padding:0 20px 20px}}.plans-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.plans-modal{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:1100px;overflow-y:auto;width:100%}.plans-modal-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;gap:20px;justify-content:space-between;padding:32px 40px}.plans-modal-header-content h2{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin:0 0 8px}.plans-modal-header-content p{color:var(--text-secondary);font-size:1rem;margin:0}.plans-modal-close{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;min-height:44px;min-width:44px;padding:10px;transition:all .2s ease}.plans-modal-close:hover{background:var(--bg-tertiary);border-color:var(--accent);color:var(--text-primary)}.plans-modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plans-modal-content{padding:40px}.plans-loading{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;padding:80px 20px}.plans-loading-spinner{animation:spin .8s linear infinite;border:4px solid var(--border-color);border-radius:50%;border-top-color:var(--accent);height:48px;width:48px}.plans-loading p{color:var(--text-secondary);font-size:1rem;margin:0}.plans-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:100%}@media (min-width:1024px){.plans-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:768px) and (max-width:1023px){.plans-grid{grid-template-columns:repeat(2,1fr)}}.plan-card{background:var(--bg-secondary);border-radius:12px;min-height:420px;padding:28px 24px}.plan-card:hover{box-shadow:0 8px 24px #0000001f}.plan-card.plan-popular{border-color:var(--accent);box-shadow:0 4px 16px #6366f126}.plan-card.plan-popular:hover{box-shadow:0 12px 32px #6366f140}.plan-card.plan-current{background:var(--accent-light);border-color:var(--success)}.plan-badge{background:var(--accent);border-radius:0 12px 0 8px;color:#fff;font-size:.7rem;padding:8px 12px;position:absolute;right:0;top:0;z-index:1}.plan-badge-current{background:var(--success)}.plan-card-header{margin-bottom:24px;padding-top:8px;text-align:center}.plan-name{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 0 16px}.plan-price{align-items:center;display:flex;gap:4px;justify-content:center;margin-bottom:12px;min-height:60px}.price-free{color:var(--success);font-size:1.5rem;font-weight:700}.price-amount{color:var(--accent);font-size:2.5rem;font-weight:800;line-height:1}.price-currency{align-self:flex-start;color:var(--accent);font-size:1.25rem;font-weight:600;margin-top:8px}.plan-description{font-size:.875rem;line-height:1.5;margin:0;min-height:40px}.plan-features{display:flex;flex:1 1;flex-direction:column;gap:12px;margin-bottom:24px}.plan-feature{align-items:center;color:var(--text-primary);display:flex;font-size:.9rem;gap:10px}.plan-feature svg{color:var(--accent);flex-shrink:0}.plan-button{background:#fff;border:2px solid var(--accent);border-radius:8px;color:var(--accent);cursor:pointer;font-size:1rem;font-weight:600;min-height:48px;padding:14px 24px;transition:all .2s ease;width:100%}[data-theme=dark] .plan-button{background:var(--bg-primary)}.plan-button:hover:not(:disabled){background:var(--accent);box-shadow:0 4px 12px #6366f14d;color:#fff;transform:translateY(-2px)}.plan-button:active:not(:disabled){transform:translateY(0)}.plan-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plan-button-popular{color:#fff}.plan-button-popular,[data-theme=dark] .plan-button-popular{background:var(--accent)}.plan-button-popular:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.plan-button-current{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-tertiary);cursor:not-allowed}.plan-button-current:hover{box-shadow:none;transform:none}@media (max-width:1024px){.plans-modal{max-width:900px}.plans-modal-header{padding:28px 32px}.plans-modal-content{padding:32px}.plans-grid{gap:20px}}@media (max-width:768px){.plans-modal-overlay{padding:10px}.plans-modal{border-radius:12px;max-height:95vh}.plans-modal-header{align-items:flex-start;flex-direction:column;padding:24px 20px}.plans-modal-header-content h2{font-size:1.5rem}.plans-modal-header-content p{font-size:.9rem}.plans-modal-close{position:absolute;right:20px;top:20px}.plans-modal-content{padding:24px 20px}.plans-grid{gap:16px;grid-template-columns:1fr}.plan-card{min-height:auto;padding:24px 20px}.plan-badge{font-size:.7rem;padding:4px 10px;right:12px;top:12px}.plan-name{font-size:1.15rem}.price-amount{font-size:2rem}.price-currency{font-size:1rem}.plan-description{font-size:.85rem;min-height:auto}.plan-feature{font-size:.85rem}.plan-button{font-size:.95rem;padding:12px 20px}}@media (max-width:480px){.plans-modal-header{padding:20px 16px}.plans-modal-header-content h2{font-size:1.25rem}.plan-card,.plans-modal-content{padding:20px 16px}}.upgrade-banner{animation:slideDownBounce .6s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:2px solid;border-radius:var(--radius);box-shadow:var(--shadow-lg);margin-bottom:20px;overflow:hidden;position:-webkit-sticky;position:sticky;top:10px;z-index:100}.upgrade-banner:before{background:inherit;bottom:0;content:"";left:0;opacity:.95;position:absolute;right:0;top:0;z-index:-1}.upgrade-banner-danger{background:var(--danger-light);border-color:var(--danger);color:var(--danger)}.upgrade-banner-warning{background:var(--warning-light);border-color:var(--warning);color:var(--warning)}.upgrade-banner-info{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}[data-theme=dark] .upgrade-banner-danger{background:var(--danger-light);border-color:var(--danger);color:var(--danger-hover)}[data-theme=dark] .upgrade-banner-warning{background:var(--warning-light);border-color:var(--warning);color:var(--warning)}[data-theme=dark] .upgrade-banner-info{background:var(--accent-light);border-color:var(--accent);color:var(--accent-hover)}.upgrade-banner-content{align-items:center;display:flex;gap:16px;padding:18px 20px}.upgrade-banner-icon{align-items:center;background:#fff3;border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.upgrade-banner-text{flex:1 1;min-width:0}.upgrade-banner-title{font-size:1rem;font-weight:700;letter-spacing:-.01em;margin-bottom:6px}.upgrade-banner-message{font-size:.9rem;font-weight:500;line-height:1.5;opacity:.9}.upgrade-banner-actions{display:flex;flex-shrink:0;gap:10px}.upgrade-banner-btn{align-items:center;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);display:flex;font-size:.9rem;font-weight:700;gap:8px;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.upgrade-btn{background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border:1px solid var(--accent);color:#fff}.upgrade-btn:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.upgrade-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.dismiss-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3;border:1px solid;color:inherit}.dismiss-btn:hover{background:#ffffff4d;box-shadow:var(--shadow);transform:translateY(-1px)}[data-theme=dark] .dismiss-btn{background:#0003}[data-theme=dark] .dismiss-btn:hover{background:#0000004d}.dismiss-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}@keyframes slideDownBounce{0%{opacity:0;transform:translateY(-30px) scale(.9)}50%{opacity:.8;transform:translateY(5px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.upgrade-banner{border-radius:var(--radius-sm);margin-bottom:15px;position:-webkit-sticky;position:sticky;top:5px}.upgrade-banner-content{align-items:stretch;flex-direction:column;gap:14px;padding:16px}.upgrade-banner-icon{align-self:center}.upgrade-banner-text{text-align:center}.upgrade-banner-actions{flex-wrap:wrap;justify-content:center}.upgrade-banner-btn{flex:1 1;justify-content:center;min-width:130px}}.modal-overlay{animation:fadeIn .2s ease;z-index:2000}.modal-content{animation:slideUp .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow:hidden}.modal-header{background:var(--bg-secondary);flex-direction:column}.modal-close{background:var(--bg-hover);border-radius:var(--radius-sm);padding:8px}.modal-close:hover{transform:scale(1.05)}.modal-body{flex:1 1;overflow-y:auto}.project-modal{max-width:500px;width:90%}.modal-title-wrapper{align-items:center;display:flex;gap:12px}.form-group{margin-bottom:20px}.form-group label{font-size:.95rem;margin-bottom:8px}.label-hint{font-size:.85rem;font-weight:400}.char-counter,.label-hint{color:var(--text-tertiary);display:block;margin-top:4px}.char-counter{font-size:.8rem;text-align:right}.form-group input,.form-group textarea{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:1rem;padding:12px 14px;transition:all .2s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.form-group textarea{min-height:80px}.color-picker{display:flex;flex-wrap:wrap;gap:10px}.color-option{border:3px solid #0000;border-radius:var(--radius);cursor:pointer;height:40px;position:relative;transition:all .2s ease;width:40px}.color-option:hover{box-shadow:var(--shadow);transform:scale(1.1)}.color-option.active{border-color:var(--text-primary);box-shadow:var(--shadow-lg);transform:scale(1.15)}.color-option.active:after{color:#fff;content:"✓";font-size:18px;font-weight:700;left:50%;position:absolute;text-shadow:0 1px 3px #0000004d;top:50%;transform:translate(-50%,-50%)}.modal-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.btn-primary,.btn-secondary{border:none;border-radius:var(--radius);cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-secondary{background:var(--bg-hover);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow);transform:translateY(-1px)}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.project-modal{max-height:90vh;overflow-y:auto;width:95%}.color-option{height:36px;width:36px}.modal-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.code-input-container{display:flex;gap:12px;justify-content:center;margin:20px 0}.code-input-digit{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius);color:var(--text-primary);font-size:32px;font-weight:600;height:64px;outline:none;text-align:center;transition:all .2s ease;width:56px}.code-input-digit:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.code-input-digit:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.code-input-container{gap:8px}.code-input-digit{font-size:28px;height:56px;width:48px}}@media (max-width:480px){.code-input-container{gap:6px}.code-input-digit{font-size:24px;height:52px;width:44px}}.auth-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.auth-modal{animation:modalSlideIn .3s ease-out;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-height:90vh;max-width:420px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px;padding:24px 24px 0}.auth-modal-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.auth-modal-close{align-items:center;background:var(--bg-hover);border:none;border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.auth-modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.auth-modal-content{padding:0 24px 24px}.step-icon{align-items:center;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border-radius:50%;color:#fff;display:flex;height:60px;justify-content:center;margin:0 auto 15px;width:60px}.step-icon.success{background:linear-gradient(135deg,var(--success) 0,var(--success-hover) 100%)}.step-description{color:var(--text-secondary);line-height:1.6;margin:0 0 12px;text-align:center}.step-description strong{color:var(--text-primary);font-weight:600}.resend-section{align-items:center;display:flex;flex-direction:column;gap:12px;margin-top:16px}.resend-section p{color:var(--text-secondary);font-size:.9rem;margin:0}.resend-button{background:none;border:none;border-radius:var(--radius);color:var(--accent);cursor:pointer;font-size:.95rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.resend-button:hover:not(:disabled){background:var(--accent-light)}.resend-button:disabled{cursor:not-allowed;opacity:.5}.back-button{background:none;border:1px solid var(--border-color);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;font-size:.95rem;margin-top:16px;padding:12px 24px;transition:all .2s ease;width:100%}.back-button:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--text-primary)}.success-animation{height:60px;margin:20px auto;position:relative;width:60px}.pulse{animation:pulse 2s infinite;background:var(--success);border-radius:50%;height:20px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:20px}.auth-form{gap:15px}.auth-form,.auth-form-group{display:flex;flex-direction:column}.auth-form-group{gap:0}.auth-label{color:var(--text-primary);font-size:.95rem;font-weight:600;letter-spacing:-.01em}.input-with-icon{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-tertiary);left:16px;pointer-events:none;position:absolute;z-index:1}.auth-form-input{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius);box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:14px 16px;transition:all .2s ease;width:100%}.input-with-icon .auth-form-input{padding-left:48px}.code-input{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius);box-sizing:border-box;color:var(--text-primary);font-family:Courier New,monospace;font-size:2rem;font-weight:700;letter-spacing:.5em;padding:20px;text-align:center;transition:all .2s ease;width:100%}.auth-form-input:focus,.code-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.auth-form-input:disabled{background:var(--bg-hover);cursor:not-allowed;opacity:.6}.auth-form-input::placeholder,.password-toggle{color:var(--text-tertiary)}.password-toggle{background:none;border:none;border-radius:var(--radius);cursor:pointer;padding:4px;position:absolute;right:16px;transition:all .2s ease}.password-toggle:hover{background:var(--bg-hover);color:var(--text-secondary)}.password-match{align-items:center;display:flex;position:absolute;right:50px}.password-match.match{color:var(--success)}.password-match.no-match{color:var(--error)}.password-strength{margin-top:8px}.strength-bar{background:var(--bg-tertiary);border-radius:2px;height:4px;margin-bottom:4px;overflow:hidden;width:100%}.strength-fill{border-radius:2px;height:100%;transition:all .3s ease}.password-strength.weak .strength-fill{background:var(--error);width:33%}.password-strength.medium .strength-fill{background:#f59e0b;width:66%}.password-strength.strong .strength-fill{background:var(--success);width:100%}.strength-text{font-size:.85rem;font-weight:500}.password-strength.weak .strength-text{color:var(--error)}.password-strength.medium .strength-text{color:#f59e0b}.password-strength.strong .strength-text{color:var(--success)}.error-message{background:#ef44441a;border:1px solid var(--error);border-radius:var(--radius);color:var(--error);font-size:.9rem;padding:12px 16px}.auth-submit-btn,.error-message{align-items:center;display:flex;gap:8px}.auth-submit-btn{background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;justify-content:center;padding:16px;transition:all .2s ease;width:100%}.auth-submit-btn:hover:not(:disabled){box-shadow:var(--shadow-lg);transform:translateY(-2px)}.auth-submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.auth-switch{border-top:1px solid var(--border-color);margin-top:12px;padding-top:12px;text-align:center}.auth-switch p{color:var(--text-secondary);font-size:.95rem;margin:0}.auth-switch-btn{background:none;border:none;border-radius:var(--radius);color:var(--accent);cursor:pointer;font-size:.95rem;font-weight:600;padding:4px 8px;transition:all .2s ease}.auth-switch-btn:hover{background:var(--accent-light);text-decoration:underline}.terms-notice{color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin-top:0;text-align:center}.terms-notice a{color:var(--accent);font-weight:500;text-decoration:none}.terms-notice a:hover{text-decoration:underline}@media (max-width:480px){.auth-modal{margin:10px;max-width:calc(100vw - 20px)}.auth-modal-header{padding:20px 20px 0}.auth-modal-header h2{font-size:1.3rem}.auth-modal-content{padding:0 20px 20px}.auth-form-input{padding:14px}.input-with-icon .auth-form-input{padding:14px 14px 14px 44px}.input-icon{left:14px}.password-toggle{right:14px}}.modal-overlay{background:#000000bf}.modal-content{animation:slideUp .3s ease-out;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-width:480px;position:relative}.modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;line-height:1;position:absolute;right:0;top:0;transition:all .2s ease;width:32px;z-index:10}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-header{padding:32px 32px 24px;text-align:center}.modal-header h2{font-weight:700;margin-bottom:12px}.modal-header p{color:var(--text-secondary);font-size:.95rem;margin:4px 0}.email-display{color:var(--accent);font-size:1rem;font-weight:600}.modal-body{padding:0 32px 32px}.loading-message{align-items:center;color:var(--text-secondary);display:flex;gap:8px;justify-content:center;margin-top:12px}.countdown-text,.loading-message{font-size:.9rem;text-align:center}.countdown-text{color:var(--text-tertiary)}.help-text{margin-top:20px;text-align:center}.help-text p{color:var(--text-tertiary);font-size:.85rem;margin:0}.remembered-user-card{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius-md);display:flex;gap:16px;margin:20px 0;padding:20px;transition:all .2s ease}.remembered-user-card:hover{background:var(--bg-hover);border-color:var(--accent)}.remembered-user-avatar{align-items:center;background:linear-gradient(135deg,var(--accent) 0,var(--accent-dark) 100%);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:700;height:56px;justify-content:center;width:56px}.remembered-user-info{flex:1 1;min-width:0}.remembered-user-name{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin-bottom:4px}.remembered-user-email,.remembered-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remembered-user-email{color:var(--text-secondary);font-size:.875rem}@media (max-width:768px){.modal-content{margin:0 16px;max-width:100%}.modal-header{padding:24px 20px 16px}.modal-header h2{font-size:1.25rem}.modal-body{padding:0 20px 24px}}.request-confirmation{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-top:12px;padding:12px}.confirmation-buttons{display:flex;flex-wrap:wrap;gap:10px}.confirmation-buttons button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:6px;justify-content:center;min-width:140px;padding:10px 16px;transition:all .2s}.btn-confirm{background:var(--primary-color);color:#fff}.btn-confirm:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.btn-confirm:disabled{cursor:not-allowed;opacity:.6}.btn-edit{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-edit:hover:not(:disabled){background:var(--bg-hover)}.btn-cancel{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);padding:8px 16px}.btn-cancel:hover:not(:disabled){background:var(--bg-hover)}.phone-edit{display:flex;flex-direction:column;gap:10px}.phone-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px;width:100%}.phone-input:focus{border-color:var(--primary-color);outline:none}.phone-edit-actions{display:flex;gap:10px}.request-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;color:#ef4444;font-size:13px;margin-top:10px;padding:8px 12px}@media (max-width:480px){.confirmation-buttons{flex-direction:column}.confirmation-buttons button{width:100%}}.phone-input-container{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;margin:16px 0;padding:20px}.phone-input-header{align-items:center;display:flex;gap:10px;margin-bottom:12px}.phone-input-header h4{font-size:1.1rem;font-weight:600;margin:0}.phone-input-description{font-size:.9rem;line-height:1.5;margin:0 0 16px;opacity:.95}.phone-input-form{display:flex;flex-direction:column;gap:12px}.phone-input-field{position:relative}.phone-input-field input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:8px;color:#fff;font-size:1rem;font-weight:500;padding:12px 16px;transition:all .2s ease;width:100%}.phone-input-field input::placeholder{color:#fff9}.phone-input-field input:focus{background:#fff3;border-color:#fff9;outline:none}.phone-input-field input:disabled{cursor:not-allowed;opacity:.6}.phone-input-error{background:#ef444433;border:1px solid #ef444466;border-radius:6px;color:#fee;font-size:.85rem;padding:8px 12px}.phone-input-actions{display:flex;gap:10px}.phone-input-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:600;gap:6px;justify-content:center;padding:12px 20px;transition:all .2s ease}.phone-input-btn-primary{background:#fff;color:#667eea}.phone-input-btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #ffffff4d;transform:translateY(-2px)}.phone-input-btn-primary:disabled{cursor:not-allowed;opacity:.5}.phone-input-btn-secondary{background:#fff3;border:1px solid #ffffff4d;color:#fff;flex:0 0 auto;min-width:120px}.phone-input-btn-secondary:hover:not(:disabled){background:#ffffff4d}@media (max-width:768px){.phone-input-container{padding:16px}.phone-input-header h4{font-size:1rem}.phone-input-description{font-size:.85rem}.phone-input-actions{flex-direction:column}.phone-input-btn-secondary{min-width:auto}}.cookie-banner{animation:slideUp .3s ease-out;background:var(--bg-secondary);border-top:1px solid var(--border-color);bottom:0;box-shadow:0 -4px 12px #0000001a;left:0;position:fixed;right:0;z-index:9999}.cookie-banner-content{align-items:center;display:flex;gap:16px;margin:0 auto;max-width:1200px;padding:16px 24px}.cookie-banner-icon{color:var(--primary-color);flex-shrink:0}.cookie-banner-text{color:var(--text-primary);flex:1 1;font-size:14px;line-height:1.5}.cookie-banner-text p{margin:0}.cookie-banner-text a{color:var(--primary-color);text-decoration:underline}.cookie-banner-text a:hover{text-decoration:none}.cookie-banner-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.cookie-accept-btn{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 24px;transition:all .2s;white-space:nowrap}.cookie-accept-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.cookie-close-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s}.cookie-close-btn:hover{background:var(--hover-bg);color:var(--text-primary)}@media (max-width:768px){.cookie-banner-content{align-items:flex-start;flex-direction:column;gap:12px;padding:16px}.cookie-banner-icon{display:none}.cookie-banner-text{font-size:13px}.cookie-banner-actions{justify-content:space-between;width:100%}.cookie-accept-btn{flex:1 1}}.chat-container{background:var(--bg-primary);display:flex;height:100vh}@supports (height:100dvh){.chat-container{height:100dvh}}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1);width:300px}.sidebar-header{justify-content:space-between}.btn-new-chat{background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);color:#fff;flex:1 1;font-size:.95rem;font-weight:600;gap:10px;order:1;padding:12px 20px}.btn-new-chat,.btn-new-project{align-items:center;border-radius:var(--radius);box-shadow:var(--shadow-sm);display:flex;justify-content:center;transition:all .2s ease}.btn-new-project{background:var(--bg-hover);color:var(--text-secondary);padding:12px}.btn-new-project:hover{background:var(--bg-tertiary);color:var(--accent)}.btn-new-chat:hover,.btn-new-project:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.btn-new-chat:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.sidebar-close{border-radius:var(--radius-sm);transition:all .2s ease}.sidebar-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.sidebar-close-wrapper{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:none;padding:20px 12px}.sidebar-footer-mobile{display:none}.sidebar-footer-desktop{display:block}.conversations{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:12px;scroll-behavior:smooth}@media (max-width:768px){.conversations:before{content:"";flex:1 1;min-height:0}}.conversation-item{align-items:center;border:1px solid #0000;border-radius:var(--radius);cursor:pointer;display:flex;gap:12px;margin-bottom:6px;padding:14px 16px;transition:all .2s ease}.conversation-item.new-chat{animation:slideInFromBottom .3s ease-out;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-light)}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.conversation-item:hover{background:var(--bg-hover);border-color:var(--border-color)}.conversation-item.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}[data-theme=dark] .conversation-item.active{background:var(--accent-light);color:var(--accent-hover)}.conversation-title{flex:1 1;font-size:.95rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-title-wrapper{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.new-chat-badge{animation:pulse 2s infinite;background:var(--accent);border-radius:10px;color:#fff;font-size:.75rem;font-weight:600;padding:2px 6px;white-space:nowrap}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media (max-width:768px){.conversation-item.new-chat{background:var(--accent-light);border-color:var(--accent);margin-bottom:8px}.new-chat-badge{font-size:.7rem;padding:1px 5px}.conversation-title-wrapper{gap:6px}}.conversation-title-input{background:var(--bg-primary);border:2px solid var(--accent);border-radius:var(--radius-sm);color:var(--text-primary);flex:1 1;font-family:inherit;font-size:.95rem;font-weight:500;padding:6px 10px;width:60%}.conversation-title-input:focus{box-shadow:0 0 0 3px var(--accent-light);outline:none}.conversation-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.conversation-item:hover .conversation-actions{opacity:1}.delete-conversation,.rename-conversation,.save-rename{align-items:center;background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;justify-content:center;padding:6px;transition:all .2s ease}.rename-conversation:hover{background:var(--accent);color:#fff;transform:scale(1.05)}.save-rename:hover{background:var(--success);color:#fff;transform:scale(1.05)}.delete-conversation:hover{background:var(--danger);color:#fff;transform:scale(1.05)}.sidebar-footer{background:var(--bg-secondary);position:relative}.sidebar-company-info{border-top:1px solid var(--border-color);margin-top:16px;padding-top:16px;text-align:center}.sidebar-company-info .company-name{color:var(--text-primary);font-size:.875rem;font-weight:600;margin-bottom:4px}.sidebar-company-info .company-detail{color:var(--text-secondary);font-size:.75rem;margin:2px 0}.btn-register{background:var(--accent);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;padding:12px 20px;transition:all .2s ease;width:100%}.btn-register:hover{background:var(--accent-hover);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.btn-register:active{transform:translateY(0)}.user-info-button{align-items:center;background:var(--bg-hover);border:1px solid #0000;border-radius:var(--radius);color:var(--text-primary);display:flex;justify-content:space-between;padding:12px 14px;transition:all .2s ease;width:100%}.user-info-button:hover{background:var(--bg-tertiary);border-color:var(--border-color);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.user-info-button:active{transform:translateY(0)}.user-info{align-items:center;color:var(--text-primary);display:flex;flex:1 1;flex-wrap:wrap;font-size:14px;font-weight:500;gap:10px}.sidebar-actions-dropdown{animation:slideUp .2s cubic-bezier(.4,0,.2,1);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius);bottom:100%;box-shadow:var(--shadow-lg);left:16px;margin-bottom:12px;overflow:hidden;position:absolute;right:16px;z-index:1000}.sidebar-actions-dropdown button{align-items:center;background:#0000;border-bottom:1px solid var(--border-color);color:var(--text-primary);display:flex;font-size:.95rem;font-weight:500;gap:12px;padding:14px 16px;transition:all .2s ease;width:100%}.sidebar-actions-dropdown button:last-child{border-bottom:none}.sidebar-actions-dropdown button:hover{background:var(--bg-hover);color:var(--accent)}.user-actions-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000001a;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.chat-main{flex:1 1;flex-direction:column;overflow:hidden;position:relative}.chat-header,.chat-main{background:var(--bg-primary);display:flex}.chat-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);gap:16px;justify-content:space-between;padding:20px 24px}.brand-logo-link{align-items:center;display:flex;text-decoration:none}.brand-logo{max-height:36px;max-width:200px;object-fit:contain;transition:opacity .2s ease}.brand-logo:hover{opacity:.8}.sidebar-toggle{background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);display:none;padding:8px;transition:all .2s ease}.sidebar-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.chat-header h1{color:var(--text-primary);flex:1 1;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.header-actions{align-items:center;display:flex;gap:12px}.mobile-controls{align-items:center;display:none;gap:8px;margin-bottom:8px}.mobile-sidebar-toggle{align-items:center;background:var(--accent);border:none;border-radius:0 30px 30px 0;box-shadow:var(--shadow);color:#fff;display:flex;justify-content:center;left:-1px;padding:8px 6px 8px 4px;position:fixed;transition:all .2s ease;z-index:1001}.mobile-sidebar-toggle:hover{background:var(--accent-hover);transform:translateX(2px)}.mobile-sidebar-toggle:active{transform:translateX(0)}.sidebar-close-edge{align-items:center;background:var(--accent);border:none;border-radius:0 30px 30px 0;bottom:70px;box-shadow:var(--shadow);color:#fff;display:none;justify-content:center;opacity:0;padding:8px 6px 8px 4px;position:absolute;right:-31px;transition:all .2s ease;visibility:hidden;z-index:1001}.sidebar.open .sidebar-close-edge{opacity:1;visibility:visible}.sidebar-close-edge:hover{background:var(--accent-hover)}.header-new-chat-btn{align-items:center;background:var(--bg-hover);border:none;border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:12px;transition:all .2s ease}.header-new-chat-btn:hover{background:var(--accent-light);color:var(--accent);transform:scale(1.05)}.messages-container{background:var(--bg-primary);flex:1 1;overflow-y:auto;padding:24px 24px 140px}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:calc(100% - 140px);padding:40px 20px}.empty-state-guest{gap:16px;min-height:auto;padding:60px 20px}.empty-state-logo-compact{margin-bottom:8px;max-height:200px;max-width:200px;object-fit:contain}.empty-state-title-compact{color:var(--text-primary);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.empty-state-text-compact{color:var(--text-secondary);font-size:1rem;line-height:1.5;margin:0;max-width:400px}.empty-state-register-btn{background:var(--accent);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:8px;min-height:48px;padding:14px 32px;transition:all .2s ease}.empty-state-register-btn:hover{background:var(--accent-hover);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.empty-state-register-btn:active{transform:translateY(0)}.legal-disclaimer-compact{margin-top:0;opacity:.7}.empty-state svg{color:var(--accent);flex-shrink:0;margin-bottom:24px;opacity:.5}.empty-state-logo{flex-shrink:0;margin-bottom:24px;max-height:200px;max-width:200px;object-fit:contain}.empty-state h2{color:var(--text-primary);font-size:1.85rem;font-weight:700;letter-spacing:-.02em;margin-bottom:0}.empty-state p{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;max-width:500px}@media (max-width:768px){.empty-state{justify-content:flex-start;padding:60px 16px 20px;position:relative}.empty-state-guest{gap:12px;padding:60px 16px 40px;position:relative}.empty-state-logo-compact{margin-bottom:4px;max-height:100px;max-width:100px}.empty-state-title-compact{font-size:1.25rem}.empty-state-text-compact{font-size:.9rem}.empty-state-register-btn{font-size:.95rem;padding:12px 24px}.empty-state svg{height:48px;margin-bottom:20px;width:48px}.empty-state h2{font-size:1.5rem}.empty-state p{font-size:1rem}.btn-register{min-height:36px;padding:0}}.legal-disclaimer{background:#0000;border:none;border-radius:var(--radius);bottom:70px;margin-bottom:0;max-width:600px;order:-1;padding:8px 12px;position:relative}.legal-disclaimer small{color:var(--text-tertiary);font-size:.7rem;line-height:1.4;opacity:.6}.messages{margin:0 auto;max-width:900px}.message{animation:messageSlide .3s ease-out;display:flex;margin-bottom:28px}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{justify-content:flex-end}.message.assistant{justify-content:flex-start}.message-content{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-size:.98rem;max-width:75%;padding:14px 18px}.message.user .message-content{background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border-bottom-right-radius:6px;color:#fff;font-weight:500}.message.assistant .message-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-bottom-left-radius:6px;color:var(--text-primary)}.typing{align-items:center;display:flex;gap:8px}.typing-indicator{display:flex;gap:5px}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:var(--accent);border-radius:50%;height:8px;width:8px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,80%,to{opacity:.4;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}.message-form{background:#0000;bottom:0;left:0;margin:0 auto;max-width:900px;padding:24px;pointer-events:none;position:absolute;right:0;width:100%;z-index:10}.message-form>*{pointer-events:auto}.anonymous-info-banner{animation:slideUp .3s ease-out;background:linear-gradient(135deg,var(--accent-light) 0,var(--accent-light) 100%);border:1px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--accent);font-size:.9rem;font-weight:600;margin-bottom:12px;padding:10px 16px;text-align:center}[data-theme=dark] .anonymous-info-banner{background:linear-gradient(135deg,#3b82f626,#3b82f61a);color:var(--accent-hover)}.anonymous-register-prompt{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.anonymous-register-btn{background:var(--accent);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 20px;transition:all .2s ease;white-space:nowrap}.anonymous-register-btn:hover{background:var(--accent-hover);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.anonymous-register-btn:active{transform:translateY(0)}.selected-images{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.selected-image{border:2px solid var(--border-color);border-radius:var(--radius);height:70px;overflow:hidden;position:relative;transition:all .2s ease;width:70px}.selected-image:hover{border-color:var(--accent);transform:scale(1.05)}.selected-image img{height:100%;object-fit:cover;width:100%}.remove-image{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:4px;top:4px;transition:all .2s ease;width:24px}.remove-image:hover{background:var(--danger);transform:scale(1.1)}.message-input-container{align-items:stretch;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;overflow:hidden;transition:all .2s ease}.message-input-container:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.message-input-container textarea{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:1rem;line-height:1.5;max-height:150px;min-height:24px;outline:none;overflow-y:auto;padding:16px 16px 16px 0;resize:none}.message-input-container textarea::placeholder{color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-input-container textarea::-webkit-scrollbar{width:4px}.message-input-container textarea::-webkit-scrollbar-track{background:#0000}.message-input-container textarea::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.message-input-container textarea::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.attach-btn{align-items:center;align-self:flex-end;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;flex-shrink:0;justify-content:center;padding:18px;transition:all .2s ease}.attach-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--accent)}.attach-btn:active:not(:disabled){transform:scale(.95)}.attach-btn:disabled{cursor:not-allowed;opacity:.4}.message-input-container button[type=submit]{align-items:center;align-self:flex-end;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border:none;border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;font-weight:600;justify-content:center;margin:0;padding:18px;transition:all .2s ease}.message-input-container button[type=submit]:hover:not(:disabled){box-shadow:var(--shadow);transform:scale(1.05)}.message-input-container button[type=submit]:active:not(:disabled){transform:scale(.98)}.message-input-container button[type=submit]:disabled{background:var(--bg-tertiary);color:var(--text-tertiary);cursor:not-allowed;opacity:.5}.processing-spinner{animation:spin .8s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.message-images{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.message-image{border:2px solid var(--border-color);border-radius:var(--radius);cursor:pointer;max-height:220px;max-width:220px;transition:all .2s ease}.message-image:hover{border-color:var(--accent);box-shadow:var(--shadow-lg);transform:scale(1.03)}@media (max-width:1024px) and (min-width:769px){.header-actions{gap:8px}}@media (max-width:768px){.sidebar{display:flex;flex-direction:column;height:100vh;left:0;max-width:320px;position:fixed;top:0;transform:translateX(-100%);width:85%;z-index:1000}.legal-disclaimer{position:absolute;top:-20px}.sidebar-footer-desktop{display:none}.sidebar-footer-mobile{display:block}.sidebar-close-wrapper{align-items:flex-start;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;order:0}.sidebar-close-wrapper .sidebar-footer{border:none;flex:1 1;padding:0}.sidebar-close{flex-shrink:0;margin-top:0}.conversations{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;order:1;overflow-y:auto}.sidebar-header{flex-shrink:0;order:2}.sidebar.open{box-shadow:var(--shadow-xl);transform:translateX(0)}.sidebar-close,.sidebar-toggle{display:flex}.header-actions{gap:8px}.mobile-controls,.sidebar-close-edge{display:flex}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:block;left:0;position:fixed;right:0;top:0;z-index:999}.message-content{max-width:85%}.messages-container{padding:16px 16px 140px}.message-form{background:var(--bg-primary);border-top:1px solid var(--border-color);bottom:0;left:0;margin:0;max-width:100%;padding:12px 16px calc(12px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:100}.anonymous-info-banner{font-size:.85rem;margin-bottom:10px;padding:8px 12px}.anonymous-register-prompt{gap:8px}.anonymous-register-btn{font-size:.85rem;padding:6px 16px}.message-input-container textarea{font-size:16px}.attach-btn,.message-input-container button[type=submit]{padding:18px}.message-image{max-height:140px;max-width:140px}.conversation-actions{opacity:1}.conversation-item{padding:10px 14px}.delete-conversation,.rename-conversation,.save-rename{min-height:30px;min-width:30px;padding:8px}.sidebar-actions-dropdown{animation:slideDown .2s cubic-bezier(.4,0,.2,1);bottom:auto;left:12px;margin-bottom:0;margin-top:12px;right:12px;top:100%}.sidebar-actions-dropdown button{font-size:1rem;padding:16px}.user-info-button{padding:8px 12px}.chat-header h1{font-size:1.05rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-new-chat-btn{padding:8px}.btn-new-chat{padding:8px 20px}}.admin-badge{background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.upgrade-banner-wrapper{margin-bottom:10px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.messages-container .upgrade-banner{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffffa;border:2px solid;box-shadow:0 4px 20px #00000026}[data-theme=dark] .messages-container .upgrade-banner{background:#1e1e1efa;box-shadow:0 4px 20px #0000004d}@media (max-width:768px){.upgrade-banner-wrapper{margin-bottom:8px}}.projects-section{margin-bottom:12px}.project-group{margin-bottom:8px}.project-header{align-items:center;background:var(--bg-hover);border-radius:var(--radius);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:4px;padding:10px 12px;transition:all .2s ease}.project-header:hover{background:var(--bg-tertiary)}.project-info{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.project-name{flex:1 1;font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-count{color:var(--text-tertiary);font-size:.85rem;font-weight:500}.project-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.project-header:hover .project-actions{opacity:1}.delete-project,.edit-project{align-items:center;background:#0000;border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;justify-content:center;padding:6px;transition:all .2s ease}.edit-project:hover{background:var(--accent);color:#fff;transform:scale(1.05)}.delete-project:hover{background:var(--danger);color:#fff;transform:scale(1.05)}.project-conversations{animation:slideDown .3s ease-out;overflow:hidden;padding-left:12px}.conversation-item.in-project{border-left:2px solid var(--border-color);margin-left:8px}.remove-from-project{align-items:center;background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;justify-content:center;padding:6px;transition:all .2s ease}.remove-from-project:hover{background:var(--warning);color:#fff;transform:scale(1.05)}.section-divider{align-items:center;color:var(--text-tertiary);display:flex;font-size:.85rem;font-weight:600;gap:12px;letter-spacing:.5px;margin:16px 0 12px;text-transform:uppercase}.section-divider:after,.section-divider:before{background:var(--border-color);content:"";flex:1 1;height:1px}.conversations-without-project{margin-top:8px}@media (max-width:768px){.project-actions{opacity:1}.project-header{padding:8px 10px}.project-name{font-size:.85rem}.project-count{font-size:.8rem}}.move-to-project-wrapper{position:relative}.move-to-project{align-items:center;background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;justify-content:center;padding:6px;transition:all .2s ease}.move-to-project:hover{background:var(--accent);color:#fff;transform:scale(1.05)}.move-menu-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:99}.move-to-project-menu{animation:slideDown .2s ease;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-lg);margin-top:4px;max-height:200px;min-width:180px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.move-menu-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;gap:8px;padding:10px 12px;text-align:left;transition:all .2s ease;width:100%}.move-menu-item:hover{background:var(--bg-hover);color:var(--accent)}.move-menu-empty{color:var(--text-tertiary);font-size:.9rem;padding:12px;text-align:center}.create-chat-in-project{align-items:center;background:#0000;border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;justify-content:center;padding:6px;transition:all .2s ease}.create-chat-in-project:hover{background:var(--success);color:#fff;transform:scale(1.05)}.lawyer-messages-section{background:var(--bg-secondary);border:2px solid var(--primary-color);border-radius:12px;box-shadow:0 4px 12px #4f46e51a;margin-bottom:24px;padding:16px}.lawyer-messages-header{align-items:center;color:var(--primary-color);display:flex;font-size:.95rem;font-weight:600;gap:8px;margin-bottom:16px}.lawyer-message{background:var(--bg-primary);border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:12px;padding:12px}.lawyer-message.from-lawyer{border-left:3px solid var(--primary-color)}.lawyer-message.from-client{background:var(--bg-hover);border-left:3px solid #10b981}.lawyer-message-header{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:8px}.lawyer-message-author{color:var(--primary-color);font-weight:600}.lawyer-message.from-client .lawyer-message-author{color:#10b981}.lawyer-message-time{color:var(--text-secondary);font-size:.8rem}.lawyer-message-text{color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.lawyer-reply-button{align-items:center;background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;margin-top:8px;padding:10px 16px;transition:all .2s ease}.lawyer-reply-button:hover{background:var(--primary-hover);box-shadow:0 4px 8px #4f46e533;transform:translateY(-1px)}.lawyer-reply-form{border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-top:12px}.lawyer-reply-form,.lawyer-reply-form textarea{background:var(--bg-primary);border:1px solid var(--border-color);padding:12px}.lawyer-reply-form textarea{border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.9rem;min-height:80px;resize:vertical;transition:all .2s ease;width:100%}.lawyer-reply-form textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e51a;outline:none}.lawyer-reply-actions{display:flex;gap:8px;margin-top:8px}.send-reply-button{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.send-reply-button:hover:not(:disabled){background:var(--primary-hover)}.send-reply-button:disabled{cursor:not-allowed;opacity:.5}.cancel-reply-button{background:var(--bg-hover);border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.cancel-reply-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media (max-width:768px){.lawyer-messages-section{margin-bottom:16px;padding:12px}.lawyer-message{padding:10px}.lawyer-reply-form textarea{min-height:60px}}.lawyer-chats-section{border-bottom:1px solid var(--border-color);margin-bottom:16px;padding-bottom:16px}.lawyer-chats-section .section-header{align-items:center;color:var(--text-secondary);display:flex;font-size:.85rem;font-weight:600;gap:8px;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase}.lawyer-chat-messages{padding-top:16px}.lawyer-chat-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:16px;padding:16px}.lawyer-chat-header h3{color:var(--text-primary);font-size:1.1rem;margin:0}.status-badge{border-radius:12px;font-size:.8rem;font-weight:500;padding:4px 12px}.message.lawyer-message .message-author{display:none}.message.lawyer-message .message-text{margin-bottom:4px}.message.lawyer-message .message-time{color:var(--text-secondary);font-size:.75rem;margin-top:4px}.lawyer-message-input-container{align-items:stretch;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;margin:16px 20px;overflow:hidden;transition:all .2s ease}.lawyer-message-input-container:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.lawyer-message-input-container textarea{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:1rem;line-height:1.5;max-height:150px;min-height:24px;outline:none;overflow-y:auto;padding:16px 16px 16px 0;resize:none}.lawyer-message-input-container textarea::placeholder{color:var(--text-tertiary)}.lawyer-message-input-container textarea::-webkit-scrollbar{width:4px}.lawyer-message-input-container textarea::-webkit-scrollbar-track{background:#0000}.lawyer-message-input-container textarea::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.lawyer-message-input-container .attach-btn,.lawyer-message-input-container button[type=submit]{align-items:center;align-self:flex-end;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;flex-shrink:0;justify-content:center;padding:18px;transition:all .2s ease}.lawyer-message-input-container button[type=submit]:hover:not(:disabled){background:var(--bg-hover);color:var(--accent)}.lawyer-message-input-container button[type=submit]:active:not(:disabled){transform:scale(.95)}.lawyer-message-input-container button[type=submit]:disabled{cursor:not-allowed;opacity:.4}.suggest-lawyer-button{align-items:center;background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:8px;justify-content:center;margin-top:12px;padding:12px 20px;transition:all .2s ease;width:100%}.suggest-lawyer-button:hover{background:var(--primary-hover);box-shadow:0 4px 12px #4f46e54d;transform:translateY(-1px)}.suggest-lawyer-button:active{transform:translateY(0)}.profile-container{background:var(--bg-primary);min-height:100vh}.profile-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-primary);border-bottom:1px solid var(--border-color);display:flex;gap:16px;padding:20px 24px}.btn-back{border:1px solid #0000;border-radius:var(--radius);padding:10px}.btn-back:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent);transform:translateX(-2px)}.btn-back:active{transform:translateX(0)}.profile-header h1{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;margin-right:auto}.btn-admin{align-items:center;background:var(--accent-light);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);display:flex;font-weight:600;justify-content:center;padding:10px;transition:all .2s ease}.btn-admin:hover{background:var(--accent);color:#fff;transform:scale(1.05)}.btn-admin:active{transform:scale(.98)}.profile-content{display:flex;flex-direction:column;gap:28px;margin:0 auto;max-width:1200px;padding:36px 24px}.profile-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:all .2s ease}.profile-card:hover{box-shadow:var(--shadow)}.card-header{gap:14px;padding:24px}.card-header svg{color:var(--accent)}.card-header h2{font-size:1.3rem}.card-body{padding:24px}.info-row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 0}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-row .label{color:var(--text-secondary);font-size:.98rem;font-weight:500}.info-row .value{color:var(--text-primary);font-size:1rem;font-weight:600}.balance-value{font-size:1.1rem;font-weight:700}.balance-value.low-balance{color:var(--warning)}.balance-value.empty-balance{color:var(--error)}.balance-bar{background:var(--bg-tertiary);box-shadow:inset 0 1px 3px #0000001a;height:16px;margin-top:12px;overflow:hidden;position:relative}.balance-bar,.balance-fill{border-radius:var(--radius-sm)}.balance-fill{box-shadow:0 0 10px #10b9814d;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.balance-bar-text{color:var(--text-primary);font-size:.75rem;font-weight:600;left:50%;position:absolute;text-shadow:0 1px 2px #0000001a;top:50%;transform:translate(-50%,-50%)}.plan-balance{color:var(--accent);font-size:1.1rem;font-weight:700;margin-bottom:8px}.balance-warning{align-items:flex-start;border-left:4px solid;border-radius:var(--radius);display:flex;gap:12px;margin-bottom:20px;padding:16px}.balance-warning.warning{background:#f59e0b1a;border-left-color:var(--warning);color:var(--warning)}.balance-warning.danger{background:#ef44441a;border-left-color:var(--error);color:var(--error)}.balance-warning svg{flex-shrink:0;margin-top:2px}.balance-warning strong{display:block;font-weight:700;margin-bottom:4px}.balance-warning p{font-size:.9rem;margin:0;opacity:.9}.usage-bar{background:var(--bg-tertiary);box-shadow:inset 0 1px 3px #0000001a;display:none;height:5px;overflow:hidden}.usage-bar,.usage-fill{border-radius:var(--radius-sm)}.usage-fill{background:linear-gradient(90deg,var(--accent) 0,var(--accent-hover) 100%);box-shadow:0 0 10px #6366f14d;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat-item{border-radius:var(--radius)}.stat-item:hover{border-color:var(--accent);box-shadow:var(--shadow)}.stat-label{font-size:.95rem}.plans-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.plan-card{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;padding:28px;position:relative;transition:all .3s ease}.plan-card:before{background:linear-gradient(90deg,var(--accent) 0,var(--accent-hover) 100%);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.plan-card:hover{border-color:var(--accent);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.plan-card:hover:before{opacity:1}.plan-card.active{background:var(--accent-light);border-color:var(--accent);box-shadow:var(--shadow)}.plan-card.active:before{opacity:1}.plan-card h3{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin-bottom:14px}.plan-price{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;letter-spacing:-.03em;margin-bottom:10px}.plan-limit{font-size:.98rem;margin-bottom:8px}.plan-context{color:var(--text-tertiary);font-size:.9rem;margin-bottom:18px}.plan-description{color:var(--text-secondary);flex:1 1;font-size:.95rem;line-height:1.6;margin-bottom:24px}.btn-plan{align-items:center;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:#fff;display:flex;font-size:1rem;font-weight:700;gap:8px;justify-content:center;padding:14px;transition:all .2s ease;width:100%}.btn-plan:hover:not(:disabled){box-shadow:var(--shadow);transform:translateY(-2px)}.btn-plan:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-plan.current{background:linear-gradient(135deg,var(--success) 0,var(--success-hover) 100%);cursor:default;pointer-events:none}.theme-switcher-container{align-items:center;display:flex;gap:12px}.theme-switcher-label{align-items:center;color:var(--text-tertiary);display:flex;transition:all .2s ease}.theme-switcher-label.active{color:var(--accent);transform:scale(1.1)}.theme-switcher{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:100px;cursor:pointer;height:30px;position:relative;transition:all .3s ease;width:56px}.theme-switcher:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.theme-switcher.light{background:var(--accent);border-color:var(--accent)}.theme-switcher.dark{background:var(--accent-hover);border-color:var(--accent-hover)}.theme-switcher-toggle{background:#fff;border-radius:50%;box-shadow:var(--shadow);height:20px;left:3px;position:absolute;top:3px;transition:all .3s cubic-bezier(.4,0,.2,1);width:20px}.theme-switcher.dark .theme-switcher-toggle{background:var(--bg-primary);transform:translateX(26px)}@media (max-width:768px){.profile-content{padding:24px 16px}.profile-header{padding:18px 20px}.profile-header h1{font-size:1.15rem}.plans-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.card-header{flex-wrap:wrap;gap:12px;padding:20px}.card-header h2{font-size:1.2rem}.card-body{padding:20px}.theme-switcher-container{justify-content:center}.stat-value{font-size:2rem}.plan-card{padding:24px}.usage-bar{display:none}}.lawyer-request-block{border:1px solid var(--border-color);border-radius:8px;margin-bottom:12px;overflow:hidden;transition:all .2s ease}.lawyer-request-block:hover{box-shadow:0 2px 8px #0000001a}.lawyer-request-header{align-items:center;background:var(--bg-hover);cursor:pointer;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.lawyer-request-header:hover{background:var(--bg-tertiary)}.request-info{gap:12px}.request-number{color:var(--text-primary);font-weight:600}.request-status-badge{border-radius:12px;font-size:.8rem;font-weight:500;padding:4px 10px}.status-assigned{background:#3b82f61a;color:#3b82f6}.status-in_progress{background:#f59e0b1a;color:#f59e0b}.status-completed{background:#10b9811a;color:#10b981}.unread-count{align-items:center;color:var(--text-secondary);display:flex;gap:8px}.unread-count .badge{background:var(--primary-color);border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:2px 8px}.lawyer-messages-list{background:var(--bg-primary);border-top:1px solid var(--border-color);padding:16px}.lawyer-msg{border:1px solid var(--border-color);border-radius:8px;margin-bottom:12px;padding:12px}.lawyer-msg.from-lawyer{background:var(--bg-secondary);border-left:3px solid var(--primary-color)}.lawyer-msg.from-me{background:var(--bg-hover);border-left:3px solid #10b981}.msg-header{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:8px}.msg-author{color:var(--primary-color);font-weight:600}.lawyer-msg.from-me .msg-author{color:#10b981}.msg-time{color:var(--text-secondary);font-size:.8rem}.msg-text{color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.reply-form{border-top:1px solid var(--border-color);margin-top:16px;padding-top:16px}.reply-form textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.9rem;margin-bottom:8px;min-height:80px;padding:12px;resize:vertical;transition:all .2s ease;width:100%}.reply-form textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a;outline:none}.btn-send-reply{align-items:center;background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.btn-send-reply:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.btn-send-reply:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.lawyer-request-header{padding:12px}.request-info{align-items:flex-start;flex-direction:column;gap:6px}.lawyer-messages-list{padding:12px}.lawyer-msg{padding:10px}.reply-form textarea{min-height:60px}}.admin-container{background:var(--bg-primary);display:flex;min-height:100vh}.admin-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);bottom:0;display:flex;flex-direction:column;left:0;position:fixed;top:0;transition:transform .3s ease;width:260px;z-index:100}.admin-sidebar.mobile-hidden{transform:translateX(-100%)}.sidebar-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:12px;padding:20px}.sidebar-header h1{flex:1 1;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.sidebar-close{background:var(--bg-hover);border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:none;padding:8px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 12px}.nav-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-secondary);display:flex;font-size:.95rem;font-weight:500;gap:12px;margin-bottom:4px;padding:12px 16px;text-align:left;transition:all .2s ease;white-space:nowrap;width:100%}.nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-btn.active{background:var(--primary-color);color:#fff;font-weight:600}.sidebar-footer{border-top:1px solid var(--border-color);padding:16px}.btn-back{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:.95rem;gap:8px;padding:12px 16px}.btn-back:hover{background:var(--bg-tertiary);border-color:var(--primary-color);color:var(--text-primary)}.admin-main{flex:1 1;margin-left:260px;min-height:100vh;transition:margin-left .3s ease}.admin-main.sidebar-hidden{margin-left:0}.admin-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-primary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.admin-header h2{font-size:1.5rem;font-weight:700;margin:0}.mobile-nav-toggle{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:none;padding:10px;transition:all .2s ease}.mobile-nav-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.sidebar-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:99}.sidebar-overlay.active{display:block}.admin-nav{display:none}.nav-btn svg{flex-shrink:0}.admin-content{margin:0 auto;max-width:1400px;padding:36px 24px}.admin-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:32px;overflow:hidden;transition:all .2s ease}.admin-card:hover{box-shadow:var(--shadow)}.card-header{background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px 24px}.card-header,.card-header h2{align-items:center;display:flex}.card-header h2{color:var(--text-primary);flex:1 1;font-size:1.4rem;font-weight:700;gap:12px;letter-spacing:-.02em}.card-header h2 svg{color:var(--accent);flex-shrink:0}.data-table{font-size:.95rem}.data-table td,.data-table th{border-bottom:1px solid var(--border-color);padding:18px;text-align:left;vertical-align:middle}.data-table th{background:var(--bg-primary);font-size:.85rem;font-weight:700;letter-spacing:.8px}.data-table tr:hover{background:var(--bg-hover)}.data-table td:last-child{display:flex;gap:10px;white-space:nowrap}.action-btn{border:none;border-radius:var(--radius);box-shadow:0 2px 8px #00000014;font-size:.9rem;font-weight:700;gap:8px;padding:10px 16px;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.action-btn svg{flex-shrink:0}.btn-primary{background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);border:1px solid var(--accent);color:#fff}.btn-primary:hover{box-shadow:0 6px 16px #667eea4d;transform:translateY(-2px)}.btn-primary:active{box-shadow:0 2px 8px #667eea33;transform:translateY(0)}.btn-danger{background:linear-gradient(135deg,var(--danger) 0,var(--danger-hover) 100%);border:1px solid var(--danger);color:#fff}.btn-danger:hover{box-shadow:0 6px 16px #ef44444d;transform:translateY(-2px)}.btn-danger:active{box-shadow:0 2px 8px #ef444433;transform:translateY(0)}.btn-success{background:linear-gradient(135deg,var(--success) 0,var(--success-hover) 100%);border:1px solid var(--success);box-shadow:0 2px 8px #10b98133;color:#fff}.btn-success:hover{box-shadow:0 6px 16px #10b9814d;transform:translateY(-2px)}.btn-success:active{box-shadow:0 2px 8px #10b98133;transform:translateY(0)}.btn-success:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.system-prompt-form{padding:24px}.form-group{margin-bottom:24px;padding:0 20px}.form-group label{color:var(--text-primary);display:block;font-size:1rem;font-weight:600;margin-bottom:10px}.form-group textarea{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:.95rem;line-height:1.6;min-height:140px;padding:14px;resize:vertical;transition:all .2s ease;width:100%}.system-prompt-form>.form-group:first-child textarea{min-height:400px}.form-group textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.form-actions{display:flex;gap:12px}.modal-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009}.modal{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-height:85vh;max-width:540px;overflow-y:auto;padding:28px;width:90%}.modal.user-details-modal{max-width:600px}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal h3{font-size:1.4rem;font-weight:700;letter-spacing:-.02em}.modal .form-group,.modal h3{margin-bottom:20px}.modal .form-group label{color:var(--text-primary);display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.modal .form-group input,.modal .form-group textarea{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:.95rem;font-weight:500;padding:12px 14px;transition:all .2s ease;width:100%}.modal .form-group input:focus,.modal .form-group textarea:focus{background:var(--bg-primary);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.modal .form-actions{display:flex;gap:12px;margin-top:24px}.messages-list{border:1px solid var(--border-color);border-radius:var(--radius);max-height:420px}.message-item{border-bottom:1px solid var(--border-color)}.message-item:last-child{border-bottom:none}.message-role{color:var(--accent);font-size:.9rem;font-weight:700}.message-content{font-size:.95rem}.message-time{font-weight:500;margin-top:10px}@media (max-width:768px){.admin-header{padding:18px 20px}.admin-header h1{font-size:1.15rem}.mobile-nav-toggle{display:flex}.admin-nav{background:var(--bg-secondary);border-top:1px solid var(--border-color);box-shadow:var(--shadow-lg);flex-direction:column;gap:0;left:0;max-height:0;overflow:hidden;position:absolute;right:0;top:100%;transition:max-height .3s ease;z-index:100}.admin-nav.mobile-open{border-bottom:1px solid var(--border-color);max-height:400px}.nav-btn{border:none;border-bottom:1px solid var(--border-color);border-radius:0;font-size:1rem;justify-content:flex-start;padding:16px 20px;width:100%}.nav-btn:last-child{border-bottom:none}.admin-content{padding:20px 16px}.stats-grid{gap:16px;grid-template-columns:1fr 1fr}.stat-card,.stats-grid{padding:20px}.stat-value{font-size:2rem}.modal{padding:24px;width:95%}.user-stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.user-stats-grid .stat-card{padding:16px}.user-stats-grid .stat-value{font-size:1.6rem}.user-stats-grid .stat-label{font-size:.8rem}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{border:none;display:block;min-width:100%}.data-table thead{display:none}.data-table tbody{display:block}.data-table tr{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-sm);display:block;margin-bottom:16px;padding:16px}.data-table tr:hover{background:var(--bg-secondary);box-shadow:var(--shadow)}.data-table td{align-items:flex-start;border:none;display:flex;gap:12px;justify-content:space-between;min-height:auto;padding:10px 0}.data-table td:before{color:var(--text-secondary);content:attr(data-label);flex-shrink:0;font-size:.8rem;font-weight:700;letter-spacing:.5px;min-width:100px;padding-top:2px;text-transform:uppercase}.data-table td:last-child{align-items:stretch;border-top:1px solid var(--border-color);gap:8px;margin-top:8px;padding-top:12px}.data-table td:last-child:before{display:none}.data-table .action-btn{font-size:.9rem;justify-content:center;margin:0;padding:12px 16px;width:100%}.modal .form-actions{flex-direction:column}.modal .form-actions button{width:100%}.system-prompt-form{padding:20px}.form-actions{flex-direction:column}.form-actions button{width:100%}}.floating-add-btn{align-items:center;background:linear-gradient(135deg,var(--accent) 0,#667eea 100%);border:none;border-radius:50%;bottom:32px;box-shadow:0 8px 24px #667eea66;color:#fff;cursor:pointer;display:flex;height:64px;justify-content:center;position:fixed;right:32px;transition:all .3s cubic-bezier(.4,0,.2,1);width:64px;z-index:100}.floating-add-btn:hover{background:linear-gradient(135deg,#667eea 0,var(--accent) 100%);box-shadow:0 12px 32px #667eea80;transform:translateY(-4px) scale(1.05)}.floating-add-btn:active{box-shadow:0 8px 24px #667eea66;transform:translateY(-2px) scale(1.02)}.floating-add-btn svg{stroke-width:2.5;height:28px;width:28px}@media (max-width:768px){.floating-add-btn{bottom:24px;height:56px;right:24px;width:56px}.floating-add-btn svg{height:24px;width:24px}}.logo-preview-container{background:var(--bg-primary);border:2px dashed var(--border-color);border-radius:var(--radius);min-height:200px}.logo-preview{border-radius:var(--radius-sm)}.logo-placeholder{color:var(--text-tertiary);text-align:center}.logo-placeholder p{font-size:.9rem;font-weight:500}.filters-section{animation:slideDown .3s ease-out;background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-primary) 100%);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:16px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-box{margin-bottom:16px}.search-box svg{color:var(--accent);z-index:1}.search-input{border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000000a;font-weight:500;padding:14px 48px;transition:all .3s cubic-bezier(.4,0,.2,1)}.search-input:hover{border-color:var(--accent);box-shadow:0 4px 12px #667eea1a}.search-input:focus{background:var(--bg-primary);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-light),0 4px 16px #667eea26;transform:translateY(-1px)}.search-input::placeholder{color:var(--text-tertiary);font-weight:400}.clear-search{border-radius:var(--radius);padding:6px;z-index:1}.clear-search:hover{transform:translateY(-50%) scale(1.1)}.clear-search:active{transform:translateY(-50%) scale(.95)}.filters-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:14px}.filter-group{animation:fadeIn .4s ease-out;gap:6px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.filter-group label{font-size:.75rem;font-weight:700;letter-spacing:.5px;padding-left:4px;text-transform:uppercase}.filter-group label svg{color:var(--accent);flex-shrink:0}.filter-input,.filter-select{border-radius:var(--radius);box-shadow:0 1px 4px #0000000a;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 14px}.filter-input:hover,.filter-select:hover{border-color:var(--accent);box-shadow:0 2px 8px #667eea1a}.filter-input:focus,.filter-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);transform:translateY(-1px)}.filter-input[type=date]{cursor:text}.filters-actions{gap:10px;padding-top:4px}.filters-actions .btn-secondary{align-items:center;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius);box-shadow:0 1px 4px #0000000a;color:var(--text-secondary);display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 18px;transition:all .2s ease}.filters-actions .btn-secondary:hover{background:var(--bg-hover);border-color:var(--accent);box-shadow:0 4px 12px #00000014;color:var(--text-primary);transform:translateY(-1px)}.filters-actions .btn-secondary:active{box-shadow:0 1px 4px #0000000a;transform:translateY(0)}@media (max-width:1024px){.filters-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.filters-section{padding:14px}.search-input{font-size:.9rem;padding:12px 44px}.filters-grid{gap:10px;grid-template-columns:1fr}.filter-group label{font-size:.7rem}.filter-input,.filter-select{font-size:.85rem;padding:10px 12px}.filters-actions{flex-direction:column;padding-top:6px}.filters-actions button{justify-content:center;width:100%}}.plan-badge{position:relative}@media (max-width:768px){.data-table .plan-info,.data-table .requests-info{width:100%}.plan-badge,.requests-status{font-size:.7rem;padding:3px 8px}.plan-limit,.requests-count{font-size:.85rem}.plan-details{align-items:center;flex-direction:row;justify-content:center}.plan-badge{right:0;top:0}.plan-limit{margin:0}}.role-badge{align-items:center;border-radius:var(--radius);display:inline-flex;font-size:.75rem;font-weight:700;letter-spacing:.5px;margin-left:12px;padding:4px 12px;text-transform:uppercase;vertical-align:middle}.role-admin{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b4d}.role-manager{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 8px #3b82f64d}.role-lawyer{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}@media (max-width:768px){.role-badge{font-size:.65rem;margin-left:8px;padding:3px 8px}}.requests-filters{display:flex;flex-wrap:wrap;gap:8px}.filter-btn{border-radius:6px;font-size:13px;padding:6px 14px}.requests-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:20px}.request-card{border-radius:10px;padding:16px}.request-card-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.request-id{font-size:15px}.request-status{border-radius:10px;font-size:12px;gap:5px;padding:3px 8px}.request-card-body{display:flex;flex-direction:column;gap:8px}.request-info{font-size:13px}.request-info.lawyer{color:var(--primary-color);font-weight:500}.request-conversation{align-items:center;border-top:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:12px;gap:6px;margin-top:10px;padding-top:10px}.request-conversation svg{flex-shrink:0}.messages-count{color:var(--text-tertiary);margin-left:auto}.assigned-lawyer{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px}@media (max-width:768px){.info-grid,.requests-grid{grid-template-columns:1fr}.status-buttons{flex-direction:column}.status-buttons button{width:100%}}@media (max-width:1024px){.admin-sidebar{transform:translateX(-100%)}.admin-sidebar.mobile-open{transform:translateX(0)}.sidebar-close{display:block}.admin-main{margin-left:0}.mobile-nav-toggle{display:flex}}@media (max-width:768px){.admin-header{padding:16px}.admin-header h2{font-size:1.25rem}.admin-content,.sidebar-header{padding:16px}.sidebar-nav{padding:12px 8px}.nav-btn{font-size:.9rem;padding:10px 12px}}.role-badge+.role-badge{margin-left:6px}.lawyer-stats{grid-gap:16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px;padding:20px}.lawyer-stats .stat-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:20px;text-align:center;transition:all .2s ease}.lawyer-stats .stat-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.lawyer-stats .stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--primary-color) 0,#667eea 100%);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;margin-bottom:8px}.lawyer-stats .stat-label{color:var(--text-secondary);font-size:.85rem;font-weight:600}@media (max-width:768px){.lawyer-stats{gap:12px;grid-template-columns:repeat(2,1fr);padding:16px}.lawyer-stats .stat-value{font-size:1.5rem}.lawyer-stats .stat-label{font-size:.75rem}}.my-requests-tab{padding:20px}.search-input{padding:12px 40px 12px 16px}.message-form,.note-form{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.message-textarea,.note-textarea{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.95rem;max-width:100%;min-height:100px;padding:12px;resize:vertical;transition:all .2s ease;width:100%}.message-textarea:focus,.note-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a;outline:none}.btn-add-note,.btn-send-message{align-items:center;align-self:flex-end;background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.btn-add-note:hover:not(:disabled),.btn-send-message:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.btn-add-note:disabled,.btn-send-message:disabled{cursor:not-allowed;opacity:.5}.messages-list,.notes-list{display:flex;flex-direction:column;gap:12px}.message-item{background:var(--bg-primary);padding:16px;transition:all .2s ease}.message-item.from-lawyer{border-left:4px solid var(--primary-color)}.message-item.from-client{background:#10b9810d;border-left:4px solid #10b981}.message-item.read{opacity:.85}.message-item.unread{box-shadow:0 2px 8px #667eea26}.message-header{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:8px}.message-author{align-items:center;color:var(--primary-color);display:flex;font-weight:600;gap:4px}.message-item.from-client .message-author{color:#10b981}.message-meta{gap:8px}.status-read{background:#10b9811a;color:#10b981;font-weight:600}.status-read,.status-unread{border-radius:4px;font-size:.75rem;padding:2px 8px}.status-unread{background:var(--bg-hover);color:var(--text-tertiary)}.message-time{font-size:.8rem}@media (max-width:768px){.my-requests-tab{padding:16px}.requests-grid{grid-template-columns:1fr}.request-badges{align-items:flex-start;flex-direction:column;gap:4px}.info-grid{grid-template-columns:1fr}.status-buttons{flex-direction:column}.btn-status{width:100%}}.requests-tab{padding:20px}.search-bar{align-items:center;display:flex;gap:12px;margin-bottom:16px;position:relative}.search-bar svg{color:var(--text-secondary);left:16px;pointer-events:none;position:absolute}.clear-search{font-size:18px;height:24px;line-height:1;width:24px}.filters-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.filter-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.filter-btn:hover{background:var(--bg-hover)}.filter-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.empty-state svg{margin-bottom:20px;opacity:.3}.empty-state h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:8px}.empty-state p{font-size:1rem}.requests-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.request-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;padding:20px;transition:all .2s}.request-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.request-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.request-id{color:var(--text-primary);font-size:16px;font-weight:600}.request-badges{align-items:center;display:flex;gap:8px}.request-status{align-items:center;background:var(--bg-primary);border-radius:12px;display:flex;font-size:13px;gap:6px;padding:4px 10px}.request-body{display:flex;flex-direction:column;gap:10px}.request-info{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:8px}.request-info svg{flex-shrink:0;opacity:.7}.request-info.lawyer-assigned{color:var(--primary-color);font-weight:500}.request-footer{align-items:center;border-top:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:13px;gap:8px;margin-top:12px;padding-top:12px}.request-footer svg{flex-shrink:0}.request-details-page{display:flex;flex-direction:column;height:100%}.request-details-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;gap:20px;padding:20px}.btn-back-to-list{align-items:center;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease}.btn-back-to-list:hover{background:var(--bg-tertiary);border-color:var(--primary-color);color:var(--primary-color)}.request-details-header h2{color:var(--text-primary);font-size:1.5rem;margin:0}.request-details-content{flex:1 1;overflow-y:auto;padding:20px}.details-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:32px;padding:20px}.details-section h3{color:var(--text-primary);font-size:18px;margin-bottom:16px}.lawyer-assignment{display:flex;flex-direction:column;gap:12px}.lawyer-select{background:var(--bg-primary);border:2px solid var(--border-color);padding:12px;transition:all .2s ease}.lawyer-select:focus{box-shadow:0 0 0 3px #667eea1a}.assigned-lawyer{background:#10b9811a;border-left:4px solid #10b981;border-radius:4px;color:var(--text-primary);font-size:14px;padding:12px}.status-buttons{gap:10px}.btn-status{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-status:hover:not(:disabled){background:var(--primary-color);border-color:var(--primary-color);color:#fff}.btn-status.btn-danger:hover:not(:disabled){background:var(--danger);border-color:var(--danger)}.btn-status:disabled{cursor:not-allowed;opacity:.5}.chat-history{display:flex;flex-direction:column;gap:16px;max-height:400px}.chat-message{background:var(--bg-primary);border-left:3px solid var(--primary-color);border-radius:8px;padding:16px}.chat-message.user{border-left-color:var(--primary-color)}.chat-message.assistant{border-left-color:#8b5cf6}.note-form{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.note-textarea{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:.95rem;padding:12px;resize:vertical;transition:all .2s ease;width:100%}.note-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a;outline:none}.btn-add-note{align-self:flex-end;background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s ease}.btn-add-note:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.btn-add-note:disabled{cursor:not-allowed;opacity:.5}.notes-list{display:flex;flex-direction:column;gap:12px}.note-item{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:16px;position:relative;transition:all .2s ease}.note-item:hover{box-shadow:0 2px 8px #0000001a}.note-header{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:8px}.note-author{color:var(--primary-color);font-weight:600}.note-time{color:var(--text-tertiary);font-size:.8rem}.note-content{color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.btn-delete-note{background:var(--bg-hover);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;font-size:18px;height:24px;line-height:1;opacity:0;position:absolute;right:8px;top:8px;transition:all .2s ease;width:24px}.note-item:hover .btn-delete-note{opacity:1}.btn-delete-note:hover{background:var(--danger);color:#fff}@media (max-width:768px){.requests-tab{padding:16px}.requests-grid{grid-template-columns:1fr}.request-badges{align-items:flex-start;flex-direction:column;gap:4px}.info-grid{grid-template-columns:1fr}.status-buttons{flex-direction:column}.btn-status{width:100%}}.status-icon{height:14px;width:14px}.status-icon.new{color:#f59e0b}.status-icon.assigned{color:#3b82f6}.status-icon.in-progress{color:#8b5cf6}.status-icon.completed{color:#10b981}.status-icon.cancelled{color:#ef4444}.priority-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;padding:4px 8px;white-space:nowrap}.priority-urgent{background:#ef44441a;border:1px solid #ef44444d;color:#ef4444}.priority-high{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#f59e0b}.priority-normal{background:#10b9811a;border:1px solid #10b9814d;color:#10b981}.request-modal{max-width:900px}.section{margin-bottom:24px}.section:last-child{margin-bottom:0}.section h3{color:var(--text-primary);font-size:16px;margin-bottom:12px}.info-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.info-item label{font-size:11px}.info-item span{font-size:14px}.assigned-lawyer{align-items:center;display:flex;gap:10px}.assigned-lawyer svg{color:var(--primary-color)}.lawyer-name{color:var(--text-primary);font-weight:600;margin-bottom:2px}.lawyer-email{color:var(--text-secondary);font-size:12px}.lawyer-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:10px;width:100%}.lawyer-select:focus{border-color:var(--primary-color);outline:none}.status-buttons{display:flex;flex-wrap:wrap;gap:8px}.status-buttons button{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.status-buttons button:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.chat-history{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;max-height:350px;overflow-y:auto;padding:12px}.chat-message{border-bottom:1px solid var(--border-color);margin-bottom:16px;padding-bottom:16px}.chat-message:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.chat-message.user .message-role{color:var(--primary-color)}.chat-message.assistant .message-role{color:#8b5cf6}.message-role{font-size:11px;letter-spacing:.5px;margin-bottom:6px}.message-content{line-height:1.5}.message-time{color:var(--text-tertiary);font-size:10px;margin-top:6px}@media (max-width:768px){.info-grid{grid-template-columns:1fr}.status-buttons{flex-direction:column}.status-buttons button{width:100%}}.chat-section{display:flex;flex-direction:column;height:600px;max-height:70vh}.info-block{background:#667eea1a;border-left:4px solid var(--primary-color);border-radius:4px;color:var(--text-secondary);font-size:.9rem;margin-bottom:16px;padding:12px}.chat-messages-container{background:var(--bg-primary);border-radius:8px;margin-bottom:16px;overflow:hidden}.chat-empty-state,.chat-messages-container{display:flex;flex:1 1;flex-direction:column}.chat-empty-state{align-items:center;color:var(--text-secondary);gap:12px;justify-content:center}.chat-empty-state svg{opacity:.3}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:var(--bg-secondary)}.chat-messages::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.chat-message{display:flex;margin-bottom:4px}.chat-message.lawyer{justify-content:flex-end}.chat-message.client{justify-content:flex-start}.message-bubble{border-radius:16px;max-width:70%;padding:12px 16px;position:relative}.chat-message.lawyer .message-bubble{background:var(--primary-color);border-bottom-right-radius:4px;color:#fff}.chat-message.client .message-bubble{background:var(--bg-secondary);border:1px solid var(--border-color);border-bottom-left-radius:4px;color:var(--text-primary)}.message-text{word-wrap:break-word;line-height:1.5;margin-bottom:4px;white-space:pre-wrap}.message-meta{align-items:center;display:flex;font-size:.75rem;gap:6px;justify-content:flex-end;margin-top:4px}.chat-message.lawyer .message-meta{color:#fffc}.chat-message.client .message-meta{color:var(--text-tertiary)}.message-status{font-size:.7rem}.message-status.read{color:#ffffffe6}.message-status.unread{color:#fff9}.chat-input-form{margin-top:auto}.chat-input-container{align-items:flex-end;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:24px;box-shadow:0 2px 8px #0000000d;display:flex;gap:0;overflow:hidden;transition:all .2s ease}.chat-input-container:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.chat-textarea{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:.95rem;line-height:1.5;max-height:150px;min-height:24px;outline:none;overflow-y:auto;padding:12px 16px;resize:none}.chat-textarea::placeholder{color:var(--text-tertiary)}.chat-textarea::-webkit-scrollbar{width:4px}.chat-textarea::-webkit-scrollbar-track{background:#0000}.chat-textarea::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.chat-send-btn{align-items:center;align-self:flex-end;background:#0000;border:none;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:12px 16px;transition:all .2s ease}.chat-send-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--primary-color)}.chat-send-btn:active:not(:disabled){transform:scale(.95)}.chat-send-btn:disabled{cursor:not-allowed;opacity:.4}@media (max-width:768px){.chat-section{height:500px}.message-bubble{max-width:85%}.chat-input-container{border-radius:20px}}.users-tab{padding:20px}.users-header{justify-content:space-between;margin-bottom:24px}.users-header,.users-header h2{align-items:center;display:flex}.users-header h2{color:var(--text-primary);font-size:1.5rem;gap:12px;margin:0}.filters-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:24px}.search-box{margin-bottom:20px;position:relative}.search-box svg{color:var(--text-secondary);left:16px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-input{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.95rem;padding:12px 40px 12px 48px;transition:all .2s ease;width:100%}.search-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a;outline:none}.clear-search{align-items:center;background:var(--bg-hover);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease;width:28px}.clear-search:hover{background:var(--danger);color:#fff}.filters-grid{margin-bottom:16px}.filter-input,.filter-select{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;padding:10px 12px;transition:all .2s ease}.filter-input:focus,.filter-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a;outline:none}.filters-actions{display:flex;justify-content:flex-end}.loading-state{padding:60px 20px}.table-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.empty-cell{color:var(--text-secondary);font-style:italic;padding:60px 20px!important;text-align:center}.plan-selector{margin-bottom:4px}.plan-select{border:1px solid var(--border-color);border-radius:6px;font-size:13px;padding:6px 10px}.plan-select:focus{border-color:var(--primary-color)}.plan-details{gap:4px}.plan-badge{border-radius:6px;display:inline-block;font-size:12px;font-weight:600}.plan-badge.plan-basic{background:#6b72801a;color:#6b7280}.plan-badge.plan-standard{background:#3b82f61a;color:#3b82f6}.plan-badge.plan-pro{background:#8b5cf61a;color:#8b5cf6}.plan-badge.plan-premium{background:#f59e0b1a;color:#f59e0b}.plan-limit{color:var(--text-tertiary);font-size:12px}.balance-info{display:flex;flex-direction:column;gap:6px;min-width:120px}.balance-count{font-size:14px;font-weight:600}.balance-status{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.balance-status.good,.balance-status.unlimited{color:#10b981}.balance-status.moderate{color:#3b82f6}.balance-status.warning{color:#f59e0b}.balance-status.exceeded{color:#ef4444}.balance-progress{background:var(--bg-tertiary);border-radius:2px;height:4px;overflow:hidden;width:100%}.balance-bar{height:100%;transition:width .3s ease}.balance-bar.unlimited{background:#10b981;width:100%}.balance-bar.good{background:#10b981}.balance-bar.moderate{background:#3b82f6}.balance-bar.warning{background:#f59e0b}.balance-bar.exceeded{background:#ef4444}.action-btn{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}.action-btn:hover:not(:disabled){background:var(--bg-hover);transform:translateY(-1px)}.action-btn:disabled{cursor:not-allowed;opacity:.5}.action-btn.btn-primary{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.action-btn.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.action-btn.btn-success{background:#10b981;border-color:#10b981;color:#fff}.action-btn.btn-success:hover:not(:disabled){background:#059669}.action-btn.btn-secondary{background:var(--bg-secondary)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:var(--bg-primary);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;padding:24px}.modal-header,.modal-header h2{align-items:center;display:flex}.modal-header h2{color:var(--text-primary);font-size:1.5rem;gap:12px;margin:0}.close-btn{background:var(--bg-hover);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;font-size:24px;height:32px;line-height:1;transition:all .2s ease;width:32px}.close-btn:hover{background:var(--danger);color:#fff}.modal-body{padding:24px}.user-info-section,.user-stats-section{margin-bottom:32px}.user-info-section:last-child,.user-stats-section:last-child{margin-bottom:0}.user-info-section h3,.user-stats-section h3{color:var(--text-primary);font-size:18px;margin-bottom:16px}.info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{color:var(--text-secondary);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.info-item span{color:var(--text-primary);font-size:15px;font-weight:500}.stats-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{background:var(--bg-secondary);border-radius:12px;padding:20px}.stat-card:hover{box-shadow:0 4px 12px #0000001a}.stat-card svg{color:var(--primary-color);margin-bottom:12px}.stat-value{font-size:2rem;margin-bottom:4px}.stat-label{font-size:13px}@media (max-width:768px){.users-tab{padding:16px}.users-header{align-items:flex-start;flex-direction:column;gap:12px}.filters-grid{grid-template-columns:1fr}.data-table{font-size:14px}.data-table thead{display:none}.data-table tr{border:1px solid var(--border-color);border-radius:8px;display:block;margin-bottom:16px;overflow:hidden}.data-table td{border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 16px}.data-table td:last-child{border-bottom:none}.data-table td:before{color:var(--text-secondary);content:attr(data-label);font-weight:600}.btn-text{display:none}.modal-content{max-height:95vh}.info-grid,.stats-grid{grid-template-columns:1fr}}.plan-info{display:flex;flex-direction:column;gap:8px}.plan-selector{width:100%}.plan-select{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 12px;transition:all .2s ease;width:100%}.plan-select:hover{border-color:var(--accent);box-shadow:0 2px 8px #667eea1a}.plan-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.plan-details{display:flex;flex-direction:column;gap:6px}.plan-badge{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.plan-badge.plan-basic{background:linear-gradient(135deg,#94a3b8,#64748b);color:#fff}.plan-badge.plan-standard{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.plan-badge.plan-pro{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.plan-badge.plan-premium{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.plan-limit{color:var(--text-secondary);font-size:.8rem;font-weight:500}.requests-info{display:flex;flex-direction:column;gap:6px;min-width:120px}.requests-count{color:var(--text-primary);font-size:.9rem;font-weight:700}.requests-status{border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;letter-spacing:.3px;padding:3px 8px;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.requests-status.good,.requests-status.unlimited{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.requests-status.moderate{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.requests-status.warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.requests-status.exceeded{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.requests-progress{background:var(--bg-tertiary);border-radius:3px;height:6px;overflow:hidden;width:100%}.requests-bar{border-radius:3px;height:100%;transition:width .3s ease}.requests-bar.unlimited{width:100%}.requests-bar.good,.requests-bar.unlimited{background:linear-gradient(90deg,#10b981,#059669)}.requests-bar.moderate{background:linear-gradient(90deg,#3b82f6,#2563eb)}.requests-bar.warning{background:linear-gradient(90deg,#f59e0b,#d97706)}.requests-bar.exceeded{background:linear-gradient(90deg,#ef4444,#dc2626)}.user-details-modal{max-width:600px}.user-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}.user-stats-grid .stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius);padding:20px;text-align:center;transition:all .2s ease}.user-stats-grid .stat-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.user-stats-grid .stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;letter-spacing:-.03em;line-height:1;margin-bottom:8px}.user-stats-grid .stat-label{color:var(--text-secondary);font-size:.9rem;font-weight:600}@media (max-width:768px){.data-table .plan-info,.data-table .requests-info{width:100%}.plan-badge,.requests-status{font-size:.7rem;padding:3px 8px}.plan-limit,.requests-count{font-size:.85rem}.user-stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.user-stats-grid .stat-card{padding:16px}.user-stats-grid .stat-value{font-size:1.6rem}.user-stats-grid .stat-label{font-size:.8rem}.empty-state-message{padding:40px 16px}.empty-state-message p{font-size:14px}}.stats-tab{display:flex;flex-direction:column;gap:24px;padding:20px}.stats-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.stats-card-header{border-bottom:1px solid var(--border-color);padding:20px}.stats-card-header h2{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;gap:12px;margin:0}.stats-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:20px}.stat-item{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;justify-content:center;padding:24px;text-align:center;transition:all .2s ease}.stat-item:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-item.highlight{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:var(--primary-color)}.stat-icon{color:var(--primary-color);margin-bottom:12px;opacity:.8}.stat-value{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:8px}.stat-item.highlight .stat-value{color:var(--primary-color)}.stat-label{font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.empty-state,.loading-state{color:var(--text-secondary);font-size:16px;padding:80px 20px;text-align:center}.table-container{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table thead{background:var(--bg-tertiary)}.data-table th{border-bottom:2px solid var(--border-color);color:var(--text-secondary);font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.data-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:16px}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}@media (max-width:768px){.stats-grid,.stats-tab{padding:16px}.stats-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-item{padding:16px}.stat-value{font-size:2rem}.stat-label{font-size:12px}.data-table{font-size:14px}.data-table thead{display:none}.data-table tr{border:1px solid var(--border-color);border-radius:8px;display:block;margin-bottom:16px;overflow:hidden}.data-table td{border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 16px}.data-table td:last-child{border-bottom:none}.data-table td:before{color:var(--text-secondary);content:attr(data-label);font-weight:600}}.stats-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding:24px}.stat-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius);padding:28px;text-align:center;transition:all .2s ease}.stat-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);-webkit-background-clip:text;background-clip:text;font-size:2.8rem;font-weight:800;letter-spacing:-.03em;line-height:1;margin-bottom:10px}.stat-label{color:var(--text-secondary);font-size:.8rem;font-weight:600}@media (max-width:768px){.stats-grid{gap:16px;grid-template-columns:1fr 1fr}.stat-card,.stats-grid{padding:20px}.stat-value{font-size:2rem}}.checkbox-label{border-radius:4px}.checkbox-label:hover{background-color:var(--bg-secondary)}.checkbox-label span{-webkit-user-select:none;user-select:none}.role-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:500;margin-right:4px;padding:4px 8px}.role-manager{background-color:#3b82f6;color:#fff}.role-lawyer{background-color:#10b981;color:#fff}.role-admin{background-color:#ef4444;color:#fff}.roles-checkboxes{display:flex;flex-direction:column;gap:12px;padding:8px 0}.checkbox-label{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:8px;transition:background-color .2s}.checkbox-label:hover{background-color:#6366f10d}.checkbox-label input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:18px;width:18px}.checkbox-label span{color:var(--text-primary);font-size:14px}.admin-emails-info{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:16px}.admin-emails-info .info-title{font-weight:500;margin:0 0 8px}.admin-emails-info .info-list{margin:0;padding-left:20px}.admin-emails-info .info-list li{margin-bottom:4px}.admin-emails-info .info-list li:last-child{margin-bottom:0}@media (max-width:768px){.admin-emails-info{margin-bottom:16px;padding:12px}.admin-emails-info .info-title{font-size:14px}.admin-emails-info .info-list{font-size:13px;padding-left:16px}}.email-form-group{align-items:flex-end;display:flex;gap:10px}.empty-state-message p{color:var(--text-primary);margin:0 0 10px}.empty-state-hint{color:var(--text-secondary)!important;font-size:14px!important;margin:0!important}@media (max-width:768px){.email-form-group{flex-direction:column;gap:12px}.email-form-group button,.email-form-group input{width:100%}.empty-state-message{padding:40px 16px}.empty-state-message p{font-size:14px}.empty-state-hint{font-size:13px!important}.data-table td[data-label=Email]{color:var(--text-primary);font-weight:600;word-break:break-all}.data-table td[data-label="Дата добавления"]{font-size:.85rem}.btn-text{display:none}}@media (max-width:480px){.admin-emails-info{padding:12px}.admin-emails-info .info-title{font-size:13px}.admin-emails-info .info-list{font-size:12px;padding-left:16px}.data-table td[data-label=Email]{font-size:.9rem}}.messages-list{background-color:var(--bg-secondary);border-radius:8px;margin-bottom:16px;max-height:500px;overflow-y:auto;padding:16px}.message-item{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:12px;padding:12px}.message-item:last-child{margin-bottom:0}.message-role{color:var(--primary-color);font-size:12px;font-weight:600;margin-bottom:8px;text-transform:uppercase}.message-content{word-wrap:break-word;color:var(--text-primary);font-size:14px;line-height:1.6;margin-bottom:8px;white-space:pre-wrap}.message-time{color:var(--text-secondary);font-size:11px}@media (max-width:768px){.messages-list{max-height:400px;padding:12px}.message-item{padding:10px}.message-content{font-size:13px}}.filters-section{border-bottom:1px solid var(--border-color);padding:20px}.filters-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:16px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;font-weight:500;gap:6px}.filter-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:8px 12px}.filter-input:focus{border-color:var(--primary-color);outline:none}@media (max-width:768px){.filters-section{padding:16px}.filters-grid{gap:12px;grid-template-columns:1fr}.filter-group label{font-size:12px}.filter-input{font-size:14px;padding:10px}}@media (max-width:480px){.filters-section{padding:12px}.filters-grid{gap:10px}}.empty-state-message{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:60px 20px;text-align:center}.empty-state-message p{color:var(--text-secondary);font-size:16px;margin:0}.btn-text{display:inline}@media (max-width:768px){.empty-state-message{padding:40px 16px}.empty-state-message p{font-size:14px}.btn-text{display:none}}.plan-prompt-modal{max-width:800px}.monospace-textarea{font-family:monospace;font-size:.9rem;line-height:1.5}.info-box{border-radius:4px;margin-bottom:20px;padding:12px}.info-box.info-blue{background-color:#dbeafe;border-left:4px solid #3b82f6}.info-box.info-yellow{background-color:#fef3c7;border-left:4px solid #f59e0b}.info-box .info-title{font-size:13px;font-weight:500;margin:0 0 8px}.info-box.info-blue .info-title{color:#1e40af}.info-box.info-yellow .info-title{color:#92400e}.info-box .info-list{font-size:12px;line-height:1.6;margin:0;padding-left:20px}.info-box.info-blue .info-list{color:#1e3a8a}.info-box.info-yellow .info-list{color:#92400e}.info-box .info-list li{margin-bottom:4px}.info-box .info-list li:last-child{margin-bottom:0}.warning-box{background-color:#fef3c7;border-left:4px solid #f59e0b;border-radius:4px;margin:0 20px 20px;padding:16px 20px}.warning-box p{color:#92400e;font-size:14px;margin:0}.info-box-blue{background-color:#dbeafe;border-left:4px solid #3b82f6;border-radius:4px;margin:0 20px 20px;padding:16px 20px}.info-box-blue p{color:#1e40af;font-size:14px;margin:0}.prompt-structure-box{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin:0 20px 20px;padding:16px}.structure-title{font-size:16px;margin:0 0 12px}.structure-info{color:var(--text-secondary);font-size:14px;margin:0 0 16px}.structure-layers{display:flex;flex-direction:column;gap:12px}.structure-layer{background-color:var(--bg-primary);border-radius:6px;padding:12px}.structure-layer.editable{border:2px solid #6366f1}.structure-layer.protected{border:2px solid #10b981}.layer-header{align-items:center;display:flex;gap:8px;margin-bottom:4px}.layer-name{font-size:12px;font-weight:600;text-transform:uppercase}.structure-layer.editable .layer-name{color:#6366f1}.structure-layer.protected .layer-name{color:#10b981}.protected-badge{background-color:#10b981;border-radius:4px;color:#fff;font-size:11px;padding:2px 8px}.layer-description{color:var(--text-secondary);font-size:13px;margin:0}.warning-box-yellow{background-color:#fef3c7;border-left:4px solid #f59e0b;border-radius:4px;margin:0 20px 20px;padding:16px 20px}.warning-box-yellow p{color:#92400e;font-size:14px;margin:0}.info-box-blue-prompts{background-color:#dbeafe;border-left:4px solid #3b82f6;border-radius:4px;margin:0 20px 20px;padding:16px 20px}.info-box-blue-prompts p{color:#1e40af;font-size:14px;margin:0}.prompt-badge{border-radius:4px;color:#fff;display:inline-block;font-size:12px;padding:4px 8px}.prompt-badge.custom{background-color:#10b981}.prompt-badge.global{background-color:#6b7280}.logo-preview-container{align-items:center;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:center;margin-bottom:12px;min-height:120px;padding:20px}.logo-preview{max-height:200px;max-width:100%;object-fit:contain}.logo-placeholder{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:12px}.logo-placeholder svg{opacity:.3}.logo-placeholder p{font-size:14px;margin:0}.legal-container{background:var(--bg-primary);color:var(--text-primary);min-height:100vh}.legal-header{background:var(--bg-secondary);border-bottom:1px solid var(--border);box-shadow:0 2px 8px #0000000d;gap:16px;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.btn-back,.legal-header{align-items:center;display:flex}.btn-back{background:none;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;justify-content:center;padding:8px;transition:all .2s ease}.btn-back:hover{background:var(--bg-hover)}.legal-logo{align-items:center;color:var(--accent);display:flex;font-size:1.25rem;font-weight:700;gap:8px}.legal-content{margin:0 auto;max-width:800px;padding:40px 24px}.legal-content h1{color:var(--text-primary);font-size:2rem;font-weight:700;margin-bottom:8px}.legal-date{color:var(--text-secondary);font-size:.9rem}.legal-content section,.legal-date{margin-bottom:32px}.legal-content h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:16px;padding-top:16px}.legal-content p{color:var(--text-secondary);line-height:1.7;margin-bottom:16px}.legal-content ul{list-style:disc;margin-bottom:16px;padding-left:24px}.legal-content li{color:var(--text-secondary);line-height:1.7;margin-bottom:8px}.legal-content strong{color:var(--text-primary);font-weight:600}.legal-content a{color:var(--accent);font-weight:500;text-decoration:none}.legal-content a:hover{text-decoration:underline}@media (max-width:768px){.legal-header{padding:12px 16px}.legal-logo{font-size:1.1rem}.legal-content{padding:24px 16px}.legal-content h1{font-size:1.5rem}.legal-content h2{font-size:1.25rem}.legal-content li,.legal-content p{font-size:.95rem}}:root{--bg-primary:#fff;--bg-secondary:#f7f9fc;--bg-tertiary:#e8eef7;--bg-hover:#f0f4fa;--text-primary:#1a202c;--text-secondary:#64748b;--text-tertiary:#94a3b8;--border-color:#e2e8f0;--accent:#6366f1;--accent-rgb:99,102,241;--accent-hover:#4f46e5;--accent-light:#eef2ff;--danger:#ef4444;--danger-hover:#dc2626;--danger-light:#fee2e2;--error:#ef4444;--success:#10b981;--success-hover:#059669;--success-light:#d1fae5;--warning:#f59e0b;--warning-light:#fef3c7;--shadow-sm:0 1px 2px 0 #0000000d;--shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-xl:20px}[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-hover:#293548;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--border-color:#334155;--accent:#818cf8;--accent-rgb:129,140,248;--accent-hover:#a5b4fc;--accent-light:#312e81;--danger:#f87171;--danger-hover:#fca5a5;--danger-light:#7f1d1d;--error:#f87171;--success:#34d399;--success-hover:#6ee7b7;--success-light:#064e3b;--warning:#fbbf24;--warning-light:#78350f;--shadow-sm:0 1px 2px 0 #0000004d;--shadow:0 4px 6px -1px #0006,0 2px 4px -1px #0000004d;--shadow-lg:0 10px 15px -3px #00000080,0 4px 6px -2px #0006;--shadow-xl:0 20px 25px -5px #0009,0 10px 10px -5px #00000080}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--bg-primary);color:#1a202c;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:background-color .3s ease,color .3s ease}.loading{align-items:center;color:#64748b;color:var(--text-secondary);display:flex;font-size:1.2rem;height:100vh;justify-content:center}button{border:none;cursor:pointer;font-family:inherit;font-weight:500;outline:none;transition:all .2s ease}button:active{transform:scale(.98)}input,textarea{font-family:inherit;outline:none;transition:all .2s ease}a{color:#6366f1;color:var(--accent);transition:color .2s ease}a,a:hover{text-decoration:none}a:hover{color:#4f46e5;color:var(--accent-hover)}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f7f9fc;background:var(--bg-secondary);border-radius:8px;border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb{background:#e2e8f0;background:var(--border-color);border:2px solid #f7f9fc;border:2px solid var(--bg-secondary);border-radius:8px;border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--text-tertiary)}
/*# sourceMappingURL=main.5045e2f2.css.map*/