/* 1.4 — A personal journal: typography and the writing carry the page. */
:root{--bg:#f8f6f0;--panel:#f8f6f0;--ink:#292522;--muted:#746d64;--line:#d9d3c9;--accent:#893c32;--accent-soft:#eee5db;--sidebar:#f8f6f0;--shadow:0 8px 24px #29252212}
[data-theme=sage]{--bg:#e8ece4;--panel:#e8ece4;--ink:#29382e;--muted:#59695b;--line:#c6d0c2;--accent:#405a46;--accent-soft:#d9e1d4;--sidebar:#e8ece4}
[data-theme=night]{--bg:#242321;--panel:#292825;--ink:#e8e1d5;--muted:#b4aa9b;--line:#49453e;--accent:#dda68a;--accent-soft:#39312c;--sidebar:#242321}
.sidebar{padding-top:42px;border-right:0}
.xw-theme .brand{font-size:28px;letter-spacing:2px;font-weight:700;white-space:normal;line-height:1.5}
.xw-site-name{font-size:12px;line-height:1.9;margin-top:12px}
.xw-theme .sidebar-rule{background:var(--ink);width:28px;margin:24px 0 28px}
.nav-caption{margin-left:0;font-size:11px;letter-spacing:0}
.main-nav a,.main-nav>button,.category-nav>a{border-radius:0;padding:9px 0;min-height:42px;line-height:1.8;font-size:13px;gap:8px}
.main-nav a.active,.main-nav a:hover,.main-nav>button:hover,.category-nav>a.active,.category-nav>a:hover{background:transparent;color:var(--accent)}
.category-nav>a.active{font-weight:600;text-decoration:underline;text-underline-offset:5px}
.cat-dot{display:none}
.nav-count{font-family:Georgia,serif;font-size:12px;color:var(--muted)}
.category-caption{margin-top:28px}
.xw-theme .sidebar-bottom{padding:40px 0 0}
.sidebar-bottom p{font-size:14px;line-height:2;margin:0 0 8px}
.topbar{height:70px;border-bottom:0}
.breadcrumb{font-size:12px}
.icon-button{border-radius:0;width:40px;height:40px}
.icon-button[aria-pressed=true]{background:transparent;color:var(--accent);box-shadow:inset 0 -1px var(--accent)}
.home-view{max-width:1120px;padding-top:38px}
.home-heading{align-items:center;border-bottom:2px solid var(--ink);padding-bottom:30px;margin-bottom:0;gap:18px}
.xw-theme .home-heading h1{font-weight:700;font-size:clamp(36px,4.3vw,62px);letter-spacing:-.035em;line-height:1.3;margin:0 0 18px}
.home-heading p{font-family:var(--serif);font-size:17px;color:var(--accent)}
.room-date{display:block;text-align:right}
.room-date span{font-size:23px;letter-spacing:3px}
.room-date small{display:block;font-family:Georgia,serif;font-size:10px;letter-spacing:1px;margin-top:10px}
.xw-theme .featured{display:block;min-height:0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;margin:0 0 44px;overflow:visible}
.xw-theme .featured-copy{padding:28px 0 30px;display:grid;grid-template-columns:140px minmax(0,1fr);column-gap:30px;align-items:start}
.featured-label{grid-column:1;grid-row:1 / span 3;display:block;max-width:125px;font-size:12px;line-height:2;letter-spacing:0;color:var(--muted);padding-top:7px}
.xw-theme .featured h2{grid-column:2;font-size:clamp(28px,3vw,40px);font-weight:600;letter-spacing:0;line-height:1.5;margin:0 0 14px;white-space:normal}
.featured h2 a:hover,.article-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.featured-copy>p{grid-column:2;font-family:var(--serif);font-size:16px;line-height:1.95;max-width:40em;margin:0 0 18px;color:var(--ink)}
.featured-bottom{grid-column:2;justify-content:flex-start;gap:24px}
.primary-button{background:transparent;color:var(--accent);border-radius:0;padding:8px 0;font-size:13px;min-height:42px;text-decoration:underline;text-underline-offset:5px}
.primary-button:hover{transform:none}
.featured-bottom .meta-small{display:block;font-size:12px}
.collection-head{margin-bottom:12px;align-items:center}
.collection-title h2{font-size:20px;font-weight:600;letter-spacing:0}
.collection-title>span{font-family:Georgia,serif;font-size:12px;padding-top:0;align-self:center}
.search-box{width:210px;padding:4px 0}
.search-box input{font-size:13px;min-height:34px}
.quiet-button{border-radius:0;border:0;font-size:13px;min-height:42px;padding:8px}
.category-filters{flex-wrap:wrap;gap:0 18px;overflow:visible;padding-bottom:13px;margin-bottom:0}
.filter-chip{border-radius:0;padding:9px 0;font-size:12px;min-height:40px;white-space:normal}
.filter-chip.active{background:transparent;color:var(--accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.filter-chip:hover:not(.active){background:transparent;color:var(--ink)}
.filter-chip small{font-size:10px;opacity:1}
.article-grid{display:block}
.article-card{display:grid;grid-template-columns:112px minmax(0,1fr) 138px;column-gap:22px;row-gap:10px;align-items:baseline;position:relative;border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:27px 0;transition:none}
.article-card:hover{transform:none;border-color:var(--line)}
.card-top{grid-column:3;grid-row:1;min-height:0;margin:0;justify-content:flex-end}
.category-label{font-size:12px;line-height:1.8;letter-spacing:0;display:block;text-align:right}
.article-card h3{grid-column:2;grid-row:1;font-size:25px;line-height:1.6;letter-spacing:0;font-weight:500;margin:0;overflow-wrap:anywhere}
.article-card h3 a:after{content:none}
.card-description{grid-column:2 / 4;grid-row:2;font-family:var(--serif);font-size:14px;line-height:1.9;min-height:0;margin:0;max-width:52em;color:var(--muted);-webkit-line-clamp:2}
.card-bottom{grid-column:1;grid-row:1;border:0;padding:0;display:block}
.meta-small{font-size:12px;font-family:Georgia,serif;letter-spacing:0;font-variant-numeric:tabular-nums}
.card-progress{grid-column:2 / 4;grid-row:3;font-size:11px;margin:0}
.results-caption{margin:18px 0 0;font-size:13px}
.empty-state{border:0;padding:50px 0}
.site-footer{font-size:11px;margin-top:35px;letter-spacing:0}
.site-footer>span:last-child{font-family:var(--serif)}
.xw-pagination .page-numbers{border:0;border-radius:0;min-width:42px;min-height:42px}
.xw-pagination .current{background:transparent;color:var(--accent);text-decoration:underline;text-underline-offset:6px}
.article-header{border-bottom:1px solid var(--ink);padding-bottom:28px}
.article-header h1{font-weight:600;letter-spacing:0}
.article-kicker,.article-meta{font-size:12px;letter-spacing:0}
.toc-label{font-size:12px;letter-spacing:0}
.toc button,.toc nav>a{font-size:12px;line-height:1.9;padding-top:9px;padding-bottom:9px}
.toc button.xw-subchapter{font-size:11px}
.back-button{font-size:13px;min-height:42px}
.appearance summary,.appearance-panel,.outline-dialog,.post-navigation a{border-radius:0}
.appearance summary{min-height:40px;min-width:40px}
.post-navigation a{border:0;border-top:1px solid var(--line);padding:16px 0;font-size:16px}
.post-navigation small{font-size:12px}
.article-body{letter-spacing:.01em}
@media(max-width:1150px){
 .xw-theme .brand{font-size:25px;letter-spacing:0}
 .article-card{grid-template-columns:90px minmax(0,1fr);gap:7px 20px}
 .card-top{grid-column:2;grid-row:2;justify-content:flex-start}
 .category-label{text-align:left}
 .card-description{grid-column:2;grid-row:3}
 .card-progress{grid-column:2;grid-row:4}
}
@media(max-width:760px){
 .sidebar{border-right:1px solid var(--line);padding:30px 26px}
 .topbar{height:64px}
 .theme-switch .icon-button{width:36px;height:40px}
 .home-view{padding-top:25px}
 .home-heading{align-items:flex-start;padding-bottom:24px;gap:12px}
 .xw-theme .home-heading h1{font-size:36px;margin-bottom:13px}
 .home-heading p{font-size:16px}
 .room-date{padding-top:7px;max-width:95px}
 .room-date span{font-size:17px;letter-spacing:2px}
 .room-date small{font-size:9px;letter-spacing:0;line-height:1.5}
 .xw-theme .featured-copy{display:block;padding:24px 0}
 .featured-label{max-width:none;padding:0;margin-bottom:12px;font-size:12px}
 .xw-theme .featured h2{font-size:29px;line-height:1.5;margin:0 0 12px}
 .featured-copy>p{font-size:16px;margin-bottom:14px}
 .xw-theme .featured{margin-bottom:30px}
 .collection-head{flex-wrap:wrap;gap:12px}
 .collection-title{width:auto}
 .list-tools{width:100%;gap:10px}
 .search-box{width:auto;flex:1}
 .search-box input{font-size:16px}
 .category-filters{gap:0 16px;padding-bottom:12px}
 .filter-chip{font-size:13px}
 .article-card{grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:23px 0}
 .card-top{grid-column:1;grid-row:1;justify-content:flex-start}
 .card-bottom{grid-column:2;grid-row:1}
 .article-card h3{grid-column:1 / -1;grid-row:2;font-size:25px;line-height:1.55}
 .card-description{grid-column:1 / -1;grid-row:3;font-size:15px;line-height:1.9}
 .card-progress{grid-column:1 / -1;grid-row:4}
 .meta-small{font-size:11px}
 .site-footer{font-size:11px;flex-direction:row;flex-wrap:wrap;gap:8px}
 .reader-toolbar{margin-bottom:25px}
 .article-header h1{font-size:34px}
}
@media(max-width:380px){
 .home-heading{flex-wrap:wrap}
 .room-date{display:flex;gap:12px;align-items:center;max-width:none;padding:0}
 .room-date small{margin:0}
 .xw-theme .home-heading h1{font-size:34px}
 .xw-theme .featured-copy{padding:22px 0}
}
