*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden}body{opacity:0;transition:opacity .3s ease-in}body.loaded{opacity:1}body{display:flex;flex-direction:column;position:fixed;inset:0;font-family:Open Sans,Arial,sans-serif;background-color:var(--bg-body)}body *{text-align:center;-webkit-tap-highlight-color:transparent;tap-highlight-color:transparent}button{outline:none;box-shadow:none;user-select:none}.no-outline{outline:none;box-shadow:none}.underline{text-decoration:underline}.dev-overlay{position:fixed;bottom:0;right:0;background-color:#0000004d;color:#ffffffb3;padding:2px 6px;font-size:12px;font-family:monospace;pointer-events:none;z-index:9999}.hoverable{transition:var(--hover-transition)}.hoverable:hover{filter:brightness(var(--hover-brightness));transform:scale(var(--hover-scale))}.hoverable-scale:hover{transform:scale(var(--hover-scale))}.hoverable-brightness:hover{filter:brightness(var(--hover-brightness))}.no-hover-scale:hover{transform:none!important}.no-hover-brightness:hover{filter:none!important}.no-hover:hover{filter:none!important;transform:none!important;opacity:inherit!important}.interactive-hover:hover{filter:brightness(var(--hover-brightness));transform:scale(var(--hover-scale));opacity:var(--state-hover-opacity)}.hover-parent:hover .hover-child{filter:brightness(var(--hover-brightness));transform:scale(var(--hover-scale))}.btn-hover,.btn-hover:hover{transition:var(--hover-transition)}.btn-hover:hover{filter:brightness(var(--hover-brightness))}.icon-hover,.icon-hover:hover{transition:var(--hover-transition)}.icon-hover:hover{filter:brightness(var(--hover-brightness));transform:scale(var(--hover-scale));opacity:var(--state-hover-opacity)}.form-hover,.form-hover:hover{transition:var(--hover-transition),border-color .3s ease}.form-hover:hover{filter:brightness(var(--hover-brightness))}.scale-hover,.scale-hover:hover{transition:var(--hover-transition)}.scale-hover:hover{transform:scale(var(--hover-scale))}.disabled-hover:hover{filter:none!important;transform:none!important;opacity:inherit!important}.interactive-base{transition:var(--hover-transition);cursor:pointer}@keyframes dropAnimation{0%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes swipeOutLeft{to{transform:rotate(-5deg) translate(-100%);opacity:0}}@keyframes incorrectAnswer{0%,to{background-color:var(--color-primary)}50%{background-color:var(--incorrect-animation-color)}}@keyframes pulse-shadow{0%,to{box-shadow:0 0 #ac0028b3}50%{box-shadow:0 0 0 8px #ac002800}}.name-pulse-effect{animation:pulse-shadow .5s cubic-bezier(.4,0,.6,1) 3}.drop-animation{animation:dropAnimation .3s ease-out forwards}.swipe-out-left{animation:swipeOutLeft .5s ease-out forwards}@keyframes nameWiggle{0%{transform:rotate(0)}15%{transform:rotate(3deg)}30%{transform:rotate(-4deg)}45%{transform:rotate(2deg)}60%{transform:rotate(-3deg)}75%{transform:rotate(1deg)}90%{transform:rotate(-1deg)}to{transform:rotate(0)}}.name-wiggle-animation{animation:nameWiggle 1.2s ease-in-out}:root{--color-brand-primary: #74ac00;--color-brand-secondary: #ac0028;--color-neutral-100: #ffffff;--color-neutral-200: #f9f9f9;--color-neutral-300: #f0f0f0;--color-neutral-400: #e0e0e0;--color-neutral-500: #c0c0c0;--color-neutral-600: #909090;--color-neutral-700: #606060;--color-neutral-800: #424242;--color-neutral-900: #282828;--color-brand-bg-light: #dfe9c8;--color-brand-bg-transparent: rgba(116, 172, 0, .2);--color-feedback-error: #F44336;--color-feedback-success: #4CAF50;--color-feedback-info: #2196F3;--color-feedback-warning: #FFC107;--color-background-primary: var(--color-brand-bg-light);--color-background-secondary: var(--color-neutral-200);--color-background-tertiary: var(--color-neutral-100);--color-surface-primary: var(--color-neutral-100);--color-surface-secondary: var(--color-brand-bg-transparent);--color-surface-tertiary: var(--color-neutral-200);--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-800);--color-text-tertiary: var(--color-neutral-700);--color-text-on-brand: var(--color-neutral-100);--color-text-highlight: var(--color-brand-secondary);--color-action-primary: var(--color-brand-primary);--color-action-secondary: var(--color-brand-secondary);--color-action-tertiary: var(--color-neutral-500);--color-action-disabled: var(--color-neutral-500);--color-border-light: var(--color-neutral-300);--color-border-medium: var(--color-neutral-500);--color-border-dark: var(--color-neutral-700);--space-xxs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-xxl: 3rem;--font-family-primary: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-xxl: 2rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--line-height-compact: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.7;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-pill: 9999px;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 4px;--shadow-color: rgba(0, 0, 0, .1);--shadow-color-medium: rgba(0, 0, 0, .15);--shadow-color-strong: rgba(0, 0, 0, .3);--elevation-1: 0 2px 4px var(--shadow-color);--elevation-2: 0 4px 8px var(--shadow-color-medium);--elevation-3: 0 8px 16px var(--shadow-color-strong);--elevation-dialog: 0 4px 20px var(--shadow-color-medium);--duration-instant: .1s;--duration-quick: .2s;--duration-standard: .3s;--duration-slow: .5s;--easing-standard: cubic-bezier(.4, 0, .2, 1);--easing-accelerate: cubic-bezier(.4, 0, 1, 1);--easing-decelerate: cubic-bezier(0, 0, .2, 1);--transition-standard: all var(--duration-standard) var(--easing-standard);--transition-quick: all var(--duration-quick) var(--easing-standard);--state-hover-opacity: .8;--state-active-scale: .95;--state-active-transform: scale(.95);--state-focus-ring: 0 0 0 2px var(--color-action-primary);--hover-brightness: 1.1;--hover-scale: 1.05;--hover-transition: all var(--duration-quick) var(--easing-standard);--dialog-background: var(--color-surface-tertiary);--dialog-title-color: var(--color-text-highlight);--dialog-text-color: var(--color-text-primary);--dialog-shadow: var(--elevation-dialog);--dialog-item-background: var(--color-surface-primary);--dialog-item-shadow: var(--elevation-1);--dialog-border-radius: var(--border-radius-md);--dialog-padding: var(--space-md);--button-border-radius: var(--border-radius-md);--button-padding-small: var(--space-xs) var(--space-sm);--button-padding-medium: var(--space-sm) var(--space-md);--button-padding-large: var(--space-md) var(--space-lg);--card-background: var(--color-surface-secondary);--card-border-radius: var(--border-radius-md);--card-padding: var(--space-md);--card-shadow: var(--elevation-1);--toggle-bg-color: #e5f0d8;--toggle-slider-color: #d8e0cc;--toggle-text-color: var(--color-text-primary);--max-image-width: 480px;--center-min-height: 80px;--color-primary: var(--color-brand-primary);--color-accent: var(--color-brand-secondary);--color-neutral-dark: var(--color-neutral-800);--color-neutral-darker: var(--color-neutral-900);--color-neutral-light: var(--color-neutral-200);--color-white: var(--color-neutral-100);--color-black: var(--color-neutral-900);--bg-body: var(--color-background-primary);--bg-cards: var(--color-surface-secondary);--bg-interactive: var(--color-action-primary);--bg-interactive-hover: rgba(255, 255, 255, .1);--bg-interactive-active: rgba(0, 0, 0, .1);--bg-dialog: var(--dialog-background);--bg-dialog-item: var(--dialog-item-background);--text-on-primary: var(--color-text-on-brand);--text-on-light: var(--color-text-primary);--text-highlighted: var(--color-text-highlight);--text-secondary: rgba(255, 255, 255, .8);--border-radius: var(--border-radius-md);--effect-shadow-light: var(--shadow-color);--effect-shadow-medium: var(--shadow-color-medium);--effect-shadow-strong: var(--shadow-color-strong);--effect-overlay: rgba(0, 0, 0, .3);--transition-speed: var(--duration-standard);--light-green: var(--color-surface-secondary);--light-green-not-transparent: var(--color-background-primary);--background-color: var(--color-surface-primary);--text-color: var(--color-text-on-brand);--counter-text-color: var(--color-text-primary);--overlay-color: var(--effect-overlay);--incorrect-animation-color: var(--color-feedback-error);--vh: 1vh;--app-height: 100vh;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px)}.dark-theme,.android-dark-theme,html.android-dark-theme,html.android-dark-theme body{--color-brand-primary: #3e7300;--color-brand-secondary: #d00;--color-neutral-900: #e0e0e0;--color-neutral-800: #cccccc;--color-neutral-700: #999999;--color-neutral-600: #777777;--color-neutral-500: #555555;--color-neutral-400: #444444;--color-neutral-300: #333333;--color-neutral-200: #1e1e1e;--color-neutral-100: #121212;--color-brand-bg-light: #282828;--color-brand-bg-transparent: rgba(62, 115, 0, .15);--color-background-primary: var(--color-neutral-100);--color-background-secondary: var(--color-neutral-200);--color-background-tertiary: var(--color-neutral-300);--color-surface-primary: var(--color-neutral-300);--color-surface-secondary: #282828;--color-surface-tertiary: var(--color-neutral-200);--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-800);--color-text-tertiary: var(--color-neutral-700);--color-text-on-brand: #ffffff;--shadow-color: rgba(0, 0, 0, .5);--shadow-color-medium: rgba(0, 0, 0, .6);--shadow-color-strong: rgba(0, 0, 0, .7);--color-primary: var(--color-brand-primary);--color-accent: var(--color-brand-secondary);--color-neutral-dark: var(--color-neutral-900);--color-neutral-darker: var(--color-neutral-800);--color-neutral-light: var(--color-neutral-200);--bg-body: var(--color-brand-bg-light);--bg-cards: #282828;--bg-interactive: var(--color-brand-primary);--bg-dialog: var(--color-neutral-200);--bg-dialog-item: var(--color-neutral-300);--bg-toggle: #333;--text-on-light: var(--color-neutral-900);--text-secondary: rgba(220, 220, 220, .8);--effect-shadow-light: var(--shadow-color);--effect-overlay: rgba(0, 0, 0, .5);--light-green: rgba(62, 115, 0, .2);--light-green-not-transparent: var(--color-brand-bg-light);--background-color: var(--color-neutral-100);--text-color: var(--color-neutral-100);--counter-text-color: var(--color-neutral-900);--color-white: #ffffff;--dialog-background: var(--color-neutral-200);--dialog-title-color: var(--color-brand-primary);--dialog-text-color: var(--color-neutral-900);--dialog-shadow: 0 4px 20px rgba(0, 0, 0, .3);--dialog-item-background: var(--color-neutral-300);--dialog-item-shadow: 0 2px 10px rgba(0, 0, 0, .2);--toggle-slider-color: #444;--toggle-text-color: #fff}.btn-base{outline:none;box-shadow:none;user-select:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:var(--hover-transition)}.btn-icon-base{width:40px;height:40px;border-radius:50%;background-color:var(--bg-dialog-item);opacity:.6;box-shadow:0 2px 5px var(--effect-shadow-light)}.btn-dialog-base{background-color:var(--bg-interactive);color:var(--text-on-primary);padding:10px 15px;border-radius:var(--border-radius);font-size:larger;font-weight:700}.btn-disabled{opacity:.5;cursor:not-allowed}.btn-icon-small{width:36px;height:36px;margin-bottom:10px}@media (max-width: 480px){.btn-icon-responsive{width:32px;height:32px}}.btn-form-base{width:100%;padding:8px;border:1px solid #ccc;border-radius:var(--border-radius);font-size:1em;background-color:var(--background-color);color:var(--counter-text-color)}.btn-level-indicator{height:40px;border-radius:20px;margin-left:10px;padding-left:4px;padding-right:8px;background-color:var(--bg-dialog-item);opacity:.6;z-index:2000}.btn-next-pair{height:2em;z-index:10;background-color:var(--bg-interactive);color:var(--text-on-primary)}.icon-button{outline:none;box-shadow:none;user-select:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:var(--hover-transition);width:40px;height:40px;border-radius:50%;background-color:var(--bg-dialog-item);opacity:.6;box-shadow:0 2px 5px var(--effect-shadow-light)}.icon-button:hover{filter:brightness(var(--hover-brightness));transform:scale(var(--hover-scale));opacity:var(--state-hover-opacity)}.icon-button:active{transform:var(--state-active-transform)}.dialog-button{outline:none;box-shadow:none;user-select:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:var(--hover-transition);background-color:var(--bg-interactive);color:var(--text-on-primary);padding:10px 15px;border-radius:var(--border-radius);font-size:larger;font-weight:700}.dialog-button:hover{filter:brightness(var(--hover-brightness))}.icon-button.disabled,.dialog-button.disabled{opacity:.5;cursor:not-allowed}.icon-button.disabled:hover,.dialog-button.disabled:hover{filter:none;transform:none}#hint-button-1,#hint-button-2{display:none}.form-control{width:100%;padding:var(--space-xs);border:var(--border-width-thin) solid var(--color-border-medium);border-radius:var(--border-radius);font-size:var(--font-size-md);background-color:var(--color-surface-primary);color:var(--color-text-primary);transition:var(--hover-transition),border-color var(--duration-standard) var(--easing-standard)}.form-control:focus{outline:none;border-color:var(--color-brand-primary);box-shadow:var(--state-focus-ring)}.icon{width:24px;height:24px;fill:var(--color-neutral-darker);transition:var(--hover-transition)}.icon:hover{transform:scale(var(--hover-scale));filter:brightness(var(--hover-brightness))}.icon:active{transform:var(--state-active-transform)}.loading-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--dialog-background);padding:20px;border-radius:var(--border-radius);box-shadow:var(--dialog-shadow);text-align:center;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-indicator.hidden{display:none}.loading-indicator-logo{width:80px;height:80px;margin-bottom:15px}.loading-indicator .loading-spinner{border:5px solid var(--bg-dialog);border-top:5px solid var(--bg-interactive);border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 15px}.loading-indicator p{margin:0;color:var(--text-on-light);font-size:18px;font-weight:700}.main-menu{z-index:1000}.main-menu__dropdown{display:none;position:absolute;right:0;top:var(--space-2xl);padding-right:var(--space-xs)}.main-menu__dropdown.show{display:flex;flex-direction:column;align-items:flex-end;margin-top:8px}.main-menu__item{display:flex;align-items:center;justify-content:flex-end;margin-bottom:var(--space-xs);cursor:pointer}.main-menu__label{display:flex;align-items:center;color:var(--text-on-light);background-color:var(--background-color);height:fit-content;padding:var(--space-xxs) var(--space-xs);border-radius:var(--border-radius-lg);font-size:var(--font-size-sm);margin-right:var(--space-xs);opacity:0;transition:var(--hover-transition),opacity .3s ease;white-space:nowrap}.main-menu__dropdown.show .main-menu__label{opacity:.6}.main-menu__dropdown--top{top:var(--space-3xl)}.main-menu__dropdown--bottom{position:absolute;top:0;right:0}@media (min-width: 768px){.main-menu__dropdown--bottom{bottom:auto;top:var(--space-2xl);right:0}}.toggle-container{display:flex;align-items:center;background-color:var(--bg-toggle);padding:0 var(--space-xxs) 0 0;border-radius:var(--border-radius-lg);justify-content:flex-start;width:100%;margin:var(--space-xs) 0}.toggle-switch{display:flex;align-items:center;background-color:var(--bg-toggle);border-radius:var(--border-radius-pill);padding:var(--space-xxs) 10px var(--space-xxs) var(--space-xxs);height:40px;width:auto}.dark-theme .toggle-switch{background-color:var(--bg-dialog)}.toggle-switch__label{position:relative;display:inline-block;width:50px;height:24px;margin:0 8px}.toggle-switch__checkbox{opacity:0;width:0;height:0}.toggle-switch__slider{position:absolute;cursor:pointer;inset:0;background-color:var(--toggle-slider-color);border-radius:34px;transition:var(--hover-transition)}.toggle-switch__slider:hover{filter:brightness(var(--hover-brightness))}.toggle-switch__slider:before{position:absolute;content:"";height:20px;width:20px;left:2px;bottom:2px;background-color:var(--color-white);border-radius:50%;transition:.3s}.toggle-switch__checkbox:checked+.toggle-switch__slider{background-color:var(--bg-interactive)}.toggle-switch__checkbox:checked+.toggle-switch__slider:before{transform:translate(26px)}.toggle-switch__text{color:var(--text-on-light);font-size:16px;margin-left:8px;white-space:nowrap}.view-toggle-container{display:inline-block}.view-toggle__checkbox{display:none}.view-toggle__label{display:flex;align-items:center;cursor:pointer;width:160px;padding:1px 0;border-radius:var(--border-radius);font-size:.95em;background-color:var(--bg-toggle);position:relative;transition:var(--hover-transition),background-color .3s ease}.view-toggle__label:hover{filter:brightness(var(--hover-brightness))}.view-toggle__option{z-index:1;flex:1;text-align:center;padding:3px 0;font-weight:700;color:var(--text-on-light);transition:var(--hover-transition),color .3s ease;user-select:none}.view-toggle__option:hover{filter:brightness(var(--hover-brightness))}.view-toggle__slider{position:absolute;width:50%;height:100%;border-radius:var(--border-radius);background-color:var(--bg-interactive);transition:transform .3s ease}.view-toggle__checkbox:checked+.view-toggle__label .view-toggle__slider{transform:translate(100%)}.view-toggle__checkbox:checked+.view-toggle__label .view-toggle__option--taxa,.view-toggle__checkbox:not(:checked)+.view-toggle__label .view-toggle__option--common,.view-toggle__checkbox:checked+.view-toggle__label .view-toggle__option--full,.view-toggle__checkbox:not(:checked)+.view-toggle__label .view-toggle__option--simple{color:var(--text-on-primary)}.view-toggle__checkbox:checked+.view-toggle__label .view-toggle__option--common,.view-toggle__checkbox:not(:checked)+.view-toggle__label .view-toggle__option--taxa,.view-toggle__checkbox:checked+.view-toggle__label .view-toggle__option--simple,.view-toggle__checkbox:not(:checked)+.view-toggle__label .view-toggle__option--full{color:var(--text-on-light)}.dark-theme .view-toggle__label{background-color:var(--bg-dialog)}.dark-theme .view-toggle__option{color:var(--text-on-light)}.dark-theme .view-toggle__slider{background-color:var(--bg-interactive)}.view-toggle__label.loading .view-toggle__slider{animation:toggle-loading 1s ease-in-out infinite}@keyframes toggle-loading{0%,to{background-color:var(--bg-interactive);transform:translate(100%)}50%{background-color:var(--color-primary);transform:translate(100%) scale(.95)}}.view-toggle__label.loading{pointer-events:none}.tooltip{position:absolute;background-color:var(--bg-interactive);color:var(--text-on-primary);padding:var(--space-xxs) var(--space-xs);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);z-index:1000;pointer-events:none;opacity:0;transition:opacity .4s}.tooltip.visible{opacity:1}#toast-container{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:999999;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.toast{background-color:var(--bg-dialog);color:var(--text-on-light);padding:10px 20px;border-radius:20px;box-shadow:0 2px 8px #0003;font-weight:700;opacity:0;transform:translateY(20px);transition:opacity .3s,transform .3s;max-width:80vw;text-align:center;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}.dark-theme .toast{background-color:var(--bg-dialog-item);color:var(--text-on-light)}.custom-dropdown{position:relative;width:100%}.custom-dropdown__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:5px 10px;border:var(--border-width-thin) solid var(--color-action-primary);border-radius:var(--border-radius);background-color:var(--dialog-item-background);color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);cursor:pointer;transition:var(--hover-transition);min-height:36px;white-space:nowrap}.custom-dropdown__trigger:focus{outline:none;box-shadow:var(--state-focus-shadow)}.custom-dropdown__text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:var(--space-xs)}.custom-dropdown__arrow{width:12px;height:12px;fill:var(--color-text-primary);transition:var(--transition-quick);flex-shrink:0;opacity:.6}.custom-dropdown__arrow--open{transform:rotate(180deg)}.custom-dropdown__list{position:absolute;top:100%;left:0;right:0;z-index:10000;background-color:var(--dialog-item-background);border:1px solid var(--color-action-primary);border-top:none;border-radius:0 0 var(--border-radius) var(--border-radius);box-shadow:var(--elevation-3);max-height:none;overflow-y:visible;opacity:0;transform:translateY(-4px);pointer-events:none;transition:var(--transition-quick),transform var(--duration-quick) var(--easing-standard);list-style:none;margin:0;padding:0}.custom-dropdown--open .custom-dropdown__list{opacity:1;transform:translateY(0);pointer-events:auto}.custom-dropdown__option{padding:var(--space-xs) var(--space-sm);color:var(--color-text-primary);background-color:var(--dialog-item-background);cursor:pointer;transition:var(--transition-quick);border-bottom:var(--border-width-thin) solid var(--color-border-light);font-size:var(--font-size-md)}.custom-dropdown__option:last-child{border-bottom:none}.custom-dropdown__option:hover{background-color:var(--bg-interactive);color:var(--color-text-on-brand)}.custom-dropdown__option--selected{background-color:var(--bg-interactive);color:var(--color-text-on-brand);font-weight:var(--font-weight-bold)}.custom-dropdown__option--selected:hover{background-color:var(--bg-interactive);filter:brightness(var(--hover-brightness))}.level-dropdown{position:relative;width:100%}.level-dropdown__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:2px solid var(--color-action-primary);border-radius:var(--border-radius);background-color:var(--dialog-item-background);color:var(--color-text-primary);font-size:1.1em;font-weight:700;cursor:pointer;transition:var(--hover-transition);min-height:40px;white-space:nowrap;box-shadow:0 1px 3px #0000001a;box-sizing:border-box}.level-dropdown__trigger:hover{filter:brightness(var(--hover-brightness));border-color:var(--bg-interactive)}.level-dropdown__trigger:focus{outline:none;box-shadow:0 0 0 2px var(--bg-interactive),0 1px 3px #0000001a;border-color:var(--bg-interactive)}.level-dropdown__text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:12px}.level-dropdown__arrow{width:14px;height:14px;fill:var(--color-text-primary);transition:transform .3s ease;flex-shrink:0;opacity:.7}.level-dropdown__arrow--open{transform:rotate(180deg)}.level-dropdown__list{position:absolute;top:calc(100% + 2px);left:0;right:0;z-index:10000;background-color:var(--dialog-item-background);border:2px solid var(--color-action-primary);border-radius:var(--border-radius);box-shadow:0 8px 24px #00000026;max-height:none;overflow-y:visible;opacity:0;transform:translateY(-8px) scale(.95);pointer-events:none;transition:opacity .25s ease,transform .25s ease;list-style:none;margin:0;padding:6px 0;min-width:160px;width:max-content}.level-dropdown--open .level-dropdown__list{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.level-dropdown__option{padding:10px 16px;color:var(--color-text-primary);background-color:transparent;cursor:pointer;transition:background-color .2s ease,color .2s ease;font-size:1em;font-weight:500;margin:2px 6px;border-radius:calc(var(--border-radius) - 2px);white-space:nowrap}.level-dropdown__option:hover{background-color:#74ac0026;color:var(--color-text-primary)}.level-dropdown__option--selected{background-color:#74ac0040;color:var(--color-text-primary);font-weight:700}.level-dropdown__option--selected:hover{background-color:#74ac0059;color:var(--color-text-primary)}.dark-theme .custom-dropdown__list,.dark-theme .level-dropdown__list{background-color:var(--dialog-item-background);box-shadow:0 4px 12px #00000080}.dark-theme .custom-dropdown__option{background-color:var(--dialog-item-background);border-bottom-color:#ffffff1a}.dark-theme .level-dropdown__list{box-shadow:0 8px 24px #0006;border-color:var(--color-action-primary)}.dark-theme .level-dropdown__option{background-color:transparent}.dark-theme .level-dropdown__option:hover{background-color:#ffffff1a}.dark-theme .level-dropdown__option--selected{background-color:#ffffff26}.dark-theme .level-dropdown__option--selected:hover{background-color:#fff3}.dark-theme .level-dropdown__trigger{box-shadow:0 1px 3px #0003}@media (max-width: 768px){.custom-dropdown__list,.level-dropdown__list{max-height:none;font-size:16px}.custom-dropdown__option,.level-dropdown__option{padding:12px;min-height:44px;display:flex;align-items:center}}.tutorial-highlight{position:fixed;box-sizing:border-box;pointer-events:none;border-radius:var(--border-radius);z-index:10000;animation:pulse-highlight 1s;animation-iteration-count:1}.tutorial-close-button{position:fixed;bottom:20px;right:20px;background-color:var(--color-accent);color:var(--color-white);border:2px solid var(--color-white);padding:10px 15px;border-radius:var(--border-radius);cursor:pointer;font-size:16px;font-weight:700;z-index:10001;pointer-events:auto!important;box-shadow:0 0 10px var(--effect-shadow-strong);transition:all .3s ease}.tutorial-close-button:hover{background-color:#8a0020;transform:scale(1.01)}.dialog-tutorial-overlay{position:absolute;display:flex;justify-content:center;align-items:center;z-index:10000;border-radius:var(--border-radius);overflow:hidden}#info-dialog-tutorial-overlay{height:80px;box-shadow:0 0 0 3px #74ac0080}.dialog-tutorial-overlay__message{font-size:1.6em;font-weight:700;color:var(--text-on-primary);text-shadow:1px 1px 2px var(--effect-shadow-light);background-color:var(--bg-interactive);padding:10px;width:100%;min-height:80px;height:100%;display:flex;justify-content:center;align-items:center;text-align:center;transition:opacity .3s ease-in-out}.beginner-path-highlight{position:fixed;border:4px solid var(--color-primary);border-radius:50%;animation:pulse 2s infinite;pointer-events:none;background:#74ac001a;z-index:10001}.beginner-path-tooltip{position:absolute;background:var(--bg-interactive);color:var(--text-on-primary);padding:8px 12px;border-radius:var(--border-radius);font-size:14px;font-weight:700;white-space:nowrap;box-shadow:0 2px 8px #0003;z-index:10002;pointer-events:none;display:none}#filter-dialog>.tutorial-close-button{position:absolute;background-color:var(--color-accent);color:#fff;border:2px solid white;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1em;font-weight:700;z-index:1000;top:0;left:0;width:100%;height:100%}@keyframes pulse-highlight{0%,to{box-shadow:0 0 0 2px #ac002800,0 0 0 4px #fff0}50%{box-shadow:0 0 0 4px #ac0028b3,0 0 0 6px #ffffffb3}}@keyframes pulse{0%{box-shadow:0 0 #74ac00b3}70%{box-shadow:0 0 0 15px #74ac0000}to{box-shadow:0 0 #74ac0000}}.game-container{display:flex;flex:none;justify-content:space-between;align-items:center;position:relative;overflow:hidden;width:100vw;height:100vh;height:calc(var(--app-height, 100vh) - var(--safe-area-top) - var(--safe-area-bottom));height:100svh;height:100dvh;min-height:100vh;min-height:-webkit-fill-available;padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom);padding-left:var(--safe-area-left);padding-right:var(--safe-area-right);z-index:1;transform-origin:center center;transform-style:flat;backface-visibility:hidden;perspective:1000;-webkit-transform-style:flat;-webkit-backface-visibility:hidden;-webkit-perspective:1000;will-change:transform;transition:transform .3s ease-out,opacity .3s ease-out}@supports (-webkit-touch-callout: none){.ios-device .game-container{min-height:-webkit-fill-available}}.portrait-layout .game-container{flex-direction:column}.landscape-layout .game-container{flex-direction:row}.image-container,.name-pair,.name-pair__overlay{width:98vw}.ios-installed-pwa.portrait-layout #image-container-2{margin-bottom:0;padding-bottom:var(--safe-area-bottom)}.ios-installed-pwa .game-container{height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));height:calc(100svh - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:100%}.ios-installed-pwa .ui-container{top:0;padding-top:calc(var(--safe-area-top) + 8px)}.ios-installed-pwa.portrait-layout .game-container{padding-bottom:0!important;height:100vh!important;height:-webkit-fill-available!important}.ios-installed-pwa.portrait-layout #image-container-2{margin-bottom:0!important;padding-bottom:var(--safe-area-bottom)!important;flex-grow:1.05!important}.ios-installed-pwa .ui-left-group,.ios-installed-pwa .ui-buttons{margin-top:var(--safe-area-top)}.ios-installed-pwa .ui-container{position:fixed;top:0;padding-top:var(--safe-area-top)}.ios-installed-pwa .ui-left-group,.ios-installed-pwa .ui-buttons{margin-top:8px}.ios-installed-pwa .level-indicator{position:relative;top:0;z-index:2001}.ios-installed-pwa.portrait-layout .name-pair{flex-grow:0!important;flex-shrink:0!important}@supports (-webkit-touch-callout: none){@supports (padding: max(0px)){.ios-installed-pwa.portrait-layout .game-container{padding-bottom:max(0px,env(safe-area-inset-bottom))!important;min-height:-webkit-fill-available;height:100dvh!important}.ios-installed-pwa.portrait-layout #image-container-2{margin-bottom:env(safe-area-inset-bottom)!important}}}.image-container{position:relative;flex:1 1 300px;margin:0;padding:4px;aspect-ratio:1/1;background-color:var(--bg-body);box-shadow:0 0 8px var(--effect-shadow-light);border-radius:var(--border-radius);box-sizing:border-box;overflow:hidden;z-index:1;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.landscape-layout .image-container{max-width:calc(50% - 8px);max-height:86vh;margin:8px;aspect-ratio:3/4}.portrait-layout #image-container-1{margin-top:4px}.portrait-layout #image-container-2{margin-bottom:4px}.landscape-layout #image-container-1{margin-right:4px}.landscape-layout #image-container-2{margin-left:4px}.image-container__image{position:absolute;display:flex;justify-content:center;align-items:center;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;object-fit:cover;object-position:center;background-color:var(--bg-dialog);color:var(--bg-interactive);font-size:36px;font-weight:700;border-radius:var(--border-radius);transition:opacity .3s ease-in-out;opacity:1;will-change:opacity;pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.image-container__image--temp{z-index:2}.image-container__image--fade{opacity:0;transition:opacity .3s ease-in-out}.image-container__image--fade-out{opacity:0}.image-container__image--fade-in{opacity:1}.image-container__image--loading{opacity:0!important}.image-container--framed{box-shadow:0 0 0 4px var(--bg-interactive);opacity:.8;transition:box-shadow .3s ease,opacity .3s ease;z-index:1000}.dark-theme .image-container--framed{box-shadow:0 0 0 4px var(--bg-interactive);opacity:.9}.image-container__drop-zone{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);opacity:.9;z-index:10;width:300px;height:80px;transition:all .3s ease-out;pointer-events:none}.image-container--drag-over{cursor:copy}.image-container__world-map{position:absolute;left:75px;bottom:5px;width:130px;height:78px;border-radius:var(--border-radius);opacity:.6;z-index:10}.filter-summary__map{position:relative}.image-container__world-map svg{position:absolute;bottom:5px;left:5px;width:130px;height:78px;padding:4px;background:var(--background-color);transition:all .3s ease-in-out;cursor:pointer;border-radius:var(--border-radius)}.filter-summary__map .location-indicator__pin{z-index:10;box-shadow:0 0 3px #000000b3}.dark-theme .filter-summary__map .location-indicator__pin{border:1px solid rgba(255,255,255,.8)}@media (max-width: 480px){.image-container__world-map{left:60px;width:110px;height:66px}.image-container__world-map svg{width:110px;height:66px}}.name-pair{position:relative;display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:stretch;background-color:#0000;margin:var(--space-xxs) auto;gap:var(--space-xxs);width:98%;min-height:var(--center-min-height)}.portrait-layout .name-pair{flex-direction:row}.landscape-layout .name-pair{flex-direction:column;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:320px;max-width:320px;min-height:180px;height:auto;gap:var(--space-xs);z-index:10}.name-pair.name-pair--hidden{display:none!important}.name-pair__container{display:flex;flex:1;min-width:0;margin:0;min-height:var(--center-min-height)}.name-pair__primary-name,.name-pair__secondary-name{width:100%;display:block;word-break:keep-all;overflow-wrap:break-word;white-space:normal;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual;line-height:var(--line-height-compact);margin:var(--space-xxs) 0;text-align:center;word-wrap:break-word}.name-pair__primary-name{font-size:1em;font-weight:700;color:#fff}.name-pair__secondary-name{font-size:.95em;color:#ffffffd9}.name-pair__name--taxon{font-style:italic}.name-pair__item--single-name .name-pair__primary-name{margin:var(--space-xxs) 0}.name-pair__item--draggable{min-height:var(--center-min-height);height:auto;padding:var(--space-xs) var(--space-xxs)}.name-pair__item--draggable{position:relative;box-sizing:border-box;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:var(--border-radius);padding:var(--space-xs) var(--space-xs);width:300px;height:auto;min-height:var(--center-min-height);color:var(--text-on-primary);background-color:var(--bg-interactive);opacity:1;font-size:22px;text-shadow:1px 1px 2px var(--effect-shadow-light);box-shadow:0 0 0 2px var(--color-neutral-200);touch-action:none;overflow:visible;text-overflow:clip;white-space:normal;word-break:keep-all;overflow-wrap:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual;word-wrap:break-word;cursor:grab;z-index:10;-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important;-webkit-tap-highlight-color:rgba(0,0,0,0)!important;transition:var(--hover-transition),left .1s ease-out,top .1s ease-out}.name-pair__item--touched{transform:scale(1.02)}.landscape-layout .name-pair__item--draggable{position:relative;width:100%;max-width:none}.name-pair__item--landing{transition:all .3s ease-out!important}.name-pair__taxon-name,.name-pair__vernacular-name{width:100%;display:block;overflow:visible;word-break:keep-all;overflow-wrap:break-word;hyphens:manual;-webkit-hyphens:manual;-moz-hyphens:manual;-ms-hyphens:manual;text-overflow:clip;white-space:normal;word-wrap:break-word}.name-pair__taxon-name{font-style:italic;font-weight:700;margin-bottom:2px;font-size:.95em}.name-pair__vernacular-name{font-size:.85em;color:var(--text-secondary)}.name-pair__item--dragging{width:300px!important;opacity:.9!important;border:var(--border-width-medium) solid var(--color-neutral-200)!important;box-shadow:var(--elevation-4)!important;-webkit-box-shadow:var(--elevation-4)!important;z-index:1000!important;transform:scale(1.03) translateZ(0)!important;-webkit-backface-visibility:hidden!important;-webkit-perspective:1000!important;cursor:grabbing!important}.name-pair__item--dragging{-webkit-transform:translateZ(0)!important;transition:none}.name-pair__item--incorrect{animation:incorrectAnswer .6s ease-in-out}@keyframes incorrectAnswer{0%,to{background-color:var(--bg-interactive)}50%{background-color:var(--feedback-error)}}.name-pair__overlay{position:absolute;border-radius:var(--border-radius);height:100%;background-color:var(--effect-overlay);display:flex;justify-content:center;align-items:center;z-index:1001;opacity:0;pointer-events:none;transition:opacity var(--transition-speed) ease,background-color var(--transition-speed) ease}.name-pair__overlay.show{opacity:1}.portrait-layout .name-pair__overlay{width:100%}.landscape-layout .name-pair__overlay{width:100%;border:var(--border-width-medium) solid var(--color-white);box-shadow:0 0 0 var(--border-width-medium) var(--color-white),var(--elevation-3)}.name-pair__overlay-message{font-size:2.4em;font-weight:700;color:var(--text-on-primary);text-shadow:1px 1px 2px var(--effect-shadow-medium);padding:15px;max-width:95%;line-height:1.4;transition:opacity .3s ease-in-out}.swipe-info-message{position:absolute;top:var(--space-4xl);left:50%;transform:translate(-50%);background-color:var(--bg-dialog-item);color:var(--text-on-light);height:fit-content;width:auto;max-width:80%;padding:var(--space-xxs) var(--space-lg);border-radius:var(--border-radius-lg);font-size:larger;white-space:nowrap;opacity:0;transition:opacity .3s,transform .3s;pointer-events:none;z-index:1000}.ui-container{position:absolute;display:flex;justify-content:space-between;align-items:center;z-index:1000}.portrait-layout .ui-container{top:8px;left:50%;transform:translate(-50%);width:98vw}.landscape-layout .ui-container{top:10px;left:50%;right:auto;width:auto;transform:translate(-50%);gap:60px}.ui-left-group{display:flex;align-items:center;gap:10px}.ui-buttons{display:flex;gap:10px;padding-right:8px}.level-indicator{position:static;height:40px;border-radius:20px;margin-left:10px;padding-left:4px;padding-right:8px;display:flex;flex-direction:row;justify-content:center;align-items:center;background-color:var(--bg-dialog-item);opacity:.6;z-index:2000;transition:var(--hover-transition)}.level-indicator:hover{filter:brightness(var(--hover-brightness))}.dark-theme .level-indicator{background-color:var(--bg-dialog)}.level-indicator:focus{outline:none}.level-indicator .icon-chili{width:22px;height:22px;margin-right:0}.level-indicator .icon-chili:last-child{margin-right:0}.image-container__buttons{position:absolute;left:var(--space-xs);display:flex;flex-direction:column;align-items:flex-start;bottom:var(--space-xs)}.image-container__button{margin-bottom:var(--space-xs);width:var(--space-xxl);height:var(--space-xxl)}.image-container__button--hint.inactive{opacity:.5;cursor:not-allowed}.image-container__button--globe{position:absolute;bottom:var(--space-xs);left:75px;display:none}@media (max-width: 480px){.image-container__button{width:var(--space-xl);height:var(--space-xl)}.image-container__button-icon{width:var(--space-lg);height:var(--space-lg)}.image-container__button--globe{left:60px}}.portrait-layout .next-pair-button{display:none}.landscape-layout .next-pair-button{display:flex;align-items:center;position:absolute;left:50%;transform:translate(-50%);bottom:var(--space-xs);height:2em;z-index:10;background-color:var(--bg-interactive);color:var(--text-on-primary)}#install-banner,#ios-install-prompt,#android-app-banner{position:fixed;bottom:0;left:0;right:0;background-color:var(--bg-dialog);padding:10px;text-align:center;box-shadow:0 -2px 5px var(--effect-shadow-light);z-index:1000}#install-banner button,#ios-install-prompt button,#android-app-banner button{margin:5px;padding:5px 10px;background-color:var(--bg-interactive);color:var(--text-on-primary);border:none;border-radius:3px;cursor:pointer}#install-banner button:hover,#ios-install-prompt button:hover,#android-app-banner button:hover{background-color:var(--bg-interactive-hover)}.main-view-logo{flex-direction:row;width:60px;height:60px;z-index:10}.portrait-layout .main-view-logo{display:none}.landscape-layout .main-view-logo{display:flex;position:absolute;left:15vw;top:10px;margin-top:-8px;transform:translate(-50%)}.main-view-title{flex-direction:row;justify-content:center;align-items:center;font-size:1.8em}.portrait-layout .main-view-title{display:none}.landscape-layout .main-view-title{display:flex}dialog{position:fixed;top:50%;left:50%;margin:0;opacity:0;transform:translate(-50%,-50%) scale(1);transition:opacity .3s ease,transform .3s ease;-webkit-overflow-scrolling:touch}dialog[open]{opacity:1;display:flex;flex-direction:column}@supports (-webkit-touch-callout: none){dialog{position:absolute;height:-webkit-fill-available}}.standard-dialog{background-color:var(--dialog-background);border-radius:var(--border-radius);border:none;box-shadow:var(--dialog-shadow);width:95%;max-height:95vh;overflow-y:auto;padding:8px;z-index:5000}.dialog-content{display:flex;flex-direction:column;gap:8px;align-items:center;width:100%;height:100%;overflow-y:auto}.dialog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.dialog-header-buttons{display:flex;align-items:center}.dialog-title{flex-grow:1;color:var(--dialog-title-color);text-align:center;font-size:1.5em;padding:0 60px;word-wrap:break-word}.dialog-close-button{position:absolute;top:8px;right:8px;background:none;border:none;font-size:2em;color:var(--color-accent);opacity:.8;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer}.dialog-help-button{position:absolute;top:8px;right:40px;background:none;border:none;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer}.dialog-help-button svg{fill:var(--color-primary);width:24px;height:24px;opacity:.8}.standard-text{color:var(--color-neutral-dark)}dialog::backdrop{background-color:#00000080}#info-dialog::backdrop{background-color:transparent}.simple-dialog{max-width:400px}.simple-dialog--wide{max-width:600px;width:90vw}.simple-dialog--large{max-width:500px;min-height:450px}.simple-dialog--large:has(.dialog-confirmation){min-height:auto}.keyboard-shortcuts-dialog{max-width:400px}#keyboard-shortcuts-button-container{width:100%}.keyboard-shortcuts-dialog .dialog-content{max-width:400px}.keyboard-shortcuts__list{display:grid;gap:var(--space-xs);justify-items:center}.keyboard-shortcuts__group{padding:var(--space-xs)}.keyboard-shortcuts__title{font-size:var(--font-size-lg);padding:var(--space-xs);color:var(--color-action-primary)}.keyboard-shortcuts__item{display:flex;align-items:center}.keyboard-shortcuts__key{background-color:var(--dialog-item-background);border:var(--border-width-thin) solid var(--toggle-slider-color);border-radius:var(--border-radius-sm);padding:var(--space-xxs) var(--space-sm);font-size:var(--font-size-lg);font-family:monospace;margin-right:var(--space-xs);min-width:20px;text-align:center;color:var(--dialog-text-color)}.keyboard-shortcuts__description{flex-grow:1;font-size:var(--font-size-lg);text-align:left;color:var(--dialog-text-color)}.help-dialog{max-width:400px}.help-dialog_content{gap:var(--space-xs);overflow:auto}.help-dialog__logo{position:relative;width:80px;height:80px;margin-top:-20px;overflow:hidden;opacity:.8}.help-dialog__title{font-size:var(--font-size-xl);margin-top:-16px}.help-dialog__title-duo{color:var(--color-brand-secondary)}.help-dialog__title-nat{color:var(--color-action-primary)}.help-dialog__subtitle{color:var(--dialog-text-color);font-size:var(--font-size-sm)}.help-dialog__items{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:var(--space-xs)}.help-dialog__item{display:flex;align-items:center;gap:var(--space-md);background-color:var(--dialog-item-background);padding:var(--space-md);border-radius:var(--border-radius-md);box-shadow:var(--dialog-item-shadow)}.help-dialog__item-text{margin:0;font-size:var(--font-size-lg);line-height:var(--line-height-normal);color:var(--dialog-text-color);text-align:left}.help-dialog__shortcuts{width:100%}.help-dialog__shortcuts-title{margin-bottom:var(--space-xs);color:var(--color-action-primary)}.help-dialog__shortcuts-list{list-style-type:none;padding-left:0}.help-dialog__shortcuts-item{margin-bottom:var(--space-xxs);text-align:left}.help-dialog__shortcut-key{display:inline-block;width:20px;text-align:center;margin-right:var(--space-xs);background-color:var(--color-action-primary);color:var(--color-text-on-brand);border-radius:var(--border-radius-sm);padding:var(--space-xxs)}.help-dialog__button{width:100%}.help-dialog__version-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%}.help-dialog__version{font-size:var(--font-size-xs);color:var(--dialog-text-color);opacity:.7;font-style:italic;word-wrap:break-word;flex:1;text-align:left;padding:0 var(--space-xs)}.help-dialog__update-button{font-size:var(--font-size-xs);padding:var(--space-xxs) var(--space-sm);background-color:var(--color-action-primary);color:var(--color-text-on-brand);border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition-quick);white-space:nowrap;flex-shrink:0}.help-dialog__update-button:hover{filter:brightness(var(--hover-brightness))}.tag-dialog__container{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--space-xxs);margin:var(--space-xs) 0;width:100%}.tag-dialog__item{background-color:var(--color-surface-secondary);color:var(--dialog-text-color);padding:var(--space-xs) var(--space-sm);border-radius:var(--border-radius-pill);cursor:pointer;transition:var(--transition-standard);border:var(--border-width-medium) solid transparent;display:inline-flex;align-items:center;margin:var(--space-xxs);line-height:var(--line-height-compact)}.tag-dialog__item:hover{background-color:var(--toggle-bg-color)}.tag-dialog__item--single{font-size:var(--font-size-sm)!important}.tag-dialog__item.active{background-color:var(--color-action-primary);color:var(--color-text-on-brand);border-color:var(--color-action-primary)}.tag-dialog__untagged{width:100%;text-align:center;margin-top:var(--space-xs);font-style:italic;color:var(--dialog-text-color)}.tag-dialog__counter{margin-top:var(--space-xs);color:var(--dialog-text-color);font-style:italic}.tag-dialog__done-button{width:100%;margin-top:var(--space-md)}.dark-theme .tag-dialog__item{background-color:var(--dialog-background)}.dark-theme .tag-dialog__item:hover{background-color:var(--dialog-item-background)}.dark-theme .tag-dialog__item.active{background-color:var(--color-action-primary)}.qr-dialog{max-width:600px;width:90vw}.qr-dialog__qr-container{margin:var(--space-xs) auto;background-color:var(--color-neutral-100);padding:var(--space-lg);border-radius:var(--border-radius-md);display:block;text-align:center}.qr-dialog__qr-container canvas{display:block!important;width:256px!important;height:256px!important;margin:0 auto!important}.qr-dialog__qr-container img{display:none!important}.qr-dialog__qr-container img{display:block;width:256px;height:256px}.qr-dialog__message{font-weight:var(--font-weight-bold);color:var(--color-action-primary);margin:var(--space-xxs) 0;opacity:0}.qr-dialog__link-container{display:flex;flex-direction:column;margin-top:var(--space-xs);width:100%}.qr-dialog__textarea{width:100%;padding:var(--space-xs);border:var(--border-width-thin) solid var(--color-border-medium);border-radius:var(--border-radius-md) var(--border-radius-md) 0 0;font-size:var(--font-size-md);background-color:var(--color-background-tertiary);color:var(--color-text-primary);transition:var(--transition-quick),border-color var(--duration-standard) ease;resize:none;overflow:hidden;min-height:60px;word-wrap:break-word}.qr-dialog__textarea:hover{filter:brightness(var(--hover-brightness))}.qr-dialog__textarea:focus{outline:none;border-color:var(--color-action-primary);box-shadow:var(--state-focus-ring)}.qr-dialog__copy-button{background-color:var(--color-action-primary);color:var(--color-text-on-brand);border:none;padding:var(--space-xs) var(--space-lg);border-radius:0 0 var(--border-radius-md) var(--border-radius-md);cursor:pointer;transition:var(--transition-quick);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);width:100%;margin-top:-1px}.qr-dialog__copy-button:hover,.qr-dialog__copy-button:focus{filter:brightness(var(--hover-brightness))}.qr-dialog__screenshot-container{margin-top:var(--space-lg)}.qr-dialog__subtitle{color:var(--color-text-secondary);margin-bottom:var(--space-xs);font-weight:var(--font-weight-bold)}.dark-theme .qr-dialog__subtitle{color:var(--color-neutral-400)}.qr-dialog__options-grid{display:flex;flex-wrap:wrap;gap:var(--space-xs);justify-content:center;margin-bottom:var(--space-xxs)}.report-dialog{max-width:500px;min-height:450px}.report-dialog:has(.report-dialog__confirmation){min-height:auto}.report-dialog .dialog-title{margin-bottom:var(--space-lg)}.report-dialog__options{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.report-dialog__option{display:flex;align-items:flex-start;gap:var(--space-sm);cursor:pointer;color:var(--dialog-text-color);padding:var(--space-sm) var(--space-xs);border-radius:var(--border-radius-sm);transition:background-color var(--duration-quick) ease}.report-dialog__option:hover{background-color:var(--dialog-item-background)}.report-dialog__option input[type=checkbox]{cursor:pointer;accent-color:var(--color-action-primary);margin-top:var(--space-xxs);flex-shrink:0}.report-dialog__options label{display:flex;align-items:center;gap:var(--space-xs);cursor:pointer;color:var(--dialog-text-color)}#report-dialog__details{width:100%;height:100px;padding:var(--space-xs);border:var(--border-width-thin) solid var(--toggle-slider-color);border-radius:var(--border-radius-sm);resize:vertical;background-color:var(--dialog-item-background);color:var(--dialog-text-color)}.report-dialog__submit{background-color:var(--color-action-primary);color:var(--color-text-on-brand);border:none;padding:var(--space-xs) var(--space-lg);border-radius:var(--border-radius-md);cursor:pointer;transition:background-color var(--duration-standard) ease}.report-dialog__submit:hover:not(:disabled){background-color:var(--color-action-primary-hover, #0056b3)}.report-dialog__submit:disabled,.report-dialog__submit.disabled{background-color:var(--color-background-muted, #6c757d);color:var(--color-text-muted, #adb5bd);cursor:not-allowed;opacity:.6}.report-dialog__confirmation{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);padding:var(--space-xl);text-align:center;color:var(--dialog-text-color)}.report-dialog__confirmation p{margin:0;font-size:var(--font-size-md);line-height:var(--line-height-normal)}.report-dialog__confirmation p:first-of-type{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-action-primary)}.report-dialog__confirmation pre{background-color:var(--dialog-item-background);padding:var(--space-xs);border-radius:var(--border-radius-sm);white-space:pre-wrap;word-wrap:break-word;color:var(--dialog-text-color);border:var(--border-width-thin) solid var(--toggle-slider-color)}.report-dialog__close-button{margin-top:0;padding:var(--space-sm) var(--space-xl);font-size:var(--font-size-md)}.report-dialog__privacy-text{color:var(--dialog-text-color);margin:0}.report-dialog__privacy-option{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;padding:var(--space-xs);border-radius:var(--border-radius-sm);transition:background-color var(--duration-quick) ease}.report-dialog__privacy-option:hover{background-color:#ffffff0d}.report-dialog__privacy-option input[type=checkbox]{cursor:pointer;accent-color:var(--color-action-primary);margin-top:var(--space-xxs);flex-shrink:0}.ancestry-dialog{display:none;flex-direction:column;gap:8px;width:95%;height:95%;margin:0}.ancestry-dialog__controls--toggles{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:16px;margin:8px;flex-wrap:wrap}@media (max-width: 480px){.ancestry-dialog__controls--toggles{flex-direction:column;gap:12px}}.ancestry-dialog__hint{color:var(--text-on-light);font-size:.9em;opacity:.6;margin:8px}.ancestry-dialog__tmrca{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;padding:4px 6px;background-color:var(--color-surface-primary);border:1px solid var(--color-border-light);border-radius:var(--border-radius-sm);font-size:.95em;color:var(--color-text-primary);box-shadow:var(--elevation-1);flex-shrink:0}.ancestry-dialog__tmrca-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:4px;text-align:center}.ancestry-dialog__tmrca-value-row{display:flex;align-items:center;justify-content:center}.ancestry-dialog__tmrca-value{font-weight:var(--font-weight-bold);color:var(--color-text-primary);font-size:var(--font-size-lg);margin-right:8px}.ancestry-dialog__tmrca-help{background:var(--color-surface-tertiary, #f0f0f0);color:var(--color-text-primary, #424242);border:1px solid var(--color-border-medium, #c0c0c0);border-radius:50%;width:20px;height:20px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--duration-quick, .2s) ease;flex-shrink:0}.ancestry-dialog__tmrca-help:hover{background:var(--color-action-tertiary, #909090);color:var(--color-text-on-brand, #ffffff);transform:scale(1.05);transition:all var(--duration-quick, .2s) ease}@media screen and (-webkit-min-device-pixel-ratio: 0){.ancestry-dialog__tmrca-help{-webkit-appearance:none;-webkit-tap-highlight-color:transparent}}.ancestry-dialog__graph{display:flex;flex-grow:1;overflow:hidden;position:relative;width:100%;height:100%;margin:0;padding:0;border:0}.ancestry-dialog__graph svg{margin:0!important;padding:0!important;border:0!important;display:block;width:100%!important;height:100%!important}.ancestry-dialog__graph svg g{margin:0!important;padding:0!important}#ancestry-dialog.hidden .ancestry-dialog__graph{display:none;visibility:hidden}.ancestry-tree__link{fill:none;stroke:#ccc;stroke-width:2px}.ancestry-tree__node-rect{stroke:var(--color-white);stroke-width:2px;fill:var(--bg-interactive);box-shadow:0 2px 4px #0000001a}.ancestry-tree__node-rect--common-ancestor{fill:var(--color-accent);stroke-width:3px}.ancestry-tree__node-rect--endpoint{fill:var(--color-primary);stroke-width:3px}.ancestry-tree__node-text tspan[style*=italic]{font-style:italic}.ancestry-tree__node:hover{cursor:pointer}.ancestry-tree__node-rect:hover{opacity:var(--state-hover-opacity, .8);transition:opacity var(--duration-quick, .2s) ease}.dark-theme .ancestry-tree__link{stroke:var(--text-on-light)}.dark-theme .ancestry-tree__node-rect{stroke:var(--bg-dialog)}.ancestry-tree__node-text--rank{font-size:1.2em;font-weight:400;fill:var(--color-white);opacity:.8}.ancestry-tree__node-text--taxon{font-size:1.3em;font-weight:700;fill:var(--color-white)}.ancestry-tree__node-text--taxon tspan[style*=italic]{font-style:italic;font-weight:600}.ancestry-popup{max-width:300px!important;background-color:var(--dialog-background);overflow:hidden}#ancestry-popup-header{margin-bottom:0}.ancestry-popup__container{display:flex;flex-direction:column;gap:8px}.ancestry-popup__taxon{font-size:larger;font-weight:700;color:var(--dialog-title-color)}.ancestry-popup__vernacular{font-size:larger;margin:8px 0;color:var(--dialog-text-color)}.ancestry-popup__buttons{display:flex;flex-direction:column;align-items:stretch;gap:8px}.ancestry-popup__buttons .dialog-button{width:100%;background-color:var(--color-primary);color:var(--color-text-on-brand);transition:background-color var(--transition-speed) ease}#ancestry-popup-filter{height:60px;font-size:x-large}.ancestry-popup__button--inactive{opacity:.5;cursor:not-allowed}.tmrca-popup{max-width:350px!important;background-color:var(--dialog-background);overflow:hidden}#tmrca-popup-header{margin-bottom:0}.tmrca-popup__title{font-size:var(--font-size-lg);color:var(--dialog-title-color);text-align:center}.tmrca-popup__container{display:flex;flex-direction:column;padding:var(--space-md)}.tmrca-popup__explanation{margin-bottom:var(--space-lg)}.tmrca-popup__description{font-size:var(--font-size-md);color:var(--dialog-text-color);line-height:var(--line-height-normal);margin-bottom:var(--space-md);text-align:left}.tmrca-popup__abbreviation{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-style:italic;margin-bottom:0;text-align:center}.tmrca-popup__buttons{display:flex;flex-direction:column;align-items:stretch}.tmrca-popup__button{width:100%;background-color:var(--color-primary);color:var(--color-text-on-brand);padding:var(--space-md) var(--space-lg);border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--duration-quick) ease;box-shadow:var(--elevation-1)}.tmrca-popup__button-icon{margin-right:var(--space-xs);font-size:var(--font-size-lg)}.dark-theme .tmrca-popup{background-color:var(--dialog-background)}.dark-theme .tmrca-popup__description{color:var(--dialog-text-color)}.dark-theme .tmrca-popup__abbreviation{color:var(--color-text-secondary)}@media (max-width: 480px){.tmrca-popup{max-width:90vw!important}.tmrca-popup__container{padding:var(--space-sm)}.tmrca-popup__button{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm)}}.auth-dialog{background:var(--dialog-background);padding:20px;border-radius:var(--border-radius);width:90%;max-width:400px}.auth-dialog .dialog-title{color:var(--dialog-title-color);font-size:1.5em;margin-bottom:20px;text-align:center}.auth-dialog__form{display:flex;flex-direction:column;width:100%}.auth-dialog__input-group{display:flex;flex-direction:column}.auth-dialog__label{color:var(--dialog-text-color);text-align:left;font-weight:700;font-size:.9em}.auth-dialog__input{width:100%;padding:8px;margin:5px 0 15px;border:1px solid var(--toggle-slider-color);border-radius:var(--border-radius);background-color:var(--dialog-item-background);color:var(--dialog-text-color)}.auth-dialog__error{color:var(--color-accent);font-size:.9em;margin-top:5px;text-align:left;display:none}.auth-dialog__error.visible{display:block}.auth-dialog.visible{display:flex}.auth-dialog__button-group{display:flex;gap:10px;margin-top:20px}.auth-dialog__button-group button{flex:1;padding:8px 16px}.auth-dialog__divider{display:flex;align-items:center;text-align:center;margin:15px 0;color:var(--dialog-text-color)}.auth-dialog__divider:before,.auth-dialog__divider:after{content:"";flex:1;border-bottom:1px solid var(--toggle-slider-color)}.auth-dialog__divider span{padding:0 10px}.auth-dialog__google-button{width:100%;padding:8px 16px;background-color:var(--dialog-item-background);border:1px solid var(--toggle-slider-color);border-radius:var(--border-radius);font-size:var(--normal-font-size);color:var(--dialog-text-color);cursor:pointer;margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s}.auth-dialog__google-button:hover{background-color:#4286f433}.auth-dialog__google-button:focus{outline:none}.auth-dialog__google-button:active{background-color:var(--bg-dialog)}.auth-dialog__google-button svg{width:18px;height:18px}.auth-dialog__recommended{text-align:center;margin-bottom:12px;color:var(--dialog-text-color);font-size:.9em}.auth-dialog__google-button--primary{background:#4285f4;color:var(--color-white);font-weight:500;padding:12px 16px}.auth-dialog__google-subtitle{display:block;font-size:.8em;opacity:.9}#filter-dialog{width:95%;max-width:400px;max-height:95vh;padding:8px;background-color:var(--dialog-background)}.filter-dialog__inner{display:flex;flex-direction:column;height:100%;overflow:hidden}.filter-dialog__top-section{display:flex;flex-direction:column;align-items:flex-start}.filter-dialog__list{flex-grow:1;width:100%;max-height:calc(90vh - 140px);overflow-y:auto;overflow-x:hidden;margin-bottom:0;scrollbar-width:none;scroll-behavior:smooth}.filter-dialog__list::-webkit-scrollbar{display:none}.filter-dialog__button-group{display:flex;flex-direction:row;align-items:stretch;gap:var(--space-xs);width:100%;margin-bottom:var(--space-xxs)}.filter-dialog__select-buttons{width:118px;flex-shrink:0;background-color:var(--bg-interactive);color:var(--color-text-on-brand);border:var(--border-width-medium) solid var(--color-action-primary);border-radius:var(--border-radius);padding:var(--space-xs) var(--space-sm);cursor:pointer;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);height:53px;box-shadow:var(--elevation-1)}.filter-dialog__level-filter{flex:1;display:flex;align-items:stretch;min-width:0;margin:0}.filter-dialog__level-filter>*{width:100%;flex:1;min-width:0}.filter-dialog__level-filter button,.filter-dialog__level-filter .level-dropdown__trigger,.filter-dialog__level-filter .level-filter-dropdown{width:100%!important;min-width:0!important;box-sizing:border-box;border:var(--border-width-medium) solid var(--color-action-primary);border-radius:var(--border-radius);background-color:var(--dialog-item-background);color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-sm);cursor:pointer;transition:var(--hover-transition);height:53px;box-shadow:var(--elevation-1);display:flex;align-items:center;justify-content:space-between}.filter-dialog__level-filter .level-dropdown__text,.filter-dialog__level-filter button>span:first-child{flex:1;min-width:0;text-align:left;margin-right:4px;white-space:nowrap;overflow:visible;text-overflow:clip;text-align:center;font-size:calc(1.1em - (var(--char-count, 4) - 4) * .02em)}@media (max-width: 400px){.filter-dialog__level-filter .level-dropdown__text,.filter-dialog__level-filter button>span:first-child{font-size:calc(.9em - (var(--char-count, 4) - 4) * .015em)}}.filter-dialog__level-filter .level-dropdown__arrow,.filter-dialog__level-filter button svg{width:16px;height:16px;flex-shrink:0;opacity:.7}.filter-dialog__action-buttons{display:flex;flex-direction:row;align-items:center;gap:var(--space-xs);width:100%;margin:var(--space-xxs) 0}.filter-dialog__action-button{background-color:var(--bg-interactive);color:var(--color-text-on-brand);border:var(--border-width-medium) solid var(--color-action-primary);border-radius:var(--border-radius);padding:var(--space-xs) var(--space-sm);cursor:pointer;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);box-shadow:var(--elevation-1);text-align:center;display:flex;align-items:center;justify-content:center}.filter-dialog__action-button--clear{background-color:var(--color-action-secondary);border-color:var(--color-action-secondary);flex:1;height:53px}.filter-dialog__action-button--disabled{background-color:var(--bg-dialog-item);color:var(--color-text-secondary);border-color:var(--color-border-light);cursor:not-allowed;opacity:.6}.filter-dialog__action-button--disabled:hover{filter:none;transform:none}.filter-dialog__action-button--rank{width:118px;height:53px;flex-shrink:0}.filter-summary__map--standalone{width:118px;height:53px;flex-shrink:0;background-color:var(--bg-interactive);border:var(--border-width-medium) solid var(--color-action-primary);border-radius:var(--border-radius);padding:var(--space-xxs);cursor:pointer;box-shadow:var(--elevation-1);display:flex;justify-content:center;align-items:center}.filter-summary__map--standalone svg{width:100%;height:auto;max-height:45px}.filter-dialog__done-button{position:relative;flex-grow:1;max-height:80px;height:80px;width:100%;font-size:200%;color:var(--color-text-on-brand)}.filter-dialog__view-button{width:100%;margin:var(--space-xs) 0;background-color:var(--bg-interactive);color:var(--color-text-on-brand);font-size:var(--font-size-lg);text-align:center}@media (max-width: 480px){.filter-dialog__button-group,.filter-dialog__action-buttons{gap:var(--space-xxs)}.filter-dialog__select-buttons{padding:var(--space-xs) 10px}.filter-dialog__level-filter button,.filter-dialog__level-filter .level-dropdown__trigger{padding:var(--space-xs) 6px var(--space-xs) 10px}.filter-dialog__level-filter .level-dropdown__arrow,.filter-dialog__level-filter button svg{width:12px;height:12px}}@media (max-width: 350px){.filter-dialog__button-group,.filter-dialog__action-buttons{gap:2px}.filter-dialog__select-buttons{font-size:.95em;padding:6px 8px}.filter-dialog__level-filter button,.filter-dialog__level-filter .level-dropdown__trigger{padding:6px 4px 6px 8px}.filter-dialog__level-filter .level-dropdown__arrow,.filter-dialog__level-filter button svg{width:10px;height:10px}}.phylogeny-icon-container{display:flex;flex-direction:column;align-items:center;width:100%}.phylogeny-icon-row{display:flex;justify-content:center;width:100%;gap:4px}.phylogeny-icon{flex-grow:1;flex-basis:0;min-width:36px;max-width:80px;height:auto;background-color:var(--bg-dialog-item);border-radius:var(--border-radius);width:57px;height:57px;margin:4px 0;cursor:pointer;fill:var(--color-neutral-dark);transition:transform .2s ease,fill .2s ease,background-color var(--transition-speed) ease}.phylogeny-icon.active{fill:var(--color-primary)}.phylogeny-icon:hover{transform:scale(1.05);filter:brightness(var(--hover-brightness))}.phylogeny-taxon{font-weight:700;font-style:italic;color:var(--text-on-light)}.phylogeny-vernacular{color:var(--text-on-light)}.filter-summary{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;background-color:var(--dialog-item-background);border-radius:var(--border-radius);padding:4px;width:100%;height:100%;min-height:50px;cursor:auto}.filter-summary:hover{filter:brightness(var(--hover-brightness))}.filter-summary__phylogeny{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;margin:2px;color:var(--color-text-primary)}.filter-summary__tags{display:flex;flex-wrap:wrap;gap:5px;flex-grow:1;justify-content:space-evenly;align-items:center}.filter-summary__tag{background-color:var(--bg-interactive);color:var(--color-text-on-brand);padding:2px 8px;border-radius:12px;font-size:.9em;user-select:none}.filter-dialog__active-filters-section{margin:2px 0;padding:12px 8px;background-color:var(--dialog-item-background);border-radius:var(--border-radius);border:1px solid var(--color-action-primary);width:100%}.filter-dialog__section-label{color:var(--color-text-primary);font-size:1em;font-weight:700;text-align:center;opacity:.8}.filter-dialog__active-filters{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px;width:100%;position:relative}.filter-summary{position:relative;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;background-color:transparent;border-radius:var(--border-radius);padding:8px;width:100%;min-height:50px;cursor:auto}.filter-summary__phylogeny{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;margin:2px 0;color:var(--color-text-primary);font-size:1.1em}.dark-theme .filter-summary__phylogeny{color:var(--color-neutral-900)}@media (max-width: 480px){.filter-summary__phylogeny{flex-direction:column;gap:0px}}.filter-summary__tags{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;align-items:center;margin-top:8px}.filter-summary__tag{background-color:var(--bg-interactive);color:var(--color-text-on-brand);padding:4px 12px;border-radius:12px;font-size:.9em;user-select:none}.filter-summary__no-tags{color:var(--color-text-secondary);font-style:italic}.dark-theme .filter-dialog__active-filters-section{background-color:var(--bg-dialog)}.dark-theme .filter-dialog__section-label{color:var(--color-text-primary)}.filter-dialog__active-tags{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:var(--space-xxs);margin-bottom:var(--space-xxs);width:100%;position:relative}.filter-dialog__tags-list{display:flex;flex-wrap:wrap;align-content:center;justify-content:flex-start;gap:5px;margin:0 var(--space-xxs);flex-grow:1}.active-tag{background-color:var(--color-action-primary);color:var(--color-text-on-brand);padding:2px var(--space-xs);border-radius:var(--border-radius-lg);font-size:var(--font-size-sm)}.filter-dialog__clear-tags{background-color:var(--color-action-secondary);color:var(--color-text-on-brand);border:none;padding:5px 10px;border-radius:var(--border-radius);cursor:pointer;font-size:var(--font-size-sm)}.filter-dialog__clear-filters{background-color:var(--color-action-secondary);color:var(--color-text-on-brand);border:none;padding:5px 10px;margin:var(--space-xxs);border-radius:var(--border-radius);cursor:pointer;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);width:100px;flex-shrink:0}.filter-dialog__search{position:relative;margin-bottom:8px}.filter-dialog__search-input{width:100%;padding:10px 15px 10px 40px;border:1px solid var(--color-border-light);border-radius:var(--border-radius);font-size:var(--font-size-md);transition:border-color var(--duration-standard) var(--easing-standard);background-color:var(--dialog-item-background);color:var(--color-text-primary)}.filter-dialog__search-input:focus{outline:none;border-color:var(--color-action-primary);box-shadow:var(--state-focus-ring)}.filter-dialog__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--color-text-tertiary)}.filter-dialog__clear-search{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:0;width:20px;height:20px;color:var(--color-text-tertiary);display:none}.filter-dialog__clear-search:hover{color:var(--color-action-primary)}.no-results-message{text-align:center;padding:20px;font-size:1.1em;color:var(--color-text-secondary)}.filter-warning{display:block;margin-top:10px;font-size:.9em;color:var(--color-feedback-error);font-style:italic}.collection-viewer{width:95%;max-width:400px;max-height:95vh;padding:8px;background-color:var(--dialog-background)}.collection-viewer__list{flex-grow:1;width:100%;max-height:calc(90vh - 140px);overflow-y:auto;overflow-x:hidden;margin-bottom:0;scrollbar-width:none;scroll-behavior:smooth}.collection-viewer__list::-webkit-scrollbar{display:none}.load-more-button{background-color:var(--color-action-primary);color:var(--color-text-on-brand);border:none;border-radius:var(--border-radius);padding:8px 15px;font-size:var(--font-size-sm);cursor:pointer;max-width:300px;margin:10px auto;display:block;transition:background-color var(--duration-standard) var(--easing-standard),transform var(--duration-quick) var(--easing-standard)}.load-more-button:hover{background-color:var(--color-action-primary);filter:brightness(var(--hover-brightness));transform:translateY(-2px)}.load-more-button:active{transform:translateY(0)}.taxon-pair-button{display:block;width:100%;margin:4px 0;border:none;border-radius:var(--border-radius);cursor:pointer;transition:background-color var(--duration-standard) var(--easing-standard);box-sizing:border-box}.taxon-pair-container{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;width:100%;background-color:var(--color-surface-secondary);border-radius:var(--border-radius);padding:8px}.pair-name-container{display:flex;align-items:center;justify-content:space-between;padding:5px 0;margin-bottom:5px}.taxon-pair__pair-name{font-size:1.2em;color:var(--color-text-primary);font-weight:700;flex:1;padding-left:18px}.taxon-pair__level-chilis{display:flex;justify-content:center;align-items:center;padding:0 8px;width:11%}.taxon-pair__icon-chili{width:16px;height:16px;fill:var(--color-brand-secondary);margin:0 -3px}.taxon-pair__tags{font-size:1.1em;color:var(--color-text-primary);flex:1;padding-right:18px}.dark-theme .taxon-pair__tags{color:var(--color-neutral-900)}.taxon-items{display:flex;flex-direction:row;gap:8px}.taxon-items.hidden{display:none}.taxon-pair-container.compact{padding:0}.pair-name-container.compact{margin-bottom:0}.taxon-pair__pair-name.compact{background-color:var(--color-action-primary);border-radius:var(--border-radius);padding:6px;color:var(--color-text-on-brand);font-weight:400;font-size:1.3em;margin:0 6px}.taxon-item{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:10px;background-color:var(--color-action-primary);color:var(--color-text-on-brand);border-radius:var(--border-radius)}.taxon-pair-button:hover .taxon-item,.taxon-pair-button:hover .taxon-pair-container{filter:brightness(var(--hover-brightness))}.taxon-name{font-style:italic;font-weight:700;font-size:1.3em;margin-bottom:3px;text-align:center}.vernacular-name{font-size:1.2em;color:var(--color-text-on-brand);opacity:.9;text-align:center}.taxon-info-toggle-container{margin-bottom:8px}.search-container{width:100%;margin-bottom:8px}.search-input-wrapper{position:relative;width:100%}.collection-viewer__search{width:100%;padding:8px 68px 8px 12px;border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);font-size:1em;background-color:var(--color-surface-primary);color:var(--color-text-primary);transition:border-color .3s ease,box-shadow .3s ease}.collection-viewer__search:focus{outline:none;border-color:var(--color-action-primary);box-shadow:0 0 0 2px #74ac0033}.collection-viewer__search::placeholder{color:var(--color-text-secondary);opacity:.7}.search-clear-button{position:absolute;right:36px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:none;background:none;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:all .2s ease;opacity:0;visibility:hidden}.search-clear-button:hover{background-color:var(--color-surface-secondary);color:var(--color-text-primary)}.search-clear-button:focus{outline:2px solid var(--color-action-primary);outline-offset:1px}.search-clear-button:active{background-color:var(--color-surface-tertiary);transform:translateY(-50%) scale(.95)}.search-clear-icon{fill:currentColor;pointer-events:none}.search-input-wrapper.has-content .search-clear-button{opacity:1;visibility:visible}.search-loading-indicator{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:none;align-items:center;justify-content:center;width:24px;height:24px}.search-loading-indicator.show{display:flex}.search-spinner{width:16px;height:16px;border:2px solid var(--color-border-subtle);border-top:2px solid var(--color-action-primary);border-radius:50%;animation:spin 1s linear infinite}.info-dialog{display:none;position:fixed;flex-direction:column;padding:8px 12px!important;background-color:var(--bg-body)!important;width:100%!important;max-width:100%;transition:top .3s ease-out,bottom .3s ease-out,left .3s ease-out,right .3s ease-out,height .3s ease-out}.info-dialog[open]{display:flex;transform:translate(-50%)}.portrait-layout .info-dialog[open]{transform:translate(-50%)}.landscape-layout .info-dialog[open]{max-width:none!important;width:auto!important;height:auto!important;transform:none}.info-dialog__header{text-align:center;margin-bottom:15px}.info-dialog__taxon{font-size:1.4em;margin:0;color:var(--text-highlighted);font-style:italic;text-shadow:1px 1px 2px var(--effect-shadow-light)}.info-dialog__vernacular{font-size:1.2em;margin:5px 0 0;color:var(--text-on-light);text-shadow:1px 1px 2px var(--effect-shadow-light)}.info-dialog__facts{flex-grow:1;padding:15px;background-color:var(--bg-cards);border-radius:8px;box-shadow:0 2px 4px var(--effect-shadow-light);overflow-y:auto}.info-dialog__facts h3{color:var(--bg-interactive);font-size:1.2em;margin-bottom:10px;padding-bottom:8px;border-bottom:2px solid var(--bg-interactive)}.info-dialog__facts ul{list-style-type:none;padding-left:0;margin:0}.info-dialog__facts li{position:relative;padding-left:24px;margin-bottom:8px;text-align:left;font-size:1.3em;line-height:1.4;color:var(--text-on-light);word-break:normal;overflow-wrap:break-word;hyphens:auto}.info-dialog__facts li:before{content:"•";position:absolute;left:8px;top:-.18em;color:var(--bg-interactive);font-size:1.3em}.info-dialog__buttons{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding:5px;position:relative}.info-dialog__buttons:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:calc(50% + 24px);height:100%;background-color:#fff9;border-radius:20px;z-index:0}.dark-theme .info-dialog__buttons:before{background-color:#0003}.info-dialog__button{position:relative;opacity:.8}.info-dialog__button--inactive{opacity:.5;cursor:not-allowed}.info-dialog__inat-buttons{display:flex;justify-content:space-between;position:relative;flex:0 0 auto;width:140px}.info-dialog__inat-buttons:before{content:"";position:absolute;inset:-5px -10px;background-color:#74ac004d;border-radius:20px;z-index:0}#location-picker-dialog{gap:8px;height:95vh}#selected-location{font-weight:700;margin-top:10px}.location-picker-dialog h2{color:var(--color-neutral-dark)}.location-picker__map{position:relative;border-radius:var(--border-radius);flex-grow:1}.location-picker__radius{display:flex;flex-direction:column;align-items:center}.location-picker__radius label{margin-bottom:8px}.location-picker__radius input{width:90%;max-width:400px}.location-picker__info{text-align:center}.location-picker__buttons{display:flex;justify-content:center;gap:15px;margin-top:10px}.location-picker__button{min-width:120px}.location-picker__button--secondary{background-color:var(--bg-dialog-item);color:var(--text-primary)}.phylogeny-dialog{width:95vw!important;max-width:95vw!important;height:95vh!important;padding-top:8px!important}.phylogeny-dialog__content{display:flex;flex-direction:column;height:100%;width:100%;padding:0;gap:4px}.landscape-layout .phylogeny-dialog__content{flex-direction:row;align-items:flex-end}.phylogeny-dialog__graph-container{flex-grow:1;overflow:auto;display:flex;justify-content:center;align-items:center;height:100%;width:100%;cursor:grab}.phylogeny-dialog__graph-container:active{cursor:grabbing}.phylogeny-dialog__active-taxon{font-weight:700;font-size:larger;color:var(--color-accent);min-height:1em;overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}.phylogeny-dialog__active-taxon #active-taxon-vernacular{font-weight:400}.dark-theme .phylogeny-dialog__active-taxon{color:var(--color-primary)}.dark-theme .phylogeny-dialog__graph-container{background-color:var(--dialog-background)}.phylogeny-dialog__controls{display:flex;flex-direction:column;justify-content:center;gap:4px;margin:4px}.landscape-layout .phylogeny-dialog__controls{justify-content:flex-end}.phylogeny-dialog__controls--toggles,.phylogeny-dialog__controls--buttons{display:flex;flex-direction:row;gap:4px}#phylogeny-done-button{height:1.4em;display:flex;align-items:center;justify-content:center;font-size:1.1em;padding:.9em}#phylogeny-clear-button,#phylogeny-clear-filters-button{background-color:var(--color-accent);height:1.6em;width:50%;display:flex;align-items:center;justify-content:space-evenly;font-size:1em}#toggle-view-button{width:8em}.phylogeny-dialog__message{color:var(--color-neutral-dark);font-weight:700}#phylogeny-dialog__message-tap{color:var(--color-primary);opacity:0}.phylogeny-dialog .link{fill:none;stroke:var(--color-neutral-dark);stroke-width:1.5px}.phylogeny-dialog .node circle{fill:#fff;stroke:var(--color-primary);stroke-width:1.5px}.dark-theme .phylogeny-dialog .node circle{fill:#444}.phylogeny-dialog .node text{font:16px sans-serif;fill:var(--color-neutral-dark);paint-order:stroke;stroke:var(--background-color);stroke-width:3px;stroke-linecap:butt;stroke-linejoin:miter;pointer-events:none}.phylogeny-dialog .node--central circle{fill:var(--color-primary)}.phylogeny-dialog .node--active circle{stroke:var(--color-accent);stroke-width:2px}.dark-theme .phylogeny-dialog svg{background:var(--dialog-background)}.phylogeny-dialog__search{position:relative;width:320px;max-width:600px}.phylogeny-dialog__search-input{width:100%;padding:.5rem 2rem .5rem .5rem;border:1px solid #ccc;border-radius:var(--border-radius);font-size:1rem}.dark-theme .phylogeny-dialog__search-input{background-color:#333;color:#e0e0e0;border-color:#555}.phylogeny-dialog__search-icon{position:absolute;left:.5rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:#888}.phylogeny-dialog__clear-search{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:0}.phylogeny-dialog__clear-search svg{width:1rem;height:1rem;color:#888}.phylogeny-dialog__search-results{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #ccc;border-top:none;max-height:200px;overflow-y:auto;z-index:1000}.dark-theme .phylogeny-dialog__search-results{background-color:#333;border-color:#555}.phylogeny-dialog__search-result{padding:8px;cursor:pointer}.dark-theme .phylogeny-dialog__search-result{color:#e0e0e0}.dark-theme .phylogeny-dialog__search-result:hover{background-color:#444}.dark-theme .phylogeny-dialog__search-icon,.dark-theme .phylogeny-dialog__clear-search svg{color:#aaa}.phylogeny-dialog__cloud-container{display:flex;flex-grow:1;overflow-y:auto;overflow-x:hidden;flex-wrap:wrap;justify-content:center;align-content:flex-start;align-items:center;padding:0 8px}.phylogeny-dialog__cloud-container::-webkit-scrollbar{display:none}.phylogeny-cloud__tag{margin:5px;padding:8px 12px;background-color:#f0f0f0;border-radius:15px;cursor:pointer;transition:var(--hover-transition),box-shadow .3s ease;user-select:none;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:100%;word-break:break-word;hyphens:auto;overflow:hidden;text-overflow:ellipsis}.dark-theme .phylogeny-cloud__tag{background-color:#333}.phylogeny-cloud__tag:hover{transform:scale(var(--hover-scale));filter:brightness(var(--hover-brightness));box-shadow:0 5px 15px #0000001a}.dark-theme .phylogeny-cloud__tag:hover{box-shadow:0 5px 15px #0000004d}.phylogeny-cloud__taxon-name,.phylogeny-cloud__vernacular-name{color:#555}.dark-theme .phylogeny-cloud__taxon-name,.dark-theme .phylogeny-cloud__vernacular-name{color:#e0e0e0}.range-dialog{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;width:90vw;max-width:1200px;max-height:95vh;box-sizing:border-box;overflow-y:visible}.range-dialog *{-webkit-tap-highlight-color:transparent;box-sizing:border-box;max-width:100%}.range-map-container{width:100%;padding:8px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.range-map-container svg{width:100%;height:auto;max-width:100%;display:block;box-sizing:border-box}.dialog-content.range-dialog{gap:8px;padding:0;height:auto;overflow:visible}.range-dialog .standard-text{margin:0;padding:0 10px;text-align:center;font-size:.9em}.range-dialog .location-button-container{margin:4px 0}.range-dialog__done-button{margin-top:4px;background-color:var(--bg-interactive);color:var(--text-on-primary);border:none;padding:8px 15px;border-radius:var(--border-radius);cursor:pointer;font-size:larger;font-weight:700;transition:background-color var(--transition-speed) ease}.location-filter{display:flex;flex-direction:column;gap:8px;width:100%;align-items:center}.location-filter__title{margin-bottom:15px;font-size:1.2em;color:var(--text-primary)}.location-filter__toggle-container{display:flex;justify-content:center}.location-filter__radius-container{display:flex;flex-direction:column;align-items:center}.location-filter__radius-label{margin-bottom:10px;font-size:1em;color:var(--text-secondary)}.location-filter__radius-slider{width:90%;max-width:300px}.location-filter__loading{display:flex;align-items:center;justify-content:center;margin:10px 0;color:var(--text-secondary)}.location-filter__loading .loader{width:20px;height:20px;border:3px solid var(--border-color);border-top:3px solid var(--color-primary);border-radius:50%;margin-right:10px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.location-indicator{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.location-indicator__pin{position:absolute;width:10px;height:10px;background-color:var(--color-primary, #4CAF50);border:2px solid white;border-radius:50%;transform:translate(-50%,-50%);z-index:12}.location-indicator__radius{position:absolute;border-radius:50%;background-color:#4caf5033;border:1px solid #4CAF50;z-index:11}.location-button-container{display:flex;justify-content:center;margin:10px 0;background-color:#74ac00;border-radius:calc(var(--border-radius, 8px) + 2px);border:1px solid #5a8000;padding:4px;box-shadow:inset 0 1px 2px #0000001a}.location-button{flex:1;max-width:150px;padding:10px 16px;font-size:.95em;font-weight:500;border-radius:var(--border-radius, 8px);border:none;background-color:transparent;color:#fffc;cursor:pointer;transition:all .15s ease-out;position:relative;white-space:nowrap}.location-button:hover:not(.selected):not(.active){background-color:#ffffff1a;color:#fffffff2}.location-button:active:not(.selected):not(.active){background-color:#ffffff26}.location-button.selected,.location-button.active{background-color:#fff;color:#1f2937;font-weight:600;box-shadow:0 2px 4px #00000026,0 1px 2px #00000014}.location-button.selected:hover,.location-button.active:hover{background-color:#f8f9fa;box-shadow:0 3px 6px #0000002e,0 1px 3px #0000001a;transform:none}.location-button:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.location-button:disabled:hover{background-color:transparent;color:#fffc;box-shadow:none}.location-button.selected:disabled,.location-button.active:disabled{background-color:#fff;color:#1f2937;opacity:.5}@media (max-width: 480px){.location-button-container{flex-direction:column;align-items:stretch;gap:0;padding:3px;max-width:280px;margin:15px auto}.location-button{flex:none;width:100%;max-width:none;padding:12px 20px;font-size:1em;border-radius:var(--border-radius, 8px)}.location-button:first-child{border-radius:var(--border-radius, 8px) var(--border-radius, 8px) 2px 2px;margin-bottom:1px}.location-button:last-child{border-radius:2px 2px var(--border-radius, 8px) var(--border-radius, 8px)}}@media (min-width: 481px) and (max-width: 768px){.location-button-container{max-width:320px;margin:15px auto}.location-button{max-width:160px;padding:10px 14px}}.location-button.loading{pointer-events:none;opacity:.7}.location-button.loading:after{content:"";position:absolute;top:50%;right:8px;width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top:2px solid #ffffff;border-radius:50%;transform:translateY(-50%);animation:spin .8s linear infinite}.location-button.loading.selected:after,.location-button.loading.active:after{border-color:#1f29374d;border-top-color:#74ac00}.calibration-sliders{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.calibration-slider label{display:block;margin-bottom:5px;font-size:.9em}.calibration-slider input{width:100%}.calibration-info{font-size:.9em;padding-top:8px;border-top:1px solid var(--border-color)}.map-calibration-panel{margin:10px 0;width:100%}.map-calibration-controls{margin-top:10px;padding:10px;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:#323232e6;display:flex;flex-direction:column;gap:15px}.dialog-button--small{padding:5px 10px;font-size:.9em;margin:5px 0}.calibration-marker{position:absolute;width:10px;height:10px;background-color:red;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%);z-index:1000;pointer-events:none}.calibration-marker-label{position:absolute;white-space:nowrap;background-color:#000000b3;color:#fff;font-size:10px;padding:2px 4px;border-radius:3px}.map-projection-controls{margin-top:15px;padding:10px;border-top:1px solid var(--border-color)}.map-projection-controls h4{color:var(--color-neutral-light);margin-bottom:10px}.map-projection-controls>div{margin-bottom:8px}.map-projection-controls input[type=range]{width:90%}#rank-dialog{max-width:500px}.rank-dialog__content{padding:20px;min-width:300px;max-width:100%;width:100%;max-height:95vh;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.rank-dialog__ranks-list{flex:1;display:flex;flex-direction:column;margin-bottom:15px;min-height:0}.rank-dialog__instruction-text{margin-bottom:8px;text-align:center;font-size:16px;flex-shrink:0}.rank-dialog__controls{display:flex;align-items:stretch;border:1px solid var(--color-border-light);border-radius:var(--border-radius);background-color:var(--bg-dialog-item);overflow:hidden;height:fit-content;max-height:calc(95vh - 200px);position:relative;width:100%;box-sizing:border-box}#rank-done-button{flex-shrink:0;margin-top:auto}.rank-dialog__toggles-row{display:flex;gap:var(--space-lg);margin-bottom:var(--space-lg);flex-shrink:0;flex-wrap:wrap;justify-content:flex-start}.rank-dialog__toggles-row .toggle-container{margin:0;flex:1 1 120px;min-width:100px;max-width:150px}.rank-dialog__toggles-row .toggle-switch__text{font-size:var(--font-size-sm);line-height:var(--line-height-compact);word-wrap:break-word}.rank-dialog__ranks-column{flex:1;position:relative;cursor:pointer;user-select:none;touch-action:pan-y;padding-right:0;box-sizing:border-box;height:fit-content;max-height:calc(95vh - 200px);overflow-y:auto}.rank-dialog__rank-item{padding:8px 16px;border-bottom:1px solid var(--color-border-light);transition:background-color .2s ease,transform .1s ease;display:flex;align-items:center;min-height:36px;position:relative;margin-right:0;width:100%;box-sizing:border-box}.rank-dialog__rank-item:first-child{border-top-left-radius:calc(var(--border-radius) - 1px);border-top-right-radius:calc(var(--border-radius) - 1px)}.rank-dialog__rank-item:last-child{border-bottom:none;border-bottom-left-radius:calc(var(--border-radius) - 1px);border-bottom-right-radius:calc(var(--border-radius) - 1px)}.rank-dialog__rank-content{display:flex;align-items:center;justify-content:space-between;width:100%;margin-left:20px;transition:margin-left .2s ease;gap:12px;padding-right:4px;white-space:nowrap;overflow:hidden;box-sizing:border-box}.rank-dialog__rank-example{font-size:12px;color:var(--color-text-secondary);opacity:.75;line-height:1.2;text-align:right;flex-shrink:1;display:flex;flex-direction:column;align-items:flex-end;min-width:80px;max-width:140px;overflow:hidden}.rank-dialog__rank-example-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.rank-dialog__rank-example-vs{font-size:10px;font-weight:500;opacity:.8;white-space:nowrap}.rank-dialog__rank-item:hover:not(.rank-dialog__rank-item--selected){background-color:#74ac000d}.rank-dialog__rank-item--selected{background-color:#74ac001a;border-left:4px solid var(--bg-interactive)}.rank-dialog__rank-item--selected .rank-dialog__rank-content{margin-left:16px}.rank-dialog__rank-item--selected .rank-dialog__rank-name{font-weight:700}.rank-dialog__rank-item--lower-bound{background-color:#74ac0026;position:relative;border-top-left-radius:8px;border-top-right-radius:8px}.rank-dialog__rank-item--lower-bound:before{content:"▲";color:var(--bg-interactive);font-weight:700;position:absolute;left:8px;font-size:12px;z-index:1}.rank-dialog__rank-item--upper-bound{background-color:#74ac0033;position:relative;border-bottom-left-radius:8px;border-bottom-right-radius:8px}.rank-dialog__rank-item--upper-bound:before{content:"▼";color:var(--bg-interactive);font-weight:700;position:absolute;left:8px;font-size:12px;z-index:1}.rank-dialog__rank-item--lower-bound.rank-dialog__rank-item--upper-bound{background:linear-gradient(180deg,#74ac0026,#74ac0040,#74ac0033);border-radius:8px}.rank-dialog__rank-item--lower-bound.rank-dialog__rank-item--upper-bound:before{content:"▲▼";color:var(--bg-interactive);font-size:10px;line-height:1}.rank-dialog__rank-item--dragging{background-color:#74ac004d!important;transform:scale(1.02);z-index:1;position:relative}.rank-dialog__ranks-column--disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.rank-dialog__ranks-column--dragging{cursor:grabbing}.rank-dialog__ranks-column--dragging .rank-dialog__rank-item{pointer-events:none}.rank-dialog__ranks-column--dragging .rank-dialog__rank-item--selected{transform:none}.rank-dialog__ranks-column--dragging .rank-dialog__rank-item--lower-bound,.rank-dialog__ranks-column--dragging .rank-dialog__rank-item--upper-bound{border-left-width:6px}.rank-dialog__ranks-column{scrollbar-width:thick;scrollbar-color:var(--bg-interactive) transparent}.rank-dialog__ranks-column::-webkit-scrollbar{width:16px}.rank-dialog__ranks-column::-webkit-scrollbar-track{background:#0000001a;border-radius:12px;margin:4px}.rank-dialog__ranks-column::-webkit-scrollbar-thumb{background-color:var(--bg-interactive);border-radius:12px;border:2px solid transparent;background-clip:content-box;transition:background-color .3s ease;min-height:40px}.rank-dialog__ranks-column::-webkit-scrollbar-thumb:hover{background-color:var(--color-primary)}.rank-dialog__ranks-column::-webkit-scrollbar-corner{background:transparent}.dark-theme .rank-dialog__controls{background-color:var(--dialog-background);border-color:var(--color-border-light)}.dark-theme .rank-dialog__rank-item{border-bottom-color:var(--color-border-light)}.dark-theme .rank-dialog__rank-item:hover:not(.rank-dialog__rank-item--selected){background-color:var(--color-surface-secondary)}.dark-theme .rank-dialog__rank-example{color:var(--color-text-tertiary)}.dark-theme .rank-dialog__ranks-column{scrollbar-color:var(--color-neutral-600) transparent}.dark-theme .rank-dialog__ranks-column::-webkit-scrollbar-thumb{background-color:var(--color-neutral-600)}.dark-theme .rank-dialog__ranks-column::-webkit-scrollbar-thumb:hover{background-color:var(--color-neutral-700)}@media (prefers-reduced-motion: reduce){.rank-dialog__rank-item,.rank-dialog__rank-content{transition:none}.rank-dialog__ranks-column::-webkit-scrollbar-thumb{transition:none}}@media (prefers-contrast: high){.rank-dialog__rank-item--selected{border-left-width:6px}.rank-dialog__rank-item--lower-bound:before,.rank-dialog__rank-item--upper-bound:before{font-size:14px;font-weight:900}.rank-dialog__ranks-column::-webkit-scrollbar-thumb{background-color:var(--color-text-primary);border:2px solid var(--bg-dialog-item)}}@media (max-width: 768px){#rank-dialog.standard-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);padding:4px}.rank-dialog__content{min-width:280px;max-width:100%;width:100%;padding:12px}.rank-dialog__toggles-row{gap:8px;justify-content:flex-start;flex-wrap:wrap}.rank-dialog__toggles-row .toggle-container{flex:0 1 auto;min-width:90px;max-width:45%}.rank-dialog__toggles-row .toggle-switch__text{font-size:15px;margin-right:4px;white-space:nowrap}.rank-dialog__controls{max-height:calc(90vh - 180px);margin:0}.rank-dialog__ranks-column{padding-right:16px;max-height:calc(90vh - 180px);overflow-x:hidden}.rank-dialog__rank-content{gap:6px;padding-right:4px;max-width:calc(100% - 24px)}.rank-dialog__rank-name{flex-shrink:0;max-width:55%;overflow:hidden;text-overflow:ellipsis}.rank-dialog__rank-example{min-width:50px;max-width:90px;font-size:10px}.rank-dialog__rank-example-line{font-size:10px;max-width:90px}.rank-dialog__rank-example-vs{font-size:9px}.rank-dialog__rank-item{padding:10px 8px;min-height:44px;overflow:hidden}.dark-theme .rank-dialog__ranks-column::-webkit-scrollbar-track{background:#fff3}.dark-theme .rank-dialog__ranks-column::-webkit-scrollbar-thumb{background-color:#ffffff80}.dark-theme .rank-dialog__ranks-column::-webkit-scrollbar-thumb:active{background-color:#ffffffb3}}@media (max-width: 400px){#rank-dialog.standard-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);padding:2px}.rank-dialog__content{min-width:260px;max-width:100%;width:100%;padding:8px}.rank-dialog__toggles-row{gap:6px;flex-direction:column;align-items:stretch}.rank-dialog__toggles-row .toggle-container{flex:0 0 auto;min-width:auto;max-width:100%;display:flex;align-items:center;justify-content:flex-start}.rank-dialog__toggles-row .toggle-switch__text{font-size:14px;margin-right:2px;white-space:nowrap}.rank-dialog__rank-content{gap:4px;margin-left:12px;padding-right:2px}.rank-dialog__rank-example{min-width:45px;max-width:75px;font-size:11px}.rank-dialog__rank-example-line,.rank-dialog__rank-example-vs{font-size:10px}.rank-dialog__rank-item{padding:10px 6px}}.settings-dialog{max-width:600px;width:90vw;height:90vh}.settings-toggle,.settings-group{background:var(--bg-dialog-item);border-radius:20px;padding:8px;margin-bottom:8px;box-shadow:0 2px 4px var(--effect-shadow-light)}.settings-toggle h4,.settings-group h4{color:var(--bg-interactive);margin:0 0 8px;font-size:1.1em}#settings-options{max-width:256px}.android-only{display:none}body.android .android-only{display:flex}.dev-tab{display:none}.dev-tab.show{display:block}@media (max-width: 480px){.settings-dialog{width:100vw;max-width:none;height:100vh;margin:0;border-radius:0}}.tabs{display:flex;justify-content:space-around;gap:4px;margin:0 4px;padding:4px 4px 8px;border-bottom:1px solid #e5f0d8}.tab-btn{padding:8px 16px;background:#f7f9f4;border:none;border-radius:8px;color:#4a4a4a;cursor:pointer;transition:var(--hover-transition)}.tab-btn:hover{filter:brightness(var(--hover-brightness))}.tab-btn.active{background:#79a53d;color:#fff}.tab-content-container{min-height:300px;height:100%;overflow-y:auto;padding-right:5px;display:flex;flex-direction:column}.tab-content{display:none;padding:16px;flex-grow:1;overflow-y:auto}.tab-content.active{display:block}@media (max-width: 480px){.tab-content-container{max-height:70vh}.tab-content{padding:12px 0}}.settings-toggle__label-container{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px;background:#e5f0d8;padding:8px 16px;border-radius:15px;margin:8px 0;height:40px;box-sizing:border-box}.settings-toggle-container.disabled{opacity:.5;cursor:not-allowed}.settings-toggle-container.disabled .settings-toggle__label{cursor:not-allowed}.settings-toggle-container.disabled .settings-toggle__text{color:var(--color-neutral-light)}.dark-theme .settings-toggle-container.disabled .settings-toggle__text{color:#666}.settings-toggle__label-container .settings-toggle__text{font-size:.9em;white-space:nowrap;color:var(--color-neutral-dark);font-weight:700;text-align:center;flex:1;min-width:0}.settings-toggle__label-container .settings-toggle__text:first-child{text-align:center}.settings-toggle__label-container .settings-toggle__text:last-child{text-align:center}.settings-toggle__label-container .settings-toggle__label{width:50px;height:24px;margin:0;background-color:#d8e0cc;border-radius:12px;position:relative;cursor:pointer;transition:background-color .3s;flex-shrink:0}.settings-toggle__label-container .settings-toggle__label:after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background-color:#fff;top:2px;left:2px;transition:.3s;box-shadow:0 1px 3px #0000001a}.settings-toggle__checkbox:checked~.settings-toggle__label-container .settings-toggle__label{background-color:var(--color-primary)}.settings-toggle__checkbox:checked~.settings-toggle__label-container .settings-toggle__label:after{left:calc(100% - 22px)}.dark-theme .settings-toggle__label-container{background:var(--bg-dialog)}.dark-theme .settings-toggle__label-container .settings-toggle__text{color:var(--text-on-light)}.dark-theme .settings-toggle__label-container .settings-toggle__label{background-color:#555}.dark-theme .settings-toggle__checkbox:checked+.settings-toggle__label-container .settings-toggle__label{background-color:var(--color-primary)}.filter-explanation{font-size:.9em;color:var(--color-neutral-dark);text-align:center}.filter-description{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:8px 0 12px;font-size:.85em;line-height:1.4}.filter-description__column{display:flex;align-items:center;text-align:center;padding:8px 12px;background:#79a53d1a;border-radius:8px;color:var(--color-neutral)}.filter-description__column--either{border-left:3px solid var(--color-primary)}.filter-description__column--both{border-right:3px solid var(--color-primary)}.filter-description--disabled .filter-description__column{background:#0000000d;border-color:var(--color-neutral-light);color:var(--color-neutral-light)}.filter-description--disabled em{font-style:italic;color:var(--color-neutral-light);font-size:.9em}.dark-theme .filter-description__column{background:#8bc34a26;color:#e0e0e0}.dark-theme .filter-description--disabled .filter-description__column{background:#ffffff0d;border-color:#666;color:#666}.dark-theme .filter-description--disabled em{color:#666}@media (min-width: 481px) and (max-width: 768px){.settings-toggle__label-container{padding:8px 20px;gap:16px}.settings-toggle__label-container .settings-toggle__text{font-size:.95em}.settings-toggle__label-container .settings-toggle__label{width:55px;height:26px;border-radius:13px}.settings-toggle__label-container .settings-toggle__label:after{width:22px;height:22px;top:2px}.settings-toggle__checkbox:checked~.settings-toggle__label-container .settings-toggle__label:after{left:calc(100% - 24px)}}@media (min-width: 769px){.settings-toggle__label-container{padding:10px 24px;gap:20px;height:45px}.settings-toggle__label-container .settings-toggle__text{font-size:1em}.settings-toggle__label-container .settings-toggle__label{width:60px;height:28px;border-radius:14px}.settings-toggle__label-container .settings-toggle__label:after{width:24px;height:24px;top:2px}.settings-toggle__checkbox:checked~.settings-toggle__label-container .settings-toggle__label:after{left:calc(100% - 26px)}}@media (max-width: 480px){.filter-description{font-size:.8em;gap:12px;margin:6px 0 10px}.filter-description__column{padding:6px 8px}.settings-toggle__label-container{gap:8px;padding:6px 12px;height:36px}.settings-toggle__label-container .settings-toggle__text{font-size:.85em}.settings-toggle__label-container .settings-toggle__label{width:44px;height:22px;border-radius:11px}.settings-toggle__label-container .settings-toggle__label:after{width:18px;height:18px;top:2px}.settings-toggle__checkbox:checked~.settings-toggle__label-container .settings-toggle__label:after{left:calc(100% - 20px)}}@media (max-width: 360px){.settings-toggle__label-container{gap:6px;padding:6px 10px;height:34px}.settings-toggle__label-container .settings-toggle__text{font-size:.8em}.settings-toggle__label-container .settings-toggle__label{width:40px;height:20px;border-radius:10px}.settings-toggle__label-container .settings-toggle__label:after{width:16px;height:16px;top:2px}.settings-toggle__checkbox:checked~.settings-toggle__label-container .settings-toggle__label:after{left:calc(100% - 18px)}}.settings-toggle-container{display:flex;align-items:center;background:var(--toggle-bg-color);padding:0 var(--space-xxs) 0 0;border-radius:var(--border-radius-lg);justify-content:flex-start;width:100%;margin:var(--space-xs) 0;height:40px;transition:var(--transition-quick)}.settings-toggle-container .toggle-checkbox__text{margin-left:var(--space-xs)}.settings-toggle__checkbox{display:none}.settings-toggle__label{display:inline-block;width:50px;height:24px;background-color:var(--toggle-slider-color);border-radius:var(--border-radius-lg);position:relative;margin:0 var(--space-xs);cursor:pointer;transition:var(--transition-standard)}.settings-toggle__label:after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background-color:#fff;top:2px;left:2px;transition:.3s;box-shadow:var(--elevation-1)}.settings-toggle__checkbox:checked+.settings-toggle__label{background-color:var(--color-brand-primary)}.settings-toggle__checkbox:checked+.settings-toggle__label:after{left:calc(100% - 22px)}.settings-toggle__text{margin-left:var(--space-xxs);color:var(--color-text-primary);margin:0 var(--space-xxs);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.settings-dialog__radio-group{background:var(--toggle-bg-color);border-radius:var(--border-radius-lg);padding:var(--space-xxs);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs);padding:var(--space-xs)}.settings-dialog__radio-option{padding:var(--space-xs);margin:0;border-radius:var(--border-radius-lg)}.settings-dialog__radio-input{position:absolute;opacity:0}.settings-dialog__radio-label{position:relative;padding-left:32px;margin:2px 0;cursor:pointer;display:block;color:var(--color-text-secondary);text-align:left;font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.settings-dialog__radio-label:before{content:"";position:absolute;left:-4px;top:50%;transform:translateY(-50%);width:20px;height:20px;border:var(--border-width-medium) solid var(--color-brand-primary);border-radius:50%;transition:var(--transition-quick)}.settings-dialog__radio-label:after{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background:var(--color-brand-primary);opacity:0;transition:var(--transition-quick)}.settings-dialog__radio-input:checked+.settings-dialog__radio-label:after{opacity:1}.settings-dialog__theme-icon{position:absolute;right:var(--space-xs);top:50%;transform:translateY(-50%)}@media (max-width: 320px){.settings-dialog__radio-group{grid-template-columns:1fr}}.dark-theme .tab-content{background-color:var(--color-surface-tertiary)}.dark-theme .settings-toggle,.dark-theme .settings-group{background:var(--color-surface-primary);box-shadow:var(--elevation-2)}.dark-theme .settings-toggle h4,.dark-theme .settings-group h4{color:var(--color-brand-primary)}.dark-theme .settings-toggle-container,.dark-theme .settings-dialog__radio-group{background:var(--color-surface-secondary)}.dark-theme .settings-dialog__radio-option:hover{background:var(--color-neutral-400);filter:brightness(var(--hover-brightness))}.dark-theme .settings-dialog__radio-label{color:var(--color-text-primary)}.dark-theme .settings-dialog__radio-label:before{border-color:var(--color-brand-primary)}.dark-theme .settings-dialog__radio-label:after{background:var(--color-brand-primary)}.dark-theme .tab-btn{background:var(--color-surface-secondary);color:var(--color-text-primary)}.dark-theme .tab-btn:hover{background:var(--color-neutral-400);filter:brightness(var(--hover-brightness))}.dark-theme .tab-btn.active{background:var(--color-brand-primary);color:var(--color-text-on-brand)}.dark-theme .tabs{border-bottom-color:var(--color-border-medium)}.dark-theme .settings-toggle__label{background-color:var(--color-neutral-400)}.dark-theme .settings-toggle__checkbox:checked+.settings-toggle__label{background-color:var(--color-brand-primary)}.dark-theme .settings-toggle__label:after{background-color:var(--color-text-primary)}.user-info{margin-bottom:1.5rem}.user-email{font-size:.9rem;margin-bottom:.5rem;word-break:break-all}.settings-actions{display:flex;flex-direction:column;gap:.75rem}.danger-button{background-color:#f44336}.danger-button:hover{background-color:#d32f2f}.warning-text{color:#f44336;font-weight:500;margin-top:1rem}.confirmation-dialog .dialog-body{padding:1rem;margin-bottom:1rem}.confirmation-dialog .dialog-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:0 1rem 1rem}
