:root{--strata-parchment:#fbf6ec;--strata-parchment-2:#f2e8d4;--strata-sand:#ecdcbf;--strata-ochre:#c9a86a;--strata-clay:#b0805a;--strata-shale:#6b5a45;--strata-basalt:#2b2016;--strata-seam:rgba(107,74,40,.22);--strata-ink:#3b2c1a;--strata-ink-soft:#6b5a45;--strata-edge-top:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='120'%20height='12'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%2012V6L10%203L20%207L30%202L40%206L52%202L64%207L74%203L86%208L96%204L108%207L120%205V12Z'%20fill='%23000'/%3E%3C/svg%3E");--strata-edge-bottom:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='120'%20height='12'%20preserveAspectRatio='none'%3E%3Cpath%20d='M0%200H120V6L108%209L96%204L86%208L74%203L64%209L52%205L40%208L30%204L20%207L10%205L0%207Z'%20fill='%23000'/%3E%3C/svg%3E");--strata-mask:linear-gradient(#000 0 0) 0 11px /100% calc(100% - 22px) no-repeat,var(--strata-edge-top) 0 0 /120px 12px repeat-x,var(--strata-edge-bottom) 0 100% /120px 12px repeat-x;--strata-drop:drop-shadow(0 12px 22px rgba(26,18,10,.34))}body{background-color:#1a140d;color:var(--strata-ink)}body:before{z-index:-2;background-image:repeating-linear-gradient(179deg,rgba(24,16,8,0),rgba(24,16,8,0) 44px,rgba(18,12,6,.32) 46px,rgba(18,12,6,0) 62px),linear-gradient(180deg,rgba(58,42,24,.55),rgba(74,56,34,.4) 45%,rgba(36,26,15,.6)),url(/backgrounds/rock-outcrop.jpg);background-size:100% auto,cover,cover;background-position:top,50%,50%;background-repeat:repeat,no-repeat,no-repeat;background-attachment:fixed,fixed,fixed;background-blend-mode:multiply,multiply,normal;filter:saturate(.9) contrast(1.02) brightness(.62)}body:after,body:before{content:"";position:fixed;inset:0}body:after{z-index:-1;background:radial-gradient(130% 100% at 50% -10%,rgba(74,54,32,0) 30%,rgba(20,13,7,.55) 100%),linear-gradient(180deg,rgba(46,33,19,.5),rgba(28,19,10,.66));pointer-events:none}.app-shell{position:relative;z-index:0}.card,.interactive-geological-periods,.learn-hero,.learn-reader-header,.notes-hero,.notes-reader-header,.section-header,.strata-panel,.tl-container{-webkit-mask:var(--strata-mask);mask:var(--strata-mask);filter:var(--strata-drop);border:0!important;border-radius:0!important;background:linear-gradient(180deg,var(--strata-parchment) 0,var(--strata-parchment-2) 100%)!important;box-shadow:none!important}.card,.learn-hero,.learn-reader-header,.notes-hero,.notes-reader-header,.section-header,.tl-container{background-image:repeating-linear-gradient(180deg,rgba(107,74,40,0) 0,rgba(107,74,40,0) 15px,rgba(107,74,40,.05) 16px,rgba(107,74,40,0) 17px),linear-gradient(180deg,var(--strata-parchment) 0,var(--strata-parchment-2) 100%)!important}.card-header,.tl-header{border-bottom:1px solid var(--strata-seam)!important}.animate-fade-in>.card,.learn-hub,.map-section:not(.map-section-fullbleed){gap:1.15rem}.db-header h3,.empty-state h4,.learn-hero h2,.learn-reader-header h2,.section-header h2,.tl-title{color:var(--strata-ink)!important}.interactive-geological-periods{padding:16px 18px!important}.export-option,.stat-card{background:linear-gradient(180deg,#f9f2e4,#efe3cd)!important;border:1px solid var(--strata-seam)!important;border-radius:var(--radius-md)!important}.fossil-card,.learn-category-card,.learn-lesson-card{background:linear-gradient(180deg,#fdfaf3,#f5eddd)!important;border:1px solid rgba(107,74,40,.18)!important}.fossil-card:hover,.learn-category-card:hover,.learn-lesson-card:hover{border-color:var(--strata-ochre)!important;box-shadow:0 6px 16px rgba(26,18,10,.18)!important}.fossil-card-image{background:#e7dcc6!important}.search-chip{background:linear-gradient(180deg,#fbf6ec,#efe3cd)!important;border:1px solid var(--strata-seam)!important;color:var(--strata-ink)!important}.search-chip.active{background:linear-gradient(180deg,#e7cf9e,#d8b979)!important;border-color:var(--strata-ochre)!important}.chip{background:linear-gradient(180deg,#f6eedd,#ece0c8)!important;border:1px solid var(--strata-seam)!important;color:var(--strata-ink-soft)!important}.chip.active{background:linear-gradient(180deg,var(--primary-500),var(--primary-600))!important;color:#fff!important;border-color:transparent!important}.map-content:not(.map-content-fullbleed){border:3px solid rgba(58,42,26,.6)!important;border-radius:8px!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.25),0 16px 30px rgba(16,11,6,.5)!important}.map-content-fullbleed{border:none!important;border-radius:0!important;box-shadow:none!important}.tab-bar-inner{background:rgba(38,28,18,.86)!important;box-shadow:0 8px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.08),0 0 0 1px hsla(39,47%,60%,.18)!important}.tab-bar-item{color:hsla(38,52%,88%,.66)!important}.tab-bar-item.active,.tab-bar-item:hover{color:#f6ecd8!important}.tab-bar-item.active{background:hsla(39,47%,60%,.22)!important}.ai-panel{-webkit-mask:var(--strata-mask);mask:var(--strata-mask);filter:var(--strata-drop);border:0!important;border-radius:0!important;background:linear-gradient(180deg,var(--strata-parchment) 0,var(--strata-parchment-2) 100%)!important}.ai-panel-header,.ai-panel-input{background:transparent!important;border-color:var(--strata-seam)!important}.ai-toggle-btn{background:linear-gradient(180deg,var(--strata-ochre),var(--strata-clay))!important;box-shadow:0 8px 20px rgba(26,18,10,.4)!important}.ai-toggle-btn:hover{background:linear-gradient(180deg,#d4b478,#bd8a60)!important}.ai-toggle-btn.open{background:linear-gradient(180deg,#6b5a45,#4a3a2a)!important}.learn-filter{background:linear-gradient(180deg,#fbf6ec,#efe3cd)!important;border:1px solid var(--strata-seam)!important;color:var(--strata-ink-soft)!important}.learn-filter.active{color:var(--strata-ink)!important}:root{--strata-speckle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cg fill='%235a4024' fill-opacity='0.16'%3E%3Ccircle cx='5' cy='7' r='1.1'/%3E%3Ccircle cx='19' cy='3' r='0.7'/%3E%3Ccircle cx='33' cy='9' r='1'/%3E%3Ccircle cx='43' cy='5' r='0.8'/%3E%3Ccircle cx='12' cy='20' r='0.9'/%3E%3Ccircle cx='27' cy='24' r='1.2'/%3E%3Ccircle cx='40' cy='19' r='0.7'/%3E%3Ccircle cx='7' cy='34' r='1'/%3E%3Ccircle cx='22' cy='39' r='0.8'/%3E%3Ccircle cx='36' cy='33' r='1.1'/%3E%3Ccircle cx='45' cy='42' r='0.7'/%3E%3C/g%3E%3Cg fill='%23ffffff' fill-opacity='0.12'%3E%3Ccircle cx='9' cy='12' r='0.7'/%3E%3Ccircle cx='30' cy='6' r='0.6'/%3E%3Ccircle cx='16' cy='28' r='0.7'/%3E%3Ccircle cx='38' cy='27' r='0.6'/%3E%3Ccircle cx='24' cy='44' r='0.7'/%3E%3C/g%3E%3C/svg%3E");--stone-bevel:inset 0 1px 0 hsla(0,0%,100%,.55),inset 0 -2px 3px rgba(74,52,28,.3),0 2px 4px rgba(26,18,10,.32);--stone-bevel-hover:inset 0 1px 0 hsla(0,0%,100%,.6),inset 0 -2px 4px rgba(74,52,28,.26),0 4px 9px rgba(26,18,10,.34);--stone-press:inset 0 2px 5px rgba(60,42,22,.45),inset 0 1px 0 hsla(0,0%,100%,.14);--stone-recess:inset 0 2px 4px rgba(74,52,28,.3),inset 0 -1px 0 hsla(0,0%,100%,.5)}.ai-input,.db-per-page select,.form-input,.form-select,.marker-form .form-group input,.marker-form .form-group textarea,.search-input,.sort-select,input[type=email],input[type=number],input[type=search],input[type=text],select,textarea{background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#efe3cd 0,#f7efdf 100%)!important;border:1px solid var(--strata-seam)!important;border-radius:var(--radius-md)!important;box-shadow:var(--stone-recess)!important;color:var(--strata-ink)!important;transition:box-shadow .15s,border-color .15s}.ai-input::placeholder,.form-input::placeholder,.search-input::placeholder,input::placeholder,textarea::placeholder{color:rgba(107,74,40,.55)!important}.ai-input:focus,.db-per-page select:focus,.form-input:focus,.form-select:focus,.marker-form .form-group input:focus,.marker-form .form-group textarea:focus,.search-input:focus,.sort-select:focus,input:focus,select:focus,textarea:focus{outline:none!important;border-color:var(--strata-ochre)!important;box-shadow:var(--stone-recess),0 0 0 3px hsla(39,47%,60%,.38)!important}.db-per-page select,.form-select,.sort-select,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%233b2c1a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),var(--strata-speckle),linear-gradient(180deg,#efe3cd 0,#f7efdf 100%)!important;background-repeat:no-repeat,repeat,no-repeat!important;background-position:right .6rem center,0 0,50%!important;background-size:12px 8px,48px 48px,cover!important;padding-right:1.9rem!important}.btn,.btn-secondary,.clear-button,.current-location-button,.export-btn,.pagination .btn,.us-clear{position:relative;background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#f4ead6 0,#e4d2b0 100%)!important;border:1px solid var(--strata-seam)!important;border-radius:var(--radius-md)!important;box-shadow:var(--stone-bevel)!important;color:var(--strata-ink)!important;text-shadow:0 1px 0 hsla(0,0%,100%,.4);transition:box-shadow .14s,transform 90ms,background .14s}.btn-secondary:hover:not(:disabled),.btn:hover:not(:disabled),.clear-button:hover,.current-location-button:hover,.export-btn:hover:not(:disabled),.pagination .btn:hover:not(:disabled){background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#f9f0de 0,#ecdcbd 100%)!important;box-shadow:var(--stone-bevel-hover)!important}.btn-secondary:active:not(:disabled),.btn:active:not(:disabled),.clear-button:active,.current-location-button:active,.export-btn:active:not(:disabled),.pagination .btn:active:not(:disabled){box-shadow:var(--stone-press)!important;transform:translateY(1px)}.btn:disabled,.pagination .btn:disabled{box-shadow:inset 0 1px 3px rgba(74,52,28,.22)!important;opacity:.55!important}.btn-primary,.export-btn-csv{background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#4aa06b 0,#2f7a4c 100%)!important;border:1px solid rgba(20,60,38,.5)!important;color:#f4fbf3!important;text-shadow:0 1px 1px rgba(10,40,24,.45);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.3),inset 0 -2px 3px rgba(15,55,33,.5),0 2px 5px rgba(16,11,6,.35)!important}.btn-primary:hover:not(:disabled),.export-btn-csv:hover:not(:disabled){background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#55b378 0,#368a56 100%)!important}.btn-success{background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#3fae83 0,#2b8a67 100%)!important;border:1px solid rgba(16,70,52,.5)!important;color:#f2fbf7!important;text-shadow:0 1px 1px rgba(8,45,32,.45);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.28),inset 0 -2px 3px rgba(12,60,44,.5),0 2px 5px rgba(16,11,6,.35)!important}.export-btn-kml{background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#3f9fc4 0,#2b7ba0 100%)!important;border:1px solid rgba(18,60,82,.5)!important;color:#f2fafd!important;text-shadow:0 1px 1px rgba(8,40,55,.45);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.3),inset 0 -2px 3px rgba(14,55,76,.5),0 2px 5px rgba(16,11,6,.35)!important}.export-btn-kml:hover:not(:disabled){background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#4aabd0 0,#328ab2 100%)!important}.clear-button,.current-location-button{border-radius:999px!important}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent!important;accent-color:var(--strata-ochre)}input[type=range]::-webkit-slider-runnable-track{height:8px;border-radius:999px;background:linear-gradient(180deg,#d8c6a2,#efe3cd);box-shadow:inset 0 2px 3px rgba(60,42,22,.4);border:1px solid var(--strata-seam)}input[type=range]::-moz-range-track{height:8px;border-radius:999px;background:linear-gradient(180deg,#d8c6a2,#efe3cd);box-shadow:inset 0 2px 3px rgba(60,42,22,.4);border:1px solid var(--strata-seam)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;margin-top:-6px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e7cf9e,#b0805a 75%);border:1px solid rgba(74,52,28,.55);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.5),0 2px 4px rgba(26,18,10,.4);cursor:pointer}input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e7cf9e,#b0805a 75%);border:1px solid rgba(74,52,28,.55);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.5),0 2px 4px rgba(26,18,10,.4);cursor:pointer}.mapboxgl-ctrl-group{background:linear-gradient(180deg,#f4ead6,#e4d2b0)!important;border:1px solid rgba(58,42,26,.5)!important;border-radius:var(--radius-md)!important;box-shadow:0 3px 8px rgba(16,11,6,.4)!important;overflow:hidden}.mapboxgl-ctrl-group button{background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#f4ead6,#e4d2b0)!important;border-color:var(--strata-seam)!important}.mapboxgl-ctrl-group button:hover{background:var(--strata-speckle) 0 0 /48px 48px,linear-gradient(180deg,#f9f0de,#ecdcbd)!important}.mapboxgl-ctrl-group button+button{border-top:1px solid var(--strata-seam)!important}.mapboxgl-ctrl-group button .mapboxgl-ctrl-icon{filter:sepia(.6) saturate(1.2) hue-rotate(350deg) brightness(.5)}.search-results,.us-results{background:linear-gradient(180deg,var(--strata-parchment),var(--strata-parchment-2))!important;border:1px solid var(--strata-seam)!important;box-shadow:0 12px 24px rgba(16,11,6,.35)!important}.search-result-item:hover,.us-result-item:hover{background:hsla(39,47%,60%,.16)!important}:focus-visible{outline-color:var(--strata-ochre)!important}::selection{background:hsla(39,47%,60%,.4);color:var(--strata-basalt)}*{scrollbar-color:var(--strata-clay) rgba(107,74,40,.12);scrollbar-width:thin}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:rgba(107,74,40,.12)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--strata-ochre),var(--strata-clay));border-radius:999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#d4b478,#a5764f);background-clip:padding-box}@media (prefers-reduced-motion:reduce){.fossil-card:hover,.learn-category-card:hover,.learn-lesson-card:hover{box-shadow:none!important}.btn-secondary:active:not(:disabled),.btn:active:not(:disabled),.export-btn:active:not(:disabled){transform:none}}@media (max-width:480px){:root{--strata-drop:drop-shadow(0 8px 14px rgba(26,18,10,.3))}}:root{--primary-50:#f0f9f3;--primary-100:#dcf2e3;--primary-200:#bbe5cb;--primary-300:#8bd3a7;--primary-400:#55bd7c;--primary-500:#2e8b57;--primary-600:#1e6b42;--primary-700:#16573a;--primary-800:#154832;--primary-900:#133c2c;--secondary-50:#f0f8ff;--secondary-100:#e0f2fe;--secondary-200:#bae6fd;--secondary-300:#7dd3fc;--secondary-400:#38bdf8;--secondary-500:#0ea5e9;--secondary-600:#0284c7;--secondary-700:#0369a1;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--success-500:#10b981;--success-50:#ecfdf5;--warning-500:#f59e0b;--warning-50:#fffbeb;--error-500:#ef4444;--error-50:#fef2f2;--error-100:#fee2e2;--error-200:#fecaca;--error-600:#dc2626;--info-500:#3b82f6;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 1px 3px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.06);--shadow-lg:0 4px 6px -1px rgba(0,0,0,.1);--shadow-xl:0 10px 15px -3px rgba(0,0,0,.08);--z-modals:1000;--z-overlays:1100}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--gray-50);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;color:var(--gray-800);-webkit-font-smoothing:antialiased}.container{max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width:640px){.container{padding:0 1.5rem}}.app-shell{display:flex;flex-direction:column;min-height:100vh;padding-bottom:4.5rem}.app-shell:has(.map-section-fullbleed){height:100dvh;min-height:100dvh;padding-bottom:0;overflow:hidden}.seo-intro{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tab-bar{position:fixed;bottom:0;left:0;right:0;z-index:200;display:flex;justify-content:center;padding:.5rem 1rem calc(.5rem + env(safe-area-inset-bottom, 0px));background:transparent;pointer-events:none}.tab-bar-inner{gap:.25rem;background:hsla(0,0%,100%,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:999px;padding:.375rem .5rem;box-shadow:0 4px 20px rgba(0,0,0,.1),0 0 0 1px rgba(0,0,0,.04);pointer-events:auto}.tab-bar-inner,.tab-bar-item{display:flex;align-items:center}.tab-bar-item{flex-direction:column;gap:.125rem;padding:.5rem 1rem;background:none;border:none;border-radius:999px;cursor:pointer;color:var(--gray-500);transition:all .15s;min-width:60px}.tab-bar-item:hover{color:var(--gray-700)}.tab-bar-item.active{background:rgba(46,139,87,.1);color:var(--primary-600)}.tab-bar-icon{width:20px;height:20px}.tab-bar-label{font-size:.625rem;font-weight:600;letter-spacing:.01em}@media (max-width:480px){.tab-bar-item{padding:.5rem .625rem;min-width:52px}.tab-bar-label{font-size:.5625rem}}.search-bar-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;flex-wrap:wrap}.search-bar-row .unified-search{flex:1 1;min-width:200px}.search-chips{display:flex;flex-shrink:0}.search-chip,.search-chips{gap:.3125rem;align-items:center}.search-chip{display:inline-flex;padding:.375rem .625rem;background:#fff;border:1px solid var(--gray-200);border-radius:999px;font-size:.6875rem;font-weight:600;color:var(--gray-600);cursor:pointer;transition:all .15s;white-space:nowrap}.search-chip:hover{border-color:var(--gray-300);color:var(--gray-800)}.search-chip.active{border-color:var(--primary-300);color:var(--primary-700);background:var(--primary-50)}.search-chip.active-danger{border-color:var(--error-300);color:var(--error-600);background:var(--error-50)}.search-chip-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.main-content{padding:.75rem 0 1rem;flex:1 1}.main-content:has(.map-section-fullbleed){padding:0;flex:1 1;min-height:0;display:flex;flex-direction:column}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s,box-shadow .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary-500);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-600)}.btn-secondary{background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-300)}.btn-secondary:hover:not(:disabled){background:var(--gray-200)}.btn-success{background:var(--success-500);color:#fff}.btn-success:hover:not(:disabled){background:#059669}.card{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--gray-200);overflow:hidden}.card-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--gray-200)}.card-body{padding:1.5rem}.map-section{display:flex;flex-direction:column;gap:1rem}.map-section-fullbleed{width:100%;gap:0;position:relative;flex:1 1;min-height:0;display:flex;flex-direction:column}.map-toolbar{position:absolute;top:0;left:0;right:0;z-index:20;padding:calc(.75rem + env(safe-area-inset-top, 0px)) calc(1rem + env(safe-area-inset-right, 0px)) 0 calc(1rem + env(safe-area-inset-left, 0px));pointer-events:none}.map-toolbar .search-bar-row{pointer-events:auto;padding:.65rem .75rem;margin:0 auto;max-width:1200px;background:hsla(40,65%,95%,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(107,74,40,.18);border-radius:14px;box-shadow:0 8px 24px rgba(16,11,6,.28)}.map-content{height:600px;width:100%;position:relative;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--gray-200)}.map-content-fullbleed{flex:1 1;width:100%;height:100dvh;min-height:100dvh;border:none;border-radius:0;box-shadow:none;--map-ui-top:calc(5.75rem + env(safe-area-inset-top, 0px));--map-ui-bottom:calc(5.25rem + env(safe-area-inset-bottom, 0px));--map-ui-x:calc(0.75rem + env(safe-area-inset-left, 0px));--map-ui-right:calc(0.75rem + env(safe-area-inset-right, 0px))}.map-content-fullbleed .map-wrapper,.map-content-fullbleed .pbdb-map-container{width:100%;height:100%;min-height:0}.map-content-fullbleed .map-fossils-count,.map-content-fullbleed .map-fossils-loading{top:var(--map-ui-top);left:var(--map-ui-x);max-width:calc(100% - var(--map-ui-x) - var(--map-ui-right) - 3.5rem)}.map-content-fullbleed .mapboxgl-ctrl-top-right{top:var(--map-ui-top);right:var(--map-ui-right)}.map-content-fullbleed .mapboxgl-ctrl-top-left{top:var(--map-ui-top);left:var(--map-ui-x)}.map-content-fullbleed .mapboxgl-ctrl-bottom-right{bottom:var(--map-ui-bottom);right:var(--map-ui-right)}.map-content-fullbleed .mapboxgl-ctrl-bottom-left,.map-content-fullbleed .property-overlay-panel{bottom:var(--map-ui-bottom);left:var(--map-ui-x)}@media (max-width:900px){.map-content-fullbleed{--map-ui-top:calc(8.75rem + env(safe-area-inset-top, 0px))}}@media (max-width:768px){.map-content:not(.map-content-fullbleed){height:450px}.map-toolbar{padding:calc(.5rem + env(safe-area-inset-top, 0px)) calc(.5rem + env(safe-area-inset-right, 0px)) 0 calc(.5rem + env(safe-area-inset-left, 0px))}.map-toolbar .search-bar-row{padding:.5rem}}.geological-section{margin-top:.5rem}.time-filter-modal{position:fixed;inset:0;z-index:1200;background:radial-gradient(120% 80% at 50% -10%,rgba(74,54,32,.35),transparent 55%),rgba(20,14,8,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom, 0px))}.time-filter-shell{width:min(920px,100%);margin:0 auto;display:flex;flex-direction:column;max-height:100%;background:linear-gradient(180deg,#fbf6ec,#f2e8d4);border:1px solid rgba(107,74,40,.22);border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.45);overflow:hidden;color:#3b2c1a}.time-filter-header{display:flex;justify-content:space-between;gap:1rem;padding:1.25rem 1.35rem 1rem;border-bottom:1px solid rgba(107,74,40,.16);flex-shrink:0}.time-filter-eyebrow{margin:0 0 .25rem;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8b5e3c}.time-filter-header h2{margin:0;font-size:1.5rem;letter-spacing:-.02em}.time-filter-sub{margin:.4rem 0 0;font-size:.875rem;line-height:1.45;color:#6b5a45;max-width:36rem}.time-filter-close{width:40px;height:40px;border:1px solid rgba(107,74,40,.2);background:hsla(0,0%,100%,.55);border-radius:999px;display:flex;align-items:center;justify-content:center;color:#6b5a45;cursor:pointer;flex-shrink:0}.time-filter-body{flex:1 1;overflow-y:auto;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem}.time-filter-era-head{display:flex;justify-content:space-between;align-items:flex-end;gap:.75rem;margin-bottom:.65rem}.time-filter-era-head h3{margin:0;font-size:1.05rem;color:#3b2c1a}.time-filter-era-head span{font-size:.75rem;color:#8b7355}.time-filter-era-toggle{border:1px solid rgba(107,74,40,.22);background:#f7efdf;color:#5a4024;border-radius:999px;padding:.3rem .7rem;font-size:.6875rem;font-weight:700;cursor:pointer}.time-filter-era-toggle.active{background:rgba(196,92,38,.16);border-color:#c45c26}.time-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:.55rem;gap:.55rem}.time-filter-card{display:flex;align-items:stretch;gap:.65rem;text-align:left;padding:.7rem .75rem;border-radius:12px;border:1px solid rgba(107,74,40,.16);background:hsla(0,0%,100%,.55);cursor:pointer;transition:border-color .14s,box-shadow .14s,transform .1s;min-height:88px}.time-filter-card:hover{border-color:rgba(196,92,38,.45);box-shadow:0 4px 14px rgba(26,18,10,.1)}.time-filter-card.active{border-color:#c45c26;background:hsla(40,65%,95%,.95);box-shadow:inset 0 0 0 1px rgba(196,92,38,.2)}.time-filter-swatch{width:8px;border-radius:999px;flex-shrink:0}.time-filter-card-text{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1 1}.time-filter-name{font-size:.9rem;font-weight:700;color:#3b2c1a}.time-filter-age{font-size:.6875rem;font-weight:600;color:#8b7355}.time-filter-desc{font-size:.7rem;line-height:1.35;color:#6b5a45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.time-filter-check{width:22px;height:22px;border-radius:999px;border:1px solid rgba(107,74,40,.25);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:transparent;flex-shrink:0;align-self:center}.time-filter-check.on{background:#2e8b57;border-color:#2e8b57;color:#fff}.time-filter-footer{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap;padding:.85rem 1.25rem;border-top:1px solid rgba(107,74,40,.16);background:hsla(40,54%,89%,.85);flex-shrink:0}.time-filter-footer-right{display:flex;gap:.5rem;margin-left:auto}@media (max-width:640px){.time-filter-modal{padding:0}.time-filter-shell{border-radius:0;width:100%}.time-filter-header h2{font-size:1.25rem}.time-filter-grid{grid-template-columns:1fr}}.fossil-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1rem;gap:1rem}@media (max-width:640px){.fossil-grid{grid-template-columns:1fr}}.fossil-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);transition:box-shadow .15s,border-color .15s;cursor:pointer;overflow:hidden;display:flex;flex-direction:column}.fossil-card:hover{border-color:var(--gray-300);box-shadow:var(--shadow-md)}.fossil-card-image{width:100%;aspect-ratio:16/10;background:var(--gray-50);overflow:hidden}.fossil-card-image .fossil-img{width:100%;height:100%;border-radius:0}.fossil-card-content{padding:.875rem 1rem}.fossil-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.fossil-card-name{font-size:.9375rem;font-weight:600;color:var(--gray-900);line-height:1.3}.fossil-card-species{font-size:.75rem;color:var(--gray-500);font-style:italic;margin-top:.125rem}.fossil-card-period-chip{flex-shrink:0;padding:.1875rem .5rem;border-radius:999px;color:#fff;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;line-height:1.4}.fossil-card-meta{display:flex;flex-wrap:wrap;gap:.25rem .5rem;font-size:.75rem;color:var(--gray-500)}.fossil-card-meta span{display:inline-flex;align-items:center}.db-header{margin-bottom:1.25rem}.db-header h3{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin-bottom:.25rem}.db-header p{font-size:.8125rem;color:var(--gray-500)}.db-search-area{margin:1rem 0;max-width:560px}.quick-filters{display:flex;gap:.375rem;flex-wrap:wrap;align-items:center;margin-top:.75rem}.quick-filters-label{color:var(--gray-500)}.chip,.quick-filters-label{font-size:.75rem;font-weight:500}.chip{display:inline-flex;padding:.25rem .625rem;background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-200);border-radius:999px;cursor:pointer;transition:all .15s}.chip:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-700)}.chip.active{background:var(--primary-500);color:#fff;border-color:var(--primary-500)}.chip-danger{background:var(--error-50);color:var(--error-600);border-color:var(--error-200)}.chip-danger:hover{background:var(--error-100)}.db-status-bar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem;font-size:.75rem}.db-count{font-weight:600;color:var(--gray-700)}.db-active-search{color:var(--gray-500);font-style:italic}.db-per-page{display:flex;align-items:center;gap:.375rem;margin-left:auto;color:var(--gray-500)}.db-per-page select{padding:.25rem .375rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.75rem;background:#fff}.empty-state{text-align:center;padding:3rem 1rem;color:var(--gray-500)}.empty-state h4{font-size:1rem;font-weight:600;margin-bottom:.25rem;color:var(--gray-600)}.empty-state p{font-size:.8125rem}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.pagination-info{font-size:.75rem;color:var(--gray-500);margin-bottom:.5rem;text-align:center}.pagination-current{font-size:.75rem;font-weight:600;color:var(--gray-700);padding:.375rem .75rem;background:var(--gray-100);border-radius:var(--radius-sm)}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.stat-card{padding:1rem;border-radius:var(--radius-lg);background:var(--gray-50);border:1px solid var(--gray-200)}.stat-card-label{font-size:.6875rem;font-weight:500;color:var(--gray-500);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.25rem}.stat-card-value{font-size:1.5rem;font-weight:700;color:var(--gray-900);line-height:1.2}.stat-card-note{font-size:.6875rem;color:var(--gray-500);margin-top:.125rem}.section-header{margin-bottom:1rem;padding:1rem;background:#fff;border-radius:var(--radius-xl);border:1px solid var(--gray-200)}.section-header h2{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin-bottom:.75rem}.export-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1rem;gap:1rem}.export-option{padding:1.25rem;border-radius:var(--radius-lg);border:1px solid var(--gray-200);background:var(--gray-50)}.export-option h4{font-size:.9375rem;font-weight:600;color:var(--gray-900);margin-bottom:.375rem}.export-option p{font-size:.8125rem;color:var(--gray-500);margin-bottom:1rem;line-height:1.5}.export-btn{display:block;width:100%;padding:.625rem 1rem;border:none;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s}.export-btn-csv{background:var(--primary-500);color:#fff}.export-btn-csv:hover{background:var(--primary-600)}.export-btn-kml{background:var(--secondary-500);color:#fff}.export-btn-kml:hover{background:var(--secondary-600)}.animate-fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(.8);opacity:1}to{transform:translate(-50%,-50%) scale(1.6);opacity:0}}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.375rem;font-weight:500;color:var(--gray-700);font-size:.8125rem}.form-input,.form-select{width:100%;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.875rem;transition:border-color .15s;background:#fff}.form-input:focus,.form-select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 2px rgba(46,139,87,.1)}.grid{display:grid;grid-gap:1rem;gap:1rem}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.geological-legend{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--gray-200);overflow:hidden}.legend-section{padding:1rem}.legend-section:not(:last-child){border-bottom:1px solid var(--gray-200)}.legend-title{margin:0 0 .75rem;color:var(--gray-800);font-size:.9375rem;font-weight:600}.geological-periods{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.375rem;gap:.375rem}.period-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:var(--radius-sm);border:1px solid transparent;transition:background .15s}.period-item:hover{background:var(--gray-50)}.period-color{width:14px;height:14px;border-radius:3px;flex-shrink:0}.period-name{font-weight:500;font-size:.8125rem;color:var(--gray-800)}.period-age{color:var(--gray-500);font-size:.6875rem;margin-left:auto}.loading-spinner{width:24px;height:24px;border:2px solid var(--gray-200);border-top-color:var(--primary-500);border-radius:50%;animation:spin .8s linear infinite}.map-header{background:var(--primary-600);color:#fff;padding:1rem}.map-header h3{margin:0;font-size:1rem;font-weight:600}.header-top{justify-content:space-between;gap:1rem}.header-top,.map-controls{display:flex;align-items:center}.map-controls{gap:.5rem;flex-wrap:wrap}.map-controls-compact{background:var(--gray-50);padding:.5rem .75rem;border-bottom:1px solid var(--gray-200)}.layer-controls,.map-controls-compact .layer-controls{display:flex;gap:.375rem;align-items:center;flex-wrap:wrap}.add-marker-toggle,.manage-markers-button,.marker-toggle,.property-lines-toggle,.stratigraphy-toggle{padding:.375rem .625rem;border:1px solid var(--gray-300);background:#fff;color:var(--gray-700);border-radius:var(--radius-md);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:.375rem}.add-marker-toggle:hover,.manage-markers-button:hover,.marker-toggle:hover,.property-lines-toggle:hover,.stratigraphy-toggle:hover{background:var(--gray-50);border-color:var(--gray-400)}.stratigraphy-toggle.active{background:var(--success-500);color:#fff;border-color:var(--success-500)}.property-lines-toggle.active{background:var(--warning-500);color:#fff;border-color:var(--warning-500)}.marker-toggle.active{background:#228b22;color:#fff;border-color:#228b22}.add-marker-toggle.active{background:var(--error-500);color:#fff;border-color:var(--error-500)}.toggle-indicator{background:var(--success-500);color:#fff;padding:1px .375rem;border-radius:var(--radius-sm);font-size:.625rem;font-weight:600}.map-stats{display:flex;gap:.5rem;flex-wrap:wrap}.stat{padding:.375rem .75rem;background:var(--gray-50);border-radius:var(--radius-md);font-size:.75rem;font-weight:500;color:var(--gray-700);border:1px solid var(--gray-200)}.pbdb-map-container{width:100%;height:100%}.map-wrapper{position:relative;overflow:hidden;width:100%;min-height:600px;height:600px}.map-fossils-loading{position:absolute;top:12px;left:12px;z-index:1000;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:rgba(15,23,42,.88);color:#fff;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.01em;box-shadow:0 4px 16px rgba(0,0,0,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.map-fossils-loading-spinner{width:14px;height:14px;border-radius:50%;border:2px solid hsla(0,0%,100%,.25);border-top-color:#fff;animation:spin .7s linear infinite;flex-shrink:0}.map-fossils-count{position:absolute;top:12px;left:12px;z-index:1000;padding:.375rem .625rem;background:rgba(15,23,42,.75);color:hsla(0,0%,100%,.92);border-radius:999px;font-size:.6875rem;font-weight:600;box-shadow:0 2px 10px rgba(0,0,0,.2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-inspect-hint{font-weight:500;opacity:.75}.inspect-pin{color:#f4ead6;filter:drop-shadow(0 2px 6px rgba(0,0,0,.55));transform:translateY(2px);pointer-events:none}.inspect-pin svg{fill:#c45c26;stroke:#fbf6ec}.inspect-popup{font-family:inherit;min-width:240px;max-width:300px;color:#3b2c1a}.inspect-popup-header{display:flex;justify-content:space-between;gap:.5rem;align-items:flex-start;margin-bottom:.5rem}.inspect-eyebrow{margin:0 0 .15rem;font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8b7355}.inspect-popup-header h4{margin:0;font-size:.95rem;line-height:1.25;color:#3b2c1a}.inspect-close{border:none;background:rgba(107,74,40,.1);border-radius:999px;padding:.25rem;display:flex;color:#6b5a45;cursor:pointer}.inspect-loading{font-size:.75rem;color:#6b5a45;gap:.4rem;padding:.35rem 0}.inspect-error{margin:0;font-size:.75rem;color:#b45309}.inspect-formation{display:flex;gap:.55rem;margin-bottom:.65rem}.inspect-swatch{width:8px;border-radius:999px;flex-shrink:0;min-height:100%;background:#c9a86a}.inspect-formation-body{min-width:0}.inspect-age{margin:0 0 .25rem;display:flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:650;color:#5a4024}.inspect-attribution,.inspect-desc,.inspect-empty,.inspect-groups,.inspect-lith,.inspect-sample{margin:0;font-size:.7rem;line-height:1.4;color:#6b5a45}.inspect-desc{margin-top:.3rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.inspect-fossils h5{margin:0 0 .4rem;display:flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:700;color:#3b2c1a}.inspect-groups{margin-bottom:.35rem!important}.inspect-taxon-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem;max-height:160px;overflow-y:auto}.inspect-taxon-list li{display:block;padding:0;border-radius:6px;background:hsla(39,47%,60%,.14);overflow:hidden}.inspect-taxon-btn{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;padding:.4rem .5rem;border:none;background:transparent;text-align:left;cursor:pointer;transition:background .14s}.inspect-taxon-btn:hover:not(:disabled){background:hsla(39,47%,60%,.28)}.inspect-taxon-btn:disabled{cursor:default}.inspect-taxon-name{font-size:.75rem;font-weight:650;font-style:italic;color:#3b2c1a}.inspect-taxon-count{font-size:.625rem;color:#8b7355}.inspect-taxon-open{font-weight:700;color:#8b5e3c}.inspect-sample{margin-top:.4rem!important}.inspect-actions{margin-top:.65rem}.inspect-note-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid rgba(107,74,40,.25);background:linear-gradient(180deg,#f4ead6,#e4d2b0);color:#3b2c1a;border-radius:8px;padding:.45rem .6rem;font-size:.75rem;font-weight:650;cursor:pointer}.inspect-note-btn:hover{background:linear-gradient(180deg,#f9f0de,#ecdcbd)}.inspect-attribution{margin-top:.5rem!important;font-size:.6rem!important;opacity:.8}.property-overlay-panel{position:absolute;bottom:16px;left:12px;z-index:1000;width:min(280px,calc(100% - 24px));background:hsla(0,0%,100%,.96);border:1px solid rgba(15,23,42,.08);border-radius:12px;box-shadow:0 8px 28px rgba(15,23,42,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.property-overlay-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem .875rem .625rem}.property-overlay-header strong{display:block;font-size:.8125rem;color:var(--gray-900)}.property-overlay-header p{margin:.2rem 0 0;font-size:.6875rem;line-height:1.4;color:var(--gray-500)}.property-overlay-toggle{flex-shrink:0;border:1px solid var(--gray-200);background:#fff;border-radius:999px;padding:.25rem .55rem;font-size:.6875rem;font-weight:600;color:var(--gray-600);cursor:pointer}.property-overlay-toggle:hover{border-color:var(--gray-300);color:var(--gray-800)}.property-overlay-body{border-top:1px solid var(--gray-100);padding:.75rem .875rem .875rem}.property-legend{display:grid;grid-template-columns:1fr 1fr;grid-gap:.375rem .5rem;gap:.375rem .5rem;margin-bottom:.75rem}.property-legend-item{display:flex;align-items:center;gap:.375rem;font-size:.6875rem;color:var(--gray-700)}.property-legend-swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.property-control{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.625rem;font-size:.6875rem;font-weight:600;color:var(--gray-600)}.property-control input[type=range]{width:100%;accent-color:#f59e0b}.property-check{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--gray-700);margin-bottom:.625rem;cursor:pointer}.property-disclaimer{margin:0;font-size:.625rem;line-height:1.4;color:var(--gray-500)}.radar-overlay-panel{position:absolute;bottom:16px;right:12px;z-index:1000;width:min(280px,calc(100% - 24px));background:hsla(0,0%,100%,.96);border:1px solid rgba(15,23,42,.08);border-radius:12px;box-shadow:0 8px 28px rgba(15,23,42,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.radar-overlay-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem .875rem .625rem}.radar-overlay-header strong{display:block;font-size:.8125rem;color:var(--gray-900)}.radar-overlay-header p{margin:.2rem 0 0;font-size:.6875rem;line-height:1.4;color:var(--gray-500)}.radar-overlay-toggle{flex-shrink:0;border:1px solid var(--gray-200);background:#fff;border-radius:999px;padding:.25rem .55rem;font-size:.6875rem;font-weight:600;color:var(--gray-600);cursor:pointer}.radar-overlay-toggle:hover{border-color:var(--gray-300);color:var(--gray-800)}.radar-overlay-body{border-top:1px solid var(--gray-100);padding:.75rem .875rem .875rem}.radar-legend{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.radar-legend-label{font-size:.625rem;font-weight:600;color:var(--gray-500);text-transform:uppercase;letter-spacing:.03em}.radar-legend-bar{flex:1 1;height:10px;border-radius:999px;background:linear-gradient(90deg,#a8e6a1,#3cb043 25%,#f4d03f 50%,#e67e22 75%,#c0392b);border:1px solid rgba(15,23,42,.08)}.radar-control{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.625rem;font-size:.6875rem;font-weight:600;color:var(--gray-600)}.radar-control input[type=range]{width:100%;accent-color:#38bdf8}.radar-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.625rem;font-size:.6875rem;color:var(--gray-600)}.radar-refresh-btn{border:1px solid var(--gray-200);background:#fff;border-radius:999px;padding:.2rem .55rem;font-size:.6875rem;font-weight:600;color:var(--gray-700);cursor:pointer}.radar-refresh-btn:hover{border-color:#7dd3fc;color:#0369a1}.radar-disclaimer{margin:0;font-size:.625rem;line-height:1.4;color:var(--gray-500)}.paleo-map-root{display:flex;flex-direction:column;height:600px;min-height:600px;background:#0b3a52;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--gray-200)}.paleo-map-toolbar{flex-shrink:0;padding:.875rem 1rem .75rem;background:linear-gradient(180deg,#0f172a,#1e293b);color:#fff;z-index:2}.paleo-map-heading h3{margin:0;font-size:1rem;font-weight:700}.paleo-map-heading p{margin:.2rem 0 0;font-size:.75rem;color:hsla(0,0%,100%,.7)}.paleo-period-chips{display:flex;gap:.375rem;overflow-x:auto;padding:.75rem 0 .5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.paleo-period-chips::-webkit-scrollbar{display:none}.paleo-period-chip{flex-shrink:0;border:1px solid hsla(0,0%,100%,.15);background:hsla(0,0%,100%,.06);color:hsla(0,0%,100%,.85);border-radius:999px;padding:.3rem .65rem;font-size:.6875rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.paleo-period-chip:hover{background:hsla(0,0%,100%,.12)}.paleo-period-chip.active{background:var(--period-color,#a78bfa);border-color:transparent;color:#0f172a}.paleo-slider-row{display:flex;align-items:center;gap:.625rem;font-size:.625rem;font-weight:600;color:hsla(0,0%,100%,.55);text-transform:uppercase;letter-spacing:.04em}.paleo-slider-row input[type=range]{flex:1 1;accent-color:#a78bfa;direction:rtl}.paleo-layer-toggle{flex-shrink:0;border:1px solid hsla(0,0%,100%,.2);background:hsla(0,0%,100%,.06);color:hsla(0,0%,100%,.75);border-radius:999px;padding:.25rem .6rem;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.paleo-layer-toggle.active{background:rgba(56,189,248,.25);border-color:#38bdf8;color:#e0f2fe}.paleo-map-stage{position:relative;flex:1 1;min-height:0}.paleo-map-loading{position:absolute;top:12px;left:12px;z-index:5;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:rgba(15,23,42,.88);color:#fff;border-radius:999px;font-size:.75rem;font-weight:600;pointer-events:none}.paleo-fossil-dot{width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 6px rgba(0,0,0,.45);cursor:pointer;padding:0}.paleo-fossil-dot:hover{transform:scale(1.25)}.paleo-popup{position:relative;font-family:inherit;padding:.25rem}.paleo-popup-close{position:absolute;top:4px;right:4px;z-index:2;background:hsla(0,0%,100%,.9);border:none;border-radius:999px;padding:3px;cursor:pointer;display:flex;color:#64748b}.paleo-popup-image{height:100px;border-radius:8px;overflow:hidden;margin-bottom:.5rem}.paleo-popup h4{margin:0 0 .25rem;font-size:.875rem;color:#0f172a}.paleo-popup p{margin:0;font-size:.75rem;color:#475569;line-height:1.4}.paleo-popup-meta{margin-top:.25rem!important;font-size:.6875rem!important;color:#94a3b8!important}.paleo-popup-btn{margin-top:.5rem;width:100%;border:none;border-radius:6px;background:#0f172a;color:#fff;font-size:.75rem;font-weight:600;padding:.4rem .6rem;cursor:pointer}.paleo-map-footer{flex-shrink:0;padding:.5rem 1rem;background:#0f172a;border-top:1px solid hsla(0,0%,100%,.08)}.paleo-map-footer p{margin:0;font-size:.625rem;line-height:1.4;color:hsla(0,0%,100%,.5)}.paleo-map-footer p+p{margin-top:.2rem}@media (max-width:640px){.paleo-map-root{height:70vh;min-height:480px}}.location-search{width:100%;max-width:400px}.location-search,.search-container{position:relative}.search-input-container{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:.625rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.875rem;outline:none;transition:border-color .15s}.search-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 2px rgba(46,139,87,.1)}.search-actions{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;gap:.25rem;align-items:center}.spinner{width:14px;height:14px;border:2px solid var(--gray-200);border-top-color:var(--primary-500);border-radius:50%;animation:spin .8s linear infinite}.clear-button,.current-location-button{background:none;border:none;cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);font-size:.875rem;transition:background .15s;display:flex;align-items:center;justify-content:center;color:var(--gray-500)}.clear-button:hover,.current-location-button:hover{background:var(--gray-100)}.current-location-button:disabled{opacity:.4;cursor:not-allowed}.error-message{margin-top:.5rem;padding:.5rem .75rem;background:var(--error-50);border:1px solid var(--error-200);border-radius:var(--radius-md);color:var(--error-600);font-size:.75rem}.error-message.label-with-icon{display:flex;align-items:flex-start;gap:.375rem}.search-result-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;cursor:pointer;transition:background .1s;border-bottom:1px solid var(--gray-100)}.search-result-item:hover{background:var(--gray-50)}.search-result-item:last-child{border-bottom:none}.result-icon{display:flex;align-items:center;justify-content:center;width:20px;flex-shrink:0;color:var(--gray-500)}.result-content{flex:1 1;min-width:0}.result-name{font-weight:500;font-size:.8125rem;color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-coordinates{font-size:.6875rem;color:var(--gray-400);font-family:monospace}.result-type{font-size:.75rem;color:var(--gray-500)}.category-badge{background:var(--primary-500);color:#fff;font-size:.625rem;padding:.125rem .375rem;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:var(--z-modals);padding:1rem;animation:fadeIn .15s ease}.modal-content{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--gray-200)}.modal-header h2{margin:0;font-size:1rem;font-weight:600}.close-button{background:none;border:none;color:var(--gray-500);font-size:1.125rem;cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background .15s}.close-button:hover{background:var(--gray-100)}.marker-manager-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlays);padding:1rem}.marker-manager-modal{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:720px;width:100%;max-height:90vh;display:flex;flex-direction:column;animation:modalSlideIn .2s ease}.manager-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--gray-200)}.manager-header h2{margin:0;font-size:1rem;font-weight:600}.manager-content{padding:1.25rem;overflow-y:auto;flex:1 1}.manager-controls{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.search-section{display:flex;gap:.5rem;align-items:center}.sort-controls{display:flex;gap:.25rem}.sort-select{background:#fff}.sort-order-button,.sort-select{padding:.375rem .5rem;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:.75rem}.sort-order-button{background:var(--gray-100);cursor:pointer}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.export-button,.import-button{padding:.5rem .75rem;border-radius:var(--radius-md);font-weight:500;font-size:.75rem;cursor:pointer;border:none;color:#fff}.import-button{background:var(--success-500)}.export-button{background:var(--info-500)}.markers-list{min-height:200px}.markers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:.75rem;gap:.75rem}.marker-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:.75rem;transition:border-color .15s}.marker-card:hover{border-color:var(--gray-300)}.marker-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.marker-title{display:flex;align-items:center;gap:.375rem;flex:1 1}.marker-color-indicator{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}.marker-title h3{margin:0;font-size:.8125rem;font-weight:600;color:var(--gray-900)}.marker-actions{display:flex;gap:.25rem}.delete-button,.edit-button,.locate-button{background:none;border:none;cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);font-size:.75rem;transition:background .1s}.locate-button:hover{background:var(--secondary-100)}.edit-button:hover{background:var(--primary-100)}.delete-button:hover{background:var(--error-50)}.marker-card-content{font-size:.75rem}.marker-notes{color:var(--gray-600);line-height:1.5;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.marker-meta{padding-top:.375rem;font-size:.6875rem}.manager-summary,.marker-meta{border-top:1px solid var(--gray-200);color:var(--gray-500)}.manager-summary{text-align:center;padding-top:.75rem;font-size:.75rem}.marker-form{padding:1.25rem}.marker-form .form-group{margin-bottom:1rem}.marker-form .form-group label{display:block;margin-bottom:.375rem;font-weight:500;color:var(--gray-700);font-size:.8125rem}.marker-form .form-group input,.marker-form .form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.8125rem;transition:border-color .15s}.marker-form .form-group input:focus,.marker-form .form-group textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 2px rgba(46,139,87,.1)}.location-display{background:var(--gray-50);padding:.5rem .75rem;border-radius:var(--radius-md);font-family:monospace;font-size:.75rem;color:var(--gray-600);border:1px solid var(--gray-200)}.color-picker{display:flex;gap:.375rem;flex-wrap:wrap}.color-option{width:28px;height:28px;border:2px solid transparent;border-radius:50%;cursor:pointer;transition:transform .1s}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:var(--gray-800)}.character-count{text-align:right;font-size:.6875rem;color:var(--gray-400);margin-top:.25rem}.upload-button{background:var(--primary-500);color:#fff;border:none;padding:.5rem .75rem;border-radius:var(--radius-md);cursor:pointer;font-size:.75rem;font-weight:500}.upload-button:hover:not(:disabled){background:var(--primary-600)}.upload-button:disabled{opacity:.4;cursor:not-allowed}.image-preview{display:flex;gap:.375rem;flex-wrap:wrap;margin-top:.5rem}.image-preview-item{position:relative;width:60px;height:60px}.image-preview-item img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--gray-200)}.remove-image{position:absolute;top:-6px;right:-6px;background:var(--error-500);color:#fff;border:none;border-radius:50%;width:18px;height:18px;cursor:pointer;font-size:.625rem;display:flex;align-items:center;justify-content:center}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--gray-200)}.cancel-button{background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-200);border-radius:var(--radius-md)}.cancel-button,.save-button{padding:.5rem .75rem;cursor:pointer;font-size:.8125rem;font-weight:500}.save-button{background:var(--primary-500);color:#fff;border:none;border-radius:var(--radius-md);min-width:100px}.save-button:hover:not(:disabled){background:var(--primary-600)}.save-button:disabled{opacity:.4;cursor:not-allowed}.add-marker-instruction{position:absolute;top:1rem;left:50%;transform:translateX(-50%);background:#fff;color:var(--gray-800);padding:.625rem 1rem;border-radius:var(--radius-lg);z-index:1000;display:flex;align-items:center;gap:.5rem;box-shadow:var(--shadow-lg);border:1px solid var(--gray-200);font-size:.8125rem;font-weight:500;animation:fadeIn .2s ease}.cancel-instruction{background:var(--gray-200);color:var(--gray-700);border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem}.cancel-instruction:hover{background:var(--gray-300)}.current-location-marker{position:relative;width:20px;height:20px;pointer-events:none}.current-location-pulse{width:32px;height:32px;background:rgba(59,130,246,.25);animation:pulse 2s infinite}.current-location-dot,.current-location-pulse{position:absolute;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.current-location-dot{width:10px;height:10px;background:var(--info-500);border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.2);z-index:10}@media (max-width:768px){.desktop-only{display:none}}.fossil-detail-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:var(--z-modals);padding:1rem;animation:fadeIn .15s ease}.fossil-detail-modal{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:720px;width:100%;max-height:90vh;position:relative;overflow:hidden;animation:modalSlideIn .2s ease}.fossil-detail-close{position:absolute;top:.75rem;right:.75rem;background:hsla(0,0%,100%,.92);border:none;border-radius:50%;width:36px;height:36px;font-size:1.25rem;cursor:pointer;color:var(--gray-600);z-index:10;display:flex;align-items:center;justify-content:center;transition:background .15s;line-height:1;box-shadow:var(--shadow-sm)}.fossil-detail-close:hover{background:var(--gray-200);color:var(--gray-900)}.fossil-detail-scroll{max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.fossil-detail-hero{width:100%;aspect-ratio:16/9;background:var(--gray-100);overflow:hidden}.fossil-detail-hero .fossil-img{width:100%;height:100%;border-radius:0}.fossil-detail-header{padding:1.5rem 1.5rem 1rem}.fossil-detail-name{font-size:1.375rem;font-weight:700;color:var(--gray-900);margin:0 2.5rem 0 0;line-height:1.3}.fossil-detail-sci-name{font-size:.875rem}.fossil-detail-authority,.fossil-detail-sci-name{font-style:italic;color:var(--gray-500);margin:.25rem 0 0}.fossil-detail-authority{font-size:.8125rem}.fossil-detail-common{font-size:.8125rem;color:var(--gray-600);margin:.2rem 0 0;font-weight:500}.fossil-detail-badges{display:flex;gap:.375rem;flex-wrap:wrap;margin-top:.75rem}.fossil-detail-period-badge{color:#fff}.fossil-detail-period-badge,.fossil-detail-type-badge{display:inline-flex;padding:.25rem .625rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.fossil-detail-type-badge{background:var(--gray-100);color:var(--gray-600)}.fossil-detail-status-badge{display:inline-flex;padding:.25rem .625rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.fossil-detail-status-badge.extinct{background:#fef2f2;color:#b91c1c}.fossil-detail-status-badge.extant{background:#ecfdf5;color:#047857}.fossil-detail-verified-badge{display:inline-flex;padding:.25rem .625rem;border-radius:999px;background:var(--success-50);color:#059669;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.fossil-detail-loading{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;border-top:1px solid var(--gray-100);font-size:.75rem;color:var(--gray-500)}.fossil-detail-loading-bar{width:16px;height:16px;border-radius:50%;border:2px solid var(--gray-200);border-top-color:var(--primary-500);animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(1turn)}}.fossil-detail-error{margin:.75rem 1.5rem;padding:.625rem .75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:#b91c1c;font-size:.75rem}.fossil-detail-wiki{padding:.875rem 1.5rem;border-top:1px solid var(--gray-100);background:linear-gradient(180deg,#f8fafc,#fff)}.fossil-detail-wiki p{margin:0;font-size:.875rem;color:var(--gray-700);line-height:1.55}.fossil-detail-wiki-link{display:inline-block;margin-top:.5rem;font-size:.75rem;font-weight:600;color:#0284c7;text-decoration:none}.fossil-detail-wiki-link:hover{text-decoration:underline}.detail-note{margin-top:.5rem;padding:.5rem .625rem;background:var(--gray-50);border-radius:var(--radius-md);font-size:.75rem;color:var(--gray-600);line-height:1.45}.fossil-detail-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;padding:.875rem 1.5rem;border-top:1px solid var(--gray-100)}.fossil-detail-links a{font-size:.75rem;font-weight:600;color:#0284c7;text-decoration:none}.fossil-detail-links a:hover{text-decoration:underline}.fossil-detail-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0;gap:0}@media (max-width:560px){.fossil-detail-grid{grid-template-columns:1fr}}.fossil-detail-section{padding:1rem 1.5rem;border-top:1px solid var(--gray-100)}.fossil-detail-section-title{display:flex;align-items:center;gap:.375rem;font-size:.6875rem;font-weight:600;color:var(--gray-400);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .625rem}.label-with-icon{display:inline-flex;align-items:center;gap:.375rem}.label-with-icon svg{flex-shrink:0}.fossil-detail-period-bar{padding:.375rem .75rem;color:#fff;border-radius:var(--radius-md);font-weight:600;text-align:center;font-size:.8125rem;margin-bottom:.625rem}.fossil-detail-rows{display:flex;flex-direction:column}.detail-row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.3125rem 0;font-size:.8125rem}.detail-row:not(:last-child){border-bottom:1px solid var(--gray-100)}.detail-label{color:var(--gray-500);font-weight:500;flex-shrink:0}.detail-value{color:var(--gray-800);text-align:right;word-break:break-word}.detail-mono{font-family:ui-monospace,SFMono-Regular,SF Mono,monospace;font-size:.75rem}.fossil-detail-description{padding:.75rem 1.5rem;border-top:1px solid var(--gray-100)}.fossil-detail-description p{margin:0;font-size:.8125rem;color:var(--gray-600);line-height:1.6}.fossil-detail-source{padding:.75rem 1.5rem;border-top:1px solid var(--gray-100);font-size:.6875rem;color:var(--gray-400);text-align:center}.tl-container{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--gray-200);overflow:hidden}.tl-header{padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--gray-200)}.tl-title{font-size:1.125rem;font-weight:700;color:var(--gray-900);margin:0}.tl-subtitle{font-size:.8125rem;color:var(--gray-500);margin:.25rem 0 0}.tl-scale-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.75rem .75rem .5rem}.tl-band-row{display:flex;gap:2px;min-width:1100px;margin-bottom:2px}.tl-band{display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.35)}.tl-band span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 .25rem}.tl-eon-band{height:22px;font-size:.625rem;letter-spacing:.04em;text-transform:uppercase;border-radius:4px 4px 0 0}.tl-era-band{height:20px;font-size:.5625rem;color:#1e293b;text-shadow:none;opacity:.92}.tl-chart{gap:2px;padding:.75rem 0 .35rem;align-items:flex-end;min-height:220px}.tl-axis,.tl-chart{display:flex;min-width:1100px}.tl-axis{justify-content:space-between;padding:.35rem .15rem .15rem;font-size:.5625rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--gray-400)}.tl-bar-col{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.25rem;background:none;border:none;padding:0;cursor:pointer;min-width:0;transition:opacity .15s}.tl-bar-col.tl-precambrian .tl-bar-label{font-size:.5rem}.tl-bar-col:hover{opacity:.85}.tl-bar-col.active{opacity:1}.tl-bar-count{font-size:.625rem;font-weight:700;color:var(--gray-600);min-height:1rem}.tl-bar-track{height:140px;display:flex;align-items:flex-end;overflow:hidden}.tl-bar-fill,.tl-bar-track{width:100%;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.tl-bar-fill{transition:height .4s ease;min-height:4px}.tl-bar-col:hover .tl-bar-fill{filter:brightness(1.1)}.tl-bar-col.active .tl-bar-fill{box-shadow:0 0 0 2px var(--gray-900)}.tl-bar-label{font-size:.5625rem;font-weight:600;color:var(--gray-700);text-align:center;line-height:1.2;word-break:break-word}.tl-bar-age{font-size:.5rem;color:var(--gray-400);white-space:nowrap}@media (max-width:640px){.tl-bar-label{font-size:.5rem}.tl-bar-age{display:none}.tl-bar-count{font-size:.5rem}.tl-chart{padding:1rem .5rem .5rem}}.tl-detail{margin:0 1rem 1rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--gray-200);animation:fadeIn .2s ease}.tl-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.tl-detail-title{font-size:1rem;font-weight:700;margin:0}.tl-detail-meta{font-size:.75rem;color:var(--gray-500);margin:.125rem 0 0}.tl-detail-close{background:none;border:none;font-size:1.25rem;color:var(--gray-400);cursor:pointer;padding:0;line-height:1}.tl-detail-close:hover{color:var(--gray-700)}.tl-detail-desc{font-size:.8125rem;color:var(--gray-600);line-height:1.5;margin:0 0 .75rem}.tl-detail-grid{display:flex;flex-wrap:wrap;gap:.3125rem;max-height:200px;overflow-y:auto}.tl-fossil-chip{display:inline-flex;flex-direction:row;align-items:center;gap:.5rem;padding:.25rem .5rem .25rem .25rem;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s,background .15s;text-align:left;max-width:220px}.tl-fossil-chip:hover{border-color:var(--primary-300);background:var(--primary-50)}.tl-fossil-thumb{width:36px;height:36px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--gray-100)}.tl-fossil-thumb .fossil-img{width:100%;height:100%;border-radius:0}.tl-fossil-text{display:flex;flex-direction:column;min-width:0}.tl-fossil-name{font-size:.6875rem;font-weight:600;color:var(--gray-800);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-fossil-age{font-size:.5625rem;color:var(--gray-400)}.tl-fossil-more{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.6875rem;color:var(--gray-500);font-style:italic}.tl-legend{display:flex;justify-content:center;gap:1.5rem;padding:.75rem 1rem;border-top:1px solid var(--gray-100)}.tl-legend-item{font-size:.6875rem;color:var(--gray-400)}.ai-toggle-btn{position:fixed;bottom:5.5rem;right:1.25rem;width:48px;height:48px;border-radius:50%;background:var(--primary-500);color:#fff;border:none;font-size:.875rem;font-weight:700;cursor:pointer;box-shadow:0 4px 12px rgba(46,139,87,.35);z-index:900;transition:background .15s,transform .15s;display:flex;align-items:center;justify-content:center}.ai-toggle-btn:hover{background:var(--primary-600);transform:scale(1.05)}.ai-toggle-btn.open{background:var(--gray-600);font-size:1.25rem;font-weight:400}.ai-panel{position:fixed;bottom:8.5rem;right:1.25rem;width:380px;max-height:min(600px,calc(100vh - 6rem));background:#fff;border-radius:var(--radius-xl);box-shadow:0 8px 30px rgba(0,0,0,.15);border:1px solid var(--gray-200);z-index:900;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideIn .2s ease}@media (max-width:480px){.ai-panel{width:calc(100vw - 1rem);right:.5rem;bottom:4rem;max-height:calc(100vh - 5rem)}}.ai-panel-header{display:flex;justify-content:space-between;align-items:flex-start;padding:.875rem 1rem;border-bottom:1px solid var(--gray-200);background:var(--gray-50);flex-shrink:0}.ai-panel-title{margin:0;font-size:.875rem;font-weight:700;color:var(--gray-900)}.ai-panel-subtitle{margin:.125rem 0 0;font-size:.6875rem;color:var(--gray-500)}.ai-panel-close{background:none;border:none;font-size:1.25rem;color:var(--gray-400);cursor:pointer;padding:0;line-height:1}.ai-panel-close:hover{color:var(--gray-700)}.ai-panel-messages{flex:1 1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.625rem;-webkit-overflow-scrolling:touch}.ai-welcome{padding:.5rem 0}.ai-welcome-text{font-size:.8125rem;color:var(--gray-600);margin:0 0 .75rem;line-height:1.5}.ai-suggestions{display:flex;flex-wrap:wrap;gap:.375rem}.ai-suggestion-btn{padding:.3125rem .625rem;background:var(--gray-100);border:1px solid var(--gray-200);border-radius:999px;font-size:.6875rem;color:var(--gray-700);cursor:pointer;transition:all .15s}.ai-suggestion-btn:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-700)}.ai-stats-note{margin:.75rem 0 0;font-size:.625rem;color:var(--gray-400)}.ai-message{display:flex;flex-direction:column}.ai-message-user{align-items:flex-end}.ai-message-assistant{align-items:flex-start}.ai-message-bubble{max-width:88%;padding:.5rem .75rem;border-radius:var(--radius-lg);font-size:.8125rem;line-height:1.55;word-break:break-word}.ai-message-bubble p{margin:0}.ai-message-bubble p+p{margin-top:.375rem}.ai-empty-line{height:.375rem}.ai-message-user .ai-message-bubble{background:var(--primary-500);color:#fff;border-bottom-right-radius:var(--radius-sm)}.ai-message-assistant .ai-message-bubble{background:var(--gray-100);color:var(--gray-800);border-bottom-left-radius:var(--radius-sm)}.ai-commands-executed{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.375rem}.ai-command-chip{display:inline-flex;padding:.125rem .5rem;background:var(--secondary-100);color:var(--secondary-700);border-radius:999px;font-size:.625rem;font-weight:500}.ai-typing{display:flex;gap:.25rem;padding:.75rem 1rem}.ai-typing span{width:6px;height:6px;border-radius:50%;background:var(--gray-400);animation:typingDot 1.2s infinite}.ai-typing span:nth-child(2){animation-delay:.2s}.ai-typing span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.ai-error{padding:.5rem .75rem;background:var(--error-50);color:var(--error-600);border-radius:var(--radius-md);font-size:.75rem;border:1px solid var(--error-200)}.ai-panel-input{display:flex;gap:.375rem;padding:.625rem .75rem;border-top:1px solid var(--gray-200);background:#fff;flex-shrink:0}.ai-input{flex:1 1;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.8125rem;outline:none;transition:border-color .15s}.ai-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 2px rgba(46,139,87,.1)}.ai-input:disabled{background:var(--gray-50)}.ai-send-btn{padding:.5rem .875rem;background:var(--primary-500);color:#fff;border:none;border-radius:var(--radius-md);font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap}.ai-send-btn:hover:not(:disabled){background:var(--primary-600)}.ai-send-btn:disabled{opacity:.5;cursor:not-allowed}.fossil-img{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(145deg,#f1f5f9,#e2e8f0);color:var(--gray-400)}.fossil-img img{object-fit:cover;display:block}.fossil-img img,.fossil-img-hero,.fossil-img-lg,.fossil-img-md,.fossil-img-sm{width:100%;height:100%}.fossil-img-placeholder{min-height:100%}.fossil-img-skeleton{width:100%;height:100%;min-height:72px;background:linear-gradient(90deg,#e2e8f0 25%,#f8fafc 50%,#e2e8f0 75%);background-size:200% 100%;animation:fossilImgShimmer 1.2s ease-in-out infinite}@keyframes fossilImgShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.fossil-img-credit{position:absolute;left:0;right:0;bottom:0;padding:.35rem .6rem;font-size:.625rem;color:hsla(0,0%,100%,.9);background:linear-gradient(transparent,rgba(15,23,42,.7));pointer-events:none}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.learn-section{max-width:920px;margin:0 auto;padding-bottom:1rem}.learn-hub{display:flex;flex-direction:column;gap:1.25rem}.learn-hero{padding:1.25rem 1.35rem;border-radius:var(--radius-xl);background:radial-gradient(ellipse 80% 120% at 10% 0,rgba(46,139,87,.14),transparent 55%),radial-gradient(ellipse 60% 100% at 90% 20%,rgba(14,165,233,.1),transparent 50%),linear-gradient(165deg,#f8fafc,#eef6f1);border:1px solid var(--gray-200)}.learn-hero h2{margin:0;font-size:1.5rem;font-weight:750;color:var(--gray-900);letter-spacing:-.02em}.learn-hero p:last-child{margin:.5rem 0 0;max-width:40rem;font-size:.9375rem;line-height:1.55;color:var(--gray-600)}.learn-filters{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.15rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.learn-filters::-webkit-scrollbar{display:none}.learn-filter{flex-shrink:0;display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--gray-200);background:#fff;color:var(--gray-600);border-radius:999px;padding:.4rem .75rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.learn-filter:hover{border-color:var(--gray-300);color:var(--gray-800)}.learn-filter.active{background:color-mix(in srgb,var(--learn-accent,var(--primary-500)) 14%,#fff);border-color:color-mix(in srgb,var(--learn-accent,var(--primary-500)) 45%,#fff);color:var(--gray-900)}.learn-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem}.learn-category-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;text-align:left;padding:1rem;border-radius:var(--radius-xl);border:1px solid var(--gray-200);background:radial-gradient(ellipse 90% 80% at 100% 0,color-mix(in srgb,var(--learn-accent) 16%,#fff),#fff 55%);overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.learn-category-card:hover{border-color:color-mix(in srgb,var(--learn-accent) 40%,var(--gray-200));box-shadow:var(--shadow-md);transform:translateY(-1px)}.learn-category-watermark{position:absolute;right:-.35rem;bottom:-.5rem;color:var(--learn-accent);opacity:.18;pointer-events:none;line-height:0}.learn-category-count,.learn-category-desc,.learn-category-title{position:relative;z-index:1}.learn-category-title{font-size:.9375rem;font-weight:700;color:var(--gray-900)}.learn-category-desc{font-size:.75rem;line-height:1.45;color:var(--gray-500)}.learn-category-count{margin-top:.25rem;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--learn-accent)}.learn-lesson-list{display:flex;flex-direction:column;gap:.625rem}.learn-lesson-card{display:flex;flex-direction:column;gap:.25rem;width:100%;text-align:left;padding:.9rem 1rem;border:1px solid var(--gray-200);border-radius:var(--radius-xl);background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}.learn-lesson-card:hover{border-color:var(--gray-300);box-shadow:var(--shadow-sm)}.learn-lesson-top{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem}.learn-lesson-time{flex-shrink:0;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--gray-400)}.learn-lesson-title{font-size:1rem;font-weight:700;color:var(--gray-900)}.learn-lesson-summary{font-size:.8125rem;line-height:1.45;color:var(--gray-500)}.learn-reader{display:flex;flex-direction:column;gap:1.25rem;padding:.25rem 0 1rem}.learn-back{align-self:flex-start;display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--gray-200);background:#fff;color:var(--gray-600);border-radius:999px;padding:.35rem .75rem;font-size:.75rem;font-weight:600;cursor:pointer}.learn-back:hover{color:var(--gray-900);border-color:var(--gray-300)}.learn-reader-header{padding:1.25rem 1.35rem;border-radius:var(--radius-xl);background:linear-gradient(165deg,#f8fafc,#eef6f1);border:1px solid var(--gray-200)}.learn-reader-header h2{margin:0;font-size:1.5rem;font-weight:750;letter-spacing:-.02em;color:var(--gray-900)}.learn-reader-summary{margin:.5rem 0 0;font-size:1rem;line-height:1.5;color:var(--gray-600)}.learn-reader-meta{margin:.65rem 0 0;font-size:.75rem;font-weight:600;color:var(--gray-400)}.learn-reader-body{display:flex;flex-direction:column;gap:1rem}.learn-section{padding:1rem 1.15rem;border-radius:var(--radius-xl);background:#fff;border:1px solid var(--gray-200)}.learn-section h3{margin:0 0 .4rem;font-size:1rem;color:var(--gray-900)}.learn-section p{margin:0;font-size:.9375rem;line-height:1.6;color:var(--gray-600)}.learn-related,.learn-terms{padding:1rem 1.15rem;border-radius:var(--radius-xl);background:var(--gray-50);border:1px solid var(--gray-200)}.learn-related h4,.learn-terms h4{margin:0 0 .5rem;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gray-500)}.learn-terms ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}.learn-terms li{padding:.3rem .6rem;border-radius:999px;background:#fff;border:1px solid var(--gray-200);font-size:.75rem;font-weight:600;color:var(--gray-700)}.learn-related-list{display:flex;flex-direction:column;gap:.4rem}.learn-related-btn{text-align:left;border:1px solid var(--gray-200);background:#fff;border-radius:var(--radius-lg);padding:.65rem .85rem;font-size:.875rem;font-weight:600;color:var(--gray-800);cursor:pointer}.learn-related-btn:hover{border-color:var(--primary-300);color:var(--primary-700)}@media (max-width:640px){.learn-hero h2,.learn-reader-header h2{font-size:1.25rem}.learn-category-grid{grid-template-columns:1fr 1fr}}.notes-section{max-width:920px;margin:0 auto;padding-bottom:1rem}.notes-hub,.notes-reader{display:flex;flex-direction:column;gap:1rem}.notes-hero{padding:1.25rem 1.35rem;border-radius:var(--radius-xl);background:radial-gradient(ellipse 80% 120% at 10% 0,rgba(176,128,90,.18),transparent 55%),linear-gradient(165deg,#fbf6ec,#f0e4cf);border:1px solid rgba(107,74,40,.18)}.field-note-eyebrow{margin:0 0 .35rem;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8b5e3c}.notes-hero h2{margin:0;font-size:1.5rem;font-weight:750;color:#3b2c1a;letter-spacing:-.02em}.notes-hero>p{margin:.5rem 0 0;max-width:40rem;font-size:.9375rem;line-height:1.55;color:#6b5a45}.notes-hero-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.notes-import-label{cursor:pointer}.notes-toolbar{flex-wrap:wrap}.notes-search,.notes-toolbar{display:flex;gap:.5rem;align-items:center}.notes-search{flex:1 1;min-width:180px;padding:.45rem .75rem;background:linear-gradient(180deg,#f7efdf,#efe3cd);border:1px solid rgba(107,74,40,.22);border-radius:var(--radius-md);color:#6b5a45}.notes-search input{flex:1 1;border:none;background:transparent;outline:none;font-size:.875rem;color:#3b2c1a}.notes-sort{max-width:11rem}.notes-filter-chips{display:flex;gap:.35rem}.notes-filter{border:1px solid rgba(107,74,40,.2);background:#fbf6ec;color:#6b5a45;border-radius:999px;padding:.35rem .7rem;font-size:.75rem;font-weight:600;cursor:pointer}.notes-filter.active{background:rgba(196,92,38,.14);border-color:#c45c26;color:#3b2c1a}.notes-count{margin:0;font-size:.75rem;font-weight:600;color:#8b7355}.notes-list{display:flex;flex-direction:column;gap:.625rem}.notes-card{display:flex;width:100%;text-align:left;padding:0;border:1px solid rgba(107,74,40,.18);border-radius:var(--radius-xl);background:linear-gradient(180deg,#fdfaf3,#f5eddd);overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s}.notes-card:hover{border-color:#c9a86a;box-shadow:0 6px 16px rgba(26,18,10,.14)}.notes-card-accent{width:5px;flex-shrink:0}.notes-card-main{display:flex;flex-direction:column;gap:.35rem;padding:.9rem 1rem;min-width:0;flex:1 1}.notes-card-top{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.notes-card-title{font-size:1rem;font-weight:700;color:#3b2c1a}.notes-card-badge{flex-shrink:0;display:inline-flex;align-items:center;gap:.25rem;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.2rem .45rem;border-radius:999px;background:rgba(107,74,40,.1);color:#6b5a45}.notes-card-badge.pinned{background:rgba(46,139,87,.14);color:#1e6b42}.notes-card-meta{display:flex;flex-wrap:wrap;gap:.5rem .85rem;font-size:.75rem;color:#6b5a45}.notes-card-meta span{display:inline-flex;align-items:center;gap:.25rem}.notes-card-snippet{font-size:.8125rem;line-height:1.45;color:#64748b}.notes-card-tags{display:flex;flex-wrap:wrap;gap:.3rem}.notes-card-tags span,.notes-tag{font-size:.6875rem;font-weight:600;padding:.2rem .5rem;border-radius:999px;background:hsla(39,47%,60%,.22);color:#5a4024}.notes-empty{text-align:center;padding:2.5rem 1rem;border:1px dashed rgba(107,74,40,.25);border-radius:var(--radius-xl);background:hsla(40,65%,95%,.7);color:#6b5a45;display:flex;flex-direction:column;align-items:center;gap:.5rem}.notes-empty h3{margin:.25rem 0 0;color:#3b2c1a}.notes-empty p{max-width:24rem;margin:0 0 .5rem;font-size:.875rem;line-height:1.5}.notes-back{align-self:flex-start;display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(107,74,40,.2);background:#fbf6ec;color:#6b5a45;border-radius:999px;padding:.35rem .75rem;font-size:.75rem;font-weight:600;cursor:pointer}.notes-reader-header{padding:1.15rem 1.25rem;border-radius:var(--radius-xl);background:linear-gradient(165deg,#fbf6ec,#f0e4cf);border:1px solid rgba(107,74,40,.18);display:flex;flex-direction:column;gap:.85rem}.notes-reader-top{display:flex;gap:.75rem;align-items:flex-start}.notes-pin-dot{width:12px;height:12px;border-radius:50%;margin-top:.45rem;flex-shrink:0;box-shadow:0 0 0 2px hsla(0,0%,100%,.7)}.notes-reader-header h2{margin:0;font-size:1.35rem;color:#3b2c1a}.notes-reader-meta{margin:.3rem 0 0;font-size:.8125rem;color:#6b5a45}.notes-reader-actions{display:flex;flex-wrap:wrap;gap:.4rem}.notes-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.5rem;gap:.5rem}.notes-fact{padding:.7rem .85rem;border-radius:var(--radius-lg);background:#f7efdf;border:1px solid rgba(107,74,40,.14)}.notes-fact span{display:block;font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8b7355;margin-bottom:.2rem}.notes-fact strong{font-size:.875rem;color:#3b2c1a;font-weight:650}.notes-body-card{padding:1rem 1.15rem;border-radius:var(--radius-xl);background:#fdfaf3;border:1px solid rgba(107,74,40,.16)}.notes-body-card h3{margin:0 0 .45rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#8b7355}.notes-body-card p{margin:0;white-space:pre-wrap;font-size:.9375rem;line-height:1.6;color:#3b2c1a}.notes-tags{display:flex;flex-wrap:wrap;gap:.35rem}.notes-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:.5rem;gap:.5rem}.notes-photo{border:none;padding:0;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:1;cursor:pointer;background:#e7dcc6}.notes-photo img{width:100%;height:100%;object-fit:cover}.field-note-modal{max-width:560px;max-height:min(92vh,820px);overflow:auto}.field-note-modal .modal-header h2{margin:0;font-size:1.15rem}.field-note-row{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:.75rem;gap:.75rem}.field-note-row.three{grid-template-columns:repeat(3,1fr)}.field-note-location{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap}.field-note-location.muted{color:#8b7355;font-size:.8125rem}.field-note-location-hint{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#2e8b57}.field-note-popup h4{display:flex;align-items:center;gap:.35rem;margin:0}.field-note-popup-locality,.field-note-popup-meta{margin:0 0 .35rem!important;font-size:.75rem!important;color:#64748b!important}@media (max-width:640px){.field-note-row,.field-note-row.three{grid-template-columns:1fr}.notes-hero h2{font-size:1.25rem}}@media print{.ai-toggle-btn,.map-content,.tab-bar,button{display:none!important}body{background:#fff!important}.app-shell{padding-bottom:0!important}.card{box-shadow:none!important;border:1px solid #ddd!important}}