:root{--ink:#25161a;--muted:#745f62;--paper:#f6efe7;--card:#fffaf2;--line:#dccbbd;--red:#9f2335;--plum:#492236;--gold:#bc7a22;--rose:#f0c6c8;--green:#456b5a;--shadow:0 24px 80px rgba(73,34,54,.16)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% -10%,#f1c9c9 0,#f6efe7 34%,#efe1d2 100%);color:var(--ink);font-family:Georgia,'Times New Roman',serif}.grain{position:fixed;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.04) 1px,transparent 1px);background-size:31px 31px;mix-blend-mode:multiply}nav{display:flex;justify-content:space-between;gap:1rem;padding:22px 30px;font-size:.9rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}nav a{color:var(--plum);text-decoration:none}.hero{position:relative;padding-bottom:24px}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;padding:38px 6vw 30px;align-items:end}.eyebrow{color:var(--red);letter-spacing:.18em;text-transform:uppercase;font-weight:700;font-size:.82rem}.hero h1{font-size:clamp(1.82rem,4.9vw,4.48rem);line-height:.92;margin:0;max-width:860px;letter-spacing:-.045em}.lede{font-size:1.2rem;line-height:1.55;color:#513c42;max-width:780px}.method-card{background:rgba(255,250,242,.78);border:1px solid var(--line);padding:24px;box-shadow:var(--shadow);border-radius:28px;backdrop-filter:blur(10px)}main{padding:0 6vw 60px}.metrics{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;margin:18px 0 20px}.metric{background:var(--card);border:1px solid var(--line);padding:18px;border-radius:22px;box-shadow:0 8px 24px rgba(73,34,54,.08)}.metric b{display:block;font-size:2rem;color:var(--red)}.metric span{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.72rem}.controls{display:grid;grid-template-columns:1fr 240px 180px;gap:12px;margin:20px 0}.controls input,.controls select{border:1px solid var(--line);background:#fffaf4;border-radius:18px;padding:14px 16px;color:var(--ink);font:inherit}.layout{display:grid;grid-template-columns:360px 1fr;gap:22px}.themes-panel,.stories-panel{background:rgba(255,250,242,.62);border:1px solid var(--line);border-radius:30px;padding:22px;box-shadow:var(--shadow)}h2{margin:0 0 16px;font-size:1.5rem}.theme-row{border-top:1px solid var(--line);padding:14px 0}.theme-row:first-child{border-top:0}.theme-row b{display:flex;justify-content:space-between;gap:8px}.theme-row p{margin:.45rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.35}.bar{height:7px;background:#ead8cb;border-radius:99px;overflow:hidden;margin-top:9px}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--gold));border-radius:99px}.iris{margin-top:18px;padding:16px;border-radius:20px;background:#f8e1df;color:#54343a;font-size:.92rem}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.story-card{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.55);margin:0 0 14px;overflow:hidden}.story-top{width:100%;border:0;background:transparent;text-align:left;padding:18px 20px;cursor:pointer;color:inherit}.story-top:hover{background:#fff7ef}.theme-badge{display:inline-block;background:var(--plum);color:#fff;border-radius:99px;padding:5px 10px;font-size:.73rem;letter-spacing:.06em;text-transform:uppercase}.frame{float:right;color:var(--red);font-weight:700}.story-card h3{font-size:1.32rem;line-height:1.12;margin:12px 0 8px}.insight{color:#553f43;line-height:1.42;margin:0 0 8px}.story-card small{color:var(--muted)}.story-detail{display:none;border-top:1px solid var(--line);padding:18px 20px 22px;background:#fffdf8}.story-card.opened .story-detail{display:block}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.story-detail h4{margin:0 0 8px;color:var(--red);font-size:.9rem;text-transform:uppercase;letter-spacing:.12em}.evidence{padding-left:18px;margin-top:0}.evidence li{margin-bottom:8px;line-height:1.35}.chips{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.chip{border:1px solid var(--line);background:#f5eadf;border-radius:99px;padding:6px 9px;font-size:.78rem;color:#5b4548}.entities{font-size:.85rem;color:var(--muted);margin:10px 0}.open{display:inline-block;margin-top:8px;color:var(--red);font-weight:700;text-decoration:none}@media(max-width:1000px){.hero-grid,.layout{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.controls{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}}@media(max-width:560px){main,.hero-grid{padding-left:18px;padding-right:18px}.metrics{grid-template-columns:1fr}.hero h1{font-size:2.7rem}}
/* === CognioNews site shell additions === */
.cn-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 30px;background:rgba(255,250,242,.82);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}
.cn-nav-brand{display:flex;align-items:center;gap:10px;color:var(--plum);text-decoration:none;font-weight:700;font-family:'Playfair Display',Georgia,serif;font-size:1.15rem}
.cn-brand-icon{width:32px;height:32px;display:block}
.cn-nav-links{list-style:none;display:flex;gap:18px;margin:0;padding:0}
.cn-nav-links a{color:var(--plum);text-decoration:none;font-size:.92rem;letter-spacing:.02em}
.cn-nav-links a:hover{color:var(--red)}
@media(max-width:680px){.cn-nav{flex-direction:column;align-items:flex-start;padding:12px 18px}.cn-nav-links{flex-wrap:wrap;gap:12px}}

/* page-level breadcrumb (replaces old internal "demo portal" nav) */
.page-nav{display:flex;justify-content:space-between;gap:1rem;padding:18px 30px 0;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.page-nav a{color:var(--plum);text-decoration:none}
.page-nav a:hover{color:var(--red)}

/* loading skeletons */
.skeleton-row{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px}
.skeleton{background:linear-gradient(90deg,#eadccf 0%,#f5e9da 50%,#eadccf 100%);background-size:200% 100%;animation:sk 1.4s ease-in-out infinite;border-radius:22px}
.metric-skel{height:84px}
@keyframes sk{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media(max-width:1000px){.skeleton-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.skeleton-row{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}

/* friendly error + hint copy (replaces raw <pre>) */
.error-card{background:#f8e1df;border:1px solid var(--rose);border-radius:24px;padding:22px;color:#54343a}
.error-card h3{margin:0 0 8px;color:var(--red);font-size:1.1rem}
.error-card a{color:var(--red);font-weight:700}
.hint{color:var(--muted);font-size:.95rem;padding:8px 0}

/* theme-row keyboard focus ring */
.theme-row{cursor:pointer}
.theme-row:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:14px}

/* === CognioNews footer === */
.cn-footer{margin:60px 6vw 40px;padding:34px 24px;border-top:1px solid var(--line);background:rgba(255,250,242,.62);border-radius:30px;text-align:center;color:var(--muted)}
.cn-footer .footer-brand{font-family:'Playfair Display',Georgia,serif;font-size:1.8rem;color:var(--plum);font-weight:800;letter-spacing:-.02em}
.cn-footer .footer-tagline{margin:4px 0 18px;color:var(--muted)}
.cn-footer .footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:14px 0 22px}
.cn-footer .footer-links a{color:var(--plum);text-decoration:none;font-size:.92rem}
.cn-footer .footer-links a:hover{color:var(--red)}
.cn-footer .footer-copy{font-size:.78rem;line-height:1.65;color:var(--muted)}
.cn-footer .footer-copy a{color:inherit;text-decoration:underline}
