@import url('tokens.css');
/* Hallmark · editorial · A Long Document / B Workbench / C Photographic.
 * App paper, ink and seal tokens preserved. No spatial motion.
 * Pre-emit critique: P5 H4 E4 S5 R5 V5. */

*{box-sizing:border-box}html,body{margin:0;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-body);line-height:1.8}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:6px}button,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a{touch-action:manipulation}button{border:0;background:none;padding:8px 0}button:disabled{cursor:default}button,a.action{white-space:nowrap}a:focus-visible,button:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:5px}button:hover{color:var(--color-accent)}p{margin:0 0 var(--space-md)}h1,h2,h3{font-family:var(--font-display);font-style:normal;font-weight:400;line-height:1.45;word-break:keep-all;overflow-wrap:anywhere;margin:0 0 var(--space-md)}h1{font-size:var(--text-display);letter-spacing:-.045em}h2{font-size:var(--text-title);letter-spacing:-.025em}h3{font-size:var(--text-lead)}img{display:block;max-width:100%;height:auto}figure{margin:0}figcaption,.quiet,.meta,.eyebrow{font-size:var(--text-small);color:var(--color-muted)}figcaption{margin-top:12px}.eyebrow{letter-spacing:.08em;margin-bottom:24px}.arrow,.dot{color:var(--color-accent)}.dot{font-size:15px}.wrap{width:min(1120px,calc(100% - 96px));margin:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0}.brand{font-family:var(--font-practice);font-size:28px;font-weight:600;letter-spacing:.12em}.header nav{display:flex;gap:28px;align-items:center;font-size:14px}.header nav a{min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}.header [aria-current]{border-bottom:1px solid var(--color-ink)}.action{display:inline-flex;align-items:center;gap:24px;min-height:48px;border-bottom:1px solid var(--color-ink);font-weight:600}.store{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:24px 0}.store a{display:block}.store img{height:56px;width:auto}.store a:hover{opacity:.85;text-decoration:none}.intro{max-width:520px;font-size:18px;line-height:1.95}.section{padding:80px 0}.rule{border-top:var(--rule)}.workflow{display:flex;gap:32px;flex-wrap:wrap;padding:24px 0}.workflow span{display:flex;align-items:center;gap:12px}.workflow b{font-size:12px;font-weight:400;color:var(--color-accent)}.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 56px}.features p{color:var(--color-body);max-width:32em}.footer{margin-top:80px;padding:32px 0;border-top:var(--rule);display:flex;justify-content:space-between;align-items:flex-end;gap:32px}.footer nav{display:flex;flex-wrap:wrap;gap:8px 24px}.footer a,.footer button{font-size:13px;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}.footer p{margin:0}.skip{position:absolute;left:16px;top:-80px;background:var(--color-sheet);padding:10px}.skip:focus{top:10px}.preview-note{font-size:12px;color:var(--color-muted);text-align:center;padding:8px 16px;border-bottom:var(--rule)}
/* A: an open book. A centered masthead and narrow reading measure. */
.a .header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);border-bottom:3px double var(--color-line)}.a .header .brand{grid-column:2;grid-row:1;font-size:40px}.a .header nav{grid-column:3;justify-content:flex-end}.a .edition{font-family:var(--font-practice);font-size:13px}.a .hero{max-width:720px;margin:0 auto;padding:88px 0 64px}.a .hero h1{font-size:clamp(36px,4.2vw,56px);line-height:1.65}.a .hero .intro{max-width:590px}.a .quote-sheet{padding:64px 56px;background:var(--color-sheet) url('assets/paper-mojo.png') center/520px;border:var(--rule);font-family:var(--font-practice);font-size:clamp(20px,2.3vw,30px);line-height:2.2;position:relative}.seal{border:2px solid var(--color-accent);color:var(--color-accent);font-family:var(--font-practice);font-size:14px;line-height:1.25;letter-spacing:2px;display:inline-block;padding:4px;width:42px;text-align:center}.a .quote-sheet .seal{position:absolute;right:32px;bottom:24px}.a .reading{max-width:720px;margin:auto}.a .chapter{display:grid;grid-template-columns:120px minmax(0,1fr);gap:32px;padding:56px 0}.a .chapter>span{font-size:13px;color:var(--color-muted)}.a .chapter h2{font-size:26px}.a .chapter .workflow{gap:16px;font-size:14px}.a .footer .brand{font-size:42px}
/* B: a quiet workbench. Fixed-width rail, sans headings, visible app proof. */
.b .shell{display:grid;grid-template-columns:208px minmax(0,1fr);max-width:1440px;margin:auto}.b .header{display:block;position:sticky;top:0;height:100vh;padding:40px 28px;border-right:var(--rule)}.b .header .brand{display:block;margin-bottom:60px}.b .header nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.b .edition{position:absolute;bottom:32px;font-size:12px;color:var(--color-muted)}.b .wrap{width:min(960px,calc(100% - 80px))}.b .hero{padding:72px 0 48px;display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:48px;align-items:center}.b h1{font-size:clamp(32px,3.6vw,48px);font-weight:600;line-height:1.45}.b .hero .intro{font-size:16px}.b .app-shot{width:248px;border:var(--rule)}.b .workflow{font-size:14px;gap:24px}.b .workblock{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;padding:48px 0;border-top:var(--rule)}.b .workblock img{width:220px;max-height:340px;object-fit:cover;object-position:top}.b .workblock h2{font-family:var(--font-body);font-size:28px;font-weight:600}.b .features{display:block}.b .features>div{padding:20px 0;border-top:var(--rule)}.b .features p{margin:0}.b .footer{align-items:center}
/* C: a photographic reading room. Edge navigation, image-led sections. */
.c .wrap{width:min(1184px,calc(100% - 64px))}.c .header{padding:20px 0}.c .edition{display:none}.c .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:0;min-height:650px}.c .hero-copy{padding:80px 64px 64px 24px;display:flex;flex-direction:column;justify-content:center}.c h1{font-size:clamp(36px,4vw,56px);line-height:1.65;letter-spacing:-.035em}.c .hero .intro{font-size:16px}.c .still-life{background:var(--color-soft) url('assets/window-light-leaf.jpg') center/cover;display:grid;place-items:center;padding:56px 40px;min-height:620px}.c .loose-page{width:85%;padding:40px 32px;background:var(--color-sheet) url('assets/paper-cotton.png') center/400px;box-shadow:0 12px 32px var(--color-shadow);font-family:var(--font-practice);font-size:clamp(20px,2.1vw,28px);line-height:2.4}.c .loose-page .seal{display:block;margin:32px 0 0 auto}.c .photo-band{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:64px;align-items:center;padding:80px 0}.c .photo-band figure{background:var(--color-soft);padding:32px}.c .photo-band img{max-height:480px;width:100%;object-fit:contain}.c .footer{display:block}.c .footer h2{font-size:clamp(24px,3vw,40px);margin-bottom:40px}.c .footer nav{justify-content:flex-end}
/* Feed: common semantics, three distinct reading rhythms. */
.board-heading{padding:48px 0 24px}.board-heading h1{font-size:40px;margin-bottom:12px}.board-heading p{color:var(--color-body);max-width:36em}.board-layout{display:grid;grid-template-columns:minmax(0,720px) 240px;gap:72px;justify-content:center}.feed{min-width:0}.composer{padding:24px 0;border-block:var(--rule);display:flex;justify-content:space-between;gap:24px;align-items:center;margin:16px 0 24px}.composer p{margin:0;font-size:15px}.composer small{display:block;color:var(--color-muted);font-size:12px}.filters{display:flex;gap:8px 24px;flex-wrap:wrap;margin-bottom:8px}.filters button{min-height:44px;font-size:14px;color:var(--color-muted)}.filters button[aria-pressed=true]{color:var(--color-ink);border-bottom:2px solid var(--color-accent)}.feed-order{font-size:12px;color:var(--color-muted);margin:16px 0}.post{padding:36px 0;border-bottom:var(--rule)}.post[hidden]{display:none}.byline{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;font-size:13px;color:var(--color-muted)}.byline strong{color:var(--color-ink);font-weight:600;font-size:14px}.tag{font-size:12px;border:var(--rule);padding:0 8px}.post-text{font-size:18px;line-height:1.95;margin:20px 0 24px}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.photo-grid.single{grid-template-columns:minmax(0,1fr)}.photo-grid a{background:var(--color-soft);display:block}.photo-grid img{width:100%;height:280px;object-fit:cover;object-position:top}.photo-grid.single img{height:380px;object-fit:contain}.reactions{display:flex;align-items:center;gap:28px;font-size:13px;color:var(--color-muted);margin-top:16px}.reactions a,.reactions button{min-height:44px;display:inline-flex;align-items:center;gap:8px}.reactions button[aria-pressed=true]{color:var(--color-accent)}.reactions details{position:relative}.reactions summary{cursor:pointer;list-style:none;min-height:44px;padding:8px 0}.reactions details p{font-size:12px;margin:0}.aside{padding-top:64px;color:var(--color-muted);font-size:14px}.aside h2{font-size:19px;color:var(--color-ink)}.aside p{line-height:1.95}.aside a{display:inline-block;min-height:44px}.aside .aside-rule{border-top:var(--rule);padding-top:24px;margin-top:24px}.end{text-align:center;color:var(--color-muted);font-size:13px;padding:40px 0}.a .board-layout{grid-template-columns:minmax(0,660px) 200px;gap:80px}.a .post-text{font-family:var(--font-practice);font-size:20px}.a .post{padding:44px 0}.a .board-heading{text-align:center;padding:64px 0 24px}.a .board-heading p{margin-inline:auto}.b .board-layout{grid-template-columns:minmax(0,640px);gap:0}.b .aside{display:none}.b .board-heading{padding-top:40px}.b .board-heading h1{font-size:32px;font-weight:600}.b .post{padding:24px 0}.b .post-text{font-size:16px;margin:12px 0 20px}.b .photo-grid img{height:240px}.b .photo-grid.single img{height:300px}.b .composer{background:var(--color-soft);border:0;padding:20px}.c .board-layout{grid-template-columns:minmax(0,840px) 180px;gap:56px}.c .board-heading{display:flex;align-items:baseline;gap:48px;padding-top:48px}.c .board-heading h1{font-size:44px}.c .post{background:var(--color-sheet);padding:32px;margin-bottom:32px;border:0}.c .post-text{font-family:var(--font-display);font-size:21px}.c .photo-grid.single img{height:520px}.c .photo-grid img{height:360px}.c .composer{padding:24px 0}.c .byline{margin-bottom:16px}
/* The individual post opens the image and gives comments their own space. */
.back{display:inline-flex;min-height:44px;align-items:center;font-size:14px;margin:32px 0}.detail{max-width:780px;margin:0 auto}.detail h1{font-size:36px;margin:28px 0}.detail .post-text{font-family:var(--font-practice);font-size:21px}.detail .large-photo{background:var(--color-soft);padding:32px}.detail .large-photo img{max-height:720px;width:100%;object-fit:contain}.detail .reactions{justify-content:space-between;border-bottom:var(--rule);padding-bottom:24px}.detail .reaction-left{display:flex;gap:24px}.report{font-size:12px;color:var(--color-muted)}.comments{padding-top:40px}.comments h2{font-size:23px}.comment{padding:24px 0;border-bottom:var(--rule)}.comment p{margin:12px 0 0}.comment-form{margin:32px 0}.comment-form label{display:block;font-size:14px;margin-bottom:8px}.comment-form textarea{width:100%;padding:16px;resize:vertical;min-height:112px;border:var(--rule);background:var(--color-sheet);color:var(--color-ink)}.comment-form .form-bottom{display:flex;justify-content:space-between;gap:16px;align-items:center}.b .detail{max-width:700px}.b .detail h1{font-family:var(--font-body);font-weight:600;font-size:32px}.b .detail .post-text{font-family:var(--font-body);font-size:18px}.c .detail{max-width:960px}.c .detail .large-photo{padding:48px;background:var(--color-sheet)}.c .detail .post-text{max-width:640px}.c .comments{max-width:680px;margin:auto}.c .detail h1{font-family:var(--font-display);font-size:40px}
dialog{color:var(--color-ink);background:var(--color-sheet);border:var(--rule);padding:32px;max-width:min(480px,calc(100% - 40px))}dialog::backdrop{background:var(--color-shadow)}dialog h2{font-size:24px}dialog p{font-size:15px}dialog .close{display:block;margin:24px 0 0 auto}.login-options{display:flex;flex-direction:column;gap:12px}.login-options button{border:var(--rule);padding:12px}.empty{padding:40px 0;color:var(--color-muted)}.status{font-size:13px;color:var(--color-muted)}
@media(max-width:960px){.wrap{width:calc(100% - 48px)}.board-layout,.a .board-layout,.c .board-layout{grid-template-columns:minmax(0,1fr);gap:0}.aside{display:none}.b .shell{grid-template-columns:minmax(0,1fr)}.b .header{height:auto;position:static;display:flex;padding:16px 24px;border-right:0;border-bottom:var(--rule)}.b .header .brand{margin:0}.b .header nav{flex-direction:row;gap:24px}.b .edition{display:none}.b .hero{gap:32px}.c .hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.c .hero-copy{padding:40px 24px 40px 0}.c .still-life{padding:32px 16px}.c .loose-page{width:95%;padding:32px 24px}.c .photo-band{gap:32px}.c .board-heading{display:block}.c .board-heading h1{font-size:36px}}
@media(max-width:640px){.wrap,.b .wrap,.c .wrap{width:calc(100% - 40px)}.header{padding:20px 0;gap:16px}.header nav{gap:20px;font-size:13px}.header .brand{font-size:25px}.a .header{grid-template-columns:auto minmax(0,1fr)}.a .header .brand{grid-column:1;font-size:32px}.a .header nav{grid-column:2}.a .edition{display:none}.a .hero{padding:48px 0 40px}.a .hero h1{font-size:34px;line-height:1.65}.intro{font-size:16px}.a .quote-sheet{padding:40px 24px 80px;font-size:21px}.a .chapter{grid-template-columns:minmax(0,1fr);gap:16px;padding:40px 0}.a .chapter h2{font-size:25px}.section{padding:48px 0}.features{grid-template-columns:minmax(0,1fr);gap:24px}.workflow{gap:12px 20px}.workflow span{font-size:14px}.store{gap:12px}.store img{height:48px}.footer{display:block;margin-top:48px;padding:24px 0}.footer nav{margin-top:24px;gap:4px 20px}.footer .brand{display:block;margin-bottom:8px}.b .header{padding:12px 20px}.b .header nav{gap:20px}.b .hero{grid-template-columns:minmax(0,1fr);padding:40px 0;gap:32px}.b .hero h1{font-size:34px}.b .app-shot{width:220px;margin:auto}.b .workblock{grid-template-columns:minmax(0,1fr);gap:24px;padding:32px 0}.b .workblock img{width:180px;margin:auto}.b .workblock h2{font-size:25px}.c .hero{display:flex;flex-direction:column;min-height:0}.c .hero-copy{padding:32px 4px 40px}.c h1{font-size:36px}.c .still-life{min-height:440px;padding:40px 24px}.c .loose-page{width:95%;font-size:21px;padding:32px 24px}.c .photo-band{grid-template-columns:minmax(0,1fr);gap:32px;padding:48px 0}.c .photo-band figure{padding:20px}.c .photo-band h2{font-size:28px}.c .footer nav{justify-content:flex-start}.board-heading,.a .board-heading{padding:36px 0 16px;text-align:left}.board-heading h1,.a .board-heading h1,.c .board-heading h1{font-size:32px}.board-heading p{font-size:14px}.composer{gap:16px;align-items:flex-start}.composer p{font-size:14px}.composer .action{font-size:14px;gap:12px}.filters{gap:4px 18px}.filters button{font-size:13px}.a .post{padding:28px 0}.a .post-text{font-size:18px}.photo-grid img,.b .photo-grid img{height:200px}.photo-grid.single img,.b .photo-grid.single img{height:300px}.c .post{padding:20px;margin-inline:-4px;margin-bottom:24px}.c .post-text{font-size:19px}.c .photo-grid img{height:220px}.c .photo-grid.single img{height:340px}.detail h1,.b .detail h1,.c .detail h1{font-size:28px}.detail .post-text{font-size:18px}.detail .large-photo,.c .detail .large-photo{padding:16px}.detail .large-photo img{max-height:520px}.comment-form .form-bottom{align-items:flex-start}.comment-form .quiet{max-width:200px;font-size:12px}dialog{padding:24px}.b .composer{padding:16px}.reactions{gap:20px}h2{font-size:28px}}

