:root{--green:#0f3a2e;--deep:#092b22;--cream:#f7f5eb;--gold:#c9a96b;--ink:#183c30;--muted:#56665b;--line:#dcded0;color-scheme:light}
*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:var(--green);color:var(--ink);font-family:Georgia,'Times New Roman',serif}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button,a{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}svg{flex-shrink:0;vertical-align:middle}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:none;color:inherit;min-height:44px;padding:10px 8px;font:14px/1.4 system-ui,-apple-system,sans-serif}
.shell{min-height:100dvh;background:var(--cream);max-width:750px;margin:0 auto}.top{position:sticky;top:0;z-index:20;background:var(--green);color:var(--cream);padding-top:env(safe-area-inset-top);box-shadow:0 2px 10px #092b2218}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 22px;min-height:76px}.brand{padding:0;gap:9px;flex-shrink:0}.brand img{height:43px;width:43px;border-radius:8px;object-fit:contain}.brand>span{font:700 24px/1 Georgia,serif;letter-spacing:-.7px}.brand>span span{color:var(--gold)}.header-actions{display:flex;align-items:center;gap:1px}.header-action{width:44px;height:44px;color:var(--gold);border-radius:8px}.header-action[aria-pressed=true]{background:#ffffff14}.main{min-height:calc(100dvh - 160px)}
.spark{padding:30px clamp(22px,5vw,42px) 16px;overflow:flow-root}.topic-button,.eyebrow{font:12px/1.5 system-ui,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);text-align:left}.topic-button{padding:0 0 15px;justify-content:flex-start;min-height:38px}.article-head h1,.panel h1{font:400 clamp(30px,7.5vw,42px)/1.12 Georgia,serif;letter-spacing:-.8px;margin:0;text-wrap:balance;overflow-wrap:break-word}.gold-rule{width:40px;height:2px;background:var(--gold);margin:23px 0}.article-copy{font:18px/1.65 Georgia,serif;overflow-wrap:break-word;max-width:66ch}.article-copy p{margin:0 0 1.2em}.article-copy p:first-of-type{font-size:20px;line-height:1.55}.article-copy::after{content:'';display:block;clear:both}.spark-image{margin:25px 0;max-width:100%;break-inside:avoid}.image-open{display:block;padding:0;width:100%;min-height:0;cursor:zoom-in}.spark-image img{display:block;width:100%;height:auto;max-width:100%;border-radius:3px}.spark-image figcaption{font:12px/1.5 system-ui,sans-serif;color:var(--muted);margin-top:9px;overflow-wrap:anywhere}.image-portrait{float:right;width:31%;max-width:166px;margin:5px 0 16px 20px}.image-portrait figcaption{font-size:11px}.image-unavailable{display:block;font:13px/1.5 system-ui,sans-serif;color:var(--muted);padding:15px;background:#e8eadf}.is-unavailable .image-open{display:none}.source{font:12px/1.6 system-ui,sans-serif;margin:10px 0 16px}.source a{color:#51623d;text-underline-offset:3px}.explore-link{color:#725a28;padding-left:0}.article-actions{display:flex;justify-content:space-between;padding:12px clamp(22px,5vw,42px);border-top:1px solid var(--line)}.article-actions button{padding:8px 0}.article-actions button[aria-pressed=true]{color:#765b22}.article-actions svg{color:#786132}
.teaser{width:100%;display:flex;justify-content:space-between;gap:24px;text-align:left;padding:23px clamp(22px,5vw,42px) 25px;background:var(--green);color:var(--cream)}.teaser span{min-width:0}.teaser small{display:block;color:var(--gold);font:11px/1.5 system-ui,sans-serif;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:8px}.teaser strong{display:block;font:400 23px/1.3 Georgia,serif;text-wrap:balance;overflow-wrap:anywhere}.teaser svg{color:var(--gold)}.spark-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 18px;border-top:1px solid var(--line)}.spark-nav span{font:11px/1.4 system-ui,sans-serif;color:var(--muted);text-align:center}.spark-nav button{font-size:13px}.app-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;padding:12px 22px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--muted)}.app-foot button{padding:6px 0;font-size:12px}.app-foot span{font:11px/1.5 system-ui,sans-serif}
.panel{padding:22px clamp(22px,5vw,42px) 30px}.panel h1{margin:16px 0 22px;font-size:32px}.panel h2{font-size:24px;font-weight:400;margin-top:32px}.panel p{font:17px/1.65 Georgia,serif}.back-link{padding-left:0;color:var(--muted);font-size:13px}.secondary{font:13px/1.6 system-ui,sans-serif!important;color:var(--muted)}.topic-list,.results{display:grid;gap:0;margin:18px 0}.topic-choice{width:100%;justify-content:space-between;text-align:left;border-bottom:1px solid var(--line);padding:17px 0;font-size:16px}.topic-choice[aria-pressed=true]{color:#7a602b}.result{position:relative;display:block;width:100%;text-align:left;border-bottom:1px solid var(--line);padding:18px 28px 18px 0}.result small{display:block;font:11px/1.5 system-ui,sans-serif;color:var(--muted);letter-spacing:.8px;text-transform:uppercase;margin-bottom:6px}.result strong{display:block;font:400 21px/1.3 Georgia,serif}.result svg{position:absolute;right:0;top:calc(50% - 10px);color:#786132}.panel input{width:100%;padding:14px;border:1px solid #a3afa0;border-radius:7px;background:#fffdf5;color:var(--ink);font:16px/1.4 system-ui,sans-serif}.utility-actions{display:flex;gap:20px;flex-wrap:wrap}.utility-actions button,.utility-button{color:#6e572b;text-decoration:underline;text-underline-offset:4px}.empty{padding-top:60px;min-height:50vh}.loading{color:var(--cream);text-align:center;padding:30vh 20px}.toast{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:1000;background:var(--deep);color:var(--cream);font:14px/1.5 system-ui,sans-serif;border:1px solid var(--gold);border-radius:8px;padding:12px 18px;width:max-content;max-width:min(90vw,600px);opacity:0;pointer-events:none}.toast.visible{opacity:1}.gs-lightbox{width:96vw;max-width:1200px;max-height:96dvh;background:var(--deep);color:var(--cream);border:1px solid #50715d;border-radius:8px;padding:15px}.gs-lightbox::backdrop,.gs-copy-dialog::backdrop{background:#061b16ec}.gs-lightbox>button{display:flex;margin-left:auto;min-width:80px}.gs-lightbox img{display:block;max-width:100%;max-height:80dvh;width:auto;height:auto;margin:auto;object-fit:contain}.gs-copy-dialog{background:var(--cream);color:var(--ink);border:0;border-radius:12px;width:min(90vw,580px);padding:24px}.gs-copy-dialog textarea{width:100%;height:220px;font:16px/1.5 system-ui,sans-serif;padding:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(max-width:370px){.header-inner{padding:10px 12px;gap:2px}.brand{gap:6px}.brand img{width:34px;height:34px}.brand>span{font-size:21px}.header-actions{gap:0}.header-action{width:44px}.image-portrait{float:none;width:65%;max-width:210px;margin:0 auto 24px}.spark-nav{padding-left:12px;padding-right:12px}.spark-nav span{max-width:76px}.app-foot{justify-content:center}.article-copy p:first-of-type{font-size:19px}}
@media(min-width:371px) and (max-width:460px){.header-inner{padding-left:18px;padding-right:18px}.brand>span{font-size:23px}}
@media(prefers-reduced-motion:no-preference){.spark{animation:gs-appear .16s ease-out}@keyframes gs-appear{from{opacity:.65}to{opacity:1}}.toast{transition:opacity .15s}}
@media print{.top,.article-actions,.teaser,.spark-nav,.app-foot{display:none}.shell{max-width:none}.main{min-height:0}}

.portrait-credit{clear:both;font:12px/1.5 system-ui,sans-serif;color:var(--muted);margin:0 0 24px}
/* v0.4 — a complete discovery, with room to stay. */
.shell{background:#e5eadf;max-width:820px}.main{padding-bottom:24px}.jewel{background:var(--cream);border:1px solid #d1d8c9;border-radius:9px;margin:0 18px 26px;padding:28px clamp(22px,5vw,44px) 20px;box-shadow:0 8px 26px #133c2e0a}.jewel h1{font-size:clamp(29px,7vw,41px);line-height:1.14}.spark-opening p:first-of-type{font-size:20px}.spark-opening .image-portrait{float:left;margin:4px 20px 12px 0;width:28%;max-width:145px}.spark-opening .image-portrait figcaption{font-size:10px;line-height:1.45}.spark-details{clear:both;margin-top:8px}.spark-details summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:52px;border-top:1px solid #d7d9ca;color:#66501f;font:16px/1.45 Georgia,serif;cursor:pointer;padding:16px 0}.spark-details summary::-webkit-details-marker{display:none}.spark-details summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.spark-details summary span{font:22px/1 system-ui,sans-serif;transition:transform .15s}.spark-details[open] summary span{transform:rotate(180deg)}.spark-details[open] summary{color:var(--muted);font:14px/1.5 system-ui,sans-serif;margin-bottom:8px}.fuller-article p:first-of-type{font-size:18px;line-height:1.65}.article-actions{padding:14px 0 0;gap:12px;flex-wrap:wrap;margin-top:20px}.article-actions button{font-size:12px}.article-actions [data-collapse]{margin-left:auto;color:var(--muted)}.spark-nav{border:0;padding:16px 22px;min-height:64px}.spark-nav a,.nav-disabled{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:13px/1.4 system-ui,sans-serif;text-decoration:none;color:var(--ink)}.spark-nav .nav-disabled{opacity:.4}.teaser{width:auto;margin:0 18px 12px;border-radius:8px;text-decoration:none;padding:23px clamp(22px,5vw,44px)}.teaser strong{color:var(--cream)}.teaser small{color:#dbc18c}.result{text-decoration:none;color:var(--ink);min-height:64px}.brand{text-decoration:none;color:var(--cream)}.app-foot a{color:var(--muted);font:12px/1.6 system-ui,sans-serif;text-underline-offset:3px}.topic-button{text-decoration:none}.is-welcome{background:var(--green);max-width:none}.is-welcome .top,.is-welcome .app-foot{display:none}.is-welcome .main{padding:0;min-height:100dvh}.welcome{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--cream);padding:calc(36px + env(safe-area-inset-top)) 26px calc(48px + env(safe-area-inset-bottom));max-width:660px;margin:auto}.welcome-logo{display:block;width:clamp(170px,47vw,250px);height:auto;max-width:70vw;margin-bottom:22px}.welcome-purpose{font:400 clamp(25px,5.5vw,33px)/1.35 Georgia,serif;margin:0 0 20px;text-wrap:balance}.welcome-how{font:15px/1.8 system-ui,sans-serif;color:#d7dfd1;margin:0 0 34px}.enter-spark{display:inline-flex;justify-content:center;align-items:center;gap:32px;background:var(--cream);color:var(--green);border:1px solid var(--gold);border-radius:4px;padding:15px 25px;min-height:52px;font:15px/1.5 system-ui,sans-serif;text-decoration:none}.enter-spark span{color:#745c2e}.welcome .enter-spark:hover{background:#fffdf4}
@media(max-width:370px){.jewel,.teaser{margin-left:12px;margin-right:12px}.jewel{padding:24px 20px 18px}.spark-opening .image-portrait{float:left;width:30%;margin:4px 14px 10px 0}.welcome-logo{width:164px}.welcome-how{font-size:14px}.welcome{padding-top:24px;padding-bottom:28px}}
@media(prefers-reduced-motion:reduce){.spark-details summary span{transition:none}}
@media print{.spark-details>*{display:block!important}.spark-details summary{display:none}.jewel{border:0;box-shadow:none}}
.welcome-logo{border-radius:16%}.portrait-credit{margin:4px 0 20px;line-height:1.5;font-size:11px}
/* v0.5 — compact reader and a quieter welcome. */
.spark-nav{min-height:52px;padding:4px 22px}.spark-nav>a,.spark-nav>.nav-disabled{min-height:44px}.jewel{padding-top:21px;padding-bottom:14px;margin-bottom:18px}.topic-button{font-size:11px;letter-spacing:1.35px;min-height:28px;padding-bottom:8px}.jewel h1{font-size:clamp(29px,7vw,39px);line-height:1.14}.gold-rule{width:34px;margin:15px 0 17px}.spark-opening p:first-of-type{font-size:20px;line-height:1.55}.spark-opening p:last-of-type{margin-bottom:17px}.spark-details{margin-top:0}.spark-details summary{padding:13px 0;min-height:48px;font-size:15px;line-height:1.45}.spark-details[open] summary{font-size:14px}.teaser{padding:15px 20px 16px;margin-bottom:10px;gap:16px;align-items:center}.teaser small{font-size:11px;line-height:1.4;letter-spacing:1.5px;margin-bottom:7px}.teaser strong{font-size:16px;line-height:1.5;text-wrap:pretty}.teaser svg{width:17px;height:17px}.portrait-credit{font-size:11px;line-height:1.5;margin-bottom:15px}.spark-opening .image-portrait{width:28%;max-width:130px;margin-right:16px}.app-foot{border:0;padding-top:0;justify-content:center}.app-foot button{font-size:11px}.welcome{justify-content:flex-start;padding-top:clamp(56px,11svh,105px);padding-bottom:48px;max-width:560px}.welcome-logo{width:clamp(164px,43vw,218px);max-width:65vw;border-radius:0;margin:0 0 27px}.welcome-purpose{font-size:clamp(25px,5.6vw,31px);line-height:1.32;margin-bottom:21px}.welcome-how{font-size:15px;line-height:1.7;max-width:33ch;margin-bottom:29px;text-wrap:pretty}.enter-spark{background:none;border:0;border-radius:0;color:var(--gold);font:500 17px/1.5 system-ui,sans-serif;gap:18px;padding:12px 16px;min-height:52px}.enter-spark span{color:inherit;font-size:22px}.welcome .enter-spark:hover{background:none;text-decoration:underline;text-underline-offset:7px}.ed-curiosity strong{font-size:16px;line-height:1.5}.ed-curiosity{padding-top:15px;padding-bottom:16px}
@media(max-width:370px){.jewel{padding:20px 20px 13px}.spark-nav{padding:4px 16px}.welcome{padding-top:46px}.welcome-logo{width:160px}.welcome-how{font-size:15px}.spark-opening .image-portrait{float:none;width:110px;max-width:40%;margin:0 16px 14px 0}.teaser{padding:14px 18px 15px}}
@media(min-width:371px){.spark-opening .image-portrait{float:left}}
@media(min-width:900px){.welcome{padding-top:80px}.welcome-logo{width:218px}}
