gramene-search 2.0.2 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -50,7 +50,11 @@
50
50
  "Bash(git -C /Users/olson/src/warelab/gramene-search add src/bundles/index.js src/bundles/views.js src/bundles/exporter.js src/bundles/ontologies.js src/bundles/swaggerFields.js src/components/geneSearchUI.js src/components/results/details/VEP.js src/components/exporter/ src/demo.js src/fieldCatalog.overlay.json src/vepStudyInfo.js)",
51
51
  "Bash(git -C /Users/olson/src/warelab/gramene-search commit -m ' *)",
52
52
  "Bash(git -C /Users/olson/src/warelab/gramene-search add src/bundles/swaggerFields.js)",
53
- "Bash(git commit -m ' *)"
53
+ "Bash(git commit -m ' *)",
54
+ "Bash(node -e \"const d3 = require\\('/Users/olson/src/warelab/gramene-search/node_modules/d3/src/index.js'\\); console.log\\(typeof d3.scalePoint, typeof d3.scaleLinear, typeof d3.line, typeof d3.axisLeft, typeof d3.extent\\);\")",
55
+ "Bash(git checkout *)",
56
+ "Bash(node -e \"const d3 = require\\('/Users/olson/src/warelab/gramene-search/node_modules/d3/src/index.js'\\); console.log\\(typeof d3.scaleLog, typeof d3.scaleSymlog\\);\")",
57
+ "Bash(curl -s \"https://data.sorghumbase.org/auth_testing/search?q=*:*&rows=0&stats=true&stats.field=start\")"
54
58
  ]
55
59
  }
56
60
  }
