*{box-sizing:border-box;margin:0;padding:0;scroll-padding-top:2rem}html{scroll-behavior:auto;scrollbar-gutter:stable}html.is-gallery-settling{overflow-y:scroll}body{color:#333;background-color:#a8a8a8;font-family:Helvetica Neue,Arial,sans-serif;line-height:1.6;overflow-x:hidden}:root{--gutter:2rem;--rail-w:60px;--rail-center:calc(var(--gutter) + var(--rail-w) / 2);--rail-reserve:calc(var(--gutter) * 2 + var(--rail-w));--grid-pad:1.1rem;--gallery-top:.45rem;--rail-top:calc(var(--header-h) + var(--gallery-top) + var(--grid-pad));--ctl:30px;--ctl-sm:24px;--ctl-lg:40px;--chrome-top:2rem;--header-h:4.4rem;--dur-fast:.14s;--dur-mid:.22s;--dur-slow:.32s;--ease:cubic-bezier(.22, .8, .24, 1)}@media (width<=768px){:root{--gutter:1.25rem;--chrome-top:1.5rem;--header-h:3.55rem;--grid-pad:.7rem;--gallery-top:.25rem}}body.exposure--1{--ink:#fff;--ink-dim:#ccc;--ink-soft:#999;--line:#666;--surface:#0c0c0cbd;--surface-solid:#0b0b0b;--on-ink:#0b0b0b}body.exposure-0{--ink:#333;--ink-dim:#666;--ink-soft:gray;--line:#999;--surface:#ecececb3;--surface-solid:#cfcfcf;--on-ink:#f2f2f2}body.exposure-1{--ink:#000;--ink-dim:#666;--ink-soft:#888;--line:#ddd;--surface:#ffffffc7;--surface-solid:#f7f7f7;--on-ink:#fff}.header{color:var(--ink,#333);height:var(--header-h);text-align:center;z-index:2;background-color:#0000;position:relative}.header h1{top:var(--chrome-top);height:var(--ctl);letter-spacing:.16em;white-space:nowrap;align-items:center;font-family:Cormorant Garamond,Times New Roman,serif;font-size:1.55rem;font-weight:400;display:flex;position:absolute;left:50%;transform:translate(-50%)}.rail{top:var(--chrome-top);width:var(--rail-w);flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute}.rail-left{left:var(--gutter)}.rail-right{right:var(--gutter)}.chrome-btn{color:var(--ink-dim,#666);border:1px solid var(--line,#999);width:var(--ctl);height:var(--ctl);cursor:pointer;transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.chrome-btn:hover{color:var(--ink,#333);border-color:var(--ink,#333);transform:scale(1.06)}.chrome-btn:focus-visible{outline:1px solid var(--ink,#333);outline-offset:3px}.chrome-btn.is-active{color:var(--ink,#111);border-color:var(--ink,#333)}body.exposure--1{color:#fff;background-color:#000}body.exposure-0{color:#333;background-color:#a8a8a8}body.exposure-1{color:#000;background-color:#fff}.header{background-color:#0000}.upload-btn,.close-btn,.nav-btn{color:var(--ink-dim,#666);border-color:var(--line,#999)}.upload-btn:hover,.close-btn:hover,.nav-btn:hover{color:var(--ink,#000);border-color:var(--ink,#000)}body.exposure--1 .modal{background:#000000fa}body.exposure-0 .modal{background:#a8a8a8fa}body.exposure-1 .modal{background:#fffffffa}body.exposure--1 .timeline-sidebar{border-right-color:#ffffff1a}body.exposure--1 .timeline-line{background:#ffffff1a}body.exposure--1 .timeline-year{color:#999}body.exposure--1 .timeline-month{color:#666}body.exposure--1 .timeline-month:hover,body.exposure--1 .timeline-month.active{color:#fff}body.exposure-0 .timeline-sidebar{border-right-color:#00000014}body.exposure-0 .timeline-line{background:#00000014}body.exposure-0 .timeline-year{color:#666}body.exposure-0 .timeline-month{color:#999}body.exposure-0 .timeline-month:hover,body.exposure-0 .timeline-month.active{color:#333}body.exposure-1 .timeline-sidebar{border-right-color:#0000000f}body.exposure-1 .timeline-line{background:#0000000f}body.exposure-1 .timeline-year{color:#555}body.exposure-1 .timeline-month{color:#888}body.exposure-1 .timeline-month:hover,body.exposure-1 .timeline-month.active{color:#000}.upload-btn{color:#666;cursor:pointer;background:0 0;border:1px solid #999;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;text-decoration:none;transition:all .3s;display:flex}.upload-btn:hover{color:#333;border-color:#333;transform:scale(1.05)}body.view-random .timeline-sidebar:not(.is-animated){display:none!important}.main-content{max-width:1400px;padding:var(--gallery-top) var(--gutter) var(--gutter);z-index:2;margin:0 auto;position:relative}@media (width>=769px){.main-content{transition:padding var(--dur-slow) var(--ease)}body.has-timeline .main-content{padding-left:var(--rail-reserve);padding-right:var(--rail-reserve)}}.loading{text-align:center;color:#666;padding:3rem}.spinner{border:2px solid #ccc;border-top-color:#666;border-radius:50%;width:30px;height:30px;margin:0 auto 1rem;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scroll-loading{text-align:center;opacity:0;margin:2rem 0;padding:2rem;transition:all .3s;transform:translateY(20px)}.scroll-loading:not(.hidden){opacity:1;transform:translateY(0)}.scroll-loading-content{flex-direction:column;align-items:center;gap:1rem;display:flex}.scroll-spinner{border:2px solid #ccc;border-top-color:#666;border-radius:50%;width:24px;height:24px;animation:1s linear infinite spin}.scroll-loading p{color:#666;letter-spacing:.05em;margin:0;font-size:.9rem;font-weight:300}body.exposure--1 .scroll-spinner{border-color:#ccc #555 #555}body.exposure--1 .scroll-loading p{color:#ccc}body.exposure-0 .scroll-spinner{border-color:#666 #ccc #ccc}body.exposure-0 .scroll-loading p{color:#666}body.exposure-1 .scroll-spinner{border-color:#666 #f0f0f0 #f0f0f0}body.exposure-1 .scroll-loading p{color:#666}.gallery-container{padding:var(--grid-pad) 0;display:block}.gallery-container.is-refreshing .gallery-window{pointer-events:none}.gallery-window{align-items:stretch;display:grid}.gallery-window.is-masonry{display:block;position:relative}.gallery-window.is-masonry .gallery-item{aspect-ratio:auto;position:absolute}.gallery-window.is-masonry .gallery-item-image{object-fit:contain}.gallery-spacer{pointer-events:none;width:100%}.gallery-item{cursor:pointer;aspect-ratio:4/3;perspective:720px;contain:layout;background:#ffffff14;position:relative;overflow:hidden}.gallery-item:hover .gallery-item-image{will-change:transform;transform:scale(1.035)}.gallery-item-image{pointer-events:none;opacity:0;visibility:hidden;color:#0000;width:100%;height:100%;transition:opacity .18s ease-out, transform var(--dur-slow) var(--ease), filter var(--dur-mid) var(--ease);filter:grayscale(.1);object-fit:cover;object-position:center center;display:block}.gallery-item-image:not([src]){visibility:hidden;opacity:0}.gallery-window.is-morphing{transition:height var(--dur-slow) var(--ease)}.gallery-window.is-morphing .gallery-item{perspective:none;backface-visibility:hidden}.gallery-window.is-morphing .gallery-item.is-flying{transition:transform var(--dur-slow) var(--ease);will-change:transform;transform-origin:0 0}.gallery-window.is-morphing .gallery-item.is-boxing{transition:left var(--dur-slow) var(--ease), top var(--dur-slow) var(--ease), width var(--dur-slow) var(--ease), height var(--dur-slow) var(--ease)}.gallery-window.is-morph-invert,.gallery-window.is-morph-invert .gallery-item{transition:none}.gallery-window.is-morphing .gallery-item-image{opacity:1;visibility:visible;object-fit:cover;will-change:auto;transition:none;transform:none}.gallery-window.is-morphing .gallery-item:hover .gallery-item-image{transform:none}.gallery-item.loaded .gallery-item-image{opacity:1;visibility:visible}.gallery-item.instant .gallery-item-image{transition:none}.gallery-item:hover .gallery-item-image{filter:grayscale(0)}.gallery-item.flipboard-busy,.gallery-item.flipboard-busy:hover{pointer-events:none;will-change:transform;transform:none}.gallery-item.flipboard-busy .gallery-item-image{opacity:1;visibility:visible;transition:none}.flipboard-flap{transform-origin:50% 100%;backface-visibility:hidden;pointer-events:none;z-index:2;will-change:transform;position:absolute;inset:0;overflow:hidden}.flipboard-flap-image{object-fit:cover;object-position:center center;width:100%;height:100%;display:block}.gallery-item.flipboard-out .flipboard-flap{transform:rotateX(-90deg)}@media (prefers-reduced-motion:reduce){.gallery-item-image{transition:none}.gallery-item.flipboard-out .flipboard-flap{transition:none;transform:none}.modal-content.modal-layout-animating .modal-image-container,.modal-content.modal-layout-animating .modal-info,.modal-content.modal-layout-animating #modal-globe,.modal-content.modal-layout-animating #modal-image,.timeline-sidebar.is-animated,.main-content{transition:none}.gallery-window.is-morphing .gallery-item,.gallery-window.is-morphing .gallery-item.is-flying,.gallery-window.is-morphing .gallery-item.is-boxing,.gallery-item:hover .gallery-item-image{transition:none;transform:none}.globe-explorer,.globe-explorer-scene,.globe-pick-confirm{transition:none}.globe-explorer.is-exiting .globe-explorer-scene{filter:grayscale()contrast(1.05)brightness(.9);transform:none}.cm-hub,.cm-backdrop,.cm-ring{transition:none}.control-menu.collapsed:not(.is-docked) .cm-hub,.control-menu.collapsed:not(.is-docked) .cm-hub:after{animation:none}}.gallery-item-info{display:none}.timeline-sidebar{left:var(--gutter);top:var(--rail-top);width:var(--rail-w);z-index:50;-ms-overflow-style:none;scrollbar-width:none;opacity:1;padding-top:0;padding-bottom:2rem;position:fixed;bottom:0;overflow-y:auto;transform:translate(0)}.timeline-sidebar.is-animated{transition:transform var(--dur-slow) var(--ease), opacity .38s ease}.timeline-sidebar.is-offstage{opacity:0;pointer-events:none;transform:translate(calc(-100% - 20px))}.timeline-sidebar.timeline-popout{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid;padding-top:.65rem;padding-left:6px;padding-right:6px;box-shadow:0 10px 26px #0000002e}.timeline-sidebar::-webkit-scrollbar{display:none}.timeline-list{flex-direction:column;align-items:center;gap:0;padding:0 4px;display:flex;position:relative}.timeline-toggle-all-wrap{z-index:2;justify-content:center;width:100%;margin:2px 0;display:flex;position:relative}.timeline-toggle-all{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;width:16px;height:16px;padding:0;font-size:11px;line-height:1}.timeline-toggle-all:hover{opacity:1}.timeline-line{pointer-events:none;background:#00000014;width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-year{z-index:1;letter-spacing:.1em;text-align:center;color:#666;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 0 4px;font-family:Helvetica Neue,Arial,sans-serif;font-size:9px;font-weight:400;position:relative}.timeline-year-group{width:100%}.timeline-year-row{grid-template-columns:1fr 14px;align-items:center;width:100%;padding-right:1px;display:grid;position:relative}.timeline-year-row .timeline-year{grid-column:1/span 2;justify-self:center;width:auto;margin:0}.timeline-year-toggle{color:inherit;cursor:pointer;opacity:0;z-index:3;background:0 0;border:none;grid-column:2;justify-self:end;width:14px;height:14px;padding:0;font-size:9px;line-height:1;transition:opacity .2s;position:relative}.timeline-year-row:hover .timeline-year-toggle,.timeline-year-group.collapsed .timeline-year-row:hover .timeline-year-toggle{opacity:.9}.timeline-year-months{opacity:1;width:100%;max-height:320px;transition:max-height .28s,opacity .22s,transform .22s;overflow:hidden;transform:translateY(0)}.timeline-year-group.collapsed .timeline-year-months{opacity:0;pointer-events:none;max-height:0;transform:translateY(-4px)}.timeline-month{z-index:1;letter-spacing:.05em;text-align:center;color:#999;cursor:pointer;width:100%;padding:5px 0;font-family:Helvetica Neue,Arial,sans-serif;font-size:8px;font-weight:300;transition:color .3s;position:relative}.timeline-month:hover{color:#333}.timeline-month.active{color:#333;font-weight:500}.timeline-month.disabled{opacity:.28;cursor:not-allowed;pointer-events:none;text-decoration:none}.timeline-month.disabled:hover,.timeline-month.disabled.active{color:inherit;font-weight:300}.modal{z-index:1000;opacity:0;visibility:hidden;background:#a8a8a8fa;justify-content:center;align-items:center;width:100vw;height:100vh;transition:all .5s;display:flex;position:fixed;top:0;left:0}.modal.active{opacity:1;visibility:visible}.modal-content{background:0 0;flex-direction:row;justify-content:center;align-items:center;gap:2rem;width:100vw;height:100vh;padding:2rem;display:flex;position:relative}.close-btn{color:#333;cursor:pointer;z-index:1001;background:0 0;border:1px solid #666;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;transition:all .3s;display:flex;position:absolute;top:2rem;right:2rem}.close-btn:hover{background:#0000001a;border-color:#333}.modal-image-container{flex:1;justify-content:center;align-items:center;min-width:0;max-width:calc(100vw - 350px);height:100%;display:flex;position:relative}#modal-image{object-fit:contain;max-width:100%;max-height:90vh;transition:opacity .18s,transform .22s;display:block;transform:scale(.95)}#modal-image.is-placeholder{background:#00000012}.modal.active #modal-image{transform:scale(1)}.nav-btn{color:#333;cursor:pointer;z-index:1001;opacity:.7;background:0 0;border:1px solid #666;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin:.25rem;font-size:1rem;transition:all .3s;display:flex}.nav-btn:hover{opacity:1;background:#0000001a;border-color:#333;transform:scale(1.05)}.modal-nav-buttons{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.modal-info{width:300px;color:var(--ink,#333);flex-direction:column;flex-shrink:0;justify-content:center;gap:1.25rem;padding:2rem 0;display:flex;position:static}.modal-details{flex-direction:column;gap:1.25rem;min-width:0;display:flex}.modal-copy{flex-direction:column;gap:.55rem;min-width:0;display:flex}#modal-description{color:var(--ink,#333);letter-spacing:.03em;text-align:left;overflow-wrap:anywhere;max-width:100%;font-size:1.22rem;font-weight:300;line-height:1.35}#modal-description:empty{display:none}.modal-metadata{max-width:100%;color:var(--ink-dim,#666);flex-direction:column;align-items:flex-start;gap:.32rem;font-size:.78rem;line-height:1.35;display:flex}.metadata-item{text-align:left;overflow-wrap:anywhere;min-width:0;max-width:100%;line-height:1.35;display:block}.metadata-item:empty{display:none}.modal-camera-row{flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:.4rem;max-width:100%;line-height:1.35;display:flex}.modal-camera-row #modal-camera-name{text-align:left;overflow-wrap:anywhere;min-width:0;line-height:1.35}.modal-camera-icon-wrap{width:1em;height:1em;color:var(--ink-soft,#888);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.modal-camera-row.is-tlr .modal-camera-icon-wrap{margin-inline-start:-.22em}.modal-camera-svg{width:1em;height:1em;display:block}.error-message{text-align:center;color:#666;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:3rem}.upload-modal-content{-webkit-backdrop-filter:none;backdrop-filter:none;scrollbar-width:none;-ms-overflow-style:none;background:0 0;border-radius:0;width:85vw;max-width:520px;max-height:90vh;overflow-y:auto}.upload-modal-content::-webkit-scrollbar{display:none}.upload-modal-content h2{text-align:center;letter-spacing:.05em;opacity:.9;margin-bottom:1.5rem;font-size:1.1rem;font-weight:300}body.exposure--1 .upload-modal-content h2{color:#fff}body.exposure-0 .upload-modal-content h2{color:#333}body.exposure-1 .upload-modal-content h2{color:#000}.upload-form{padding:1.5rem}.form-group{margin-bottom:1.5rem;position:relative}.form-group label{letter-spacing:.1em;text-transform:lowercase;opacity:.8;margin-bottom:.5rem;font-size:.8rem;font-weight:300;display:block}.form-group input[type=text],.form-group input[type=password],.form-group input[type=date],.form-group input[type=number],.form-group textarea{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:none;border-radius:10px;width:100%;padding:.8rem 1rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.85rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 6px 24px #0000001a,inset 0 1px #ffffff1a}.form-group input[type=text]:focus,.form-group input[type=password]:focus,.form-group input[type=date]:focus,.form-group input[type=number]:focus,.form-group textarea:focus{outline:none;transform:translateY(-2px);box-shadow:0 12px 40px #00000026,inset 0 1px #fff3}.form-group input[type=text]:hover,.form-group input[type=password]:hover,.form-group input[type=date]:hover,.form-group input[type=number]:hover,.form-group textarea:hover{transform:translateY(-1px);box-shadow:0 10px 36px #0000001f,inset 0 1px #ffffff26}.form-group input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;position:relative}.form-group input[type=date]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer;transition:opacity .3s}.form-group input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.form-group input[type=date]::-webkit-datetime-edit{padding:0}.form-group input[type=date]::-webkit-datetime-edit-fields-wrapper{padding:0}.form-group input[type=date]::-webkit-datetime-edit-text{padding:0 .2em}.form-group input[type=date]::-webkit-datetime-edit-month-field{padding:0 .1em}.form-group input[type=date]::-webkit-datetime-edit-day-field{padding:0 .1em}.form-group input[type=date]::-webkit-datetime-edit-year-field{padding:0 .1em}.form-group input[type=date]::-webkit-inner-spin-button{display:none}.form-group input[type=date]::-webkit-clear-button{display:none}.form-group input[type=date]::-webkit-calendar-picker-indicator{color:#0000;cursor:pointer;background:0 0;width:auto;height:auto;position:absolute;inset:0}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.5)opacity(.6);transition:filter .3s}input[type=date]::-webkit-calendar-picker-indicator:hover{filter:invert(.3)opacity()}body.exposure--1 input[type=date]::-webkit-calendar-picker-indicator{filter:invert()opacity(.6)}body.exposure--1 input[type=date]::-webkit-calendar-picker-indicator:hover{filter:invert()opacity()}:root{--calendar-bg:#fffffff2;--calendar-text:#333;--calendar-border:#ffffff40;--calendar-hover:#ffffff1a}body.exposure--1{--calendar-bg:#333333f2;--calendar-text:#fff;--calendar-border:#ffffff1a;--calendar-hover:#ffffff0d}body.exposure-0{--calendar-bg:#c8c8c8f2;--calendar-text:#333;--calendar-border:#ffffff40;--calendar-hover:#ffffff26}body.exposure-1{--calendar-bg:#fffffff2;--calendar-text:#000;--calendar-border:#0000001a;--calendar-hover:#0000000d}body.exposure--1 .form-group label{color:#ccc}body.exposure--1 .form-group input[type=text],body.exposure--1 .form-group input[type=password],body.exposure--1 .form-group input[type=date],body.exposure--1 .form-group input[type=number],body.exposure--1 .form-group textarea{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a}body.exposure--1 .form-group input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body.exposure-0 .form-group label{color:#333}body.exposure-0 .form-group input[type=text],body.exposure-0 .form-group input[type=password],body.exposure-0 .form-group input[type=date],body.exposure-0 .form-group input[type=number],body.exposure-0 .form-group textarea{color:#333;background:#ffffff26;border:1px solid #ffffff40}body.exposure-1 .form-group label{color:#000}body.exposure-1 .form-group input[type=text],body.exposure-1 .form-group input[type=password],body.exposure-1 .form-group input[type=date],body.exposure-1 .form-group input[type=number],body.exposure-1 .form-group textarea{color:#000;background:#0000000d;border:1px solid #0000001a}.file-input-wrapper{width:100%;position:relative}.form-group input[type=file]{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute}.file-input-box{cursor:pointer;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:none;border-radius:10px;justify-content:flex-end;align-items:center;width:100%;min-height:48px;padding:.8rem 1rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.85rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 6px 24px #0000001a,inset 0 1px #ffffff1a}.file-input-box:hover{transform:translateY(-1px);box-shadow:0 10px 36px #0000001f,inset 0 1px #ffffff26}.file-status-icon{opacity:.6;font-size:1.2rem;font-weight:700;transition:all .3s}.file-status-icon.selected{opacity:1;transform:scale(1.1)}body.exposure--1 .file-input-box{background:#ffffff0d;border:1px solid #ffffff1a}body.exposure--1 .file-status-icon{color:#ccc}body.exposure--1 .file-status-icon.selected{color:#fff}body.exposure-0 .file-input-box{background:#ffffff26;border:1px solid #ffffff40}body.exposure-0 .file-status-icon,body.exposure-0 .file-status-icon.selected{color:#333}body.exposure-1 .file-input-box{background:#0000000d;border:1px solid #0000001a}body.exposure-1 .file-status-icon,body.exposure-1 .file-status-icon.selected{color:#000}.file-input-wrapper:focus-within .file-input-box{border-color:#666}.form-group textarea{resize:vertical;min-height:60px}.file-preview{text-align:center;justify-content:center;align-items:center;height:120px;margin-top:.75rem;display:flex}.preview-placeholder{aspect-ratio:4/3;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;justify-content:center;align-items:center;width:160px;height:120px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 6px 24px #0000001a,inset 0 1px #ffffff1a}.preview-placeholder:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026,inset 0 1px #fff3}.preview-placeholder img{object-fit:cover;opacity:0;border-radius:12px;width:100%;height:100%;transition:opacity .3s}.preview-placeholder img[src]:not([src=""]){opacity:1}body.exposure--1 .preview-placeholder{background:#ffffff0d;border:1px solid #ffffff1a}body.exposure-0 .preview-placeholder{background:#ffffff26;border:1px solid #ffffff40}body.exposure-1 .preview-placeholder{background:#0000000d;border:1px solid #0000001a}.form-group-row{gap:1rem;display:flex}.form-group-half{flex:1;min-width:0}.form-group-half label{margin-bottom:.5rem;display:block}.form-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.btn{cursor:pointer;letter-spacing:.1em;text-transform:lowercase;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:none;border-radius:10px;padding:.8rem 1.5rem;font-size:.8rem;font-weight:300;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 24px #0000001a,inset 0 1px #ffffff1a}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026,inset 0 1px #fff3}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary:disabled:hover{transform:none;box-shadow:0 8px 32px #0000001a,inset 0 1px #ffffff1a}body.exposure--1 .btn-primary{color:#fff;background:#ffffff1a;border:1px solid #fff3}body.exposure--1 .btn-secondary{color:#ccc;background:#ffffff0d;border:1px solid #ffffff1a}body.exposure-0 .btn-primary{color:#333;background:#fff3;border:1px solid #ffffff59}body.exposure-0 .btn-secondary{color:#333;background:#ffffff26;border:1px solid #ffffff40}body.exposure-1 .btn-primary{color:#000;background:#0000001a;border:1px solid #0003}body.exposure-1 .btn-secondary{color:#000;background:#0000000d;border:1px solid #0000001a}.upload-progress{text-align:center;height:4px;margin-top:1rem}.progress-bar{background:#eee;border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-fill{background:#666;width:0%;height:100%;transition:width .3s}.upload-progress.active .progress-fill{animation:2s ease-in-out infinite progressAnimation}@keyframes progressAnimation{0%{width:0%}50%{width:70%}to{width:100%}}.upload-error{color:#c53030;background:#ff00001a;border:1px solid #f003;border-radius:4px;margin-top:1rem;padding:1rem}.upload-error p{margin:0;font-size:.9rem}.upload-success{color:#166534;background:#22c55e1f;border:1px solid #22c55e3d;border-radius:4px;margin-top:1rem;padding:1rem}.upload-success p{margin:0;font-size:.9rem}.admin-page{min-height:100vh}.admin-shell{justify-content:center;align-items:flex-start;min-height:100vh;padding:2.5rem 1.25rem 3rem;display:flex}.admin-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff24;border:1px solid #ffffff38;border-radius:24px;width:min(560px,100%);overflow:hidden;box-shadow:0 20px 60px #0000001f}.admin-panel-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem 1.5rem 0;display:flex}.admin-panel-header h1{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:1.6rem;font-weight:300}.admin-eyebrow{letter-spacing:.16em;text-transform:uppercase;opacity:.7;margin:0 0 .45rem;font-size:.72rem}.admin-back-link{color:inherit;opacity:.8;border-bottom:1px solid;font-size:.85rem;text-decoration:none}.admin-back-link:hover{opacity:1}.admin-session-status{opacity:.8;margin:1rem 1.5rem 0;font-size:.9rem}.admin-upload-form{padding-top:1rem}.admin-panel-wide{width:min(1280px,100%)}.admin-tabs{border-bottom:1px solid #ffffff38;flex-wrap:wrap;gap:.45rem;margin:1.25rem 1.5rem 0;padding-bottom:.85rem;display:flex}.admin-tab{appearance:none;color:inherit;cursor:pointer;letter-spacing:.1em;text-transform:lowercase;opacity:.72;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff1f;border:1px solid #ffffff47;border-radius:10px;padding:.65rem .95rem;font-family:inherit;font-size:.78rem;font-weight:300;transition:all .2s;box-shadow:0 4px 16px #00000014,inset 0 1px #ffffff1f}.admin-tab:hover{opacity:1;background:#ffffff38;transform:translateY(-1px)}.admin-tab.active{opacity:1;background:#ffffff4d;border-color:#ffffff6b;box-shadow:0 8px 24px #0000001a,inset 0 1px #fff3}.admin-section{padding:1.35rem 1.5rem 1.5rem}.admin-section-heading{justify-content:space-between;align-items:flex-end;gap:1.25rem;margin-bottom:1rem;display:flex}.admin-section-heading h2{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1.15rem;font-weight:300}.admin-section-heading .admin-eyebrow{margin-bottom:.35rem}.admin-search{letter-spacing:.09em;text-transform:lowercase;opacity:.85;gap:.35rem;width:min(280px,100%);font-size:.7rem;display:grid}.admin-search input{width:100%;color:inherit;font:inherit;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff2e;border:1px solid #ffffff4d;border-radius:10px;outline:none;padding:.7rem .85rem;font-size:.82rem;box-shadow:0 4px 16px #00000014,inset 0 1px #ffffff1f}.admin-search input:focus{background:#ffffff4d;border-color:#0003}.admin-table-summary{opacity:.72;justify-content:space-between;align-items:center;gap:1rem;min-height:1.4rem;margin-bottom:.75rem;font-size:.78rem;display:flex}.admin-save-status.is-error{color:#8d2525;opacity:1}.admin-color-backfill{opacity:.78;justify-content:space-between;align-items:center;gap:1rem;margin:-.25rem 0 .85rem;font-size:.78rem;display:flex}.admin-color-swatches{gap:3px;min-height:8px;margin-top:.35rem;display:flex}.admin-color-swatch{border:1px solid #0000002e;border-radius:50%;width:8px;height:8px}.admin-color-swatches.is-empty:after{content:"";border:1px dashed #00000047;border-radius:50%;width:8px;height:8px}.admin-table-wrap{background:#ffffff1a;border:1px solid #ffffff47;border-radius:14px;width:100%;max-height:min(70vh,760px);overflow:auto;box-shadow:0 10px 34px #00000014,inset 0 1px #ffffff1f}.admin-metadata-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.admin-col-photo{width:72px}.admin-col-date{width:128px}.admin-col-location{width:150px}.admin-col-country{width:120px}.admin-col-state{width:130px}.admin-col-camera{width:150px}.admin-col-coord{width:104px}.admin-col-description{width:210px}.admin-col-actions{width:104px}.admin-metadata-table th{z-index:2;letter-spacing:.08em;text-align:left;text-transform:lowercase;white-space:nowrap;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#c4c4c4f5;border-bottom:1px solid #0000001a;padding:.75rem .5rem;font-size:.66rem;font-weight:400;position:sticky;top:0}.admin-metadata-table td{vertical-align:middle;border-bottom:1px solid #00000014;padding:.55rem .45rem;transition:background .2s}.admin-metadata-table tr:last-child td{border-bottom:0}.admin-metadata-table tbody tr:hover td{background:#ffffff14}.admin-metadata-table tr.is-dirty td{background:#ffffff2e}.admin-metadata-table input,.admin-metadata-table textarea{box-sizing:border-box;width:100%;max-width:100%;min-height:38px;color:inherit;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff2e;border:1px solid #ffffff47;border-radius:8px;outline:none;padding:.55rem .6rem;font-family:inherit;font-size:.76rem;line-height:1.35;transition:border-color .2s,background .2s,box-shadow .2s;display:block;box-shadow:0 3px 12px #0000000f,inset 0 1px #ffffff1a}.admin-metadata-table textarea{resize:vertical;min-height:56px}.admin-metadata-table input:hover,.admin-metadata-table textarea:hover,.admin-metadata-table input:focus,.admin-metadata-table textarea:focus{background:#ffffff52;border-color:#0000002e;box-shadow:0 5px 18px #00000014}.admin-photo-cell{vertical-align:top;width:72px;max-width:72px}.admin-photo-thumb{border-radius:8px;width:56px;height:56px;display:block;overflow:hidden;box-shadow:0 4px 14px #00000024}.admin-photo-cell img,.admin-photo-thumb img{object-fit:cover;border-radius:8px;transition:transform .2s;display:block;width:56px!important;max-width:56px!important;height:56px!important;max-height:56px!important}.admin-photo-thumb:hover img{transform:scale(1.05)}.admin-row-actions{white-space:nowrap;flex-direction:column;align-items:stretch;gap:.35rem;display:flex}.admin-save-button,.admin-delete-button{min-width:72px;padding:.55rem .65rem!important}.admin-save-button:disabled,.admin-delete-button:disabled{cursor:default;opacity:.5;transform:none!important}.btn-danger{color:#8d2525;background:#8d252524;border:1px solid #8d252547}.btn-danger:hover{background:#8d252538;border-color:#8d252566}.admin-confirm{z-index:12000;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.admin-confirm-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1814106b;position:absolute;inset:0}.admin-confirm-panel{z-index:1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffdb;border:1px solid #ffffff47;border-radius:18px;width:min(420px,100%);padding:1.4rem 1.45rem 1.3rem;position:relative;box-shadow:0 24px 60px #0000002e,inset 0 1px #fff6}.admin-confirm-panel h3{letter-spacing:.04em;margin:0 0 .65rem;font-size:1.05rem;font-weight:400}.admin-confirm-panel p{opacity:.82;margin:0 0 1.2rem;font-size:.88rem;line-height:1.5}.admin-confirm-actions{justify-content:flex-end;gap:.6rem;display:flex}.admin-empty-state{text-align:center;opacity:.65;padding:3rem 1rem;font-size:.85rem}.admin-table-actions{justify-content:center;padding-top:1rem;display:flex}.admin-upload-heading{width:min(560px,100%);margin-left:auto;margin-right:auto}#upload-section .admin-upload-form{width:min(560px,100%);margin:0 auto;padding:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=900px){.admin-shell{padding:1rem .75rem 2rem}.admin-panel-header,.admin-section-heading{flex-direction:column;align-items:flex-start}.admin-panel-header{gap:.75rem}.admin-tabs{margin-left:1rem;margin-right:1rem}.admin-section{padding:1rem}.admin-search{width:100%}.admin-table-summary{flex-direction:column;align-items:flex-start;gap:.35rem}.admin-table-wrap{max-height:min(65vh,640px)}}.hidden{display:none!important}@media (width<=768px){.header h1{font-size:1.25rem}.timeline-sidebar{display:none}.main-content{padding:var(--gallery-top) 1rem 1rem}.nav-btn,.modal-nav-buttons{display:none!important}.modal-content{padding:1rem;padding-bottom:calc(2.75rem + env(safe-area-inset-bottom,0px) + 64px);-webkit-overflow-scrolling:touch;scroll-behavior:smooth;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;height:100vh;overflow-y:auto}.modal-image-container{max-width:100%;height:auto;margin-top:max(.75rem, env(safe-area-inset-top,0px));flex:none;margin-bottom:1rem}.modal-content.modal-photo-placed .modal-image-container{overflow:hidden}.modal-content.modal-photo-placed #modal-image{max-width:100%;max-height:100%}.modal-content.modal-photo-placed .modal-info{width:min(100%, var(--modal-photo-w,100%));max-width:100%;margin-left:auto;margin-right:auto}.modal-content.modal-layout-animating .modal-image-container{transition:height var(--dur-slow) var(--ease), margin-top var(--dur-slow) var(--ease)}.modal-content.modal-layout-animating .modal-info{transition:width var(--dur-slow) var(--ease)}.modal-content.modal-layout-animating #modal-image{transition:width var(--dur-slow) var(--ease), height var(--dur-slow) var(--ease), transform .5s ease}.modal-content.modal-layout-animating #modal-globe{transition:width var(--dur-slow) var(--ease), height var(--dur-slow) var(--ease)}#modal-image{width:auto;max-width:100%;height:auto;max-height:68vh}.modal-info{flex:none;order:2;gap:.5rem;width:100%;max-width:100%;min-height:auto;margin:0 auto;padding:.35rem 0 2.25rem;position:static}#modal .modal-details{flex-direction:row;align-items:stretch;gap:.85rem;width:100%}#modal .modal-copy{flex:auto;justify-content:center;min-width:0}#modal-description{padding-right:0;font-size:1.2rem}#modal .modal-metadata{align-items:flex-start;padding-left:0;font-size:.78rem}#modal .metadata-item{text-align:left}#modal-globe:not(.hidden){aspect-ratio:1;flex:none;align-self:stretch;width:auto;max-width:42vw;height:auto;margin:0}}@media (width<=480px){.gallery-container{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}#modal-image{max-width:95vw;max-height:62vh}.modal-content{padding:.5rem;padding-bottom:calc(2.5rem + env(safe-area-inset-bottom,0px) + 64px)}.modal-image-container{margin-bottom:.5rem}.modal-info{padding:.5rem 0 2.25rem}.upload-modal-content{width:95vw;max-height:98vh}.upload-form{padding:1rem}.form-group{margin-bottom:.75rem}.form-group label{margin-bottom:.25rem;font-size:.85rem}.form-group input[type=text],.form-group input[type=password],.form-group input[type=date],.form-group textarea{padding:.6rem;font-size:.85rem}.form-group textarea{min-height:50px}.file-preview{height:100px;margin-top:.5rem}.preview-placeholder{width:133px;height:100px}.form-actions{margin-top:1rem}.btn{padding:.6rem 1.2rem;font-size:.85rem}}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal.active .modal-content{animation:.5s fadeIn}.gallery-item:after{content:"";pointer-events:none;background:0 0;transition:background .3s;position:absolute;inset:0}.gallery-item:hover:after{background:#0000000d}.globe-container{filter:grayscale()contrast(1.05)brightness(.9);border-radius:50%;align-self:flex-end;width:160px;height:160px;margin:.5rem 0 .75rem;position:relative;overflow:hidden}#modal-globe{align-self:flex-start}#modal-globe:not(.hidden){cursor:pointer}.globe-container canvas{object-fit:cover;display:block;width:100%!important;height:100%!important}.custom-calendar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;visibility:hidden;z-index:10001;background:#fffffff2;border:1px solid #ffffff4d;border-radius:12px;width:auto;min-width:280px;padding:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:fixed;transform:translateY(-10px)scale(.95);box-shadow:0 20px 60px #00000026,0 8px 24px #0000001a,inset 0 1px #fff3}.custom-calendar.active{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.calendar-header{border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.calendar-month-year{color:#333;letter-spacing:.05em;font-size:.9rem;font-weight:500}.calendar-nav-btn{cursor:pointer;color:#333;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;transition:all .2s;display:flex}.calendar-nav-btn:hover{background:#ffffff4d;transform:scale(1.05)}.calendar-weekdays{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.5rem;display:grid}.calendar-weekday{text-align:center;color:#666;text-transform:uppercase;letter-spacing:.05em;padding:.5rem 0;font-size:.7rem;font-weight:500}.calendar-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-day{aspect-ratio:1;cursor:pointer;color:#333;border-radius:6px;justify-content:center;align-items:center;font-size:.8rem;transition:all .2s;display:flex;position:relative}.calendar-day:hover{background:#ffffff4d;transform:scale(1.05)}.calendar-day.disabled{color:#999;cursor:not-allowed;opacity:.4}.calendar-day.disabled:hover{background:0 0;transform:none}.calendar-day.selected{color:#000;background:#fff6;font-weight:600;box-shadow:0 2px 8px #0000001a}.calendar-day.today{background:#fff3;border:1px solid #fff6;font-weight:500}.calendar-day.today.selected{background:#ffffff80;border-color:#fff9}body.exposure--1 .custom-calendar{background:#333333f2;border-color:#ffffff1a}body.exposure--1 .calendar-header{border-bottom-color:#ffffff1a}body.exposure--1 .calendar-month-year{color:#fff}body.exposure--1 .calendar-nav-btn{color:#fff;background:#ffffff1a;border-color:#fff3}body.exposure--1 .calendar-nav-btn:hover{background:#fff3}body.exposure--1 .calendar-weekday{color:#ccc}body.exposure--1 .calendar-day{color:#fff}body.exposure--1 .calendar-day:hover{background:#ffffff1a}body.exposure--1 .calendar-day.disabled{color:#666}body.exposure--1 .calendar-day.selected{color:#fff;background:#fff3}body.exposure--1 .calendar-day.today{background:#ffffff1a;border-color:#ffffff4d}body.exposure-0 .custom-calendar{background:#c8c8c8f2;border-color:#ffffff40}body.exposure-0 .calendar-header{border-bottom-color:#ffffff40}body.exposure-0 .calendar-month-year{color:#333}body.exposure-0 .calendar-nav-btn{color:#333;background:#fff3;border-color:#ffffff59}body.exposure-0 .calendar-nav-btn:hover{background:#ffffff59}body.exposure-0 .calendar-weekday{color:#666}body.exposure-0 .calendar-day{color:#333}body.exposure-0 .calendar-day:hover{background:#ffffff40}body.exposure-0 .calendar-day.disabled{color:#999}body.exposure-0 .calendar-day.selected{color:#000;background:#ffffff59}body.exposure-0 .calendar-day.today{background:#fff3;border-color:#ffffff73}body.exposure-1 .custom-calendar{background:#fffffff2;border-color:#0000001a}body.exposure-1 .calendar-header{border-bottom-color:#0000001a}body.exposure-1 .calendar-month-year{color:#000}body.exposure-1 .calendar-nav-btn{color:#000;background:#0000000d;border-color:#00000026}body.exposure-1 .calendar-nav-btn:hover{background:#0000001a}body.exposure-1 .calendar-weekday{color:#666}body.exposure-1 .calendar-day{color:#000}body.exposure-1 .calendar-day:hover{background:#0000000d}body.exposure-1 .calendar-day.disabled{color:#999}body.exposure-1 .calendar-day.selected{color:#000;background:#0000001a}body.exposure-1 .calendar-day.today{background:#0000000d;border-color:#0003}input[type=date]::-webkit-calendar-picker-indicator{display:none}input[type=date]::-webkit-inner-spin-button{display:none}input[type=date]::-webkit-clear-button{display:none}@media (width<=768px){.custom-calendar{min-width:260px;padding:.75rem}.calendar-header{margin-bottom:.75rem;padding-bottom:.5rem}.calendar-month-year{font-size:.85rem}.calendar-nav-btn{width:26px;height:26px;font-size:.75rem}.calendar-weekday{padding:.4rem 0;font-size:.65rem}.calendar-day{font-size:.75rem}.calendar-trigger-btn{padding:.2rem;font-size:.9rem}}body:before{content:"";pointer-events:none;z-index:0;mix-blend-mode:screen;opacity:var(--leak-opacity,.65);background:radial-gradient(ellipse at calc(var(--leak-x1,12%) + var(--scroll-ratio,0) * var(--leak-dx1,72%)) var(--leak-y1,42%), rgba(var(--leak-c1,255, 170, 110), .26), rgba(var(--leak-c2,255, 120, 90), .12) 34%, transparent 72%), radial-gradient(ellipse at calc(var(--leak-x2,85%) + var(--scroll-ratio,0) * var(--leak-dx2,-38%)) var(--leak-y2,62%), rgba(var(--leak-c3,255, 205, 140), .18), transparent 68%), radial-gradient(ellipse at calc(var(--leak-x3,52%) + var(--scroll-ratio,0) * var(--leak-dx3,18%)) var(--leak-y3,24%), rgba(var(--leak-c4,120, 160, 255), .1), transparent 60%);transition:opacity .5s;position:fixed;inset:0}body.exposure--1{--leak-opacity:.9}body.exposure-0{--leak-opacity:.68}body.exposure-1{--leak-opacity:.35}.modal{overflow:hidden}.modal:before{content:"";pointer-events:none;z-index:0;mix-blend-mode:screen;opacity:calc(var(--leak-opacity,.65) * .95);background:radial-gradient(ellipse at calc(var(--leak-x1,12%) + var(--scroll-ratio,0) * var(--leak-dx1,72%)) var(--leak-y1,42%), rgba(var(--leak-c1,255, 170, 110), .24), rgba(var(--leak-c2,255, 120, 90), .1) 34%, transparent 72%), radial-gradient(ellipse at calc(var(--leak-x2,85%) + var(--scroll-ratio,0) * var(--leak-dx2,-38%)) var(--leak-y2,62%), rgba(var(--leak-c3,255, 205, 140), .14), transparent 66%), radial-gradient(ellipse at calc(var(--leak-x3,52%) + var(--scroll-ratio,0) * var(--leak-dx3,18%)) var(--leak-y3,24%), rgba(var(--leak-c4,120, 160, 255), .1), transparent 60%);position:absolute;inset:0}.modal-content{z-index:1;position:relative}.globe-explorer{box-sizing:border-box;z-index:1000;opacity:0;visibility:hidden;background:#a8a8a8fa;justify-content:center;align-items:center;width:100%;max-width:100%;height:100dvh;transition:opacity .5s,visibility .5s;display:flex;position:fixed;top:0;left:0;overflow-x:hidden}.globe-explorer:before{content:"";pointer-events:none;z-index:0;mix-blend-mode:screen;opacity:calc(var(--leak-opacity,.65) * .9);background:radial-gradient(ellipse at calc(var(--leak-x1,12%) + var(--scroll-ratio,0) * var(--leak-dx1,72%)) var(--leak-y1,42%), rgba(var(--leak-c1,255, 170, 110), .24), rgba(var(--leak-c2,255, 120, 90), .1) 34%, transparent 72%), radial-gradient(ellipse at calc(var(--leak-x2,85%) + var(--scroll-ratio,0) * var(--leak-dx2,-38%)) var(--leak-y2,62%), rgba(var(--leak-c3,255, 205, 140), .14), transparent 66%), radial-gradient(ellipse at calc(var(--leak-x3,52%) + var(--scroll-ratio,0) * var(--leak-dx3,18%)) var(--leak-y3,24%), rgba(var(--leak-c4,120, 160, 255), .1), transparent 60%);position:absolute;inset:0}.globe-explorer.active{opacity:1;visibility:visible}.globe-explorer-content{box-sizing:border-box;z-index:1;flex-direction:row;align-items:stretch;width:100%;min-width:0;max-width:100%;height:100dvh;display:flex;position:relative;overflow-x:hidden}.globe-explorer-toolbar{top:max(1rem, env(safe-area-inset-top,0px));right:max(1rem, env(safe-area-inset-right,0px));left:max(1rem, env(safe-area-inset-left,0px));z-index:1002;box-sizing:border-box;pointer-events:none;flex-direction:row;justify-content:flex-end;align-items:center;gap:.5rem;display:flex;position:absolute}.globe-explorer-toolbar>*{pointer-events:auto}.globe-explorer-toolbar .close-btn{margin:0;position:static;top:auto;right:auto}.globe-rotate-btn{width:40px;min-width:40px;height:40px;min-height:40px;color:inherit;cursor:pointer;opacity:.72;box-sizing:border-box;background:0 0;border:1px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .25s,transform .25s;display:flex}.globe-explorer-toolbar .globe-rotate-btn,.globe-explorer-toolbar .close-btn{width:40px;min-width:40px;height:40px;min-height:40px;line-height:1}.globe-explorer-toolbar .close-btn{font-size:1.2rem}.globe-rotate-btn:hover{opacity:1;transform:scale(1.04)}.globe-rotate-icon{font-size:.92rem;line-height:1}.globe-rotate-btn.paused .globe-rotate-icon{display:inline-block;transform:rotate(45deg)}.globe-intersect-picker{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;z-index:1002;background:#121212d1;border:1px solid #ffffff1f;width:220px;max-height:min(44vh,320px);padding:.45rem;position:absolute;top:1rem;left:1rem;overflow-y:auto}.globe-intersect-picker-title{opacity:.62;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.4rem;font-size:.6rem}.globe-intersect-picker-item{width:100%;color:inherit;text-align:left;cursor:pointer;opacity:.82;background:0 0;border:1px solid #0000;flex-direction:column;gap:.14rem;margin-bottom:.28rem;padding:.34rem .38rem;transition:border-color .2s,opacity .2s;display:flex}.globe-intersect-picker-item:hover{opacity:1;border-color:currentColor}.globe-intersect-picker-label{letter-spacing:.03em;font-size:.74rem}.globe-intersect-picker-country{opacity:.62;letter-spacing:.08em;text-transform:uppercase;font-size:.6rem}.globe-pick-confirm{left:50%;bottom:max(1.4rem, env(safe-area-inset-bottom,0px));z-index:1003;opacity:0;pointer-events:none;width:min(22rem,100% - 2rem);transition:opacity var(--dur-mid) var(--ease), transform var(--dur-mid) var(--ease);position:absolute;transform:translate(-50%)translateY(10px)}.globe-pick-confirm.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.globe-pick-confirm-card{-webkit-backdrop-filter:blur(12px);color:#f4f4f4;text-align:center;background:#0e0e0ec7;border:1px solid #ffffff24;padding:.95rem 1.1rem 1rem}.globe-pick-confirm-kind{letter-spacing:.16em;text-transform:uppercase;opacity:.55;margin:0 0 .35rem;font-size:.58rem}.globe-pick-confirm-title{letter-spacing:.04em;margin:0;font-family:Cormorant Garamond,Times New Roman,serif;font-size:1.55rem;font-weight:400;line-height:1.15}.globe-pick-confirm-meta{letter-spacing:.1em;text-transform:uppercase;opacity:.58;margin:.28rem 0 0;font-size:.62rem}.globe-pick-confirm-copy{letter-spacing:.06em;text-transform:lowercase;opacity:.68;margin:.55rem 0 .9rem;font-size:.72rem}.globe-pick-confirm-actions{justify-content:center;gap:.55rem;display:flex}.globe-pick-confirm-btn{min-width:5.5rem;color:inherit;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:opacity var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:1px solid #ffffff47;padding:.42rem .85rem;font-size:.62rem}.globe-pick-confirm-btn:hover{opacity:1;border-color:currentColor}.globe-pick-confirm-btn-primary{background:#ffffff1a;border-color:#ffffff8c}.globe-explorer.is-exiting{opacity:0;visibility:hidden;pointer-events:none}.globe-explorer.is-exiting .globe-explorer-scene{opacity:0;filter:grayscale()contrast(1.05)brightness(.9)blur(6px);transform:scale(.94)}.globe-explorer.is-exiting .globe-pick-confirm,.globe-explorer.is-exiting .globe-intersect-picker,.globe-explorer.is-exiting .globe-explorer-toolbar{opacity:0}.globe-explorer-scene{min-width:0;transition:transform var(--dur-slow) var(--ease), opacity var(--dur-slow) var(--ease), filter var(--dur-slow) var(--ease);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.globe-explorer-scene canvas{filter:grayscale()contrast(1.05)brightness(.9);display:block}.globe-explorer-hint{letter-spacing:.05em;opacity:.6;text-transform:lowercase;font-size:.85rem;font-weight:300}body.exposure--1 .globe-explorer{color:#fff;background:#000000fa}body.exposure-0 .globe-explorer{color:#333;background:#a8a8a8fa}body.exposure-1 .globe-explorer{color:#000;background:#fffffffa}.control-menu{z-index:60;width:0;height:0;color:var(--ink,#333);text-transform:uppercase;--cm-r-hub:78px;--cm-r-a:180px;--cm-r-b:268px;--cm-r-c:350px;--cm-scrim:color-mix(in srgb, var(--ink,#333) 5%, transparent);--cm-edge:color-mix(in srgb, var(--ink,#333) 26%, transparent);--cm-edge-strong:color-mix(in srgb, var(--ink,#333) 55%, transparent);--cm-orb:42px;--cm-orb-inset:3.4rem;--cm-orb-dock:.38rem;transition:opacity var(--dur-mid) var(--ease);font-family:Helvetica Neue,Arial,sans-serif;position:fixed;bottom:0;right:0}.cm-disc{pointer-events:none;border-radius:50%;position:absolute}.cm-backdrop{right:calc(var(--cm-radius,var(--cm-r-c)) * -1);bottom:calc(var(--cm-radius,var(--cm-r-c)) * -1);width:calc(var(--cm-radius,var(--cm-r-c)) * 2);height:calc(var(--cm-radius,var(--cm-r-c)) * 2);background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--ink,#333) 13%, var(--surface,#f0f0f0b8)) 0%, color-mix(in srgb, var(--ink,#333) 7%, var(--surface,#f0f0f0b8)) 60%, color-mix(in srgb, var(--ink,#333) 3%, var(--surface,#f0f0f0b8)) 100%);-webkit-backdrop-filter:blur(8px);border:1px solid var(--cm-edge);opacity:1;transform-origin:100% 100%;transition:transform var(--dur-slow) var(--ease), opacity var(--dur-mid) var(--ease);pointer-events:none;border-radius:50%;position:absolute;transform:scale(1)}.control-menu:not(.collapsed) .cm-backdrop{pointer-events:auto}.cm-rings{pointer-events:none;position:absolute;bottom:0;right:0}.cm-ring{border:1px solid var(--cm-edge);background:var(--cm-scrim);transform-origin:100% 100%;transition:transform var(--dur-slow) var(--ease), opacity var(--dur-mid) var(--ease);border-radius:50%;position:absolute}.cm-ring-hub{right:calc(var(--cm-r-hub) * -1);bottom:calc(var(--cm-r-hub) * -1);width:calc(var(--cm-r-hub) * 2);height:calc(var(--cm-r-hub) * 2)}.cm-ring-a{right:calc(var(--cm-r-a) * -1);bottom:calc(var(--cm-r-a) * -1);width:calc(var(--cm-r-a) * 2);height:calc(var(--cm-r-a) * 2)}.cm-ring-b{right:calc(var(--cm-r-b) * -1);bottom:calc(var(--cm-r-b) * -1);width:calc(var(--cm-r-b) * 2);height:calc(var(--cm-r-b) * 2)}.cm-ring-c{right:calc(var(--cm-r-c) * -1);bottom:calc(var(--cm-r-c) * -1);width:calc(var(--cm-r-c) * 2);height:calc(var(--cm-r-c) * 2)}.cm-layer{position:absolute;bottom:0;right:0}.cm-hub-catch{width:calc(var(--cm-orb-inset) + var(--cm-orb));height:calc(var(--cm-orb-inset) + var(--cm-orb));pointer-events:none;position:absolute;bottom:0;right:0}.control-menu.is-animating.collapsed .cm-hub-catch{pointer-events:auto}.cm-hub{--cm-orb:42px;--cm-orb-inset:3.4rem;--cm-orb-dock:.38rem;right:calc(var(--cm-r-hub) * -1);bottom:calc(var(--cm-r-hub) * -1);width:calc(var(--cm-r-hub) * 2);height:calc(var(--cm-r-hub) * 2);border:1px solid var(--cm-edge-strong);background:color-mix(in srgb, var(--ink,#333) 15%, var(--surface,#f0f0f0b8));-webkit-backdrop-filter:blur(16px);color:var(--ink,#333);cursor:pointer;transition:right var(--dur-slow) var(--ease), bottom var(--dur-slow) var(--ease), width var(--dur-slow) var(--ease), height var(--dur-slow) var(--ease), background var(--dur-mid) var(--ease), border-color var(--dur-mid) var(--ease), box-shadow var(--dur-mid) var(--ease);border-radius:50%;padding:0;display:block;position:absolute}.cm-hub-mark{--mark-scale:1;border:1px solid var(--ink-soft,#888);opacity:0;width:9px;height:9px;transform:translate(-50%, -50%) translate(calc(var(--cm-r-hub) * -.8), calc(var(--cm-r-hub) * -.8)) scale(var(--mark-scale));transition:background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);border-radius:50%;position:absolute;top:50%;left:50%}.control-menu:not(.collapsed) .cm-hub-mark{background:var(--ink,#333);border-color:var(--ink,#333);opacity:1;--mark-scale:.72}.cm-hub:hover{border-color:var(--ink,#333)}.cm-hub:focus-visible{outline:1px solid var(--ink,#333);outline-offset:-6px}.control-menu.collapsed .cm-hub:focus-visible{outline-offset:3px}.cm-node{text-align:center;border:1px solid var(--cm-edge);background:var(--cm-scrim);color:var(--ink,#333);cursor:pointer;letter-spacing:.04em;transform-origin:50%;transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);border-radius:50%;justify-content:center;align-items:center;padding:2px;line-height:1.15;display:flex;position:absolute;overflow:hidden}.cm-node:hover{color:var(--ink,#111);border-color:var(--cm-edge-strong);background:color-mix(in srgb, var(--ink,#333) 12%, transparent);transform:scale(1.07)}.cm-node:focus-visible{outline:1px solid var(--ink,#333);outline-offset:2px}.cm-node.is-active{color:var(--on-ink,#eee);border-color:var(--ink,#333);background:var(--ink,#333)}.cm-node[data-kind=view]{transition-property:transform,opacity,border-color}.cm-node.is-open{border-color:var(--cm-edge-strong);background:color-mix(in srgb, var(--ink,#333) 10%, transparent);color:var(--ink,#111)}.cm-node.is-open.is-active{color:var(--on-ink,#eee);background:var(--ink,#333)}.cm-node-count{opacity:.55;letter-spacing:.04em;font-size:.82em;display:block}.cm-node.has-swatch{flex-direction:column;gap:2px}.cm-node-swatch{border:1px solid color-mix(in srgb, var(--ink,#333) 28%, transparent);border-radius:50%;flex:none;width:11px;height:11px;display:block;box-shadow:inset 0 0 0 1px #ffffff2e}.cm-node.is-active .cm-node-swatch{border-color:color-mix(in srgb, var(--on-ink,#eee) 55%, transparent)}.cm-node-color{border-color:color-mix(in srgb, var(--ink,#333) 35%, transparent);box-shadow:inset 0 0 0 1px #ffffff38}.cm-node-color .cm-node-count{opacity:.88;font-weight:500}.cm-node-color:hover,.cm-node-color:focus-visible,.cm-node-color.is-active,.cm-node-color.is-open,.cm-node-color.is-open.is-active{color:var(--cm-color-ink,#f4f4f4);background:var(--cm-color);border-color:var(--ink,#333)}.cm-node-color.is-active{box-shadow:inset 0 0 0 1px #ffffff38, 0 0 0 3px var(--ink,#333)}.cm-sector-label{white-space:normal;overflow-wrap:anywhere;display:block}.control-menu.collapsed .cm-backdrop,.control-menu.collapsed .cm-ring{opacity:0;pointer-events:none;transform:scale(.24)}.control-menu.collapsed .cm-backdrop{-webkit-backdrop-filter:none}.control-menu.collapsed:not(.is-docked) .cm-backdrop,.control-menu.collapsed:not(.is-docked) .cm-rings{visibility:hidden}.control-menu.collapsed .cm-layer{opacity:0;pointer-events:none}.control-menu.collapsed .cm-hub{width:var(--cm-orb);height:var(--cm-orb);right:var(--cm-orb-dock);bottom:var(--cm-orb-dock);transition-duration:var(--dur-mid);box-shadow:0 0 0 1px color-mix(in srgb, var(--ink,#333) 30%, transparent), 0 0 14px color-mix(in srgb, var(--ink,#333) 28%, transparent), 0 0 32px color-mix(in srgb, var(--ink,#333) 14%, transparent)}.control-menu.collapsed:not(.is-docked) .cm-hub{right:var(--cm-orb-inset);bottom:var(--cm-orb-inset);animation:4.2s ease-in-out infinite cm-orb-pulse}.control-menu.collapsed .cm-hub:after{content:"";border:1px solid color-mix(in srgb, var(--ink,#333) 22%, transparent);pointer-events:none;opacity:0;border-radius:50%;position:absolute;inset:-8px}.control-menu.collapsed:not(.is-docked) .cm-hub:after{animation:4.2s ease-in-out infinite cm-orb-ring}@keyframes cm-orb-pulse{0%,to{box-shadow:0 0 0 1px color-mix(in srgb, var(--ink,#333) 26%, transparent), 0 0 12px color-mix(in srgb, var(--ink,#333) 24%, transparent), 0 0 28px color-mix(in srgb, var(--ink,#333) 10%, transparent)}50%{box-shadow:0 0 0 1px color-mix(in srgb, var(--ink,#333) 48%, transparent), 0 0 20px color-mix(in srgb, var(--ink,#333) 36%, transparent), 0 0 40px color-mix(in srgb, var(--ink,#333) 18%, transparent)}}@keyframes cm-orb-ring{0%,to{opacity:.25;transform:scale(.96)}50%{opacity:.7;transform:scale(1.1)}}.cm-layer{opacity:1;transition:opacity var(--dur-mid) var(--ease)}.cm-node-rotate{letter-spacing:0;opacity:.75;font-weight:700}.cm-leaf-hint{text-align:center;letter-spacing:.16em;color:var(--ink-dim,#666);border:1px dashed var(--cm-edge);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-size:.52rem;display:flex;position:absolute}@media (width<=768px){.control-menu,.cm-hub{--cm-orb:44px;--cm-orb-inset:2.2rem;--cm-orb-dock:.38rem}}.control-menu.has-filter .cm-hub{border-color:var(--ink,#333)}.control-menu.has-filter.collapsed:not(.is-docked) .cm-hub{box-shadow:0 0 0 1px color-mix(in srgb, var(--ink,#333) 40%, transparent), 0 0 16px color-mix(in srgb, var(--ink,#333) 30%, transparent), 0 0 36px color-mix(in srgb, var(--ink,#333) 14%, transparent)}body.exposure--1 .timeline-sidebar.timeline-popout{color:#f2f2f2;background:#0a0a0ad1;border-color:#ffffff38}body.exposure-0 .timeline-sidebar.timeline-popout{color:#f2f2f2;background:#141414c7;border-color:#ffffff47}body.exposure-1 .timeline-sidebar.timeline-popout{color:#141414;background:#f5f5f5d6;border-color:#00000026}body.exposure--1 .timeline-sidebar.timeline-popout .timeline-line,body.exposure-0 .timeline-sidebar.timeline-popout .timeline-line{background:#ffffff38}body.exposure--1 .timeline-sidebar.timeline-popout .timeline-year,body.exposure-0 .timeline-sidebar.timeline-popout .timeline-year{color:#e4e4e4}body.exposure--1 .timeline-sidebar.timeline-popout .timeline-month,body.exposure-0 .timeline-sidebar.timeline-popout .timeline-month{color:#bdbdbd}body.exposure--1 .timeline-sidebar.timeline-popout .timeline-month:hover,body.exposure-0 .timeline-sidebar.timeline-popout .timeline-month:hover,body.exposure--1 .timeline-sidebar.timeline-popout .timeline-month.active,body.exposure-0 .timeline-sidebar.timeline-popout .timeline-month.active{color:#fff}@media (width<=768px){.globe-explorer-content{flex-direction:column}.globe-explorer-scene{flex:1;min-width:0;min-height:50vh;margin:0 1.45rem}.globe-explorer-toolbar{top:max(.5rem, env(safe-area-inset-top,0px));right:max(.5rem, env(safe-area-inset-right,0px));left:max(.5rem, env(safe-area-inset-left,0px));gap:.5rem}.globe-explorer-toolbar .globe-rotate-btn,.globe-explorer-toolbar .close-btn{width:44px;min-width:44px;height:44px;min-height:44px}.globe-explorer-toolbar .close-btn{font-size:1.1rem}.globe-intersect-picker{right:max(.75rem, env(safe-area-inset-right,0px));left:max(.75rem, env(safe-area-inset-left,0px));top:calc(max(.5rem, env(safe-area-inset-top,0px)) + 44px + .65rem);box-sizing:border-box;width:auto;max-height:min(30vh,280px)}.globe-pick-confirm{width:calc(100% - 1.5rem);bottom:max(1rem, env(safe-area-inset-bottom,0px))}.globe-pick-confirm-btn{min-height:44px}}.app-init-error-backdrop{z-index:9998;background:#a8a8a8cc;width:100%;height:100%;position:fixed;top:0;left:0}.app-init-error{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;z-index:9999;background:#fffffff2;border:1px solid #ccc;border-radius:4px;max-width:400px;padding:2rem;font-family:Helvetica Neue,Arial,sans-serif;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.app-init-error h3{color:#333;letter-spacing:.05em;text-transform:uppercase;margin-bottom:1rem;font-size:1.1rem;font-weight:300}.app-init-error p{color:#666;margin-bottom:1.5rem;font-size:.9rem;font-weight:300;line-height:1.4}.app-init-error button{color:#fff;cursor:pointer;letter-spacing:.02em;background:#666;border:1px solid #666;border-radius:4px;padding:.75rem 1.5rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.9rem;transition:all .3s}.app-init-error button:hover{background:#333;border-color:#333}.app-error-toast{color:#333;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;background:#fffffff2;border:1px solid #ccc;border-radius:4px;max-width:300px;padding:1rem 1.5rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.9rem;font-weight:300;animation:.3s slideIn;position:fixed;top:20px;right:20px}.app-error-toast-row{align-items:center;gap:.75rem;display:flex}.app-error-toast-icon{color:#666;font-size:1rem}.app-error-toast-text{flex:1;line-height:1.4}.app-error-toast-close{color:#666;cursor:pointer;background:0 0;border:1px solid #999;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:1rem;transition:all .3s;display:flex}.app-error-toast-close:hover{color:#333;border-color:#333}@media (width<=480px){.app-error-toast{top:max(12px, env(safe-area-inset-top,0px));right:max(12px, env(safe-area-inset-right,0px));left:max(12px, env(safe-area-inset-left,0px));max-width:none}}
