/* Shared journal tokens; scoped components keep the deferred diorama isolated. */
:root{--journal-paper:#f5f1e9;--journal-surface:#fffdf8;--journal-ink:#302f2a;--journal-muted:#64645b;--journal-line:#d9d4c8;--journal-accent:#485846;--journal-radius:12px;--journal-shadow:0 10px 28px #302f2a0c;--journal-gap:clamp(16px,2vw,28px)}
.journal-public,.studio-body{background:var(--journal-paper);color:var(--journal-ink);font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.55}
.journal-public h1,.studio-body h1{font-family:inherit;font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.12;letter-spacing:-.035em;overflow-wrap:anywhere}.journal-public h2,.studio-body h2{font-family:inherit;font-size:clamp(1.25rem,2vw,1.8rem);letter-spacing:-.025em}.journal-public p,.studio-body p{overflow-wrap:anywhere}.soft-label{color:var(--journal-muted);text-transform:none;letter-spacing:.035em;font-weight:600}
:is(.journal-public,.studio-body) :focus-visible{outline:3px solid #7b4c24;outline-offset:3px}:is(.journal-public,.studio-body) :is(button,summary,.button,.nav-pill){min-height:44px}:is(.journal-public,.studio-body) .button{background:var(--journal-accent);color:#fff;border-radius:7px;box-shadow:none}:is(.journal-public,.studio-body) .button.secondary{background:transparent;color:var(--journal-ink);border:1px solid var(--journal-line)}:is(.journal-public,.studio-body) input:not([type=checkbox]):not([type=range]),:is(.journal-public,.studio-body) select,:is(.journal-public,.studio-body) textarea{min-height:44px;border:1px solid #aaa99d;border-radius:7px;background:var(--journal-surface);color:var(--journal-ink);max-width:100%;font:inherit;padding:.65rem}.journal-public [hidden],.studio-body [hidden]{display:none!important}
.journal-public #main{max-width:1240px;padding-inline:clamp(18px,4vw,48px);margin:auto}.journal-public .header{padding-block:12px;background:#f5f1e9ed;border-bottom:1px solid var(--journal-line)}.journal-public .hero{min-height:0;padding:24px 0;gap:28px;grid-template-columns:.85fr 1.3fr}.journal-public .hero h1{font-size:clamp(1.9rem,3vw,3rem);max-width:13ch}.journal-public .hero-collage{height:340px;min-height:0;isolation:isolate}.journal-public .hero-photo{animation:none;box-shadow:var(--journal-shadow);border-radius:8px}.journal-public .hero-photo-1{width:94%;height:96%;inset:0 auto auto 0;transform:none}.journal-public .hero-photo-2{width:34%;height:48%;inset:auto 0 0 auto;transform:rotate(3deg)}.journal-public .hero-photo-3{display:none}.journal-public .hero-photo img{animation:none}.journal-public .home-band{padding:28px 0;margin:0;border-top:1px solid var(--journal-line);background:transparent;border-radius:0}.journal-public .section-head{margin-bottom:18px;gap:16px}.journal-public .section-head h2{margin:4px 0}.journal-public .section-head p{margin:0}.journal-public .album-card{border:1px solid var(--journal-line);background:var(--journal-surface);border-radius:var(--journal-radius);box-shadow:none}.journal-public .albums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.journal-public .album-card:first-child{grid-column:auto;grid-row:auto}.journal-public .album-card:first-child a{display:block}.journal-public .album-photo,.journal-public .album-card:first-child .album-photo{height:220px;aspect-ratio:auto}.journal-public .album-card:nth-child(3n+2) .album-photo img{object-fit:contain;background:#e7e2d7}.journal-public .album-copy{padding:18px}.journal-public .album-card:hover{transform:translateY(-3px);box-shadow:var(--journal-shadow)}.journal-public .album-card:hover img{transform:scale(1.02)}.journal-public .album-bottom{flex-wrap:wrap;gap:8px;font-size:.8rem}.journal-public .album-copy h3{font-size:1.2rem}.journal-public .albums-intro,.journal-public .album-head{padding:24px 0;margin-bottom:20px;min-height:0}.journal-public .media-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}.journal-public .media-thumb{height:250px;background:#e7e2d7}.journal-public .media-thumb img{width:100%;height:100%;object-fit:contain}.journal-public .viewer img{max-height:62vh;width:100%;object-fit:contain}.journal-public .compare-section{margin:24px 0;padding:22px;background:var(--journal-surface);border:1px solid var(--journal-line);border-radius:12px}.journal-public .footer{max-width:1240px;margin:32px auto 0;padding:24px 32px;border-top:1px solid var(--journal-line);background:transparent}.version-navigation{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.version-navigation a{min-height:44px;padding:10px 16px;border:1px solid var(--journal-line);border-radius:6px;background:var(--journal-surface);color:var(--journal-ink);text-decoration:none}.version-navigation a:focus,.version-navigation a:hover{background:#e3e8dc}
.studio-body .studio-top{justify-content:flex-start;position:fixed;inset:0 auto 0 0;width:232px;display:flex;flex-direction:column;align-items:stretch;padding:22px 14px;background:#eeeae0;border-right:1px solid var(--journal-line);box-shadow:none;overflow:auto;z-index:40}.studio-body .studio-top nav{display:flex;flex-direction:column;align-items:stretch;gap:3px;margin-top:24px}.studio-body .studio-top nav>a{display:block;padding:10px 13px;min-height:44px;border-radius:7px;color:var(--journal-ink);text-decoration:none}.studio-top nav>a[aria-current=page]{background:#dce3d3;font-weight:700;box-shadow:inset 3px 0 var(--journal-accent)}.studio-top nav>a:hover{background:#e4e0d5}.studio-brand{gap:9px;font-size:1rem}.studio-user{padding:16px 12px 4px;border-top:1px solid var(--journal-line);margin-top:12px;color:var(--journal-muted)}.studio-lock{width:100%;text-align:left;background:transparent;border:0;padding:10px;color:#673e32}.studio-body .studio-main{margin-left:232px;max-width:none;width:auto;padding:32px clamp(18px,3vw,48px)}.studio-body .studio-page-head{margin:0 0 16px;align-items:center;gap:20px}.studio-body .studio-panel,.studio-body .studio-section{background:var(--journal-surface);border:1px solid var(--journal-line);border-radius:12px;padding:18px;box-shadow:none}.studio-body .studio-columns{gap:20px}.studio-body .studio-section{margin:20px 0}.studio-body .studio-metrics{display:none}.studio-body .studio-messages{margin:0 24px 0 256px;padding-top:12px;max-width:100%}.studio-body .studio-messages p{background:#e7eddf;border-left:3px solid #546a42;padding:10px 16px;border-radius:5px}.studio-body .studio-photo-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.studio-body .studio-photo-row img{width:100%;height:155px;object-fit:contain;background:#ede8dc}.studio-body .studio-photo-row a{min-width:0;background:transparent}.studio-body .studio-list-item{border-bottom:1px solid var(--journal-line);border-radius:0;background:transparent;gap:16px}.studio-body .studio-list-item h2{font-size:1.05rem}.studio-body .library-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding:18px;background:var(--journal-surface);border:1px solid var(--journal-line);border-radius:12px}.library-filters label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;flex:1;min-width:130px}.library-filters label:first-child{flex:2;min-width:190px}.library-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0}.library-heading button{padding:8px 14px;background:transparent;border:1px solid var(--journal-line)}.library-heading button[aria-pressed=true]{background:#dce3d3}.studio-body .bulk-bar{position:sticky;top:8px;z-index:10;border:1px solid var(--journal-line);background:#f5f1e9f5;display:flex;flex-wrap:wrap;gap:12px;padding:12px}.studio-body .photo-card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}.studio-photo-card{border:1px solid var(--journal-line);border-radius:12px;overflow:hidden;background:var(--journal-surface)}.photo-card-media{aspect-ratio:4/3}.photo-card-media img{width:100%;height:100%;object-fit:contain;background:#e7e2d7}.photo-card-body{padding:14px}.photo-card-body h2{font-size:1rem!important;margin:0;overflow-wrap:anywhere}.photo-card-body p{font-size:.85rem;color:var(--journal-muted)}.studio-body .photo-card-grid.is-list{display:flex;flex-direction:column}.photo-card-grid.is-list .studio-photo-card{display:grid;grid-template-columns:160px 1fr}.photo-card-grid.is-list .photo-card-media{height:120px}.photo-card-grid.is-list .photo-card-body{align-self:center}.studio-body .studio-photo-editor{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px}.studio-photo-editor fieldset{border:0;border-bottom:1px solid var(--journal-line);padding:0 0 22px;margin:0 0 22px;display:grid;gap:12px}.studio-photo-editor legend{font-weight:700;padding:0;margin-bottom:14px;font-size:1.1rem}.studio-photo-editor fieldset label{display:block}.studio-photo-editor .studio-large-preview img{max-height:65vh;object-fit:contain}.save-dock{position:sticky;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:var(--journal-surface);box-shadow:0 -4px 24px #302f2a12;border:1px solid var(--journal-line);border-radius:8px}.save-dock span{font-size:.82rem;color:var(--journal-muted)}.save-dock.is-dirty{border-color:#93612e}.selected-files{padding:0;list-style:none;text-align:left}.selected-files li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px;border-bottom:1px solid var(--journal-line);overflow-wrap:anywhere}.selected-files button{background:transparent;border:1px solid var(--journal-line);border-radius:5px}.upload-panel progress{width:100%;accent-color:var(--journal-accent)}.restoration-journey{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:14px 0;border-block:1px solid var(--journal-line)}.restoration-journey li{padding:8px;color:var(--journal-muted)}.restoration-journey [aria-current=step]{color:var(--journal-ink);font-weight:700;border-bottom:3px solid var(--journal-accent)}.manual-adjustment{border-block:1px solid var(--journal-line);padding:8px 0;margin:12px 0}.manual-adjustment summary{cursor:pointer;padding:10px 0}.studio-body .danger-zone{margin-top:36px;border:1px solid #c7aaa0;background:#f6eee8;border-radius:8px}.studio-menu-toggle{display:none}.task-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1px solid var(--journal-line);border-radius:8px;overflow:hidden;margin-bottom:18px}.task-board a{display:flex;justify-content:space-between;gap:8px;padding:12px;text-decoration:none;color:var(--journal-ink);background:var(--journal-surface);border:0;border-right:1px solid var(--journal-line);border-radius:0;font-size:.8rem;align-items:center}.task-board a:hover{border-color:#6d7d60}.task-board strong{font-size:1.15rem}
@media(max-width:1050px){.studio-body .studio-top{width:190px}.studio-body .studio-main{margin-left:190px}.studio-body .studio-messages{margin-left:214px}.studio-body .studio-photo-row{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-public .albums{grid-template-columns:repeat(2,minmax(0,1fr))}.task-board{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.studio-body .studio-top{position:sticky;inset:0;width:100%;height:auto;padding:12px 16px;border-bottom:1px solid var(--journal-line);overflow:visible}.studio-menu-toggle{display:block;position:absolute;right:12px;top:10px;border:1px solid var(--journal-line);padding:8px;background:var(--journal-surface);border-radius:6px}.studio-body.has-refresh-js .studio-top nav{display:none;margin-top:14px;max-height:70vh;overflow:auto}.studio-body.has-refresh-js .studio-top nav.is-open{display:flex}.studio-body .studio-main{margin:0;padding:22px 16px}.studio-body .studio-messages{margin:0 16px}.studio-body .studio-page-head{flex-direction:column}.studio-body .studio-photo-editor{grid-template-columns:1fr}.studio-body .studio-panel,.studio-body .studio-section{padding:16px}.journal-public .hero{grid-template-columns:1fr;padding:24px 0}.journal-public .hero h1{max-width:17ch}.journal-public .hero-collage{height:250px}.journal-public .albums{grid-template-columns:1fr}.journal-public .album-photo{height:230px}.journal-public .section-head{align-items:flex-start;flex-direction:column}.studio-body .bulk-bar{position:static}.library-filters label{min-width:120px}.photo-card-grid.is-list .studio-photo-card{grid-template-columns:100px 1fr}.photo-card-grid.is-list .photo-card-media{height:110px}.save-dock{flex-wrap:wrap}.task-board{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-public .header{flex-wrap:wrap}.journal-public .header nav{flex-wrap:wrap}.journal-public .compare-section{padding:12px}}
@media(prefers-reduced-motion:reduce){.journal-public *,.studio-body *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Component details share the same surface and spacing scale. */
.journal-public .archive-stats{gap:18px;background:transparent;padding:12px 0}.journal-public .archive-stats>div{background:transparent;border-radius:0;padding:0 18px 0 0;border-right:1px solid var(--journal-line)}.journal-public .archive-stats dd{font-size:1.4rem;color:var(--journal-ink)}.journal-public .archive-stats dt{color:var(--journal-muted)}.journal-public .login-shell{min-height:58vh;padding:32px 0;gap:36px}.journal-public .login-card{background:var(--journal-surface);box-shadow:var(--journal-shadow);border:1px solid var(--journal-line);border-radius:12px}.studio-body .studio-album-list article{grid-template-columns:44px 140px minmax(0,1fr) auto;background:var(--journal-surface);border:1px solid var(--journal-line);border-radius:10px;box-shadow:none}.studio-body .studio-album-list img{width:140px;height:110px;object-fit:contain;border-radius:6px;background:#e7e2d7}.studio-body .studio-row-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.studio-body .studio-album-list h2{overflow-wrap:anywhere}.studio-body .photo-card-body>.action-menu{float:right}.studio-body .photo-card-media .select-photo{min-width:44px;min-height:44px;display:grid;place-items:center}.version-navigation a[aria-current=true]{background:#dce3d3;border-color:#69775e;font-weight:700}.studio-body .preview-skeleton{min-height:120px;aspect-ratio:4/3;background:#e7e2d7}.studio-body :disabled{opacity:.6;cursor:wait}.studio-body :is(.studio-main,.studio-panel,.studio-photo-card,.alignment-workspace,.alignment-controls){min-width:0}.studio-body .candidate-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.studio-body code{overflow-wrap:anywhere}.journal-public .full-version-pair img{max-height:45vh;object-fit:contain}
@media(max-width:720px){.studio-body .studio-album-list article{grid-template-columns:44px 80px minmax(0,1fr)}.studio-body .studio-album-list img{width:80px;height:85px}.studio-body .studio-row-actions{grid-column:2/-1}.studio-body .studio-top nav{justify-content:flex-start}.journal-public .archive-stats{flex-wrap:wrap}.journal-public .login-shell{grid-template-columns:1fr;gap:20px}.studio-body.has-refresh-js .studio-menu-toggle{display:block}.studio-body:not(.has-refresh-js) .studio-menu-toggle{display:none}}
/* Second pass: fewer, fuller photographs and denser work surfaces. */
.journal-public .albums.album-count-1{grid-template-columns:minmax(0,1fr);max-width:760px}
.journal-public .albums.album-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.journal-public .album-count-2 .album-photo{height:clamp(230px,26vw,310px)}
.journal-public .album-empty-art,.paper-cover{position:relative;overflow:hidden;background:repeating-linear-gradient(0deg,transparent 0 24px,#77654a09 25px 26px),linear-gradient(125deg,#d8cbb7,#efe8da 55%,#d7c9b4);color:#665943}
.journal-public .album-empty-art svg{display:none}
.journal-public .album-empty-art::before,.paper-cover::before{content:"";position:absolute;width:62%;height:65%;left:18%;top:16%;border:1px solid #8b765e66;box-shadow:7px 8px 0 -2px #e7ddcb,8px 9px 0 -2px #a7957a;transform:rotate(-5deg);background:linear-gradient(160deg,#eee5d5,#d5c3a5)}
.journal-public .album-empty-art::after{content:"Семейные снимки";position:relative;font-size:1rem;letter-spacing:.05em;border-block:1px solid #8b765e66;padding:12px 0;transform:rotate(-5deg)}
.paper-cover span{z-index:1;position:relative;font-size:.75rem}
.journal-public .hero-photo:only-of-type{width:100%;height:100%}
.journal-public .hero-photo figcaption{font-size:.8rem;padding:8px 12px;background:#f5f1e9e8;color:var(--journal-ink)}
.journal-public .hero-collage:hover .hero-photo,.journal-public .hero-collage:focus-within .hero-photo{animation-play-state:paused}
.journal-public .hero-photo{transition:transform .5s ease}
.journal-public .hero-photo:hover{transform:translateY(-3px)}
.journal-public .restored-journal .restoration-grid{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);align-items:start}
.journal-public .restored-journal .restored-card:first-child{grid-row:span 2}
.journal-public .restored-journal .restored-card:only-child{max-width:850px;grid-column:1/-1}
.journal-public .restored-card{min-height:0;min-width:0;border-radius:12px;box-shadow:none;border-color:var(--journal-line)}
.journal-public .restored-card-media{height:280px;background:#e6e0d5}
.journal-public .restored-journal .restored-card:first-child .restored-card-media{height:clamp(280px,31vw,390px)}
.journal-public .restored-journal .restored-card:not(:first-child) .restored-card-media{height:160px}
.journal-public .compact-compare,.journal-public .compact-compare img,.journal-public .restored-fallback-photo{background:#e6e0d5;filter:none;opacity:1;object-fit:contain}
.journal-public .compact-compare::before,.journal-public .compact-compare::after,.journal-public .restored-card-media::after{display:none}
.comparison-labels{display:flex;justify-content:space-between;gap:12px;padding:8px 14px;font-size:.75rem;color:var(--journal-muted);background:var(--journal-surface)}
.comparison-modes{display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:var(--journal-surface)}
.comparison-modes button{flex:1;padding:6px 9px;font-size:.76rem;line-height:1.2;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--journal-ink);cursor:pointer}
.comparison-modes button[aria-pressed=true]{background:#e3e8dc;border-color:#aab59d}
.comparison-help{font-size:.73rem!important;color:var(--journal-muted);margin:0!important;padding:8px 14px;min-height:2.7em;background:var(--journal-surface)}
.journal-public .restored-card-copy{padding:14px}
.journal-public .restored-card-copy h3{font-size:1.15rem}
.journal-public .compact-divider::after{width:30px;height:30px;font-size:14px;box-shadow:0 1px 5px #2224}
.journal-public .compact-compare:focus-within{outline:3px solid #7b4c24;outline-offset:-3px}
.restoration-mark{font-weight:650;color:#485846}
.studio-body h1{font-size:clamp(1.6rem,2.1vw,2.15rem);margin:3px 0 8px}
.studio-page-head p{max-width:65ch;margin:4px 0;font-size:.9rem}
.studio-body .quick-actions{gap:10px;align-items:center}
.studio-body .quick-actions>a:not(.button){font-size:.85rem;padding:10px 4px}
.task-board .task-zero{color:#747268;background:transparent}
.task-board .task-error{background:#f7e7df;color:#803d2c}
.task-board .task-review{background:#f1e6cc}
.studio-body .studio-empty{min-height:0;padding:16px;margin:8px 0;font-size:.9rem}
.studio-body .studio-empty h2{font-size:1.1rem;margin:0 0 6px}
.studio-body .studio-list-item::before,.studio-body .studio-list-item::after{display:none}
.studio-body .studio-album-list article{padding:12px;gap:14px;margin-bottom:10px}
.studio-body .studio-album-list h2{font-size:1.1rem;margin:3px 0}
.studio-body .studio-album-list p{margin:3px 0;font-size:.85rem}
.studio-body .studio-album-list .status{font-size:.72rem;padding:3px 7px}
.studio-body .studio-row-actions{gap:8px;justify-content:flex-end;max-width:280px}
.studio-body .studio-row-actions>a{padding:10px;font-weight:600}
.studio-body .publication-toggle{background:transparent;border:0;color:var(--journal-muted);font:inherit;font-size:.78rem;padding:8px;box-shadow:none}
.studio-body .studio-row-actions .action-menu{position:relative;inset:auto;margin:0}
.studio-body .studio-row-actions summary{display:grid;place-items:center;min-width:44px;cursor:pointer}
.studio-body [draggable=true].is-dragging,.studio-body [draggable=true].dragging{opacity:.5;outline:2px dashed #69775e}
.studio-body .studio-cover-empty{width:140px;height:110px;display:grid;place-items:center;border-radius:6px}
.restoration-ledger{display:grid;gap:12px}
.restoration-row{display:grid;grid-template-columns:minmax(180px,270px) minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px;border:1px solid var(--journal-line);border-radius:10px;background:var(--journal-surface)}
.restoration-thumbnails{display:grid;grid-template-columns:1fr 1fr;gap:6px;min-width:0}
.restoration-thumbnails figure{margin:0;min-width:0}
.restoration-thumbnails img,.thumbnail-pending{display:flex;align-items:center;justify-content:center;width:100%;height:110px;object-fit:contain;background:#e7e2d7;border-radius:5px}
.thumbnail-pending{font-size:.72rem;text-align:center;padding:8px}
.restoration-thumbnails figcaption{font-size:.65rem;color:var(--journal-muted);padding-top:5px}
.studio-body .restoration-summary h2{font-size:1rem;margin:0 0 5px;overflow-wrap:anywhere}
.restoration-summary p{margin:5px 0;color:var(--journal-muted);font-size:.8rem}
.work-status{display:inline-block;border-radius:4px;background:#ece8de;padding:3px 7px;font-size:.73rem}
.work-status.needs-review{background:#f1e4c6;color:#715326}.work-status.has-error{background:#f5e0d7;color:#803d2c}.work-status.published{background:#e2eadb;color:#405039}.work-status.processing{background:#e1e8eb;color:#405965}
.restoration-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start;font-size:.8rem}
.restoration-actions .button{font-size:.8rem;padding:10px 12px}
.studio-columns .restoration-row{grid-template-columns:150px minmax(0,1fr);gap:10px;padding:10px 0;border:0;border-bottom:1px solid var(--journal-line);border-radius:0}
.studio-columns .restoration-thumbnails img{height:80px}
.studio-columns .restoration-actions{grid-column:2}
.restoration-filters{gap:4px;margin:12px 0}
.restoration-filters a{font-size:.82rem;padding:10px 12px}
.file-picker{display:block;max-width:420px;margin:16px auto;padding:14px;border:1px dashed #8c967d;border-radius:8px;background:#e8ecdf;color:var(--journal-ink);font-weight:600;cursor:pointer}
.studio-body .file-picker input[type=file]{display:block;max-width:100%;margin:10px auto 0;font-weight:400;font-size:.85rem;border:0;background:transparent;padding:0}
.file-picker input::file-selector-button{min-height:44px;border:1px solid #aab59d;border-radius:5px;background:var(--journal-surface);color:var(--journal-ink);padding:8px 12px;cursor:pointer}
.file-picker:focus-within{outline:3px solid #7b4c24;outline-offset:3px}
.selected-files img{width:64px;height:64px;object-fit:contain;background:#e7e2d7;border-radius:5px;flex:none}
.selected-files span{flex:1;min-width:0;font-size:.85rem}
.selected-files button{flex:none}
@media(max-width:1100px){.restoration-row{grid-template-columns:200px minmax(0,1fr)}.restoration-actions{grid-column:2}.studio-body .studio-row-actions{max-width:160px}}
@media(max-width:720px){.journal-public .albums.album-count-2{grid-template-columns:1fr}.journal-public .restored-journal .restoration-grid,.journal-public .restoration-grid{display:grid;grid-template-columns:1fr;margin:0;padding:0;overflow:visible}.journal-public .restored-journal .restored-card:first-child{grid-row:auto}.journal-public .restored-journal .restored-card:not(:first-child) .restored-card-media{height:220px}.journal-public .restored-journal .restored-card:first-child .restored-card-media{height:300px}.studio-body .studio-cover-empty{width:80px;height:85px}.studio-body .studio-row-actions{max-width:none;justify-content:flex-start}.restoration-row{grid-template-columns:1fr;gap:12px}.restoration-thumbnails{max-width:360px}.restoration-actions{grid-column:auto;flex-direction:row;flex-wrap:wrap}.studio-columns .restoration-row{grid-template-columns:120px minmax(0,1fr)}.comparison-modes button{font-size:.7rem}.studio-body .studio-main{padding-top:16px}}
@media(min-width:721px){.studio-body .studio-row-actions{grid-column:auto;flex-direction:row}}
@media(prefers-reduced-motion:no-preference){.journal-public .album-open{transition:transform .3s ease}.journal-public .album-card:hover .album-open{transform:translateX(3px)}}
/* Photo versions occupy only their natural frame; hidden panels leave the layout. */
.version-toolbar{display:flex;align-items:center;justify-content:center;margin:8px 0 14px}
.version-switch{position:relative;isolation:isolate;display:flex;flex-wrap:nowrap;width:fit-content;max-width:100%;padding:4px;border:1px solid var(--journal-line);border-radius:10px;background:#e9e5db}
.version-switch a{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:42px;padding:9px 16px;border:0;border-radius:7px;background:transparent!important;color:#5e6058;font-size:.84rem;text-align:center;text-decoration:none;transition:color 180ms ease,transform 180ms ease}
.version-switch a[aria-current=true]{color:#30412d;font-weight:650}
.version-switch a:hover{color:#30412d}
.version-switch a:active{transform:translateY(1px)}
.version-highlight{display:none;position:absolute;left:0;top:0;z-index:0;border-radius:7px;background:var(--journal-surface);box-shadow:0 2px 7px #302f2a1c;pointer-events:none;transition:transform 220ms ease,width 220ms ease,height 220ms ease}
.version-switch.is-enhanced .version-highlight{display:block}
.version-stage{display:block;min-width:0;width:100%;background:transparent}
.version-stage>.version-panel{display:block;min-width:0;width:100%;margin:0}
.version-stage>.version-panel[hidden]{display:none!important}
.journal-public .version-stage .viewer,.journal-public .version-stage .compare{margin:0 auto;padding:0;border-radius:10px;background:#e8e1d5;box-shadow:inset 0 0 0 1px #6b62531f;overflow:hidden}
.journal-public .version-stage .single-photo-frame,.journal-public .version-stage .comparison-frame{width:min(100%,calc(min(72svh,760px) * var(--media-aspect)));aspect-ratio:var(--media-ratio)}
.journal-public .version-stage .viewer a{display:block;width:100%;height:100%;background:transparent}
.journal-public .version-stage .viewer img,.journal-public .version-stage .compare img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:none;background:transparent}
.version-note{max-width:760px;margin:12px auto 0;color:#64645b;font-size:.9rem;text-align:center}
.comparison-frame{position:relative;isolation:isolate;--split:50%}
.comparison-frame>.after{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 0 0 var(--split));pointer-events:none}
.comparison-frame>.after img{position:absolute;inset:0}
.compare-side{position:absolute;top:12px;z-index:3;padding:5px 9px;border-radius:99px;background:#34312cc9;color:#fffdf8;font-size:.75rem;font-weight:650;box-shadow:0 1px 5px #302f2a38;pointer-events:none}
.original-side{left:12px}.restored-side{right:12px}
.version-handle{position:absolute;left:var(--split);top:0;bottom:0;z-index:3;width:2px;background:#fffdf8;box-shadow:0 0 0 1px #302f2a70;pointer-events:none}
.version-handle::after{content:"↔";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#fffdf8;color:#405039;box-shadow:0 2px 9px #302f2a66}
.journal-public .comparison-frame>.comparison-control{position:absolute;inset:0;z-index:4;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.comparison-control input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.comparison-control:focus-within{outline:3px solid #7b4c24;outline-offset:-4px;border-radius:10px}
.compare-hint{position:absolute;left:50%;top:auto;bottom:14px;z-index:3;max-width:calc(100% - 24px);padding:6px 10px;border-radius:99px;background:#fffdf8e8;color:#405039;font-size:.76rem;font-weight:650;opacity:0;transform:translateX(-50%);transition:opacity 150ms ease;pointer-events:none;white-space:nowrap}
.journal-public .comparison-frame.is-visible .compare-hint{animation:none}
.show-divider-hint .compare-hint{opacity:1}
@keyframes divider-nudge{0%,100%{transform:translate(-50%,-50%)}35%{transform:translate(calc(-50% - 12px),-50%)}70%{transform:translate(calc(-50% + 12px),-50%)}}
@media(prefers-reduced-motion:no-preference){.show-divider-hint .version-handle::after{animation:divider-nudge 900ms ease-in-out 1}}
.photo-context-nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,1.2fr) minmax(0,1fr);align-items:stretch;gap:10px;margin-top:22px}
.photo-context-nav>a{display:flex;align-items:center;gap:10px;min-width:0;min-height:56px;padding:9px 12px;border:1px solid var(--journal-line);border-radius:8px;background:var(--journal-surface);color:inherit;text-decoration:none}
.photo-context-nav>a.next{justify-content:flex-end;text-align:right}.photo-context-nav>a.back-to-album{display:grid;place-content:center;text-align:center;background:#e9e5db}
.photo-context-nav small,.photo-context-nav b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-context-nav small{color:#6b6b62;font-size:.7rem}.photo-context-nav b{font-size:.84rem}
@media(max-width:580px){.version-toolbar{margin-top:4px}.version-switch{width:100%}.version-switch a{flex:1;padding:8px 5px;font-size:.72rem}.journal-public .version-stage .single-photo-frame,.journal-public .version-stage .comparison-frame{width:min(100%,calc(min(68svh,620px) * var(--media-aspect)))}.compare-side{top:8px;padding:4px 7px;font-size:.68rem}.original-side{left:8px}.restored-side{right:8px}.compare-hint{bottom:9px;font-size:.68rem}.photo-context-nav{grid-template-columns:1fr 1fr}.photo-context-nav>a.back-to-album{grid-column:1/-1;grid-row:1}.photo-context-placeholder{display:none}}
@media(prefers-reduced-motion:reduce){.version-switch *,.compare-hint,.photo-context-nav *{transition:none!important;animation:none!important}.version-switch a:active{transform:none}.show-divider-hint .compare-hint{opacity:0}}
