body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{cursor:pointer}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f8fafc;color:#333;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6}a{color:#2196f3;text-decoration:none}a:hover{text-decoration:underline}.button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .2s ease}.button.primary{background-color:#4299e1;color:#fff}.button.primary:hover{background-color:#3182ce}.button.secondary{background-color:#edf2f7;color:#4a5568}.button.secondary:hover{background-color:#e2e8f0}.header{background-color:#fff;box-shadow:0 2px 4px #0000001a;padding:1rem}.logo-container h1{color:#2a6593;font-size:1.5rem}.user-info{align-items:center;display:flex;gap:1rem;margin:.5rem 0}.buy-credits{background-color:#4caf50;color:#fff}.logout{background-color:#f44336;color:#fff}.facebook-banner{background-color:#2a6593;color:#fff;margin-top:.5rem;padding:.5rem;text-align:center}.main-content{display:flex;gap:2rem;margin:0 auto;max-width:1440px;padding:2rem}.sidebar{background-color:#f1f1f1;padding:1rem;width:250px}.sidebar-item{border-radius:4px;cursor:pointer;margin-bottom:.5rem;padding:.8rem}.sidebar-item:hover{background-color:#e0e0e0}.sidebar-item.active{background-color:#ffd54f}.note-info{color:#777;font-size:.8rem;margin-top:.5rem}.content{flex:1 1;padding:1rem}.soap-note-form{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:1.5rem}.soap-note-form h2{color:#2a6593;margin-bottom:1rem}.form-controls{display:flex;gap:.5rem;margin-bottom:1rem}.new-btn{background-color:#2196f3;color:#fff}.copy-btn{background-color:#ff9800;color:#fff}.download-btn{background-color:#4caf50;color:#fff}.patient-info{display:flex;gap:1rem;margin-bottom:1rem}.form-group{flex:1 1}.form-group input{border:1px solid #ddd;border-radius:4px;padding:.5rem}.help-links,.hipaa-notice{background-color:#f8f8f8;border-radius:4px;font-size:.9rem;margin-bottom:1rem;padding:.8rem}.note-input h3{font-size:1rem;margin-bottom:.5rem}.note-input textarea{border:1px solid #ddd;border-radius:4px;padding:.8rem;resize:vertical;width:100%}.generate-notice{font-size:.9rem;margin:1rem 0}.generate-btn{background-color:#2a6593;color:#fff;font-size:1rem;padding:.8rem 1.5rem}.language-selector{margin-top:1rem}.language-selector select{border:1px solid #ddd;border-radius:4px;padding:.5rem}.soap-note-result{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.result-section{margin-bottom:1.5rem}.result-section h3{color:#2a6593;font-size:1rem;margin-bottom:.5rem}.content-box{background-color:#f8f8f8;border-left:4px solid #2a6593;border-radius:4px;padding:1rem}.loading{padding:2rem}.home-container{display:flex;flex-direction:column;min-height:100vh}.home-page{padding:2rem}.home-header{margin-bottom:2rem}.home-header h1{color:#2a6593;margin-bottom:.5rem}.note-types-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.note-type-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;padding:1.5rem;transition:transform .3s,box-shadow .3s}.note-type-card:hover{box-shadow:0 4px 8px #00000026}.note-type-card h3{color:#2a6593;margin-bottom:1rem}.card-icons{display:flex;gap:1rem}.icon{font-size:1.5rem}.link-button{background:none;border:none;color:#2196f3;cursor:pointer;font-family:inherit;font-size:inherit;padding:0;text-decoration:underline}.link-button:hover{color:#0b7dda}.error-message{background-color:#fff5f5;border-left:4px solid #fc8181;color:#c53030;font-size:.875rem;margin-bottom:1rem;padding:.75rem}.all-notes-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.all-notes-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.all-notes-header h1{color:#2a6593;font-size:1.5rem;margin:0}.no-notes-message{color:#757575;padding:2rem;text-align:center}.notes-list{display:flex;flex-direction:column;gap:1rem}.note-item{align-items:center;border:1px solid #eee;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;padding:1rem;transition:background-color .2s}.note-item:hover{background-color:#f5f5f5}.note-details h3{color:#2a6593;margin:0 0 .5rem}.note-meta{color:#757575;display:flex;font-size:.85rem;gap:1rem}.note-actions{display:flex;gap:.5rem}.icon-button{font-size:1.2rem;padding:.25rem}.icon-button:hover{background-color:#e0e0e0;border-radius:4px}.soap-result-container{margin-top:2rem}.soap-result-actions{display:flex;gap:1rem;margin-bottom:1rem;margin-top:1.5rem}.save-btn{background-color:#4caf50}.save-btn:disabled{background-color:#a5d6a7;cursor:not-allowed}.export-btn{background-color:#2196f3;color:#fff}.export-btn:disabled{background-color:#90caf9;cursor:not-allowed}.view-all-btn{background-color:#9e9e9e;color:#fff}.save-success-message{background-color:#e8f5e9;border-left:4px solid #4caf50;border-radius:4px;color:#1b5e20;margin-top:1rem;padding:.5rem 1rem}.note-preview{color:#666;font-size:.9rem;line-height:1.4;margin-top:.5rem}.edit-note-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.edit-note-header{margin-bottom:1.5rem}.edit-note-header h1{color:#2a6593;margin-bottom:.5rem}.edit-note-header div{color:#666;display:flex;font-size:.9rem;gap:1.5rem}.edit-form .form-section{margin-bottom:1.5rem}.edit-form h2{color:#2a6593;font-size:1.1rem;margin-bottom:.5rem}.edit-form .form-row{display:flex;gap:1rem}.edit-form textarea{border:1px solid #ddd;border-radius:4px;padding:.8rem;resize:vertical;width:100%}.form-actions{gap:1rem;margin-top:2rem}.cancel-btn{background-color:#9e9e9e}.app{display:flex;flex-direction:column;min-height:100vh}.main-nav{background:#fff;box-shadow:0 2px 4px #0000000d;position:sticky;top:0;z-index:1000}.nav-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:1rem}.nav-logo{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2b5876,#4e4376);-webkit-background-clip:text;color:#2b5876;font-size:1.5rem;font-weight:700}.nav-links{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-links a{border-radius:8px;color:#4a4a4a;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.nav-links a:hover{background:#2b58761a;color:#2b5876}.main-content{flex:1 1;width:100%}@media (max-width:768px){.nav-container{flex-direction:column;gap:1rem;padding:1rem}.nav-links{gap:1rem;justify-content:center;width:100%}.nav-links a{font-size:.9rem;padding:.5rem}}.soap-note-page{background-color:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin:2rem auto;max-width:800px;width:100%}.page-header{margin-bottom:2rem;text-align:center}.page-header h1{color:#1a365d;margin-bottom:1rem}.page-header p{color:#4a5568;font-size:1.1rem}.selection-container{background-color:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;flex-direction:column;padding:24px}.dropdown-sections,.selection-container{display:flex;gap:20px}.dropdown-section{display:flex;flex:1 1;flex-direction:column;gap:8px}.dropdown-section label{color:#2c3e50;font-weight:500}.dropdown{background-color:#fff;border:2px solid #e9ecef;border-radius:8px;color:#2c3e50;cursor:pointer;font-size:16px;padding:12px;transition:all .2s ease;width:100%}.dropdown:hover:not(:disabled){border-color:#cbd5e0}.dropdown:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.dropdown:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.method-buttons{display:flex;gap:20px}.method-button{align-items:center;background-color:#f8f9fa;border:none;border-radius:8px;color:#2c3e50;cursor:pointer;display:flex;flex:1 1;font-size:16px;font-weight:500;gap:8px;justify-content:center;padding:14px;transition:all .2s ease}.method-button:not(.disabled):hover{background-color:#e9ecef;transform:translateY(-1px)}.method-button.disabled{background-color:#f1f3f5;cursor:not-allowed;opacity:.5}.google-login-btn{align-items:center;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;display:flex;font-weight:500;gap:.75rem;justify-content:center;margin:1rem auto;max-width:320px;padding:.75rem 1.5rem;transition:all .2s ease;width:100%}.google-login-btn:hover{background-color:#f8fafc;box-shadow:0 2px 4px #0000001a}.google-login-btn img{height:24px;width:24px}.auth-container{background-color:#f8fafc;flex-direction:column;padding:2rem}.auth-box{background-color:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-width:400px;padding:2.5rem;width:100%}.auth-box h1{color:#1a365d;font-size:2rem;margin-bottom:2rem;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{color:#4a5568;margin-bottom:.5rem}.form-group input{border:1px solid #e2e8f0;font-size:1rem;padding:.75rem}.form-group input:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.auth-footer{color:#718096;margin-top:1.5rem;text-align:center}.auth-footer a{color:#4299e1;font-weight:500;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-divider{margin:1.5rem 0}.auth-divider:after,.auth-divider:before{border-bottom:1px solid #e2e8f0}.auth-divider span{color:#718096;font-size:.875rem;padding:0 1rem}.notification-container{display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:1000}.notification-item{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001a;max-width:400px;min-width:320px;opacity:0;overflow:hidden;pointer-events:auto;transform:translateX(100%);transition:all .3s cubic-bezier(.4,0,.2,1)}.notification-item.visible{opacity:1;transform:translateX(0)}.notification-content{align-items:flex-start;display:flex;gap:12px;padding:16px}.notification-icon{flex-shrink:0;font-size:1.2rem;margin-top:2px}.notification-text{flex:1 1;min-width:0}.notification-text h4{color:#1e293b;font-size:.9rem;font-weight:600;margin:0 0 4px}.notification-text p{color:#64748b;font-size:.85rem;line-height:1.4;margin:0}.notification-close{align-items:center;background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;height:20px;justify-content:center;padding:0;transition:all .2s ease;width:20px}.notification-close:hover{background:#f1f5f9;color:#475569}.loading-container{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:32px}.spinner{border:2px solid #e2e8f0;border-top-color:#3b82f6}.spinner-small .spinner{border-width:1px;height:16px;width:16px}.spinner-medium .spinner{height:24px;width:24px}.spinner-large .spinner{border-width:3px;height:32px;width:32px}.loading-message{color:#64748b;font-size:.9rem;margin:0}.tooltip-container{display:inline-block;position:relative}.tooltip-content{background:#1e293b;border-radius:6px;bottom:100%;box-shadow:0 4px 12px #00000026;color:#fff;font-size:.8rem;margin-bottom:8px;padding:8px 12px;white-space:nowrap;z-index:1000}.tooltip-content,.tooltip-content:after{left:50%;position:absolute;transform:translateX(-50%)}.tooltip-content:after{border:5px solid #0000;border-top-color:#1e293b;content:"";top:100%}@media (max-width:768px){.notification-container{left:10px;max-width:none;right:10px;top:10px}.notification-item{max-width:none;min-width:0;min-width:auto}.notification-content{padding:14px}.tooltip-content{max-width:200px;text-align:center;white-space:normal}}@media (prefers-reduced-motion:reduce){.notification-item,.spinner{animation:none;transition:none}.notification-item.visible{opacity:1;transform:none}}@media (prefers-color-scheme:dark){.notification-item{background:#1e293b;border-color:#334155}.notification-text h4{color:#f1f5f9}.notification-text p{color:#94a3b8}.notification-close{color:#64748b}.notification-close:hover{background:#334155;color:#94a3b8}.loading-message{color:#94a3b8}}.home-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.home-header{margin-bottom:40px;padding:30px 0;text-align:center}.home-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.8rem;font-weight:700;margin-bottom:15px}.home-header p{color:#64748b;font-size:1.2rem;margin:0}.quick-start-section{margin-bottom:40px}.quick-start-section h2{color:#334155;font-size:1.5rem;font-weight:600;margin-bottom:20px}.quick-start-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;padding:24px;transition:all .3s ease}.quick-start-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.quick-start-info{align-items:center;display:flex;gap:16px}.quick-start-icon{align-items:center;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;display:flex;font-size:2rem;justify-content:center;padding:12px}.quick-start-info h3{color:#1e293b;font-size:1.2rem;font-weight:600;margin:0 0 4px}.quick-start-info p{color:#64748b;font-size:.9rem;margin:0}.quick-start-actions{display:flex;gap:12px}.quick-action-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;justify-content:center;min-width:100px;padding:10px 20px;transition:all .3s ease}.quick-action-btn.text-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.quick-action-btn.voice-btn{background:#fff;border:2px solid #3b82f6;color:#3b82f6}.quick-action-btn:hover{transform:translateY(-1px)}.quick-action-btn.text-btn:hover{box-shadow:0 4px 15px #3b82f64d}.quick-action-btn.voice-btn:hover{background:#3b82f60d}.specialties-section{margin-bottom:40px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-header h2{color:#334155;font-size:1.5rem;font-weight:600;margin:0}.toggle-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:.85rem;padding:8px 16px;transition:all .2s ease}.toggle-btn:hover{border-color:#3b82f6;color:#3b82f6}.specialty-selector{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:32px}.dropdown-container{margin-bottom:24px}.dropdown-label{color:#334155;display:block;font-size:1.1rem;font-weight:500;margin-bottom:12px}.specialty-dropdown{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:20px;border:2px solid #e2e8f0;border-radius:12px;color:#334155;cursor:pointer;font-size:1rem;padding:16px 50px 16px 20px;transition:all .3s ease;width:100%}.specialty-dropdown:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.specialty-dropdown:hover{border-color:#94a3b8}.specialty-dropdown optgroup{background:#f8fafc;color:#1e293b;font-size:.9rem;font-weight:600;padding:8px 0}.specialty-dropdown option{background:#fff;color:#374151;padding:8px 12px}.specialty-dropdown option:hover{background:#f3f4f6}.selected-specialty-info{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:24px}.specialty-preview{align-items:center;display:flex;gap:20px;margin-bottom:24px}.specialty-icon{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 10px #0000001a;display:flex;font-size:3rem;justify-content:center;min-height:80px;min-width:80px;padding:16px}.specialty-details h3{color:#1e293b;font-size:1.4rem;font-weight:600;margin:0 0 8px}.specialty-details p{color:#64748b;font-size:1rem;line-height:1.5;margin:0}.action-buttons{display:flex;gap:16px;justify-content:center}.note-types-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));padding:0}.note-type-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;overflow:hidden;padding:28px;position:relative;text-align:center;transition:all .3s ease}.note-type-card:hover{box-shadow:0 12px 35px #00000026;transform:translateY(-5px)}.card-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border-radius:50%;display:flex;font-size:3.5rem;justify-content:center;margin-bottom:20px;padding:16px}.note-type-card h3{color:#1e293b;font-size:1.4rem;font-weight:600;margin:0 0 12px}.note-type-card p{color:#64748b;font-size:.95rem;line-height:1.5;margin:0 0 28px}.card-actions{display:flex;gap:12px;width:100%}.action-button{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:500;gap:6px;justify-content:center;padding:12px 16px;transition:all .3s ease}.text-button{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.text-button:hover{box-shadow:0 6px 20px #3b82f64d;transform:translateY(-2px)}.audio-button{background:#fff;border:2px solid #3b82f6;color:#3b82f6}.audio-button:hover{background:#3b82f60d;transform:translateY(-2px)}.button-icon{font-size:1.1rem}.additional-features{margin-top:50px}.feature-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.feature-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:24px;text-align:center;transition:all .3s ease}.feature-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px #0000001a;transform:translateY(-3px)}.feature-icon{display:block;font-size:2.5rem;margin-bottom:16px}.feature-card h3{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 8px}.feature-card p{color:#64748b;font-size:.9rem;margin:0}@media (max-width:768px){.home-page{padding:16px}.home-header h1{font-size:2.2rem}.home-header p{font-size:1rem}.quick-start-card{gap:20px}.quick-start-card,.quick-start-info{flex-direction:column;text-align:center}.note-types-grid{gap:20px;grid-template-columns:1fr}.note-type-card{padding:24px 20px}.card-actions,.section-header{flex-direction:column}.section-header{align-items:stretch;gap:16px}.toggle-btn{align-self:center}.feature-cards{grid-template-columns:1fr}.specialty-selector{padding:24px}.specialty-preview{flex-direction:column;gap:16px;text-align:center}.specialty-details{text-align:center}.action-buttons{flex-direction:column;gap:12px}.action-button{width:100%}}@media (max-width:480px){.home-header h1{font-size:1.8rem}.card-icon{font-size:2.8rem;padding:12px}.note-type-card h3{font-size:1.2rem}.action-button{font-size:.85rem;padding:10px 12px}}.physical-therapy-page{background:linear-gradient(180deg,#fff,#f8f9fa);margin:0 auto;max-width:1200px;min-height:100vh;padding:40px 20px}.soap-note-form{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000000d;padding:40px}.form-section{margin-bottom:40px}.form-section h2{color:#2b5876;font-size:1.5rem;font-weight:600;margin-bottom:20px}.label-hint{color:#666;display:block;font-size:.9rem;font-weight:400;margin-top:4px}.form-group input,.form-group textarea{background:#fff;border:2px solid #e1e1e1;border-radius:12px;box-shadow:0 2px 4px #0000000d;font-size:16px;padding:15px;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{border-color:#4e4376;box-shadow:0 0 0 3px #4e43761a}.form-group textarea{line-height:1.6;min-height:200px}.form-actions{align-items:center;flex-direction:column;gap:20px;margin-top:30px}.loading-indicator{align-items:center;color:#4e4376;display:flex;font-weight:500;gap:12px}.submit-button{background:linear-gradient(135deg,#2b5876,#4e4376);border-radius:12px;font-size:18px;max-width:300px;padding:16px 32px;width:100%}.submit-button:hover{box-shadow:0 5px 15px #4e437633;transform:translateY(-2px)}.submit-button:disabled{background:#e1e1e1;box-shadow:none}@media (max-width:768px){.physical-therapy-page{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.page-header h1{font-size:2rem}.soap-note-form{padding:20px}.form-group input,.form-group textarea{padding:12px}.submit-button{width:100%}}.modern-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;position:sticky;top:0;z-index:100}.header-content{height:64px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.header-content,.logo-section{align-items:center;display:flex}.logo-section{cursor:pointer;gap:12px;transition:all .2s ease}.logo-section:hover{opacity:.8}.logo-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:10px;display:flex;font-size:1.8rem;justify-content:center;padding:8px}.logo-text{color:#1e293b;font-size:1.4rem;font-weight:700;letter-spacing:-.02em}.nav-menu{gap:8px}.nav-item,.nav-menu{align-items:center;display:flex}.nav-item{background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.nav-item:hover{background:#f1f5f9;color:#3b82f6}.nav-item.active{background:#eff6ff;color:#3b82f6}.user-section{position:relative}.user-profile{align-items:center;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:8px 12px;transition:all .2s ease}.user-profile:hover{background:#f8fafc}.user-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;color:#fff;display:flex;font-size:.9rem;font-weight:600;height:36px;justify-content:center;width:36px}.user-name{color:#1e293b;font-size:.9rem;font-weight:500}.dropdown-arrow{color:#64748b;font-size:.7rem;transition:transform .2s ease}.user-profile:hover .dropdown-arrow{transform:rotate(180deg)}.user-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 30px #0000001a;margin-top:8px;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:200}.user-dropdown-item{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:12px 16px;transition:all .2s ease}.user-dropdown-item:hover{background:#f8fafc;color:#1e293b}.user-dropdown-item.logout{color:#dc2626}.user-dropdown-item.logout:hover{background:#fef2f2;color:#dc2626}.user-dropdown-divider{background:#e2e8f0;height:1px;margin:4px 0}@media (max-width:768px){.header-content{height:56px;padding:0 16px}.logo-text{font-size:1.2rem}.nav-menu,.user-name{display:none}.user-dropdown{min-width:180px;right:-10px}}@media (max-width:480px){.header-content{height:52px}.logo-icon{font-size:1.5rem;padding:6px}.logo-text{font-size:1.1rem}.user-avatar{font-size:.8rem;height:32px;width:32px}}.auth-page{background-color:#f8f9fa;min-height:100vh;width:100vw}.auth-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px;width:100%}.auth-card{background-color:#fff;border-radius:16px;box-shadow:0 8px 16px #0000001a;max-width:480px;padding:40px;width:100%}@media (max-width:768px){.auth-card{margin:0 16px;padding:24px}}.auth-card h2{color:#2c3e50;font-size:28px;font-weight:600;margin-bottom:32px;text-align:center}.form-group{margin-bottom:24px}.form-group label{font-size:16px}.form-group input{border:2px solid #e9ecef;border-radius:8px;padding:12px 16px;transition:all .2s ease}.form-group input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.auth-button{background-color:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:all .2s ease;width:100%}.auth-button:hover{background-color:#2980b9;transform:translateY(-1px)}.auth-button:disabled{background-color:#bdc3c7;cursor:not-allowed;transform:none}.auth-error{background-color:#fff3f3;border:1px solid #e74c3c;border-radius:8px;color:#c0392b;font-size:14px;margin-bottom:24px;padding:12px 16px}.auth-divider{align-items:center;display:flex;margin:32px 0;text-align:center}.auth-divider:after,.auth-divider:before{border-bottom:1px solid #e9ecef;content:"";flex:1 1}.auth-divider span{color:#7f8c8d;font-size:14px;font-weight:500;padding:0 16px}.social-buttons-container{display:flex;flex-direction:column;gap:16px}.github-button,.google-button{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;padding:14px;transition:all .2s ease;width:100%}.google-button{background-color:#fff;border:2px solid #e9ecef;color:#2c3e50}.github-button{background-color:#333;border:2px solid #333;color:#fff}.google-button:hover{background-color:#f8f9fa;border-color:#ced4da;transform:translateY(-1px)}.github-button:hover{background-color:#444;border-color:#444;transform:translateY(-1px)}.github-button:disabled,.google-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.google-button img{height:20px;width:20px}.auth-toggle{color:#2c3e50;font-size:14px;margin-top:24px;text-align:center}.toggle-link{background:none;border:none;color:#3498db;cursor:pointer;font-weight:600;margin-left:8px;text-decoration:none;transition:color .2s ease}.toggle-link:hover{color:#2980b9;text-decoration:underline}.patients-container{margin:0 auto;max-width:1200px;padding:20px;width:100%}.patients-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.patients-header h1{color:#333;margin:0}.patient-actions{align-items:center;gap:10px}.search-box{align-items:center;display:flex}.search-box input{border:1px solid #ddd;border-radius:4px 0 0 4px;padding:8px 12px;width:250px}.search-box button{background-color:#4285f4;border:none;border-radius:0 4px 4px 0}.add-btn,.search-box button{color:#fff;cursor:pointer;padding:8px 16px}.add-btn{background-color:#4caf50;border:none;border-radius:4px}.add-patient-form{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.add-patient-form h2{border-bottom:1px solid #ddd;color:#333;margin-bottom:20px;margin-top:0;padding-bottom:10px}.form-row{display:flex;gap:20px;margin-bottom:15px}.form-row .form-group{flex:1 1}.form-group{margin-bottom:15px}.form-group label{color:#555;margin-bottom:5px}.form-group input,.form-group textarea{border:1px solid #ddd;padding:8px 12px}.form-group textarea{min-height:80px}.form-actions{gap:10px;margin-top:20px}.save-btn{background-color:#4285f4}.cancel-btn,.save-btn{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.cancel-btn{background-color:#f44336}.patients-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.patient-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:15px}.patient-info{cursor:pointer;flex:1 1}.patient-info h3{color:#333;margin-bottom:10px;margin-top:0}.patient-info p{color:#555;font-size:14px;margin:5px 0}.patient-actions{display:flex;flex-direction:column;justify-content:center}.icon-button{background:none;border:none;cursor:pointer;font-size:20px;margin:2px 0;padding:5px}.no-patients{color:#666;grid-column:1/-1;padding:40px}.error-message,.loading,.no-patients{background-color:#f9f9f9;border-radius:8px;text-align:center}.error-message,.loading{margin-top:20px;padding:20px}.error-message{background-color:#ffebee;border:1px solid #ffcdd2;color:#f44336}.error-boundary{align-items:center;background-color:#f8f9fa;display:flex;justify-content:center;min-height:100vh;padding:20px}.error-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:40px;text-align:center}.error-container h1{color:#dc3545;font-size:24px;margin-bottom:16px}.error-container p{color:#6c757d;line-height:1.5;margin-bottom:24px}.error-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:24px}.error-boundary .button{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-weight:500;padding:12px 24px;text-decoration:none;transition:all .2s}.error-boundary .button-primary{background-color:#007bff;color:#fff}.error-boundary .button-primary:hover{background-color:#0056b3}.error-boundary .button-secondary{background-color:#6c757d;color:#fff}.error-boundary .button-secondary:hover{background-color:#545b62}.error-details{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-top:20px;padding:16px;text-align:left}.error-details summary{cursor:pointer;font-weight:500;margin-bottom:8px}.error-details pre{color:#495057;font-size:12px;margin:8px 0;white-space:pre-wrap}.pwa-installer{animation:slideUp .3s ease-out;bottom:20px;left:20px;position:fixed;right:20px;z-index:9999}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.install-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 32px #0000001f;margin:0 auto;max-width:400px;overflow:hidden;position:relative}.install-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;padding:16px 20px;position:relative}.install-icon{font-size:1.5rem;margin-right:12px}.install-header h3{flex:1 1;font-size:1.1rem;font-weight:600;margin:0}.dismiss-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:28px;justify-content:center;position:absolute;right:16px;top:12px;transition:all .2s ease;width:28px}.dismiss-btn:hover{background:#ffffff4d}.install-content{padding:20px}.install-content>p{color:#374151;font-size:.95rem;line-height:1.5;margin:0 0 16px}.ios-installer .install-content{padding:20px}.ios-instructions{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;margin:16px 0;padding:16px}.instruction-step{align-items:center;color:#374151;display:flex;font-size:.9rem;gap:12px;margin-bottom:12px}.instruction-step:last-child{margin-bottom:0}.step-icon{font-size:1rem;min-width:24px}.instruction-step strong{color:#1e293b;font-weight:600}.benefits{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0;border-radius:8px;margin:16px 0;padding:16px}.benefits h4{color:#166534;font-size:.95rem;font-weight:600;margin:0 0 12px}.benefits ul{list-style:none;margin:0;padding:0}.benefits li{align-items:center;color:#15803d;display:flex;font-size:.85rem;gap:8px;padding:4px 0}.install-preview{display:flex;justify-content:center;margin:16px 0}.preview-phone{background:linear-gradient(135deg,#1e293b,#374151);border-radius:12px;box-shadow:0 4px 12px #0003;height:140px;padding:8px;position:relative;width:80px}.phone-screen{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:8px;flex-direction:column;gap:8px;height:100%;width:100%}.app-icon,.phone-screen{align-items:center;display:flex;justify-content:center}.app-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;box-shadow:0 2px 8px #3b82f64d;font-size:2rem;height:40px;padding:8px;width:40px}.app-name{color:#374151;font-size:.6rem;font-weight:600;text-align:center}.install-actions{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;padding:16px 20px}.install-btn,.later-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:500;padding:10px 16px;transition:all .2s ease}.later-btn{background:#fff;border:1px solid #e2e8f0;color:#64748b}.later-btn:hover{background:#f1f5f9;color:#475569}.install-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.install-btn:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}@media (min-width:768px){.pwa-installer{bottom:30px;left:auto;max-width:380px;right:30px}.install-card{margin:0}}@media (max-width:480px){.pwa-installer{bottom:10px;left:10px;right:10px}.install-content{padding:16px}.benefits{padding:12px}.install-actions{flex-direction:column;padding:12px 16px}.install-btn,.later-btn{width:100%}.ios-instructions{padding:12px}.instruction-step{font-size:.85rem}}@media (prefers-color-scheme:dark){.install-card{background:#1e293b;border-color:#374151;color:#fff}.install-content>p{color:#d1d5db}.ios-instructions{background:#374151;border-left-color:#60a5fa}.instruction-step{color:#d1d5db}.instruction-step strong{color:#f3f4f6}.benefits{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#059669}.benefits h4{color:#6ee7b7}.benefits li{color:#a7f3d0}.phone-screen{background:linear-gradient(135deg,#374151,#4b5563)}.app-name{color:#d1d5db}.install-actions{background:#374151;border-top-color:#4b5563}.later-btn{background:#4b5563;border-color:#6b7280;color:#d1d5db}.later-btn:hover{background:#6b7280;color:#f3f4f6}}@media (prefers-contrast:high){.install-card{border:2px solid #000}.dismiss-btn{border:1px solid #ffffff80}.install-btn,.later-btn{border:2px solid}}@media (prefers-reduced-motion:reduce){.pwa-installer{animation:none}.install-btn:hover{transform:none}*{transition:none!important}}.offline-status{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 20px #0000001a;max-width:320px;overflow:hidden;position:fixed;right:20px;top:20px;transition:all .3s ease;z-index:1000}.offline-status.offline{border-left:4px solid #ef4444}.offline-status.online{border-left:4px solid #10b981}.status-main{align-items:center;cursor:pointer;display:flex;padding:12px 16px;transition:background-color .2s ease}.status-main:hover{background:#f8fafc}.status-indicator{margin-right:12px}.status-icon{display:inline-block;font-size:1.2rem}.offline-icon{animation:pulse 2s infinite;color:#ef4444}.online-icon{color:#10b981}.syncing-icon{animation:spin 1s linear infinite;color:#3b82f6}.status-text{display:flex;flex:1 1;flex-direction:column;gap:2px}.status-text>span:first-child{color:#1e293b;font-size:.9rem;font-weight:500}.unsynced-count{color:#64748b;font-size:.75rem;font-weight:400}.toggle-detail{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:.8rem;padding:4px;transition:all .2s ease}.toggle-detail:hover{background:#f1f5f9;color:#374151}.status-detail{background:#f8fafc;border-top:1px solid #e2e8f0;padding:16px}.offline-info h4,.online-info h4{color:#1e293b;font-size:1rem;margin:0 0 8px}.offline-info p,.online-info p{color:#64748b;font-size:.85rem;line-height:1.4;margin:0 0 12px}.offline-info ul,.status-tips ul{color:#64748b;font-size:.8rem;margin:0 0 12px;padding-left:16px}.offline-info li,.status-tips li{line-height:1.3;margin-bottom:4px}.unsynced-info{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:8px;color:#92400e;font-size:.85rem;margin:8px 0;padding:12px}.sync-pending{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #3b82f6;border-radius:8px;margin:8px 0;padding:12px}.sync-pending p{color:#1e40af;font-size:.85rem;margin:0 0 12px}.sync-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.8rem;gap:8px;justify-content:center;padding:8px 16px;transition:all .2s ease;width:100%}.sync-btn:hover:not(:disabled){box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.sync-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;height:12px;width:12px}.status-tips{border-top:1px solid #e2e8f0;margin-top:16px;padding-top:12px}.status-tips h5{color:#374151;font-size:.85rem;font-weight:600;margin:0 0 8px}.status-tips ul{margin:0}@media (max-width:768px){.offline-status{left:10px;max-width:none;right:10px;top:10px}.status-detail{padding:12px}.status-main{padding:10px 12px}}@media (max-width:480px){.offline-status{border-radius:8px;left:auto;margin:16px;position:relative;right:auto;top:auto}.status-detail,.status-main{padding:12px}.offline-info h4,.online-info h4{font-size:.9rem}.sync-btn{font-size:.85rem;padding:10px 16px}}@media (prefers-color-scheme:dark){.offline-status{background:#1e293b;border-color:#374151}.status-main:hover{background:#374151}.status-text>span:first-child{color:#f1f5f9}.toggle-detail,.unsynced-count{color:#94a3b8}.toggle-detail:hover{background:#4b5563;color:#d1d5db}.status-detail{background:#374151;border-top-color:#4b5563}.offline-info h4,.online-info h4{color:#f1f5f9}.offline-info li,.offline-info p,.online-info p,.status-tips li{color:#94a3b8}.status-tips h5{color:#d1d5db}.status-tips{border-top-color:#4b5563}}@media (prefers-contrast:high){.offline-status{border:2px solid}.offline-status.offline{border-color:#dc2626}.offline-status.online{border-color:#059669}.sync-btn{border:2px solid #1d4ed8}}@media (prefers-reduced-motion:reduce){.offline-icon,.spinner,.syncing-icon{animation:none}.sync-btn:hover{transform:none}*{transition:none!important}}.loading-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center}.loading-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#fffc;bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-inline{padding:20px}.spinner{display:inline-block;position:relative}.spinner.small{height:24px;width:24px}.spinner.medium{height:40px;width:40px}.spinner.large{height:60px;width:60px}.spinner-ring{animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite;border:3px solid #0000;border-radius:50%;border-top-color:#007bff;height:100%;left:0;position:absolute;top:0;width:100%}.spinner-ring:first-child{animation-delay:-.45s}.spinner-ring:nth-child(2){animation-delay:-.3s}.spinner-ring:nth-child(3){animation-delay:-.15s}.loading-message{color:#6c757d;font-size:14px;margin-top:12px;text-align:center}.spinner.small+.loading-message{font-size:12px;margin-top:8px}.spinner.large+.loading-message{font-size:16px;margin-top:16px}.audio-soap-note{background:linear-gradient(180deg,#fff,#f8f9fa);margin:0 auto;max-width:1200px;min-height:100vh;padding:40px 20px}.page-header{align-items:center;gap:20px;margin-bottom:40px}.back-button{align-items:center;background:#fff;border:none;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:#2b5876;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 20px;transition:all .3s ease}.back-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateX(-2px)}.page-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#2b5876,#4e4376);-webkit-background-clip:text;font-size:2.5rem;font-weight:700;margin:0}.content-container{margin:0 auto;max-width:800px}.note-card{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000000d;padding:40px}.card-section{margin-bottom:40px}.card-section h2{color:#2b5876;font-size:1.5rem;font-weight:600;margin-bottom:20px}.section-description{color:#666;line-height:1.6;margin-bottom:20px}.form-group{margin-bottom:25px}.form-group label{color:#1a1a1a;margin-bottom:10px}.form-group input{background:#fff;border:2px solid #e1e1e1;border-radius:12px;box-shadow:0 2px 4px #0000000d;font-size:16px;padding:15px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:#4e4376;box-shadow:0 0 0 3px #4e43761a;outline:none}.recording-container{background:#f8f9fa;border-radius:16px;margin-top:20px;padding:30px}.recording-controls{align-items:center;display:flex;gap:20px;margin-bottom:20px}.control-button{background:#fff;border:none;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:#2b5876;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.control-button.recording{animation:pulse-button 1.5s infinite;background:#dc3545;color:#fff}.control-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.file-upload{position:relative}.upload-label{border:2px dashed #2b5876;border-radius:12px;color:#2b5876;cursor:pointer;display:inline-block;padding:12px 24px;transition:all .3s ease}.upload-label:hover{background:#2b58760d}.file-input{height:.1px;opacity:0;overflow:hidden;position:absolute;width:.1px;z-index:-1}.audio-preview{border-radius:12px;box-shadow:0 2px 4px #0000000d;margin-top:20px;padding:20px}.audio-preview audio{margin-bottom:20px}.process-button{background:linear-gradient(135deg,#2b5876,#4e4376);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:18px;font-weight:600;padding:16px 32px;transition:all .3s ease;width:100%}.process-button:hover{box-shadow:0 5px 15px #4e437633;transform:translateY(-2px)}.process-button:disabled{background:#e1e1e1;box-shadow:none;cursor:not-allowed;transform:none}.error-message{background-color:#dc35451a;border-radius:12px;color:#dc3545;margin:20px 0;padding:15px}.processing-indicator{margin:30px 0}.processing-steps{display:flex;flex-direction:column;gap:20px}.step{align-items:center;background:#f8f9fa;border-radius:12px;color:#2b5876;display:flex;font-weight:500;gap:12px;padding:15px}.spinner{animation:spin 1s linear infinite;border:3px solid #4e43761a;border-radius:50%;border-top-color:#4e4376;height:24px;width:24px}.transcription-box{background:#f8f9fa;border-radius:12px;line-height:1.6;max-height:300px;overflow-y:auto;padding:20px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse-button{0%{box-shadow:0 0 0 0 #dc354566}70%{box-shadow:0 0 0 10px #dc354500}to{box-shadow:0 0 0 0 #dc354500}}@media (max-width:768px){.audio-soap-note{padding:20px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.page-header h1{font-size:2rem}.note-card{padding:20px}.recording-controls{align-items:stretch;flex-direction:column}.control-button,.upload-label{text-align:center;width:100%}.process-button{font-size:16px;padding:12px 24px}}.soap-note-box{background:#f8f9fa;border-radius:12px;margin-top:20px;padding:20px}.soap-section{margin-bottom:25px}.soap-section:last-child{margin-bottom:0}.soap-section h3{border-bottom:2px solid #2b58761a;color:#2b5876;font-size:1.2rem;margin-bottom:10px;padding-bottom:5px}.soap-section p{color:#4a4a4a;white-space:pre-wrap}.audio-quality-monitor{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:1rem 0;padding:1rem}.audio-level-display{align-items:center;display:flex;gap:1rem;margin-bottom:.5rem}.audio-level-bar{background:#e9ecef;position:relative}.audio-level-fill{background:linear-gradient(90deg,#28a745,#ffc107 70%,#dc3545 90%)}.audio-level-text{color:#495057;font-size:.875rem;font-weight:500;min-width:60px;text-align:right}.quality-warnings{margin-top:.5rem}.quality-warning{align-items:center;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.25rem;padding:.5rem}.quality-warning:last-child{margin-bottom:0}.quality-warning-icon{color:#f39c12;height:16px;width:16px}.status-indicator{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;gap:1rem;margin-bottom:1rem;padding:1rem}.status-indicator.recording{background:#fff5f5;border-color:#fed7d7}.dot{background:#6c757d;border-radius:50%;height:12px;transition:all .3s ease;width:12px}.dot.recording{animation:pulse 1.5s infinite;background:#dc3545}.timer{color:#dc3545;font-family:Courier New,monospace;font-size:1.1rem;font-weight:700}.recording-tips{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:8px;color:#0056b3;font-size:.875rem;margin-top:1rem;padding:1rem}.recording-tips h4{color:#0056b3;font-size:1rem;margin:0 0 .5rem}.recording-tips ul{margin:0;padding-left:1.2rem}.recording-tips li{margin-bottom:.25rem}.soap-note-page{margin:0 auto;max-width:1000px;padding:2rem}.page-header{border-bottom:2px solid #e0e0e0;display:flex;flex-direction:column;gap:10px;margin-bottom:20px;padding-bottom:20px}.header-controls{gap:20px}.language-selector label{color:#333;font-size:14px;font-weight:500}.language-dropdown{background:#fff;border:2px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s ease}.language-dropdown:hover{border-color:#007bff}.language-dropdown:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.language-info{border-radius:8px;font-size:14px;margin:10px 0;padding:12px 16px}.medical-info{background:linear-gradient(135deg,#e8f5e8,#f0f8f0);border-left:4px solid #28a745;color:#155724}.english-info{background:linear-gradient(135deg,#e8f0ff,#f0f4ff);border-left:4px solid #007bff;color:#004085}.language-info strong{color:inherit;font-weight:600}.shortcut-help-button{background:#f8f9fa;border:2px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .2s ease}.shortcut-help-button:hover{background:#e9ecef;border-color:#007bff}.shortcut-help{animation:slideDown .3s ease-out;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000001a}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.shortcut-help h3{color:#495057;font-size:18px}.shortcut-help li{border-bottom:1px solid #f8f9fa}.shortcut-help li:last-child{border-bottom:none}.shortcut-help kbd{background:#f8f9fa;border:1px solid #dee2e6;box-shadow:0 1px 2px #0000001a;color:#495057;font-family:Courier New,monospace;font-size:12px;font-weight:500;min-width:120px}.shortcut-help button{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background .2s}.shortcut-help button:hover{background:#545b62}.soap-form{border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:24px}.patient-info-section{border-bottom:1px solid #e9ecef;margin-bottom:24px;padding-bottom:24px}.form-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:16px}.form-group{gap:6px}.form-group label{color:#495057;font-size:14px}.form-group input,.form-group select{border:1px solid #ced4da;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.notes-section{margin-bottom:24px}.notes-section textarea{border:1px solid #ced4da;border-radius:6px;font-family:inherit;font-size:14px;min-height:150px;padding:12px;resize:vertical;transition:border-color .2s,box-shadow .2s;width:100%}.notes-section textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-actions{justify-content:center}.submit-button{background:#007bff;border-radius:6px;font-size:16px;font-weight:500;transition:background .2s}.submit-button:hover:not(:disabled){background:#0056b3}.submit-button:disabled{background:#6c757d}.soap-result{border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:20px;padding:24px}.soap-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:16px}.soap-section h3{color:#495057;font-size:16px}.soap-section p{color:#212529;line-height:1.6;margin:0}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column;gap:12px}.shortcut-help-button{align-self:flex-end}.form-grid,.soap-sections{grid-template-columns:1fr}}.template-manager{margin:0 auto;max-width:1200px;padding:20px}.template-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.template-header h2{color:#2c3e50;font-size:24px;margin:0}.add-template-button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .2s}.add-template-button:hover:not(:disabled){background-color:#2980b9}.add-template-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.error-message{align-items:center;background-color:#fff3f3;border:1px solid #e74c3c;border-radius:4px;display:flex;justify-content:space-between}.error-message p{color:#c0392b;margin:0}.error-message button{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px;transition:background-color .2s}.error-message button:hover{background-color:#c0392b}.template-form{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:24px;padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#2c3e50;display:block;margin-bottom:8px}.form-group input,.form-group textarea{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:10px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#3498db;outline:none}.form-group textarea{min-height:120px;resize:vertical}.format-input-container{position:relative}.upload-button{margin-top:8px}.upload-button button{background-color:#2ecc71;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.upload-button button:hover:not(:disabled){background-color:#27ae60}.upload-button button:disabled{background-color:#bdc3c7;cursor:not-allowed}.form-actions{gap:12px;margin-top:24px}.form-actions button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s}.form-actions button[type=submit]{background-color:#3498db;color:#fff}.form-actions button[type=submit]:hover:not(:disabled){background-color:#2980b9}.form-actions button[type=submit]:disabled{background-color:#bdc3c7;cursor:not-allowed}.form-actions button[type=button]{background-color:#e74c3c;color:#fff}.form-actions button[type=button]:hover{background-color:#c0392b}.templates-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.template-item{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;padding:16px;transition:all .2s}.template-item:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.template-item h3{color:#2c3e50;font-size:18px;margin:0 0 12px}.template-preview{color:#34495e;font-size:14px;line-height:1.5;margin:0 0 12px}.template-meta{color:#7f8c8d;display:flex;font-size:12px;justify-content:space-between}.loading,.no-templates{color:#7f8c8d;font-size:16px;padding:40px;text-align:center}.no-templates{background-color:#f8f9fa;border:1px dashed #ced4da;border-radius:8px}.specialty-selector{margin-bottom:20px}.specialty-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.specialty-label{color:#374151;font-size:14px;font-weight:600}.initialize-templates-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:6px 12px;transition:background-color .2s}.initialize-templates-btn:hover:not(:disabled){background:#2563eb}.initialize-templates-btn:disabled{cursor:not-allowed;opacity:.6}.specialty-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;padding:12px;transition:border-color .2s;width:100%}.specialty-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.specialty-select:disabled{background:#f9fafb;cursor:not-allowed}.specialty-description{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;margin-top:15px;padding:15px}.specialty-description h4{color:#1f2937;font-size:16px;margin:0 0 8px}.specialty-description p{color:#6b7280;font-size:14px;line-height:1.5;margin:0 0 10px}.template-status{align-items:center;display:flex}.status-available{color:#059669;font-size:14px;font-weight:500}.status-missing{color:#d97706;font-size:14px;font-weight:500}.personalization-dashboard{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 8px 32px #667eea4d;color:#fff;margin:20px 0;padding:24px}.personalization-dashboard.error,.personalization-dashboard.loading{padding:40px;text-align:center}.dashboard-header{margin-bottom:24px;text-align:center}.dashboard-header h3{font-size:1.5rem;font-weight:700;margin:0 0 8px}.dashboard-header p{font-size:.95rem;margin:0;opacity:.9}.error-message{background:#f4433633;border:1px solid #f443364d;margin-bottom:20px;padding:12px;text-align:center}.status-overview{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:24px}.status-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;display:flex;gap:12px;padding:16px;transition:transform .2s ease}.status-card:hover{transform:translateY(-2px)}.status-icon{font-size:2rem}.status-info h4{font-size:.85rem;font-weight:600;margin:0 0 4px;opacity:.8}.status-number{font-size:1.5rem;font-weight:700;margin:0}.status-ready.ready{color:#4caf50;font-weight:600}.status-ready.not-ready{color:#ff9800;font-weight:600}.status-time{font-size:.9rem;margin:0;opacity:.9}.pattern-breakdown{margin-bottom:24px}.pattern-breakdown h4{font-size:1.1rem;font-weight:600;margin:0 0 16px}.pattern-categories{grid-gap:12px;display:grid;gap:12px}.pattern-category{grid-gap:12px;align-items:center;background:#ffffff1a;border-radius:8px;display:grid;gap:12px;grid-template-columns:1fr auto 100px;padding:12px 16px}.category-name{font-size:.9rem;font-weight:500}.category-count{font-size:.85rem;font-weight:600;opacity:.8}.category-bar{background:#fff3;border-radius:3px;height:6px;overflow:hidden}.category-progress{background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:3px;height:100%;transition:width .3s ease}.action-section{text-align:center}.generate-button{align-items:center;background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:8px;margin-bottom:20px;min-height:56px;padding:16px 32px;transition:all .3s ease}.generate-button:hover:not(:disabled){box-shadow:0 8px 25px #4caf504d;transform:translateY(-2px)}.generate-button.disabled{background:#fff3}.generate-button.disabled,.generate-button:disabled{cursor:not-allowed;opacity:.7}.learning-tip{background:#ffffff1a;border-radius:12px;margin:0 auto;max-width:500px;padding:20px;text-align:left}.learning-tip h5{font-size:1rem;font-weight:600;margin:0 0 12px}.learning-tip ul{margin:0;padding-left:20px}.learning-tip li{font-size:.9rem;line-height:1.4;margin-bottom:8px;opacity:.9}.learning-tip li:last-child{margin-bottom:0}@media (max-width:768px){.personalization-dashboard{margin:15px 0;padding:16px}.status-overview{gap:12px;grid-template-columns:1fr}.status-card{padding:12px}.pattern-category{gap:8px;grid-template-columns:1fr;text-align:center}.category-bar{width:100%}.generate-button{font-size:.9rem;padding:14px 24px}.learning-tip{padding:16px}}.realtime-ai-assistant{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;max-height:600px;overflow:hidden;transition:all .3s ease}.realtime-ai-assistant:hover{box-shadow:0 8px 30px #0000001f}.assistant-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:16px 20px}.assistant-title{align-items:center;color:#1e293b;display:flex;gap:8px}.assistant-icon{animation:pulse 2s infinite;font-size:1.2rem}.assistant-title h3{font-size:1rem;font-weight:600;margin:0}.assistant-controls{align-items:center;display:flex;gap:12px}.mode-switch{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:.85rem;gap:6px}.mode-switch input[type=checkbox]{-webkit-appearance:none;appearance:none;border:2px solid #cbd5e1;border-radius:3px;cursor:pointer;height:16px;position:relative;transition:all .2s ease;width:16px}.mode-switch input[type=checkbox]:checked{background:#3b82f6;border-color:#3b82f6}.mode-switch input[type=checkbox]:checked:after{color:#fff;content:"✓";font-size:12px;font-weight:700;left:1px;position:absolute;top:-2px}.analyze-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;padding:6px 12px;transition:all .2s ease}.analyze-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.analyze-btn:disabled{cursor:not-allowed;opacity:.6}.suggestions-container{flex:1 1;max-height:500px;overflow-y:auto;padding:16px}.no-suggestions{color:#64748b;padding:32px 16px;text-align:center}.no-suggestions p{font-size:.95rem;margin:0 0 16px}.help-tips{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.help-tips li{background:#f8fafc;border-left:3px solid #e2e8f0;border-radius:8px;font-size:.85rem;padding:8px 12px}.suggestion-card{background:linear-gradient(135deg,#fefefe,#f8fafc);border:1px solid #e2e8f0;border-radius:12px;margin-bottom:12px;overflow:hidden;padding:16px;position:relative;transition:all .3s ease}.suggestion-card:hover{border-color:#cbd5e1;box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.suggestion-card:before{background:linear-gradient(135deg,#3b82f6,#1d4ed8);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.suggestion-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.suggestion-type{align-items:center;display:flex;gap:8px}.suggestion-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));font-size:1.1rem}.suggestion-title{color:#1e293b;font-size:.9rem;font-weight:600}.confidence-indicator{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 8px;text-shadow:0 1px 2px #0000001a}.suggestion-content{background:#fff;border:1px solid #f1f5f9;border-radius:8px;color:#374151;font-size:.9rem;line-height:1.5;margin-bottom:12px;padding:12px;white-space:pre-wrap}.suggestion-actions{display:flex;gap:8px;justify-content:flex-end}.apply-btn,.dismiss-btn{border:none;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 12px;transition:all .2s ease}.apply-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.apply-btn:hover{box-shadow:0 3px 10px #10b9814d;transform:translateY(-1px)}.dismiss-btn{background:#f8fafc;border:1px solid #e2e8f0;color:#64748b}.dismiss-btn:hover{background:#f1f5f9;color:#475569}.analyzing-indicator{align-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);border-top:1px solid #e2e8f0;color:#1e40af;display:flex;font-size:.85rem;font-weight:500;gap:8px;padding:12px 20px}.suggestions-container::-webkit-scrollbar{width:6px}.suggestions-container::-webkit-scrollbar-track{background:#f8fafc;border-radius:3px}.suggestions-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.suggestions-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.realtime-ai-assistant{max-height:400px}.assistant-header{padding:12px 16px}.suggestions-container{max-height:300px;padding:12px}.suggestion-card{padding:12px}.suggestion-actions{flex-direction:column}.apply-btn,.dismiss-btn{padding:8px 12px;width:100%}.assistant-controls{align-items:flex-end;flex-direction:column;gap:8px}}@media (max-width:480px){.realtime-ai-assistant{border-radius:12px;max-height:350px}.assistant-title h3{font-size:.9rem}.suggestion-content{font-size:.85rem;padding:10px}.help-tips li{font-size:.8rem;padding:6px 10px}}.unified-soap-note-page{background:linear-gradient(135deg,#f8fafc,#e2e8f0);margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.page-header{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:24px;padding:24px}.header-main{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.header-main h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:1.8rem;font-weight:700;margin:0}.progress-indicator{display:flex;gap:12px}.progress-indicator .step{background:#f1f5f9;border-radius:20px;color:#64748b;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.progress-indicator .step.active{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;transform:scale(1.05)}.progress-indicator .step.completed{background:#10b981;color:#fff}.header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.method-switch{background:#f1f5f9;border-radius:12px;display:flex;gap:4px;padding:4px}.method-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 16px;transition:all .3s ease}.method-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#3b82f6}.method-btn:hover:not(.active){background:#ffffffb3}.language-selector{align-items:center;color:#64748b;display:flex;font-size:.9rem;gap:8px}.language-selector select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#334155;cursor:pointer;padding:8px 12px;transition:border-color .3s ease}.language-selector select:focus{border-color:#3b82f6;outline:none}.tool-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:1rem;padding:10px;transition:all .3s ease}.tool-btn:hover{background:#3b82f60d;border-color:#3b82f6}.tool-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626}.error-message,.success-message{font-weight:500;margin-bottom:16px;padding:12px 16px}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#16a34a}.shortcut-help{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:20px;padding:20px}.shortcut-help h3{color:#1e293b;font-size:1.1rem;margin:0 0 16px}.shortcut-help ul{list-style:none;margin:0 0 16px;padding:0}.shortcut-help li{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:12px;padding:8px 0}.shortcut-help kbd{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;color:#475569;font-family:monospace;font-size:.85rem;min-width:80px;padding:4px 8px;text-align:center}.main-content{grid-gap:24px;display:grid;gap:24px}.content-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 350px}.form-section{min-width:0}.ai-assistant-sidebar{max-height:calc(100vh - 40px);overflow:hidden;position:sticky;top:20px}.soap-form{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:32px}.patient-info-section h2{border-bottom:2px solid #f1f5f9;color:#1e293b;font-size:1.3rem;font-weight:600;margin:0 0 20px;padding-bottom:12px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#374151;font-size:.9rem;font-weight:500}.form-group input,.form-group select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:12px 16px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.notes-section h2{border-bottom:2px solid #f1f5f9;color:#1e293b;font-size:1.3rem;font-weight:600;margin:0 0 20px;padding-bottom:12px}.voice-input-panel{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;margin-bottom:20px;padding:24px}.voice-controls{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.record-button{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;overflow:hidden;padding:12px 24px;position:relative;transition:all .3s ease}.record-button:not(.recording){background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.record-button.recording{animation:pulse 2s infinite;background:linear-gradient(135deg,#10b981,#059669);color:#fff}.recording-pulse{animation:recording-blink 1s infinite;background:#fef2f2;border-radius:50%;height:8px;left:12px;position:absolute;top:50%;transform:translateY(-50%);width:8px}@keyframes recording-blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.upload-button{background:#fff;border:2px solid #3b82f6;border-radius:10px;color:#3b82f6;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 20px;transition:all .3s ease}.upload-button:hover{background:#3b82f60d}.audio-monitoring{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.audio-level-container{align-items:center;display:flex;gap:12px;margin-bottom:12px}.audio-level-label{color:#64748b;font-size:.9rem;min-width:80px}.audio-level-bar{background:#e2e8f0;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.audio-level-fill{background:linear-gradient(90deg,#10b981,#eab308 70%,#ef4444);border-radius:4px;height:100%;transition:width .1s ease}.audio-level-value{color:#64748b;font-size:.9rem;min-width:40px;text-align:right}.quality-warnings{display:flex;flex-direction:column;gap:8px}.quality-warnings .warning{background:#fef3c7;border:1px solid #fbbf24;border-radius:6px;color:#d97706;font-size:.85rem;padding:8px 12px}.audio-preview{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px;padding:16px}.audio-preview h4{color:#374151;font-size:1rem;margin:0 0 12px}.audio-preview audio{height:40px;width:100%}.text-input-container{position:relative}.notes-textarea{border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:1rem;line-height:1.6;min-height:200px;padding:16px;resize:vertical;transition:all .3s ease;width:100%}.notes-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.transcription-info{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#16a34a;font-size:.9rem;font-weight:500;margin-top:12px;padding:12px 16px}.form-actions{border-top:2px solid #f1f5f9;display:flex;gap:16px;justify-content:flex-end;margin-top:32px;padding-top:20px}.clear-button{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .3s ease}.clear-button:hover:not(:disabled){background:#ef44440d;border-color:#ef4444;color:#ef4444}.submit-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 32px;transition:all .3s ease}.submit-button:hover:not(:disabled){box-shadow:0 8px 25px #3b82f64d;transform:translateY(-2px)}.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.soap-result{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:32px}.result-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.result-header h2{color:#1e293b;font-size:1.4rem;font-weight:600;margin:0}.result-actions{display:flex;gap:12px}.save-button,.view-all-button{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .3s ease}.save-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.save-button:hover:not(:disabled){box-shadow:0 4px 15px #10b9814d;transform:translateY(-1px)}.view-all-button{background:#fff;border:2px solid #3b82f6;color:#3b82f6}.view-all-button:hover{background:#3b82f60d}.soap-sections{grid-gap:20px;display:grid;gap:20px}.soap-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-left:4px solid;border-radius:12px;overflow:hidden;padding:20px;position:relative}.soap-section.subjective{border-left-color:#3b82f6}.soap-section.objective{border-left-color:#10b981}.soap-section.assessment{border-left-color:#f59e0b}.soap-section.plan{border-left-color:#ef4444}.soap-section h3{align-items:center;color:#1e293b;display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0 0 12px}.soap-content{color:#374151;font-size:1rem;line-height:1.7;white-space:pre-wrap}@media (max-width:1024px){.content-layout{gap:20px;grid-template-columns:1fr 300px}.ai-assistant-sidebar{max-height:500px;position:static}}@media (max-width:768px){.unified-soap-note-page{padding:16px}.header-main{align-items:stretch;flex-direction:column;gap:16px}.header-controls{flex-wrap:wrap;justify-content:center}.content-layout{gap:16px;grid-template-columns:1fr}.ai-assistant-sidebar{max-height:400px;order:2;position:static}.form-section{order:1}.form-grid{grid-template-columns:1fr}.voice-controls{flex-direction:column}.record-button,.upload-button{justify-content:center;width:100%}.form-actions{flex-direction:column}.clear-button,.submit-button{justify-content:center;width:100%}.result-header{align-items:stretch;flex-direction:column;gap:16px}.result-actions{justify-content:center}}@media (max-width:480px){.soap-form{padding:20px}.voice-input-panel{padding:16px}.soap-result{padding:20px}.method-switch{width:100%}.method-btn{flex:1 1}}
/*# sourceMappingURL=main.3cdde676.css.map*/