@font-face{font-family:Manrope;src:url(/fonts/manrope-latin.woff2)format("woff2");font-display:swap;font-weight:400 800}@font-face{font-family:Noto Sans SC;src:url(/fonts/noto-sans-sc-700.woff2)format("woff2");font-display:swap;font-weight:700}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--cinema-black:#0d0e0c;--cinema-raised:#171914;--film-stock:#f1e5cd;--film-paper:#e3d5b9;--film-muted:#aaa08a;--projector:#e0ad63;--paper:var(--cinema-black);--paper-deep:#1d1f19;--ink:var(--film-stock);--muted:var(--film-muted);--forest:#416555;--moss:#82917d;--rust:#b84d3a;--blue:#728d98;--error:#ff9384;--line:#f1e5cd2e;--white:#fff8e8;--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;letter-spacing:0}html{background:var(--cinema-black);min-width:320px}body{color:var(--ink);background:var(--cinema-black);-webkit-font-smoothing:antialiased;margin:0;font-family:Manrope,Noto Sans SC,PingFang SC,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{color:inherit;font:inherit}button,a,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}img{max-width:100%;display:block}svg{flex:none}:focus-visible{outline:2px solid var(--rust);outline-offset:3px}::selection{color:var(--cinema-black);background:var(--projector)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-meta,.archive-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;margin:10px 0 0;font-size:12px;display:flex}.page-meta span,.archive-meta span{color:var(--projector);font-size:9px;font-weight:800}.form-error{color:var(--error);margin:0;font-size:13px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-shell{background-color:var(--cinema-black);background-image:linear-gradient(90deg,#0a0b0929 0%,#0a0b0947 48%,#0a0b09db 100%),linear-gradient(#0a0b091f,#0a0b0980),url(/assets/journey-opening-still.jpg);background-position:50%;background-size:cover;place-items:center end;min-height:100dvh;padding:clamp(34px,5vw,76px);display:grid;position:relative;overflow:hidden}.login-shell:before{content:"";z-index:1;opacity:.2;pointer-events:none;mix-blend-mode:screen;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");position:absolute;inset:0}.login-shell:after{content:"";z-index:1;pointer-events:none;box-shadow:inset 0 42px 52px color-mix(in srgb, var(--cinema-black) 70%, transparent), inset 0 -42px 52px color-mix(in srgb, var(--cinema-black) 76%, transparent);position:absolute;inset:0}.login-atmosphere{pointer-events:none;position:absolute;inset:0}.film-line{z-index:2;background:#f1e5cd42;width:1px;height:54vh;position:absolute;transform:rotate(26deg)}.film-line-a{top:-10vh;left:19%}.film-line-b{bottom:-9vh;right:16%}.paired-frame{z-index:2;aspect-ratio:1.8;border:1px solid #f1e5cd29;width:min(60vw,780px);position:absolute;top:50%;left:38%;transform:translate(-50%,-50%)rotate(-4deg)}.paired-frame:before,.paired-frame:after{content:"";border:1px solid #f1e5cd6b;border-radius:50%;width:9px;height:9px;position:absolute;top:50%;transform:translateY(-50%)}.paired-frame:before{left:-5px}.paired-frame:after{right:-5px}.paired-frame i{border:1px solid #f1e5cd14;position:absolute;inset:12%}.paired-frame i+i{inset:24%}.film-gate{z-index:3;border-block:1px solid #f1e5cd47;position:absolute;inset:30px}.film-gate:before,.film-gate:after{content:"";opacity:.55;background:repeating-linear-gradient(to bottom, var(--film-stock) 0 8px, transparent 8px 18px);width:9px;position:absolute;top:14px;bottom:14px}.film-gate:before{left:0}.film-gate:after{right:0}.film-gate>span,.film-gate>b{color:#f1e5cdb8;font-size:8px;line-height:1;position:absolute;left:20px}.film-gate>span{top:15px}.film-gate>b{font-weight:700;bottom:15px}.login-panel{z-index:4;width:min(100%,450px);color:var(--film-stock);box-shadow:0 26px 76px color-mix(in srgb, var(--cinema-black) 48%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d0e0ce0;border-block:1px solid #f1e5cd47;padding:50px 46px 44px;position:relative}.archive-mark,.brand-pair,.album-cover-empty{align-items:center;display:inline-flex}.archive-mark{color:var(--film-stock);font-size:17px;font-weight:800}.archive-mark i,.brand-pair i,.album-cover-empty i{background:var(--rust);width:34px;height:1px;margin:0 8px}.login-panel h1{margin:38px 0 0;font-family:Noto Sans SC,sans-serif;font-size:34px;line-height:1.18}.login-caption{color:var(--projector);margin:9px 0 0;font-size:9px;font-weight:800}.login-date{color:var(--muted);align-items:center;gap:12px;margin:14px 0 34px;font-size:12px;display:flex}.login-date time{color:var(--projector);font-weight:800}.login-form{gap:18px;display:grid}.login-form label,.editor-form label{gap:8px;display:grid}.login-form label span,.editor-form label span{color:var(--muted);font-size:12px;font-weight:700}.login-form input,.editor-form input,.editor-form textarea,.comment-form textarea{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;outline:none;width:100%}.login-form input{height:46px}.login-form input:focus,.editor-form input:focus,.editor-form textarea:focus,.comment-form textarea:focus{border-color:var(--projector)}.login-form button{min-height:52px;color:var(--white);background:var(--rust);grid-template-columns:18px 1fr 18px;align-items:center;margin-top:10px;padding:0 17px;transition:background-color .2s,transform .2s;display:grid}.login-form button:hover{background:#a94332;transform:translateY(-1px)}.login-form button svg{width:17px}.login-form button:disabled{cursor:wait;opacity:.6}.privacy-note{z-index:4;color:#f1e5cd94;margin:0;font-size:8px;position:absolute;bottom:46px;right:52px}.archive-app{background:radial-gradient(circle at 78% 5%, #e0ad6312, transparent 28%), linear-gradient(180deg, #12130f 0, var(--cinema-black) 420px);min-height:100dvh}.app-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d0e0ce6;grid-template-columns:1fr auto 1fr;align-items:center;min-height:78px;padding:0 max(28px,50vw - 660px);display:grid;position:sticky;top:0}.brand{justify-self:start;align-items:center;gap:13px;display:flex}.brand-pair{font-size:11px;font-weight:800}.brand-pair i{width:18px;margin:0 4px}.brand>span:last-child{gap:1px;display:grid}.brand strong{font-size:13px}.brand small{color:var(--projector);font-size:7px;font-weight:800}.desktop-nav{align-items:center;gap:34px;font-size:12px;font-weight:700;display:flex}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";background:var(--rust);height:1px;transition:transform .2s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform:scaleX(1)}.desktop-nav span{color:var(--muted);opacity:.45}.account-menu{justify-self:end;position:relative}.account-menu>summary{cursor:pointer;align-items:center;gap:10px;min-height:52px;padding:4px 0 4px 8px;list-style:none;display:flex}.account-menu>summary::-webkit-details-marker{display:none}.account-menu>summary>svg{width:14px;color:var(--muted);transition:transform .2s}.account-menu[open]>summary>svg{transform:rotate(180deg)}.account-avatar{width:34px;height:34px;color:var(--film-stock);background:color-mix(in srgb, var(--forest) 42%, var(--cinema-raised));border:1px solid #e0ad6385;border-radius:50%;flex:none;place-items:center;font-family:Georgia,serif;font-size:13px;font-weight:700;display:grid;position:relative;overflow:hidden}.account-avatar img{object-fit:cover;width:100%;height:100%}.account-avatar-large{width:46px;height:46px;font-size:17px}.account-identity{gap:1px;min-width:88px;display:grid}.account-identity strong{font-size:11px}.account-identity small{color:var(--muted);font-size:8px}.account-popover{width:274px;box-shadow:0 22px 60px color-mix(in srgb, var(--cinema-black) 72%, transparent);background:#141612fa;border:1px solid #f1e5cd33;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.account-popover:before{content:"";background:#141612;border-top:1px solid #f1e5cd33;border-left:1px solid #f1e5cd33;width:16px;height:16px;position:absolute;top:-9px;right:21px;transform:rotate(45deg)}.account-popover>div{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:10px 9px 16px;display:flex}.account-popover p{gap:3px;margin:0;display:grid}.account-popover p strong{font-size:12px}.account-popover p small{color:var(--projector);font-size:8px}.account-popover>a,.account-popover button{text-align:left;background:0 0;align-items:center;gap:11px;width:100%;min-height:52px;padding:0 10px;display:flex}.account-popover>a:hover,.account-popover button:hover{background:#f1e5cd0f}.account-popover svg{width:17px;height:17px;color:var(--projector)}.account-popover>a>span{gap:2px;font-size:11px;font-weight:800;display:grid}.account-popover>a small{color:var(--muted);font-size:8px;font-weight:400}.account-popover form{border-top:1px solid var(--line)}.account-popover form button{color:var(--muted);font-size:11px;font-weight:700}.mobile-nav{display:none}.page-shell{width:min(100% - 56px,1320px);margin:0 auto;padding:72px 0 110px}.archive-intro{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;padding:22px 0 48px;display:flex;position:relative}.archive-intro:before{content:"QX / TRAVEL FILMS";color:var(--muted);font-size:8px;position:absolute;top:0;right:0}.archive-intro h1,.editor-page h1,.map-page h1,.trash-page h1{margin:10px 0 7px;font-family:Noto Sans SC,sans-serif;font-size:42px;line-height:1.14}.archive-intro>div>p:last-child,.map-page>header>p:last-child{color:var(--muted)}.archive-intro p strong{color:var(--projector);font-size:17px}.primary-command,.secondary-command{justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-size:12px;font-weight:800;display:inline-flex}.primary-command{color:var(--white);background:var(--rust);transition:background-color .2s,transform .2s}.primary-command:hover,.primary-command:focus-visible{background:#a94332;transform:translateY(-1px)}.secondary-command{border:1px solid var(--line);background:0 0}.primary-command svg,.secondary-command svg{width:17px;height:17px}.album-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:88px 30px;padding-top:56px;display:grid}.album-card{grid-column:span 6;min-width:0}.album-card:nth-child(4n+1),.album-card:nth-child(4n+4){grid-column:span 7}.album-card:nth-child(4n+2),.album-card:nth-child(4n+3){grid-column:span 5}.album-card>a{grid-template-columns:minmax(0,1fr);display:grid}.album-cover{aspect-ratio:1.46;background:#080906;border-block:1px solid #f1e5cd38;padding:13px 22px;position:relative;overflow:hidden}.album-card:nth-child(4n+1) .album-cover,.album-card:nth-child(4n+4) .album-cover{aspect-ratio:1.62}.album-card:nth-child(4n+2) .album-cover,.album-card:nth-child(4n+3) .album-cover{aspect-ratio:1.16}.album-cover:before,.album-cover:after{content:"";z-index:2;opacity:.5;background:repeating-linear-gradient(to bottom, var(--film-stock) 0 7px, transparent 7px 16px);width:8px;position:absolute;top:10px;bottom:10px}.album-cover:before{left:6px}.album-cover:after{right:6px}.album-cover img{object-fit:cover;filter:saturate(.88)contrast(1.04);width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1),filter .35s}.album-card a:hover .album-cover img{filter:saturate()contrast(1.02);transform:scale(1.025)}.album-cover-empty{color:#f1e5cd85;background:linear-gradient(135deg, color-mix(in srgb, var(--forest) 35%, var(--cinema-raised)), var(--cinema-raised));justify-content:center;width:100%;height:100%;font-size:36px}.album-cover-empty i{width:80px}.album-index{z-index:3;min-width:32px;color:var(--film-stock);text-align:center;background:#080906cc;padding:6px 8px;font-size:8px;position:absolute;top:22px;left:34px}.album-card-copy{padding:20px 46px 0 0;position:relative}.album-card-copy>div{color:var(--muted);text-transform:uppercase;align-items:center;gap:16px;font-size:9px;font-weight:800;display:flex}.album-card-copy>div span{color:var(--projector)}.album-card-copy h2{margin:9px 0 7px;font-family:Noto Sans SC,sans-serif;font-size:25px}.album-card-copy p{color:var(--muted);margin:0;font-family:Georgia,serif;font-size:14px}.album-card-copy p:before{content:"“"}.album-card-copy p:after{content:"”"}.album-card-copy>svg{width:22px;color:var(--rust);transition:transform .25s;position:absolute;top:30px;right:3px}.album-card a:hover .album-card-copy>svg{transform:translate(4px,-4px)}.empty-archive{text-align:center;justify-items:center;max-width:470px;margin:100px auto 0;display:grid}.empty-film{border:1px solid var(--line);grid-template-columns:38px 1fr 1fr 1fr;gap:6px;width:260px;height:72px;padding:7px;display:grid}.empty-film span,.empty-film i{background:var(--paper-deep);place-items:center;display:grid}.empty-film span{color:var(--rust);font-size:10px}.empty-film i:nth-child(3){background:color-mix(in srgb, var(--moss) 54%, var(--film-paper))}.empty-film i:nth-child(4){background:color-mix(in srgb, var(--rust) 22%, var(--film-paper))}.empty-archive h2{margin:30px 0 16px;font-size:23px}.empty-archive a{border-bottom:1px solid var(--forest);font-size:12px;font-weight:800}.editor-page{width:min(100% - 40px,860px)}.editor-page>header{margin-bottom:42px}.editor-form{border:1px solid var(--line);background:var(--cinema-raised);padding:34px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 24px;display:grid}.field-wide{grid-column:1/-1}.editor-form input{height:44px}.editor-form textarea{resize:vertical;line-height:1.7}.form-actions{justify-content:space-between;align-items:center;margin-top:34px;display:flex}.form-actions a,.form-actions button{align-items:center;gap:8px;min-height:46px;padding:0 17px;font-size:12px;font-weight:800;display:inline-flex}.form-actions button{color:var(--white);background:var(--rust)}.form-actions svg{width:16px}.settings-page{width:min(100% - 40px,820px)}.settings-page>header{border-bottom:1px solid var(--line);padding:10px 0 24px}.settings-page>header h1{margin:0 0 7px;font-family:Noto Sans SC,sans-serif;font-size:34px;line-height:1.14}.settings-page>header>p:last-child{color:var(--muted);margin:0;font-size:13px}.settings-sections{display:grid}.settings-row{border-bottom:1px solid var(--line);grid-template-columns:156px minmax(0,1fr);gap:32px;padding:30px 0 32px;display:grid}.settings-label{align-content:start;display:grid}.settings-label h2{margin:0 0 7px;font-size:18px}.settings-label p{max-width:156px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.settings-profile-editor{gap:24px;display:grid}.avatar-editor{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding-bottom:24px;display:flex}.avatar-preview{width:82px;height:82px;color:var(--film-stock);background:color-mix(in srgb, var(--forest) 45%, var(--cinema-raised));border:1px solid #e0ad637a;border-radius:50%;flex:none;place-items:center;font-family:Georgia,serif;font-size:28px;display:grid;position:relative;overflow:visible}.avatar-preview>img{object-fit:cover;border-radius:50%;width:100%;height:100%}.avatar-preview>i{border:2px solid var(--cinema-black);width:32px;height:32px;color:var(--white);background:var(--rust);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:2px;right:0}.avatar-preview>i svg{width:14px;height:14px}.avatar-editor input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.avatar-editor>div{gap:8px;display:grid}.avatar-editor>div>strong{font-size:14px}.avatar-editor small,.settings-form>small{color:var(--muted);font-size:10px}.settings-actions{align-items:center;gap:8px;display:flex}.text-command{min-height:46px;color:var(--muted);background:0 0;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.text-command svg{width:15px;height:15px}.settings-form{gap:14px;display:grid}.settings-name-grid,.settings-password-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-password-grid>label:first-child{grid-column:1/-1}.settings-form label{gap:7px;display:grid}.settings-form label>span{color:var(--muted);font-size:11px;font-weight:700}.settings-form input{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;outline:none;width:100%;height:45px}.settings-form input:focus{border-color:var(--projector)}.settings-form input:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}.settings-form>button{justify-self:start;margin-top:4px}.form-success{color:var(--moss);align-items:center;gap:7px;margin:0;font-size:12px;display:flex}.form-success svg{width:15px;height:15px}.settings-row button:disabled{cursor:wait;opacity:.55}.security-setting{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px 18px;min-height:72px;display:grid}.security-setting-copy{align-items:center;gap:12px;min-width:0;display:flex}.security-setting-copy>span{width:42px;height:42px;color:var(--journal-amber-deep);background:var(--journal-cream);border-radius:50%;flex:none;place-items:center;display:grid}.security-setting-copy svg{width:18px;height:18px}.security-setting-copy>div{gap:4px;min-width:0;display:grid}.security-setting-copy strong{font-size:13px}.security-setting-copy small{color:var(--journal-muted);font-size:10px;line-height:1.5}.security-setting>.form-success{grid-column:1/-1}.password-dialog{border:1px solid var(--journal-line);width:min(100% - 32px,500px);max-height:min(720px,100dvh - 32px);color:var(--journal-ink);background:var(--journal-surface);border-radius:6px;padding:0;overflow:auto;box-shadow:0 30px 80px #452b144d}.password-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#311f117a}.password-dialog-content{gap:24px;padding:26px;display:grid}.password-dialog-content>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:start;padding-bottom:18px;display:flex}.password-dialog-content>header>div{align-items:center;gap:12px;display:flex}.password-dialog-content>header>div>span{color:#fff;background:var(--journal-amber);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.password-dialog-content>header svg{width:18px;height:18px}.password-dialog-content h2{margin:0;font-size:20px}.password-dialog-content header p{color:var(--journal-muted);margin:5px 0 0;font-size:10px;line-height:1.55}.password-dialog-content>header>button{width:44px;height:44px;color:var(--journal-muted);background:0 0;place-items:center;display:grid}.password-dialog-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.album-story{width:min(100%,1500px);margin:0 auto;padding-bottom:120px}.story-header{text-align:center;width:min(100% - 56px,1080px);margin:0 auto;padding:58px 0 42px}.story-header nav{justify-content:space-between;display:flex}.story-header nav a{align-items:center;gap:7px;min-height:44px;font-size:11px;font-weight:800;display:inline-flex}.story-header nav svg{width:16px}.story-header>p{color:var(--projector);text-transform:uppercase;margin:14px 0 0;font-size:11px;font-weight:800}.story-header h1{max-width:860px;margin:0 auto;font-family:Noto Sans SC,sans-serif;font-size:48px;line-height:1.14}.story-header blockquote{color:var(--muted);margin:18px 0 0;font-family:Georgia,serif;font-size:16px}.story-hero{aspect-ratio:2.18;background:#080906;border-block:1px solid #f1e5cd38;width:min(100% - 56px,1320px);margin:0 auto;padding:14px 28px;position:relative;overflow:hidden}.story-hero:before,.story-hero:after{content:"";z-index:2;opacity:.5;background:repeating-linear-gradient(to bottom, var(--film-stock) 0 8px, transparent 8px 18px);width:9px;position:absolute;top:10px;bottom:10px}.story-hero:before{left:7px}.story-hero:after{right:7px}.story-hero img{object-fit:cover;filter:saturate(.9)contrast(1.04);width:100%;height:100%}.story-copy{grid-template-columns:180px minmax(0,640px);gap:42px;width:min(100% - 56px,920px);margin:80px auto;display:grid}.story-copy>span{color:var(--projector);font-size:10px;font-weight:800}.story-copy p{margin:0 0 1.1em;font-family:Georgia,Noto Sans SC,serif;font-size:17px;line-height:1.9}.map-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:min(100% - 56px,1100px);margin:64px auto}.map-panel>header{justify-content:space-between;align-items:center;min-height:58px;display:flex}.map-panel>header span{align-items:center;gap:8px;font-size:12px;display:flex}.map-panel>header svg{width:16px;color:var(--projector)}.map-panel>header small{color:var(--muted);font-size:10px}.amap-canvas,.map-fallback{background:var(--paper-deep);width:100%;min-height:430px}.map-marker{border:2px solid var(--film-stock);width:34px;height:34px;color:var(--white);background:var(--rust);box-shadow:0 6px 18px color-mix(in srgb, var(--cinema-black) 34%, transparent);border-radius:50%;place-items:center;font-size:10px;display:grid}.map-fallback{align-content:center;padding:32px;display:grid}.map-fallback>p{color:var(--muted);text-align:center}.map-fallback ol{max-width:520px;margin:0 auto;padding:0;list-style:none;display:grid}.map-fallback li{border-bottom:1px solid var(--line);justify-content:space-between;padding:12px 0;display:flex}.map-fallback li span{font-weight:700}.map-fallback li small{color:var(--muted)}.map-fallback button{background:0 0;justify-self:center;align-items:center;gap:7px;margin-top:18px;display:inline-flex}.upload-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:12px;width:min(100% - 56px,1100px);margin:64px auto;padding:20px 0;display:grid}.upload-panel>div{align-items:center;gap:12px;display:flex}.upload-panel>div>svg{width:22px;color:var(--projector)}.upload-panel>div span{gap:2px;display:grid}.upload-panel strong{font-size:13px}.upload-panel small{color:var(--muted);font-size:9px}.upload-panel>input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.upload-panel .form-error{grid-column:1/-1}.photo-journal{gap:118px;width:min(100% - 56px,1220px);margin:110px auto;display:grid}.photo-entry{grid-template-columns:minmax(0,2.1fr) minmax(250px,.8fr);align-items:start;gap:36px;display:grid}.photo-entry:nth-child(2n) figure{order:2}.photo-entry figure{background-color:#080906;background-image:linear-gradient(90deg,#0000 0 12px,#f1e5cd14 12px 13px,#0000 13px calc(100% - 13px),#f1e5cd14 calc(100% - 13px) calc(100% - 12px),#0000 calc(100% - 12px));border-block:1px solid #f1e5cd2e;margin:0;padding:30px 24px 0;position:relative}.photo-entry figure:before{content:attr(data-frame);color:#f1e5cdad;font-size:7px;position:absolute;top:11px;left:24px}.photo-entry figure:after{content:"";opacity:.5;background:repeating-linear-gradient(to right, var(--film-stock) 0 7px, transparent 7px 13px);width:52px;height:5px;position:absolute;top:8px;right:24px}.photo-entry figure>img{object-fit:contain;background:#10120e;width:100%;max-height:76vh}.photo-entry figcaption{border-bottom:0;grid-template-columns:34px 1fr 20px;align-items:start;gap:12px;padding:18px 0 20px;display:grid}.photo-entry figcaption>span{color:var(--projector);font-size:10px;font-weight:800}.photo-entry figcaption>div{gap:3px;display:grid}.photo-entry figcaption strong{font-size:12px}.photo-entry figcaption time{color:var(--muted);font-size:9px}.photo-entry figcaption p{margin:8px 0 0;font-family:Georgia,serif;font-size:14px}.photo-entry figcaption svg{width:16px;color:var(--projector)}.comment-thread{gap:14px;padding-top:8px;display:grid;position:sticky;top:108px}.comment{grid-template-columns:34px 1fr;gap:10px;display:grid}.comment>span{border:1px solid var(--line);width:34px;height:34px;color:var(--film-stock);background:0 0;border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.comment>div{border-bottom:1px solid var(--line);padding-bottom:12px}.comment strong{font-size:11px}.comment p{margin:4px 0;font-size:13px;line-height:1.55}.comment time{color:var(--muted);font-size:8px}.comment-form{grid-template-columns:1fr 44px;align-items:end;gap:8px;display:grid;position:relative}.comment-form textarea{resize:vertical;min-height:52px;padding:8px 0;line-height:1.5}.comment-form button{width:44px;height:44px;color:var(--white);background:var(--rust);place-items:center;display:grid}.comment-form button svg{width:16px}.comment-form .form-error{grid-column:1/-1}.story-empty{text-align:center;margin:80px auto}.story-empty h2{font-size:24px}.story-empty p{color:var(--muted)}.story-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;width:min(100% - 56px,1100px);margin:100px auto 0;padding-top:22px;display:flex}.story-footer button{min-height:44px;color:var(--muted);background:0 0;align-items:center;gap:7px;font-size:10px;display:inline-flex}.story-footer button svg{width:15px}.story-footer>span{color:var(--muted);font-size:8px}.map-page>header,.trash-page>header{margin-bottom:36px}.map-page .map-panel{width:100%;margin:0}.map-page .amap-canvas,.map-page .map-fallback{min-height:min(650px,66dvh)}.trash-list{border-top:1px solid var(--line);display:grid}.trash-list article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:82px;display:flex}.trash-list article>div{gap:5px;display:grid}.trash-list article strong{font-size:15px}.trash-list article span{color:var(--muted);font-size:10px}.trash-list button{background:0 0;align-items:center;gap:7px;min-height:44px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.trash-list button svg{width:15px}@media (max-width:800px){.app-header{min-height:64px;padding:env(safe-area-inset-top,0) 16px 0;grid-template-columns:1fr auto}.desktop-nav{display:none}.account-menu>summary{min-height:52px;padding-left:0}.account-identity,.account-menu>summary>svg{display:none}.account-avatar{width:36px;height:36px}.account-popover{width:min(286px,100vw - 32px);top:calc(100% + 5px)}.mobile-nav{z-index:60;min-height:calc(62px + var(--safe-bottom));padding:5px 8px var(--safe-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d0e0cf5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav a,.mobile-nav>span{min-width:0;min-height:52px;color:var(--muted);align-content:center;place-items:center;gap:3px;font-size:9px;display:grid}.mobile-nav a[aria-current=page]{color:var(--projector)}.mobile-nav svg{width:19px;height:19px}.mobile-nav .nav-deferred{opacity:.38}.page-shell{width:min(100% - 32px,720px);padding:40px 0 calc(100px + var(--safe-bottom))}.archive-intro{align-items:start;gap:26px}.archive-intro h1,.editor-page h1,.map-page h1,.trash-page h1,.settings-page>header h1{font-size:32px}.archive-intro .primary-command{flex:none;min-width:46px;padding:0 13px}.album-grid{grid-template-columns:1fr;gap:62px;padding-top:40px}.album-card,.album-card:nth-child(n){grid-column:1}.album-card:nth-child(n) .album-cover{aspect-ratio:1.42}.album-card-copy h2{font-size:22px}.story-header{width:calc(100% - 32px);padding-top:30px}.story-header>p{margin-top:12px}.story-header h1{margin-top:26px;font-size:34px}.story-header blockquote{font-size:14px}.story-hero{aspect-ratio:1.1;width:100%;padding:12px 20px}.story-copy{grid-template-columns:1fr;gap:18px;width:calc(100% - 32px);margin:54px auto}.story-copy p{font-size:16px}.map-panel,.upload-panel,.photo-journal,.story-footer{width:calc(100% - 32px)}.amap-canvas,.map-fallback{min-height:360px}.upload-panel{grid-template-columns:1fr auto}.upload-panel>div{grid-column:1/-1}.upload-panel .secondary-command{justify-self:stretch}.photo-journal{gap:72px;margin-top:72px}.photo-entry{grid-template-columns:1fr;gap:20px}.photo-entry:nth-child(2n) figure{order:0}.photo-entry figure{width:calc(100% + 32px);margin-left:-16px;padding-inline:16px}.photo-entry figure:before{left:16px}.photo-entry figure:after{right:16px}.comment-thread{padding-top:0;position:static}.editor-form{padding:24px 18px}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.settings-page{width:min(100% - 32px,820px)}.settings-page>header{padding:2px 0 22px}.settings-row{grid-template-columns:1fr;gap:18px;padding:26px 0 28px}.settings-label p{max-width:none}.settings-name-grid,.settings-password-grid{grid-template-columns:1fr;gap:14px}.settings-password-grid>label:first-child{grid-column:auto}}@media (max-width:480px){.login-shell{padding:max(68px, calc(env(safe-area-inset-top) + 54px)) 16px max(20px, env(safe-area-inset-bottom));background-image:linear-gradient(#0a0b0933 0%,#0a0b0994 38%,#0a0b09f0 100%),url(/assets/journey-opening-still.jpg);background-position:42%;place-items:end stretch}.login-atmosphere{display:block}.film-gate{inset:14px}.film-gate>b{display:none}.paired-frame,.film-line{opacity:.32}.login-panel{width:100%;min-height:0;box-shadow:0 18px 54px color-mix(in srgb, var(--cinema-black) 42%, transparent);background:#0d0e0cdb;border-color:#f1e5cd33;align-content:center;padding:30px 24px 28px;display:grid}.privacy-note{display:none}.login-panel h1{margin-top:28px}.login-date{margin-bottom:26px}.login-panel h1{font-size:30px}.brand>span:last-child small{display:none}.archive-intro{display:grid}.archive-intro .primary-command{justify-self:start}.album-card-copy>div{flex-direction:column;align-items:start;gap:3px}.story-header nav{gap:12px}.story-header nav a{font-size:10px}.map-fallback{padding:18px}.map-fallback li{flex-direction:column;align-items:start;gap:12px}.story-footer{flex-direction:column;align-items:start;gap:20px}.avatar-editor{flex-direction:row;align-items:center}.avatar-preview{width:76px;height:76px}.settings-form>button{width:100%}.security-setting{grid-template-columns:1fr}.security-setting>.secondary-command{width:100%}.password-dialog{border-bottom:0;border-left:0;border-right:0;border-radius:6px 6px 0 0;width:100%;max-width:none;max-height:calc(100dvh - 20px);margin:auto 0 0}.password-dialog-content{padding:22px 18px calc(22px + env(safe-area-inset-bottom))}.password-dialog-actions{grid-template-columns:1fr 1.4fr;display:grid}.password-dialog-actions button{justify-content:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
:root{--journal-sun:#d9a441;--journal-amber:#a67224;--journal-amber-deep:#765018;--journal-leaf:#7d8458;--journal-cream:#fff4d0;--journal-bg:#faf3dc;--journal-surface:#fffdf8;--journal-ink:#403020;--journal-muted:#796957;--journal-green:var(--journal-amber);--journal-coral:#c7654f;--journal-coral-light:#f19a79;--journal-blue:#6d8792;--journal-yellow:var(--journal-sun);--journal-paper-deep:#f1dcae;--journal-photo-mat:#f3e9d6;--journal-line:#6546232e;--journal-shadow:0 24px 60px #67461f2b}.archive-app{min-height:100dvh;color:var(--journal-ink);background-color:var(--journal-bg);--paper:var(--journal-bg);--paper-deep:var(--journal-paper-deep);--ink:var(--journal-ink);--muted:var(--journal-muted);--forest:var(--journal-green);--moss:#7d965d;--rust:var(--journal-coral);--blue:var(--journal-blue);--error:#a73d37;--line:var(--journal-line);--white:#fffdf8;--projector:var(--journal-yellow);background-image:linear-gradient(#fffcefad,#0000 420px),repeating-linear-gradient(90deg,#7c532005 0 1px,#0000 1px 68px)}.archive-app>main{animation:.52s cubic-bezier(.16,1,.3,1) both journal-page-enter}.archive-app :focus-visible{outline-color:#9c591f}.archive-app .form-error{color:#a73d37}.archive-app .form-success{color:#65733e}.app-header{z-index:70;-webkit-backdrop-filter:blur(18px)saturate(1.12);isolation:isolate;background-color:#d9a441e0;border-bottom:1px solid #794f182e;grid-template-columns:1fr auto 1fr;align-items:center;min-height:60px;padding:0 max(24px,50vw - 660px);transition:background-color .36s,border-color .36s,box-shadow .36s,-webkit-backdrop-filter .36s,backdrop-filter .36s;display:grid;position:sticky;top:0;box-shadow:0 12px 34px #5b3a1521}.app-header:before{content:"";z-index:-1;pointer-events:none;opacity:.78;background:linear-gradient(96deg,#fff8dd61,#0000 38%,#ffeeb842 72%,#fffdf13d);transition:opacity .36s;position:absolute;inset:0}.app-header>*{z-index:1;position:relative}.app-header[data-scrolled=false]{background-color:#d9a441e0;border-bottom-color:#794f1833}.app-header[data-scrolled=true]{-webkit-backdrop-filter:blur(26px)saturate(1.16);background-color:#faebc2c7;border-bottom-color:#794f181f;box-shadow:0 9px 30px #5d3e1a1a}.app-header[data-scrolled=true]:before{opacity:.44}.brand{justify-self:start;align-items:center;gap:12px;display:flex}.brand-pair{color:var(--journal-amber-deep);align-items:center;gap:6px;font-size:13px;display:inline-flex}.brand-pair svg{color:#b95843;width:13px;height:13px;fill:color-mix(in srgb, var(--journal-sun) 48%, transparent)}.brand>span:last-child{gap:2px;display:grid}.brand strong{color:var(--journal-ink);font-size:12px}.brand small{color:var(--journal-muted);font-size:8px;font-weight:700}.desktop-nav{color:#5d462e;background:#fff9e26b;border:1px solid #6642162e;border-radius:6px;grid-template-columns:repeat(2,minmax(92px,1fr));align-items:center;gap:3px;min-width:200px;padding:3px;font-size:12px;font-weight:800;display:grid;box-shadow:inset 0 1px #ffffff94}.desktop-nav a{border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 13px;transition:color .22s,background-color .22s,box-shadow .22s;display:inline-flex;position:relative}.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--journal-ink);background:#d9a44124}.desktop-nav a[aria-current=page]{color:var(--journal-ink);background:#fffdf1b8;box-shadow:0 5px 16px #6342191a,inset 0 0 0 1px #a672241f}.desktop-nav a[aria-current=page]:after{transform:scaleX(.42)}.desktop-nav svg{width:18px;height:18px;color:var(--journal-amber-deep)}.desktop-nav a:after{content:"";background:var(--journal-green);height:2px;transition:transform .25s cubic-bezier(.16,1,.3,1);position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform:scaleX(1)}.account-menu{justify-self:end;position:relative}.account-menu>summary{width:max-content;min-height:52px;color:var(--journal-ink);cursor:pointer;align-items:center;gap:7px;padding:4px 0 4px 8px;list-style:none;display:flex}.account-menu>summary::-webkit-details-marker{display:none}.account-menu>summary>svg{width:14px;color:var(--journal-muted);transition:transform .2s}.account-menu[open]>summary>svg{transform:rotate(180deg)}.account-avatar{border:2px solid var(--journal-cream);color:#fff;background:var(--journal-amber);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 18px #7e4f1538}.account-avatar img{object-fit:cover;width:100%;height:100%}.account-avatar-large{width:48px;height:48px;font-size:17px}.account-identity{flex:0 auto;gap:1px;min-width:0;max-width:112px;display:grid}.account-identity strong{font-size:11px}.account-identity small{color:var(--journal-muted);font-size:8px}.account-popover{border:1px solid var(--journal-line);background:var(--journal-surface);width:278px;box-shadow:var(--journal-shadow);border-radius:6px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.account-popover:before{content:"";border-top:1px solid var(--journal-line);border-left:1px solid var(--journal-line);background:var(--journal-surface);width:14px;height:14px;position:absolute;top:-8px;right:22px;transform:rotate(45deg)}.account-popover>div{border-bottom:1px solid var(--journal-line);align-items:center;gap:12px;padding:10px 9px 16px;display:flex}.account-popover p{gap:3px;margin:0;display:grid}.account-popover p strong{font-size:12px}.account-popover p small{color:var(--journal-coral);font-size:9px}.account-popover>a,.account-popover button{width:100%;min-height:52px;color:var(--journal-ink);text-align:left;background:0 0;align-items:center;gap:11px;padding:0 10px;display:flex}.account-popover>a:hover,.account-popover button:hover{background:var(--journal-cream)}.account-popover svg{width:17px;height:17px;color:var(--journal-green)}.account-popover>a>span{gap:2px;font-size:11px;font-weight:800;display:grid}.account-popover>a small{color:var(--journal-muted);font-size:8px;font-weight:400}.account-popover form{border-top:1px solid var(--journal-line)}.account-popover form button{color:var(--journal-muted);font-size:11px;font-weight:700}.header-actions{justify-self:end;align-items:center;gap:10px;display:flex}.primary-command,.secondary-command{border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-size:12px;font-weight:800;display:inline-flex}.primary-command{color:#fff;background:var(--journal-green);transition:background-color .2s,transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s}.primary-command:not(:disabled):hover,.primary-command:not(:disabled):focus-visible{background:var(--journal-amber-deep);transform:translateY(-2px);box-shadow:0 9px 26px #7545133d}.primary-command:disabled{cursor:default;opacity:.48;box-shadow:none;transform:none}.primary-command[aria-busy=true]{cursor:wait}.secondary-command{border:1px solid var(--journal-line);background:var(--journal-surface)}.primary-command svg,.secondary-command svg{width:17px;height:17px}.albums-page{background-color:var(--journal-bg);background-image:linear-gradient(#fffbebb8,#0000 620px),repeating-linear-gradient(0deg,#754c1b05 0 1px,#0000 1px 54px);min-height:calc(100dvh - 68px);padding:24px 0 120px}.journey-index{width:min(100% - 56px,1320px);margin:0 auto}.journey-masthead{color:#fffaf0;min-height:clamp(250px,28vw,350px);box-shadow:var(--journal-shadow);isolation:isolate;background:#5a3618;border-radius:6px;justify-content:space-between;align-items:end;padding:clamp(28px,4vw,52px);display:flex;position:relative;overflow:hidden}.journey-masthead-photo{z-index:-2;object-fit:cover;object-position:center 56%;filter:saturate(.98)contrast(1.02);width:100%;height:100%;position:absolute;inset:0}.journey-masthead-shade{z-index:-1;background:linear-gradient(90deg,#3f230cc7,#4b2b1061 48%,#301b0c2e),linear-gradient(#371f0d0f,#2d1b0d85);position:absolute;inset:0}.journey-masthead:after{content:"2023 · OUR JOURNEYS · PRESENT";color:#fff7dca8;font-size:8px;font-weight:800;position:absolute;top:22px;right:24px}.journey-couple{color:#ffd778;align-items:center;gap:9px;width:max-content;margin-bottom:16px;font-size:11px;display:inline-flex}.journey-couple svg{color:#ac5946;fill:#f2c14e52;width:14px;height:14px}.journey-masthead h1{margin:0;font-family:Noto Sans SC,sans-serif;font-size:clamp(34px,4vw,54px);line-height:1.1}.journey-masthead p{color:#fff7e0c7;margin:11px 0 0;font-size:13px}.journey-masthead .primary-command{color:var(--journal-ink);background:var(--journal-sun);box-shadow:0 12px 30px #3d240c38}.journey-masthead .primary-command:hover,.journey-masthead .primary-command:focus-visible{color:#fffaf0;background:var(--journal-amber-deep)}.journey-stats{border:1px solid var(--journal-line);background:#fffaeae0;border-radius:4px;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-height:76px;margin:18px 0 0;padding:0;display:grid;box-shadow:0 12px 30px #5b3a181a}.journey-stats>div{grid-template-rows:auto auto;grid-template-columns:22px auto;place-content:center;gap:0 9px;padding:12px;display:grid;position:relative}.journey-stats>div+div:before{content:"";background:var(--journal-line);width:1px;position:absolute;top:18px;bottom:18px;left:0}.journey-stats svg{width:19px;color:var(--journal-amber);grid-row:1/3;align-self:center}.journey-stats dd{color:var(--journal-ink);margin:0;font-size:20px;font-weight:800;line-height:1}.journey-stats dt{color:var(--journal-muted);margin-top:5px;font-size:9px;font-weight:700}.journey-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.5vw,20px);padding-top:20px;display:grid}.journey-gallery>.album-card{grid-column:auto}.album-card{min-width:0}.album-card>a{background:#4b321c;border-radius:4px;min-width:0;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 38px #51371c29}.journey-card-photo{aspect-ratio:4/3;background:var(--journal-surface);contain:paint;padding:0;transition:transform .45s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.journey-card-photo:after{content:"";pointer-events:none;background:linear-gradient(#26180b05 68%,#26180bdb);position:absolute;inset:0}.journey-card-photo img{object-fit:cover;filter:saturate(.9)sepia(.03);width:100%;height:100%;transition:filter .35s,transform .65s cubic-bezier(.16,1,.3,1)}.journey-magazine-grid{background:#fff8e8;grid-template:repeat(2,minmax(0,1fr))/repeat(12,minmax(0,1fr));gap:2px;display:grid;position:absolute;inset:0}.journey-magazine-frame{min-width:0;min-height:0;position:relative;overflow:hidden}.journey-magazine-frame:first-child{grid-area:1/1/3/13}.journey-magazine-grid-2 .journey-magazine-frame:first-child{grid-column-end:9}.journey-magazine-grid-2 .journey-magazine-frame:nth-child(2){grid-area:1/9/3/13}.journey-magazine-grid-3 .journey-magazine-frame:first-child,.journey-magazine-grid-4 .journey-magazine-frame:first-child{grid-column-end:9}.journey-magazine-grid-3 .journey-magazine-frame:nth-child(2),.journey-magazine-grid-4 .journey-magazine-frame:nth-child(2){grid-area:1/9/2/13}.journey-magazine-grid-3 .journey-magazine-frame:nth-child(3){grid-area:2/9/3/13}.journey-magazine-grid-4 .journey-magazine-frame:nth-child(3){grid-area:2/9/3/11}.journey-magazine-grid-4 .journey-magazine-frame:nth-child(4){grid-area:2/11/3/13}.album-card a:hover,.album-card a:focus-visible{transform:translateY(-5px);box-shadow:0 24px 48px #65401b38}.album-card a:hover .journey-card-photo img,.album-card a:focus-visible .journey-card-photo img{filter:saturate();transform:scale(1.025)}.journey-pin{z-index:2;background:var(--journal-sun);border:1px solid #fffdf6f0;border-radius:50%;width:8px;height:8px;position:absolute;top:12px;right:12px;box-shadow:0 4px 10px #58401438}.album-cover-empty{width:100%;height:100%;color:var(--journal-green);background:var(--journal-paper-deep);justify-content:center;align-items:center;gap:9px;font-size:18px;display:flex}.album-cover-empty svg{width:20px;color:var(--journal-coral);fill:#c65d522e}.album-card-copy{z-index:2;color:#fff;min-width:0;padding:32px 34px 12px 14px;position:absolute;bottom:0;left:0;right:0}.album-card-copy>div{color:#ffffffc2;justify-content:space-between;align-items:center;gap:10px;min-width:0;font-size:8px;display:flex}.album-card-copy>div span{color:#ffe08d;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;min-width:0;font-weight:800;display:flex;overflow:hidden}.album-card-copy>div svg{flex:none;width:12px;height:12px}.album-card-copy time{flex:none}.album-card-copy h2{text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-family:Noto Sans SC,sans-serif;font-size:clamp(15px,1.45vw,19px);line-height:1.25;overflow:hidden}.album-card-copy p{display:none}.journey-card-count{color:#ffe08d;align-items:center;gap:5px;margin-top:4px;font-size:8px;font-weight:800;display:inline-flex}.journey-card-count svg{width:12px;height:12px}.album-card-copy>svg{color:#ffe08d;width:16px;transition:transform .25s;position:absolute;bottom:14px;right:13px}.album-card a:hover .album-card-copy>svg{transform:translate(3px,-3px)}.empty-archive{text-align:center;justify-items:center;max-width:520px;margin:90px auto 0;display:grid}.empty-archive>svg{width:36px;color:var(--journal-coral);fill:#c65d521f}.empty-archive h2{margin:24px 0 10px;font-size:23px}.empty-archive p{color:var(--journal-muted);margin:0 0 22px}.empty-archive a{color:var(--journal-green);border-bottom:1px solid;font-size:12px;font-weight:800}.page-shell{width:min(100% - 56px,1180px);margin:0 auto;padding:72px 0 120px}.editor-page{width:min(100% - 40px,860px)}.album-create-page{min-height:calc(100svh - 60px);padding-top:38px;padding-bottom:38px}.editor-page.album-create-page>header{margin-bottom:22px;padding-bottom:16px}.album-create-page .editor-form{padding:26px 30px;animation:.7s cubic-bezier(.16,1,.3,1) both album-form-reveal}.album-create-page .form-grid{gap:18px 22px}.album-create-page .form-actions{margin-top:22px}.editor-page>header,.map-page>header,.trash-page>header,.settings-page>header{border-bottom:1px solid var(--journal-line);margin-bottom:40px;padding-bottom:26px}.editor-page h1,.map-page h1,.trash-page h1,.settings-page>header h1{margin:0 0 9px;font-family:Noto Sans SC,sans-serif;font-size:40px;line-height:1.15}.page-meta{color:var(--journal-muted);margin:0;font-size:13px}.editor-form{border:1px solid var(--journal-line);background:var(--journal-surface);border-radius:6px;padding:34px;box-shadow:0 14px 38px #65401b17}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 24px;display:grid}.field-wide{grid-column:1/-1}.editor-form label{gap:8px;min-width:0;display:grid}.editor-form label span{color:var(--journal-muted);align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.editor-form label span svg{width:15px;height:15px;color:var(--journal-coral);stroke-width:1.8px}.date-field-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.album-manager-form .album-title-field,.album-manager-form .album-location-field{grid-column:1/-1}.editor-form input,.editor-form textarea{border:0;border-bottom:1px solid var(--journal-line);background:0 0;border-radius:0;outline:none;width:100%}.editor-form input{height:44px}.editor-form textarea{resize:vertical;line-height:1.7}.editor-form input:focus,.editor-form textarea:focus{border-color:var(--journal-green)}.form-actions{justify-content:space-between;align-items:center;margin-top:34px;display:flex}.form-actions a,.form-actions button{align-items:center;gap:8px;min-height:46px;padding:0 17px;font-size:12px;font-weight:800;display:inline-flex}.form-actions button{color:#fff;background:var(--journal-green);border-radius:4px}.form-actions svg{width:16px}.settings-page{width:min(100% - 40px,820px)}.settings-page>header{margin-bottom:0;padding:10px 0 24px}.settings-page>header h1{font-size:34px}.settings-page>header>p:last-child{color:var(--journal-muted);margin:0;font-size:13px}.settings-sections{display:grid}.settings-row{border-bottom:1px solid var(--journal-line);grid-template-columns:156px minmax(0,1fr);gap:32px;padding:30px 0 32px;display:grid}.settings-label{align-content:start;display:grid}.settings-label h2{margin:0 0 7px;font-size:18px}.settings-label p{max-width:156px;color:var(--journal-muted);margin:0;font-size:12px;line-height:1.6}.settings-profile-editor{gap:24px;display:grid}.avatar-editor{border-bottom:1px solid var(--journal-line);align-items:center;gap:18px;padding-bottom:24px;display:flex}.avatar-preview{border:4px solid var(--journal-surface);color:#fff;background:var(--journal-amber);border-radius:50%;flex:none;place-items:center;width:82px;height:82px;font-size:28px;display:grid;position:relative;overflow:visible;box-shadow:0 12px 32px #7e4f1533}.avatar-preview>img{object-fit:cover;border-radius:50%;width:100%;height:100%}.avatar-preview>i{border:2px solid var(--journal-bg);color:#fff;background:var(--journal-coral);border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;bottom:2px;right:0}.avatar-preview>i svg{width:14px;height:14px}.avatar-editor input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.avatar-editor>div{gap:8px;display:grid}.avatar-editor>div>strong{font-size:14px}.avatar-editor small,.settings-form>small{color:var(--journal-muted);font-size:10px}.settings-actions{align-items:center;gap:8px;display:flex}.text-command{min-height:46px;color:var(--journal-muted);background:0 0;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.text-command svg{width:15px;height:15px}.settings-form{gap:14px;display:grid}.settings-name-grid,.settings-password-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-password-grid>label:first-child{grid-column:1/-1}.settings-form label{gap:7px;display:grid}.settings-form label>span{color:var(--journal-muted);font-size:11px;font-weight:700}.settings-form input{border:0;border-bottom:1px solid var(--journal-line);background:0 0;border-radius:0;outline:none;width:100%;height:45px}.settings-form input:focus{border-color:var(--journal-green)}.settings-form input:disabled{color:var(--journal-muted);cursor:not-allowed;opacity:.55}.settings-form>button{justify-self:start;margin-top:4px}.settings-row button:disabled{cursor:wait;opacity:.55}.admin-page{width:min(100% - 56px,1120px)}.admin-page>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:end;gap:24px;min-height:94px;padding:10px 0 24px;display:flex}.admin-page>header h1{margin:0;font-size:34px;line-height:1.15}.admin-page>header p{max-width:60ch;color:var(--journal-muted);margin:8px 0 0;font-size:12px;line-height:1.6}.admin-page>header>span{color:var(--journal-amber-deep);flex:none;font-size:10px;font-weight:800}.admin-account-manager{display:grid}.admin-account-toolbar{justify-content:space-between;align-items:center;gap:24px;min-height:94px;padding:20px 0;display:flex}.admin-account-toolbar h2{margin:0;font-size:20px}.admin-account-toolbar p{color:var(--journal-muted);margin:5px 0 0;font-size:10px}.admin-account-list{border-top:1px solid var(--journal-line)}.admin-account-row{border-bottom:1px solid var(--journal-line);grid-template-columns:minmax(190px,1fr) 250px 120px 280px;align-items:center;gap:24px;min-height:96px;padding:18px 4px;transition:background-color .2s;display:grid}.admin-account-row:hover{background:#fffdf875}.admin-account-person{align-items:center;gap:12px;min-width:0;display:flex}.admin-account-person>span:last-child{gap:3px;min-width:0;display:grid}.admin-account-person strong,.admin-account-person small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-account-person strong{font-size:13px}.admin-account-person small{color:var(--journal-muted);font-size:9px}.admin-account-avatar{border:2px solid var(--journal-surface);color:#fff;background:var(--journal-amber);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:15px;font-weight:800;display:grid;overflow:hidden;box-shadow:0 7px 20px #7e4f1529}.admin-account-avatar img{object-fit:cover;width:100%;height:100%}.admin-role{align-items:center;gap:10px;min-width:0;display:flex}.admin-role>svg{width:20px;color:var(--journal-amber);flex:none}.admin-role-guest>svg{color:var(--journal-blue)}.admin-role-admin>svg{color:var(--journal-coral)}.admin-role>span{gap:3px;min-width:0;display:grid}.admin-role strong{font-size:11px}.admin-role small{color:var(--journal-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.admin-account-row>time{color:var(--journal-muted);white-space:nowrap;align-items:center;gap:6px;font-size:9px;display:inline-flex}.admin-account-row>time svg{width:14px;color:var(--journal-coral)}.admin-account-actions{justify-content:flex-start;align-items:center;gap:4px;display:flex}.admin-row-command,.admin-self-note{min-height:40px;color:var(--journal-amber-deep);white-space:nowrap;background:0 0;align-items:center;gap:6px;padding:0 9px;font-size:9px;font-weight:800;display:inline-flex}.admin-row-command:hover,.admin-row-command:focus-visible{background:var(--journal-cream)}.admin-row-command svg,.admin-self-note svg{width:14px}.admin-self-note{color:var(--journal-coral)}.admin-dialog{border:1px solid var(--journal-line);width:min(100% - 32px,540px);max-height:min(760px,100dvh - 32px);color:var(--journal-ink);background:var(--journal-surface);border-radius:6px;padding:0;overflow:auto;box-shadow:0 30px 80px #452b144d}.admin-create-dialog{width:min(100% - 32px,660px)}.admin-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#311f1180}.admin-dialog-content{gap:22px;padding:26px;display:grid}.admin-dialog-content>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:start;gap:18px;padding-bottom:17px;display:flex}.admin-dialog-content>header>div{align-items:center;gap:12px;display:flex}.admin-dialog-content>header>div>span{color:#fff;background:var(--journal-amber);border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:grid}.admin-dialog-content>header svg{width:18px}.admin-dialog-content h2{margin:0;font-size:20px}.admin-dialog-content header p{color:var(--journal-muted);margin:5px 0 0;font-size:10px;line-height:1.55}.admin-dialog-content>header>button{width:44px;height:44px;color:var(--journal-muted);background:0 0;flex:none;place-items:center;display:grid}.admin-dialog-form{gap:16px;display:grid}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.admin-dialog-form label{gap:7px;min-width:0;display:grid}.admin-dialog-form label>span{color:var(--journal-muted);font-size:10px;font-weight:800}.admin-dialog-form input,.admin-dialog-form select{border:1px solid var(--journal-line);width:100%;height:44px;color:var(--journal-ink);background:var(--journal-bg);border-radius:3px;padding:0 10px}.admin-dialog-form input:focus,.admin-dialog-form select:focus{border-color:var(--journal-amber);outline:none}.admin-dialog-form small{color:var(--journal-muted);font-size:9px;line-height:1.5}.admin-field-wide{grid-column:1/-1}.admin-dialog-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.admin-permission-fieldset{border:0;border-top:1px solid var(--journal-line);min-width:0;margin:0;padding:15px 0 0}.admin-permission-fieldset>legend{color:var(--journal-ink);padding:0 8px 0 0;font-size:11px;font-weight:800}.admin-permission-fieldset>p{color:var(--journal-muted);margin:2px 0 12px;font-size:9px;line-height:1.5}.admin-permission-fieldset>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.admin-dialog-form .admin-permission-option{cursor:pointer;display:block;position:relative}.admin-permission-option>input{opacity:0;width:1px;height:1px;position:absolute}.admin-permission-option>span{border:1px solid var(--journal-line);min-height:82px;color:var(--journal-muted);background:var(--journal-bg);border-radius:4px;align-items:start;gap:9px;padding:12px;transition:border-color .2s,background-color .2s,color .2s;display:flex}.admin-permission-option>span>svg{width:17px;color:var(--journal-coral);flex:none}.admin-permission-option>span>span{gap:3px;display:grid}.admin-permission-option strong{color:var(--journal-ink);font-size:10px}.admin-permission-option small{line-height:1.45}.admin-permission-option>input:checked+span{border-color:color-mix(in srgb, var(--journal-amber) 62%, var(--journal-line));color:var(--journal-ink);background:var(--journal-cream);box-shadow:inset 0 0 0 1px #d9a44129}.admin-permission-option>input:focus-visible+span{outline:2px solid var(--journal-amber);outline-offset:2px}.admin-row-danger{color:#93463d}.admin-row-danger:hover,.admin-row-danger:focus-visible{background:#c7654f17}.admin-danger-dialog .admin-dialog-content>header>div>span{background:var(--journal-coral)}.admin-delete-note{color:var(--journal-muted);margin:0;font-size:11px;line-height:1.7}.danger-command{color:#fff;background:#a64f43;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:46px;padding:0 16px;font-size:11px;font-weight:800;display:inline-flex}.danger-command svg{width:16px}.danger-command:not(:disabled):hover,.danger-command:not(:disabled):focus-visible{background:#843b33}.danger-command:disabled{cursor:default;opacity:.48}.album-story{width:min(100%,1500px);margin:0 auto;padding:26px 0 120px}.story-header{text-align:left;width:min(100% - 56px,1380px);margin:0 auto;padding:0}.story-hero{background:var(--journal-green);width:100%;height:clamp(320px,35vw,430px);box-shadow:var(--journal-shadow);border-radius:6px;margin:0;animation:.85s cubic-bezier(.16,1,.3,1) both journey-cover-arrive;position:relative;overflow:hidden}.story-hero:before,.story-hero:after{content:none}.story-hero>img{object-fit:cover;filter:saturate(.94);width:100%;height:100%;position:absolute;inset:0}.story-hero-empty{color:#ffffffd1;background:var(--journal-green);place-items:center;display:grid;position:absolute;inset:0}.story-hero-empty svg{stroke-width:1px;width:76px;height:76px}.story-hero-shade{z-index:1;background:linear-gradient(#3f2f0f57,#4a3f180d 35%,#1e2f1bcc);position:absolute;inset:0}.story-header nav{z-index:3;justify-content:space-between;align-items:start;display:flex;position:absolute;top:24px;left:26px;right:26px}.story-hero-actions{align-items:start;gap:8px;display:flex}.story-header nav a,.album-manage-trigger{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f221a3d;border:1px solid #ffffff61;border-radius:4px;align-items:center;gap:7px;min-height:44px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.story-header nav svg{width:16px}.album-manager{display:block}.story-hero-copy{z-index:2;color:#fff;max-width:850px;position:absolute;bottom:42px;left:6%;right:8%}.story-hero-copy h1{margin:0;font-family:Noto Sans SC,sans-serif;font-size:clamp(38px,4.2vw,54px);line-height:1.12}.story-hero-copy>p{color:#ffffffd1;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:13px 0 0;font-size:12px;display:flex}.story-hero-copy>p svg{width:16px}.story-hero-copy>p span{border-left:1px solid #ffffff59;padding-left:16px}.story-hero-copy blockquote{color:#ffffffe6;margin:17px 0 0;font-size:15px}.story-details{gap:30px;width:min(100% - 56px,1100px);margin:42px auto 52px;display:grid}.story-copy{border-bottom:1px solid var(--journal-line);grid-template-columns:180px minmax(0,1fr);gap:34px;width:100%;margin:0;padding:4px 0 26px;display:grid}.story-copy>div:first-child{align-self:start;align-items:center;gap:10px;display:flex}.story-copy>div:first-child svg{width:20px;color:var(--journal-coral);fill:#c65d521f}.story-copy h2{margin:0;font-size:20px}.story-copy p{margin:0 0 .8em;font-size:15px;line-height:1.75}.story-signature{color:var(--journal-muted);text-align:right;margin-top:22px;font-size:9px;display:block}.journey-photo-section{width:min(100% - 56px,1380px);margin:34px auto 54px}.journey-photo-section>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:end;gap:24px;min-height:66px;margin-bottom:20px;padding-bottom:14px;display:flex}.journey-photo-section h2{margin:0;font-size:26px}.journey-photo-section header p{color:var(--journal-muted);margin:6px 0 0;font-size:11px;line-height:1.6}.journey-photo-grid{columns:4 240px;column-gap:14px}.journey-photo-card{break-inside:avoid;background:var(--journal-surface);width:100%;margin:0 0 14px;display:inline-grid;overflow:hidden;box-shadow:0 14px 34px #603f1b21}.journey-photo-card>a{display:grid}.journey-photo-card figure{background:var(--journal-photo-mat);contain:paint;margin:0;position:relative;overflow:hidden}.journey-photo-card figure img{object-fit:cover;filter:saturate(.96);width:100%;height:auto;min-height:180px;transition:filter .3s,transform .55s cubic-bezier(.16,1,.3,1)}.journey-photo-open{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:#3e281375;border-radius:50%;place-items:center;width:36px;height:36px;transition:opacity .25s,transform .25s;display:grid;position:absolute;top:12px;right:12px;transform:translate(-4px,4px)}.journey-photo-open svg{width:16px}.journey-photo-card>a:hover figure img,.journey-photo-card>a:focus-visible figure img{filter:saturate(1.04);transform:scale(1.025)}.journey-photo-card>a:hover .journey-photo-open,.journey-photo-card>a:focus-visible .journey-photo-open{opacity:1;transform:translate(0)}.journey-photo-card>a>div{gap:8px;padding:12px 13px 13px;display:grid}.journey-photo-card>a>div>span{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.journey-photo-card strong{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;min-width:0;font-size:11px;display:inline-flex;overflow:hidden}.journey-photo-card strong svg{width:13px;color:var(--journal-coral);flex:none}.journey-photo-card time{color:var(--journal-muted);flex:none;font-size:9px}.journey-photo-card small{min-height:28px;color:var(--journal-amber-deep);align-items:center;gap:5px;font-size:9px;font-weight:800;display:inline-flex}.journey-photo-card small svg{width:12px}.journey-photo-empty{min-height:260px;color:var(--journal-muted);text-align:center;align-content:center;justify-items:center;display:grid}.journey-photo-empty>svg{width:34px;color:var(--journal-coral)}.journey-photo-empty h2{color:var(--journal-ink);margin:16px 0 7px;font-size:20px}.journey-photo-empty p{margin:0;font-size:11px}.album-upload-dialog,.album-manager-dialog,.photo-metadata-dialog{border:1px solid var(--journal-line);max-height:min(820px,100dvh - 32px);color:var(--journal-ink);background:var(--journal-surface);border-radius:6px;padding:0;overflow:auto;box-shadow:0 30px 80px #452b144d}.album-upload-dialog{width:min(100% - 32px,760px)}.album-manager-dialog{width:min(100% - 32px,780px)}.photo-metadata-dialog{width:min(100% - 32px,520px)}.album-upload-dialog::backdrop,.album-manager-dialog::backdrop,.photo-metadata-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#311f1185}.album-upload-dialog-content,.album-manager-dialog-content,.photo-metadata-dialog-content{gap:24px;padding:26px;display:grid}.album-upload-dialog-content>header,.album-manager-dialog-content>header,.photo-metadata-dialog-content>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:start;padding-bottom:18px;display:flex}.album-upload-dialog-content>header>div,.album-manager-dialog-content>header>div,.photo-metadata-dialog-content>header>div{align-items:center;gap:12px;display:flex}.album-upload-dialog-content>header>div>span,.album-manager-dialog-content>header>div>span,.photo-metadata-dialog-content>header>div>span{color:#fff;background:var(--journal-amber);border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:grid}.album-upload-dialog-content>header svg,.album-manager-dialog-content>header svg,.photo-metadata-dialog-content>header svg{width:18px}.album-upload-dialog-content h2,.album-manager-dialog-content h2,.photo-metadata-dialog-content h2{margin:0;font-size:20px}.album-upload-dialog-content header p,.album-manager-dialog-content header p,.photo-metadata-dialog-content header p{max-width:48ch;color:var(--journal-muted);margin:5px 0 0;font-size:10px;line-height:1.55}.album-upload-dialog-content>header>button,.album-manager-dialog-content>header>button,.photo-metadata-dialog-content>header>button{width:44px;height:44px;color:var(--journal-muted);background:0 0;flex:none;place-items:center;display:grid}.album-upload-dialog-content>input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.album-upload-dropzone{border:1px dashed color-mix(in srgb, var(--journal-amber) 55%, var(--journal-line));cursor:pointer;min-height:180px;color:var(--journal-muted);background:color-mix(in srgb, var(--journal-cream) 38%, var(--journal-surface));border-radius:5px;align-content:center;place-items:center;gap:8px;display:grid}.album-upload-dropzone>svg{width:30px;height:30px;color:var(--journal-coral)}.album-upload-dropzone strong{color:var(--journal-ink);font-size:14px}.album-upload-dropzone span{font-size:9px}.album-upload-selection{gap:12px;display:grid}.album-upload-selection>header{justify-content:space-between;align-items:center;display:flex}.album-upload-selection>header strong{font-size:12px}.album-upload-selection .secondary-command{min-height:40px}.album-upload-previews{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:230px;display:grid;overflow-y:auto}.album-upload-previews figure{background:var(--journal-photo-mat);min-width:0;margin:0;overflow:hidden}.album-upload-previews img{aspect-ratio:1;object-fit:cover;width:100%}.album-upload-previews figcaption{color:var(--journal-muted);text-overflow:ellipsis;white-space:nowrap;padding:6px 7px 7px;font-size:8px;overflow:hidden}.album-upload-fields{grid-template-columns:minmax(110px,.65fr) minmax(150px,1fr) minmax(180px,1.15fr);align-items:end;gap:10px;display:grid}.album-upload-fields label{gap:6px;min-width:0;display:grid}.album-upload-fields label>span{color:var(--journal-muted);align-items:center;gap:5px;font-size:9px;font-weight:800;display:flex}.album-upload-fields label>span svg{width:13px}.album-upload-fields label>small{color:var(--journal-muted);font-size:8px}.album-upload-dialog-actions,.photo-metadata-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.album-upload-dialog-actions .primary-command{justify-content:center;min-width:150px}.album-manager-form{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.album-manager-form .form-grid{gap:18px 20px}.album-manager-form .form-actions{justify-content:flex-end;margin-top:24px}.album-manager-form .form-actions .text-command{color:var(--journal-muted);background:0 0}.album-manager-danger{border-top:1px solid color-mix(in srgb, var(--journal-coral) 32%, var(--journal-line));justify-content:space-between;align-items:center;gap:24px;padding-top:20px;display:flex}.album-manager-danger h3{color:#823e35;margin:0;font-size:14px}.album-manager-danger p{max-width:52ch;color:var(--journal-muted);margin:5px 0 0;font-size:10px;line-height:1.55}.album-manager-danger>button,.album-manager-delete-confirm form button{color:#8c453b;background:#c7654f14;border:1px solid #a8564342;border-radius:3px;flex:none;align-items:center;gap:7px;min-height:42px;padding:0 12px;font-size:10px;font-weight:800;display:inline-flex}.album-manager-danger button svg{width:15px}.album-manager-delete-confirm{justify-items:end;gap:9px;display:grid}.album-manager-delete-confirm>span{color:#823e35;font-size:10px;font-weight:700}.album-manager-delete-confirm>div{align-items:center;gap:6px;display:flex}.album-manager-delete-confirm form button{color:#fff;background:var(--journal-coral)}.photo-metadata-editor{display:block}.photo-metadata-trigger{min-height:34px;color:var(--journal-amber-deep);background:0 0;align-items:center;gap:5px;padding:0 7px;font-size:9px;font-weight:800;display:inline-flex}.photo-metadata-trigger svg{width:13px}.photo-metadata-dialog-content>form{gap:16px;display:grid}.photo-metadata-dialog-content label{gap:7px;display:grid}.photo-metadata-dialog-content label>span{color:var(--journal-muted);align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.photo-metadata-dialog-content label>span svg{width:14px;color:var(--journal-coral)}.photo-metadata-dialog-content select,.photo-metadata-dialog-content input{border:1px solid var(--journal-line);width:100%;height:44px;color:var(--journal-ink);background:var(--journal-bg);border-radius:3px;padding:0 10px}.photo-metadata-dialog-content select:focus,.photo-metadata-dialog-content input:focus{border-color:var(--journal-amber);outline:none}.photo-metadata-danger{border-top:1px solid color-mix(in srgb, var(--journal-coral) 32%, var(--journal-line));justify-content:space-between;align-items:center;gap:20px;padding-top:20px;display:flex}.photo-metadata-danger h3{color:#823e35;margin:0;font-size:14px}.photo-metadata-danger p{color:var(--journal-muted);margin:5px 0 0;font-size:10px;line-height:1.55}.photo-metadata-danger>button,.photo-metadata-delete-confirm form button{color:#8c453b;background:#c7654f14;border:1px solid #a8564342;border-radius:3px;flex:none;align-items:center;gap:7px;min-height:42px;padding:0 12px;font-size:10px;font-weight:800;display:inline-flex}.photo-metadata-danger button svg{width:15px}.photo-metadata-delete-confirm{justify-items:end;gap:9px;display:grid}.photo-metadata-delete-confirm>span{color:#823e35;font-size:10px;font-weight:700}.photo-metadata-delete-confirm>div{align-items:center;gap:6px;display:flex}.photo-metadata-delete-confirm form button{color:#fff;background:var(--journal-coral)}.map-panel{border:1px solid var(--journal-line);background:var(--journal-surface);border-radius:6px;width:100%;margin:0;overflow:hidden}.map-panel>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:center;min-height:54px;padding:0 18px;display:flex}.map-panel>header span{align-items:center;gap:8px;font-size:12px;display:flex}.map-panel>header svg{width:16px;color:var(--journal-coral)}.map-panel>header small{color:var(--journal-muted);font-size:10px}.amap-canvas,.map-fallback{background:#e7ece7;width:100%;min-height:430px}.map-marker{color:#fff;background:var(--journal-coral);border:2px solid #fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:10px;display:grid;box-shadow:0 6px 18px #43282440}.map-fallback{align-content:center;padding:32px;display:grid}.map-fallback>p{color:var(--journal-muted);text-align:center}.map-fallback ol{width:min(100%,520px);margin:0 auto;padding:0;list-style:none;display:grid}.map-fallback li{border-bottom:1px solid var(--journal-line);justify-content:space-between;padding:12px 0;display:flex}.map-fallback li small{color:var(--journal-muted)}.map-fallback button{color:var(--journal-green);background:0 0;justify-self:center;align-items:center;gap:7px;margin-top:18px;display:inline-flex}.upload-panel{border-block:1px solid var(--journal-line);grid-template-columns:180px minmax(0,1fr) auto auto;align-items:end;gap:12px;width:100%;margin:0;padding:20px 0;display:grid}.upload-panel>div:first-child{align-self:center;align-items:center;gap:12px;display:flex}.upload-panel>div:first-child>svg{width:22px;color:var(--journal-coral)}.upload-panel>div:first-child span{gap:2px;display:grid}.upload-panel strong{font-size:13px}.upload-panel small{color:var(--journal-muted);font-size:9px}.upload-panel>input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.album-upload-fields{grid-template-columns:minmax(120px,.7fr) minmax(160px,1.3fr);gap:10px;display:grid}.album-upload-fields label{gap:5px;display:grid}.album-upload-fields label>span{color:var(--journal-muted);font-size:9px;font-weight:800}.album-upload-fields select,.album-upload-fields input{border:1px solid var(--journal-line);width:100%;height:42px;color:var(--journal-ink);background:var(--journal-surface);border-radius:3px;padding:0 10px}.album-upload-fields select:focus,.album-upload-fields input:focus{border-color:var(--journal-amber);outline:none}.upload-panel .form-error{grid-column:1/-1}.photo-journal{gap:62px;width:min(100% - 56px,1220px);margin:0 auto 72px;display:grid}.memory-photo{grid-template-columns:minmax(0,2.15fr) minmax(260px,.85fr);align-items:start;gap:30px;display:grid}.memory-photo:nth-child(2n) figure{order:2}.memory-photo figure{background:var(--journal-surface);margin:0;padding:12px 12px 0;box-shadow:0 20px 48px #65401b24}.memory-photo figure>img{object-fit:contain;background:var(--journal-photo-mat);width:100%;max-height:72vh}.memory-photo figcaption{grid-template-columns:1fr auto;gap:16px;padding:14px 4px 16px;display:grid}.memory-photo figcaption>div{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.memory-photo figcaption strong{align-items:center;gap:6px;font-size:12px;display:flex}.memory-photo figcaption strong svg{width:14px;color:var(--journal-coral)}.memory-photo figcaption time{color:var(--journal-muted);font-size:10px}.memory-photo figcaption p{max-width:34ch;color:var(--journal-muted);margin:0;font-size:13px;line-height:1.6}.comment-thread{gap:16px;padding-top:6px;display:grid;position:sticky;top:105px}.comment-thread>header{border-bottom:1px solid var(--journal-line);color:var(--journal-green);align-items:center;gap:7px;padding-bottom:13px;font-size:11px;font-weight:800;display:flex}.comment-thread>header svg{width:15px;color:var(--journal-coral);fill:#c65d521f}.comment{grid-template-columns:36px 1fr;gap:11px;display:grid}.comment>span{color:#fff;background:var(--journal-blue);border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.comment>div{border-bottom:1px solid var(--journal-line);padding-bottom:13px}.comment strong{font-size:11px}.comment p{margin:5px 0;font-size:13px;line-height:1.55}.comment time{color:var(--journal-muted);font-size:9px}.comment-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid;position:relative}.comment-form>label{min-width:0}.comment-form textarea{border:0;border-bottom:1px solid var(--journal-line);resize:vertical;background:0 0;border-radius:0;outline:none;min-height:52px;padding:8px 0;line-height:1.5}.comment-form textarea:focus{border-color:var(--journal-green)}.comment-compose-tools{align-items:end;gap:4px;display:flex}.comment-submit,.comment-emoji-picker>summary{cursor:pointer;border-radius:4px;place-items:center;width:44px;height:44px;list-style:none;display:grid}.comment-submit{color:#fff;background:var(--journal-coral)}.comment-submit:disabled{cursor:wait;opacity:.55}.comment-submit svg,.comment-emoji-picker>summary svg{width:16px}.comment-emoji-picker{position:relative}.comment-emoji-picker>summary{color:var(--journal-amber-deep);background:var(--journal-cream)}.comment-emoji-picker>summary::-webkit-details-marker{display:none}.comment-emoji-picker[open]>summary{color:#fff;background:var(--journal-amber)}.comment-emoji-picker>div{z-index:30;border:1px solid var(--journal-line);background:var(--journal-surface);border-radius:4px;grid-template-columns:repeat(4,40px);gap:4px;width:190px;padding:10px;display:grid;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 16px 38px #54341733}.comment-emoji-picker>div button{width:40px;height:40px;color:var(--journal-ink);background:0 0;border-radius:3px;place-items:center;font-size:19px;display:grid}.comment-emoji-picker>div button:hover,.comment-emoji-picker>div button:focus-visible{background:var(--journal-cream)}.comment-form .form-error{grid-column:1/-1}.comment-form textarea::placeholder{color:color-mix(in srgb, var(--journal-muted) 82%, transparent)}.comment-readonly-note{border-top:1px solid var(--journal-line);color:var(--journal-muted);margin:2px 0 0;padding:11px 0;font-size:10px;line-height:1.6}.comment-thread-content,.comment-list,.comment-root{display:grid}.comment-thread-content{gap:16px}.comment-list{gap:14px}.comment-root{gap:11px}.comment-item{grid-template-columns:36px minmax(0,1fr);gap:11px;display:grid}.comment-avatar{color:#fff;background:var(--journal-blue);border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid;overflow:hidden}.comment-avatar img{object-fit:cover;width:100%;height:100%}.comment-content{border-bottom:1px solid var(--journal-line);min-width:0;padding-bottom:13px}.comment-content>header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.comment-content>header strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.comment-content>header>span{color:var(--journal-muted);flex:none;align-items:center;gap:6px;font-size:9px;display:flex}.comment-content>header small{color:var(--journal-green);font-size:8px}.comment-content>p{overflow-wrap:anywhere;margin:6px 0 4px;font-size:13px;line-height:1.6}.comment-deleted-copy{color:var(--journal-muted);font-style:italic}.comment-actions{flex-wrap:wrap;gap:2px;margin-top:3px;display:flex}.comment-actions button{min-height:40px;color:var(--journal-muted);background:0 0;align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:700;display:inline-flex}.comment-actions button:hover,.comment-actions button:focus-visible{color:var(--journal-green);background:var(--journal-cream)}.comment-actions button:last-child:hover,.comment-actions button:last-child:focus-visible{color:#9c3f37}.comment-actions svg{width:14px;height:14px}.comment-replies,.comment-reply-row{display:grid}.comment-replies{border-left:1px solid color-mix(in srgb, var(--journal-amber-deep) 26%, transparent);gap:11px;margin-left:47px;padding-left:13px}.comment-reply-row{gap:7px}.comment-item.is-reply{grid-template-columns:30px minmax(0,1fr)}.comment-item.is-reply .comment-avatar{width:30px;height:30px;color:var(--journal-ink);background:var(--journal-sun);font-size:9px}.comment-reply-target{color:var(--journal-amber-deep);margin-right:6px;font-size:11px;font-weight:800}.comment-item.is-deleted .comment-avatar{color:var(--journal-muted);background:var(--journal-paper-deep)}.comment-reply-composer{border:1px solid var(--journal-line);background:color-mix(in srgb, var(--journal-surface) 72%, transparent);border-radius:4px;gap:7px;margin-left:47px;padding:10px 12px 12px;display:grid}.comment-reply-composer>header{color:var(--journal-green);justify-content:space-between;align-items:center;font-size:10px;font-weight:800;display:flex}.comment-reply-composer>header button{min-height:38px;color:var(--journal-muted);background:0 0;align-items:center;gap:4px;padding:0 7px;font-size:9px;display:inline-flex}.comment-reply-composer>header svg{width:13px}.comment-inline-form textarea{min-height:46px}.comment-edit-form{gap:9px;margin-top:8px;display:grid}.comment-edit-form textarea{border:1px solid var(--journal-line);width:100%;min-height:76px;color:var(--journal-ink);background:var(--journal-surface);resize:vertical;border-radius:3px;outline:none;padding:10px;line-height:1.55}.comment-edit-form textarea:focus{border-color:var(--journal-green)}.comment-edit-form>div,.comment-delete-confirm>div{justify-content:flex-end;gap:7px;display:flex}.comment-edit-form button,.comment-delete-confirm button{min-height:40px;color:var(--journal-muted);background:0 0;border-radius:3px;align-items:center;gap:5px;padding:0 11px;font-size:10px;font-weight:800;display:inline-flex}.comment-edit-form button[type=submit]{color:#fff;background:var(--journal-green)}.comment-edit-form svg,.comment-delete-confirm svg{width:14px}.comment-delete-confirm{border:1px solid color-mix(in srgb, var(--journal-coral) 42%, var(--journal-line));background:color-mix(in srgb, var(--journal-coral) 7%, var(--journal-surface));border-radius:4px;gap:9px;margin-top:8px;padding:11px 12px;display:grid}.comment-delete-confirm>p{color:#7f4038;margin:0;font-size:10px;line-height:1.55}.comment-delete-confirm button[type=submit]{color:#fff;background:var(--journal-coral)}.comment-delete-confirm button:disabled,.comment-edit-form button:disabled{cursor:wait;opacity:.55}.story-empty{text-align:center;margin:48px auto}.story-empty h2{font-size:24px}.story-empty p{color:var(--journal-muted)}.map-page .map-panel{width:100%;margin:0}.map-page .amap-canvas,.map-page .map-fallback{min-height:min(650px,66dvh)}.trash-section+.trash-section{margin-top:42px}.trash-section>h2{margin:0 0 12px;font-size:18px}.trash-list{border-top:1px solid var(--journal-line);display:grid}.trash-list article{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:center;gap:18px;min-height:82px;display:flex}.trash-list article>div{gap:5px;display:grid}.trash-list article strong{color:var(--journal-ink);font-size:15px}.trash-list article span,.trash-list article small,.trash-list>p{color:var(--journal-muted);font-size:10px}.trash-list button{min-height:44px;color:var(--journal-green);background:0 0;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.trash-list button svg{width:15px}.trash-photo-copy{grid-template-columns:42px minmax(0,1fr);align-items:center}.trash-photo-copy>span:last-child{gap:5px;display:grid}.trash-photo-icon{width:42px;height:42px;color:var(--journal-coral);background:#f4c45d33;border-radius:50%;place-items:center;display:grid}.trash-photo-icon svg{width:17px}.photo-library-page{min-height:100dvh;padding:0 0 120px;overflow-x:clip}.photo-map-stage{isolation:isolate;background:#fff4ce;border-radius:6px;width:min(100% - 48px,1600px);min-height:calc(100svh - 132px);margin:18px auto 0;position:relative;overflow:hidden;box-shadow:0 18px 46px #67461f29}.photo-map-scroll-cue{z-index:18;color:#fffdf2d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#4e36193d;border:1px solid #fff8dc80;border-radius:50%;place-items:center;width:44px;height:44px;transition:color .2s,background-color .2s,transform .2s;display:grid;position:absolute;bottom:12px;left:65.5%;transform:translate(-50%);box-shadow:0 7px 22px #3d281124}.photo-map-scroll-cue:hover,.photo-map-scroll-cue:focus-visible{color:#fff;background:#4e36196b;transform:translate(-50%,2px)}.photo-map-scroll-cue svg{width:18px;height:18px;animation:2.4s ease-in-out infinite photo-map-scroll-cue}.photo-map-backdrop{z-index:-3;object-fit:cover;object-position:center 46%;filter:saturate(1.04)contrast(1.03);width:31%;height:100%;animation:1.1s cubic-bezier(.16,1,.3,1) both golden-photo-settle;position:absolute;top:0;bottom:0;left:0}.photo-map-wash{z-index:-2;background:linear-gradient(#2d1f1033 0%,#2d1f1057 52%,#2d1f10ad 100%);width:31%;position:absolute;top:0;bottom:0;left:0}.photo-map-frame{z-index:1;box-shadow:none;background:#fff8e2;border:0;border-radius:0;position:absolute;inset:0 0 0 31%;overflow:hidden}.photo-map-experience,.photo-map-canvas,.photo-map-fallback{width:100%;height:100%;position:absolute;inset:0}.photo-map-experience{isolation:isolate;background-color:#f2d9a0;overflow:hidden}.photo-map-experience:before{content:"";z-index:0;filter:saturate(.82)contrast(.92);background:url(/assets/photo-map-atmosphere-v2.webp) 50%/cover no-repeat;position:absolute;inset:0;transform:scale(1.02)}.photo-map-experience:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(115deg,#fff9e2d1,#fff6d7ad 46%,#fae5b0b8);position:absolute;inset:0}.photo-map-canvas{z-index:2;opacity:0;touch-action:pan-y;background:0 0;transition:opacity .42s}.photo-map-experience.is-ready .photo-map-canvas{opacity:1}.photo-map-loading{z-index:3;color:var(--journal-amber-deep);pointer-events:none;place-content:center;justify-items:center;transition:opacity .28s;display:grid;position:absolute;inset:0}.photo-map-loading:before{content:"";aspect-ratio:1.35;clip-path:polygon(11% 19%,30% 7%,48% 16%,65% 8%,88% 25%,80% 48%,91% 71%,65% 87%,43% 78%,20% 91%,8% 64%,16% 42%);background:#fffcef3d;border:1px solid #91571824;width:min(54%,430px);animation:1.8s ease-in-out infinite atlas-loading-light;position:absolute}.photo-map-loading>*{z-index:1;position:relative}.photo-map-loading>svg{width:27px;height:27px;color:var(--journal-coral);margin-bottom:10px}.photo-map-loading span{font-size:12px;font-weight:800}.photo-map-loading small{color:var(--journal-muted);margin-top:5px;font-size:9px}.atlas-ambient{z-index:3;pointer-events:none;background:radial-gradient(circle at 52% 48%,#fffdef6b,#0000 34%),linear-gradient(#ffffff14,#bf68370f);position:absolute;inset:0}.atlas-place-layer{z-index:8;pointer-events:none;position:absolute;inset:0;overflow:hidden}.atlas-place-card{width:58px;height:58px;color:var(--journal-ink);pointer-events:auto;transform-origin:50%;background:#fffcf1f7;border:2px solid #fffcf1f5;border-radius:50%;place-items:center;padding:4px;transition:box-shadow .2s,scale .2s cubic-bezier(.16,1,.3,1);display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 10px 24px #7445173b}.atlas-place-leader{z-index:-1;width:var(--atlas-length);height:1px;transform:rotate(var(--atlas-angle));transform-origin:0;pointer-events:none;background:#975b1b6b;position:absolute;top:50%;left:50%}.atlas-place-dot{z-index:-1;top:calc(50% + var(--atlas-anchor-y));left:calc(50% + var(--atlas-anchor-x));background:var(--journal-coral);pointer-events:none;border:1px solid #fff7d8;border-radius:50%;width:7px;height:7px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #c7654f2b}.atlas-place-card:hover,.atlas-place-card:focus-visible{z-index:4;scale:1.08;box-shadow:0 18px 38px #70431847}.atlas-place-card img{object-fit:cover;border-radius:50%;width:46px;height:46px}.atlas-place-card span{text-overflow:ellipsis;white-space:nowrap;background:#fffcf1f0;border:1px solid #91571824;border-radius:10px;max-width:78px;padding:3px 7px;font-size:8px;font-weight:800;position:absolute;top:calc(100% + 4px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 12px #7445171f}.atlas-place-card b{z-index:2;color:#fffdf5;background:var(--journal-coral);border:2px solid #fff9e5;border-radius:11px;place-items:center;min-width:22px;height:22px;padding:0 5px;font-size:8px;display:grid;position:absolute;top:-8px;right:-8px}.photo-map-upload{z-index:12;position:absolute;bottom:16px;left:16px}.photo-map-controls{z-index:12;background:#fffceff0;border:1px solid #91571829;border-radius:4px;display:grid;position:absolute;top:16px;right:16px;overflow:hidden;box-shadow:0 10px 28px #693f1529}.photo-map-controls button{width:42px;height:42px;color:var(--journal-amber-deep);background:0 0;place-items:center;transition:color .18s,background-color .18s;display:grid}.photo-map-controls button+button{border-top:1px solid #91571824}.photo-map-controls button:hover,.photo-map-controls button:focus-visible{color:var(--journal-coral);background:#f4c45d38}.photo-map-controls button:disabled{cursor:wait;opacity:.45}.photo-map-controls svg{width:17px;height:17px}.photo-map-signature{z-index:4;color:#fffdf5;text-shadow:0 2px 18px #23160a70;gap:16px;width:min(23%,330px);display:grid;position:absolute;top:38%;left:clamp(28px,3.5vw,54px);transform:translateY(-50%)}.photo-map-pair{color:#ffe59a;border-bottom:1px solid #ffefbd94;align-items:center;gap:10px;width:max-content;padding-bottom:11px;font-size:12px;display:inline-flex}.photo-map-pair svg{width:16px;height:16px;color:var(--journal-coral);fill:#f4c45d61}.photo-map-signature h1{margin:0;font-size:clamp(30px,2.8vw,43px);line-height:1.12}.photo-map-signature p{color:#fffdf5e6;max-width:31ch;margin:12px 0 0;font-size:12px;line-height:1.75}.photo-map-signature time{color:var(--journal-amber-deep);font-weight:800}.photo-map-summary{z-index:4;color:#fffdf5;text-shadow:0 2px 14px #23160a6b;border-top:2px solid #ffe28fb3;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:12px;width:min(23%,300px);padding:17px 0 0;display:grid;position:absolute;bottom:clamp(34px,5vw,66px);left:clamp(28px,3.5vw,54px)}.photo-map-summary>svg{color:#ffd36e;fill:#ffd36e47;width:22px;height:22px}.photo-map-summary>div{gap:4px;display:grid}.photo-map-summary strong{font-size:17px}.photo-map-summary span{color:#ffe59a;font-size:11px;font-weight:800}.photo-map-summary small{color:#fffdf5c7;font-size:9px;line-height:1.5}@keyframes golden-photo-settle{0%{filter:saturate(.7)blur(7px);transform:scale(1.045)}to{filter:saturate(.96)blur();transform:scale(1.015)}}.standalone-uploader{z-index:82;position:relative}.standalone-upload-trigger{min-height:46px;color:var(--journal-ink);background:var(--journal-sun);border-radius:4px;align-items:center;gap:8px;padding:0 17px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 10px 28px #43391538}.standalone-upload-trigger>svg{width:17px}.standalone-upload-dialog{border:1px solid var(--journal-line);width:min(100% - 32px,760px);max-height:min(820px,100dvh - 32px);color:var(--journal-ink);background:var(--journal-surface);border-radius:6px;padding:0;overflow:auto;box-shadow:0 30px 80px #452b144d}.standalone-upload-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#311f117a}.standalone-upload-dialog-content{color:var(--journal-ink);background:var(--journal-surface);gap:24px;padding:26px;display:grid}.standalone-uploader-map>.standalone-upload-trigger,.journey-add-photo-button{min-width:150px;min-height:50px;color:var(--journal-ink);background:var(--journal-sun);border:1px solid #7545133d;border-radius:4px;align-items:center;gap:9px;padding:4px;font-weight:800;transition:background-color .2s,box-shadow .2s,transform .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:inset 0 1px #fffbddb8,0 12px 28px #5b39133b}.standalone-uploader-map>.standalone-upload-trigger:hover,.standalone-uploader-map>.standalone-upload-trigger:focus-visible,.journey-add-photo-button:hover,.journey-add-photo-button:focus-visible{background:#f8d16f;transform:translateY(-2px);box-shadow:inset 0 1px #fffbddd1,0 16px 34px #5b391347}.map-upload-icon{color:#fff;background:var(--journal-amber-deep);border-radius:3px;flex:none;place-items:center;width:39px;height:40px;display:grid}.standalone-uploader-map>.standalone-upload-trigger .map-upload-icon svg,.journey-add-photo-button .map-upload-icon svg{width:17px}.map-upload-copy{text-align:left;gap:2px;padding-right:9px;display:grid}.map-upload-copy strong{font-size:11px}.map-upload-copy small{color:color-mix(in srgb, var(--journal-ink) 72%, transparent);font-size:8px;font-weight:600}.standalone-uploader-place{position:absolute;bottom:34px;right:30px}.standalone-upload-dialog-content>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:start;padding-bottom:18px;display:flex}.standalone-upload-dialog-content>header>div{align-items:center;gap:12px;display:flex}.standalone-upload-dialog-content>header>div>span{color:#fff;background:var(--journal-amber);border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:grid}.standalone-upload-dialog-content>header svg{width:18px}.standalone-upload-dialog-content h2{margin:0;font-size:20px}.standalone-upload-dialog-content header p{max-width:48ch;color:var(--journal-muted);margin:5px 0 0;font-size:10px;line-height:1.55}.standalone-upload-dialog-content>header>button{width:44px;height:44px;color:var(--journal-muted);background:0 0;flex:none;place-items:center;display:grid}.standalone-upload-dialog-content>input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.standalone-upload-fields{grid-template-columns:minmax(110px,.65fr) minmax(150px,1fr) minmax(180px,1.15fr);align-items:end;gap:10px;display:grid}.standalone-upload-fields label{gap:6px;min-width:0;display:grid}.standalone-upload-fields label>span{color:var(--journal-muted);align-items:center;gap:5px;font-size:9px;font-weight:800;display:flex}.standalone-upload-fields label>span svg{width:13px}.standalone-upload-fields label>small{color:var(--journal-muted);font-size:8px}.standalone-upload-fields select,.standalone-upload-fields input{border:1px solid var(--journal-line);width:100%;height:44px;color:var(--journal-ink);background:var(--journal-bg);border-radius:3px;padding:0 10px}.standalone-upload-fields select:focus,.standalone-upload-fields input:focus{border-color:var(--journal-amber);outline:none}.standalone-upload-dialog-content .form-error,.standalone-upload-dialog-content .form-success{margin:-8px 0 0;font-size:11px;line-height:1.55}.standalone-upload-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.standalone-upload-dialog-actions .primary-command{justify-content:center;min-width:150px}.upload-action-hint{color:var(--journal-muted);text-align:right;margin:-12px 0 0;font-size:9px;line-height:1.5}.photo-map-fallback{background-color:var(--journal-paper-deep);background-image:linear-gradient(135deg,#f2c14e2e,#0000 42%),linear-gradient(315deg,#55734324,#0000 48%);align-content:center;gap:30px;padding:80px 9% 110px;display:grid}.fallback-map-copy{text-align:center;justify-items:center;display:grid}.fallback-map-copy>svg{width:42px;height:42px;color:var(--journal-coral);stroke-width:1.3px}.fallback-map-copy strong{margin-top:16px;font-size:22px}.fallback-map-copy small{color:var(--journal-muted);margin-top:7px;font-size:10px}.photo-map-fallback nav{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;width:min(100%,820px);margin:0 auto;display:grid}.photo-map-fallback nav a{background:#ffffffd1;grid-template-columns:54px 1fr 18px;align-items:center;gap:12px;min-width:0;padding:7px 12px 7px 7px;display:grid}.photo-map-fallback nav img{object-fit:cover;width:54px;height:48px}.photo-map-fallback nav span{gap:3px;min-width:0;display:grid}.photo-map-fallback nav strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.photo-map-fallback nav small{color:var(--journal-muted);font-size:9px}.photo-map-fallback nav svg{width:16px;color:var(--journal-coral)}.photo-map-fallback>button{min-height:44px;color:var(--journal-green);background:0 0;justify-self:center;align-items:center;gap:7px;font-size:11px;font-weight:800;display:inline-flex}.photo-map-fallback>button svg{width:15px}.recent-photo-section{isolation:isolate;width:min(100% - 56px,1320px);margin:56px auto 0;position:relative}.recent-photo-section>header,.recent-photo-timeline,.photo-library-empty{z-index:2;position:relative}.recent-photo-section>header{border-bottom:1px solid var(--journal-line);justify-content:space-between;align-items:center;gap:28px;min-height:68px;padding:8px 0 14px;display:flex}.recent-photo-section h2{margin:0;font-size:24px;line-height:1.2}.recent-photo-section header p{color:var(--journal-muted);margin:4px 0 0;font-size:11px}.recent-photo-section header>span{color:var(--journal-amber-deep);flex:none;align-items:center;gap:7px;font-size:10px;font-weight:800;display:flex}.recent-photo-section header>span svg{color:#a85643;width:15px}.recent-photo-timeline{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-color:#9a621d57 transparent;scrollbar-width:thin;gap:22px;margin:0;padding:28px 2px 24px;scroll-padding-inline:2px;list-style:none;display:flex;position:relative;overflow-x:auto}.recent-photo-timeline::-webkit-scrollbar{height:6px}.recent-photo-timeline::-webkit-scrollbar-thumb{background:#9a621d57;border-radius:3px}.recent-photo-timeline::-webkit-scrollbar-track{background:0 0}.recent-photo-entry{scroll-snap-align:start;flex:0 0 clamp(290px,23vw,340px);min-width:0;position:relative}.recent-photo-entry:first-child{flex-basis:clamp(340px,27vw,390px)}.recent-photo-entry:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#a6722475,#a6722424);width:calc(100% + 22px);height:1px;position:absolute;top:21px;left:36px}.recent-photo-entry:last-child:after{width:calc(100% - 36px)}.recent-photo-entry>a{grid-template-rows:42px auto auto;align-content:start;min-height:0;display:grid}.recent-photo-entry figure{background:var(--journal-surface);contain:paint;grid-row:2;width:100%;height:204px;margin:0;padding:6px;overflow:hidden;box-shadow:0 16px 38px #69441c24}.recent-photo-entry figure img{object-fit:cover;filter:none;width:100%;height:100%;transition:transform .62s cubic-bezier(.16,1,.3,1),filter .3s}.recent-photo-node{z-index:2;width:42px;height:42px;color:var(--journal-amber-deep);background:#fffdf8f0;border:1px solid #9a621d33;border-radius:50%;grid-row:1;justify-self:start;place-items:center;padding:6px;display:grid;position:relative;box-shadow:0 8px 22px #69441c1f}.recent-photo-node:before{content:"";background:var(--journal-coral);border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 0 0 4px #c7654f21}.recent-photo-node time{width:max-content;color:var(--journal-amber-deep);white-space:nowrap;background:#fffdf8f0;border:1px solid #9a621d24;border-radius:3px;padding:3px 7px;font-size:9px;font-weight:700;position:absolute;top:50%;left:50px;transform:translateY(-50%);box-shadow:0 4px 12px #69441c14}.recent-photo-copy{grid-row:3;align-content:start;gap:7px;width:100%;padding:14px 4px 2px;display:grid}.recent-photo-copy strong{color:var(--journal-ink);font-size:18px}.recent-photo-copy small{max-width:32ch;color:var(--journal-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.65;overflow:hidden}.recent-photo-copy i{min-height:32px;color:var(--journal-amber-deep);align-items:center;gap:6px;font-size:9px;font-style:normal;font-weight:800;display:inline-flex}.recent-photo-copy svg{width:14px;transition:transform .25s cubic-bezier(.16,1,.3,1)}.recent-photo-entry>a:hover figure img,.recent-photo-entry>a:focus-visible figure img{filter:saturate(1.04);transform:scale(1.025)}.recent-photo-entry>a:hover .recent-photo-copy svg,.recent-photo-entry>a:focus-visible .recent-photo-copy svg{transform:translate(3px,-3px)}.photo-library-empty{min-height:300px;color:var(--journal-muted);text-align:center;align-content:center;place-items:center;display:grid}.photo-library-empty>svg{width:34px;color:var(--journal-coral)}.photo-library-empty h2{color:var(--journal-ink);margin:16px 0 8px;font-size:21px}.photo-library-empty p{max-width:44ch;margin:0;font-size:12px;line-height:1.7}.place-page{width:min(100% - 56px,1280px);margin:0 auto;padding:28px 0 130px}.place-header{color:#fff;background:var(--journal-amber-deep);min-height:430px;box-shadow:var(--journal-shadow);isolation:isolate;border-radius:6px;align-content:space-between;margin-bottom:42px;padding:24px 30px 38px;display:grid;position:relative;overflow:hidden}.place-hero-photo{z-index:-2;object-fit:cover;filter:saturate(.96);width:100%;height:100%;position:absolute;inset:0}.place-hero-wash{z-index:-1;background:linear-gradient(#4c2b128a,#59371a14 42%,#3e2413cc);position:absolute;inset:0}.place-header>a,.single-photo-nav a{min-height:44px;color:inherit;justify-self:start;align-items:center;gap:7px;font-size:11px;font-weight:800;display:inline-flex}.place-header>a{background:#4b2c1557;border:1px solid #fff4c77a;width:max-content;padding:0 11px}.place-header>a svg,.single-photo-nav svg{width:16px}.place-hero-copy{text-shadow:0 2px 18px #3d231257;grid-template-columns:34px 1fr;align-items:center;width:min(100%,650px);display:grid}.place-hero-copy>svg{color:#ffe08b;grid-row:1/3;width:24px}.place-header h1,.place-header p{grid-column:2}.place-header h1{margin:0;font-size:52px;line-height:1.1}.place-header p{color:#fffc;margin:7px 0 0;font-size:12px}.region-location-list{border-bottom:1px solid var(--journal-line);align-items:center;gap:18px;margin:-18px 0 28px;padding-bottom:18px;display:flex}.region-location-list>strong{color:var(--journal-muted);flex:none;font-size:10px}.region-location-list ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.region-location-list li{border:1px solid var(--journal-line);background:#fffcf1b3;border-radius:18px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:10px;display:inline-flex}.region-location-list li svg{width:12px;color:var(--journal-coral)}.region-location-list li small{color:var(--journal-muted);font-size:8px}.place-photo-grid{columns:4 250px;column-gap:14px}.place-photo-tile{break-inside:avoid;background:var(--journal-surface);width:100%;margin:0 0 14px;padding:7px;display:inline-grid;position:relative;overflow:hidden;box-shadow:0 12px 30px #69441c21}.place-photo-tile img{object-fit:cover;filter:saturate(.96)sepia(.025);width:100%;height:auto;min-height:180px;transition:filter .3s,transform .55s cubic-bezier(.16,1,.3,1)}.place-photo-tile>span{color:#fff;opacity:0;background:linear-gradient(#0000,#3e2514cc);gap:4px;padding:38px 14px 13px;transition:opacity .25s;display:grid;position:absolute;bottom:7px;left:7px;right:7px}.place-photo-tile>span strong{font-size:12px}.place-photo-tile time{font-size:9px}.place-photo-tile small{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.place-photo-tile:hover img{filter:saturate(1.05)sepia(0);transform:scale(1.025)}.place-photo-tile:hover>span,.place-photo-tile:focus-visible>span{opacity:1}.single-photo-page{isolation:isolate;width:min(100% - 56px,1380px);height:calc(100svh - 68px);margin:0 auto;padding:8px 0 10px;position:relative;overflow:hidden}.single-photo-backdrop{z-index:-3;object-fit:cover;opacity:.2;filter:saturate(.9);width:100vw;height:100%;position:absolute;top:0;left:calc(-50vw + 50%);right:calc(-50vw + 50%)}.single-photo-wash{z-index:-2;background:linear-gradient(180deg, #fff5c959, var(--journal-bg));height:100%;position:absolute;top:0;left:calc(-50vw + 50%);right:calc(-50vw + 50%)}.single-photo-nav{justify-content:space-between;align-items:center;min-height:44px;display:flex}.single-photo-nav a{color:var(--journal-ink)}.single-photo-nav a:last-child{color:var(--journal-green)}.single-photo-layout{grid-template-columns:minmax(0,2.3fr) minmax(280px,.7fr);align-items:stretch;gap:34px;height:calc(100% - 44px);min-height:0;display:grid}.single-photo-layout>figure{background:var(--journal-surface);min-height:0;box-shadow:var(--journal-shadow);grid-template-rows:minmax(0,1fr) auto;margin:0;padding:10px 10px 0;display:grid;overflow:hidden}.single-photo-layout>figure>img{object-fit:contain;background:var(--journal-photo-mat);width:100%;height:100%;min-height:0;max-height:none}.single-photo-layout figcaption{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:5px 12px;padding:10px 3px 12px;display:grid}.single-photo-layout figcaption>span{align-items:center;gap:6px;min-width:0;display:flex}.single-photo-layout figcaption svg{color:#a85643;width:15px}.single-photo-layout figcaption strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.single-photo-layout figcaption time{color:var(--journal-muted);font-size:9px}.single-photo-layout figcaption p{color:var(--journal-muted);grid-column:1/-1;margin:1px 0 0;font-size:12px;line-height:1.45}.single-photo-conversation{border-top:3px solid var(--journal-sun);grid-template-rows:auto minmax(0,1fr);gap:12px;height:100%;min-height:0;padding-top:12px;display:grid;position:static;overflow:hidden}.single-photo-conversation>header{border-bottom:1px solid var(--journal-line);align-items:center;gap:9px;padding-bottom:12px;display:flex}.single-photo-conversation>header>svg{color:#a85643;fill:#f2c14e3d;width:18px}.single-photo-conversation h1{margin:0;font-size:16px}.single-photo-conversation .comment-thread-content{overscroll-behavior:contain;height:100%;min-height:0;padding-right:6px;overflow-y:auto}.conversation-empty{color:var(--journal-muted);margin:0;padding:12px 0;font-size:11px;line-height:1.7}.photo-time-editor{min-width:0;color:var(--journal-muted);position:relative}.photo-time-editor>summary{cursor:pointer;align-items:center;gap:6px;min-height:34px;padding:0 4px;font-size:10px;list-style:none;display:inline-flex}.photo-time-editor>summary::-webkit-details-marker{display:none}.photo-time-editor>summary svg{flex:none;width:13px;height:13px}.photo-time-editor>summary svg:last-child{opacity:.48;width:11px;transition:opacity .2s,transform .2s cubic-bezier(.16,1,.3,1)}.photo-time-editor>summary:hover svg:last-child,.photo-time-editor>summary:focus-visible svg:last-child{opacity:1;transform:rotate(-8deg)}.photo-time-panel{z-index:24;border:1px solid var(--journal-line);width:min(300px,100vw - 32px);color:var(--journal-ink);background:var(--journal-surface);border-radius:4px;gap:13px;padding:16px;animation:.28s cubic-bezier(.16,1,.3,1) both photo-time-panel-enter;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 18px 42px #5b391533}.photo-time-panel label{gap:7px;display:grid}.photo-time-panel label span{color:var(--journal-muted);font-size:10px;font-weight:800}.photo-time-panel input{border:1px solid var(--journal-line);width:100%;height:44px;color:var(--journal-ink);background:var(--journal-bg);border-radius:3px;padding:0 10px}.photo-time-panel input:focus{border-color:var(--journal-amber);outline:none}.photo-time-panel .form-error{margin:0;font-size:10px}.photo-time-panel>div{justify-content:flex-end;gap:8px;display:flex}.photo-time-panel button{min-height:40px;color:var(--journal-muted);background:0 0;border-radius:3px;align-items:center;gap:6px;padding:0 11px;font-size:10px;font-weight:800;display:inline-flex}.photo-time-panel button:last-child{color:#fff;background:var(--journal-amber-deep)}.photo-time-panel button:disabled{cursor:wait;opacity:.55}.photo-time-panel button svg{width:13px}.pswp{--pswp-bg:#17130f;--pswp-placeholder-bg:#2b241d;z-index:120}.pswp__button--details{color:#fff8e8;opacity:.88;width:96px;min-width:96px;padding:0 12px}.pswp__button--details:hover,.pswp__button--details:focus-visible{opacity:1}.pswp__button--details span{white-space:nowrap;border-bottom:1px solid #ffe08d85;align-items:center;min-height:44px;font-size:11px;font-weight:800;display:inline-flex}::view-transition-group(*){animation-duration:.28s;animation-timing-function:cubic-bezier(.16,1,.3,1)}.mobile-nav{display:none}.recent-photo-entry figure,.place-photo-tile{contain:paint}.album-card a:hover .journey-card-photo img,.album-card a:focus-visible .journey-card-photo img{transform:scale(1.025)}.place-photo-tile:hover img{transform:scale(1.018)}.story-hero>img{transition:transform .65s cubic-bezier(.16,1,.3,1)}.story-hero:hover>img{transform:scale(1.018)}.single-photo-layout figcaption{background:var(--journal-surface);position:relative}.map-marker{animation:3.4s ease-in-out infinite map-marker-breathe}.account-menu[open] .account-popover{animation:.26s cubic-bezier(.16,1,.3,1) both account-popover-enter}.album-upload-fields{grid-template-columns:minmax(110px,.65fr) minmax(150px,1fr) minmax(180px,1.15fr)}.album-upload-fields label>span{align-items:center;gap:5px;display:flex}.album-upload-fields label>span svg{width:13px;height:13px}.album-upload-fields label>small,.standalone-upload-panel>label>small{color:var(--journal-muted);font-size:9px;line-height:1.45}.standalone-upload-panel{background:var(--journal-surface)}.standalone-upload-panel input[type=datetime-local]{border:1px solid var(--journal-line);width:100%;height:46px;color:var(--journal-ink);background:var(--journal-bg);border-radius:3px;padding:0 12px}@keyframes journal-page-enter{0%{opacity:0;filter:blur(3px);transform:translateY(10px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes map-marker-breathe{0%,to{scale:1;box-shadow:0 10px 24px #7445173b}50%{scale:1.045;box-shadow:0 15px 34px #7445174d}}@keyframes photo-map-scroll-cue{0%,to{opacity:.72;transform:translateY(-2px)}50%{opacity:1;transform:translateY(3px)}}@keyframes album-form-reveal{0%{opacity:.72;clip-path:inset(0 0 8%);transform:translateY(18px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}@keyframes journey-cover-arrive{0%{filter:blur(5px);opacity:.74;clip-path:inset(0 2% 8%);transform:translateY(14px)}to{filter:blur();opacity:1;clip-path:inset(0);transform:translateY(0)}}@keyframes account-popover-enter{0%{opacity:0;filter:blur(4px);transform:translateY(-7px)scale(.985)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes photo-time-panel-enter{0%{opacity:0;clip-path:inset(0 0 16%);transform:translateY(-6px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}@keyframes atlas-loading-light{0%,to{opacity:.3;filter:blur();transform:scale(.98)}50%{opacity:.72;filter:blur(1px);transform:scale(1.015)}}@keyframes journal-photo-develop{0%{opacity:.72;clip-path:inset(0 0 12%)}to{opacity:1;clip-path:inset(0)}}@keyframes journal-memory-arrive{0%{opacity:.58;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@supports (animation-timeline:view()){.album-card,.journey-photo-card,.recent-photo-entry,.place-photo-tile{animation:cubic-bezier(.16,1,.3,1) both journal-photo-develop;animation-timeline:view();animation-range:entry entry 34%}.memory-photo{animation:cubic-bezier(.16,1,.3,1) both journal-memory-arrive;animation-timeline:view();animation-range:entry entry 30%}}@media (max-width:980px){.admin-account-row{grid-template-columns:minmax(0,1fr) auto;gap:14px 18px;padding:18px 2px}.admin-role{grid-area:2/1}.admin-account-row>time{grid-area:1/2;align-self:start}.admin-account-actions{grid-area:2/2}}@media (max-width:800px){.app-header{min-height:58px;padding:env(safe-area-inset-top,0) 14px 0;grid-template-columns:1fr auto}.desktop-nav,.standalone-uploader-header{display:none}.standalone-uploader-map{display:block}.brand>span:last-child small{display:none}.account-menu>summary{min-height:52px;padding-left:0}.account-identity,.account-menu>summary>svg{display:none}.account-avatar{width:36px;height:36px}.account-popover{width:min(286px,100vw - 32px);top:calc(100% + 5px)}.mobile-nav{z-index:80;min-height:calc(56px + var(--safe-bottom));padding:4px 8px var(--safe-bottom);-webkit-backdrop-filter:blur(24px)saturate(1.18);background:linear-gradient(135deg,#fffdf8e6,#faf3dcd1);border-top:1px solid #76501824;grid-template-columns:repeat(2,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #5d3e1a14}.mobile-nav a{min-width:0;min-height:46px;color:var(--journal-muted);box-shadow:none;background:0 0;align-content:center;place-items:center;gap:2px;font-size:8px;display:grid}.mobile-nav a[aria-current=page]{color:var(--journal-green)}.mobile-nav a[aria-current=page] svg{color:#a75b27}.mobile-nav svg{width:18px;height:18px}.albums-page{min-height:calc(100dvh - 64px);padding:12px 0 calc(100px + var(--safe-bottom))}.journey-index{width:calc(100% - 24px)}.journey-masthead{align-items:end;gap:20px;min-height:270px;padding:24px 20px}.journey-masthead:after{top:14px;right:16px}.journey-masthead h1{font-size:32px}.journey-masthead p{max-width:28ch;font-size:11px;line-height:1.55}.journey-couple{margin-bottom:11px}.journey-masthead .primary-command{flex:none;width:46px;padding:0;font-size:0}.journey-masthead .primary-command svg{width:19px}.journey-stats{min-height:72px}.journey-stats>div{grid-template-rows:auto auto auto;grid-template-columns:1fr;justify-items:center;gap:3px;padding:10px 5px}.journey-stats>div+div:before{top:12px;bottom:12px}.journey-stats svg{grid-row:auto;width:17px;height:17px}.journey-stats dd{font-size:18px}.journey-stats dt{margin-top:0;font-size:8px}.journey-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-top:18px}.journey-card-photo{aspect-ratio:4/3;padding:0}.journey-card-photo:after{inset:0}.journey-pin{top:11px;right:11px}.album-card-copy{padding:36px 30px 10px 11px}.album-card-copy>div{flex-direction:column;align-items:start;gap:2px}.album-card-copy h2{margin:5px 0 0;font-size:13px}.album-card-copy p{display:none}.journey-card-count{margin-top:4px}.album-card-copy>svg{width:14px;bottom:12px;right:10px}.page-shell{width:min(100% - 32px,720px);padding:44px 0 calc(104px + var(--safe-bottom))}.editor-page h1,.map-page h1,.trash-page h1,.settings-page>header h1,.admin-page>header h1{font-size:32px}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.editor-form{padding:24px 18px}.settings-page{width:min(100% - 32px,820px)}.settings-page>header{padding:2px 0 22px}.settings-row{grid-template-columns:1fr;gap:18px;padding:26px 0 28px}.settings-label p{max-width:none}.settings-name-grid,.settings-password-grid{grid-template-columns:1fr;gap:14px}.settings-password-grid>label:first-child{grid-column:auto}.admin-page{width:calc(100% - 32px)}.admin-page>header{flex-direction:column;align-items:start;gap:10px;min-height:82px}.admin-account-toolbar{min-height:82px}.admin-account-row{grid-template-columns:minmax(0,1fr) auto;gap:14px 18px;padding:18px 2px}.admin-role{grid-area:2/1}.admin-account-row>time{grid-area:1/2;align-self:start}.admin-account-actions{grid-area:2/2}.admin-dialog{border-bottom:0;border-left:0;border-right:0;border-radius:8px 8px 0 0;width:100%;max-width:none;max-height:calc(100dvh - 18px);margin:auto 0 0}.admin-dialog-content{padding:20px 18px calc(22px + var(--safe-bottom));gap:18px}.admin-form-grid{grid-template-columns:1fr}.admin-field-wide{grid-column:auto}.admin-dialog-actions{bottom:calc(-22px - var(--safe-bottom));margin:0 -18px calc(-22px - var(--safe-bottom));padding:12px 18px calc(12px + var(--safe-bottom));border-top:1px solid var(--journal-line);background:color-mix(in srgb, var(--journal-surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky}.admin-dialog-actions .primary-command{flex:1}.album-story{padding-top:12px;padding-bottom:calc(100px + var(--safe-bottom))}.story-header{width:calc(100% - 24px)}.story-hero{height:min(42svh,340px);min-height:300px}.story-header nav{top:14px;left:14px;right:14px}.story-header nav a,.album-manage-trigger{min-height:42px;padding:0 10px;font-size:10px}.story-hero-copy{bottom:22px;left:22px;right:22px}.story-hero-copy h1{font-size:32px}.story-hero-copy blockquote{margin-top:11px;font-size:13px;line-height:1.5}.story-details{gap:22px;width:calc(100% - 24px);margin:24px auto 36px}.story-copy{grid-template-columns:1fr;gap:14px;width:100%;margin:0;padding-bottom:20px}.story-copy p{font-size:14px}.story-details .map-panel,.story-details .upload-panel{width:100%}.photo-journal{width:calc(100% - 32px)}.amap-canvas,.map-fallback{min-height:330px}.upload-panel{grid-template-columns:1fr auto;align-items:end}.upload-panel>div:first-child,.album-upload-fields{grid-column:1/-1}.upload-panel .secondary-command{justify-self:stretch}.photo-journal{gap:48px}.memory-photo{grid-template-columns:1fr;gap:18px}.memory-photo:nth-child(2n) figure{order:0}.memory-photo figure{width:calc(100% + 16px);margin-left:-8px;padding:8px 8px 0}.memory-photo figure>img{max-height:none}.memory-photo figcaption{grid-template-columns:1fr}.comment-thread{position:static}.comment-replies,.comment-reply-composer{margin-left:22px}.comment-actions button,.comment-edit-form button,.comment-delete-confirm button{min-height:44px}.journey-photo-section{width:calc(100% - 24px);margin:20px auto 44px}.journey-photo-section>header{align-items:center;gap:12px;min-height:62px;margin-bottom:14px;padding-bottom:12px}.journey-photo-section h2{font-size:21px}.journey-photo-section header p{max-width:28ch;font-size:9px}.journey-add-photo-button{border-radius:50%;flex:none;gap:0;width:46px;min-width:46px;min-height:46px;padding:3px;box-shadow:0 8px 20px #69441c21}.journey-photo-grid{columns:2 150px;column-gap:8px}.journey-photo-card{margin-bottom:8px;box-shadow:0 9px 24px #603f1b1c}.journey-photo-card figure img{min-height:120px}.journey-photo-open{opacity:1;width:32px;height:32px;top:8px;right:8px;transform:none}.journey-photo-card>a>div{gap:5px;padding:9px 9px 10px}.journey-photo-card>a>div>span{gap:3px;display:grid}.journey-photo-card strong{font-size:10px}.journey-photo-card time{font-size:8px}.journey-photo-card small{min-height:24px;font-size:8px}.journey-photo-empty{min-height:210px}.album-upload-dialog,.album-manager-dialog,.photo-metadata-dialog{border-bottom:0;border-left:0;border-right:0;border-radius:8px 8px 0 0;width:100%;max-width:none;max-height:calc(100dvh - 18px);margin:auto 0 0}.album-upload-dialog-content,.album-manager-dialog-content,.photo-metadata-dialog-content{padding:20px 18px calc(22px + var(--safe-bottom));gap:18px}.album-upload-dialog-content>header,.album-manager-dialog-content>header,.photo-metadata-dialog-content>header{gap:10px;padding-bottom:14px}.album-upload-dialog-content>header>div>span,.album-manager-dialog-content>header>div>span,.photo-metadata-dialog-content>header>div>span{width:38px;height:38px}.album-upload-dialog-content h2,.album-manager-dialog-content h2,.photo-metadata-dialog-content h2{font-size:18px}.album-upload-dropzone{min-height:150px}.album-upload-previews{grid-template-columns:repeat(3,minmax(0,1fr));max-height:210px}.album-upload-fields{grid-template-columns:1fr}.album-upload-dialog-actions,.photo-metadata-dialog-actions{bottom:calc(-22px - var(--safe-bottom));z-index:2;margin:0 -18px calc(-22px - var(--safe-bottom));padding:12px 18px calc(12px + var(--safe-bottom));border-top:1px solid var(--journal-line);background:color-mix(in srgb, var(--journal-surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky}.album-upload-dialog-actions .primary-command{flex:1;min-width:0}.album-manager-form{padding:0}.album-manager-danger,.photo-metadata-danger{flex-direction:column;align-items:stretch;gap:14px}.album-manager-danger>button,.photo-metadata-danger>button{align-self:start;min-height:44px}.album-manager-delete-confirm,.photo-metadata-delete-confirm{justify-items:start}.album-manager-delete-confirm>div,.photo-metadata-delete-confirm>div{justify-content:space-between;width:100%}.photo-library-page{padding:0 0 calc(100px + var(--safe-bottom))}.photo-map-stage{width:calc(100% - 20px);height:calc(100svh - 138px - var(--safe-bottom));border-radius:6px;min-height:0;margin:8px auto 0;box-shadow:0 14px 36px #67461f24}.photo-map-backdrop{object-position:center 43%;width:100%;height:154px;bottom:auto;right:0}.photo-map-wash{background:linear-gradient(#2d1f1033,#2d1f1057 54%,#2d1f10b8);width:100%;height:154px;bottom:auto;right:0}.photo-map-frame{inset:154px 0 0}.photo-map-signature{gap:4px;width:auto;top:12px;left:18px;right:18px;transform:none}.photo-map-pair{gap:7px;padding-bottom:5px;font-size:9px}.photo-map-signature h1{font-size:23px}.photo-map-signature p{max-width:37ch;margin-top:4px;font-size:9px;line-height:1.4}.photo-map-summary{grid-template-columns:20px minmax(0,1fr);gap:9px;width:auto;padding-top:7px;inset:102px 72px auto 18px}.photo-map-summary>svg{width:18px;height:18px}.photo-map-summary>div{grid-template-columns:auto 1fr;align-items:baseline;gap:2px 8px}.photo-map-summary strong{font-size:14px}.photo-map-summary span{font-size:9px}.photo-map-summary small{grid-column:1/-1;font-size:8px}.photo-map-controls{display:flex;top:10px;right:10px}.photo-map-controls button{width:40px;height:40px}.photo-map-controls button+button{border-top:0;border-left:1px solid #91571824}.photo-map-upload{bottom:14px;left:14px}.atlas-place-card{width:48px;height:48px;padding:3px}.atlas-place-card img{width:38px;height:38px}.atlas-place-card span{max-width:66px;font-size:7px}.atlas-place-card b{min-width:20px;height:20px;top:-7px;right:-7px}.photo-map-fallback{padding:54px 14px 36px}.photo-map-fallback nav{grid-template-columns:1fr;max-height:220px;overflow:auto}.recent-photo-section{width:100%;margin-top:40px}.recent-photo-section>header{align-items:center;gap:14px;width:calc(100% - 24px);min-height:58px;margin:0 auto;padding:4px 2px 12px}.recent-photo-section h2{font-size:22px}.recent-photo-section header p{font-size:10px}.recent-photo-section header>span{text-align:right;max-width:104px;font-size:9px}.photo-map-scroll-cue{width:38px;height:38px;inset:104px 14px auto auto;transform:none}.photo-map-scroll-cue:hover,.photo-map-scroll-cue:focus-visible{transform:translateY(2px)}.recent-photo-timeline{gap:14px;padding:24px 12px 20px;scroll-padding-inline:12px}.recent-photo-entry{flex-basis:78vw}.recent-photo-entry:first-child{flex-basis:80vw}.recent-photo-entry:after{width:calc(100% + 14px)}.recent-photo-entry figure{height:200px;padding:4px}.recent-photo-node{width:38px;height:38px;padding:4px}.recent-photo-node:before{width:6px;height:6px}.recent-photo-node time{font-size:8px;left:46px}.recent-photo-copy{gap:4px;padding:11px 4px 2px}.recent-photo-copy strong{font-size:15px}.recent-photo-copy small{max-width:100%;font-size:10px}.recent-photo-copy i{justify-self:start;min-height:28px}.place-page{width:calc(100% - 16px);padding:12px 0 calc(104px + var(--safe-bottom))}.place-header{min-height:340px;margin-bottom:24px;padding:14px 16px 24px}.place-header h1{font-size:38px}.standalone-uploader-place{bottom:22px;right:16px}.standalone-uploader-place>summary{min-height:42px;padding-inline:13px}.standalone-uploader-place .standalone-upload-panel{top:auto;right:16px;bottom:calc(70px + var(--safe-bottom));width:auto;max-height:calc(100svh - 96px - var(--safe-bottom));position:fixed;left:16px;overflow-y:auto}.place-hero-copy{padding-right:120px}.region-location-list{gap:10px;margin:0 4px 18px;display:grid}.region-location-list ul{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.region-location-list li{flex:none}.place-photo-grid{columns:2 150px;column-gap:7px}.place-photo-tile{margin-bottom:7px;padding:4px}.place-photo-tile img{min-height:120px}.place-photo-tile>span{color:var(--journal-ink);background:var(--journal-surface);opacity:1;padding:9px 8px 10px;position:static}.place-photo-tile time{color:var(--journal-muted)}.place-photo-tile small{font-size:10px}.single-photo-page{width:100%;height:auto;min-height:0;padding:12px 0 calc(104px + var(--safe-bottom));overflow:visible}.single-photo-backdrop,.single-photo-wash{width:100%;height:410px;left:0;right:0}.single-photo-nav{padding:0 16px}.single-photo-nav a:last-child{display:none}.single-photo-layout{grid-template-columns:1fr;align-items:start;gap:42px;height:auto;min-height:0}.single-photo-layout>figure{grid-template-rows:auto auto;min-height:0;padding:7px 7px 0;display:grid;overflow:visible;box-shadow:0 15px 38px #69441c29}.single-photo-layout>figure>img{height:auto;max-height:none}.single-photo-layout figcaption{padding-inline:9px}.single-photo-conversation{grid-template-rows:auto auto;width:calc(100% - 32px);height:auto;min-height:0;margin:0 auto;display:grid;position:static;overflow:visible}.single-photo-conversation .comment-thread-content{height:auto;min-height:0;padding-right:0;overflow:visible}}@media (max-width:480px){.brand-pair{gap:4px;font-size:11px}.brand strong{font-size:11px}.avatar-editor{flex-direction:row;align-items:center}.avatar-preview{width:76px;height:76px}.settings-form>button{justify-content:center;width:100%}.comment-emoji-picker>div{grid-template-columns:repeat(4,minmax(0,1fr));width:min(190px,100vw - 44px);right:0}.comment-emoji-picker>div button{width:100%}.story-header nav a,.album-manage-trigger{justify-content:center;width:44px;padding:0;font-size:0}.story-header nav svg{width:18px;height:18px}.story-hero-copy>p span{border:0;width:100%;padding:0}.map-fallback{padding:18px}.map-fallback li{flex-direction:column;align-items:start;gap:12px}.journey-photo-section>header{align-items:end}.journey-photo-section header p{max-width:22ch}.single-photo-layout figcaption{grid-template-columns:minmax(0,1fr) auto}.single-photo-layout figcaption .photo-metadata-editor{grid-column:1/-1;justify-self:start}.admin-account-toolbar{flex-direction:column;align-items:stretch;gap:14px}.admin-create-account>button{width:100%}.admin-account-row{grid-template-columns:1fr}.admin-role,.admin-account-row>time,.admin-account-actions{grid-area:auto/1}.admin-account-actions{justify-content:flex-start}.admin-row-command{min-height:44px}.admin-self-note{padding-left:0}.admin-dialog-actions{grid-template-columns:1fr 1.35fr;display:grid}.admin-dialog-actions button{justify-content:center}}@media (max-width:800px){.photo-map-stage{height:calc(100svh - 138px - var(--safe-bottom));min-height:0}.photo-map-summary small{display:none}.photo-map-controls button{width:44px;height:44px}.recent-photo-section{margin-top:40px}.standalone-uploader-map>.standalone-upload-trigger{border-radius:50%;gap:0;width:46px;min-width:46px;min-height:46px;padding:3px}.standalone-uploader-map .map-upload-icon,.journey-add-photo-button .map-upload-icon{border-radius:50%;width:38px;height:38px}.standalone-uploader-map .map-upload-copy,.journey-add-photo-button .map-upload-copy{display:none}.standalone-uploader-place>.standalone-upload-trigger{min-height:42px;padding-inline:13px}.standalone-upload-dialog{border-bottom:0;border-left:0;border-right:0;border-radius:8px 8px 0 0;width:100%;max-width:none;max-height:calc(100dvh - 18px);margin:auto 0 0}.standalone-upload-dialog-content{padding:20px 18px calc(22px + var(--safe-bottom));gap:18px}.standalone-upload-dialog-content>header{gap:10px;padding-bottom:14px}.standalone-upload-dialog-content>header>div>span{width:38px;height:38px}.standalone-upload-dialog-content h2{font-size:18px}.standalone-upload-fields{grid-template-columns:1fr}.standalone-upload-dialog-actions{z-index:2;bottom:calc(-22px - var(--safe-bottom));margin:0 -18px calc(-22px - var(--safe-bottom));padding:12px 18px calc(12px + var(--safe-bottom));border-top:1px solid var(--journal-line);background:color-mix(in srgb, var(--journal-surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky}.standalone-upload-dialog-actions .primary-command{flex:1;min-width:0}.admin-permission-fieldset>div{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:.001ms}.archive-app>main,.app-header:before,.album-create-page .editor-form,.story-hero,.photo-map-backdrop,.photo-map-loading:before,.photo-map-scroll-cue svg,.map-marker,.atlas-place-card img,.album-card,.journey-photo-card,.memory-photo,.recent-photo-entry,.place-photo-tile{animation:none}.app-header,.app-header:before,.story-hero>img,.journey-card-photo img,.journey-photo-card figure img,.journey-photo-open,.memory-photo figure>img,.recent-photo-entry figure img,.recent-photo-copy svg,.place-photo-tile img,.single-photo-layout>figure>img{transition:none}}
