/* KittyClub Editorial: writing on continuous Paper, with Ink rules and Wine actions. */
.kc-publishing { max-width: 1180px; }
.kc-publishing :is(h1,h2,h3),.pub-comments h2 { text-wrap: balance; overflow-wrap: anywhere; }
.kc-publishing .dsc-back { display:inline-flex; align-items:center; gap:8px; min-height:60px; font-size:12px; color:var(--muted); }
.pub-introduction { max-width:65ch; margin-bottom:24px; font-size:14px; line-height:1.8; color:var(--copy); }
.pub-introduction .fine { margin-top:12px; }
.pub-list { max-width:880px; margin-top:48px; }
.pub-list h2,.pub-preview h2,.pub-review h2,.pub-comments h2 { font:400 35px/1.1 var(--serif); margin:0 0 22px; }
.pub-list article { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:24px 0; border-top:1px solid var(--line); }
.pub-list h3 { font:400 30px/1.1 var(--serif); margin:8px 0; }
.pub-list a { min-width:120px; min-height:44px; display:inline-flex; align-items:center; gap:8px; font-size:13px; }
.pub-id { overflow-wrap:anywhere; }
.pub-status { font-size:13px; color:var(--wine); padding:16px 0; border-block:1px solid var(--line); margin:0 0 30px; }
.pub-editor-layout { display:grid; grid-template-columns:minmax(0, 1fr) 320px; gap:64px; }
.pub-writing,.pub-preview { min-width:0; }
.kc-publishing .field,.pub-comments .field { display:flex; flex-direction:column; gap:10px; font-size:13px; margin-bottom:24px; }
.kc-publishing :is(input,textarea,select),.pub-comments textarea,#post-share-link { width:100%; min-width:0; border:1px solid var(--control-border); border-radius:0; background:transparent; color:var(--ink); font:400 14px/1.7 var(--sans); padding:12px; caret-color:var(--wine); }
.kc-publishing select { min-height:48px; }
.kc-publishing textarea,.pub-comments textarea { resize:vertical; min-height:120px; }
.kc-publishing :is(input,textarea,select):disabled { opacity:1; color:var(--muted); }
.kc-publishing :is(a,button,input,select,textarea):focus-visible,.pub-comments :is(button,textarea):focus-visible,.pub-post-tools :is(button,a):focus-visible,#post-review:focus,#post-publication-status:focus { outline:2px solid var(--wine); outline-offset:4px; }
.kc-publishing ::selection,.pub-comments ::selection { background:var(--wine); color:var(--paper); }
.pub-options { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.pub-editor-actions,.pub-published { display:flex; flex-wrap:wrap; align-items:center; gap:16px; }
.pub-editor-actions :is(button,a),.pub-published :is(button,a) { min-height:46px; }
.pub-published p { flex-basis:100%; font-size:14px; line-height:1.8; }
.pub-preview-image { aspect-ratio:3/4; background:var(--pale); display:grid; place-items:center; }
.pub-preview-image .cast-photo { width:100%; height:100%; }
.pub-preview-image p { text-align:center; font:400 43px/1 var(--serif); }
.pub-preview>.fine { margin:12px 0 24px; }
.pub-preview h2 { font-size:30px; margin-bottom:12px; }
.pub-preview>p:not(.fine),.pub-review>p { font-size:13px; line-height:1.8; max-width:70ch; }
.pub-review { padding-top:32px; margin-top:32px; border-top:1px solid var(--ink); }
.pub-review dl { margin:0 0 20px; }
.pub-review dl>div { display:grid; grid-template-columns:90px minmax(0,1fr); gap:20px; padding:12px 0; border-bottom:1px solid var(--line); font-size:13px; }
.pub-review dt { color:var(--muted); }.pub-review dd { margin:0; overflow-wrap:anywhere; }
.pub-review button { margin-top:24px; }
.pub-withdrawn { font:400 56px/1 var(--serif); margin:20px 0 30px; }
.pub-post-tools { display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px; margin-top:12px; font-size:12px; }
.pub-post-tools :is(button,a) { min-height:44px; padding:6px 0; }
.pub-post-tools [aria-pressed="true"] { color:var(--wine); text-decoration:underline; text-underline-offset:5px; }
.pub-comments { max-width:820px; margin-top:48px; }
.pub-comments h2 { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 20px; }
.pub-comments h2 span { font:400 12px/1.5 var(--sans); color:var(--muted); }
.pub-comment { padding:24px 0 12px; border-top:1px solid var(--line); }
.pub-comment-author { display:flex; align-items:baseline; gap:12px; font-size:13px; }
.pub-comment-author strong { font-weight:500; }.pub-comment-author span { font-size:11px; color:var(--wine); }
.pub-comment p { white-space:pre-wrap; overflow-wrap:anywhere; max-width:70ch; font-size:14px; line-height:1.8; margin:12px 0 6px; }
.pub-comment button { min-height:44px; font-size:12px; }
.pub-reply { margin-left:32px; }.pub-no-comments { font-size:14px; color:var(--muted); padding:16px 0 32px; }
.pub-comments form { margin-top:30px; padding-top:24px; border-top:1px solid var(--ink); }
.pub-comment-submit { display:flex; flex-wrap:wrap; gap:12px 20px; align-items:center; justify-content:space-between; }
.pub-comment-submit :is(button,a) { min-height:44px; }.pub-share-status { font-size:13px; line-height:1.8; }
@media(max-width:1150px){.pub-editor-layout{gap:36px;grid-template-columns:minmax(0,1fr) 270px;}}
@media(max-width:850px){.pub-editor-layout{grid-template-columns:minmax(0,1fr) 220px;gap:28px;}.pub-options{grid-template-columns:1fr;gap:0;}}
@media(max-width:600px){.pub-editor-layout{display:flex;flex-direction:column;gap:36px;}.pub-preview{display:grid;grid-template-columns:110px minmax(0,1fr);column-gap:20px;}.pub-preview-image{grid-row:1/5;align-self:start;}.pub-preview-image p{font-size:26px;}.pub-preview>p,.pub-preview>h2{grid-column:2;}.pub-preview h2{font-size:27px;}.pub-preview>.fine{margin:0 0 12px;}.pub-preview>.pub-id,.pub-preview>p:last-child{grid-column:1/-1;margin-top:16px;}.pub-list article{align-items:start;}.pub-list h3{font-size:27px;}.kc-publishing :is(input,textarea,select),.pub-comments textarea,#post-share-link{font-size:16px;}.pub-review dl>div{grid-template-columns:72px minmax(0,1fr);gap:12px;}.pub-comments{margin-top:36px;}.pub-comments h2{font-size:32px;}.pub-comment-submit>.fine{flex-basis:100%;}.pub-reply{margin-left:20px;}.pub-list{margin-top:36px;}.pub-preview h2{overflow-wrap:anywhere;}}

.pub-review { scroll-margin-top:24px; }
.kc-discovery .dsc-post-copy>p { white-space:pre-wrap; }
.pub-post-tools button:hover,.pub-comment button:hover { color:var(--wine); text-decoration:underline; text-underline-offset:4px; }