p{word-break:keep-all;overflow-wrap:anywhere}.c .hero-copy>.action{align-self:flex-start}

@media(max-width:640px){button,.header a,.footer a,.reactions a,.reactions summary{min-width:44px}.detail .reactions{flex-wrap:wrap}.b .workflow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Hallmark · macrostructure: Long Document · tone: approved A editorial revision · anchor hue: ink and seal red */
body.a2{line-height:1.85}
.a.a2 .wrap{width:min(1088px,calc(100% - 80px))}
.a.a2 .header{padding:20px 0}
.a.a2 .edition,.a.a2 .header nav{font-size:16px}
.a.a2 .preview-note{font-size:15px}
.a.a2 .hero{max-width:800px;padding:48px 0 32px}
.a.a2 .hero h1{font-size:clamp(38px,4vw,52px);line-height:1.5;margin-bottom:24px}
.a.a2 .hero .intro{font-size:20px;max-width:32em;line-height:1.85}
.a.a2 .eyebrow{margin-bottom:16px}
.a.a2 .reading{max-width:800px}
.a.a2 .chapter{display:block;padding:var(--space-section) 0}
.a.a2 .chapter h2{font-size:34px;line-height:1.5;margin-bottom:24px}
.a.a2 .chapter>p{max-width:36em}
.a.a2 h3{font-size:24px;line-height:1.6}
.a.a2 p{font-size:var(--text-body)}
.a.a2 p.quiet,.a.a2 .quiet,.a.a2 figcaption{font-size:var(--text-small);color:var(--color-muted)}
.a.a2 .hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px;border-top:var(--rule);padding-top:24px;gap:24px}
.hero-proof strong{font-family:var(--font-display);font-weight:600;font-size:38px;line-height:1.5;white-space:nowrap}
.hero-proof strong span{font-size:20px;margin-left:6px;font-weight:400}
.a2 .hero-proof p{margin:4px 0 0;font-size:16px;color:var(--color-muted)}
.a2 .shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0 12px}
.a2 .book-card{background:var(--color-sheet) url('assets/paper-mojo.png') center/520px;border:var(--rule);padding:24px 20px 16px;border-top:3px double var(--color-line);display:flex;flex-direction:column}
.a2 .book-card h3{font-size:22px;margin:12px 0 20px}
.a2 .book-card .quiet{font-size:15px;margin-bottom:0}
.a2 .book-card p.sample-writing{font-size:25px;line-height:1.8;flex:1;margin:0 0 24px}
.hand1{font-family:var(--font-hand-steady),cursive}.hand2{font-family:var(--font-hand-slow),cursive}.hand3{font-family:var(--font-hand-letter),cursive}
.a2 .translation-note{padding:16px 20px;background:var(--color-soft);border-left:2px solid var(--color-accent);margin-bottom:0}
.a2 .engine-proof{display:grid;grid-template-columns:248px minmax(0,1fr);gap:36px;align-items:start;margin:32px 0 24px}
.a2 .app-evidence img{width:100%;border:var(--rule)}
.a2 .engine-facts>div{padding:0 0 16px;margin-bottom:20px;border-bottom:var(--rule)}
.a2 .engine-facts strong{font-size:23px;font-family:var(--font-display);font-weight:600;line-height:1.65;display:block;margin-bottom:12px}
.a2 .engine-facts p{margin-bottom:0}.a2 .engine-facts h3{font-size:21px}
.a2 .next-practice{padding:20px 24px;background:var(--color-soft)}
.a2 .next-practice h3{font-size:23px;margin-bottom:12px}.a2 .next-practice p{margin:0}
.a2 .font-specimens{background:var(--color-sheet);padding:8px 24px;border:var(--rule)}
.a2 .font-specimens>div{padding:16px 0;border-bottom:var(--rule)}.a2 .font-specimens>div:last-child{border:0}
.a2 .font-specimens span{font-size:16px;color:var(--color-muted)}
.a2 .font-specimens p{font-size:32px;line-height:1.8;margin:8px 0 0}.a2 .print-specimen{font-family:var(--font-display)}
.a2 .font-specimens+p{margin-top:12px}
.a2 .paper-proof{display:grid;grid-template-columns:280px minmax(0,1fr);gap:32px;align-items:start}
.a2 .paper-proof figure img{width:100%;max-height:330px;object-fit:cover;object-position:top}
.a2 .routine{padding-left:24px;margin:20px 0 0}.a2 .routine li{padding:4px 0}
.a2 .keepsakes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.a2 .share-example{padding:40px 24px 24px;background:var(--color-sheet) url('assets/paper-cotton.png') center/400px;border:var(--rule);min-height:340px;display:flex;flex-direction:column;justify-content:space-between}
.a2 .share-example>p{font-size:29px;line-height:1.8;margin:0 0 24px}.card-foot{display:flex;justify-content:space-between;align-items:end;gap:12px;color:var(--color-muted);font-size:16px}
.name-seal{display:inline-block;flex-shrink:0;border:2px solid var(--color-accent);padding:4px;color:var(--color-accent);font-family:var(--font-display);font-size:23px;line-height:1.2;letter-spacing:2px;text-align:center}
.book-spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:var(--rule);min-height:340px;background:var(--color-sheet)}
.book-page{padding:24px 16px;background:url('assets/paper-mojo.png') center/400px}.book-page+div{border-left:var(--rule);box-shadow:inset 8px 0 12px var(--color-shadow)}
.a2 .book-page>span{font-size:15px;color:var(--color-muted)}.a2 .book-page p{font-size:25px;line-height:2;margin:32px 0 0;word-break:normal}
.a2 .community-preview{display:block;border-block:var(--rule);padding:24px 0;margin:24px 0;text-decoration:none}.a2 .community-preview p{font-family:var(--font-display);font-size:22px;margin:12px 0}.a2 .community-preview>span:last-child{font-size:16px;color:var(--color-muted)}
.a.a2 .footer{margin-top:48px}.a.a2 .footer a,.a.a2 .footer button{font-size:16px}
/* All feed/detail reading copy follows the larger A2 scale; likes have no counts. */
.a.a2 .board-heading{padding:40px 0 24px}.a.a2 .board-heading h1{font-size:40px}
.a.a2 .board-layout{grid-template-columns:minmax(0,720px) 216px;gap:48px}
.a.a2 .composer p,.a.a2 .board-heading p{font-size:18px}.a.a2 .composer small{font-size:16px}
.a.a2 .filters button{font-size:17px}.a.a2 .feed-order,.a.a2 .byline,.a.a2 .tag,.a.a2 .reactions,.a.a2 .report,.a.a2 .end,.a.a2 .back{font-size:16px}
.a.a2 .byline strong{font-size:18px}.a.a2 .post-text,.a.a2 .detail .post-text{font-size:22px;line-height:1.95}
.a.a2 .aside{font-size:18px;padding-top:40px}.a.a2 .aside h2{font-size:23px}
.a.a2 .comment p,.a.a2 dialog p{font-size:18px}.a.a2 .comment-form label{font-size:18px}
.a.a2 .comment-form .quiet{font-size:16px;max-width:24em}.a.a2 .comment-form .form-bottom{align-items:start;gap:24px;margin-top:12px}
.a.a2 .detail{max-width:800px}.a.a2 .comments h2{font-size:28px}
@media(max-width:960px){.a.a2 .board-layout{grid-template-columns:minmax(0,1fr);gap:0}}
@media(max-width:640px){
.a.a2 .wrap{width:calc(100% - 40px)}.a.a2 .header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px}.a.a2 .header .brand{grid-column:2;font-size:34px}.a.a2 .header nav{grid-column:3;gap:16px;font-size:15px}.a.a2 .edition{display:block;font-size:14px;max-width:5em;line-height:1.6}
.a.a2 .preview-note{font-size:14px}.a.a2 .hero{padding:32px 0 28px}.a.a2 .hero h1{font-size:35px;line-height:1.6}.a.a2 .hero .intro{font-size:18px;line-height:1.9}
.a.a2 .chapter h2{font-size:28px;line-height:1.6}.a.a2 .chapter h3{font-size:23px}
.a2 .hero-proof{gap:12px;margin-top:28px;padding-top:20px}.hero-proof strong{font-size:27px}.hero-proof strong span{font-size:17px;margin-left:2px}.a2 .hero-proof p{font-size:15px}
.a2 .shelf{grid-template-columns:minmax(0,1fr);gap:16px}.a2 .book-card{padding:20px 24px}.a2 .book-card .sample-writing{font-size:29px;margin-bottom:16px}.a2 .book-card h3{margin:8px 0 12px}
.a2 .engine-proof{grid-template-columns:minmax(0,1fr);gap:28px}.a2 .app-evidence{max-width:280px;margin:auto}.a2 .engine-facts strong{font-size:24px}.a2 .next-practice{padding:20px}.a2 .next-practice h3{font-size:22px}
.a2 .font-specimens{padding:4px 20px}.a2 .font-specimens p{font-size:28px;line-height:1.9}.a2 .font-specimens span{font-size:15px}
.a2 .paper-proof{grid-template-columns:minmax(0,1fr);gap:24px}.a2 .paper-proof figure{max-width:300px;margin:auto}
.a2 .keepsakes{grid-template-columns:minmax(0,1fr);gap:28px}.a2 .share-example{min-height:300px}.a2 .book-spread{min-height:300px}
.a.a2 .footer a{font-size:15px}
.a.a2 .board-heading h1{font-size:34px}.a.a2 .board-heading p,.a.a2 .composer p{font-size:17px}.a.a2 .composer small{font-size:15px}.a.a2 .composer{gap:12px}.a.a2 .composer .action{font-size:17px;gap:8px}
.a.a2 .post-text,.a.a2 .detail .post-text{font-size:20px}.a.a2 .byline strong{font-size:17px}.a.a2 .filters button{font-size:16px}
.a.a2 .comment p,.a.a2 dialog p{font-size:17px}.a.a2 .comment-form .form-bottom{flex-direction:column;gap:8px}.a.a2 .comment-form .quiet{max-width:none;font-size:15px}
.a.a2 .detail h1{font-size:30px}.a.a2 .reactions{flex-wrap:wrap;gap:16px}.a.a2 .detail .reaction-left{gap:16px}.a.a2 .comments h2{font-size:26px}
}
.a.a2 .edition{word-break:keep-all}
.a.a2 .feed-order,.a.a2 .end{font-size:var(--text-body)}
@media(max-width:360px){.a.a2 .edition{visibility:hidden}}

