 :root{--navy:#10243a;--navy2:#18334e;--gold:#d7ad58;--gold-light:#f5e6c4;--cream:#fbf9f4;--paper:#fffefa;--ink:#18283a;--muted:#77808a;--line:#e9e4da;--rose-shadow:0 12px 35px rgba(24,40,58,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:#a77a2e}img{max-width:100%;height:auto}.content-wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.site-header{height:76px;background:var(--navy);color:#fff;border-bottom:1px solid rgba(255,255,255,.08);position:relative;z-index:20}.header-inner{height:100%;width:min(1320px,calc(100% - 48px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;color:#f4d58e;font:700 27px "Playfair Display",serif}.brand-mark{font-size:30px;color:var(--gold)}.custom-logo{max-height:52px;width:auto}.primary-nav ul{display:flex;gap:42px;align-items:center;list-style:none;margin:0;padding:0}.primary-nav a{font-weight:600;color:#f7f4ed;font-size:14px}.primary-nav a:hover{color:var(--gold)}.sign-in-link{background:var(--gold);color:#14263b;padding:10px 24px;border-radius:28px;font-weight:700}.mobile-menu-toggle{display:none;background:none;border:0;color:white;font-size:25px}
.hero-section{background:linear-gradient(110deg,#f7f3e9 0%,#f4efe3 56%,#eee4d0 100%);border-bottom:1px solid var(--line)}.hero-inner{padding:78px 0 82px}.eyebrow,.section-kicker{color:#a77a2e;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero-inner h1{font:800 clamp(42px,5.2vw,68px)/1.05 "Playfair Display",serif;letter-spacing:-.035em;color:var(--navy);margin:20px 0 14px}.hero-inner h1 em{font-style:normal;color:#b48a42}.hero-inner p{max-width:510px;color:#6f716f;font-size:16px;line-height:1.8;margin:0}.hero-actions{display:flex;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;gap:12px;border-radius:10px;padding:13px 22px;font-weight:700;font-size:13px}.button-gold{background:var(--navy);color:#f7d991}.button-gold:hover{background:#203c58;color:white}.button-outline{border:1px solid #d9d1c3;background:#fffdf8;color:var(--navy)}
.tags-section{padding:28px 0 12px}.tag-list{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.tag-list a,.tag-list span{border:1px solid var(--line);border-radius:30px;padding:6px 13px;background:#fffefa;font-size:12px;color:#4c5360}.story-section{padding:28px 0 34px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-heading h2,.section-heading h1{font:700 27px "Playfair Display",serif;color:var(--navy);margin:0}.section-heading>a{color:#a77a2e;font-size:13px;font-weight:700}.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.story-card{display:grid;grid-template-columns:164px minmax(0,1fr);background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden;min-height:220px;box-shadow:0 4px 18px rgba(30,40,50,.025)}.story-cover{position:relative;min-height:220px;background:linear-gradient(145deg,#29435d,#b38a48);overflow:hidden}.story-cover img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.cover-placeholder{height:100%;min-height:220px;display:grid;place-items:center;background:linear-gradient(145deg,#19334e,#b38a48);color:#f4d58e;font:700 38px "Playfair Display",serif}.cover-title{position:absolute;bottom:0;left:0;right:0;padding:28px 13px 12px;background:linear-gradient(transparent,rgba(7,18,30,.88));color:#fff;font:700 18px/1.15 "Playfair Display",serif}.story-card-body{padding:17px 18px 13px;display:flex;flex-direction:column;min-width:0}.story-byline{font-size:11px;color:#8a8174}.story-card h3{font:700 19px/1.25 "Playfair Display",serif;color:var(--navy);margin:5px 0}.story-card p{font-size:12px;line-height:1.55;color:#6c7075;margin:3px 0 10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.story-meta{margin-top:auto;display:flex;gap:16px;font-size:11px;color:#7c7d7e}.empty-state{padding:30px;border:1px dashed #d6c9ad;border-radius:12px;color:var(--muted);grid-column:1/-1}
.story-detail{padding-top:54px;padding-bottom:70px}.story-detail-top{display:grid;grid-template-columns:260px 1fr;gap:42px;align-items:start}.detail-cover img,.detail-cover .cover-placeholder{width:100%;height:360px;object-fit:cover;border-radius:15px;box-shadow:var(--rose-shadow)}.detail-info h1{font:800 42px/1.12 "Playfair Display",serif;color:var(--navy);margin:12px 0}.detail-meta{color:var(--muted);font-size:13px}.detail-meta span{padding:0 8px;color:var(--gold)}.story-description{margin:20px 0 24px;color:#555d66}.chapter-list-section{margin-top:55px}.chapter-list-section .section-heading span{color:var(--muted);font-size:13px}.story-chapter-list{padding:0;margin:0;list-style:none;border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden}.story-chapter-list li+li{border-top:1px solid var(--line)}.story-chapter-list a{display:flex;align-items:center;gap:16px;padding:14px 18px}.chapter-number,.toc-number{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--gold-light);color:#6c4d16;font-size:12px;font-weight:700}.chapter-arrow{margin-left:auto;color:#b18a45}
.reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;align-items:start;padding-top:34px;padding-bottom:70px}.reader-main{min-width:0;max-width:850px}.reader-breadcrumb{font-size:12px;color:#687382;margin-bottom:10px}.reader-breadcrumb a{font-weight:700;color:#9b742f}.reader-breadcrumb span{padding:0 7px;color:#b4a991}.reading-progress{height:4px;background:#e9e5dc;border-radius:9px;overflow:hidden;margin-bottom:20px}.reading-progress span{display:block;height:100%;background:var(--gold)}.reader-title{font:800 clamp(30px,3.2vw,46px)/1.12 "DM Sans",sans-serif;color:#17263a;letter-spacing:-.025em;margin:0 0 22px}.reader-featured-image{margin:0 0 24px}.reader-featured-image img{width:100%;max-height:560px;object-fit:cover;border-radius:13px;box-shadow:var(--rose-shadow);display:block}.reader-content{font:17px/1.9 Georgia,serif;color:#273444}.reader-content p{margin:0 0 1.25em}.reader-content img{border-radius:12px}.reader-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);margin-top:34px;padding-top:18px}.reader-pager a{font-size:13px;font-weight:700;padding:12px 16px;border-radius:12px}.pager-prev{background:#f4ead7;color:var(--navy)}.pager-next{background:var(--navy);color:#f6d991}.pager-index{color:var(--navy)}
.reader-sidebar{position:sticky;top:18px;align-self:start;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--rose-shadow);overflow:hidden;max-height:calc(100vh - 36px);display:flex;flex-direction:column}
.toc-list{scrollbar-width:thin;scrollbar-color:var(--gold) #f1ede5}
.toc-list::-webkit-scrollbar{width:6px}
.toc-list::-webkit-scrollbar-track{background:#f1ede5;border-radius:8px}
.toc-list::-webkit-scrollbar-thumb{background:var(--gold);border-radius:8px}
.toc-list::-webkit-scrollbar-thumb:hover{background:#b48a42}.toc-head{display:flex;align-items:center;gap:12px;padding:17px 18px;border-bottom:1px solid var(--line);font:700 15px "Playfair Display",serif;color:var(--navy)}.toc-icon{font-size:23px;color:#b48a42}.toc-subhead{display:flex;justify-content:space-between;padding:12px 18px;color:#7b756b;font-size:10px;letter-spacing:.08em;font-weight:700}.toc-subhead b{font-size:12px;color:var(--navy)}.toc-list{list-style:none;margin:0;padding:0 10px 12px;overflow:auto}.toc-list li{border-radius:10px;margin:3px 0}.toc-list a{display:flex;align-items:center;gap:10px;padding:9px 8px;min-width:0}.toc-title{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#344253}.toc-list li.is-current{background:var(--navy)}.toc-list li.is-current .toc-title{color:#f6d991}.toc-list li.is-current .toc-number{background:var(--gold);color:#17263a}.toc-mobile-button,.toc-backdrop{display:none}
.archive-page{padding-top:48px;padding-bottom:70px}.not-found{padding:100px 24px;text-align:center}.site-footer{background:var(--navy);color:#dce2e8;padding:34px 24px}.footer-inner{width:min(1180px,100%);margin:auto;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.footer-brand{font:700 22px "Playfair Display",serif;color:#f2d18b}.footer-inner>span{color:#c1c8d0}.footer-inner>div{margin-left:auto}.footer-inner ul{display:flex;gap:20px;list-style:none;padding:0}.footer-inner a{color:#f4e8cd}.footer-inner small{width:100%;color:#aab4bf}.simple-post{padding:20px;background:#fff;border:1px solid var(--line);border-radius:12px}
@media(max-width:900px){.reader-layout{grid-template-columns:minmax(0,1fr) 290px;gap:22px}.story-grid{grid-template-columns:1fr}.header-inner{width:calc(100% - 32px)}.primary-nav ul{gap:20px}}
@media(max-width:680px){.content-wrap{width:calc(100% - 32px)}.site-header{height:64px}.brand{font-size:22px}.mobile-menu-toggle{display:block;margin-left:auto}.primary-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--navy);padding:16px 24px 22px;box-shadow:0 12px 22px rgba(0,0,0,.16)}.primary-nav.is-open{display:block}.primary-nav ul{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.sign-in-link{padding:8px 14px;font-size:12px}.hero-inner{padding:52px 0 56px}.hero-inner h1{font-size:43px}.hero-inner p{font-size:14px}.hero-actions{flex-wrap:wrap}.tag-list{gap:7px}.story-section{padding:20px 0}.section-heading h2,.section-heading h1{font-size:23px}.story-card{grid-template-columns:112px minmax(0,1fr);min-height:175px}.story-cover,.cover-placeholder{min-height:175px}.cover-title{font-size:15px;padding:22px 9px 9px}.story-card-body{padding:12px}.story-card h3{font-size:16px}.story-card p{font-size:11px;-webkit-line-clamp:2}.story-meta{font-size:10px;gap:9px}.story-detail{padding-top:30px}.story-detail-top{grid-template-columns:105px 1fr;gap:18px}.detail-cover img,.detail-cover .cover-placeholder{height:155px}.detail-info h1{font-size:26px}.story-description{font-size:13px;margin:12px 0}.reader-layout{display:block;padding-top:22px}.reader-title{font-size:29px}.reader-content{font-size:16px}.reader-featured-image img{max-height:360px}.reader-sidebar{position:fixed;z-index:60;top:0;right:0;bottom:0;width:min(88vw,360px);max-height:none;border-radius:18px 0 0 18px;transform:translateX(105%);transition:transform .25s ease}.reader-sidebar.is-open{transform:translateX(0)}.toc-mobile-button{display:block;position:fixed;z-index:50;right:14px;bottom:16px;border:0;border-radius:28px;background:var(--navy);color:#f6d991;padding:13px 18px;font-weight:700;box-shadow:0 8px 22px rgba(0,0,0,.2)}.toc-backdrop.is-visible{display:block;position:fixed;z-index:55;inset:0;background:rgba(8,18,30,.48)}.reader-pager{flex-wrap:wrap}.reader-pager a{font-size:11px;padding:10px}.pager-index{display:none}.footer-inner{display:block}.footer-inner>div{margin:12px 0}.footer-inner ul{flex-wrap:wrap}.archive-page{padding-top:30px}}

/* TaleBloom 1.1 homepage refinements */
.brand-name{letter-spacing:-.02em}
.hero-inner{max-width:1180px}
.hero-search{display:flex;align-items:center;gap:10px;width:min(560px,100%);margin-top:28px;padding:7px 8px 7px 15px;background:#fffefa;border:1px solid #e3dac9;border-radius:12px;box-shadow:0 8px 24px rgba(16,36,58,.05)}
.hero-search>span{font-size:25px;line-height:1;color:#a77a2e}
.hero-search input[type=search]{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:14px "DM Sans",Arial,sans-serif}
.hero-search input[type=search]::placeholder{color:#9b9b96}
.hero-search button{border:0;border-radius:8px;background:var(--navy);color:#f6d991;padding:10px 17px;font:700 12px "DM Sans",Arial,sans-serif;cursor:pointer}
.tags-section{padding-top:30px;padding-bottom:8px}
.story-section{padding-top:30px;padding-bottom:28px}
.section-heading>div{display:flex;flex-direction:column;gap:4px}
.section-heading .section-kicker{font-size:10px}
.section-heading h2{font-size:29px}
.story-grid-featured{grid-template-columns:repeat(2,minmax(0,1fr))}
.story-grid:not(.story-grid-featured) .story-card{min-height:190px}
.story-grid:not(.story-grid-featured) .story-cover,.story-grid:not(.story-grid-featured) .cover-placeholder{min-height:190px}
.popular-section{padding-bottom:64px}
@media(min-width:1100px){
 .story-grid:not(.story-grid-featured){grid-template-columns:repeat(3,minmax(0,1fr))}
 .story-grid:not(.story-grid-featured) .story-card{grid-template-columns:115px minmax(0,1fr);min-height:176px}
 .story-grid:not(.story-grid-featured) .story-cover,.story-grid:not(.story-grid-featured) .cover-placeholder{min-height:176px}
 .story-grid:not(.story-grid-featured) .story-card-body{padding:13px}
 .story-grid:not(.story-grid-featured) .story-card h3{font-size:16px}
}
@media(max-width:680px){
 .hero-search{margin-top:22px}
 .hero-search input[type=search]{font-size:12px}
 .hero-search button{padding:10px 12px}
 .story-grid-featured{grid-template-columns:1fr}
 .section-heading h2{font-size:24px}
 .story-section{padding-top:22px;padding-bottom:20px}
}

/* Legal and information pages */
.legal-page{padding-top:54px;padding-bottom:76px;max-width:980px}
.legal-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(24px,5vw,58px);box-shadow:0 12px 35px rgba(24,40,58,.055)}
.legal-header{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:28px}
.legal-eyebrow{color:#a77a2e;font-size:11px;font-weight:700;letter-spacing:.16em}
.legal-header h1,.legal-content h1{font:800 clamp(32px,4vw,46px)/1.15 "Playfair Display",serif;color:var(--navy);margin:9px 0 0}
.legal-content{font-size:15px;line-height:1.85;color:#3f4b59;overflow-wrap:anywhere}
.legal-content h1{font-size:28px;margin:28px 0 12px}
.legal-content h2{font:700 22px/1.3 "Playfair Display",serif;color:var(--navy);margin:30px 0 10px}
.legal-content p{margin:0 0 16px}.legal-content ul{padding-left:24px;margin:8px 0 20px}.legal-content li{margin:7px 0}
.legal-content a{color:#946b25;text-decoration:underline;text-underline-offset:3px}
.footer-policy-nav{margin-left:auto}.footer-policy-nav ul{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 20px;list-style:none;margin:0;padding:0}
.footer-policy-nav a{font-size:12px;color:#f4e8cd}.footer-policy-nav a:hover{color:var(--gold)}
@media(max-width:680px){.legal-page{width:calc(100% - 28px);padding-top:28px;padding-bottom:42px}.legal-card{padding:24px 20px;border-radius:14px}.legal-content{font-size:14px}.legal-content h2{font-size:20px}.footer-inner{align-items:flex-start;gap:12px}.footer-inner>span{width:100%}.footer-policy-nav{margin:8px 0 0;width:100%}.footer-policy-nav ul{justify-content:flex-start;gap:10px 16px}.footer-inner small{margin-top:8px}}

/* Clickable genre chips */
.tag-list a{display:inline-flex;align-items:center;text-decoration:none;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.tag-list a:hover,.tag-list a:focus-visible{background:#10253b;color:#f0cc83;border-color:#10253b;outline:none}


/* TaleBloom 1.3.0: story statistics and related stories */
.story-meta{flex-wrap:wrap;row-gap:6px}
.story-meta span{white-space:nowrap}
.story-updated{font-size:10px;color:#8b8172;margin-top:7px}
.story-stat-row,.chapter-reading-stats{display:flex;flex-wrap:wrap;gap:10px 18px;margin:13px 0 18px;color:#73777d;font-size:12px}
.story-stat-row span,.chapter-reading-stats span{display:inline-flex;align-items:center;gap:5px}
.story-stat-row span:first-child,.chapter-reading-stats span:first-child{color:#98712f}
.related-stories-section{margin-top:58px}
.related-stories-section .story-grid{margin-top:18px}
.chapter-reading-stats{margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
@media(max-width:700px){
 .story-stat-row{gap:8px 12px;font-size:11px}
 .related-stories-section{margin-top:38px}
 .story-meta{gap:8px 12px}
}