Binary file
Binary file
@@ -1,2 +1,2 @@
1
- 299767252
2
- 1777063118526964000
1
+ 303080405
2
+ 1777128343112762000
package/dist/index.css CHANGED
@@ -2678,4 +2678,318 @@ code.fasta {
2678
2678
  .exporter-footer-summary {
2679
2679
  color: #555;
2680
2680
  }
2681
+
2682
+ .exprviz-view {
2683
+ padding: .5rem;
2684
+ }
2685
+
2686
+ .exprviz-tabs {
2687
+ margin-bottom: .5rem;
2688
+ }
2689
+
2690
+ .exprviz-tab-panel {
2691
+ flex-direction: column;
2692
+ gap: .5rem;
2693
+ padding: .5rem 0;
2694
+ display: flex;
2695
+ }
2696
+
2697
+ .exprviz-toolbar {
2698
+ align-items: center;
2699
+ gap: .5rem;
2700
+ display: flex;
2701
+ }
2702
+
2703
+ .exprviz-status {
2704
+ color: #666;
2705
+ margin-left: .5rem;
2706
+ font-size: .85rem;
2707
+ }
2708
+
2709
+ .exprviz-warning {
2710
+ color: #b06000;
2711
+ cursor: help;
2712
+ background: #fff8e0;
2713
+ border: 1px solid #f0d080;
2714
+ border-radius: 3px;
2715
+ padding: 2px 6px;
2716
+ font-size: .8rem;
2717
+ }
2718
+
2719
+ .exprviz-body {
2720
+ flex-direction: column;
2721
+ gap: .75rem;
2722
+ display: flex;
2723
+ }
2724
+
2725
+ .exprviz-plot {
2726
+ background: #fff;
2727
+ border: 1px solid #ddd;
2728
+ height: 320px;
2729
+ }
2730
+
2731
+ .exprviz-pc-container {
2732
+ width: 100%;
2733
+ height: 100%;
2734
+ }
2735
+
2736
+ .exprviz-pc-container svg {
2737
+ display: block;
2738
+ }
2739
+
2740
+ .exprviz-pc-lines path {
2741
+ fill: none;
2742
+ stroke: #4682b4;
2743
+ }
2744
+
2745
+ .exprviz-pc-line-in {
2746
+ stroke-opacity: .4;
2747
+ }
2748
+
2749
+ .exprviz-pc-line-out {
2750
+ stroke-opacity: .04;
2751
+ }
2752
+
2753
+ .exprviz-pc-lines path:not(.exprviz-pc-line-in):not(.exprviz-pc-line-out) {
2754
+ stroke-opacity: .25;
2755
+ }
2756
+
2757
+ .exprviz-pc-lines path.exprviz-pc-line-hover {
2758
+ stroke: #d62728;
2759
+ stroke-opacity: 1;
2760
+ stroke-width: 2px;
2761
+ }
2762
+
2763
+ .exprviz-pc-axis-dragging .domain, .exprviz-pc-axis-dragging .tick line {
2764
+ stroke: #555;
2765
+ }
2766
+
2767
+ .exprviz-pc-axis-dragging .exprviz-pc-axis-label {
2768
+ font-weight: bold;
2769
+ }
2770
+
2771
+ .exprviz-plot-empty, .exprviz-table-empty {
2772
+ color: #888;
2773
+ padding: 1rem;
2774
+ }
2775
+
2776
+ .exprviz-table {
2777
+ height: 480px;
2778
+ }
2779
+
2780
+ .exprviz-aggrid {
2781
+ width: 100%;
2782
+ height: 100%;
2783
+ }
2784
+
2785
+ .exprviz-fields-layout {
2786
+ grid-template-columns: 320px 1fr;
2787
+ gap: .75rem;
2788
+ height: 60vh;
2789
+ display: grid;
2790
+ }
2791
+
2792
+ .exprviz-tree {
2793
+ border: 1px solid #eee;
2794
+ padding: .4rem .5rem;
2795
+ font-size: .85rem;
2796
+ overflow-y: auto;
2797
+ }
2798
+
2799
+ .exprviz-tree-search {
2800
+ box-sizing: border-box;
2801
+ border: 1px solid #ccc;
2802
+ border-radius: 3px;
2803
+ width: 100%;
2804
+ margin-bottom: .4rem;
2805
+ padding: 4px 6px;
2806
+ font-size: .85rem;
2807
+ }
2808
+
2809
+ .exprviz-tree-group {
2810
+ margin-bottom: .5rem;
2811
+ }
2812
+
2813
+ .exprviz-tree-group-header {
2814
+ cursor: pointer;
2815
+ user-select: none;
2816
+ padding: 2px 0;
2817
+ }
2818
+
2819
+ .exprviz-tree-caret {
2820
+ color: #888;
2821
+ width: 1em;
2822
+ display: inline-block;
2823
+ }
2824
+
2825
+ .exprviz-tree-type {
2826
+ border-left: 2px solid #0000;
2827
+ margin-left: .5rem;
2828
+ padding-left: .25rem;
2829
+ }
2830
+
2831
+ .exprviz-tree-type.is-active {
2832
+ border-left-color: #2a6ebb;
2833
+ }
2834
+
2835
+ .exprviz-tree-type-header {
2836
+ cursor: pointer;
2837
+ user-select: none;
2838
+ align-items: center;
2839
+ padding: 2px 0;
2840
+ display: flex;
2841
+ }
2842
+
2843
+ .exprviz-tree-type-header:hover {
2844
+ background: #f5f8ff;
2845
+ }
2846
+
2847
+ .exprviz-tree-type-label {
2848
+ text-overflow: ellipsis;
2849
+ white-space: nowrap;
2850
+ flex: 1;
2851
+ overflow: hidden;
2852
+ }
2853
+
2854
+ .exprviz-tree-type-count {
2855
+ color: #888;
2856
+ font-variant-numeric: tabular-nums;
2857
+ margin-left: .5rem;
2858
+ }
2859
+
2860
+ .exprviz-tree-values {
2861
+ border-left: 1px dashed #e0e0e0;
2862
+ margin: .25rem 0 .5rem 1.25rem;
2863
+ padding-left: .25rem;
2864
+ }
2865
+
2866
+ .exprviz-values-toolbar {
2867
+ align-items: center;
2868
+ gap: .5rem;
2869
+ margin-bottom: .25rem;
2870
+ display: flex;
2871
+ }
2872
+
2873
+ .exprviz-tree-value {
2874
+ cursor: pointer;
2875
+ align-items: center;
2876
+ gap: .4rem;
2877
+ padding: 1px 0;
2878
+ display: flex;
2879
+ }
2880
+
2881
+ .exprviz-tree-value:hover {
2882
+ background: #fafaff;
2883
+ }
2884
+
2885
+ .exprviz-tree-value-label {
2886
+ text-overflow: ellipsis;
2887
+ white-space: nowrap;
2888
+ flex: 1;
2889
+ overflow: hidden;
2890
+ }
2891
+
2892
+ .exprviz-tree-value-count {
2893
+ color: #888;
2894
+ font-variant-numeric: tabular-nums;
2895
+ font-size: .8em;
2896
+ }
2897
+
2898
+ .exprviz-tree-empty {
2899
+ color: #999;
2900
+ margin-left: 1rem;
2901
+ }
2902
+
2903
+ .exprviz-fields-preview {
2904
+ border: 1px solid #eee;
2905
+ overflow: auto;
2906
+ }
2907
+
2908
+ .exprviz-fields-table {
2909
+ border-collapse: collapse;
2910
+ width: 100%;
2911
+ font-size: .85rem;
2912
+ }
2913
+
2914
+ .exprviz-fields-table th, .exprviz-fields-table td {
2915
+ white-space: nowrap;
2916
+ text-align: left;
2917
+ border-bottom: 1px solid #f0f0f0;
2918
+ padding: 4px 8px;
2919
+ }
2920
+
2921
+ .exprviz-fields-table thead th {
2922
+ z-index: 1;
2923
+ background: #fafafa;
2924
+ border-bottom: 1px solid #ddd;
2925
+ position: sticky;
2926
+ top: 0;
2927
+ }
2928
+
2929
+ .exprviz-col-factor {
2930
+ background: #eef6ff;
2931
+ }
2932
+
2933
+ .exprviz-col-char {
2934
+ background: #f5f5f0;
2935
+ }
2936
+
2937
+ .exprviz-fields-table tbody tr:hover {
2938
+ background: #fafaff;
2939
+ }
2940
+
2941
+ .exprviz-header {
2942
+ align-items: center;
2943
+ gap: 4px;
2944
+ width: 100%;
2945
+ display: flex;
2946
+ }
2947
+
2948
+ .exprviz-header-text {
2949
+ text-overflow: ellipsis;
2950
+ white-space: nowrap;
2951
+ flex: 1;
2952
+ overflow: hidden;
2953
+ }
2954
+
2955
+ .exprviz-header-sort {
2956
+ color: #666;
2957
+ margin-left: 2px;
2958
+ font-size: .8em;
2959
+ }
2960
+
2961
+ .exprviz-header-info {
2962
+ cursor: help;
2963
+ color: #2a6ebb;
2964
+ flex: none;
2965
+ font-size: .95em;
2966
+ }
2967
+
2968
+ .exprviz-header-menu {
2969
+ cursor: pointer;
2970
+ opacity: .7;
2971
+ flex: none;
2972
+ }
2973
+
2974
+ .exprviz-header-menu:hover {
2975
+ opacity: 1;
2976
+ }
2977
+
2978
+ .exprviz-header-popover {
2979
+ max-width: 360px;
2980
+ font-size: .85rem;
2981
+ }
2982
+
2983
+ .exprviz-header-popover ul {
2984
+ margin: .25rem 0 0;
2985
+ padding-left: 1rem;
2986
+ }
2987
+
2988
+ .exprviz-header-popover li {
2989
+ margin: 0;
2990
+ }
2991
+
2992
+ .exprviz-header-section {
2993
+ margin-top: .4rem;
2994
+ }
2681
2995
  /*# sourceMappingURL=index.css.map */
@@ -1 +1 @@
1
- {"mappings":"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","sources":["b17bddada667de42","src/components/styles.css","src/components/results/genes.css","node_modules/gramene-genetree-vis/src/styles/msa.less","node_modules/gramene-genetree-vis/src/styles/tree.less","node_modules/react-simple-tree-menu/src/sass/main.scss","src/components/results/details/tree-view.css","src/components/results/details/VEP.css","src/components/results/details/sequences.css","node_modules/gramene-search-vis/styles/main.less","src/components/results/expression.css","src/components/exporter/styles.css"],"sourcesContent":["@import \"5abb1db407612521\";\n@import \"1caf78728b2f5137\";\n@import \"2166a150e9f31214\";\n@import \"938d6be3f57789df\";\n@import \"aa165d1be5d1c755\";\n@import \"996096824b9f7d5a\";\n@import \"41a1dcf3bc8b5377\";\n@import \"c52016833805a9f9\";\n@import \"6f643ac0480217ea\";\n@import \"c6576577b854e1eb\";\n@import \"b02f188cedfc7aaa\";\n","/* ── Main search layout: sidebar + content ──────────────────────────────── */\n.search-views-layout {\n display: flex;\n align-items: flex-start;\n}\n\n.search-views-content {\n flex: 1 1 0;\n min-width: 0; /* prevent flex children from overflowing */\n}\n\n.gramene-sidebar,\n.sorghumbase-sidebar {\n flex: 0 0 250px;\n position: sticky;\n top: 0;\n max-height: 100vh;\n overflow-y: auto;\n padding-left: 8px;\n padding-right: 8px;\n padding-bottom: 8px;\n}\n\n.gramene-sidebar {\n background-color: #557b74;\n}\n.sorghumbase-sidebar {\n background-color: #a03e34;\n}\n\n/* ── Mobile: stack sidebar above content ────────────────────────────────── */\n@media (max-width: 767px) {\n .search-views-layout {\n flex-direction: column;\n }\n .gramene-sidebar,\n .sorghumbase-sidebar {\n flex: 0 0 auto;\n position: static;\n width: 100%;\n max-height: none;\n overflow-y: visible;\n }\n .search-views-content {\n width: 100%;\n }\n}\n.gramene-auth-container,\n.sorghumbase-auth-container,\n.gramene-filter-container,\n.sorghumbase-filter-container {\n}\n.gramene-filter {\n padding-left: 4px;\n padding-right: 4px;\n padding-bottom: 4px;\n background-color: white;\n font-size: 0.875rem; /* ~14px — explicit instead of 'small' keyword */\n}\n.gramene-filter span:hover {\n font-weight:bolder;\n}\n.gramene-filter-AND {\n background-color: #ffcd82;\n}\n.gramene-filter-OR {\n background-color: #c5eeb9;\n}\n.gramene-filter-NOT {\n border-left-color: #ff5354;\n border-left-style: inset;\n border-left-width: 4px;\n padding-left: 4px;\n}\n.gramene-filter-operation {\n text-align: center;\n font-style: italic;\n}\n.gramene-filter-marked {\n font-weight: bolder;\n /*background-color: #feff96;*/\n}\n.gramene-filter-menu ul {\n border-top-style: solid;\n border-top-width: 2px;\n padding-left: 0;\n}\n.gramene-filter-menu li {\n display: block;\n cursor: pointer;\n padding: 8px 8px 8px 15px; /* vertical padding makes tap targets ~36px+ */\n}\n.gramene-filter-menu li:hover {\n background-color: #feff96;\n}\n\n.gramene-view-header {\n width: 100%;\n display: flex;\n flex-wrap: nowrap;\n justify-content: space-evenly;\n font-size: larger;\n font-weight: bold;\n background-color: #fff3a96e;\n border-top: solid;\n border-top-color: #557b74;\n color: #a03e34;\n}\n\n.gramene-view-container {\n}\n.gramene-view {\n padding-left: 0px;\n padding-right: 10px;\n margin-bottom: 0;\n background-color: white;\n}\n.gramene-view-span-on {\n padding-left: 5px;\n cursor: pointer;\n vertical-align: text-bottom;\n color: #a03e34;\n}\n.gramene-view-span-off {\n padding-left: 5px;\n cursor: pointer;\n vertical-align: text-bottom;\n}\n.gramene-view li {\n display: block;\n cursor: pointer;\n padding-left: 5px;\n border-left-style: inset;\n border-left-width: 8px;\n margin-bottom: 2px;\n}\n\n.gramene-view-on {\n border-left-color: #40a0ff;\n font-weight: bold;\n}\n.gramene-view-off {\n border-left-color: #ff6d68;\n}\n.gramene-view-disabled {\n color: darkgray;\n border-left-color: #efefef;\n cursor: default!important;\n}\n#gramene-suggestion button {\n border-radius: .6rem;\n line-height: 1;\n}\n#gramene-suggestion button:focus {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n/* ── Collapsible sidebar sections ─────────────────────────────────────── */\n.sidebar-section {\n margin-bottom: 4px;\n}\n\n.sidebar-section-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n cursor: pointer;\n padding: 2px 4px 2px 6px;\n color: cornsilk;\n user-select: none;\n border-top: 3px solid;\n}\n\n/* Dark background + matching top border per site */\n.gramene-sidebar .sidebar-section-header {\n background-color: #557b74;\n border-top-color: #3d5b55;\n}\n.sorghumbase-sidebar .sidebar-section-header {\n background-color: #a03e34;\n border-top-color: #7a2f27;\n}\n\n.sidebar-section-header:hover {\n background: rgba(255,255,255,0.1);\n}\n.gramene-sidebar .sidebar-section-header:hover {\n background-color: #4a6d66;\n}\n.sorghumbase-sidebar .sidebar-section-header:hover {\n background-color: #8c352d;\n}\n\n.sidebar-section-actions {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n color: cornsilk;\n}\n\n.sidebar-section-toggle {\n font-size: 0.85rem;\n font-weight: bold;\n}\n.sidebar-section-toggle svg {\n stroke: currentColor;\n stroke-width: 2;\n}\n\n.sidebar-section-body {\n background-color: #fff3a9;\n padding: 4px;\n}\n\n/* ── Mobile: compact sidebar when stacked at top ─────────────────────── */\n@media (max-width: 767px) {\n /* Tighten sidebar padding */\n .gramene-sidebar,\n .sorghumbase-sidebar {\n padding: 4px 8px;\n }\n\n /* Views: display as a compact inline flow */\n .gramene-view {\n display: flex;\n flex-wrap: wrap;\n gap: 2px 8px;\n padding: 2px 4px;\n }\n .gramene-view li {\n display: inline-flex;\n align-items: center;\n padding-left: 4px;\n margin-bottom: 0;\n font-size: 0.8rem;\n border-left-width: 4px;\n }\n\n /* View header: smaller */\n .gramene-view-header {\n font-size: small;\n padding: 2px 0;\n }\n\n /* Filters: compact */\n .gramene-filter {\n font-size: 0.8rem;\n padding: 2px 4px;\n }\n .gramene-filter-menu li {\n padding: 4px 4px 4px 10px;\n }\n\n /* Suggestion buttons: reasonable tap area */\n #gramene-suggestion button {\n padding: 0.35rem 0.6rem;\n margin-bottom: 2px;\n font-size: 0.8rem;\n }\n\n /* Prevent iOS zoom-on-focus (requires >= 16px) without forcing extra height */\n #search-input {\n font-size: 1rem;\n }\n}\n\n/* ── Taxonomy modal tree ─────────────────────────────────────────────────── */\n.tax-tree { margin-top: 8px; font-size: 14px; }\n.tax-node { border-radius: 2px; }\n.tax-row { display: flex; align-items: center; gap: 4px; padding: 2px 4px; }\n.tax-chevron { cursor: pointer; width: 14px; display: inline-flex; align-items: center; }\n.tax-chevron-spacer { display: inline-block; width: 14px; }\n.tax-label { }\n.tax-label-internal { font-weight: 600; }\n.tax-sep { color: #888; font-weight: normal; }\n.tax-count { color: #555; font-size: 12px; margin-left: 4px; }\n.tax-self-leaf { margin-left: 8px; font-size: 12px; color: #444; display: inline-flex; align-items: center; gap: 2px; }\n\n.tax-ellipsis { cursor: help; color: #666; }\n.tax-ellipsis-full { display: none; }\n.tax-ellipsis:hover .tax-ellipsis-short { display: none; }\n.tax-ellipsis:hover .tax-ellipsis-full { display: inline; color: #333; }\n\n.tax-search { position: relative; margin: 8px 0; }\n.tax-search-input { width: 100%; padding: 4px 8px; font-size: 14px;\n border: 1px solid #bbb; border-radius: 3px; }\n.tax-search-results { position: absolute; left: 0; right: 0; top: 100%;\n max-height: 280px; overflow-y: auto; z-index: 10;\n background: white; border: 1px solid #bbb;\n border-top: none; border-radius: 0 0 3px 3px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1); }\n.tax-search-hit { padding: 4px 8px; cursor: pointer; font-size: 13px; }\n.tax-search-hit:hover,\n.tax-search-hit-active { background: #e3ecff; }\n.tax-search-name { font-weight: 600; }\n.tax-search-syn { color: #777; font-style: italic; }\n.tax-search-rank { color: #0366d6; font-size: 11px; text-transform: uppercase;\n margin-left: 4px; }\n.tax-search-count { color: #555; font-size: 12px; }\n.tax-search-empty { padding: 6px 8px; color: #777; font-style: italic; font-size: 13px; }\n\n.tax-node-highlight { outline: 2px solid #ffc107;\n animation: taxFlash 1.6s ease-out; }\n@keyframes taxFlash {\n 0% { background-color: #fff3cd; }\n 100% { background-color: transparent; }\n}\n\n\n",".visible-detail {\n border: 1px solid #557B74;\n padding: 6px 12px;\n}\n.detail {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.table {\n width: 100%;\n max-width: 100%;\n}\n.xrefs {\n border-collapse: collapse;\n border-spacing: 0;\n border-color: grey;\n table-layout: auto;\n width: 100%;\n}\n/* Col 1 (PubMed link) and col 2 (Curation source): shrink to content */\ntable.xrefs th:nth-child(1),\ntable.xrefs td:nth-child(1),\ntable.xrefs th:nth-child(2),\ntable.xrefs td:nth-child(2) {\n width: 1%;\n white-space: nowrap;\n}\n/* Col 3 (Title/Description): fill remaining space */\ntable.xrefs th:nth-child(3),\ntable.xrefs td:nth-child(3) {\n width: 100%;\n}\n/* Legacy column-width classes — kept for other tables that use them */\n.xref-name-col { white-space: nowrap; }\n.xref-value-col { }\n.xref-80-col { }\n.xref-70-col { }\n.xref-10-col { white-space: nowrap; }\n.xref-id-list {\n padding-left: 0;\n list-style: none;\n}\n.result-gene {\n padding: 0.2em;\n border: 5px solid white;\n}\n.result-gene:hover {\n border-color: antiquewhite;\n}\n.gene-title {\n /*padding-top:0.5em;*/\n}\n.gene-id {\n /*white-space: nowrap;*/\n color: black;\n}\n.gene-name {\n color: #557B74;\n margin-bottom: 0;\n}\n.gene-description {\n margin-bottom: 0;\n}\n.gene-species {\n white-space: nowrap;\n font-style: italic;\n font-size:small;\n font-weight: bold;\n}\n.gene-synonyms {\n font-size: small;\n}\n.gene-extras {\n border: dashed 1px blue;\n}\n.gene-panlink {\n float: right;\n margin-left: 0.5rem;\n margin-bottom: 0.25rem;\n}\n.gene-panlink img {\n height: 60px;\n width: auto;\n max-width: 100%;\n vertical-align: top;\n}\n.suggestion-panlink img {\n height: 60px;\n width: auto;\n max-width: 100%;\n}\n@media (max-width: 1200px) {\n .gene-panlink img,\n .suggestion-panlink img {\n height: 30px;\n }\n}\n@media (max-width: 767px) {\n /* Allow the ortholog/TAIR box to stack below the gene title on mobile.\n It stays inside .result-gene-summary, so it still appears above .gene-detail-tabs. */\n .result-gene-summary {\n flex-wrap: wrap;\n }\n .result-gene-title-body {\n flex: 1 1 100%;\n }\n .model-ortholog,\n .closest-ortholog,\n .gene-summary-tair {\n flex: 1 1 100%;\n max-width: 100%;\n width: auto;\n margin-left: 0;\n margin-top: 8px;\n }\n /* Stack ortholog box contents vertically on narrow screens */\n .model-ortholog,\n .closest-ortholog {\n grid-template-columns: 1fr;\n }\n .model-ortholog h3.gene-id,\n .closest-ortholog h3.gene-id {\n grid-column: 1;\n grid-row: 2;\n }\n .model-ortholog .gene-species,\n .closest-ortholog .gene-species {\n grid-column: 1;\n grid-row: 3;\n text-align: left;\n }\n .model-ortholog .rep-identity,\n .closest-ortholog .rep-identity {\n grid-column: 1;\n grid-row: 4;\n text-align: left;\n }\n .model-ortholog p,\n .closest-ortholog p {\n grid-row: 5;\n }\n /* Show descriptions on mobile (no hover available) */\n .model-ortholog p,\n .closest-ortholog p {\n display: block;\n }\n /* PanLink: stop floating, display inline next to gene title */\n .gene-panlink {\n float: none;\n display: inline;\n margin-left: 0.25rem;\n margin-bottom: 0;\n vertical-align: middle;\n }\n /* Papers table only: hide \"Curation source\" column on small screens */\n table.xrefs-pubs th:nth-child(2),\n table.xrefs-pubs td:nth-child(2) {\n display: none;\n }\n}\n.gene-curation {\n flex-shrink: 0;\n margin-top: 20px;\n border: 1px solid grey;\n}\n.gene-curation span {\n width: 20px;\n display: inline-block;\n color: white;\n text-align: center;\n}\n.gene-curation .okay {\n background-color: #0c00f3;\n}\n.gene-curation .flagged {\n background-color: darkorange;\n}\n.gene-detail-tabs {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n}\n/* Tab items: 4-per-row by default, overrides Bootstrap col-md-1 (8.33%) */\n.gene-detail-tabs > div {\n flex: 0 0 25%;\n width: 25%;\n max-width: 25%;\n box-sizing: border-box;\n padding: 6px 4px;\n min-height: 36px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n/* At wide viewports, all 8 fit comfortably in one row */\n@media (min-width: 992px) {\n .gene-detail-tabs > div {\n flex: 0 0 12.5%;\n width: 12.5%;\n max-width: 12.5%;\n }\n}\n.gene-detail-tab-closed {\n color: darkgreen;\n cursor: pointer;\n /*background-color: lightgray;*/\n}\n.gene-detail-tab-disabled {\n /*color: white;*/\n /*background-color: lightgray;*/\n color: lightgray;\n cursor: not-allowed;\n}\n.gene-detail-tab-empty {\n color: darkgreen;\n cursor: pointer;\n font-style: oblique;\n /*background-color: lightgray;*/\n}\n.gene-detail-tab-empty::before {\n content: \"Add \";\n}\n.gene-detail-tab-expanded {\n color: white;\n background-color: #557B74;\n cursor: pointer;\n}\n.result-gene-summary {\n display: flex;\n flex-flow: row nowrap;\n justify-content: flex-start;\n align-items: flex-start;\n}\n.result-gene-summary .species-name {\n white-space: nowrap;\n font-style: italic;\n}\n.result-gene-title-body {\n flex: 1 1 auto;\n max-width: 1036px;\n width: 100%;\n}\n.model-ortholog, .closest-ortholog, .gene-summary-tair {\n cursor: pointer;\n flex: 0 0 auto;\n max-width: 380px;\n width: 380px;\n font-size: smaller;\n margin-top: 10px;\n padding: 0.25rem 0.5rem 0.5rem;\n margin-left: 1rem;\n border: 1px solid darkorange;\n}\n\n/* Ortholog boxes: grid — title row, then gene name left / species+identity right */\n.model-ortholog, .closest-ortholog {\n display: grid;\n grid-template-columns: 1fr auto;\n gap: 0 0.5rem;\n align-items: center;\n}\n\n/* Gene name: left column, smaller font to fit alongside species */\n.model-ortholog h3.gene-id,\n.closest-ortholog h3.gene-id {\n grid-column: 1;\n grid-row: 2;\n margin: 0;\n font-size: 1.5em;\n overflow-wrap: break-word;\n word-break: break-all;\n min-width: 0;\n}\n\n/* Species: right column, top of the pair */\n.model-ortholog .gene-species,\n.closest-ortholog .gene-species {\n grid-column: 2;\n grid-row: 2;\n text-align: right;\n align-self: end;\n}\n\n/* Identity: right column, below species (same row group as gene name) */\n.model-ortholog .rep-identity,\n.closest-ortholog .rep-identity {\n grid-column: 2;\n grid-row: 3;\n text-align: right;\n margin-left: 0;\n padding-right: 0;\n padding-top: 0;\n align-self: start;\n}\n\n/* Description: hidden by default; show on hover/focus */\n.model-ortholog p,\n.closest-ortholog p {\n grid-column: 1 / -1;\n grid-row: 4;\n display: none;\n margin: 0.25rem 0 0;\n}\n.model-ortholog:hover p,\n.model-ortholog:focus p,\n.closest-ortholog:hover p,\n.closest-ortholog:focus p {\n display: block;\n}\n\n.model-ortholog {\n border: 1px dotted darkorange;\n}\n.closest-ortholog {\n border: 1px dotted darkgreen;\n}\n\n.gene-summary-tair {\n border: 1px dotted darkblue;\n}\n.gene-summary-tair .rest {\n display: none;\n}\n\n.gene-summary-tair:hover .rest {\n display: inline;\n}\n.gene-summary-tair:focus .rest {\n display: inline;\n}\n.gene-summary-tair:hover .ellipsis {\n display: none;\n}\n.gene-summary-tair:focus .ellipsis {\n display: none;\n}\n\n/* this is the \"title\" of the closest ortholog box */\n.closest-ortholog::before,\n.model-ortholog::before,\n.gene-summary-tair::before {\n display: block;\n grid-column: 1 / -1;\n grid-row: 1;\n text-align: center;\n border: dotted 1px;\n padding: 0 0.5rem;\n margin: -0.25rem -0.5rem 0.25rem; /* bleed to box edges */\n background: #fff;\n}\n\n.model-ortholog::before {\n content: \"Model Species Homolog\";\n color: orange;\n}\n.closest-ortholog::before {\n content: \"Closest Annotated Homolog\";\n color: darkgreen;\n}\n\n/* this is the \"title\" of the closest ortholog box */\n.gene-summary-tair::before {\n content: \"TAIR Curated Description\";\n color: darkblue;\n}\n\n.rep-identity {\n margin-left: auto;\n padding-right: 10px;\n padding-top: 5px;\n font-style: italic;\n}\n.rep-identity::after {\n content: \"% identity\";\n}\n.eFP::before {\n content: url(\"../../static/images/BAR-logo.png\");\n padding-right:5px;\n position: relative;\n top: 5px;\n}\n.eFP::after {\n content: 'New!';\n color: red;\n padding-left:2px;\n font-weight: bold;\n font-style: italic;\n font-size: x-small;\n line-height: normal;\n vertical-align: super;\n}\n.gxa::before {\n content: url(\"../../static/images/expression-atlas-logo.png\");\n padding-right:5px;\n position: relative;\n top: 5px;\n}\n.gene-search-pic-sugg {\n width: 100%;\n height: 200px;\n background: url(\"../../static/images/suggestions.png\");\n background-size: contain;\n background-repeat: no-repeat;\n}\n.gene-search-pic-results {\n width: 100%;\n height: 200px;\n background: url(\"../../static/images/results.png\");\n background-size: contain;\n background-repeat: no-repeat;\n}\n.gene-search-pic-genetree {\n width: 100%;\n height: 200px;\n background: url(\"../../static/images/genetree.png\");\n background-size: contain;\n background-repeat: no-repeat;\n}\n",".MSAlignments-wrapper {\n overflow-x: scroll;\n overflow-y: hidden;\n}\n.clustal {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.clustal .A,\n.clustal .I,\n.clustal .L,\n.clustal .M,\n.clustal .F,\n.clustal .W,\n.clustal .V {\n background-color: #80a0f0;\n}\n.clustal .R,\n.clustal .K {\n background-color: #f01505;\n color: #fcff89;\n}\n.clustal .N,\n.clustal .Q,\n.clustal .S,\n.clustal .T {\n background-color: #00ff00;\n}\n.clustal .D,\n.clustal .E {\n background-color: #c048c0;\n color: #fcff89;\n}\n.clustal .C {\n background-color: #f08080;\n}\n.clustal .G {\n background-color: #f09048;\n}\n.clustal .Y\n.clustal .H {\n background-color: #15a4a4;\n}\n.clustal .P {\n background-color: #ffff00;\n}\n.clustal .B,\n.clustal .X,\n.clustal .Z {\n background-color: #ffffff;\n}\n.clustal .gap {\n color: #ccc;\n}\n.zappo {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.zappo .A,\n.zappo .I,\n.zappo .L,\n.zappo .M,\n.zappo .V {\n background-color: #ffafaf;\n}\n.zappo .R,\n.zappo .H,\n.zappo .K {\n background-color: #6464ff;\n color: #fcff89;\n}\n.zappo .N,\n.zappo .Q,\n.zappo .S,\n.zappo .T {\n background-color: #00ff00;\n}\n.zappo .D,\n.zappo .E {\n background-color: #ff0000;\n}\n.zappo .C {\n background-color: #ffff00;\n}\n.zappo .G,\n.zappo .P {\n background-color: #ff00ff;\n color: #fcff89;\n}\n.zappo .F,\n.zappo .W,\n.zappo .Y {\n background-color: #ffc800;\n}\n.zappo .B,\n.zappo .X,\n.zappo .Z {\n background-color: #ffffff;\n}\n.zappo .gap {\n color: #ccc;\n}\n.taylor {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.taylor .A {\n background-color: #ccff00;\n}\n.taylor .R {\n background-color: #0000ff;\n color: #fcff89;\n}\n.taylor .N {\n background-color: #cc00ff;\n color: #fcff89;\n}\n.taylor .D {\n background-color: #ff0000;\n color: #fcff89;\n}\n.taylor .C {\n background-color: #ffff00;\n}\n.taylor .Q {\n background-color: #ff00cc;\n}\n.taylor .E {\n background-color: #ff0066;\n color: #fcff89;\n}\n.taylor .G {\n background-color: #ff9900;\n}\n.taylor .H {\n background-color: #0066ff;\n color: #fcff89;\n}\n.taylor .I {\n background-color: #66ff00;\n}\n.taylor .L {\n background-color: #33ff00;\n}\n.taylor .K {\n background-color: #6600ff;\n color: #fcff89;\n}\n.taylor .M {\n background-color: #00ff00;\n}\n.taylor .F {\n background-color: #00ff66;\n}\n.taylor .P {\n background-color: #ffcc00;\n}\n.taylor .S {\n background-color: #ff3300;\n color: #fcff89;\n}\n.taylor .T {\n background-color: #ff6600;\n}\n.taylor .W {\n background-color: #00ccff;\n}\n.taylor .Y {\n background-color: #00ffcc;\n}\n.taylor .V {\n background-color: #99ff00;\n}\n.taylor .B,\n.taylor .X,\n.taylor .Z {\n background-color: #ffffff;\n}\n.taylor .gap {\n color: #ccc;\n}\n.hydrophobicity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n color: #fcff89;\n}\n.hydrophobicity .A {\n background-color: #ad0052;\n}\n.hydrophobicity .R,\n.hydrophobicity .K {\n background-color: #0000ff;\n}\n.hydrophobicity .N,\n.hydrophobicity .D,\n.hydrophobicity .Q,\n.hydrophobicity .E,\n.hydrophobicity .B,\n.hydrophobicity .Z {\n background-color: #0c00f3;\n}\n.hydrophobicity .C {\n background-color: #c2003d;\n}\n.hydrophobicity .G {\n background-color: #6a0095;\n}\n.hydrophobicity .H {\n background-color: #1500ea;\n}\n.hydrophobicity .L {\n background-color: #ea0015;\n}\n.hydrophobicity .M {\n background-color: #b0004f;\n}\n.hydrophobicity .F {\n background-color: #cb0034;\n}\n.hydrophobicity .P {\n background-color: #4600b9;\n}\n.hydrophobicity .S {\n background-color: #5e00a1;\n}\n.hydrophobicity .T {\n background-color: #61009e;\n}\n.hydrophobicity .W {\n background-color: #5b00a4;\n}\n.hydrophobicity .Y {\n background-color: #4f00b0;\n}\n.hydrophobicity .V {\n background-color: #f60009;\n}\n.hydrophobicity .X {\n background-color: #680097;\n}\n.hydrophobicity .gap {\n color: #ccc;\n}\n.helix_propensity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.helix_propensity .A {\n background-color: #e718e7;\n}\n.helix_propensity .R {\n background-color: #6f906f;\n}\n.helix_propensity .N {\n background-color: #1be41b;\n}\n.helix_propensity .D {\n background-color: #778877;\n}\n.helix_propensity .C {\n background-color: #23dc23;\n}\n.helix_propensity .Q {\n background-color: #926d92;\n}\n.helix_propensity .E {\n background-color: #ff00ff;\n}\n.helix_propensity .G {\n background-color: #00ff00;\n}\n.helix_propensity .H {\n background-color: #758a75;\n}\n.helix_propensity .I {\n background-color: #8a758a;\n}\n.helix_propensity .L {\n background-color: #ae51ae;\n}\n.helix_propensity .K {\n background-color: #a05fa0;\n}\n.helix_propensity .M {\n background-color: #ef10ef;\n}\n.helix_propensity .F {\n background-color: #986798;\n}\n.helix_propensity .P {\n background-color: #00ff00;\n}\n.helix_propensity .S {\n background-color: #36c936;\n}\n.helix_propensity .T {\n background-color: #47b847;\n}\n.helix_propensity .W {\n background-color: #8a758a;\n}\n.helix_propensity .Y {\n background-color: #21de21;\n}\n.helix_propensity .V {\n background-color: #857a85;\n}\n.helix_propensity .B {\n background-color: #49b649;\n}\n.helix_propensity .X {\n background-color: #758a75;\n}\n.helix_propensity .Z {\n background-color: #c936c9;\n}\n.helix_propensity .gap {\n color: #ccc;\n}\n.strand_propensity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.strand_propensity .A {\n background-color: #5858a7;\n}\n.strand_propensity .R {\n background-color: #6b6b94;\n}\n.strand_propensity .N {\n background-color: #64649b;\n}\n.strand_propensity .D {\n background-color: #2121de;\n}\n.strand_propensity .C {\n background-color: #9d9d62;\n}\n.strand_propensity .Q {\n background-color: #8c8c73;\n}\n.strand_propensity .E {\n background-color: #0000ff;\n}\n.strand_propensity .G {\n background-color: #4949b6;\n}\n.strand_propensity .H {\n background-color: #60609f;\n}\n.strand_propensity .I {\n background-color: #ecec13;\n}\n.strand_propensity .L {\n background-color: #b2b24d;\n}\n.strand_propensity .K {\n background-color: #4747b8;\n}\n.strand_propensity .M {\n background-color: #82827d;\n}\n.strand_propensity .F {\n background-color: #c2c23d;\n}\n.strand_propensity .P {\n background-color: #2323dc;\n}\n.strand_propensity .S {\n background-color: #4949b6;\n}\n.strand_propensity .T {\n background-color: #9d9d62;\n}\n.strand_propensity .W {\n background-color: #c0c03f;\n}\n.strand_propensity .Y {\n background-color: #d3d32c;\n}\n.strand_propensity .V {\n background-color: #ffff00;\n}\n.strand_propensity .B {\n background-color: #4343bc;\n}\n.strand_propensity .X {\n background-color: #797986;\n}\n.strand_propensity .Z {\n background-color: #4747b8;\n}\n.strand_propensity .A,\n.strand_propensity .R,\n.strand_propensity .N,\n.strand_propensity .D,\n.strand_propensity .E,\n.strand_propensity .G,\n.strand_propensity .H,\n.strand_propensity .K,\n.strand_propensity .P,\n.strand_propensity .S,\n.strand_propensity .B,\n.strand_propensity .Z {\n color: #fcff89;\n}\n.strand_propensity .gap {\n color: #ccc;\n}\n.turn_propensity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.turn_propensity .gap {\n color: #ccc;\n}\n.turn_propensity .A {\n background-color: #2cd3d3;\n}\n.turn_propensity .R {\n background-color: #708f8f;\n}\n.turn_propensity .N {\n background-color: #ff0000;\n}\n.turn_propensity .D {\n background-color: #e81717;\n}\n.turn_propensity .C {\n background-color: #a85757;\n}\n.turn_propensity .Q {\n background-color: #3fc0c0;\n}\n.turn_propensity .E {\n background-color: #778888;\n}\n.turn_propensity .G {\n background-color: #ff0000;\n}\n.turn_propensity .H {\n background-color: #708f8f;\n}\n.turn_propensity .I {\n background-color: #00ffff;\n}\n.turn_propensity .L {\n background-color: #1ce3e3;\n}\n.turn_propensity .K {\n background-color: #7e8181;\n}\n.turn_propensity .M {\n background-color: #1ee1e1;\n}\n.turn_propensity .F {\n background-color: #1ee1e1;\n}\n.turn_propensity .P {\n background-color: #f60909;\n}\n.turn_propensity .S {\n background-color: #e11e1e;\n}\n.turn_propensity .T {\n background-color: #738c8c;\n}\n.turn_propensity .W {\n background-color: #738c8c;\n}\n.turn_propensity .Y {\n background-color: #9d6262;\n}\n.turn_propensity .V {\n background-color: #07f8f8;\n}\n.turn_propensity .B {\n background-color: #f30c0c;\n}\n.turn_propensity .X {\n background-color: #7c8383;\n}\n.turn_propensity .Z {\n background-color: #5ba4a4;\n}\n.turn_propensity .N,\n.turn_propensity .D,\n.turn_propensity .G,\n.turn_propensity .P,\n.turn_propensity .S,\n.turn_propensity .B {\n color: #fcff89;\n}\n.buried_index {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.buried_index .gap {\n color: #ccc;\n}\n.buried_index .A {\n background-color: #00a35c;\n}\n.buried_index .R {\n background-color: #00fc03;\n}\n.buried_index .N {\n background-color: #00eb14;\n}\n.buried_index .D {\n background-color: #00eb14;\n}\n.buried_index .C {\n background-color: #0000ff;\n}\n.buried_index .Q {\n background-color: #00f10e;\n}\n.buried_index .E {\n background-color: #00f10e;\n}\n.buried_index .G {\n background-color: #009d62;\n}\n.buried_index .H {\n background-color: #00d52a;\n}\n.buried_index .I {\n background-color: #0054ab;\n}\n.buried_index .L {\n background-color: #007b84;\n}\n.buried_index .K {\n background-color: #00ff00;\n}\n.buried_index .M {\n background-color: #009768;\n}\n.buried_index .F {\n background-color: #008778;\n}\n.buried_index .P {\n background-color: #00e01f;\n}\n.buried_index .S {\n background-color: #00d52a;\n}\n.buried_index .T {\n background-color: #00db24;\n}\n.buried_index .W {\n background-color: #00a857;\n}\n.buried_index .Y {\n background-color: #00e619;\n}\n.buried_index .V {\n background-color: #005fa0;\n}\n.buried_index .B {\n background-color: #00eb14;\n}\n.buried_index .X {\n background-color: #00b649;\n}\n.buried_index .Z {\n background-color: #00f10e;\n}\n.buried_index .C,\n.buried_index .I,\n.buried_index .V {\n color: #fcff89;\n}\n","@transition_time: 20ms;\n\n/* see src/components/Edge.js#HOVER_SCALE_FACTOR (currently line 8) */\n@hover_scale_factor: 2;\n@hover_stroke_width: 2;\n@collapsed_node_stroke_width: 1;\n\n@default_node_fill: #fff;\n@default_node_stroke: #777;\n\n@ortholog_stroke_color: orange;\n@paralog_stroke_color: green;\n@representative_fill_color: @ortholog_stroke_color;\n@self_color: red;\n\n@speciation_color: #000080;\n@duplication_color: #cd0000;\n\n@font_size: 11px;\n@font_weight_highlight: bolder;\n\n@invisible: 0;\n@visible: 1;\n\n.display-mode {\n .btn-toolbar {\n position: absolute;\n padding-left: 10px\n }\n}\n.tooltip-inner {\n max-width : 400px;\n}\n.genetree-vis {\n .node, .edge {\n cursor: pointer;\n }\n\n .tree-wrapper {\n /* transitions for mouse hover, etc, interactions */\n * {\n transition: all @transition_time ease-in-out;\n }\n\n /* transitions for expanding/contracting clades */\n .clade {\n transition: transform @transition_time ease-in-out;\n\n .edge-rect {\n transition: scaleY @transition_time ease-in-out, scaleX @transition_time ease-in-out, transform @transition_time ease-in-out;\n }\n }\n }\n\n .interaction-helper {\n opacity: @invisible;\n }\n\n .node circle {\n stroke: @default_node_stroke;\n fill: @default_node_fill;\n }\n\n .speciation rect {\n fill: @speciation_color;\n }\n\n .duplication rect {\n fill: @duplication_color;\n }\n\n .node:hover, .edge:hover {\n .internal,\n .gene circle,\n ~ .clade .node rect,\n + .node rect {\n transform: scale(@hover_scale_factor);\n }\n\n ~ .clade .interaction-rect {\n opacity: @visible;\n fill-opacity: @visible;\n }\n\n ~ .clade circle,\n + .node circle,\n .collapsed path,\n ~ .clade .collapsed path,\n + .node .collapsed path {\n stroke-width: @hover_stroke_width;\n }\n\n ~ .clade text, text {\n font-weight: @font_weight_highlight;\n }\n }\n\n .node {\n .gene.ortholog_one2one circle,\n .gene.ortholog_one2many circle,\n .gene.ortholog_many2many circle {\n stroke: @ortholog_stroke_color;\n }\n\n .gene.within_species_paralog circle {\n stroke: @paralog_stroke_color;\n }\n\n .gene.self {\n circle {\n stroke: @self_color;\n fill: @self_color;\n }\n text {\n font-weight: @font_weight_highlight;\n }\n }\n\n .gene.representative circle {\n stroke: @ortholog_stroke_color;\n fill: @representative_fill_color;\n }\n\n text {\n font-size: @font_size;\n fill-opacity: @visible;\n text-anchor: start;\n }\n }\n\n .collapsed {\n path {\n stroke-width: @collapsed_node_stroke_width;\n }\n }\n\n .domains rect {\n cursor: pointer;\n stroke-opacity: 0\n }\n\n .domains rect:hover {\n cursor: pointer;\n stroke-opacity: 1.0\n }\n @transition_time: 20ms;\n\n /* see src/components/Edge.js#HOVER_SCALE_FACTOR (currently line 8) */\n @hover_scale_factor: 2;\n @hover_stroke_width: 2;\n @collapsed_node_stroke_width: 1;\n\n @default_node_fill: #fff;\n @default_node_stroke: #777;\n\n @ortholog_stroke_color: orange;\n @paralog_stroke_color: green;\n @representative_fill_color: @ortholog_stroke_color;\n @self_color: red;\n\n @speciation_color: #000080;\n @duplication_color: #cd0000;\n\n @font_size: 11px;\n @font_weight_highlight: bolder;\n\n @invisible: 0;\n @visible: 1;\n\n}\n\n.popover-title .tooltip-title-button {\n margin-top: -4px !important;\n margin-right: 4px !important;\n}\n\n.msa-slider {\n position: relative;\n padding-top: 10px;\n padding-bottom: 0px;\n margin-bottom: -10px;\n}\n\n.resize-drag {\n background: rgba(0, 0, 0, 0.0);\n border: 4px solid #7c8383;\n color: red;\n font-size: 1px;\n font-family: sans-serif;\n border-radius: 8px;\n\n /* This makes things *much* easier */\n box-sizing: border-box;\n}\n\n.resize-container {\n width: 100%;\n height: 100%;\n}\n",null,"/* ===== Pathways layout ===== */\n\n.pathways-layout {\n display: flex;\n align-items: stretch;\n}\n\n.pathways-tree-toggle {\n flex: 0 0 auto;\n width: 24px;\n border: 1px solid #ccc;\n border-right: none;\n background: #f5f5f5;\n cursor: pointer;\n font-size: 12px;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #666;\n border-radius: 4px 0 0 4px;\n}\n.pathways-tree-toggle:hover {\n background: #e0e0e0;\n color: #333;\n}\n\n.pathways-tree-panel {\n flex: 0 0 250px;\n width: 250px;\n height: 100%;\n overflow-y: auto;\n overflow-x: hidden;\n border: 1px solid #ccc;\n border-right: none;\n}\n\n.pathways-diagram-panel {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n.pathways-resize-handle {\n height: 6px;\n background: #e0e0e0;\n border: 1px solid #ccc;\n border-top: none;\n cursor: ns-resize;\n transition: background 0.15s;\n}\n.pathways-resize-handle:hover {\n background: #179ed3;\n}\n\n/* ===== Compact tree items (react-simple-tree-menu overrides) ===== */\n\n.pathways-tree-panel .rstm-tree-item-group {\n border-top: none;\n}\n\n.pathways-tree-panel .rstm-tree-item {\n padding: 0.2rem 0.4rem;\n font-size: 0.8rem;\n line-height: 1.3;\n border-bottom: 1px solid #eee;\n}\n/* Override inline padding-left set by react-simple-tree-menu.\n The library uses: 0.75 + iconSize*(hasNodes?0:1) + level*1.75 rem\n We shrink the per-level indent from 1.75rem to 0.75rem */\n.pathways-tree-panel .rstm-tree-item-level0 { padding-left: 0.4rem !important; }\n.pathways-tree-panel .rstm-tree-item-level0 > .rstm-toggle-icon { margin-left: 0; }\n.pathways-tree-panel .rstm-tree-item-level1 { padding-left: 1.15rem !important; }\n.pathways-tree-panel .rstm-tree-item-level2 { padding-left: 1.9rem !important; }\n.pathways-tree-panel .rstm-tree-item-level3 { padding-left: 2.65rem !important; }\n.pathways-tree-panel .rstm-tree-item-level4 { padding-left: 3.4rem !important; }\n.pathways-tree-panel .rstm-tree-item-level5 { padding-left: 4.15rem !important; }\n.pathways-tree-panel .rstm-tree-item-level6 { padding-left: 4.9rem !important; }\n.pathways-tree-panel .rstm-tree-item-level7 { padding-left: 5.65rem !important; }\n\n.pathways-tree-panel .rstm-tree-item--active {\n color: white;\n background: #179ed3;\n border-bottom-color: #127aa8;\n}\n\n.pathways-tree-panel .rstm-toggle-icon-symbol {\n width: 1rem;\n height: 1rem;\n line-height: 1rem;\n font-size: 0.7rem;\n}\n\n/* ===== Legacy tree-view classes ===== */\n\n.tree-view-root {}\n\n.tree-view-node {\n margin-left: 8px;\n}\n\n.tree-view-node-collapse-toggle.collapse-spacer {\n width: 12px;\n display: inline-block;\n}\n\n.tree-view-node-collapse-toggle {\n margin-right: 2px;\n width: 12px;\n}\n\n.tree-view-node-label {\n font-size: smaller;\n margin-left: 2px;\n padding: 1px;\n border: 1px solid #fff;\n}\n\n.tree-view-node-label.selected {\n border: 1px solid #003f81;\n border-radius: 3px;\n background-color: #808080;\n}\n\n.tree-view-node-checkbox {}\n.tree-view-node-children {}\n\n",".button-like-link {\n display: inline-block;\n padding: 0;\n background-color: #fff0;\n color: #007bff;\n text-decoration: underline;\n border: none;\n cursor: pointer;\n}\n","/* styles.css */\n.fasta-container {\n position: relative;\n padding: 2ch;\n background-color: #fcfffd;\n border-color: #557b74;\n border-style: dashed;\n line-height: 0.925em;\n /*margin: auto; !* Center the container *!*/\n}\n.styled-span {\n display: flex;\n align-items: center;\n text-align: center;\n}\n.vertical-line {\n flex-grow: 1;\n height: 20px;\n background-color: black;\n}\n.horizontal-line {\n width: 60px;\n min-width: 15px;\n height: 3px;\n background-color: black;\n margin: 0;\n}\ncode.fasta {\n white-space: pre-wrap;\n color: #595959;\n}\n.header {\n color: black;\n}\n.upstream {\n color: #80a0a0;\n}\n.downstream {\n color: #80a0a0;\n}\n.intron {\n color: #aaaaaa;\n}\n.utr5 {\n background-color: #aaccaf;\n}\n.utr5-other {\n background-color: #cfe1d2;\n}\n.cds {\n background-color: #a7b4d3;\n}\n.cds-other {\n background-color: #d0d8e6;\n}\n.utr3 {\n background-color: #c5a3bf;\n}\n.utr3-other {\n background-color: #dcc9d9;\n}\n.square-utr5 {\n width: 20px;\n height: 20px;\n background: linear-gradient(to bottom right, #aaccaf 0%, #aaccaf 50%, #cfe1d2 50%, #cfe1d2 100%);\n}\n.square-cds {\n width: 20px;\n height: 20px;\n background: linear-gradient(to bottom right, #a7b4d3 0%, #a7b4d3 50%, #d0d8e6 50%, #d0d8e6 100%);\n}\n.square-utr3 {\n width: 20px;\n height: 20px;\n background: linear-gradient(to bottom right, #c5a3bf 0%, #c5a3bf 50%, #dcc9d9 50%, #dcc9d9 100%);\n}\n\n.flanking-guide {\n display: grid;\n grid-template-columns: auto 60px auto 60px auto;\n align-items: center;\n row-gap: 2px;\n column-gap: 0;\n width: fit-content;\n}\n/* Row 1 */\n.flanking-label-left {\n text-align: right;\n padding-right: 0.5rem;\n}\n.flanking-center-label {\n text-align: center;\n white-space: nowrap;\n padding: 0 0.25rem;\n}\n.flanking-guide > .horizontal-line {\n height: 3px;\n background-color: black;\n align-self: center;\n}\n.flanking-label-right {\n text-align: left;\n padding-left: 0.5rem;\n}\n/* Row 2 */\n.flanking-value-left {\n text-align: right;\n min-width: 5ch;\n padding-right: 0.5rem;\n}\n.flanking-value-right {\n text-align: left;\n min-width: 5ch;\n padding-left: 0.5rem;\n}\n\n.reverse-slide {\n direction: rtl;\n}\n.fasta-key {\n position: absolute;\n top: 9px;\n right: 40px;\n background: none;\n border: none;\n cursor: default;\n font-family: monospace;\n font-size: 11pt;\n color: #555;\n}\n.copy-button {\n position: absolute;\n top: 3px;\n right: -5px;\n background: none;\n border: none;\n cursor: pointer;\n font-size: 1.5rem;\n color: #555;\n}\n.notification {\n position: absolute;\n top: 0;\n right: 0;\n background-color: #050505;\n color: #fff;\n padding: 5px;\n z-index: 999;\n font-weight: bold;\n font-style: italic;\n font-size: smaller;\n}\n",".taxogenomic-vis {\n @import 'taxonomy';\n}",".accordion-button {\n padding:0.4rem!important;\n}\n.accordion-button:hover {\n background-color: #dbe8f3;\n}",".exporter-view {\n display: grid;\n grid-template-columns: 1fr 8px 1fr;\n gap: 0;\n padding: 0.75rem;\n min-height: 400px;\n}\n\n.exporter-view > .exporter-pane:first-child {\n margin-right: 0.5rem;\n}\n\n.exporter-view > .exporter-pane.exporter-right-pane {\n margin-left: 0.5rem;\n}\n\n.exporter-divider {\n cursor: col-resize;\n background: transparent;\n position: relative;\n align-self: stretch;\n}\n\n.exporter-divider::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n width: 2px;\n background: #d0d4da;\n border-radius: 1px;\n transition: background 0.15s;\n}\n\n.exporter-divider:hover::before,\n.exporter-divider.dragging::before {\n background: #7a8aa0;\n width: 3px;\n}\n\n.exporter-pane {\n border: 1px solid #e0e0e0;\n border-radius: 4px;\n background: #fff;\n display: flex;\n flex-direction: column;\n max-height: 70vh;\n overflow: hidden;\n}\n\n.exporter-pane-header {\n padding: 0.5rem 0.75rem;\n border-bottom: 1px solid #e0e0e0;\n background: #f8f9fa;\n font-size: 0.9rem;\n}\n\n.exporter-pane-header-row {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.exporter-field-search-inline {\n margin-left: auto;\n margin-bottom: 0;\n max-width: 220px;\n height: 1.75rem;\n font-size: 0.85rem;\n padding: 0.15rem 0.5rem;\n}\n\n.exporter-pane-body {\n flex: 1;\n overflow-y: auto;\n padding: 0.5rem;\n}\n\n.exporter-panel-empty {\n padding: 1rem;\n color: #888;\n text-align: center;\n font-size: 0.9rem;\n}\n\n/* --- FieldTree --- */\n\n.exporter-field-tree {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.exporter-field-search {\n margin-bottom: 0.5rem;\n font-size: 0.9rem;\n}\n\n.exporter-field-tree-body {\n flex: 1;\n overflow-y: auto;\n}\n\n.exporter-group {\n margin-bottom: 0.25rem;\n}\n\n.exporter-group-header {\n cursor: pointer;\n padding: 0.25rem 0.5rem;\n background: #eef1f4;\n border-radius: 3px;\n display: flex;\n align-items: center;\n gap: 0.4rem;\n user-select: none;\n font-size: 0.9rem;\n}\n\n.exporter-group-header:hover {\n background: #e3e7ec;\n}\n\n.exporter-group-chevron {\n display: inline-flex;\n align-items: center;\n color: #666;\n}\n\n.exporter-group-count {\n font-size: 0.75rem;\n color: #666;\n background: #fff;\n padding: 0 0.4rem;\n border-radius: 10px;\n border: 1px solid #ddd;\n}\n\n.exporter-group-actions {\n margin-left: auto;\n display: inline-flex;\n gap: 0.25rem;\n}\n\n.exporter-group-action {\n font-size: 0.7rem;\n padding: 0.05rem 0.4rem;\n background: #fff;\n border: 1px solid #ccc;\n border-radius: 3px;\n color: #333;\n cursor: pointer;\n line-height: 1.4;\n}\n\n.exporter-group-action:hover:not(:disabled) {\n background: #f0f4f8;\n border-color: #88a;\n}\n\n.exporter-group-action:disabled {\n opacity: 0.4;\n cursor: default;\n}\n\n.exporter-group-fields {\n list-style: none;\n margin: 0.25rem 0 0.5rem 1.25rem;\n padding: 0;\n}\n\n.exporter-group-fields li {\n padding: 0.1rem 0.25rem;\n font-size: 0.85rem;\n}\n\n.exporter-group-fields label {\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 0.35rem;\n margin: 0;\n padding: 0.1rem 0.25rem;\n border-radius: 2px;\n width: 100%;\n}\n\n.exporter-group-fields label:hover {\n background: #f0f4f8;\n}\n\n.exporter-field-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-field-badge {\n font-size: 0.7rem;\n color: #888;\n font-family: monospace;\n}\n\n.exporter-group-truncated {\n color: #888;\n font-size: 0.8rem;\n padding-left: 0.5rem;\n}\n\n/* --- SelectedFields --- */\n\n.exporter-selected {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.exporter-selected-header {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.25rem 0;\n margin-bottom: 0.5rem;\n border-bottom: 1px solid #eee;\n}\n\n.exporter-selected-count {\n font-size: 0.75rem;\n color: #666;\n background: #eef1f4;\n padding: 0 0.5rem;\n border-radius: 10px;\n}\n\n.exporter-clear-btn {\n margin-left: auto;\n font-size: 0.8rem;\n padding: 0;\n}\n\n.exporter-selected-list {\n list-style: none;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n flex: 1;\n}\n\n.exporter-selected-list li {\n display: flex;\n align-items: center;\n gap: 0.4rem;\n padding: 0.25rem 0.35rem;\n border-bottom: 1px solid #f0f0f0;\n font-size: 0.85rem;\n}\n\n.exporter-selected-index {\n font-family: monospace;\n color: #888;\n min-width: 1.75rem;\n}\n\n.exporter-selected-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-selected-group {\n color: #888;\n}\n\n.exporter-selected-actions {\n display: flex;\n gap: 0.15rem;\n}\n\n.exporter-selected-actions button {\n padding: 0.1rem 0.35rem;\n line-height: 1;\n}\n\n/* --- Right pane (selected + preview) --- */\n\n.exporter-right-pane {\n max-height: 70vh;\n}\n\n.exporter-right-split {\n display: flex;\n flex-direction: column;\n flex: 1;\n overflow: hidden;\n}\n\n.exporter-selected-section {\n flex: 0 0 auto;\n max-height: 35%;\n overflow-y: auto;\n padding: 0.5rem;\n border-bottom: 1px solid #e0e0e0;\n}\n\n.exporter-preview-section {\n flex: 1;\n overflow: hidden;\n padding: 0.5rem;\n display: flex;\n flex-direction: column;\n}\n\n/* --- Preview --- */\n\n.exporter-preview {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.exporter-preview-toolbar {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n padding-bottom: 0.35rem;\n margin-bottom: 0.35rem;\n border-bottom: 1px solid #eee;\n font-size: 0.85rem;\n}\n\n.exporter-preview-format label {\n margin-right: 0.5rem;\n cursor: pointer;\n}\n\n.exporter-preview-format input {\n margin-right: 0.25rem;\n}\n\n.exporter-preview-status {\n margin-left: auto;\n color: #888;\n}\n\n.exporter-cutoffs-btn {\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n padding: 0.1rem 0.5rem;\n font-size: 0.8rem;\n}\n\n.exporter-modal-backdrop {\n position: fixed;\n inset: 0;\n background: rgba(0, 0, 0, 0.35);\n z-index: 1050;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.exporter-modal {\n background: #fff;\n border-radius: 6px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);\n width: min(420px, 90vw);\n display: flex;\n flex-direction: column;\n}\n\n.exporter-modal-header {\n display: flex;\n align-items: center;\n padding: 0.6rem 0.9rem;\n border-bottom: 1px solid #eee;\n}\n\n.exporter-modal-close {\n margin-left: auto;\n background: transparent;\n border: 0;\n font-size: 1.25rem;\n line-height: 1;\n color: #666;\n cursor: pointer;\n padding: 0 0.25rem;\n}\n\n.exporter-modal-body {\n padding: 0.9rem;\n display: flex;\n flex-direction: column;\n gap: 0.85rem;\n}\n\n.exporter-modal-field label {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n font-size: 0.85rem;\n font-weight: 500;\n}\n\n.exporter-modal-field input {\n font: inherit;\n padding: 0.25rem 0.5rem;\n border: 1px solid #c0c4ca;\n border-radius: 3px;\n}\n\n.exporter-modal-field small {\n color: #777;\n font-size: 0.75rem;\n margin-top: 0.15rem;\n}\n\n.exporter-modal-footer {\n display: flex;\n justify-content: flex-end;\n gap: 0.5rem;\n padding: 0.6rem 0.9rem;\n border-top: 1px solid #eee;\n}\n\n.exporter-preview-status.error {\n color: #c33;\n}\n\n.exporter-preview-body {\n flex: 1;\n overflow: auto;\n background: #fafbfc;\n border: 1px solid #eee;\n border-radius: 3px;\n}\n\n.exporter-preview-empty {\n padding: 1rem;\n color: #888;\n text-align: center;\n}\n\n.exporter-preview-tsv-scroll {\n overflow: auto;\n max-width: 100%;\n}\n\n.exporter-preview-tsv {\n border-collapse: collapse;\n font-size: 0.8rem;\n font-family: -apple-system, BlinkMacSystemFont, sans-serif;\n width: auto;\n}\n\n.exporter-preview-tsv th,\n.exporter-preview-tsv td {\n padding: 0.2rem 0.5rem;\n border: 1px solid #e5e7ea;\n max-width: 420px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-preview-tsv th {\n position: relative;\n}\n\n.exporter-preview-col-resizer {\n position: absolute;\n top: 0;\n right: -3px;\n width: 6px;\n height: 100%;\n cursor: col-resize;\n user-select: none;\n z-index: 2;\n}\n\n.exporter-preview-col-resizer::after {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n width: 1px;\n background: transparent;\n transition: background 0.15s;\n}\n\n.exporter-preview-col-resizer:hover::after,\n.exporter-preview-col-resizer:active::after {\n background: #7a8aa0;\n width: 2px;\n}\n\n.exporter-preview-tsv th {\n background: #f0f3f6;\n text-align: left;\n position: sticky;\n top: 0;\n z-index: 1;\n padding: 0.15rem 0.25rem;\n}\n\n.exporter-preview-th-inner {\n display: flex;\n align-items: center;\n gap: 0.15rem;\n min-width: 0;\n}\n\n.exporter-preview-th-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-preview-reorder-btn {\n flex: 0 0 auto;\n background: transparent;\n border: 1px solid transparent;\n border-radius: 3px;\n padding: 0;\n line-height: 1;\n color: #555;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n}\n\n.exporter-preview-reorder-btn:hover:not(:disabled) {\n background: #fff;\n border-color: #bbb;\n color: #111;\n}\n\n.exporter-preview-reorder-btn:disabled {\n opacity: 0.25;\n cursor: default;\n}\n\n.exporter-preview-fields-count {\n color: #666;\n display: inline-flex;\n align-items: center;\n gap: 0.35rem;\n}\n\n.exporter-preview-tsv tr:hover td {\n background: #f4f7fa;\n}\n\n.exporter-preview-empty-row {\n text-align: center;\n color: #888;\n padding: 1rem !important;\n}\n\n.exporter-preview-json {\n margin: 0;\n padding: 0.5rem;\n font-size: 0.75rem;\n line-height: 1.4;\n}\n\n/* --- Export footer --- */\n\n.exporter-footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.75rem;\n padding: 0.5rem 0.75rem;\n border-top: 1px solid #e0e0e0;\n background: #f8f9fa;\n flex: 0 0 auto;\n}\n\n.exporter-footer-summary {\n color: #555;\n}\n"],"names":[],"version":3,"file":"index.css.map"}
1
+ {"mappings":"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","sources":["b17bddada667de42","src/components/styles.css","src/components/results/genes.css","node_modules/gramene-genetree-vis/src/styles/msa.less","node_modules/gramene-genetree-vis/src/styles/tree.less","node_modules/react-simple-tree-menu/src/sass/main.scss","src/components/results/details/tree-view.css","src/components/results/details/VEP.css","src/components/results/details/sequences.css","node_modules/gramene-search-vis/styles/main.less","src/components/results/expression.css","src/components/exporter/styles.css","src/components/exprViz/styles.css"],"sourcesContent":["@import \"5abb1db407612521\";\n@import \"1caf78728b2f5137\";\n@import \"2166a150e9f31214\";\n@import \"938d6be3f57789df\";\n@import \"aa165d1be5d1c755\";\n@import \"996096824b9f7d5a\";\n@import \"41a1dcf3bc8b5377\";\n@import \"c52016833805a9f9\";\n@import \"6f643ac0480217ea\";\n@import \"c6576577b854e1eb\";\n@import \"b02f188cedfc7aaa\";\n@import \"c165ffd6f0d0851d\";\n","/* ── Main search layout: sidebar + content ──────────────────────────────── */\n.search-views-layout {\n display: flex;\n align-items: flex-start;\n}\n\n.search-views-content {\n flex: 1 1 0;\n min-width: 0; /* prevent flex children from overflowing */\n}\n\n.gramene-sidebar,\n.sorghumbase-sidebar {\n flex: 0 0 250px;\n position: sticky;\n top: 0;\n max-height: 100vh;\n overflow-y: auto;\n padding-left: 8px;\n padding-right: 8px;\n padding-bottom: 8px;\n}\n\n.gramene-sidebar {\n background-color: #557b74;\n}\n.sorghumbase-sidebar {\n background-color: #a03e34;\n}\n\n/* ── Mobile: stack sidebar above content ────────────────────────────────── */\n@media (max-width: 767px) {\n .search-views-layout {\n flex-direction: column;\n }\n .gramene-sidebar,\n .sorghumbase-sidebar {\n flex: 0 0 auto;\n position: static;\n width: 100%;\n max-height: none;\n overflow-y: visible;\n }\n .search-views-content {\n width: 100%;\n }\n}\n.gramene-auth-container,\n.sorghumbase-auth-container,\n.gramene-filter-container,\n.sorghumbase-filter-container {\n}\n.gramene-filter {\n padding-left: 4px;\n padding-right: 4px;\n padding-bottom: 4px;\n background-color: white;\n font-size: 0.875rem; /* ~14px — explicit instead of 'small' keyword */\n}\n.gramene-filter span:hover {\n font-weight:bolder;\n}\n.gramene-filter-AND {\n background-color: #ffcd82;\n}\n.gramene-filter-OR {\n background-color: #c5eeb9;\n}\n.gramene-filter-NOT {\n border-left-color: #ff5354;\n border-left-style: inset;\n border-left-width: 4px;\n padding-left: 4px;\n}\n.gramene-filter-operation {\n text-align: center;\n font-style: italic;\n}\n.gramene-filter-marked {\n font-weight: bolder;\n /*background-color: #feff96;*/\n}\n.gramene-filter-menu ul {\n border-top-style: solid;\n border-top-width: 2px;\n padding-left: 0;\n}\n.gramene-filter-menu li {\n display: block;\n cursor: pointer;\n padding: 8px 8px 8px 15px; /* vertical padding makes tap targets ~36px+ */\n}\n.gramene-filter-menu li:hover {\n background-color: #feff96;\n}\n\n.gramene-view-header {\n width: 100%;\n display: flex;\n flex-wrap: nowrap;\n justify-content: space-evenly;\n font-size: larger;\n font-weight: bold;\n background-color: #fff3a96e;\n border-top: solid;\n border-top-color: #557b74;\n color: #a03e34;\n}\n\n.gramene-view-container {\n}\n.gramene-view {\n padding-left: 0px;\n padding-right: 10px;\n margin-bottom: 0;\n background-color: white;\n}\n.gramene-view-span-on {\n padding-left: 5px;\n cursor: pointer;\n vertical-align: text-bottom;\n color: #a03e34;\n}\n.gramene-view-span-off {\n padding-left: 5px;\n cursor: pointer;\n vertical-align: text-bottom;\n}\n.gramene-view li {\n display: block;\n cursor: pointer;\n padding-left: 5px;\n border-left-style: inset;\n border-left-width: 8px;\n margin-bottom: 2px;\n}\n\n.gramene-view-on {\n border-left-color: #40a0ff;\n font-weight: bold;\n}\n.gramene-view-off {\n border-left-color: #ff6d68;\n}\n.gramene-view-disabled {\n color: darkgray;\n border-left-color: #efefef;\n cursor: default!important;\n}\n#gramene-suggestion button {\n border-radius: .6rem;\n line-height: 1;\n}\n#gramene-suggestion button:focus {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n/* ── Collapsible sidebar sections ─────────────────────────────────────── */\n.sidebar-section {\n margin-bottom: 4px;\n}\n\n.sidebar-section-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n cursor: pointer;\n padding: 2px 4px 2px 6px;\n color: cornsilk;\n user-select: none;\n border-top: 3px solid;\n}\n\n/* Dark background + matching top border per site */\n.gramene-sidebar .sidebar-section-header {\n background-color: #557b74;\n border-top-color: #3d5b55;\n}\n.sorghumbase-sidebar .sidebar-section-header {\n background-color: #a03e34;\n border-top-color: #7a2f27;\n}\n\n.sidebar-section-header:hover {\n background: rgba(255,255,255,0.1);\n}\n.gramene-sidebar .sidebar-section-header:hover {\n background-color: #4a6d66;\n}\n.sorghumbase-sidebar .sidebar-section-header:hover {\n background-color: #8c352d;\n}\n\n.sidebar-section-actions {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n color: cornsilk;\n}\n\n.sidebar-section-toggle {\n font-size: 0.85rem;\n font-weight: bold;\n}\n.sidebar-section-toggle svg {\n stroke: currentColor;\n stroke-width: 2;\n}\n\n.sidebar-section-body {\n background-color: #fff3a9;\n padding: 4px;\n}\n\n/* ── Mobile: compact sidebar when stacked at top ─────────────────────── */\n@media (max-width: 767px) {\n /* Tighten sidebar padding */\n .gramene-sidebar,\n .sorghumbase-sidebar {\n padding: 4px 8px;\n }\n\n /* Views: display as a compact inline flow */\n .gramene-view {\n display: flex;\n flex-wrap: wrap;\n gap: 2px 8px;\n padding: 2px 4px;\n }\n .gramene-view li {\n display: inline-flex;\n align-items: center;\n padding-left: 4px;\n margin-bottom: 0;\n font-size: 0.8rem;\n border-left-width: 4px;\n }\n\n /* View header: smaller */\n .gramene-view-header {\n font-size: small;\n padding: 2px 0;\n }\n\n /* Filters: compact */\n .gramene-filter {\n font-size: 0.8rem;\n padding: 2px 4px;\n }\n .gramene-filter-menu li {\n padding: 4px 4px 4px 10px;\n }\n\n /* Suggestion buttons: reasonable tap area */\n #gramene-suggestion button {\n padding: 0.35rem 0.6rem;\n margin-bottom: 2px;\n font-size: 0.8rem;\n }\n\n /* Prevent iOS zoom-on-focus (requires >= 16px) without forcing extra height */\n #search-input {\n font-size: 1rem;\n }\n}\n\n/* ── Taxonomy modal tree ─────────────────────────────────────────────────── */\n.tax-tree { margin-top: 8px; font-size: 14px; }\n.tax-node { border-radius: 2px; }\n.tax-row { display: flex; align-items: center; gap: 4px; padding: 2px 4px; }\n.tax-chevron { cursor: pointer; width: 14px; display: inline-flex; align-items: center; }\n.tax-chevron-spacer { display: inline-block; width: 14px; }\n.tax-label { }\n.tax-label-internal { font-weight: 600; }\n.tax-sep { color: #888; font-weight: normal; }\n.tax-count { color: #555; font-size: 12px; margin-left: 4px; }\n.tax-self-leaf { margin-left: 8px; font-size: 12px; color: #444; display: inline-flex; align-items: center; gap: 2px; }\n\n.tax-ellipsis { cursor: help; color: #666; }\n.tax-ellipsis-full { display: none; }\n.tax-ellipsis:hover .tax-ellipsis-short { display: none; }\n.tax-ellipsis:hover .tax-ellipsis-full { display: inline; color: #333; }\n\n.tax-search { position: relative; margin: 8px 0; }\n.tax-search-input { width: 100%; padding: 4px 8px; font-size: 14px;\n border: 1px solid #bbb; border-radius: 3px; }\n.tax-search-results { position: absolute; left: 0; right: 0; top: 100%;\n max-height: 280px; overflow-y: auto; z-index: 10;\n background: white; border: 1px solid #bbb;\n border-top: none; border-radius: 0 0 3px 3px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1); }\n.tax-search-hit { padding: 4px 8px; cursor: pointer; font-size: 13px; }\n.tax-search-hit:hover,\n.tax-search-hit-active { background: #e3ecff; }\n.tax-search-name { font-weight: 600; }\n.tax-search-syn { color: #777; font-style: italic; }\n.tax-search-rank { color: #0366d6; font-size: 11px; text-transform: uppercase;\n margin-left: 4px; }\n.tax-search-count { color: #555; font-size: 12px; }\n.tax-search-empty { padding: 6px 8px; color: #777; font-style: italic; font-size: 13px; }\n\n.tax-node-highlight { outline: 2px solid #ffc107;\n animation: taxFlash 1.6s ease-out; }\n@keyframes taxFlash {\n 0% { background-color: #fff3cd; }\n 100% { background-color: transparent; }\n}\n\n\n",".visible-detail {\n border: 1px solid #557B74;\n padding: 6px 12px;\n}\n.detail {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.table {\n width: 100%;\n max-width: 100%;\n}\n.xrefs {\n border-collapse: collapse;\n border-spacing: 0;\n border-color: grey;\n table-layout: auto;\n width: 100%;\n}\n/* Col 1 (PubMed link) and col 2 (Curation source): shrink to content */\ntable.xrefs th:nth-child(1),\ntable.xrefs td:nth-child(1),\ntable.xrefs th:nth-child(2),\ntable.xrefs td:nth-child(2) {\n width: 1%;\n white-space: nowrap;\n}\n/* Col 3 (Title/Description): fill remaining space */\ntable.xrefs th:nth-child(3),\ntable.xrefs td:nth-child(3) {\n width: 100%;\n}\n/* Legacy column-width classes — kept for other tables that use them */\n.xref-name-col { white-space: nowrap; }\n.xref-value-col { }\n.xref-80-col { }\n.xref-70-col { }\n.xref-10-col { white-space: nowrap; }\n.xref-id-list {\n padding-left: 0;\n list-style: none;\n}\n.result-gene {\n padding: 0.2em;\n border: 5px solid white;\n}\n.result-gene:hover {\n border-color: antiquewhite;\n}\n.gene-title {\n /*padding-top:0.5em;*/\n}\n.gene-id {\n /*white-space: nowrap;*/\n color: black;\n}\n.gene-name {\n color: #557B74;\n margin-bottom: 0;\n}\n.gene-description {\n margin-bottom: 0;\n}\n.gene-species {\n white-space: nowrap;\n font-style: italic;\n font-size:small;\n font-weight: bold;\n}\n.gene-synonyms {\n font-size: small;\n}\n.gene-extras {\n border: dashed 1px blue;\n}\n.gene-panlink {\n float: right;\n margin-left: 0.5rem;\n margin-bottom: 0.25rem;\n}\n.gene-panlink img {\n height: 60px;\n width: auto;\n max-width: 100%;\n vertical-align: top;\n}\n.suggestion-panlink img {\n height: 60px;\n width: auto;\n max-width: 100%;\n}\n@media (max-width: 1200px) {\n .gene-panlink img,\n .suggestion-panlink img {\n height: 30px;\n }\n}\n@media (max-width: 767px) {\n /* Allow the ortholog/TAIR box to stack below the gene title on mobile.\n It stays inside .result-gene-summary, so it still appears above .gene-detail-tabs. */\n .result-gene-summary {\n flex-wrap: wrap;\n }\n .result-gene-title-body {\n flex: 1 1 100%;\n }\n .model-ortholog,\n .closest-ortholog,\n .gene-summary-tair {\n flex: 1 1 100%;\n max-width: 100%;\n width: auto;\n margin-left: 0;\n margin-top: 8px;\n }\n /* Stack ortholog box contents vertically on narrow screens */\n .model-ortholog,\n .closest-ortholog {\n grid-template-columns: 1fr;\n }\n .model-ortholog h3.gene-id,\n .closest-ortholog h3.gene-id {\n grid-column: 1;\n grid-row: 2;\n }\n .model-ortholog .gene-species,\n .closest-ortholog .gene-species {\n grid-column: 1;\n grid-row: 3;\n text-align: left;\n }\n .model-ortholog .rep-identity,\n .closest-ortholog .rep-identity {\n grid-column: 1;\n grid-row: 4;\n text-align: left;\n }\n .model-ortholog p,\n .closest-ortholog p {\n grid-row: 5;\n }\n /* Show descriptions on mobile (no hover available) */\n .model-ortholog p,\n .closest-ortholog p {\n display: block;\n }\n /* PanLink: stop floating, display inline next to gene title */\n .gene-panlink {\n float: none;\n display: inline;\n margin-left: 0.25rem;\n margin-bottom: 0;\n vertical-align: middle;\n }\n /* Papers table only: hide \"Curation source\" column on small screens */\n table.xrefs-pubs th:nth-child(2),\n table.xrefs-pubs td:nth-child(2) {\n display: none;\n }\n}\n.gene-curation {\n flex-shrink: 0;\n margin-top: 20px;\n border: 1px solid grey;\n}\n.gene-curation span {\n width: 20px;\n display: inline-block;\n color: white;\n text-align: center;\n}\n.gene-curation .okay {\n background-color: #0c00f3;\n}\n.gene-curation .flagged {\n background-color: darkorange;\n}\n.gene-detail-tabs {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n}\n/* Tab items: 4-per-row by default, overrides Bootstrap col-md-1 (8.33%) */\n.gene-detail-tabs > div {\n flex: 0 0 25%;\n width: 25%;\n max-width: 25%;\n box-sizing: border-box;\n padding: 6px 4px;\n min-height: 36px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n/* At wide viewports, all 8 fit comfortably in one row */\n@media (min-width: 992px) {\n .gene-detail-tabs > div {\n flex: 0 0 12.5%;\n width: 12.5%;\n max-width: 12.5%;\n }\n}\n.gene-detail-tab-closed {\n color: darkgreen;\n cursor: pointer;\n /*background-color: lightgray;*/\n}\n.gene-detail-tab-disabled {\n /*color: white;*/\n /*background-color: lightgray;*/\n color: lightgray;\n cursor: not-allowed;\n}\n.gene-detail-tab-empty {\n color: darkgreen;\n cursor: pointer;\n font-style: oblique;\n /*background-color: lightgray;*/\n}\n.gene-detail-tab-empty::before {\n content: \"Add \";\n}\n.gene-detail-tab-expanded {\n color: white;\n background-color: #557B74;\n cursor: pointer;\n}\n.result-gene-summary {\n display: flex;\n flex-flow: row nowrap;\n justify-content: flex-start;\n align-items: flex-start;\n}\n.result-gene-summary .species-name {\n white-space: nowrap;\n font-style: italic;\n}\n.result-gene-title-body {\n flex: 1 1 auto;\n max-width: 1036px;\n width: 100%;\n}\n.model-ortholog, .closest-ortholog, .gene-summary-tair {\n cursor: pointer;\n flex: 0 0 auto;\n max-width: 380px;\n width: 380px;\n font-size: smaller;\n margin-top: 10px;\n padding: 0.25rem 0.5rem 0.5rem;\n margin-left: 1rem;\n border: 1px solid darkorange;\n}\n\n/* Ortholog boxes: grid — title row, then gene name left / species+identity right */\n.model-ortholog, .closest-ortholog {\n display: grid;\n grid-template-columns: 1fr auto;\n gap: 0 0.5rem;\n align-items: center;\n}\n\n/* Gene name: left column, smaller font to fit alongside species */\n.model-ortholog h3.gene-id,\n.closest-ortholog h3.gene-id {\n grid-column: 1;\n grid-row: 2;\n margin: 0;\n font-size: 1.5em;\n overflow-wrap: break-word;\n word-break: break-all;\n min-width: 0;\n}\n\n/* Species: right column, top of the pair */\n.model-ortholog .gene-species,\n.closest-ortholog .gene-species {\n grid-column: 2;\n grid-row: 2;\n text-align: right;\n align-self: end;\n}\n\n/* Identity: right column, below species (same row group as gene name) */\n.model-ortholog .rep-identity,\n.closest-ortholog .rep-identity {\n grid-column: 2;\n grid-row: 3;\n text-align: right;\n margin-left: 0;\n padding-right: 0;\n padding-top: 0;\n align-self: start;\n}\n\n/* Description: hidden by default; show on hover/focus */\n.model-ortholog p,\n.closest-ortholog p {\n grid-column: 1 / -1;\n grid-row: 4;\n display: none;\n margin: 0.25rem 0 0;\n}\n.model-ortholog:hover p,\n.model-ortholog:focus p,\n.closest-ortholog:hover p,\n.closest-ortholog:focus p {\n display: block;\n}\n\n.model-ortholog {\n border: 1px dotted darkorange;\n}\n.closest-ortholog {\n border: 1px dotted darkgreen;\n}\n\n.gene-summary-tair {\n border: 1px dotted darkblue;\n}\n.gene-summary-tair .rest {\n display: none;\n}\n\n.gene-summary-tair:hover .rest {\n display: inline;\n}\n.gene-summary-tair:focus .rest {\n display: inline;\n}\n.gene-summary-tair:hover .ellipsis {\n display: none;\n}\n.gene-summary-tair:focus .ellipsis {\n display: none;\n}\n\n/* this is the \"title\" of the closest ortholog box */\n.closest-ortholog::before,\n.model-ortholog::before,\n.gene-summary-tair::before {\n display: block;\n grid-column: 1 / -1;\n grid-row: 1;\n text-align: center;\n border: dotted 1px;\n padding: 0 0.5rem;\n margin: -0.25rem -0.5rem 0.25rem; /* bleed to box edges */\n background: #fff;\n}\n\n.model-ortholog::before {\n content: \"Model Species Homolog\";\n color: orange;\n}\n.closest-ortholog::before {\n content: \"Closest Annotated Homolog\";\n color: darkgreen;\n}\n\n/* this is the \"title\" of the closest ortholog box */\n.gene-summary-tair::before {\n content: \"TAIR Curated Description\";\n color: darkblue;\n}\n\n.rep-identity {\n margin-left: auto;\n padding-right: 10px;\n padding-top: 5px;\n font-style: italic;\n}\n.rep-identity::after {\n content: \"% identity\";\n}\n.eFP::before {\n content: url(\"../../static/images/BAR-logo.png\");\n padding-right:5px;\n position: relative;\n top: 5px;\n}\n.eFP::after {\n content: 'New!';\n color: red;\n padding-left:2px;\n font-weight: bold;\n font-style: italic;\n font-size: x-small;\n line-height: normal;\n vertical-align: super;\n}\n.gxa::before {\n content: url(\"../../static/images/expression-atlas-logo.png\");\n padding-right:5px;\n position: relative;\n top: 5px;\n}\n.gene-search-pic-sugg {\n width: 100%;\n height: 200px;\n background: url(\"../../static/images/suggestions.png\");\n background-size: contain;\n background-repeat: no-repeat;\n}\n.gene-search-pic-results {\n width: 100%;\n height: 200px;\n background: url(\"../../static/images/results.png\");\n background-size: contain;\n background-repeat: no-repeat;\n}\n.gene-search-pic-genetree {\n width: 100%;\n height: 200px;\n background: url(\"../../static/images/genetree.png\");\n background-size: contain;\n background-repeat: no-repeat;\n}\n",".MSAlignments-wrapper {\n overflow-x: scroll;\n overflow-y: hidden;\n}\n.clustal {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.clustal .A,\n.clustal .I,\n.clustal .L,\n.clustal .M,\n.clustal .F,\n.clustal .W,\n.clustal .V {\n background-color: #80a0f0;\n}\n.clustal .R,\n.clustal .K {\n background-color: #f01505;\n color: #fcff89;\n}\n.clustal .N,\n.clustal .Q,\n.clustal .S,\n.clustal .T {\n background-color: #00ff00;\n}\n.clustal .D,\n.clustal .E {\n background-color: #c048c0;\n color: #fcff89;\n}\n.clustal .C {\n background-color: #f08080;\n}\n.clustal .G {\n background-color: #f09048;\n}\n.clustal .Y\n.clustal .H {\n background-color: #15a4a4;\n}\n.clustal .P {\n background-color: #ffff00;\n}\n.clustal .B,\n.clustal .X,\n.clustal .Z {\n background-color: #ffffff;\n}\n.clustal .gap {\n color: #ccc;\n}\n.zappo {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.zappo .A,\n.zappo .I,\n.zappo .L,\n.zappo .M,\n.zappo .V {\n background-color: #ffafaf;\n}\n.zappo .R,\n.zappo .H,\n.zappo .K {\n background-color: #6464ff;\n color: #fcff89;\n}\n.zappo .N,\n.zappo .Q,\n.zappo .S,\n.zappo .T {\n background-color: #00ff00;\n}\n.zappo .D,\n.zappo .E {\n background-color: #ff0000;\n}\n.zappo .C {\n background-color: #ffff00;\n}\n.zappo .G,\n.zappo .P {\n background-color: #ff00ff;\n color: #fcff89;\n}\n.zappo .F,\n.zappo .W,\n.zappo .Y {\n background-color: #ffc800;\n}\n.zappo .B,\n.zappo .X,\n.zappo .Z {\n background-color: #ffffff;\n}\n.zappo .gap {\n color: #ccc;\n}\n.taylor {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.taylor .A {\n background-color: #ccff00;\n}\n.taylor .R {\n background-color: #0000ff;\n color: #fcff89;\n}\n.taylor .N {\n background-color: #cc00ff;\n color: #fcff89;\n}\n.taylor .D {\n background-color: #ff0000;\n color: #fcff89;\n}\n.taylor .C {\n background-color: #ffff00;\n}\n.taylor .Q {\n background-color: #ff00cc;\n}\n.taylor .E {\n background-color: #ff0066;\n color: #fcff89;\n}\n.taylor .G {\n background-color: #ff9900;\n}\n.taylor .H {\n background-color: #0066ff;\n color: #fcff89;\n}\n.taylor .I {\n background-color: #66ff00;\n}\n.taylor .L {\n background-color: #33ff00;\n}\n.taylor .K {\n background-color: #6600ff;\n color: #fcff89;\n}\n.taylor .M {\n background-color: #00ff00;\n}\n.taylor .F {\n background-color: #00ff66;\n}\n.taylor .P {\n background-color: #ffcc00;\n}\n.taylor .S {\n background-color: #ff3300;\n color: #fcff89;\n}\n.taylor .T {\n background-color: #ff6600;\n}\n.taylor .W {\n background-color: #00ccff;\n}\n.taylor .Y {\n background-color: #00ffcc;\n}\n.taylor .V {\n background-color: #99ff00;\n}\n.taylor .B,\n.taylor .X,\n.taylor .Z {\n background-color: #ffffff;\n}\n.taylor .gap {\n color: #ccc;\n}\n.hydrophobicity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n color: #fcff89;\n}\n.hydrophobicity .A {\n background-color: #ad0052;\n}\n.hydrophobicity .R,\n.hydrophobicity .K {\n background-color: #0000ff;\n}\n.hydrophobicity .N,\n.hydrophobicity .D,\n.hydrophobicity .Q,\n.hydrophobicity .E,\n.hydrophobicity .B,\n.hydrophobicity .Z {\n background-color: #0c00f3;\n}\n.hydrophobicity .C {\n background-color: #c2003d;\n}\n.hydrophobicity .G {\n background-color: #6a0095;\n}\n.hydrophobicity .H {\n background-color: #1500ea;\n}\n.hydrophobicity .L {\n background-color: #ea0015;\n}\n.hydrophobicity .M {\n background-color: #b0004f;\n}\n.hydrophobicity .F {\n background-color: #cb0034;\n}\n.hydrophobicity .P {\n background-color: #4600b9;\n}\n.hydrophobicity .S {\n background-color: #5e00a1;\n}\n.hydrophobicity .T {\n background-color: #61009e;\n}\n.hydrophobicity .W {\n background-color: #5b00a4;\n}\n.hydrophobicity .Y {\n background-color: #4f00b0;\n}\n.hydrophobicity .V {\n background-color: #f60009;\n}\n.hydrophobicity .X {\n background-color: #680097;\n}\n.hydrophobicity .gap {\n color: #ccc;\n}\n.helix_propensity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.helix_propensity .A {\n background-color: #e718e7;\n}\n.helix_propensity .R {\n background-color: #6f906f;\n}\n.helix_propensity .N {\n background-color: #1be41b;\n}\n.helix_propensity .D {\n background-color: #778877;\n}\n.helix_propensity .C {\n background-color: #23dc23;\n}\n.helix_propensity .Q {\n background-color: #926d92;\n}\n.helix_propensity .E {\n background-color: #ff00ff;\n}\n.helix_propensity .G {\n background-color: #00ff00;\n}\n.helix_propensity .H {\n background-color: #758a75;\n}\n.helix_propensity .I {\n background-color: #8a758a;\n}\n.helix_propensity .L {\n background-color: #ae51ae;\n}\n.helix_propensity .K {\n background-color: #a05fa0;\n}\n.helix_propensity .M {\n background-color: #ef10ef;\n}\n.helix_propensity .F {\n background-color: #986798;\n}\n.helix_propensity .P {\n background-color: #00ff00;\n}\n.helix_propensity .S {\n background-color: #36c936;\n}\n.helix_propensity .T {\n background-color: #47b847;\n}\n.helix_propensity .W {\n background-color: #8a758a;\n}\n.helix_propensity .Y {\n background-color: #21de21;\n}\n.helix_propensity .V {\n background-color: #857a85;\n}\n.helix_propensity .B {\n background-color: #49b649;\n}\n.helix_propensity .X {\n background-color: #758a75;\n}\n.helix_propensity .Z {\n background-color: #c936c9;\n}\n.helix_propensity .gap {\n color: #ccc;\n}\n.strand_propensity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.strand_propensity .A {\n background-color: #5858a7;\n}\n.strand_propensity .R {\n background-color: #6b6b94;\n}\n.strand_propensity .N {\n background-color: #64649b;\n}\n.strand_propensity .D {\n background-color: #2121de;\n}\n.strand_propensity .C {\n background-color: #9d9d62;\n}\n.strand_propensity .Q {\n background-color: #8c8c73;\n}\n.strand_propensity .E {\n background-color: #0000ff;\n}\n.strand_propensity .G {\n background-color: #4949b6;\n}\n.strand_propensity .H {\n background-color: #60609f;\n}\n.strand_propensity .I {\n background-color: #ecec13;\n}\n.strand_propensity .L {\n background-color: #b2b24d;\n}\n.strand_propensity .K {\n background-color: #4747b8;\n}\n.strand_propensity .M {\n background-color: #82827d;\n}\n.strand_propensity .F {\n background-color: #c2c23d;\n}\n.strand_propensity .P {\n background-color: #2323dc;\n}\n.strand_propensity .S {\n background-color: #4949b6;\n}\n.strand_propensity .T {\n background-color: #9d9d62;\n}\n.strand_propensity .W {\n background-color: #c0c03f;\n}\n.strand_propensity .Y {\n background-color: #d3d32c;\n}\n.strand_propensity .V {\n background-color: #ffff00;\n}\n.strand_propensity .B {\n background-color: #4343bc;\n}\n.strand_propensity .X {\n background-color: #797986;\n}\n.strand_propensity .Z {\n background-color: #4747b8;\n}\n.strand_propensity .A,\n.strand_propensity .R,\n.strand_propensity .N,\n.strand_propensity .D,\n.strand_propensity .E,\n.strand_propensity .G,\n.strand_propensity .H,\n.strand_propensity .K,\n.strand_propensity .P,\n.strand_propensity .S,\n.strand_propensity .B,\n.strand_propensity .Z {\n color: #fcff89;\n}\n.strand_propensity .gap {\n color: #ccc;\n}\n.turn_propensity {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.turn_propensity .gap {\n color: #ccc;\n}\n.turn_propensity .A {\n background-color: #2cd3d3;\n}\n.turn_propensity .R {\n background-color: #708f8f;\n}\n.turn_propensity .N {\n background-color: #ff0000;\n}\n.turn_propensity .D {\n background-color: #e81717;\n}\n.turn_propensity .C {\n background-color: #a85757;\n}\n.turn_propensity .Q {\n background-color: #3fc0c0;\n}\n.turn_propensity .E {\n background-color: #778888;\n}\n.turn_propensity .G {\n background-color: #ff0000;\n}\n.turn_propensity .H {\n background-color: #708f8f;\n}\n.turn_propensity .I {\n background-color: #00ffff;\n}\n.turn_propensity .L {\n background-color: #1ce3e3;\n}\n.turn_propensity .K {\n background-color: #7e8181;\n}\n.turn_propensity .M {\n background-color: #1ee1e1;\n}\n.turn_propensity .F {\n background-color: #1ee1e1;\n}\n.turn_propensity .P {\n background-color: #f60909;\n}\n.turn_propensity .S {\n background-color: #e11e1e;\n}\n.turn_propensity .T {\n background-color: #738c8c;\n}\n.turn_propensity .W {\n background-color: #738c8c;\n}\n.turn_propensity .Y {\n background-color: #9d6262;\n}\n.turn_propensity .V {\n background-color: #07f8f8;\n}\n.turn_propensity .B {\n background-color: #f30c0c;\n}\n.turn_propensity .X {\n background-color: #7c8383;\n}\n.turn_propensity .Z {\n background-color: #5ba4a4;\n}\n.turn_propensity .N,\n.turn_propensity .D,\n.turn_propensity .G,\n.turn_propensity .P,\n.turn_propensity .S,\n.turn_propensity .B {\n color: #fcff89;\n}\n.buried_index {\n white-space: nowrap;\n font-family: monospace;\n height: 18px;\n font-size: 12px;\n}\n.buried_index .gap {\n color: #ccc;\n}\n.buried_index .A {\n background-color: #00a35c;\n}\n.buried_index .R {\n background-color: #00fc03;\n}\n.buried_index .N {\n background-color: #00eb14;\n}\n.buried_index .D {\n background-color: #00eb14;\n}\n.buried_index .C {\n background-color: #0000ff;\n}\n.buried_index .Q {\n background-color: #00f10e;\n}\n.buried_index .E {\n background-color: #00f10e;\n}\n.buried_index .G {\n background-color: #009d62;\n}\n.buried_index .H {\n background-color: #00d52a;\n}\n.buried_index .I {\n background-color: #0054ab;\n}\n.buried_index .L {\n background-color: #007b84;\n}\n.buried_index .K {\n background-color: #00ff00;\n}\n.buried_index .M {\n background-color: #009768;\n}\n.buried_index .F {\n background-color: #008778;\n}\n.buried_index .P {\n background-color: #00e01f;\n}\n.buried_index .S {\n background-color: #00d52a;\n}\n.buried_index .T {\n background-color: #00db24;\n}\n.buried_index .W {\n background-color: #00a857;\n}\n.buried_index .Y {\n background-color: #00e619;\n}\n.buried_index .V {\n background-color: #005fa0;\n}\n.buried_index .B {\n background-color: #00eb14;\n}\n.buried_index .X {\n background-color: #00b649;\n}\n.buried_index .Z {\n background-color: #00f10e;\n}\n.buried_index .C,\n.buried_index .I,\n.buried_index .V {\n color: #fcff89;\n}\n","@transition_time: 20ms;\n\n/* see src/components/Edge.js#HOVER_SCALE_FACTOR (currently line 8) */\n@hover_scale_factor: 2;\n@hover_stroke_width: 2;\n@collapsed_node_stroke_width: 1;\n\n@default_node_fill: #fff;\n@default_node_stroke: #777;\n\n@ortholog_stroke_color: orange;\n@paralog_stroke_color: green;\n@representative_fill_color: @ortholog_stroke_color;\n@self_color: red;\n\n@speciation_color: #000080;\n@duplication_color: #cd0000;\n\n@font_size: 11px;\n@font_weight_highlight: bolder;\n\n@invisible: 0;\n@visible: 1;\n\n.display-mode {\n .btn-toolbar {\n position: absolute;\n padding-left: 10px\n }\n}\n.tooltip-inner {\n max-width : 400px;\n}\n.genetree-vis {\n .node, .edge {\n cursor: pointer;\n }\n\n .tree-wrapper {\n /* transitions for mouse hover, etc, interactions */\n * {\n transition: all @transition_time ease-in-out;\n }\n\n /* transitions for expanding/contracting clades */\n .clade {\n transition: transform @transition_time ease-in-out;\n\n .edge-rect {\n transition: scaleY @transition_time ease-in-out, scaleX @transition_time ease-in-out, transform @transition_time ease-in-out;\n }\n }\n }\n\n .interaction-helper {\n opacity: @invisible;\n }\n\n .node circle {\n stroke: @default_node_stroke;\n fill: @default_node_fill;\n }\n\n .speciation rect {\n fill: @speciation_color;\n }\n\n .duplication rect {\n fill: @duplication_color;\n }\n\n .node:hover, .edge:hover {\n .internal,\n .gene circle,\n ~ .clade .node rect,\n + .node rect {\n transform: scale(@hover_scale_factor);\n }\n\n ~ .clade .interaction-rect {\n opacity: @visible;\n fill-opacity: @visible;\n }\n\n ~ .clade circle,\n + .node circle,\n .collapsed path,\n ~ .clade .collapsed path,\n + .node .collapsed path {\n stroke-width: @hover_stroke_width;\n }\n\n ~ .clade text, text {\n font-weight: @font_weight_highlight;\n }\n }\n\n .node {\n .gene.ortholog_one2one circle,\n .gene.ortholog_one2many circle,\n .gene.ortholog_many2many circle {\n stroke: @ortholog_stroke_color;\n }\n\n .gene.within_species_paralog circle {\n stroke: @paralog_stroke_color;\n }\n\n .gene.self {\n circle {\n stroke: @self_color;\n fill: @self_color;\n }\n text {\n font-weight: @font_weight_highlight;\n }\n }\n\n .gene.representative circle {\n stroke: @ortholog_stroke_color;\n fill: @representative_fill_color;\n }\n\n text {\n font-size: @font_size;\n fill-opacity: @visible;\n text-anchor: start;\n }\n }\n\n .collapsed {\n path {\n stroke-width: @collapsed_node_stroke_width;\n }\n }\n\n .domains rect {\n cursor: pointer;\n stroke-opacity: 0\n }\n\n .domains rect:hover {\n cursor: pointer;\n stroke-opacity: 1.0\n }\n @transition_time: 20ms;\n\n /* see src/components/Edge.js#HOVER_SCALE_FACTOR (currently line 8) */\n @hover_scale_factor: 2;\n @hover_stroke_width: 2;\n @collapsed_node_stroke_width: 1;\n\n @default_node_fill: #fff;\n @default_node_stroke: #777;\n\n @ortholog_stroke_color: orange;\n @paralog_stroke_color: green;\n @representative_fill_color: @ortholog_stroke_color;\n @self_color: red;\n\n @speciation_color: #000080;\n @duplication_color: #cd0000;\n\n @font_size: 11px;\n @font_weight_highlight: bolder;\n\n @invisible: 0;\n @visible: 1;\n\n}\n\n.popover-title .tooltip-title-button {\n margin-top: -4px !important;\n margin-right: 4px !important;\n}\n\n.msa-slider {\n position: relative;\n padding-top: 10px;\n padding-bottom: 0px;\n margin-bottom: -10px;\n}\n\n.resize-drag {\n background: rgba(0, 0, 0, 0.0);\n border: 4px solid #7c8383;\n color: red;\n font-size: 1px;\n font-family: sans-serif;\n border-radius: 8px;\n\n /* This makes things *much* easier */\n box-sizing: border-box;\n}\n\n.resize-container {\n width: 100%;\n height: 100%;\n}\n",null,"/* ===== Pathways layout ===== */\n\n.pathways-layout {\n display: flex;\n align-items: stretch;\n}\n\n.pathways-tree-toggle {\n flex: 0 0 auto;\n width: 24px;\n border: 1px solid #ccc;\n border-right: none;\n background: #f5f5f5;\n cursor: pointer;\n font-size: 12px;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #666;\n border-radius: 4px 0 0 4px;\n}\n.pathways-tree-toggle:hover {\n background: #e0e0e0;\n color: #333;\n}\n\n.pathways-tree-panel {\n flex: 0 0 250px;\n width: 250px;\n height: 100%;\n overflow-y: auto;\n overflow-x: hidden;\n border: 1px solid #ccc;\n border-right: none;\n}\n\n.pathways-diagram-panel {\n flex: 1 1 auto;\n min-width: 0;\n}\n\n.pathways-resize-handle {\n height: 6px;\n background: #e0e0e0;\n border: 1px solid #ccc;\n border-top: none;\n cursor: ns-resize;\n transition: background 0.15s;\n}\n.pathways-resize-handle:hover {\n background: #179ed3;\n}\n\n/* ===== Compact tree items (react-simple-tree-menu overrides) ===== */\n\n.pathways-tree-panel .rstm-tree-item-group {\n border-top: none;\n}\n\n.pathways-tree-panel .rstm-tree-item {\n padding: 0.2rem 0.4rem;\n font-size: 0.8rem;\n line-height: 1.3;\n border-bottom: 1px solid #eee;\n}\n/* Override inline padding-left set by react-simple-tree-menu.\n The library uses: 0.75 + iconSize*(hasNodes?0:1) + level*1.75 rem\n We shrink the per-level indent from 1.75rem to 0.75rem */\n.pathways-tree-panel .rstm-tree-item-level0 { padding-left: 0.4rem !important; }\n.pathways-tree-panel .rstm-tree-item-level0 > .rstm-toggle-icon { margin-left: 0; }\n.pathways-tree-panel .rstm-tree-item-level1 { padding-left: 1.15rem !important; }\n.pathways-tree-panel .rstm-tree-item-level2 { padding-left: 1.9rem !important; }\n.pathways-tree-panel .rstm-tree-item-level3 { padding-left: 2.65rem !important; }\n.pathways-tree-panel .rstm-tree-item-level4 { padding-left: 3.4rem !important; }\n.pathways-tree-panel .rstm-tree-item-level5 { padding-left: 4.15rem !important; }\n.pathways-tree-panel .rstm-tree-item-level6 { padding-left: 4.9rem !important; }\n.pathways-tree-panel .rstm-tree-item-level7 { padding-left: 5.65rem !important; }\n\n.pathways-tree-panel .rstm-tree-item--active {\n color: white;\n background: #179ed3;\n border-bottom-color: #127aa8;\n}\n\n.pathways-tree-panel .rstm-toggle-icon-symbol {\n width: 1rem;\n height: 1rem;\n line-height: 1rem;\n font-size: 0.7rem;\n}\n\n/* ===== Legacy tree-view classes ===== */\n\n.tree-view-root {}\n\n.tree-view-node {\n margin-left: 8px;\n}\n\n.tree-view-node-collapse-toggle.collapse-spacer {\n width: 12px;\n display: inline-block;\n}\n\n.tree-view-node-collapse-toggle {\n margin-right: 2px;\n width: 12px;\n}\n\n.tree-view-node-label {\n font-size: smaller;\n margin-left: 2px;\n padding: 1px;\n border: 1px solid #fff;\n}\n\n.tree-view-node-label.selected {\n border: 1px solid #003f81;\n border-radius: 3px;\n background-color: #808080;\n}\n\n.tree-view-node-checkbox {}\n.tree-view-node-children {}\n\n",".button-like-link {\n display: inline-block;\n padding: 0;\n background-color: #fff0;\n color: #007bff;\n text-decoration: underline;\n border: none;\n cursor: pointer;\n}\n","/* styles.css */\n.fasta-container {\n position: relative;\n padding: 2ch;\n background-color: #fcfffd;\n border-color: #557b74;\n border-style: dashed;\n line-height: 0.925em;\n /*margin: auto; !* Center the container *!*/\n}\n.styled-span {\n display: flex;\n align-items: center;\n text-align: center;\n}\n.vertical-line {\n flex-grow: 1;\n height: 20px;\n background-color: black;\n}\n.horizontal-line {\n width: 60px;\n min-width: 15px;\n height: 3px;\n background-color: black;\n margin: 0;\n}\ncode.fasta {\n white-space: pre-wrap;\n color: #595959;\n}\n.header {\n color: black;\n}\n.upstream {\n color: #80a0a0;\n}\n.downstream {\n color: #80a0a0;\n}\n.intron {\n color: #aaaaaa;\n}\n.utr5 {\n background-color: #aaccaf;\n}\n.utr5-other {\n background-color: #cfe1d2;\n}\n.cds {\n background-color: #a7b4d3;\n}\n.cds-other {\n background-color: #d0d8e6;\n}\n.utr3 {\n background-color: #c5a3bf;\n}\n.utr3-other {\n background-color: #dcc9d9;\n}\n.square-utr5 {\n width: 20px;\n height: 20px;\n background: linear-gradient(to bottom right, #aaccaf 0%, #aaccaf 50%, #cfe1d2 50%, #cfe1d2 100%);\n}\n.square-cds {\n width: 20px;\n height: 20px;\n background: linear-gradient(to bottom right, #a7b4d3 0%, #a7b4d3 50%, #d0d8e6 50%, #d0d8e6 100%);\n}\n.square-utr3 {\n width: 20px;\n height: 20px;\n background: linear-gradient(to bottom right, #c5a3bf 0%, #c5a3bf 50%, #dcc9d9 50%, #dcc9d9 100%);\n}\n\n.flanking-guide {\n display: grid;\n grid-template-columns: auto 60px auto 60px auto;\n align-items: center;\n row-gap: 2px;\n column-gap: 0;\n width: fit-content;\n}\n/* Row 1 */\n.flanking-label-left {\n text-align: right;\n padding-right: 0.5rem;\n}\n.flanking-center-label {\n text-align: center;\n white-space: nowrap;\n padding: 0 0.25rem;\n}\n.flanking-guide > .horizontal-line {\n height: 3px;\n background-color: black;\n align-self: center;\n}\n.flanking-label-right {\n text-align: left;\n padding-left: 0.5rem;\n}\n/* Row 2 */\n.flanking-value-left {\n text-align: right;\n min-width: 5ch;\n padding-right: 0.5rem;\n}\n.flanking-value-right {\n text-align: left;\n min-width: 5ch;\n padding-left: 0.5rem;\n}\n\n.reverse-slide {\n direction: rtl;\n}\n.fasta-key {\n position: absolute;\n top: 9px;\n right: 40px;\n background: none;\n border: none;\n cursor: default;\n font-family: monospace;\n font-size: 11pt;\n color: #555;\n}\n.copy-button {\n position: absolute;\n top: 3px;\n right: -5px;\n background: none;\n border: none;\n cursor: pointer;\n font-size: 1.5rem;\n color: #555;\n}\n.notification {\n position: absolute;\n top: 0;\n right: 0;\n background-color: #050505;\n color: #fff;\n padding: 5px;\n z-index: 999;\n font-weight: bold;\n font-style: italic;\n font-size: smaller;\n}\n",".taxogenomic-vis {\n @import 'taxonomy';\n}",".accordion-button {\n padding:0.4rem!important;\n}\n.accordion-button:hover {\n background-color: #dbe8f3;\n}",".exporter-view {\n display: grid;\n grid-template-columns: 1fr 8px 1fr;\n gap: 0;\n padding: 0.75rem;\n min-height: 400px;\n}\n\n.exporter-view > .exporter-pane:first-child {\n margin-right: 0.5rem;\n}\n\n.exporter-view > .exporter-pane.exporter-right-pane {\n margin-left: 0.5rem;\n}\n\n.exporter-divider {\n cursor: col-resize;\n background: transparent;\n position: relative;\n align-self: stretch;\n}\n\n.exporter-divider::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n width: 2px;\n background: #d0d4da;\n border-radius: 1px;\n transition: background 0.15s;\n}\n\n.exporter-divider:hover::before,\n.exporter-divider.dragging::before {\n background: #7a8aa0;\n width: 3px;\n}\n\n.exporter-pane {\n border: 1px solid #e0e0e0;\n border-radius: 4px;\n background: #fff;\n display: flex;\n flex-direction: column;\n max-height: 70vh;\n overflow: hidden;\n}\n\n.exporter-pane-header {\n padding: 0.5rem 0.75rem;\n border-bottom: 1px solid #e0e0e0;\n background: #f8f9fa;\n font-size: 0.9rem;\n}\n\n.exporter-pane-header-row {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.exporter-field-search-inline {\n margin-left: auto;\n margin-bottom: 0;\n max-width: 220px;\n height: 1.75rem;\n font-size: 0.85rem;\n padding: 0.15rem 0.5rem;\n}\n\n.exporter-pane-body {\n flex: 1;\n overflow-y: auto;\n padding: 0.5rem;\n}\n\n.exporter-panel-empty {\n padding: 1rem;\n color: #888;\n text-align: center;\n font-size: 0.9rem;\n}\n\n/* --- FieldTree --- */\n\n.exporter-field-tree {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.exporter-field-search {\n margin-bottom: 0.5rem;\n font-size: 0.9rem;\n}\n\n.exporter-field-tree-body {\n flex: 1;\n overflow-y: auto;\n}\n\n.exporter-group {\n margin-bottom: 0.25rem;\n}\n\n.exporter-group-header {\n cursor: pointer;\n padding: 0.25rem 0.5rem;\n background: #eef1f4;\n border-radius: 3px;\n display: flex;\n align-items: center;\n gap: 0.4rem;\n user-select: none;\n font-size: 0.9rem;\n}\n\n.exporter-group-header:hover {\n background: #e3e7ec;\n}\n\n.exporter-group-chevron {\n display: inline-flex;\n align-items: center;\n color: #666;\n}\n\n.exporter-group-count {\n font-size: 0.75rem;\n color: #666;\n background: #fff;\n padding: 0 0.4rem;\n border-radius: 10px;\n border: 1px solid #ddd;\n}\n\n.exporter-group-actions {\n margin-left: auto;\n display: inline-flex;\n gap: 0.25rem;\n}\n\n.exporter-group-action {\n font-size: 0.7rem;\n padding: 0.05rem 0.4rem;\n background: #fff;\n border: 1px solid #ccc;\n border-radius: 3px;\n color: #333;\n cursor: pointer;\n line-height: 1.4;\n}\n\n.exporter-group-action:hover:not(:disabled) {\n background: #f0f4f8;\n border-color: #88a;\n}\n\n.exporter-group-action:disabled {\n opacity: 0.4;\n cursor: default;\n}\n\n.exporter-group-fields {\n list-style: none;\n margin: 0.25rem 0 0.5rem 1.25rem;\n padding: 0;\n}\n\n.exporter-group-fields li {\n padding: 0.1rem 0.25rem;\n font-size: 0.85rem;\n}\n\n.exporter-group-fields label {\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 0.35rem;\n margin: 0;\n padding: 0.1rem 0.25rem;\n border-radius: 2px;\n width: 100%;\n}\n\n.exporter-group-fields label:hover {\n background: #f0f4f8;\n}\n\n.exporter-field-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-field-badge {\n font-size: 0.7rem;\n color: #888;\n font-family: monospace;\n}\n\n.exporter-group-truncated {\n color: #888;\n font-size: 0.8rem;\n padding-left: 0.5rem;\n}\n\n/* --- SelectedFields --- */\n\n.exporter-selected {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.exporter-selected-header {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.25rem 0;\n margin-bottom: 0.5rem;\n border-bottom: 1px solid #eee;\n}\n\n.exporter-selected-count {\n font-size: 0.75rem;\n color: #666;\n background: #eef1f4;\n padding: 0 0.5rem;\n border-radius: 10px;\n}\n\n.exporter-clear-btn {\n margin-left: auto;\n font-size: 0.8rem;\n padding: 0;\n}\n\n.exporter-selected-list {\n list-style: none;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n flex: 1;\n}\n\n.exporter-selected-list li {\n display: flex;\n align-items: center;\n gap: 0.4rem;\n padding: 0.25rem 0.35rem;\n border-bottom: 1px solid #f0f0f0;\n font-size: 0.85rem;\n}\n\n.exporter-selected-index {\n font-family: monospace;\n color: #888;\n min-width: 1.75rem;\n}\n\n.exporter-selected-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-selected-group {\n color: #888;\n}\n\n.exporter-selected-actions {\n display: flex;\n gap: 0.15rem;\n}\n\n.exporter-selected-actions button {\n padding: 0.1rem 0.35rem;\n line-height: 1;\n}\n\n/* --- Right pane (selected + preview) --- */\n\n.exporter-right-pane {\n max-height: 70vh;\n}\n\n.exporter-right-split {\n display: flex;\n flex-direction: column;\n flex: 1;\n overflow: hidden;\n}\n\n.exporter-selected-section {\n flex: 0 0 auto;\n max-height: 35%;\n overflow-y: auto;\n padding: 0.5rem;\n border-bottom: 1px solid #e0e0e0;\n}\n\n.exporter-preview-section {\n flex: 1;\n overflow: hidden;\n padding: 0.5rem;\n display: flex;\n flex-direction: column;\n}\n\n/* --- Preview --- */\n\n.exporter-preview {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.exporter-preview-toolbar {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n padding-bottom: 0.35rem;\n margin-bottom: 0.35rem;\n border-bottom: 1px solid #eee;\n font-size: 0.85rem;\n}\n\n.exporter-preview-format label {\n margin-right: 0.5rem;\n cursor: pointer;\n}\n\n.exporter-preview-format input {\n margin-right: 0.25rem;\n}\n\n.exporter-preview-status {\n margin-left: auto;\n color: #888;\n}\n\n.exporter-cutoffs-btn {\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n padding: 0.1rem 0.5rem;\n font-size: 0.8rem;\n}\n\n.exporter-modal-backdrop {\n position: fixed;\n inset: 0;\n background: rgba(0, 0, 0, 0.35);\n z-index: 1050;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.exporter-modal {\n background: #fff;\n border-radius: 6px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);\n width: min(420px, 90vw);\n display: flex;\n flex-direction: column;\n}\n\n.exporter-modal-header {\n display: flex;\n align-items: center;\n padding: 0.6rem 0.9rem;\n border-bottom: 1px solid #eee;\n}\n\n.exporter-modal-close {\n margin-left: auto;\n background: transparent;\n border: 0;\n font-size: 1.25rem;\n line-height: 1;\n color: #666;\n cursor: pointer;\n padding: 0 0.25rem;\n}\n\n.exporter-modal-body {\n padding: 0.9rem;\n display: flex;\n flex-direction: column;\n gap: 0.85rem;\n}\n\n.exporter-modal-field label {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n font-size: 0.85rem;\n font-weight: 500;\n}\n\n.exporter-modal-field input {\n font: inherit;\n padding: 0.25rem 0.5rem;\n border: 1px solid #c0c4ca;\n border-radius: 3px;\n}\n\n.exporter-modal-field small {\n color: #777;\n font-size: 0.75rem;\n margin-top: 0.15rem;\n}\n\n.exporter-modal-footer {\n display: flex;\n justify-content: flex-end;\n gap: 0.5rem;\n padding: 0.6rem 0.9rem;\n border-top: 1px solid #eee;\n}\n\n.exporter-preview-status.error {\n color: #c33;\n}\n\n.exporter-preview-body {\n flex: 1;\n overflow: auto;\n background: #fafbfc;\n border: 1px solid #eee;\n border-radius: 3px;\n}\n\n.exporter-preview-empty {\n padding: 1rem;\n color: #888;\n text-align: center;\n}\n\n.exporter-preview-tsv-scroll {\n overflow: auto;\n max-width: 100%;\n}\n\n.exporter-preview-tsv {\n border-collapse: collapse;\n font-size: 0.8rem;\n font-family: -apple-system, BlinkMacSystemFont, sans-serif;\n width: auto;\n}\n\n.exporter-preview-tsv th,\n.exporter-preview-tsv td {\n padding: 0.2rem 0.5rem;\n border: 1px solid #e5e7ea;\n max-width: 420px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-preview-tsv th {\n position: relative;\n}\n\n.exporter-preview-col-resizer {\n position: absolute;\n top: 0;\n right: -3px;\n width: 6px;\n height: 100%;\n cursor: col-resize;\n user-select: none;\n z-index: 2;\n}\n\n.exporter-preview-col-resizer::after {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n width: 1px;\n background: transparent;\n transition: background 0.15s;\n}\n\n.exporter-preview-col-resizer:hover::after,\n.exporter-preview-col-resizer:active::after {\n background: #7a8aa0;\n width: 2px;\n}\n\n.exporter-preview-tsv th {\n background: #f0f3f6;\n text-align: left;\n position: sticky;\n top: 0;\n z-index: 1;\n padding: 0.15rem 0.25rem;\n}\n\n.exporter-preview-th-inner {\n display: flex;\n align-items: center;\n gap: 0.15rem;\n min-width: 0;\n}\n\n.exporter-preview-th-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exporter-preview-reorder-btn {\n flex: 0 0 auto;\n background: transparent;\n border: 1px solid transparent;\n border-radius: 3px;\n padding: 0;\n line-height: 1;\n color: #555;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n}\n\n.exporter-preview-reorder-btn:hover:not(:disabled) {\n background: #fff;\n border-color: #bbb;\n color: #111;\n}\n\n.exporter-preview-reorder-btn:disabled {\n opacity: 0.25;\n cursor: default;\n}\n\n.exporter-preview-fields-count {\n color: #666;\n display: inline-flex;\n align-items: center;\n gap: 0.35rem;\n}\n\n.exporter-preview-tsv tr:hover td {\n background: #f4f7fa;\n}\n\n.exporter-preview-empty-row {\n text-align: center;\n color: #888;\n padding: 1rem !important;\n}\n\n.exporter-preview-json {\n margin: 0;\n padding: 0.5rem;\n font-size: 0.75rem;\n line-height: 1.4;\n}\n\n/* --- Export footer --- */\n\n.exporter-footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.75rem;\n padding: 0.5rem 0.75rem;\n border-top: 1px solid #e0e0e0;\n background: #f8f9fa;\n flex: 0 0 auto;\n}\n\n.exporter-footer-summary {\n color: #555;\n}\n",".exprviz-view {\n padding: 0.5rem;\n}\n\n.exprviz-tabs {\n margin-bottom: 0.5rem;\n}\n\n.exprviz-tab-panel {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n padding: 0.5rem 0;\n}\n\n.exprviz-toolbar {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.exprviz-status {\n color: #666;\n font-size: 0.85rem;\n margin-left: 0.5rem;\n}\n\n.exprviz-warning {\n color: #b06000;\n background: #fff8e0;\n border: 1px solid #f0d080;\n border-radius: 3px;\n padding: 2px 6px;\n font-size: 0.8rem;\n cursor: help;\n}\n\n.exprviz-body {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n}\n\n.exprviz-plot {\n height: 320px;\n border: 1px solid #ddd;\n background: #fff;\n}\n\n.exprviz-pc-container {\n width: 100%;\n height: 100%;\n}\n\n.exprviz-pc-container svg {\n display: block;\n}\n\n.exprviz-pc-lines path {\n fill: none;\n stroke: steelblue;\n}\n\n.exprviz-pc-line-in {\n stroke-opacity: 0.4;\n}\n\n.exprviz-pc-line-out {\n stroke-opacity: 0.04;\n}\n\n.exprviz-pc-lines path:not(.exprviz-pc-line-in):not(.exprviz-pc-line-out) {\n stroke-opacity: 0.25;\n}\n\n.exprviz-pc-lines path.exprviz-pc-line-hover {\n stroke: #d62728;\n stroke-opacity: 1;\n stroke-width: 2;\n}\n\n.exprviz-pc-axis-dragging .domain,\n.exprviz-pc-axis-dragging .tick line {\n stroke: #555;\n}\n\n.exprviz-pc-axis-dragging .exprviz-pc-axis-label {\n font-weight: bold;\n}\n\n.exprviz-plot-empty,\n.exprviz-table-empty {\n padding: 1rem;\n color: #888;\n}\n\n.exprviz-table {\n height: 480px;\n}\n\n.exprviz-aggrid {\n width: 100%;\n height: 100%;\n}\n\n.exprviz-fields-layout {\n display: grid;\n grid-template-columns: 320px 1fr;\n gap: 0.75rem;\n height: 60vh;\n}\n\n.exprviz-tree {\n overflow-y: auto;\n border: 1px solid #eee;\n padding: 0.4rem 0.5rem;\n font-size: 0.85rem;\n}\n\n.exprviz-tree-search {\n width: 100%;\n box-sizing: border-box;\n padding: 4px 6px;\n margin-bottom: 0.4rem;\n border: 1px solid #ccc;\n border-radius: 3px;\n font-size: 0.85rem;\n}\n\n.exprviz-tree-group {\n margin-bottom: 0.5rem;\n}\n\n.exprviz-tree-group-header {\n cursor: pointer;\n user-select: none;\n padding: 2px 0;\n}\n\n.exprviz-tree-caret {\n display: inline-block;\n width: 1em;\n color: #888;\n}\n\n.exprviz-tree-type {\n margin-left: 0.5rem;\n border-left: 2px solid transparent;\n padding-left: 0.25rem;\n}\n\n.exprviz-tree-type.is-active {\n border-left-color: #2a6ebb;\n}\n\n.exprviz-tree-type-header {\n cursor: pointer;\n user-select: none;\n display: flex;\n align-items: center;\n padding: 2px 0;\n}\n\n.exprviz-tree-type-header:hover {\n background: #f5f8ff;\n}\n\n.exprviz-tree-type-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exprviz-tree-type-count {\n color: #888;\n font-variant-numeric: tabular-nums;\n margin-left: 0.5rem;\n}\n\n.exprviz-tree-values {\n margin: 0.25rem 0 0.5rem 1.25rem;\n padding-left: 0.25rem;\n border-left: 1px dashed #e0e0e0;\n}\n\n.exprviz-values-toolbar {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n margin-bottom: 0.25rem;\n}\n\n.exprviz-tree-value {\n display: flex;\n align-items: center;\n gap: 0.4rem;\n padding: 1px 0;\n cursor: pointer;\n}\n\n.exprviz-tree-value:hover {\n background: #fafaff;\n}\n\n.exprviz-tree-value-label {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exprviz-tree-value-count {\n color: #888;\n font-variant-numeric: tabular-nums;\n font-size: 0.8em;\n}\n\n.exprviz-tree-empty {\n color: #999;\n margin-left: 1rem;\n}\n\n.exprviz-fields-preview {\n overflow: auto;\n border: 1px solid #eee;\n}\n\n.exprviz-fields-table {\n width: 100%;\n border-collapse: collapse;\n font-size: 0.85rem;\n}\n\n.exprviz-fields-table th,\n.exprviz-fields-table td {\n padding: 4px 8px;\n border-bottom: 1px solid #f0f0f0;\n white-space: nowrap;\n text-align: left;\n}\n\n.exprviz-fields-table thead th {\n position: sticky;\n top: 0;\n background: #fafafa;\n z-index: 1;\n border-bottom: 1px solid #ddd;\n}\n\n.exprviz-col-factor {\n background: #eef6ff;\n}\n\n.exprviz-col-char {\n background: #f5f5f0;\n}\n\n.exprviz-fields-table tbody tr:hover {\n background: #fafaff;\n}\n\n.exprviz-header {\n display: flex;\n align-items: center;\n width: 100%;\n gap: 4px;\n}\n\n.exprviz-header-text {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.exprviz-header-sort {\n margin-left: 2px;\n font-size: 0.8em;\n color: #666;\n}\n\n.exprviz-header-info {\n cursor: help;\n color: #2a6ebb;\n font-size: 0.95em;\n flex: none;\n}\n\n.exprviz-header-menu {\n cursor: pointer;\n flex: none;\n opacity: 0.7;\n}\n\n.exprviz-header-menu:hover {\n opacity: 1;\n}\n\n.exprviz-header-popover {\n max-width: 360px;\n font-size: 0.85rem;\n}\n\n.exprviz-header-popover ul {\n margin: 0.25rem 0 0 0;\n padding-left: 1rem;\n}\n\n.exprviz-header-popover li {\n margin: 0;\n}\n\n.exprviz-header-section {\n margin-top: 0.4rem;\n}\n"],"names":[],"version":3,"file":"index.css.map"}