/* 앱 화면을 폰 틀에 얹는다 (형 10-18) */
.phones{position:relative;display:flex;flex-direction:column;align-items:flex-start;margin:0}
.phones .phone{width:220px;aspect-ratio:1179/2556;border-radius:38px;background:#1d1c1a;padding:9px;box-shadow:0 18px 40px rgba(40,30,20,.18),0 2px 6px rgba(40,30,20,.12);position:relative}
.phones .phone::before{content:"";position:absolute;top:17px;left:50%;transform:translateX(-50%);width:62px;height:18px;border-radius:12px;background:#1d1c1a;z-index:2}
.phones .phone-screen{width:100%;height:100%;border-radius:30px;overflow:hidden;background:#f7f4ee}
.phones .phone-screen img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.phones .phone-back{position:absolute;left:150px;top:46px;width:200px;transform:rotate(4deg);z-index:-1}
.phones figcaption{margin-top:28px}
.a2 .engine-proof{grid-template-columns:380px minmax(0,1fr);gap:40px}
.a2 .app-evidence.phones img{border:0;box-shadow:none;max-width:none}
@media (max-width:760px){.a2 .engine-proof{grid-template-columns:minmax(0,1fr)}.a2 .app-evidence.phones{max-width:340px;margin:0 auto 40px}}
@media (max-width:640px){.phones .phone{width:180px}.phones .phone-back{left:96px;width:156px}.a2 .app-evidence.phones{max-width:270px}}

/* API content can be long, including a nickname without spaces. */
.byline strong,.comment p,.post-text{overflow-wrap:anywhere;white-space:pre-wrap}
.post-text:empty{display:none}
.feed-status{padding:24px 0;color:var(--color-muted)}
.feed-status:empty{display:none}
.more-row{text-align:center;padding:24px 0}
[hidden]{display:none!important}
.readonly-note{color:var(--color-muted)}
.reactions .report-note{margin:0;font-size:12px}.board-notices .post{border-bottom:var(--rule)}.post[data-tag=notice] .tag{border-color:var(--color-accent);color:var(--color-accent)}
.a.a2 .policy{padding:48px 0;min-height:45vh}
/* Policy pages: plain document rhythm inside the reading measure. */
.policy{padding:48px 0 0}.a.a2 .policy h1{font-size:40px;margin-bottom:8px}.policy>.quiet:first-of-type{margin-bottom:40px}.a.a2 .policy h2{font-size:23px;font-weight:600;margin:48px 0 16px}.a.a2 .policy h3{font-family:var(--font-body);font-size:16px;font-weight:600;letter-spacing:0;margin:24px 0 8px}.policy p,.policy li{font-size:16px;line-height:1.9;color:var(--color-body)}.policy ul,.policy ol{padding-left:1.4em;margin:0 0 var(--space-md)}.policy li{margin-bottom:6px}.policy li ul{margin-top:6px}.policy a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:640px){.policy{padding-top:32px}.a.a2 .policy h1{font-size:30px}.a.a2 .policy h2{font-size:20px;margin-top:36px}.policy p,.policy li{font-size:15px}}
