/* Renovation journal: the existing TOKA palette and type system. */
.admin-nav { display:flex; gap:1.6rem; align-items:center; padding:.8rem clamp(1.25rem,4vw,4.5rem); background:var(--forest); color:var(--paper); flex-wrap:wrap; }
.admin-nav > span { font-size:.8rem; opacity:.7; text-transform:uppercase; letter-spacing:.1em; }
.admin-nav a { text-decoration:none; padding:.3rem 0; }
.admin-nav a[aria-current] { border-bottom:2px solid #e5b49c; }
.admin-nav-public { margin-left:auto; font-size:.9rem; }
.journal-admin h1, .journal-intro h1 { font-size:clamp(3.2rem,7vw,6.5rem); }
.journal-admin button, .journal-editor button, .journal-filter button { cursor:pointer; font:inherit; }
.journal-admin .button, .journal-editor .button { border:1px solid var(--forest); }
.journal-admin .button-primary, .journal-editor .button-primary { border-color:var(--clay); }
.journal-empty { padding:clamp(2rem,6vw,5rem); border-left:4px solid var(--clay); background:var(--paper-deep); }
.journal-empty h2 { font-size:clamp(2.5rem,5vw,4rem); }
.journal-empty p { max-width:39rem; margin-bottom:2rem; }
.journal-list-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2rem; padding:2rem 0; border-top:1px solid var(--line); text-decoration:none; }
.journal-list-row:hover h2 { color:var(--clay); }
.journal-list-row h2 { font-size:2rem; margin:.5rem 0; }
.journal-list-row p { color:var(--muted); max-width:45rem; }
.journal-list-meta { display:flex; flex-direction:column; align-items:flex-end; gap:.7rem; font-size:.9rem; }
.journal-editor { padding-top:2.5rem; }
.journal-editor-heading { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin:1.4rem 0 2rem; }
.journal-editor-heading h1 { font-size:clamp(2.4rem,4.8vw,4.5rem); max-width:52rem; overflow-wrap:anywhere; }
.journal-editor-heading .button { flex-shrink:0; }
.journal-editor-grid { display:grid; grid-template-columns:minmax(0,1fr) 21rem; align-items:start; gap:clamp(2rem,4vw,4rem); margin-top:2rem; }
.journal-writing { display:grid; gap:1.7rem; min-width:0; }
.journal-writing #title { font-family:var(--serif); font-size:1.7rem; }
.journal-writing #body { min-height:32rem; line-height:1.8; }
.journal-settings { background:var(--paper-deep); padding:1.6rem; display:grid; gap:1.2rem; }
.journal-settings h2, .journal-upload h2, .journal-images h2 { font-size:1.8rem; margin:0 0 .5rem; }
.journal-settings details .field { margin-top:1rem; }
.journal-publish { border-top:1px solid var(--line); padding-top:1.5rem; display:grid; gap:1rem; }
.journal-publish .button { width:100%; text-align:center; padding:.85rem; }
.journal-publish p { margin:0; }
.writing-tools { display:flex; gap:.4rem; flex-wrap:wrap; }
.writing-tools button, .journal-history button, .journal-danger button, .journal-filter button { background:transparent; border:1px solid var(--line); padding:.45rem .8rem; color:var(--ink); }
.writing-tools button:hover { background:var(--paper-deep); }
.journal-image-edit { display:grid; grid-template-columns:11rem minmax(0,1fr); gap:1.2rem; padding:1.5rem 0; border-top:1px solid var(--line); }
.journal-image-edit > img { width:100%; height:10rem; object-fit:cover; }
.journal-image-fields { display:grid; gap:.8rem; }
.image-remove { display:flex; gap:.6rem; align-items:center; font-size:.9rem; }
.image-remove input { width:1.15rem; height:1.15rem; }
.journal-upload { margin-top:2rem; padding:2rem; border:1px dashed var(--clay); }
.journal-upload p { color:var(--muted); }
.upload-form { display:grid; grid-template-columns:1fr 1fr auto; align-items:end; gap:1rem; }
.upload-form input[type=file] { max-width:100%; font-size:.9rem; }
.journal-history { margin-top:2rem; border-top:1px solid var(--line); padding-top:1.2rem; }
.journal-history > div { display:flex; gap:1rem; justify-content:space-between; padding:1rem 0; border-bottom:1px solid var(--line); }
.journal-danger { margin-top:2rem; }
.journal-danger button { color:#9a3423; }
#editor-confirm { max-width:min(32rem,calc(100% - 2rem)); border:1px solid var(--line); padding:2rem; background:var(--paper); color:var(--ink); }
#editor-confirm::backdrop { background:rgba(25,34,29,.6); }
#editor-confirm h2 { font-size:2rem; }
#editor-confirm form > div { display:flex; flex-wrap:wrap; gap:1rem; margin-top:1.5rem; }
#editor-confirm button { font:inherit; cursor:pointer; }
.journal-public { min-height:65vh; }
.journal-intro { max-width:56rem; padding-bottom:3rem; }
.journal-intro > p:last-child { max-width:40rem; font-size:1.25rem; color:var(--muted); }
.journal-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.journal-card { min-width:0; border-top:1px solid var(--line); }
.journal-card > a { display:block; margin-top:1rem; }
.journal-card img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.journal-card-copy { padding:1.5rem 0; }
.journal-card h2 { font-size:2rem; margin:.6rem 0 1rem; overflow-wrap:anywhere; }
.journal-card h2 a { text-decoration:none; }
.journal-card h2 a:hover { color:var(--clay); }
.journal-card p:not(.eyebrow), .journal-card time { color:var(--muted); }
.journal-card time { font-size:.85rem; }
.journal-filter { display:flex; align-items:center; gap:1rem; border-top:1px solid var(--line); padding:1.5rem 0; margin-bottom:1.5rem; }
.journal-filter select { max-width:70%; min-height:2.7rem; font:inherit; background:transparent; border:1px solid var(--line); padding:.5rem; }
.journal-public-empty { border-top:1px solid var(--line); padding-top:3rem; }
.journal-public-empty h2 { font-size:2rem; }
.journal-heading { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-bottom:2rem; }
.journal-heading h2 { font-size:clamp(2rem,4vw,3.5rem); }
.journal-story { max-width:72rem; margin:auto; }
.journal-story > header { max-width:55rem; margin:0 auto 2.5rem; }
.journal-story > header .eyebrow { margin-top:2.5rem; }
.journal-story h1 { font-size:clamp(3rem,6vw,6rem); overflow-wrap:anywhere; }
.journal-lead { font-size:clamp(1.2rem,2vw,1.5rem); color:var(--muted); }
.journal-byline { font-size:.9rem; color:var(--muted); }
.journal-cover { margin:0 0 3rem; }
.journal-cover img { width:100%; max-height:44rem; object-fit:cover; display:block; }
.journal-story figcaption { padding:.6rem 0; font-size:.9rem; color:var(--muted); }
.journal-prose { max-width:44rem; margin:auto; font-size:1.15rem; overflow-wrap:anywhere; }
.journal-prose h1, .journal-prose h2, .journal-prose h3 { font-size:2.3rem; margin:2.5rem 0 1rem; }
.journal-prose pre { overflow-x:auto; background:var(--paper-deep); padding:1rem; }
.journal-prose blockquote { border-left:3px solid var(--clay); padding-left:1.3rem; margin-left:0; color:var(--muted); }
.journal-gallery, .journal-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; margin-top:3rem; }
.journal-gallery:empty { display:none; }
.journal-gallery figure, .journal-comparison figure { margin:0; min-width:0; }
.journal-gallery img, .journal-comparison img { width:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.journal-comparison span { display:block; font-size:.8rem; text-transform:uppercase; letter-spacing:.1em; margin-bottom:.6rem; color:var(--clay); }
.journal-video { margin-top:3rem; padding:2rem; background:var(--paper-deep); }
.journal-video h2 { font-size:2.5rem; }
.journal-video > p:last-child { font-size:.85rem; }
.journal-story-footer { margin-top:3rem; padding-top:2rem; border-top:1px solid var(--line); }
.journal-preview-note { display:flex; flex-wrap:wrap; gap:1rem; margin-bottom:3rem; padding:1rem; border-left:4px solid var(--clay); background:var(--paper-deep); }
.journal-preview-note a { margin-left:auto; }
@media(max-width:1200px) { .site-header { flex-wrap:wrap; } .site-nav { gap:1rem; } .journal-editor-grid { grid-template-columns:minmax(0,1fr) 19rem; gap:1.5rem; } }
@media(max-width:850px) { .journal-editor-grid { grid-template-columns:1fr; } .journal-settings { order:-1; } .journal-editor-heading { align-items:flex-start; flex-direction:column; } .journal-cards { grid-template-columns:repeat(2,minmax(0,1fr)); } .upload-form { grid-template-columns:1fr; } .journal-list-row { grid-template-columns:1fr; gap:1rem; } .journal-list-meta { align-items:flex-start; } }
@media(max-width:560px) { .admin-nav { gap:1rem; } .admin-nav > span { width:100%; } .admin-nav-public { margin-left:0; } .journal-cards, .journal-gallery, .journal-comparison { grid-template-columns:1fr; } .journal-image-edit { grid-template-columns:1fr; } .journal-image-edit > img { max-width:15rem; } .journal-history > div, .journal-heading { flex-direction:column; align-items:flex-start; } .journal-upload { padding:1.2rem; } .journal-filter { flex-wrap:wrap; } }
