/* The visitor introduction is scoped so the game keeps its compact layout. */
body[data-screen="home"]{background:#f7f5ee}
body[data-screen="home"] .wrap{max-width:1120px}
body[data-screen="home"] header>div{max-width:1080px!important}
body[data-screen="home"] header h1{font-size:22px}
body[data-screen="home"] header h1 .brand-mark{width:38px;height:42px}
body[data-screen="home"] header>div>p{display:none}
.welcome-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;padding:34px 0 44px;color:#173d34}
.welcome-eyebrow{font-size:11px;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:#6a725b;margin:0 0 20px}
#homeScreen .welcome-copy h2,.welcome-copy h1{font:400 clamp(34px,4.7vw,56px)/1.07 Georgia,serif;letter-spacing:-.04em;margin:0 0 24px;color:#173d34}
.welcome-lead{font-size:18px;line-height:1.65;max-width:510px;color:#4d6158;margin:0 0 24px}
.welcome-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.welcome-primary{display:inline-flex;align-items:center;justify-content:center;gap:20px;border-radius:9px;background:#176a55;color:#fff;text-decoration:none;padding:15px 20px;font-size:16px;font-weight:700;min-height:50px}
.welcome-primary:hover{background:#113b36;color:white}
.welcome-secondary{color:#245e49;font-size:14px;font-weight:650;text-underline-offset:4px;padding:12px 0}
.welcome-note{font-size:12px;line-height:1.6;color:#647466;margin:16px 0 0}
.welcome-example{margin:0;padding:28px;background:#e8eee4;border:1px solid #d4dfce;border-radius:20px;position:relative}
.welcome-example figcaption{font-size:14px;font-weight:700;color:#2f5142}
.welcome-example figcaption small{display:block;font-weight:400;font-size:11px;margin-top:5px;color:#5e7163}
.welcome-tiles{display:flex;justify-content:center;gap:10px;margin:28px 0 22px}
.welcome-tiles img{width:75px;height:102px;object-fit:contain;background:#fffdf6;border-radius:7px;box-shadow:0 5px 0 #c4cbb9,0 8px 10px #1b3b2420;transform:rotate(-4deg)}
.welcome-tiles img:nth-child(2){transform:translateY(-5px) rotate(1deg)}
.welcome-tiles img:nth-child(3){transform:rotate(6deg)}
.welcome-question{font:24px/1.25 Georgia,serif;text-align:center;margin:0 0 22px;color:#173d34}
.welcome-answer{background:#fffdf6;border-left:3px solid #b5a06f;border-radius:0 9px 9px 0;padding:18px}
.welcome-answer strong{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#7b6336}
.welcome-answer p{margin:8px 0 0;font-size:14px;line-height:1.6;color:#354e42}
.welcome-example-note{font-size:10px;line-height:1.5;color:#62705e;margin:14px 0 0}
.welcome-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;border-block:1px solid #d6dfce;padding:26px 0 30px;margin-bottom:32px}
.welcome-benefits>div{position:relative;padding-left:34px}
.welcome-benefits>div>span{position:absolute;left:0;top:2px;font-size:11px;font-weight:700;color:#8d7445}
.welcome-benefits h3{font-size:16px;margin:0 0 8px;color:#173d34}
.welcome-benefits p{font-size:14px;line-height:1.6;color:#58695e;margin:0}
.home-section-heading{margin-top:32px!important;font:400 30px/1.2 Georgia,serif!important;color:#173d34}
.welcome-faq{margin:36px 0 24px;border-top:1px solid #d6dfce;padding-top:16px;color:#173d34}
.welcome-faq details{border-bottom:1px solid #d6dfce;padding:17px 0}
.welcome-faq summary{cursor:pointer;font-size:15px;font-weight:650;min-height:24px}
.welcome-faq p{font-size:14px;line-height:1.65;max-width:720px;color:#58695e}
.site-legal{display:flex;gap:8px 20px;flex-wrap:wrap;margin:22px 0;font-size:13px}
.site-legal a{color:#315e4b;padding:6px 0;text-underline-offset:3px}
body:not([data-screen="home"]):not([data-screen="settings"]) .app-footer{display:none}
.app-footer{max-width:1080px;margin:auto;padding:10px 20px 30px;border-top:1px solid #d6dfce;color:#657264;font-size:12px;line-height:1.6}
.app-footer p{max-width:760px}
.privacy-danger{border:1px solid #a6473c!important;color:#8d332c!important;background:#fff8f3!important}
.privacy-dialog{width:min(540px,92vw);max-height:85dvh;border:1px solid #ced7c9;border-radius:16px;padding:24px;color:#183c30;overflow:auto}
.privacy-dialog::backdrop{background:#102a2477}
.privacy-dialog p{line-height:1.6;font-size:15px}
.privacy-dialog label{display:block;font-weight:650;margin:20px 0 8px}
.privacy-dialog input{width:100%;min-height:48px;font-size:16px;padding:10px;border:1px solid #91a397;border-radius:6px}
#privacyDeleteStatus{color:#8d332c}
#privacySettings{scroll-margin-top:20px}
.welcome-primary:focus-visible,.welcome-secondary:focus-visible,.site-legal a:focus-visible{outline:3px solid #b78d39;outline-offset:5px}
body[data-home-saved="true"] .welcome-hero,body[data-home-saved="true"] .welcome-benefits{display:none}
@media(max-width:740px){
 .welcome-hero{grid-template-columns:1fr;gap:28px;padding:22px 0 30px}
 .welcome-lead{font-size:16px;max-width:540px}
 .welcome-example{padding:22px;max-width:540px;width:100%;box-sizing:border-box}
 .welcome-tiles{margin:22px 0}
 .welcome-tiles img{width:64px;height:88px}
 .welcome-benefits{grid-template-columns:1fr;gap:23px;padding:25px 0}
 .welcome-actions{gap:12px 20px}
 .welcome-note{font-size:11px}
 body[data-screen="home"] header h1{font-size:19px}
 .privacy-dialog{padding:20px}
}
