.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a3a3a,#2d4a4a,#1a3a3a);position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.01) 10px,rgba(255,255,255,.01) 20px);pointer-events:none}.login-container{width:100%;max-width:450px;padding:2rem;position:relative;z-index:1}.login-header{text-align:center;margin-bottom:2rem}.logo-container{display:flex;flex-direction:column;align-items:center;gap:0}.logo-main{font-family:Saira,sans-serif;font-optical-sizing:auto;font-weight:700;font-style:normal;font-variation-settings:"wdth" 100;font-size:3.5rem;line-height:1;margin:0;padding:0;background:linear-gradient(135deg,#5fb3b3,#7dd3d3,#5fb3b3);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1px;position:relative;animation:shimmer 3s ease-in-out infinite}.logo-sub{font-family:Saira,sans-serif;font-optical-sizing:auto;font-weight:300;font-style:normal;font-variation-settings:"wdth" 100;font-size:1.8rem;line-height:1;color:#7dd3d3;text-transform:uppercase;letter-spacing:8px;margin-top:-5px;opacity:.9;animation:fadeInUp .8s ease-out forwards}.logo-main:before{content:"Smart Notary";position:absolute;top:0;left:0;z-index:-1;font-family:Saira,sans-serif;font-weight:700;font-size:3.5rem;background:none;-webkit-text-fill-color:initial;color:#5fb3b3;filter:blur(20px);opacity:.4;animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.01)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:.9;transform:translateY(0)}}@media (max-width: 480px){.logo-main{font-size:2.8rem}.logo-sub{font-size:1.4rem;letter-spacing:6px}}.login-form-container{background:#2a3f3f;border-radius:12px;box-shadow:0 10px 40px #0000004d;overflow:hidden}.login-form{padding:2rem}.form-field{margin-bottom:1.5rem}.form-field label{display:block;margin-bottom:.5rem;color:#a8b2b2;font-size:.9rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.form-field input{width:100%;padding:.875rem;background:#1f3333;border:1px solid #3a5252;border-radius:6px;color:#e0e6e6;font-size:1rem;transition:all .3s ease}.form-field input:focus{outline:none;border-color:#5fb3b3;background:#243a3a;box-shadow:0 0 0 3px #5fb3b31a}.form-field input:disabled{opacity:.6;cursor:not-allowed}.error-message{padding:.875rem;margin-bottom:1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#f87171;font-size:.9rem}.submit-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#5fb3b3,#4a9999);border:none;border-radius:6px;color:#fff;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #5fb3b34d}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #5fb3b366}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:#7d8a8a;font-size:.875rem}@media (max-width: 480px){.login-container{padding:1rem}.login-header h1{font-size:2rem}.login-form{padding:1.5rem}}.dashboard{min-height:100vh;background:linear-gradient(135deg,#1a3a3a,#2d4a4a);padding:2rem}.dashboard-header{margin-bottom:4rem;padding-top:2rem}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.logo-container{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin-bottom:.5rem}.logo-main{font-family:Saira,sans-serif;font-optical-sizing:auto;font-weight:700;font-style:normal;font-variation-settings:"wdth" 100;font-size:2.8rem;line-height:1;margin:0;padding:0;background:linear-gradient(135deg,#5fb3b3,#7dd3d3,#5fb3b3);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1px;animation:shimmer 3s ease-in-out infinite}.logo-sub{font-family:Saira,sans-serif;font-optical-sizing:auto;font-weight:300;font-style:normal;font-variation-settings:"wdth" 100;font-size:1.4rem;line-height:1;color:#7dd3d3;text-transform:uppercase;letter-spacing:6px;margin-top:-3px;opacity:.9}@keyframes shimmer{0%,to{background-position:0% 50%;background-size:200% 100%}50%{background-position:100% 50%;background-size:200% 100%}}.welcome-text{color:#a8b2b2;font-size:1.1rem;margin-top:.5rem}.logout-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#a8b2b2;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:#ff3b301a;border-color:#ff3b30;color:#ff3b30;transform:translateY(-2px)}.dashboard-cards{display:flex;gap:2rem;max-width:1200px;margin:0 auto;justify-content:center;flex-wrap:wrap}.dashboard-card{flex:1;min-width:250px;max-width:350px;background:#2a3f3f;border-radius:16px;padding:2rem 1.5rem;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 30px #0000004d;position:relative;overflow:hidden}.dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,#5fb3b3,transparent);transform:translate(-100%);transition:transform .6s ease}.dashboard-card:hover:before{transform:translate(100%)}.dashboard-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0006}.narrator-card{border-top:4px solid #5fb3b3}.narrator2-card{border-top:4px solid #6a89cc}.narrator2-card .card-icon{color:#6a89cc}.narrator2-card .card-btn{background:linear-gradient(135deg,#6a89cc,#4834d4);box-shadow:0 4px 15px #6a89cc4d}.narrator2-card .card-btn:hover{box-shadow:0 6px 20px #6a89cc66}.admin-card{border-top:4px solid #f59e0b}.ai-card{border-top:4px solid #8b5cf6}.card-icon{margin-bottom:1rem;color:#5fb3b3;display:inline-block}.card-icon svg{width:48px;height:48px}.admin-card .card-icon{color:#f59e0b}.ai-card .card-icon{color:#8b5cf6}.ai-card .card-btn{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 4px 15px #8b5cf64d}.ai-card .card-btn:hover{box-shadow:0 6px 20px #8b5cf666}.dashboard-card h2{font-size:1.5rem;font-weight:600;color:#e0e6e6;margin-bottom:.8rem}.dashboard-card p{color:#a8b2b2;font-size:.9rem;line-height:1.5;margin-bottom:1.5rem;min-height:2.7rem}.card-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#5fb3b3,#4a9999);border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #5fb3b34d}.admin-card .card-btn{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 15px #f59e0b4d}.card-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #5fb3b366}.admin-card .card-btn:hover{box-shadow:0 6px 20px #f59e0b66}@media (max-width: 768px){.dashboard-cards{flex-direction:column;align-items:center}.dashboard-card{max-width:100%}}.user-management{background:#2a3f3f;border-radius:16px;padding:24px;box-shadow:0 10px 30px #0000004d}.management-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.users-table{overflow-x:auto}.users-table table{width:100%;border-collapse:collapse}.users-table th{text-align:left;padding:12px;font-size:13px;font-weight:600;color:#7d8a8a;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #3a5252;background:#1f3333}.users-table td{padding:16px 12px;border-bottom:1px solid #3a5252;font-size:14px;color:#e0e6e6}.users-table td[title]{cursor:help}.users-table td:nth-child(5){font-size:13px;color:#8fb3b3;white-space:nowrap}.users-table tr:hover{background:#5fb3b30d}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.reset:hover{background:#ffc107;border-color:#ffc107}.action-btn.delete:hover:not(:disabled){background:#dc3545;border-color:#dc3545}.modal{background:#2a3f3f;border-radius:16px;padding:32px;width:90%;max-width:500px;box-shadow:0 20px 60px #00000080;border:1px solid #3a5252}.form-field input{width:100%;padding:.875rem 1rem;border:1px solid #3a5252;border-radius:8px;font-size:14px;background:#1f3333;color:#e0e6e6;transition:all .3s ease}.replacements-management{background:#2a3f3f;border-radius:16px;padding:24px;box-shadow:0 10px 30px #0000004d}.management-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:20px}.info-text{font-size:14px;color:#a8b2b2;flex:1;text-align:right}.replacements-table{overflow-x:auto}.replacements-table table{width:100%;border-collapse:collapse}.replacements-table th{text-align:left;padding:12px;font-size:13px;font-weight:600;color:#7d8a8a;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #3a5252;background:#1f3333}.replacements-table td{padding:16px 12px;border-bottom:1px solid #3a5252;font-size:14px;color:#e0e6e6}.replacements-table tr:hover{background:#5fb3b30d}.pattern-cell code,.replacement-cell code{background:#1f3333;padding:4px 8px;border-radius:4px;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;color:#5fb3b3;border:1px solid #3a5252}.description-cell{font-size:13px;color:#a8b2b2;max-width:300px}.priority-cell{font-weight:600;color:#e0e6e6}.no-data{text-align:center;color:#7d8a8a;padding:40px!important;font-style:italic}.form-field small{display:block;margin-top:4px;font-size:12px;color:#7d8a8a}.checkbox-label{display:flex;align-items:center;gap:8px;font-weight:600;color:#a8b2b2}.checkbox-label input[type=checkbox]{width:auto;margin:0}.create-btn{background:linear-gradient(135deg,#5fb3b3,#4a9999);color:#fff;border:none;padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #5fb3b34d}.create-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #5fb3b366}.status{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.status.active{background:#d4edda;color:#155724}.status.inactive{background:#f8d7da;color:#721c24}.actions{display:flex;gap:8px}.action-btn{width:32px;height:32px;border:1px solid #3a5252;background:#1f3333;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-size:16px}.action-btn:hover{transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.action-btn.edit:hover{background:#17a2b8;border-color:#17a2b8}.action-btn.activate:hover{background:#28a745;border-color:#28a745}.action-btn.deactivate:hover{background:#fd7e14;border-color:#fd7e14}.action-btn.delete:hover{background:#dc3545;border-color:#dc3545}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#2a3f3f;border-radius:16px;padding:32px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;border:1px solid #3a5252}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h2{margin:0;font-size:24px;color:#5fb3b3;font-weight:700}.modal-close{background:transparent;border:none;font-size:28px;color:#7d8a8a;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal-close:hover{background:#5fb3b31a;color:#5fb3b3}.form-field{margin-bottom:20px}.form-field label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#a8b2b2}.form-field input[type=text],.form-field input[type=number]{width:100%;padding:.875rem 1rem;border:1px solid #3a5252;border-radius:8px;font-size:14px;background:#1f3333;color:#e0e6e6;transition:all .3s ease}.form-field input:focus{outline:none;border-color:#5fb3b3;box-shadow:0 0 0 3px #5fb3b31a;background:#253838}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modal-actions button{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:1px solid #3a5252;background:#1f3333;color:#a8b2b2}.modal-actions button:hover{background:#253838;border-color:#4a5a5a;color:#e0e6e6}.modal-actions button.primary{background:linear-gradient(135deg,#5fb3b3,#4a9999);color:#fff;border:none;box-shadow:0 4px 15px #5fb3b34d}.modal-actions button.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #5fb3b366}.loading{text-align:center;padding:40px;color:#a8b2b2;font-size:1.1rem}.admin-dashboard{display:flex;height:100vh;background:linear-gradient(135deg,#1a3a3a,#2d4a4a)}.admin-sidebar{width:280px;background:#2a3f3f;border-right:1px solid #3a5252;display:flex;flex-direction:column;box-shadow:2px 0 10px #0000004d}.sidebar-header{padding:20px;border-bottom:1px solid #3a5252;background:#1f3333}.sidebar-header h2{margin:0 0 15px;font-size:24px;color:#5fb3b3;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.back-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;color:#a8b2b2;transition:all .3s ease;font-weight:500}.back-btn:hover{background:#5fb3b31a;border-color:#5fb3b3;color:#5fb3b3;transform:translateY(-2px)}.admin-menu{flex:1;padding:20px 10px}.menu-item{width:100%;background:transparent;border:1px solid transparent;padding:12px 16px;margin-bottom:8px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .3s ease;text-align:left;color:#a8b2b2}.menu-item:hover{background:#5fb3b31a;border-color:#5fb3b3;color:#e0e6e6;transform:translate(5px)}.menu-item.active{background:linear-gradient(135deg,#5fb3b3,#4a9999);color:#fff;border-color:transparent;box-shadow:0 4px 15px #5fb3b34d}.menu-icon{font-size:24px;width:40px;text-align:center}.menu-content{flex:1;display:flex;flex-direction:column;gap:4px}.menu-label{font-size:15px;font-weight:600;color:inherit}.menu-description{font-size:12px;opacity:.7}.menu-item.active .menu-description{opacity:.9}.sidebar-footer{padding:20px;border-top:1px solid #3a5252;background:#1f3333}.admin-info{display:flex;align-items:center;gap:12px}.admin-icon{font-size:32px}.admin-name{font-weight:600;font-size:14px;color:#e0e6e6}.admin-role{font-size:12px;color:#a8b2b2}.admin-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.section-header{background:#2a3f3f;padding:20px 30px;border-bottom:1px solid #3a5252;box-shadow:0 2px 10px #0003}.section-header h1{margin:0;font-size:28px;color:#5fb3b3;display:flex;align-items:center;gap:12px;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.section-content{flex:1;padding:30px;overflow-y:auto}@media (max-width: 768px){.admin-sidebar{width:200px}.menu-description{display:none}}@media (max-width: 600px){.admin-dashboard{flex-direction:column}.admin-sidebar{width:100%;height:auto}.admin-menu{display:flex;flex-direction:row;padding:10px;gap:10px;overflow-x:auto}.menu-item{min-width:120px}}.chat-interface{flex:1;display:flex;flex-direction:column;background:#1f3333;position:relative}.messages-container{flex:1;overflow-y:auto;padding:2rem;scroll-behavior:smooth}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:#1a2929}.messages-container::-webkit-scrollbar-thumb{background:#3a5252;border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:#4a6262}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.cursor-blink{animation:blink 1s infinite;color:#5fb3b3;font-weight:400}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem;color:#a8b2b2;max-width:600px;margin:0 auto}.empty-icon{color:#5fb3b3;margin-bottom:1.5rem;opacity:.5}.empty-state h3{color:#e0e6e6;font-size:1.5rem;margin-bottom:.5rem}.empty-state p{color:#7d8a8a;margin-bottom:2rem;line-height:1.6}.suggested-prompts{display:flex;flex-direction:column;gap:.75rem;width:100%}.suggested-prompts button{padding:.75rem 1rem;background:#5fb3b31a;border:1px solid #3a5252;border-radius:8px;color:#a8b2b2;text-align:left;cursor:pointer;transition:all .3s ease;font-size:.9rem}.suggested-prompts button:hover{background:#5fb3b333;border-color:#5fb3b3;color:#5fb3b3;transform:translate(5px)}.message{margin-bottom:1.5rem;animation:fadeInUp .3s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.85rem}.message-role{font-weight:600;text-transform:uppercase;letter-spacing:.5px}.message-time{color:#7d8a8a;font-size:.75rem}.message.user .message-role{color:#5fb3b3}.message.assistant .message-role{color:#f59e0b}.message-content{background:#2a3f3f;padding:1rem 1.25rem;border-radius:12px;line-height:1.6;color:#e0e6e6;white-space:pre-wrap;word-wrap:break-word}.message.user .message-content{background:#5fb3b326;border:1px solid rgba(95,179,179,.3);margin-left:auto;max-width:70%}.message.assistant .message-content{background:#2a3f3f;border:1px solid #3a5252;max-width:85%}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-indicator span{width:8px;height:8px;background:#5fb3b3;border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.input-form{padding:1.5rem;background:#2a3f3f;border-top:1px solid #3a5252}.input-container{display:flex;gap:1rem;max-width:1200px;margin:0 auto}.message-input{flex:1;padding:.875rem 1rem;background:#1f3333;border:1px solid #3a5252;border-radius:8px;color:#e0e6e6;font-size:1rem;resize:none;min-height:44px;max-height:120px;line-height:1.5;font-family:inherit;transition:all .3s ease}.message-input:focus{outline:none;border-color:#5fb3b3;box-shadow:0 0 0 3px #5fb3b31a;background:#253838}.message-input:disabled{opacity:.6;cursor:not-allowed}.send-button{padding:.875rem;background:linear-gradient(135deg,#5fb3b3,#4a9999);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:44px;box-shadow:0 4px 15px #5fb3b34d}.send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #5fb3b366}.send-button:disabled{opacity:.5;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@media (max-width: 768px){.messages-container{padding:1rem}.message.user .message-content{max-width:85%}.message.assistant .message-content{max-width:95%}}.conversation-history{width:280px;background:#2a3f3f;border-right:1px solid #3a5252;display:flex;flex-direction:column;box-shadow:2px 0 10px #0000004d}.history-header{padding:1.5rem 1rem;border-bottom:1px solid #3a5252;background:#1f3333}.history-header h3{margin:0 0 1rem;font-size:1.1rem;color:#5fb3b3;font-weight:600}.new-chat-btn{width:100%;padding:.75rem 1rem;background:linear-gradient(135deg,#5fb3b3,#4a9999);border:none;border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 15px #5fb3b34d}.new-chat-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #5fb3b366}.conversations-list{flex:1;overflow-y:auto;padding:1rem .5rem}.conversations-list::-webkit-scrollbar{width:6px}.conversations-list::-webkit-scrollbar-track{background:#1f3333}.conversations-list::-webkit-scrollbar-thumb{background:#3a5252;border-radius:3px}.conversations-list::-webkit-scrollbar-thumb:hover{background:#4a6262}.date-group{margin-bottom:1.5rem}.date-label{font-size:.75rem;color:#7d8a8a;text-transform:uppercase;letter-spacing:1px;padding:0 .5rem;margin-bottom:.5rem;font-weight:600}.conversation-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.25rem;border-radius:8px;cursor:pointer;transition:all .3s ease;background:transparent;border:1px solid transparent}.conversation-item:hover{background:#5fb3b30d;border-color:#3a5252}.conversation-item.active{background:#5fb3b326;border-color:#5fb3b3}.conversation-info{flex:1;min-width:0}.conversation-title{font-size:.9rem;color:#e0e6e6;font-weight:500;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-preview{font-size:.75rem;color:#7d8a8a}.delete-btn{padding:.25rem;background:transparent;border:none;color:#7d8a8a;cursor:pointer;opacity:0;transition:all .3s ease;border-radius:4px}.conversation-item:hover .delete-btn{opacity:1}.delete-btn:hover{background:#dc35451a;color:#dc3545}.no-history{text-align:center;padding:2rem 1rem;color:#7d8a8a}.no-history p{margin:.5rem 0}.no-history .hint{font-size:.85rem;color:#5a6868}@media (max-width: 768px){.conversation-history{width:240px}.history-header{padding:1rem}.history-header h3{font-size:1rem}}.app-content{display:flex;height:calc(100vh - 64px);overflow:hidden}@media (max-width: 768px){.app-content{height:calc(100vh - 56px)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1a3a3a;color:#e0e6e6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a3a3a,#2d4a4a);color:#5fb3b3;font-size:1.5rem}::-webkit-scrollbar-track{background:#1f3333}::-webkit-scrollbar-thumb:hover{background:#4a6262}::selection{background:#5fb3b34d;color:#fff}::-moz-selection{background:#5fb3b34d;color:#fff}*{box-sizing:border-box}body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.document-text{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.8;color:#e0e6e6}.document-text h1,.document-text h2,.document-text h3,.document-text h4,.document-text h5,.document-text h6{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:700;margin-top:2rem;margin-bottom:1rem;color:#5fb3b3}.document-text p{margin-bottom:1.5rem;color:#e0e6e6}.sentence{display:inline;transition:all .3s ease;padding:3px 6px;border-radius:4px;margin:1px}.sentence.current{background-color:#5fb3b3!important;color:#fff!important;box-shadow:0 2px 8px #5fb3b380;font-weight:600;transform:scale(1.02)}.sentence.completed{background-color:#5fb3b333;color:#c0cccc;opacity:.9}.paragraph.current{background-color:#5fb3b3!important;color:#fff!important;padding:12px;border-radius:8px;border-left:6px solid #8fcaca;margin:8px 0}.paragraph.completed{opacity:.7;color:#a8b2b2}.waveform-container{background:#2a3f3f;border-radius:8px;padding:1rem;margin:1rem 0;border:1px solid #3a5252}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.pulse-animation{animation:pulse 2s infinite}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#1f3333;border-radius:5px}::-webkit-scrollbar-thumb{background:#3a5252;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#5fb3b3}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid #3a5252;border-top:3px solid #5fb3b3;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
