/* Home gives the game invitation room; records and settings stay secondary. */
.ui-refresh .landing-screen { place-items:start center; padding:0; background:var(--bg); }
.ui-refresh .landing-screen.is-returning { padding:0; }
.ui-refresh .landing-card { display:block; width:min(100%,var(--interface-width)); margin:0 auto; padding:0 var(--interface-edge) 32px; text-align:left; }
.ui-refresh .landing-header .interface-brand { --interface-brand-size:31px; }
.ui-refresh .landing-header { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:72px; padding-top:28px; }
.ui-refresh .landing-top-links { justify-content:flex-end; gap:16px; }
.ui-refresh .landing-top-links .gift-entry { min-height:44px; border:0; padding:8px 0; background:transparent; color:var(--ink); font-size:14px; }
.ui-refresh .landing-tips-link { font-size:13px; padding:6px 9px; border-radius:8px; }
.ui-refresh .landing-title-set { display:grid; grid-template-columns:56% 44%; align-items:center; justify-items:stretch; gap:0; min-height:210px; margin-top:36px; isolation:isolate; }
.ui-refresh .landing-hero-copy { position:relative; z-index:1; }
.ui-refresh .landing-card h1 { font-family:var(--font-display); font-size:30px; font-weight:900; letter-spacing:-.05em; line-height:1.55; text-align:left; }
.ui-refresh .landing-card h1 > span { display:block; white-space:nowrap; }
.ui-refresh .landing-card em { font-style:normal; color:var(--borrowed); }
.ui-refresh .landing-letter-tiles { display:flex; gap:8px; margin-top:24px; padding-inline:2px; }
.ui-refresh .landing-letter-tiles span { display:grid; place-items:center; width:46px; height:48px; border:1.5px solid #dfcc9f; border-radius:10px; background:#fff9e9; font-size:29px; font-weight:800; line-height:1; transform:rotate(-7deg); }
.ui-refresh .landing-letter-tiles span:nth-child(2) { color:var(--borrowed); transform:rotate(5deg); }
.ui-refresh .landing-letter-tiles span:nth-child(3) { transform:rotate(-4deg); }
.ui-refresh .landing-home-character { position:relative; height:200px; display:flex; align-items:center; }
.ui-refresh .landing-home-character::before { content:""; position:absolute; inset:8px 8px 0 4px; background:#fff0bf; border-radius:63% 37% 38% 62% / 49% 40% 60% 51%; transform:rotate(9deg); z-index:-1; }
.ui-refresh .landing-home-character .post-game-character { width:calc(100% + 24px); height:auto; margin:0 0 0 -24px; }
.ui-refresh .landing-home-character img { position:static; width:100%; height:auto; max-width:none; transform:none; object-fit:contain; }
.ui-refresh .landing-tagline { margin:26px 0 0; font-size:17px; font-weight:700; line-height:1.9; }
.ui-refresh .landing-tagline > span { display:inline-block; }
.ui-refresh .landing-screen .landing-play-area { margin-top:24px; }
.ui-refresh .landing-actions { width:100%; gap:0; }
.ui-refresh .landing-actions #landingStartButton { min-height:64px; padding:15px 24px; border-radius:999px; background:var(--accent); box-shadow:none; font-size:22px; font-weight:700; transform:none; }
.ui-refresh .landing-actions #landingStartButton:hover { background:#0d515b; transform:none; box-shadow:none; }
.ui-refresh .landing-play-note { margin:18px 0 0; text-align:center; font-size:14px; font-weight:600; }
.ui-refresh .landing-first-play-note { margin:3px 0 0; text-align:center; font-size:13px; font-weight:400; line-height:1.9; }
.ui-refresh .landing-screen .landing-home-prompt { display:block; margin:10px 0 0; text-align:left; color:var(--muted); font-size:13px; font-weight:400; }
.ui-refresh .landing-screen:not(.is-returning) .landing-home-prompt { display:none; }
.ui-refresh .landing-screen .landing-ai-note { display:none; }
.ui-refresh .landing-screen .landing-status { min-height:0; margin:16px 0 0; font-size:13px; }
.ui-refresh .landing-screen .landing-status:empty { display:none; }
.ui-refresh .landing-record-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:36px; }
.ui-refresh .landing-record-links .landing-current-top-ten-link { display:grid; grid-template-columns:minmax(0,1fr) auto; align-content:center; gap:4px 8px; width:100%; min-height:92px; margin:0; padding:18px 16px; border:0; border-radius:18px; background:var(--accent-soft); color:#15444b; text-align:left; text-decoration:none; font-size:16px; font-weight:700; line-height:1.65; }
.ui-refresh .landing-record-links .landing-current-top-ten-link { order:0; transform:none; }
.ui-refresh .landing-record-links .landing-current-top-ten-link:is(:hover,:focus-visible) { background:#dceae5; color:#15444b; box-shadow:none; transform:none; }
.ui-refresh .landing-record-links .landing-current-top-ten-link > span:first-child { grid-column:1; }
.ui-refresh .landing-record-links .landing-current-top-ten-link > span:last-child { grid-column:2; grid-row:1 / 3; align-self:center; font-size:24px; }
.ui-refresh .landing-record-links small { grid-column:1; font-size:10px; font-weight:400; }
.ui-refresh .landing-screen:not(.is-returning) .landing-record-summary { display:none; }
.ui-refresh .landing-record-summary { margin-top:20px; color:var(--muted); font-size:13px; }
.ui-refresh .landing-record-summary summary { cursor:pointer; min-height:44px; display:flex; align-items:center; gap:8px; }
.ui-refresh .landing-record-summary summary::before { content:"›"; font-size:18px; }
.ui-refresh .landing-record-summary[open] summary::before { transform:rotate(90deg); }
.ui-refresh .landing-screen .landing-returning-summary { margin:0 0 10px; text-align:center; }
.ui-refresh .landing-screen .landing-utility-links { display:grid; grid-template-columns:1fr 1fr; justify-items:center; gap:12px 16px; margin:28px 0 0; }
.ui-refresh .landing-utility-links button { min-height:44px; padding:7px 0; color:var(--accent); font-size:15px; font-weight:600; text-decoration:none; }
.ui-refresh #landingNameButton { grid-column:1 / -1; color:var(--muted); font-size:13px; font-weight:400; }
.ui-refresh .landing-screen .landing-about { margin-top:56px; padding-top:28px; border-top:1px solid var(--line); }
.ui-refresh .landing-about h2 { margin:0 0 16px; font-size:21px; }
.ui-refresh .landing-about p { color:var(--muted); font-size:14px; line-height:1.9; }
.ui-refresh .landing-content-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:24px; }
.ui-refresh .landing-content-links a { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; min-height:52px; padding:12px 14px; border:1px solid var(--line); border-radius:10px; background:transparent; color:var(--accent); text-align:left; text-decoration:none; font-size:14px; font-weight:700; line-height:1.5; }
.ui-refresh .landing-content-links a:first-child { grid-column:auto; }
.ui-refresh .landing-content-links a::after { content:"›"; flex:none; font-size:20px; line-height:1; }
@media(min-width:700px) { .ui-refresh .landing-content-links { grid-template-columns:repeat(3,minmax(0,1fr)); } }
.ui-refresh .landing-screen .landing-legal-links { display:flex; justify-content:center; flex-wrap:wrap; gap:8px 20px; margin:48px 0 0; }
.ui-refresh .landing-legal-links :is(a,button) { min-height:44px; display:inline-flex; align-items:center; background:transparent; padding:6px 0; font-size:12px; font-weight:400; text-decoration:none; color:var(--muted); }
.ui-refresh .landing-supporter { margin:24px 0 0; border-radius:14px; }
@media(min-width:700px) { .ui-refresh .landing-card { padding-inline:32px; } .ui-refresh .landing-title-set { min-height:240px; } .ui-refresh .landing-card h1 { font-size:40px; } .ui-refresh .landing-home-character { height:230px; } }
@media(max-width:359px) { .ui-refresh .landing-header .interface-brand { --interface-brand-size:31px; }
.ui-refresh .landing-header { gap:8px; } .ui-refresh .landing-top-links { gap:8px; } .ui-refresh .landing-header .interface-brand { --interface-brand-size:26px; } .ui-refresh .landing-top-links :is(button,a) { font-size:11px; } .ui-refresh .landing-card h1 { font-size:25px; } .ui-refresh .landing-letter-tiles span { width:38px; height:40px; font-size:24px; } .ui-refresh .landing-tagline { font-size:15px; } .ui-refresh .landing-record-links { gap:10px; } .ui-refresh .landing-record-links .landing-current-top-ten-link { font-size:14px; padding:16px 12px; } .ui-refresh .landing-utility-links button { font-size:13px; } }
