/* LWVlife App - A Little Laughter (AIMEE-20261028-LAUGHTER-01). Builds on lounge.css tokens (--lg-*); 1rem = app --fs, so A-/A+ works.
   Contrast (checked): navy #172B4D on riddle #EEF2FF 13.1:1, on joke #FFEFE5 12.3:1, on story #FFF6D5 13.4:1;
   #172B4D on button gold #FFC94D 9.6:1; white on teal #116466 7.4:1; kind labels #3730A3 / #9A3412 / #854D0E on their tints >= 6.8:1.
   Tap targets >= 56px. Reduced motion honored (lounge.css rule + below). No horizontal scroll at 320px. */
.lf-page{z-index:2360}
.lf-body{max-width:640px;margin:0 auto;padding:12px 14px 40px}
.lf-sub{margin:4px 0 12px;font-weight:700;color:var(--lg-ink2)}
.lf-notice{margin:0 0 12px;padding:10px 14px;border-radius:14px;background:var(--lg-amber);color:var(--lg-amber-d);font-weight:800}
.lf-free{font-size:1.6rem;padding:0 6px}

.lf-card{--c1:#EEF2FF;--c2:#E0E7FF;--cb:#6366F1;--ck:#3730A3;position:relative;border-radius:24px;padding:18px 18px 20px;margin:0 0 14px;
  background:linear-gradient(160deg,var(--c1) 0%,var(--c2) 100%);border:3px solid var(--cb);box-shadow:0 6px 18px rgba(23,43,77,.12);color:#172B4D;overflow:hidden}
.lf-card::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.45);pointer-events:none}
.lf-card.lf-j{--c1:#FFEFE5;--c2:#FFE0CC;--cb:#F97316;--ck:#9A3412}
.lf-card.lf-s{--c1:#FFF6D5;--c2:#FDEBB0;--cb:#EAB308;--ck:#854D0E}
.lf-head{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px}
.lf-kind{display:inline-flex;align-items:center;gap:6px;padding:4px 14px;border-radius:999px;background:#fff;color:var(--ck);font-weight:900;border:2px solid var(--cb)}
.lf-kind .ic{font-size:1.3em;line-height:1}
.lf-count{font-weight:800;color:#44546B;font-size:.9rem}
.lf-q{position:relative;z-index:1;margin:0;font-size:1.4rem;line-height:1.45;font-weight:800;word-break:keep-all;overflow-wrap:anywhere}
.lf-think{position:relative;z-index:1;margin:14px 0 0;font-weight:700;color:#44546B}
.lf-a{position:relative;z-index:1;margin:16px 0 0;padding:14px 16px;border-radius:18px;background:#fff;border:2px dashed var(--cb);animation:lf-pop .35s ease-out}
.lf-a:focus{outline:4px solid var(--lg-focus);outline-offset:2px}
.lf-al{display:block;color:var(--ck);font-weight:900;margin:0 0 4px}
.lf-at{margin:0;font-size:1.35rem;line-height:1.45;font-weight:900;color:#172B4D}
.lf-w{margin:10px 0 0;font-weight:700;color:#44546B}
@keyframes lf-pop{from{transform:scale(.96);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.lf-a{animation:none}}

.lf-acts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
.lf-page .lf-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:60px;padding:8px 14px;border-radius:18px;border:3px solid transparent;
  font-family:inherit;font-size:1.15rem;font-weight:900;cursor:pointer;text-align:center;line-height:1.2;transition:transform .1s}
.lf-page .lf-btn:active{transform:scale(.98)}
.lf-page .lf-btn .ic{font-size:1.3em;line-height:1}
.lf-page .lf-show{background:#FFC94D;border-color:#E0A800;color:#172B4D}
.lf-page .lf-next{background:var(--lg-teal);border-color:var(--lg-teal);color:#fff}
.lf-page .lf-next.big{grid-column:1 / -1}
.lf-page.lg-night .lf-next{color:#0B1420}
@media (max-width:380px){.lf-acts{grid-template-columns:1fr}.lf-q{font-size:1.25rem}.lf-at{font-size:1.2rem}}

.lf-more{margin:0 0 10px}
.lf-set{display:flex;flex-wrap:wrap;gap:10px;padding:10px 12px}
.lf-lng,.lf-fs{display:flex;flex-wrap:wrap;gap:8px}
.lf-note{margin:8px 0 0;color:var(--lg-ink2);font-size:.9rem;font-weight:600}

/* night: keep the colorful card readable */
.lg-night .lf-card{--c1:#1E2A55;--c2:#26336A;--cb:#A5B4FC;--ck:#C7D2FE;color:#EDE8DC}
.lg-night .lf-card.lf-j{--c1:#4A2416;--c2:#5A2C1B;--cb:#FDBA74;--ck:#FED7AA}
.lg-night .lf-card.lf-s{--c1:#43360E;--c2:#52420F;--cb:#FDE047;--ck:#FEF08A}
.lg-night .lf-card::after{background:rgba(255,255,255,.06)}
.lg-night .lf-kind{background:#0F172A}
.lg-night .lf-count,.lg-night .lf-think,.lg-night .lf-w{color:#C3BDB0}
.lg-night .lf-a{background:#0F172A}
.lg-night .lf-at{color:#EDE8DC}

/* Lounge Games tab tile */
.lf-tile{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;margin:0 0 12px;padding:12px 14px;border-radius:18px;border:3px solid #F97316;
  background:linear-gradient(135deg,#FFEFE5,#FFF6D5);color:#172B4D;text-align:left;cursor:pointer;font-family:inherit;box-shadow:var(--lg-shadow)}
.lf-tile .ic{font-size:2rem;line-height:1;flex:none}
.lf-tile .t{flex:1;min-width:0}
.lg-page .lf-tile{color:#172B4D}
.lg-page.lg-night .lf-tile{color:#EDE8DC}
.lf-tile b{display:block;font-size:1.1rem}
.lf-tile small{display:block;color:#44546B;font-weight:600;font-size:.92rem}
.lg-page .lf-tile .go{flex:none;font-weight:900;color:#fff;background:#C2410C;border-radius:12px;padding:10px 14px;min-height:48px;display:inline-flex;align-items:center}
.lg-night .lf-tile{background:linear-gradient(135deg,#4A2416,#43360E);color:#EDE8DC;border-color:#FDBA74}
.lg-night .lf-tile small{color:#C3BDB0}
.lf-show-h{margin:6px 0 8px;font-size:1.1rem;display:flex;align-items:center;gap:8px}
