.counts{color:#1e3a29;font-family:Nunito Sans,sans-serif;padding:16px 0}.countbox{background:linear-gradient(135deg,#4a7c59,#3d6b4a);border-radius:12px;box-shadow:0 4px 12px #4a7c5933;list-style-type:none;margin:10px 0;max-width:600px;overflow:hidden;padding:16px;text-align:center;width:auto}.countbox li{color:#fff;float:left;font-family:Nunito Sans,sans-serif}.countbox li a{color:#fff;display:block;padding:16px;text-align:center;text-decoration:none;transition:opacity .2s}.countbox li a:hover{opacity:.8}.seq-box{background:#f8faf8;border:2px solid #d4e5d8;border-radius:12px;color:#1e3a29;font-family:Source Code Pro,monospace;font-size:.8em;height:320px;line-height:1.5;max-width:750px;padding:16px;resize:vertical;width:100%}.seq-box:focus{border-color:#4a7c59;outline:none}.seq-box-colored{background:#fafcfa;border:2px solid #d4e5d8;border-radius:12px;height:320px;max-width:750px;overflow:auto;width:100%}.seq-content{font-family:Source Code Pro,monospace;font-size:.8em;line-height:1.6;margin:0;padding:16px}.seq-line{display:flex;gap:0}.seq-name{border-right:1px solid #d4e5d8;color:#1e3a29;margin-right:16px;padding-right:16px;text-align:right}.seq-bases{white-space:nowrap}.nuc-a{color:#c75d4d}.nuc-a,.nuc-t{font-weight:500}.nuc-t{color:#4a8bc7}.nuc-g{color:#d4a12a}.nuc-c,.nuc-g{font-weight:500}.nuc-c{color:#4a7c59}.nuc-gap{color:#b8c4ba}.nuc-n{color:#8a9b8e}.seqview{background:#fff;border-radius:16px;box-shadow:0 4px 20px #1e3a291a;color:#1e3a29;max-width:850px;padding:24px}.seqview h2{color:#1e3a29;margin-bottom:16px}.seqview p{color:#4a6352}.seqview .nav-arrow{background:linear-gradient(135deg,#4a7c59,#3d6b4a);border:none;border-radius:50%;box-shadow:0 2px 8px #4a7c5940;color:#fff;cursor:pointer;font-size:18px;height:36px;margin:5px;padding:0;text-align:center;transition:all .2s ease;width:36px}.seqview .nav-arrow:hover:not(:disabled){box-shadow:0 4px 12px #4a7c5959;transform:translateY(-1px)}.seqview .nav-arrow:active{background:linear-gradient(135deg,#3d6b4a,#2d5a3a);transform:translateY(0)}.seqview .nav-arrow:focus{outline:none}.seqview2{background:#fff;border-radius:16px;box-shadow:0 4px 20px #1e3a291a;color:#1e3a29;max-width:750px;padding:24px}.seqview2 h2{color:#1e3a29;margin-bottom:16px}.seqview2 p{color:#4a6352}.locus-navigator{background:linear-gradient(135deg,#f8faf8,#f0f5f1);border:2px solid #d4e5d8;border-radius:12px;margin-top:16px;padding:16px}.locus-nav-controls{gap:16px}.locus-nav-controls,.nav-arrow{align-items:center;display:flex;justify-content:center}.nav-arrow{background:#fff;border:2px solid #d4e5d8;border-radius:10px;color:#4a7c59;cursor:pointer;font-size:24px;font-weight:600;height:40px;line-height:1;transition:all .2s ease;width:40px}.nav-arrow:hover:not(:disabled){background:#4a7c59;border-color:#4a7c59;color:#fff}.nav-arrow:disabled{cursor:not-allowed;opacity:.4}.locus-selector{align-items:center;display:flex;gap:10px}.locus-dropdown,.locus-label{color:#1e3a29;font-family:Nunito Sans,sans-serif;font-size:.95em;font-weight:600}.locus-dropdown{background:#fff;border:2px solid #d4e5d8;border-radius:8px;cursor:pointer;min-width:60px;padding:8px 12px;text-align:center}.locus-dropdown:focus{border-color:#4a7c59;outline:none}.locus-total{color:#7a9882;font-family:Nunito Sans,sans-serif;font-size:.95em}.locus-stats{border-top:1px solid #e2ebe4;display:flex;gap:24px;justify-content:center;margin-top:12px;padding-top:12px}.stat-item{align-items:center;display:flex;gap:6px}.stat-label{color:#7a9882;font-family:Nunito Sans,sans-serif;font-size:.85em}.stat-value{color:#1e3a29;font-family:Source Code Pro,monospace;font-size:.9em;font-weight:600}.convert-dialog-overlay{align-items:center;background:#1e3a2980;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.convert-dialog{background:#fff;border-radius:16px;box-shadow:0 8px 32px #1e3a2933;max-width:450px;padding:32px;width:90%}.convert-dialog h3{color:#1e3a29;font-size:1.3em;margin:0 0 16px}.convert-dialog p{color:#4a6352;line-height:1.5;margin:0 0 12px}.convert-filename-input{border:2px solid #d4e5d8;border-radius:10px;color:#1e3a29;font-family:Source Code Pro,monospace;font-size:.95em;margin-bottom:20px;padding:12px 16px;width:100%}.convert-filename-input:focus{border-color:#4a7c59;outline:none}.convert-dialog-buttons{display:flex;gap:12px}.convert-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-family:Nunito Sans,sans-serif;font-size:.95em;font-weight:600;padding:12px 20px;transition:all .2s ease}.convert-btn-primary{background:linear-gradient(135deg,#4a7c59,#3d6b4a);box-shadow:0 3px 10px #4a7c594d;color:#fff}.convert-btn-primary:hover{box-shadow:0 5px 15px #4a7c5966;transform:translateY(-2px)}.convert-btn-secondary{background:#f0f4f0;color:#4a6352}.convert-btn-secondary:hover{background:#e2ebe4}.subset-selector{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:12px;margin-top:16px;padding:12px 16px}.subset-label{color:#555;font-size:.9rem;font-weight:500}.subset-dropdown-container{position:relative}.subset-dropdown-trigger{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;gap:8px;min-width:160px;padding:8px 12px;transition:border-color .2s}.subset-dropdown-trigger:hover{border-color:#3498db}.subset-arrow{color:#999;font-size:.7rem;margin-left:auto}.subset-dropdown-menu{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #0000001f;left:0;margin-top:4px;max-width:320px;min-width:280px;position:absolute;top:100%;z-index:100}.subset-mode-tabs{border-bottom:1px solid #eee;display:flex;gap:8px;padding:8px}.subset-mode-tab{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;flex:1 1;font-size:.85rem;padding:6px 12px;transition:all .2s}.subset-mode-tab:hover{background:#f5f5f5}.subset-mode-tab.active{background:#3498db;border-color:#3498db;color:#fff}.subset-select-all{border-bottom:1px solid #eee;padding:8px 12px}.subset-select-all label{align-items:center;cursor:pointer;display:flex;font-size:.85rem;gap:8px}.subset-filter{border-bottom:1px solid #eee;padding:8px 12px}.subset-filter input{border:1px solid #ddd;border-radius:4px;font-size:.85rem;padding:6px 10px;width:100%}.subset-filter input:focus{border-color:#3498db;outline:none}.subset-checkbox-list{max-height:240px;overflow-y:auto;padding:8px 0}.subset-checkbox-item{align-items:center;cursor:pointer;display:flex;font-size:.85rem;gap:8px;padding:6px 12px;transition:background .15s}.subset-checkbox-item:hover{background:#f5f7fa}.subset-checkbox-item input[type=checkbox]{flex-shrink:0}.subset-item-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subset-item-info{color:#999;flex-shrink:0;font-size:.8rem}.subset-selection-badge{background:#e8f4fc;border-radius:12px;color:#2c3e50;font-size:.8rem;padding:4px 10px;white-space:nowrap}.subset-save-btn{background:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:background .2s;white-space:nowrap}.subset-save-btn:hover:not(:disabled){background:#2980b9}.subset-save-btn:disabled{background:#bdc3c7;cursor:not-allowed}.subset-checkbox-list::-webkit-scrollbar{width:6px}.subset-checkbox-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.subset-checkbox-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.subset-checkbox-list::-webkit-scrollbar-thumb:hover{background:#aaa}.error-message{border:1px solid #fecaca;border-radius:6px;color:#b91c1c;display:inline-flex;font-size:.9em;gap:8px;margin:8px 0;padding:8px 12px}.error-banner,.error-message{align-items:center;background-color:#fef2f2}.error-banner{border:1px solid #f87171;border-left:4px solid #dc2626;border-radius:6px;color:#991b1b;display:flex;font-size:.95em;gap:10px;margin:12px 0;padding:12px 16px}.error-icon{align-items:center;background-color:#dc2626;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.85em;font-weight:700;height:20px;justify-content:center;width:20px}.error-text{flex:1 1;line-height:1.4}.error-dismiss{background:none;border:none;color:#991b1b;cursor:pointer;flex-shrink:0;font-size:1.3em;opacity:.7;padding:0 4px;transition:opacity .2s}.error-dismiss:hover{opacity:1}.input-error{background-color:#fef2f2!important;border-color:#f87171!important}.input-error:focus{box-shadow:0 0 0 2px #dc262633;outline-color:#dc2626}.warning-banner{align-items:center;background-color:#fffbeb;border:1px solid #fbbf24;border-left:4px solid #d97706;border-radius:6px;color:#92400e;display:flex;font-size:.95em;gap:10px;margin:12px 0;padding:12px 16px}.warning-icon{align-items:center;background-color:#d97706;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.85em;font-weight:700;height:20px;justify-content:center;width:20px}.warning-text{flex:1 1;line-height:1.4}.warning-dismiss{background:none;border:none;color:#92400e;cursor:pointer;flex-shrink:0;font-size:1.3em;opacity:.7;padding:0 4px;transition:opacity .2s}.warning-dismiss:hover{opacity:1}.mapfile-box{background:#fff;border-radius:16px;box-shadow:0 4px 20px #1e3a291a;color:#1e3a29;max-width:1100px;padding:28px}.mapfile-box h2{color:#1e3a29;margin-bottom:8px}.mapfile-box p{color:#4a6352;margin-bottom:20px}.col1{background:linear-gradient(135deg,#f8faf8,#f0f5f1);border:2px solid #d4e5d8;border-radius:12px;flex:none;height:auto;min-height:auto;padding:16px;width:auto}.col1 input{border:2px solid #d4e5d8;border-radius:8px;font-family:Nunito Sans,sans-serif;font-size:.9em;padding:8px 12px;transition:border-color .2s;width:120px}.col1 input:focus{border-color:#4a7c59;outline:none}.col1 form{margin-bottom:8px;padding:0}.col2,.col3{background-color:initial;flex:none;padding:0;text-align:left}.col2,.col3,.title{height:auto;width:auto}.title{padding:0 0 8px}.title p{color:#1e3a29;font-size:.95em;font-weight:600;margin:0}.smallButton{background:linear-gradient(135deg,#4a7c59,#3d6b4a);border:none;border-radius:8px;box-shadow:0 2px 8px #4a7c5940;color:#fff;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:.85em;font-weight:600;padding:8px 16px;transition:all .2s ease}.smallButton:hover{box-shadow:0 4px 12px #4a7c5959;transform:translateY(-1px)}.smallButton:active{transform:translateY(0)}.smallButton:disabled{background:#a8c4ae;box-shadow:none;cursor:not-allowed;transform:none}.flex-box{flex-grow:1}.map-box{border:0;flex:none;padding:0;width:auto}.map-box ul{list-style:none;margin:0;padding-left:0}dl{background:linear-gradient(135deg,#f8faf8,#f0f5f1);border:2px solid #d4e5d8;border-radius:10px;color:#1e3a29;font-family:Source Code Pro,monospace;font-size:.8em;margin:12px 0 0;max-height:200px;overflow-y:auto;padding:12px}.text-unmapped{width:160px}.text-mapped,.text-unmapped{background:#f8faf8;border:2px solid #d4e5d8;border-radius:10px;color:#1e3a29;font-family:Source Code Pro,monospace;font-size:.8em;height:300px;line-height:1.4;padding:12px;resize:none}.text-mapped{width:260px}.quick-start{background:#f8faf8;border-left:4px solid #4a7c59;border-radius:12px;margin-top:20px;padding:16px 20px}.quick-start p{color:#4a6352;font-family:Nunito Sans,sans-serif;font-size:.9em;line-height:1.6;margin:0;max-width:850px;width:auto}.quick-start a{color:#4a7c59;font-weight:600}.seq-list-container{background:#f8faf8;border:2px solid #d4e5d8;border-radius:10px;max-height:300px;min-width:200px;overflow-y:auto;padding:8px;width:320px}.seq-list-item{align-items:center;border-radius:6px;color:#1e3a29;cursor:pointer;display:flex;font-family:Source Code Pro,monospace;font-size:.8em;padding:6px 10px;transition:background-color .15s;-webkit-user-select:none;user-select:none}.seq-list-item:hover{background-color:#e8f0ea}.seq-list-item.selected{background:linear-gradient(135deg,#e8f5eb,#d8eadc);border-left:3px solid #4a7c59;padding-left:7px}.seq-checkbox{accent-color:#4a7c59;cursor:pointer;height:16px;margin-right:8px;width:16px}.seq-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:8px;padding:8px 0}.selection-count{background:#e8f5eb;border-radius:12px;color:#4a7c59;font-size:.85em;font-weight:600;margin-left:auto;padding:4px 10px}.mode-choice-container{display:flex;gap:24px;justify-content:center;padding:40px 20px}.mode-choice-option{background:linear-gradient(135deg,#f8faf8,#f0f5f1);border:2px solid #d4e5d8;border-radius:16px;cursor:pointer;padding:32px;text-align:center;transition:all .25s ease;width:280px}.mode-choice-option:hover{border-color:#4a7c59;box-shadow:0 8px 24px #4a7c5926;transform:translateY(-3px)}.mode-choice-option h3{color:#1e3a29;font-size:1.3em;font-weight:700;margin:0 0 12px}.mode-choice-option p{color:#4a6352;font-size:.95em;margin:0 0 16px}.mode-choice-hint{color:#7a9882;font-size:.85em;font-style:italic}.mode-header{align-items:center;border-bottom:2px solid #e2ebe4;display:flex;margin-bottom:20px;padding-bottom:16px}.back-button{background:#fff!important;border:2px solid #d4e5d8!important;box-shadow:none!important;color:#1e3a29!important;margin-right:16px}.back-button:hover{background:#f8faf8!important;border-color:#4a7c59!important}.mode-label{color:#4a7c59;font-size:1.1em;font-weight:600}.assignment-method-primary{margin-bottom:16px}.assignment-method-primary form{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.help-text{color:#7a9882;display:block;font-size:.85em;margin-top:4px}.regex-toggle{align-items:center;border-top:1px solid #e2ebe4;color:#4a7c59;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:8px;margin-top:8px;padding:10px 0;-webkit-user-select:none;user-select:none}.regex-toggle:hover{color:#3d6b4a}.toggle-arrow{display:inline-block;font-size:.7em;transition:transform .2s ease}.toggle-arrow.expanded{transform:rotate(90deg)}.regex-section{animation:slideDown .2s ease;padding:12px 0 0}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.regex-section form{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.regex-section input{border:2px solid #d4e5d8;border-radius:8px;font-family:Nunito Sans,sans-serif;font-size:.9em;padding:8px 12px;width:110px}.regex-section input:focus{border-color:#4a7c59;outline:none}.regex-plus{color:#7a9882;font-weight:600}.filters-collapsible{border-top:1px solid #e2ebe4;margin-top:16px;padding-top:12px}.filters-toggle{align-items:center;color:#4a7c59;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:8px;padding:8px 0;-webkit-user-select:none;user-select:none}.filters-toggle:hover{color:#3d6b4a}.assign-selected-section{border-top:1px solid #e2ebe4;margin-top:16px;padding-top:16px}.assign-selected-section form{margin-bottom:6px}.assign-species-input{border:2px solid #d4e5d8;border-radius:8px;font-family:Nunito Sans,sans-serif;font-size:.9em;margin-right:8px;padding:8px 12px;width:130px}.assign-species-input:focus{border-color:#4a7c59;outline:none}.auto-complete-content{padding:20px 0}.auto-complete-content .text-mapped{height:auto;max-width:400px;min-height:200px;width:100%}.species-groups{max-height:350px;overflow-y:auto;padding-right:8px}.species-groups-header{border-bottom:1px solid #e8efe9;color:#6b8f7a;font-size:.75em;font-weight:600;letter-spacing:.08em;margin-bottom:8px;padding-bottom:12px;text-transform:uppercase}.species-groups-empty{color:#7a9882;font-size:.9em;font-style:italic;padding:20px 0}.species-group{border-bottom:1px solid #f0f5f1;padding:12px 0}.species-group:last-child{border-bottom:none}.species-name{align-items:center;color:#1e3a29;display:flex;font-size:.9em;font-weight:600;gap:8px;margin-bottom:8px}.species-icon{color:#4a7c59;font-size:.6em}.species-count{background:#e8f5eb;border-radius:10px;color:#4a7c59;font-size:.75em;font-weight:600;margin-left:auto;padding:2px 8px}.species-sequences{display:flex;flex-wrap:wrap;gap:6px;padding-left:16px}.sequence-tag{background:#f5f8f5;border:1px solid #e2ebe4;border-radius:4px;color:#4a6352;font-family:Source Code Pro,monospace;font-size:.75em;padding:4px 10px}.species-card{background:#fcfdfc;border:1px solid #d4e5d8;border-radius:10px;margin-bottom:12px;padding:14px 16px}.species-card:last-child{margin-bottom:0}.species-card-header{align-items:center;border-bottom:1px solid #e8efe9;display:flex;gap:10px;margin-bottom:10px;padding-bottom:8px}.species-card-name{color:#1e3a29;font-size:.95em;font-weight:600}.species-card-count{background:#e8f5eb;border-radius:10px;color:#4a7c59;font-size:.75em;font-weight:600;margin-left:auto;padding:2px 8px}.species-tree{margin-left:8px;padding-left:16px;position:relative}.species-tree:before{background:#b8d4c0;bottom:4px;content:"";left:0;position:absolute;top:4px;width:1px}.tree-node{align-items:center;display:flex;padding:4px 0;position:relative}.tree-branch{background:#b8d4c0;display:inline-block;height:1px;margin-right:8px;position:relative;width:12px}.tree-branch:after{background:#4a7c59;border-radius:50%;content:"";height:5px;position:absolute;right:0;top:-2px;width:5px}.tree-label{color:#4a6352;font-family:Source Code Pro,monospace;font-size:.8em}.single-species-content{padding:20px 0;text-align:center}.single-species-content p{color:#4a6352;margin-bottom:24px}.single-species-form{justify-content:center}.single-species-form label{color:#1e3a29}.single-species-complete{padding:20px 0;text-align:center}.single-species-complete p{color:#4a7c59;font-weight:600}.ctrlFileBox{background:#f8faf8;border:2px solid #d4e5d8;border-radius:12px;box-sizing:border-box;color:#1e3a29;font-family:Source Code Pro,monospace;font-size:.8em;height:320px;line-height:1.5;padding:16px;resize:vertical;width:100%}.ctrlFileBox:focus{border-color:#4a7c59;outline:none}.options-flat{padding:8px 0}.options-header{border-bottom:1px solid #e8efe9;color:#6b8f7a;font-size:.75em;font-weight:600;letter-spacing:.08em;margin-bottom:4px;padding:20px 0 10px;text-transform:uppercase}.options-header:first-child{padding-top:8px}.option-row-flat{align-items:center;display:flex;justify-content:space-between;padding:12px 0}.option-row-inline{display:flex;flex-wrap:wrap;gap:24px;padding:12px 0}.option-group-inline{align-items:center;display:flex;gap:8px}.option-label-flat,.option-label-inline{font-weight:400}.option-input-flat,.option-label-flat,.option-label-inline{color:#1e3a29;font-family:Nunito Sans,sans-serif;font-size:.9em}.option-input-flat{background:#0000;border:none;border-bottom:1px solid #d4e5d8;padding:8px 12px;text-align:right;transition:border-color .2s;width:90px}.option-input-flat:focus{outline:none}.option-input-flat:focus,.option-input-flat:hover{border-bottom-color:#4a7c59}.option-input-flat::-webkit-inner-spin-button,.option-input-flat::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.option-input-flat[type=number]{-moz-appearance:textfield}.options-box{background:#fff;border:2px solid #d4e5d8;border-radius:12px;padding:20px}.options-title{border-bottom:2px solid #e2ebe4;color:#1e3a29;font-size:1.1em;font-weight:700;margin:0 0 16px;padding-bottom:12px}.options-section{margin-bottom:20px}.options-section:last-child{margin-bottom:0}.options-section-title{color:#4a7c59;font-size:.85em;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.option-row{align-items:center;border-bottom:1px solid #f0f4f0;display:flex;justify-content:space-between;padding:10px 0}.option-row:last-child{border-bottom:none}.option-label{flex:1 1}.option-name{color:#1e3a29;font-family:Nunito Sans,sans-serif;font-size:.95em}.toggle-switch{display:inline-block;flex-shrink:0;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#d4e5d8;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #00000026;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(135deg,#4a7c59,#3d6b4a)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #4a7c5933}.option-row-segmented{align-items:center;border-bottom:1px solid #f0f4f0;display:flex;justify-content:space-between;padding:10px 0}.option-row-segmented:last-child{border-bottom:none}.option-label-text{color:#1e3a29;font-family:Nunito Sans,sans-serif;font-size:.95em;font-weight:500;min-width:70px}.segmented-control{background:#f0f5f1;border-radius:6px;display:inline-flex;gap:1px;padding:2px}.segment{background:#0000;border:none;border-radius:5px;color:#6b8f7a;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:.8em;font-weight:500;padding:6px 14px;transition:all .15s ease;white-space:nowrap}.segment:hover:not(.segment-active){color:#1e3a29}.segment-active{background:#4a7c59;box-shadow:0 1px 2px #4a7c5933;color:#fff}.segment:focus{outline:none}.segment:focus-visible{box-shadow:0 0 0 2px #4a7c594d}.option-input{border:2px solid #d4e5d8;border-radius:8px;color:#1e3a29;font-family:Nunito Sans,sans-serif;font-size:.9em;padding:8px 12px;text-align:right;transition:border-color .2s;width:100px}.option-input:focus{border-color:#4a7c59;outline:none}.option-input-small{width:70px}.option-input::-webkit-inner-spin-button,.option-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.option-input[type=number]{-moz-appearance:textfield}.downloadFile{color:#1e3a29;padding:16px 0}.downloadFile label{color:#4a6352;margin-right:12px}.downButton,.downloadFile label{font-family:Nunito Sans,sans-serif}.downButton{background:linear-gradient(135deg,#e8b931,#d4a52a);border:none;border-radius:8px;box-shadow:0 2px 8px #e8b9314d;color:#1e3a29;cursor:pointer;font-size:.9em;font-weight:600;padding:10px 20px;transition:all .2s ease}.downButton:hover{box-shadow:0 4px 12px #e8b93166;transform:translateY(-1px)}.downLoadButton{padding:30px 0}.topology-button{background:#f8faf8;border:1px solid #d4e5d8;border-radius:6px;color:#4a7c59;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:.85em;font-weight:500;padding:6px 14px;transition:all .15s ease}.topology-button:hover:not(:disabled){background:#4a7c59;border-color:#4a7c59;color:#fff}.topology-button:active:not(:disabled){background:#3d6b4a;border-color:#3d6b4a}.topology-button:disabled{border-color:#e2ebe4;color:#a8c4ae;cursor:not-allowed}.topology-button:focus{outline:none}.topology-button:focus-visible{box-shadow:0 0 0 2px #4a7c594d}.migration-section{margin-top:8px}.migration-header{align-items:center;border-bottom:1px solid #e8efe9;cursor:pointer;display:flex;justify-content:space-between;padding:12px 0;-webkit-user-select:none;user-select:none}.migration-header:hover{background:#4a7c590d;border-radius:4px;margin:0 -8px;padding:12px 8px}.migration-toggle-icon{color:#6b8f7a;font-size:.7em;transition:transform .2s ease}.migration-toggle-icon.expanded{transform:rotate(180deg)}.migration-content{padding:12px 0}.migration-warning{align-items:flex-start;background-color:#fef3c7;border:1px solid #fcd34d;border-left:3px solid #f59e0b;border-radius:6px;color:#92400e;display:flex;font-size:.8em;gap:8px;line-height:1.4;margin:12px 0;padding:10px 12px}.migration-warning .warning-icon{color:#f59e0b;font-weight:700}.migration-tree-container{margin-bottom:16px}.migration-tree-label{color:#4a6352;font-size:.85em;margin:0 0 8px}.migration-route-count{color:#6b8f7a;font-size:.8em;font-style:italic;margin:8px 0}.migration-info{color:#6b8f7a;font-size:.85em;padding:12px 0}.wprior-section{border-top:1px solid #e8efe9;margin-top:16px;padding-top:12px}.wprior-label{color:#4a6352;font-size:.85em;margin-bottom:8px}.wprior-row{align-items:center;display:flex;gap:8px}.wprior-param-label{color:#1e3a29;font-size:.9em;font-weight:500}.wprior-input{background:#0000;border:none;border-bottom:1px solid #d4e5d8;color:#1e3a29;font-family:Nunito Sans,sans-serif;font-size:.9em;padding:6px 8px;text-align:right;width:70px}.wprior-input:focus{border-bottom-color:#4a7c59;outline:none}.wprior-mean{color:#6b8f7a;font-size:.8em;margin-top:6px}.tree-visualizer{background:#f8faf8;border:1px solid #d4e5d8;border-radius:8px;margin:8px 0;padding:12px}.tree-visualizer-empty{color:#6b8f7a;font-size:.85em;padding:20px;text-align:center}.tree-svg{display:block;margin:0 auto}.tree-node-circle{fill:#4a7c59;stroke:#1e3a29;stroke-width:1.5}.tree-branch{stroke:#4a7c59;stroke-width:2}.tree-tip-label{fill:#1e3a29;font-family:Source Code Pro,monospace;font-size:12px}.tree-internal-node{fill:#6b8f7a;stroke:#4a7c59;stroke-width:1.5}.tree-internal-label{fill:#6b8f7a;font-family:Source Code Pro,monospace;font-size:10px;font-style:italic}.migration-arrow{stroke-width:2.5;fill:none;transition:all .2s ease}.migration-arrow.active{stroke:#dc2626}.migration-arrow.active-reverse{stroke:#2563eb}.migration-arrow.potential{stroke:#b8d4c0;stroke-dasharray:4 2}.migration-arrow:hover{stroke-width:3.5}.arrow-marker{transition:all .2s ease}.arrow-marker.active{fill:#dc2626}.arrow-marker.active-reverse{fill:#2563eb}.arrow-marker.potential{fill:#b8d4c0}.migration-hotspot{fill:#4a7c591a;stroke:#b8d4c0;stroke-width:1;stroke-dasharray:3 2;cursor:pointer;transition:all .2s ease}.migration-hotspot:hover{fill:#4a7c5933;stroke:#4a7c59}.hotspot-plus{fill:#6b8f7a;font-size:14px;font-weight:700;pointer-events:none}.tree-legend{border-top:1px solid #e8efe9;color:#6b8f7a;display:flex;font-size:.75em;gap:16px;margin-top:8px;padding-top:8px}.legend-item{align-items:center;display:flex;gap:4px}.legend-circle{border-radius:50%;height:10px;width:10px}.legend-circle.active{background:#dc2626}.legend-line{border-radius:2px;height:3px;width:20px}.legend-line.active{background:#dc2626}.legend-line.reverse{background:#2563eb}.legend-plus{align-items:center;background:#4a7c591a;border:1px dashed #b8d4c0;border-radius:50%;color:#6b8f7a;display:flex;font-size:10px;height:14px;justify-content:center;width:14px}.migration-matrix-label{color:#4a6352;font-size:.85em;margin:12px 0 8px}.migration-matrix-container{margin:8px 0;overflow-x:auto}.migration-matrix{border-collapse:collapse;font-size:.85em;max-width:100%;width:100%}.migration-matrix td,.migration-matrix th{border:1px solid #d4e5d8;min-width:50px;padding:8px 12px;text-align:center}.matrix-corner{background:#f0f5f1;min-width:70px;position:relative}.matrix-from-label{bottom:4px;left:4px}.matrix-from-label,.matrix-to-label{color:#6b8f7a;font-size:.75em;font-weight:400;position:absolute}.matrix-to-label{right:4px;top:4px}.matrix-header-cell,.matrix-row-header{background:#f0f5f1;color:#1e3a29;font-family:Source Code Pro,monospace;font-weight:600}.matrix-row-header{text-align:left}.matrix-cell{background:#fff;cursor:pointer;transition:all .15s ease}.matrix-cell:hover:not(.matrix-cell-disabled){background:#e8f5eb}.matrix-cell-disabled{background:#f5f5f5;cursor:default}.matrix-cell-active{background:#e8f5eb}.matrix-cell-dash{color:#ccc}.matrix-cell-check{background:#fff;border:1px solid #d4e5d8;border-radius:4px;color:#0000;display:inline-block;font-weight:700;height:20px;line-height:20px;width:20px}.matrix-cell-check.active{background:#4a7c59;border-color:#4a7c59;color:#fff}.matrix-empty{color:#6b8f7a;font-size:.85em;padding:20px;text-align:center}.route-display{background:#f8faf8;border:1px solid #d4e5d8;border-radius:6px;margin:12px 0;padding:10px 12px}.route-display-empty{color:#6b8f7a;font-size:.85em;font-style:italic;padding:8px 0}.route-display-title{color:#6b8f7a;font-size:.8em;margin-bottom:6px}.route-list{display:flex;flex-wrap:wrap;gap:8px}.route-item{align-items:center;background:#fff;border:1px solid #d4e5d8;border-radius:4px;display:inline-flex;font-size:.85em;gap:4px;padding:4px 10px}.route-source{color:#1e3a29;font-family:Source Code Pro,monospace;font-weight:600}.route-arrow{color:#dc2626;font-weight:700}.route-target{color:#1e3a29;font-family:Source Code Pro,monospace;font-weight:600}.section-header{align-items:center;border-bottom:1px solid #e8efe9;cursor:pointer;display:flex;justify-content:space-between;padding:12px 0;-webkit-user-select:none;user-select:none}.section-header:hover{background:#4a7c590d;border-radius:4px;margin:0 -8px;padding:12px 8px}.section-toggle-icon{color:#6b8f7a;font-size:.7em;transition:transform .2s ease}.section-toggle-icon.expanded{transform:rotate(180deg)}.section-content{padding:12px 0}.topology-editor{padding:4px 0}.topology-button-row{display:flex;gap:12px;margin-bottom:12px}.topology-button-active{background:#4a7c59;border-color:#4a7c59;color:#fff}.topology-button-small{background:#f8faf8;border:1px solid #d4e5d8;border-radius:4px;color:#4a7c59;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:.8em;font-weight:500;padding:4px 10px;transition:all .15s ease}.spr-instructions,.topology-button-small:hover{background:#e8f5eb}.spr-instructions{align-items:center;border:1px solid #4a7c59;border-radius:6px;color:#1e3a29;display:flex;font-size:.85em;gap:8px;margin-bottom:12px;padding:10px 12px}.spr-status{color:#4a6352}.spr-status strong{color:#1e3a29}.topology-info{color:#6b8f7a;font-size:.85em;padding:12px 0}.newick-input-section{border-top:1px solid #e8efe9;margin-top:16px;padding-top:12px}.newick-input-label{color:#4a6352;font-size:.85em;margin-bottom:8px}.newick-input-row{display:flex;gap:8px}.newick-input{border:1px solid #d4e5d8;border-radius:6px;color:#1e3a29;flex:1 1;font-family:Source Code Pro,monospace;font-size:.85em;padding:8px 12px}.newick-input:focus{border-color:#4a7c59;outline:none}.newick-error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.85em;margin-bottom:12px;padding:8px 12px}.node-click-area{fill:#0000;cursor:pointer}.node-click-area:hover{fill:#4a7c591a}.node-selected{fill:#e8b931!important;stroke:#d4a52a!important;stroke-width:2!important}.node-in-subtree{fill:#fbbf24!important;stroke:#f59e0b!important}.node-valid-target{stroke:#4a7c59!important;stroke-width:2!important;stroke-dasharray:3 2}.node-valid-target:hover{fill:#4a7c59!important;stroke:#1e3a29!important}.tree-branch-selected{stroke:#e8b931!important;stroke-width:3!important}.label-selected{fill:#92400e!important;font-weight:700!important}.introgression-section{margin-top:8px}.introgression-events{margin-top:12px}.introgression-events-label{color:#4a6352;font-size:.85em;margin-bottom:8px}.introgression-event-list{background:#f8faf8;border:1px solid #d4e5d8;border-radius:8px;margin-bottom:12px;padding:8px}.introgression-event-row{align-items:center;background:#fff;border-radius:4px;display:flex;gap:8px;margin-bottom:4px;padding:6px 8px}.introgression-event-row:last-child{margin-bottom:0}.introgression-event-desc{color:#1e3a29;flex:1 1;font-family:Source Code Pro,monospace;font-size:.85em}.introgression-remove-btn{background:#0000;border:none;border-radius:4px;color:#dc2626;cursor:pointer;font-size:1.2em;line-height:1;padding:2px 6px}.introgression-remove-btn:hover{background:#fee2e2}.introgression-empty{background:#f8faf8;border:1px dashed #d4e5d8;border-radius:8px;color:#7a9882;font-size:.85em;font-style:italic;margin-bottom:12px;padding:12px;text-align:center}.introgression-add-form{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.introgression-select{background:#fff;border:2px solid #d4e5d8;border-radius:6px;font-size:.85em;min-width:100px;padding:6px 10px}.introgression-select:focus{border-color:#4a7c59;outline:none}.introgression-arrow{color:#4a7c59;font-weight:700}.introgression-help{color:#7a9882;font-size:.8em;font-style:italic;margin-top:8px}.extended-newick-section{border-top:1px solid #e8efe9;margin-top:16px;padding-top:12px}.extended-newick-label{color:#1e3a29;font-size:.9em;font-weight:600;margin-bottom:4px}.extended-newick-help{color:#7a9882;font-size:.8em;margin-bottom:8px}.extended-newick-help code{background:#f0f5f1;border-radius:4px;font-family:Source Code Pro,monospace;font-size:.9em;padding:2px 6px}.extended-newick-input{background:#fcfdfc;border:2px solid #d4e5d8;border-radius:8px;font-family:Source Code Pro,monospace;font-size:.85em;min-height:80px;padding:10px 12px;resize:vertical;width:100%}.extended-newick-input:focus{background:#fff;border-color:#4a7c59;outline:none}.phiprior-section{border-top:1px solid #e8efe9;margin-top:16px;padding-top:12px}.phiprior-label{color:#1e3a29;font-size:.9em;font-weight:600;margin-bottom:8px}.phiprior-row{align-items:center;display:flex;gap:8px}.phiprior-param-label{color:#4a6352;font-size:.9em;font-weight:600}.phiprior-input{border:2px solid #d4e5d8;border-radius:6px;font-size:.9em;padding:6px 10px;text-align:center;width:70px}.phiprior-input:focus{border-color:#4a7c59;outline:none}.phiprior-note{color:#7a9882;font-size:.8em;font-style:italic;margin-top:6px}.introgression-editor{margin-top:12px}.extended-newick-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.map-options{margin-bottom:16px}.single-species-toggle{align-items:center;border-top:1px solid #e8efe9;display:flex;gap:12px;margin-top:12px;padding-top:12px}.single-species-toggle span{color:#7a9882}.single-species-btn{background:linear-gradient(135deg,#e8b931,#d4a52a)!important;color:#1e3a29!important}.single-species-hint{font-size:.85em;font-style:italic}.single-species-panel{background:linear-gradient(135deg,#f8faf8,#f0f5f1);border:2px solid #d4e5d8;border-radius:12px;margin-bottom:16px;padding:16px}.single-species-header{align-items:center;border-bottom:1px solid #e2ebe4;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.single-species-label{color:#1e3a29;font-size:1.1em;font-weight:600}.single-species-form{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.single-species-form label{color:#4a6352;font-weight:600}.single-species-input{border:2px solid #d4e5d8;border-radius:8px;font-family:Nunito Sans,sans-serif;font-size:1em;padding:10px 14px;width:150px}.single-species-input:focus{border-color:#4a7c59;outline:none}.single-species-info{background:#e8f5eb;border-radius:8px;color:#4a7c59;font-weight:600;margin-top:16px;padding:12px}*{box-sizing:border-box}body{background-color:#f0f4f0;color:#1e3a29;font-family:Nunito Sans,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;margin:0;padding:20px}h1{font-size:2em}h1,h2{color:#1e3a29;font-family:Nunito Sans,sans-serif;font-weight:700;margin-bottom:.5em}h2{font-size:1.4em}h3{color:#1e3a29;font-size:1.15em;font-weight:600;margin-bottom:.4em}h3,li,p,ul{font-family:Nunito Sans,sans-serif}li,p,ul{color:#4a6352}a{color:#4a7c59;text-decoration:none}a:hover{color:#3d6b4a;text-decoration:underline}ul.header{background:#0000;border-bottom:1px solid #e2ebe4;display:flex;gap:8px;list-style:none;margin:0 0 24px;padding:0}ul.header li{display:inline;margin:0}ul.header li a{border-bottom:2px solid #0000;color:#6b8f7a;display:inline-block;font-size:.9em;font-weight:500;margin-bottom:-1px;padding:12px 16px;position:relative;text-decoration:none;transition:all .2s ease}ul.header li a:hover{color:#1e3a29}ul.header li a.active,ul.header li.active a{border-bottom-color:#4a7c59;color:#1e3a29;font-weight:600}.content{background-color:#f0f4f0;padding:10px 0}.content h2{margin:0 0 16px;padding:0}.content li{margin-bottom:10px}.file-upload-btn{background:linear-gradient(135deg,#4a7c59,#3d6b4a);border:none;border-radius:10px;box-shadow:0 3px 10px #4a7c594d;color:#fff;cursor:pointer;font-family:Nunito Sans,sans-serif;font-size:.95em;font-weight:600;padding:12px 24px;transition:all .2s ease}.file-upload-btn:hover{box-shadow:0 5px 15px #4a7c5966;transform:translateY(-2px)}.file-upload-btn:active{background:linear-gradient(135deg,#3d6b4a,#2d5a3a);transform:translateY(0)}
/*# sourceMappingURL=main.7376d34a.css.map*/