body{height:100vh;overflow:hidden;padding-top:80px;padding-bottom:50px}main{max-width:100%;margin:0;padding:0;display:flex;flex-direction:column;flex:1;overflow:hidden}.toolbar{background:var(--gray-200);padding:5px 10px;display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--border-color);flex-wrap:wrap}.toolbar button{font-size:.8rem;padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap}.toolbar button.active{filter:brightness(.85);box-shadow:inset 0 2px 4px #0003}.dropdown{position:relative;display:inline-block}.dropdown-toggle{display:inline-flex;align-items:center;gap:6px}.dropdown-toggle .fa-caret-down{font-size:.75rem;transition:transform .2s ease}.dropdown-toggle[aria-expanded=true] .fa-caret-down{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;margin-top:4px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);box-shadow:var(--box-shadow-md);min-width:130px;z-index:1050;display:none;flex-direction:column;padding:4px 0;overflow:hidden}.dropdown-menu.show{display:flex}.dropdown-item{background:transparent!important;border:none!important;border-radius:0!important;color:var(--text-color)!important;padding:8px 14px!important;text-align:left;width:100%;font-size:.82rem!important;display:flex!important;align-items:center;gap:8px;cursor:pointer;box-shadow:none!important;filter:none!important;transition:background-color .15s ease}.dropdown-item:hover,.dropdown-item:focus{background:var(--gray-200)!important;outline:none}body.dark-theme .dropdown-item:hover,body.dark-theme .dropdown-item:focus{background:var(--gray-300)!important}.tabs-bar-row{display:flex;align-items:stretch;background:var(--gray-300);border-bottom:1px solid var(--border-color);flex-shrink:0}.tabs-container{flex:1;display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;min-width:0}.tabs-container::-webkit-scrollbar{display:none}.tab-scroll-btn{background:var(--gray-300);color:var(--gray-700);border:none;border-right:1px solid var(--border-color);border-radius:0;padding:0 10px;font-size:.85rem;font-weight:700;flex-shrink:0;cursor:pointer;display:none;align-items:center;justify-content:center;transition:var(--transition)}.tab-scroll-btn:last-of-type{border-right:none;border-left:1px solid var(--border-color)}.tab-scroll-btn:hover{background:var(--gray-400)}.tab-scroll-btn:disabled{opacity:.35;cursor:not-allowed}.tab-new-btn{background:var(--gray-300);color:var(--gray-700);border:none;border-left:1px solid var(--border-color);border-radius:0;padding:0 14px;font-size:1.2rem;font-weight:400;line-height:1;flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.tab-new-btn:hover{background:var(--gray-400);color:var(--primary)}.tab{padding:8px 15px;background:var(--gray-400);border:1px solid var(--border-color);cursor:pointer;display:flex;align-items:center;gap:8px;min-width:100px;user-select:none;font-size:.85rem;color:var(--text-color);transition:var(--transition)}.tab:hover{background:var(--gray-300)}.tab.active{background:var(--card-bg);border-bottom-color:var(--card-bg)}.tab-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.close-tab{color:var(--gray-500);font-weight:700;font-size:1.1em;line-height:1;flex-shrink:0}.close-tab:hover{color:var(--danger)}#autosave-indicator{margin-left:auto;font-size:.78rem;color:var(--success);opacity:0;transition:opacity .3s ease;pointer-events:none;white-space:nowrap}#autosave-indicator.visible{opacity:1}#autosave-indicator.error{color:var(--danger)}.toolbar-sep{width:1px;height:20px;background:var(--border-color);flex-shrink:0}.editor-container{display:flex;flex:1;overflow:hidden}.pane{flex:1;display:flex;flex-direction:column;padding:10px;min-width:0}.editor-wrapper{display:flex;flex:1;position:relative;overflow:hidden;border:1px solid var(--border-color);background:var(--card-bg);border-radius:var(--border-radius-sm)}#line-numbers{background:var(--gray-200);color:var(--gray-500);padding:15px 8px;text-align:right;font-family:Courier New,Courier,monospace;font-size:14px;line-height:1.5;min-width:40px;flex-shrink:0;border-right:1px solid var(--border-color);user-select:none;overflow:hidden;display:none;box-sizing:border-box}#editor-input{flex:1;resize:none;min-height:0;border:none;padding:15px;font-family:Courier New,Courier,monospace;font-size:14px;line-height:1.5;white-space:pre;overflow-x:auto;box-sizing:border-box;background:var(--card-bg);color:var(--text-color);caret-color:var(--primary);border-radius:0}#editor-input:focus{outline:none;box-shadow:none}#editor-input.wrap-enabled{white-space:pre-wrap;overflow-x:hidden}#preview-output,.markdown-body{flex:1;border:1px solid var(--border-color);padding:15px;background:var(--card-bg);overflow-y:auto;border-radius:var(--border-radius-sm);color:var(--text-color)}#preview-output code,.markdown-body code{background-color:var(--gray-200);padding:2px 4px;border-radius:4px;font-family:monospace}#preview-output pre,.markdown-body pre{background-color:var(--gray-100);padding:16px;border-radius:6px;overflow:auto;margin-bottom:var(--spacing-md)}#preview-output pre code,.markdown-body pre code{background-color:transparent;padding:0;border-radius:0}#preview-output ol,#preview-output ul,.markdown-body ol,.markdown-body ul{padding-left:2rem;margin-bottom:var(--spacing-md)}#preview-output ol,.markdown-body ol{list-style-type:decimal}#preview-output ul,.markdown-body ul{list-style-type:disc}#preview-output ol ol,#preview-output ul ol,.markdown-body ol ol,.markdown-body ul ol{list-style-type:lower-roman}#preview-output ul ul,#preview-output ol ul,.markdown-body ul ul,.markdown-body ol ul{list-style-type:circle}#preview-output li,.markdown-body li{margin-bottom:4px;line-height:1.6}#preview-output li>p,.markdown-body li>p{margin-bottom:4px}#preview-output li:has(input[type=checkbox]),.markdown-body li:has(input[type=checkbox]){list-style:none;margin-left:-1.2rem}#preview-output input[type=checkbox],.markdown-body input[type=checkbox]{margin-right:5px}#preview-output blockquote,.markdown-body blockquote{padding:0 1rem;color:var(--text-muted);border-left:4px solid var(--border-color);margin-bottom:var(--spacing-md)}#preview-output hr,.markdown-body hr{height:1px;border:none;background-color:var(--border-color);margin:var(--spacing-lg) 0}#preview-output table,.markdown-body table{border-collapse:collapse;width:100%;margin-bottom:var(--spacing-md)}#preview-output table th,#preview-output table td,.markdown-body table th,.markdown-body table td{padding:8px 12px;border:1px solid var(--border-color)}#preview-output table th,.markdown-body table th{background-color:var(--gray-200);font-weight:600}#preview-output table tr:nth-child(2n),.markdown-body table tr:nth-child(2n){background-color:var(--gray-100)}.modal-content .form-group-inline{display:flex;gap:10px;align-items:center;margin-top:10px}.modal-content .form-group-inline label{display:inline;margin-bottom:0}.modal-content .form-group-inline input[type=text]{width:40px;text-align:center;padding:var(--spacing-xs)}.grid-table-wrapper{max-height:300px;overflow:auto;border:1px solid var(--border-color);margin-bottom:10px;border-radius:var(--border-radius-sm)}.grid-table{width:100%;border-collapse:collapse}.grid-table td{border:1px solid var(--border-color);padding:0;min-width:50px}.grid-table input{width:100%;border:none;padding:8px;box-sizing:border-box;font-family:inherit;background:var(--card-bg);color:var(--text-color);border-radius:0}.grid-table input:focus{background:var(--gray-200);outline:none;box-shadow:none}#font-family-custom{margin-top:var(--spacing-xs)}.modal-content.modal-print{max-width:860px;width:95%;max-height:92vh;display:flex;flex-direction:column;padding:var(--spacing-lg)}.modal-content.modal-print h2{display:flex;align-items:center;gap:10px;margin-bottom:var(--spacing-sm)}.print-dialog-body{display:flex;flex-direction:column;gap:14px;flex:1;min-height:0}.print-dialog-controls{display:flex;gap:16px;flex-wrap:wrap;align-items:center;background:var(--gray-100);padding:10px 16px;border-radius:var(--border-radius-sm);border:1px solid var(--border-color)}body.dark-theme .print-dialog-controls{background:var(--gray-200)}.print-control-group{display:flex;align-items:center;gap:8px}.print-control-group label{font-size:.85rem;font-weight:600;color:var(--text-color);display:flex;align-items:center;gap:5px;margin-bottom:0;white-space:nowrap}.print-control-group select{padding:4px 8px;font-size:.85rem;border-radius:var(--border-radius-sm);border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color)}.print-preview-viewport{background:#4a4d50;border-radius:var(--border-radius-sm);padding:24px 16px;overflow-y:auto;max-height:48vh;display:flex;justify-content:center;align-items:flex-start;box-shadow:inset 0 2px 6px #0000004d}.print-preview-sheet{background:#fff!important;color:#212529!important;box-shadow:0 4px 16px #0006;border-radius:2px;transition:width .2s ease,min-height .2s ease,padding .2s ease;box-sizing:border-box}.print-preview-sheet.size-letter.orientation-portrait{width:520px;min-height:673px}.print-preview-sheet.size-letter.orientation-landscape{width:673px;min-height:520px}.print-preview-sheet.size-a4.orientation-portrait{width:500px;min-height:707px}.print-preview-sheet.size-a4.orientation-landscape{width:707px;min-height:500px}.print-preview-sheet.margins-normal{padding:36px 40px}.print-preview-sheet.margins-narrow{padding:20px 22px}.print-preview-sheet .markdown-body{background:transparent!important;color:#212529!important;border:none!important;padding:0!important;font-size:13px!important;line-height:1.5!important}.print-preview-sheet .markdown-body h1,.print-preview-sheet .markdown-body h2,.print-preview-sheet .markdown-body h3,.print-preview-sheet .markdown-body h4,.print-preview-sheet .markdown-body h5,.print-preview-sheet .markdown-body h6{color:#212529!important}.print-preview-sheet .markdown-body table th{background-color:#f1f3f5!important;color:#212529!important}.print-preview-sheet .markdown-body table tr:nth-child(2n){background-color:#f8f9fa!important}.print-preview-sheet .markdown-body code{background-color:#e9ecef!important;color:#212529!important}.print-preview-sheet .markdown-body pre{background-color:#f8f9fa!important;border:1px solid #dee2e6}.print-preview-sheet .markdown-body pre code{background-color:transparent!important}.print-preview-sheet .markdown-body blockquote{border-left:4px solid #ced4da!important;color:#495057!important}.print-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.popout-header{background:var(--gray-200);border-bottom:1px solid var(--border-color);padding:8px 16px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}body.dark-theme .popout-header{background:var(--gray-300)}.popout-title-row{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.95rem;color:var(--text-color)}.popout-actions{display:flex;align-items:center;gap:8px}.popout-btn{background:var(--primary);color:#fff;border:none;padding:5px 12px;font-size:.82rem;font-weight:500;border-radius:var(--border-radius-sm);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background-color .15s ease}.popout-btn:hover{background:var(--primary-hover)}@media print{.popout-header,.modal,header,footer,.toolbar,.tabs-bar-row,.pane:first-child,#autosave-indicator{display:none!important}}body.dark-theme #editor-input{caret-color:#fff}body.dark-theme #preview-output code,body.dark-theme .markdown-body code{background-color:var(--gray-300)}body.dark-theme #preview-output pre,body.dark-theme .markdown-body pre{background-color:var(--gray-200)}body.dark-theme #preview-output table th,body.dark-theme .markdown-body table th{background-color:var(--gray-300)}body.dark-theme #preview-output table tr:nth-child(2n),body.dark-theme .markdown-body table tr:nth-child(2n){background-color:var(--gray-200)}body.dark-theme .grid-table input:focus{background:var(--gray-300)}@media (max-width: 768px){body{padding-top:110px}.editor-container{flex-direction:column}.pane{padding:5px}.toolbar{padding:4px 8px;gap:4px}.toolbar button{font-size:.75rem;padding:3px 6px}}@media (max-width: 480px){body{padding-top:120px}.toolbar button span.btn-label{display:none}.dropdown-menu .dropdown-item span.btn-label{display:inline!important}}
