.article-nav{max-width:1440px;margin:auto;padding:24px 32px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font-size:.78rem;font-weight:700;letter-spacing:.12em}.article-nav a{text-decoration:none}.article-nav a:hover{color:var(--accent)}
.article-page{max-width:1080px;min-height:65vh;margin:auto;padding:80px 32px}.article-status{color:var(--muted);text-align:center}.article-header{max-width:900px;margin:auto;text-align:center}.article-header h1{margin:16px 0 24px;font:600 clamp(3.2rem,8vw,7.4rem)/.86 "Newsreader",serif;letter-spacing:-.06em}.article-deck{max-width:720px;margin:0 auto 24px;color:var(--muted);font:400 clamp(1.2rem,2.2vw,1.65rem)/1.4 "Newsreader",serif}.article-header time{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.article-image{display:block;width:100%;max-height:680px;object-fit:cover;margin:60px 0;border-radius:30px}.article-body{max-width:740px;margin:60px auto}.article-body p{margin:0 0 1.5em;font:400 clamp(1.15rem,2vw,1.35rem)/1.75 "Newsreader",serif;white-space:pre-line}
.editor-shell{max-width:1440px;margin:auto;padding:64px 32px 100px}.editor-intro{max-width:760px;margin-bottom:48px}.editor-intro h1{margin:8px 0;font:600 clamp(3.5rem,8vw,7rem)/.9 "Newsreader",serif;letter-spacing:-.06em}.editor-intro>p:last-child{color:var(--muted);font-size:1.05rem}.login-panel{max-width:680px;padding:30px;border:1px solid var(--line);background:var(--panel)}.login-panel label,.field label{display:block;margin-bottom:8px;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.login-panel form>div{display:flex;gap:10px}.login-panel input,.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:var(--paper);color:var(--ink);outline:0}.login-panel input{padding:13px}.login-panel button,.publish-button,.secondary-button{padding:13px 18px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-weight:700;cursor:pointer;white-space:nowrap}.login-panel input:focus,.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}#loginStatus,#editorStatus{color:var(--accent);font-size:.8rem}
.editor-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:48px;align-items:start}.story-form{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:32px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 45%,var(--paper))}.field.wide,.check-field,.publish-row{grid-column:1/-1}.field label span{color:var(--muted);font-weight:400;letter-spacing:0;text-transform:none}.field input,.field textarea,.field select{padding:13px 14px;border-radius:0}.field textarea{resize:vertical;line-height:1.55}.check-field{display:flex;align-items:center;gap:10px;font-size:.85rem}.publish-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.secondary-button{background:transparent;color:var(--ink)}.text-button,#refreshStories,.editor-story button{padding:9px 10px;border:0;background:none;color:var(--muted);font-weight:700;cursor:pointer}.publish-row p{margin:0 0 0 auto}.story-library{position:sticky;top:20px}.library-heading{display:flex;align-items:end;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--ink)}.library-heading h2{margin:4px 0 0;font:600 2rem "Newsreader",serif}.editor-story{padding:18px 0;border-bottom:1px solid var(--line)}.editor-story>p{margin:0 0 5px;color:var(--accent);font-size:.62rem;font-weight:700;letter-spacing:.12em}.editor-story h3{margin:0 0 7px;font:600 1.35rem "Newsreader",serif}.editor-story time{color:var(--muted);font-size:.7rem}.editor-story div{display:flex;gap:6px;margin-top:8px}.editor-story button{padding-left:0;margin-right:12px}.loading-message{color:var(--muted)}
@media(max-width:850px){.editor-workspace{grid-template-columns:1fr}.story-library{position:static}.article-page,.editor-shell{padding-left:18px;padding-right:18px}}@media(max-width:600px){.story-form{display:block;padding:20px}.field,.check-field,.publish-row{margin-bottom:20px}.login-panel form>div{display:block}.login-panel button{width:100%;margin-top:10px}.article-image{margin:36px 0;border-radius:18px}}
.login-panel label{margin-top:14px}.login-panel label:first-child{margin-top:0}.signed-in-as{margin:12px 0;color:var(--muted);font-size:.72rem}#signOut{padding:9px 10px;border:0;background:none;color:var(--muted);font-weight:700;cursor:pointer}
