.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}html{scroll-behavior:smooth}:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#555}.notification{position:fixed;bottom:20px;right:20px;min-width:300px;max-width:500px;padding:16px;border-radius:8px;box-shadow:0 10px 15px -3px rgba(0,0,0,.1);background:#fff;z-index:9999;animation:slideIn .3s ease-out;transition:bottom .3s ease}.notification.notification-success{border-left:4px solid #10b981}.notification.notification-error{border-left:4px solid #ef4444}.notification.notification-warning{border-left:4px solid #f59e0b}.notification.notification-info{border-left:4px solid #3b82f6}.notification.notification-hiding{animation:slideOut .3s ease-in}@keyframes slideIn{from{transform:translateX(400px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOut{from{transform:translateX(0);opacity:1}to{transform:translateX(400px);opacity:0}}.qa-btn{display:inline-flex;align-items:center;padding:.5rem .875rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.8125rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease;white-space:nowrap;gap:.375rem;line-height:1.25rem}.qa-btn:hover{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.qa-btn:active{background:#dbeafe}.qa-btn i{font-size:.8125rem;width:1rem;text-align:center}.qa-select{padding:.5rem 2rem .5rem .75rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.8125rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease;appearance:auto;line-height:1.25rem}.qa-select:hover{border-color:#bfdbfe;color:#2563eb}.qa-select:focus{outline:2px solid #3b82f6;outline-offset:1px}.qa-check{display:inline-flex;align-items:center;padding:.5rem .75rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.8125rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease;gap:.375rem;line-height:1.25rem}.qa-check:hover{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.qa-check input[type=checkbox]{width:.875rem;height:.875rem;accent-color:#2563eb;cursor:pointer}.qa-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.editor-container{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.CodeMirror{height:auto!important;min-height:400px;font-family:'Fira Code','Courier New',monospace;font-size:14px;line-height:1.6}.CodeMirror-scroll{min-height:400px}.ql-container{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;font-size:14px;line-height:1.6}.ql-editor{min-height:400px;max-height:500px;overflow-y:auto}@media (min-width:1024px){.editor-panel-editor,.editor-panel-preview{min-height:560px}}.ql-toolbar.ql-snow{border:1px solid #e5e7eb!important;border-radius:8px 8px 0 0!important;background:#f9fafb}.ql-container.ql-snow{border:1px solid #e5e7eb!important;border-radius:0 0 8px 8px!important}.dark .ql-toolbar.ql-snow{border-color:#4b5563!important;background:#374151}.dark .ql-toolbar.ql-snow .ql-stroke{stroke:#d1d5db}.dark .ql-toolbar.ql-snow .ql-fill{fill:#d1d5db}.dark .ql-toolbar.ql-snow .ql-picker-label{color:#d1d5db}.dark .ql-toolbar.ql-snow .ql-picker-options{background:#374151;border-color:#4b5563}.dark .ql-toolbar.ql-snow .ql-picker-item{color:#d1d5db}.dark .ql-toolbar.ql-snow .ql-picker-label:hover .ql-stroke,.dark .ql-toolbar.ql-snow button:hover .ql-stroke{stroke:#93c5fd}.dark .ql-toolbar.ql-snow .ql-picker-label:hover .ql-fill,.dark .ql-toolbar.ql-snow button:hover .ql-fill{fill:#93c5fd}.dark .ql-toolbar.ql-snow button.ql-active .ql-stroke{stroke:#60a5fa}.dark .ql-toolbar.ql-snow button.ql-active .ql-fill{fill:#60a5fa}.dark .ql-container.ql-snow{border-color:#4b5563!important;background:#1f2937;color:#e5e7eb}.dark .ql-editor.ql-blank::before{color:#6b7280}.spinner{border:3px solid #f3f3f3;border-top:3px solid #3b82f6;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.editor-loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.8);z-index:10;border-radius:8px}.dark .editor-loading-overlay{background:rgba(17,24,39,.8)}.editor-tab-toggle{display:none}.editor-tab-toggle button{flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:600;border:1px solid #e5e7eb;background:#f9fafb;color:#6b7280;cursor:pointer;transition:all .15s ease}.dark .editor-tab-toggle button{border-color:#4b5563;background:#374151;color:#9ca3af}.editor-tab-toggle button:first-child{border-radius:.5rem 0 0 .5rem}.editor-tab-toggle button:last-child{border-radius:0 .5rem .5rem 0}.editor-tab-toggle button.active{background:#2563eb;border-color:#2563eb;color:#fff}@media print{.no-print,footer,nav{display:none!important}body{background:#fff!important}}@media (max-width:640px){.notification{min-width:auto;left:20px;right:20px}.CodeMirror{min-height:250px}.CodeMirror-scroll{min-height:250px}.qa-btn .btn-label{display:none}.qa-toolbar{gap:.375rem}.qa-btn{padding:.5rem .625rem}.editor-tab-toggle{display:flex}.editor-panel-preview.panel-hidden-mobile{display:none}.editor-panel-editor.panel-hidden-mobile{display:none}}body.cm-fullscreen-active header,body.cm-fullscreen-active nav{display:none!important}.CodeMirror-fullscreen{z-index:99999!important}.dark ::-webkit-scrollbar-track{background:#1f2937}.dark ::-webkit-scrollbar-thumb{background:#4b5563}.dark ::-webkit-scrollbar-thumb:hover{background:#6b7280}.dark .notification{background:#1f2937;box-shadow:0 10px 15px -3px rgba(0,0,0,.3)}.dark .notification p{color:#e5e7eb}.dark .qa-btn{background:#374151;border-color:#4b5563;color:#d1d5db}.dark .qa-btn:hover{background:#1e3a5f;border-color:#3b82f6;color:#93c5fd}.dark .qa-select{background:#374151;border-color:#4b5563;color:#d1d5db}.dark .qa-check{background:#374151;border-color:#4b5563;color:#d1d5db}