/* A letter to sumsum — cream paper, ruby glass, and quiet rose accents. */
:root{--paper:#faf5ef;--ink:#492d32;--muted:#80666a;--line:#e7d8d1;--green:#873b49;--accent:#e5b9b4;--soft:#f3e7e1}
body{background:var(--paper)}
::selection{background:#e7b9be;color:#562633}
a:hover{color:#a84b5c}
:focus-visible{outline-color:#ad5364}
.brand-dot,.hello span,.note-symbol,.guide-number,.about-signature,.product-subtitle,.capability-grid article>span,.start-steps li>span,.product-faq summary:after,.empty-symbol{color:#a46a73}
.header nav a{color:#87696e}
.header nav a:hover,.header nav a[aria-current]{color:#873b49}
.primary{background:#873b49;box-shadow:0 5px 14px #873b4910}
.primary:hover{background:#6f2939}
.light{background:#f9ebe4;color:#793b47}
.light:hover{background:#efd3ce;color:#6f2939}
.live-dot,.product-status:before{background:#c97c86}
.hero-side p,.about-copy>p,.product-intro-description>p,.library-intro>div>p,.tool-card>p,.library-card>.library-summary,.tool-detail-intro,.tool-detail-section p,.library-options,.guide-steps p{color:#796367}
.published-product{background:#653440;color:#fff4ed;border-radius:12px}
.published-copy .eyebrow,.published-copy>p,.product-status,.product-actions .text-link,.preview-caption{color:#e7c9c9}
.published-preview{background:radial-gradient(ellipse at 75% 40%,#96606a,transparent 75%)}
.preview-window{border-color:#eed4d440;box-shadow:0 18px 40px #32121b40}
.preview-bar{background:#faf1eb;color:#806b6b}
.preview-bar>span:first-child{color:#bba0a1}
.tool-filter{color:#876b70}
.tool-filter:hover{background:#f0e2dd}
.tool-filter.active{background:#873b49;color:#fff8f4}
.product-search{border-color:#cfb6b4}
.product-search>span{color:#8c5a67}
.library-search-row .product-search{background:#fffcf8;border-color:#dfc9c5}
.library-stats strong{color:#96576a}
.tool-card{background:#fffcf8;border-color:#e7d7d1;border-radius:10px}
.tool-card:hover{border-color:#c69099;box-shadow:0 7px 24px #873b4908}
.mint{--tone:#f0ddd9;--tone-ink:#924e5a}
.peach{--tone:#f3e3d6;--tone-ink:#93664f}
.blue{--tone:#e9e2ea;--tone-ink:#76617e}
.lavender{--tone:#efdee5;--tone-ink:#98607b}
.favorite-button{color:#8c5a67}
.favorite-button:hover{background:#f5e6e5}
.favorite-button[aria-pressed=true]{color:#b34461}
.tool-use,.tool-source,.local-note,.source-note,.library-card>.library-update{color:#80666a}
.tool-use strong,.tool-guide,.tool-details-button,.tool-detail-section .text-link,.library-start>a{color:#92515f}
.tool-source,.library-card .tool-actions{border-color:#eddfd9}
.price-badge{background:#f3e3df;color:#945462}
.language-badge{background:#f2e9df;color:#8b6c54}
.home-tool-intro a{border-color:#ba8a91}
.home-catalog-cta{background:#f3e3df;border-color:#e4c6c5;border-radius:8px}
.guide-grid{border-color:#d8bab8}
.guide-card:hover{background:#f4e9e3}
.learning-note{border-radius:8px}
.status-pill{border-color:#ddc1bf;color:#966371}
.product-shot{background:#f1e3dc;border-color:#e2cac5}
.product-shot img{border-color:#d7b6b6;box-shadow:0 5px 40px #69334215}
.product-shot figcaption{color:#94777b}
pre{background:#57313b;color:#f5e5df}
.guide-outcome{background:#f2e1dd;border-left-color:#bc7b88}
.guide-outcome strong,.prompt-jump,.step-complete{color:#995d6d}
.reading-progress progress,.reading-progress progress::-webkit-progress-bar{background:#e8d4d1}
.reading-progress progress::-webkit-progress-value{background:#b9677c}
.reading-progress progress::-moz-progress-bar{background:#b9677c}
.guide-steps li:before{color:#b77d88}
.prompt-builder{background:#f2e6e0}
.prompt-field textarea{background:#fffbf8;border-color:#ddc4bf}
.prompt-field textarea::placeholder{color:#a3888c}
.prompt-section{background:#653440;color:#fff3ed}
.prompt-text{background:#502832;border-color:#a36f7d;color:#f4e1dd}
.copy-button{background:#f3d9d5;color:#63323f}
.copy-status{color:#e3bec6}
.related-pill{border-color:#d7b5b7}
dialog::backdrop{background:#321b25a8}

/* The homepage opens as a personal letter; the workshop follows below. */
.love-home{background:radial-gradient(ellipse at 85% 12%,#f5e4de70,transparent 38%),var(--paper)}
.love-home .header{height:98px}
.love-header-note{font-family:var(--serif);font-size:16px;font-style:italic;white-space:nowrap;color:#8c5a67;display:flex;align-items:center;gap:14px}
.love-header-note span{font-style:normal;font-size:23px}
.love-hero{padding-top:30px}
.love-hero .hero-kicker{color:#8c5a67}
.love-hero .hero-kicker .eyebrow{font-size:10px;letter-spacing:.18em}
.love-hero .hero-index{font-size:10px;letter-spacing:.13em}
.love-layout{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:10px;min-height:590px;padding:20px 0 32px}
.love-copy{position:relative;z-index:1;padding:20px 0}
.love-address{font-size:13px;letter-spacing:.22em;color:#8c5a67;margin-bottom:22px;display:flex;align-items:center;gap:14px}
.love-address:before{content:'';width:28px;height:1px;background:#bb8a92}
.love-hero h1{color:#7b3043;letter-spacing:-.05em;font-weight:400;line-height:1.02}
.love-name{display:block;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(86px,8vw,118px);font-weight:400;letter-spacing:-.07em;margin-left:-6px}
.love-declaration{display:block;font-family:var(--serif);font-size:clamp(64px,6.3vw,88px);letter-spacing:.04em;line-height:1.32;margin-top:11px}
.love-period{font-family:Georgia,serif;margin-left:3px;color:#bd7885}
.love-intro{font-size:14px;line-height:2.05;color:#875f6a;margin-top:25px;letter-spacing:.055em}
.love-button{margin-top:28px;padding:13px 21px;min-height:48px;font-size:12px;border-radius:2px;gap:40px}
.love-signature{display:block;font-family:Georgia,serif;font-style:italic;font-size:17px;color:#b2878c;margin-top:27px;letter-spacing:.02em}
.love-art{position:relative;min-width:0;align-self:center}
.love-art img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse at center,#000 48%,#000a 66%,transparent 73%);-webkit-mask-image:radial-gradient(ellipse at center,#000 48%,#000a 66%,transparent 73%);animation:heart-float 7s ease-in-out infinite;will-change:transform}
.love-art figcaption{display:flex;align-items:center;justify-content:center;gap:20px;color:#8c5a67;font-size:9px;letter-spacing:.2em;margin-top:-12px;position:relative}
.love-art figcaption>span:last-child{font-size:19px;line-height:1}
.love-bottom{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;padding:19px 0;color:#875f6a;font-size:11px;letter-spacing:.07em}
.love-bottom a{display:flex;align-items:center;gap:22px;color:#8e5364}
.love-letter{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:95px 100px;border-bottom:1px solid var(--line)}
.letter-label{display:flex;flex-direction:column;align-items:flex-start;padding-top:11px;color:#8c5a67}
.letter-label .eyebrow{font-size:10px;letter-spacing:.2em}
.letter-flower{font-size:76px;font-family:Georgia,serif;font-weight:400;line-height:1.4;color:#ca8f99;margin-top:30px}
.letter-caption{font-size:11px;letter-spacing:.08em;margin-top:13px}
.letter-body h2{font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.65;letter-spacing:.015em;color:#79414c;margin-bottom:25px}
.letter-body>p{font-size:14px;line-height:2.15;color:#875f6a;margin-top:18px;letter-spacing:.04em}
.letter-signoff{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:35px;padding-top:25px;border-top:1px solid var(--line);font-size:11px;color:#875f6a}
.letter-name{font-family:Georgia,serif;font-size:20px;font-style:italic;white-space:nowrap;color:#8c5a67}
.love-home .section-heading h2{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;color:#75414e}
.love-home .about h2{font-family:var(--serif);font-weight:400;color:#75414e}
.love-home .about-heading .eyebrow{color:#8c5a67}
.love-home footer{border-color:#dfc8c4}
@keyframes heart-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}
@media(max-width:1000px){
 .love-home .header{gap:24px}.love-home .header nav{gap:22px}.love-header-note{padding-left:20px;font-size:14px}
 .love-layout{min-height:530px;gap:0}.love-name{font-size:94px}.love-declaration{font-size:72px}.love-art{margin-right:-15px}
 .love-letter{grid-template-columns:1fr 2fr;gap:36px}.letter-signoff{flex-direction:column;align-items:flex-start;gap:17px}
}
@media(max-width:760px){
 .love-home .header{height:auto;min-height:84px;padding-block:20px 14px;flex-wrap:wrap;gap:15px}
 .love-home .header nav{gap:0;justify-content:space-between;flex-basis:100%;margin-left:0;order:3;font-size:11px}
 .love-home .header nav a{padding:4px 0}.love-header-note{display:flex;margin-left:auto;padding:0;border:0;font-size:14px}
 .love-hero{padding-top:22px}.love-hero .hero-kicker .eyebrow{font-size:8px;letter-spacing:.12em}.love-hero .hero-index{font-size:8px}
 .love-layout{display:flex;flex-direction:column;align-items:stretch;min-height:0;gap:0;padding:33px 0 24px}
 .love-copy{padding:0;text-align:center}.love-address{justify-content:center;font-size:11px;letter-spacing:.15em;margin-bottom:16px}.love-address:before{width:19px}
 .love-hero h1{line-height:1}.love-name{font-size:clamp(78px,20vw,108px);margin-left:-4px}.love-declaration{font-size:clamp(54px,14vw,73px);margin-top:8px;line-height:1.3}
 .love-intro{font-size:12px;line-height:1.95;margin-top:18px}.love-button{margin-top:22px;min-height:44px;padding:11px 18px;font-size:11px;gap:27px}.love-signature{display:none}
 .love-art{width:min(100%,400px);margin:-7px auto 0}.love-art img{width:100%}.love-art figcaption{font-size:8px;margin-top:-25px;gap:14px;letter-spacing:.15em}
 .love-bottom{font-size:9px;letter-spacing:0;padding:15px 0;gap:12px}.love-bottom a{gap:10px;white-space:nowrap}
 .love-letter{grid-template-columns:1fr;gap:25px;padding-block:50px 55px}.letter-label{flex-direction:row;align-items:center;gap:20px;padding:0;flex-wrap:wrap}.letter-label .eyebrow{font-size:9px}.letter-flower{font-size:25px;margin:0;line-height:1}.letter-caption{font-size:10px;margin:0}
 .letter-body h2{font-size:29px;line-height:1.65;margin-bottom:20px}.letter-body>p{font-size:13px;line-height:2.05}.letter-signoff{margin-top:27px;padding-top:20px;font-size:10px;gap:15px}.letter-name{font-size:19px}
 .love-home .section-heading h2{font-size:27px;line-height:1.5}.published-preview{background:radial-gradient(ellipse at 70% 45%,#96606a,transparent 85%)}
}
@media(max-width:380px){.love-home .header{gap:14px}.love-home .brand{font-size:28px}.love-home .header nav{order:3}.love-hero .hero-index{display:none}.love-art{margin-top:0}.love-bottom{font-size:8px}.letter-label{gap:14px}.letter-caption{font-size:9px}.love-home .section-heading h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.love-art img{animation:none;will-change:auto}html{scroll-behavior:auto}}
