/* Streaks, invitations, story sharing and account tools. Uses the brand tokens from redesign.css. */
:root{--flame:#ff7a2f;--flame-soft:#fff1e6;--coral-soft:#fdecee}

/* Header streak chip */
.streak-chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 13px;border-radius:999px;background:var(--flame-soft);color:#b4470f;font-weight:800;font-size:14px;border:1px solid #ffd9bf;text-decoration:none;transition:transform .15s}
.streak-chip:hover{transform:translateY(-1px)}
.streak-chip i{color:var(--flame);font-size:16px}
.streak-chip.is-at-risk i{animation:flame-pulse 1.6s ease-in-out infinite}
.streak-chip.is-cold{background:var(--pale);color:var(--muted);border-color:var(--line)}
.streak-chip.is-cold i{color:#a5aec0}
@keyframes flame-pulse{50%{transform:scale(1.18);opacity:.7}}

/* Dashboard */
.heading-actions{display:flex;flex-wrap:wrap;gap:10px}
.growth-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;margin:24px 0}
.streak-card{background:linear-gradient(160deg,#fff 55%,var(--flame-soft))}
.streak-hero{display:flex;align-items:center;gap:18px;margin:6px 0 18px}
.streak-hero strong{display:block;font-family:Nunito,Slovakio,sans-serif;font-weight:800;font-size:64px;line-height:1;letter-spacing:-.04em;color:var(--ink)}
.streak-hero span{color:var(--muted);font-weight:650}
.streak-flame{display:grid;place-items:center;width:84px;height:84px;border-radius:28px;background:var(--flame);color:#fff;font-size:42px;box-shadow:0 10px 26px #ff7a2f40}
.streak-card.is-cold .streak-flame{background:#d9dee8;box-shadow:none}
.streak-card.is-at-risk .streak-flame i{animation:flame-pulse 1.6s ease-in-out infinite}
.streak-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;list-style:none;padding:0;margin:0 0 14px}
.streak-week li{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--muted)}
.streak-dot{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--pale);color:#c7cedb;font-size:12px}
.streak-week .played .streak-dot{background:var(--flame);color:#fff;font-size:17px}
.streak-week .today .streak-dot{outline:2px solid var(--blue);outline-offset:2px}
.streak-week .future{opacity:.5}
.streak-mood{font-weight:650;margin:0 0 6px}
.streak-card .btn-block{margin-top:14px}
.invite-card p{margin-top:0}
.invite-link{display:flex;gap:8px;margin:14px 0 10px}
.invite-link input{flex:1;min-width:0;border:1px solid var(--line);border-radius:14px;padding:12px 14px;font:inherit;font-size:13px;background:var(--pale);color:var(--ink)}
.invite-actions{display:flex;flex-wrap:wrap;gap:8px}
.invite-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 6px}
.invite-stats div{background:var(--soft-blue);border-radius:16px;padding:12px;text-align:center}
.invite-stats strong{display:block;font-family:Nunito,Slovakio,sans-serif;font-weight:800;font-size:24px;color:var(--blue)}
.invite-stats span{font-size:11px;color:var(--muted);font-weight:650}
.invite-friends{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px}
.invite-friends li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-weight:650;font-size:13px}
.invite-progress{display:block;width:90px;height:8px;border-radius:9px;background:var(--pale);overflow:hidden}
.invite-progress span{display:block;height:100%;background:var(--blue);border-radius:9px}
.invite-done{color:#1f8a4c;font-size:13px}
.invite-banner{display:flex;gap:12px;align-items:center;background:var(--soft-blue);border:1px solid #d6e0ff;border-radius:18px;padding:14px 16px;margin-bottom:18px}
.invite-banner strong{display:block}
.invite-banner small{color:var(--muted)}

/* Success overlay after a discovery */
.success-streak{display:inline-flex;align-items:center;gap:8px;background:var(--flame-soft);color:#b4470f;border-radius:999px;padding:8px 16px;font-weight:700;margin:4px 0 16px}
.success-streak i{color:var(--flame)}
.success-actions{display:grid;gap:10px}

/* Story share dialog */
.share-dialog{border:0;border-radius:28px;padding:26px;width:min(440px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;color:var(--ink);background:#fff;box-shadow:0 30px 80px #18244340}
.share-dialog::backdrop{background:#182443b3;backdrop-filter:blur(3px)}
.share-dialog h2{margin:0 36px 4px 0;font-size:24px}
.share-close{position:absolute;top:16px;right:16px}
.share-preview{margin:14px auto;width:min(260px,70vw);aspect-ratio:9/16;border-radius:20px;overflow:hidden;background:var(--pale);display:grid;place-items:center}
.share-preview img{width:100%;height:100%;object-fit:cover;display:block}
.share-actions{display:grid;gap:8px}
.share-hint{margin:12px 0 0}

/* Account deletion */
.danger-zone{border:1px solid #f6c9cf;background:#fffafa}
.danger-zone h3{color:#c73549}
.danger-zone form{display:grid;gap:10px;margin-top:12px}
.danger-zone input{border:1px solid var(--line);border-radius:12px;padding:11px 13px;font:inherit}
.btn-danger{background:#c73549;border-color:#c73549;color:#fff}

/* Privacy page */
.privacy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}
.privacy-summary div{background:var(--soft-blue);border-radius:18px;padding:16px}
.privacy-summary strong{display:block;margin-bottom:4px}
.privacy-summary span{font-size:13px;color:var(--muted)}

@media(max-width:850px){.growth-grid{grid-template-columns:1fr}.nav-actions .streak-chip{min-height:36px;padding:6px 10px;font-size:13px}.privacy-summary{grid-template-columns:1fr}}
@media(max-width:600px){.heading-actions{width:100%}.heading-actions .btn{flex:1}.quick-links{grid-template-columns:1fr;gap:8px}.quick-links a{flex-direction:row;justify-content:flex-start;text-align:left;padding:12px 14px;gap:12px}.streak-hero strong{font-size:52px}.streak-flame{width:70px;height:70px;font-size:34px}.streak-dot{width:32px;height:32px}.invite-link{flex-direction:column}.nav-actions .nav-home{display:none}}
@media(prefers-reduced-motion:reduce){.streak-chip.is-at-risk i,.streak-card.is-at-risk .streak-flame i{animation:none}}

/* Streak freezes */
.streak-freezes{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;max-width:150px}
.streak-freezes span{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--pale);color:#c3cad6}
.streak-freezes span.on{background:#e3f3ff;color:#2b8ae6}
.streak-freezes small{flex-basis:100%;text-align:right;font-size:11px;color:var(--muted);font-weight:650}
.success-freeze{display:flex;align-items:center;justify-content:center;gap:8px;color:#1f6fbf;font-weight:700;margin:-6px 0 14px}

/* Weekly quests */
.quests-card{margin:0 0 24px}
.quest-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.quest{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff}
.quest.is-ready{border-color:#9eb2fc;background:var(--soft-blue)}
.quest.is-claimed{opacity:.7}
.quest-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--soft-blue);color:var(--blue);font-size:19px}
.quest.is-claimed .quest-icon{background:#e3f6ea;color:#1f8a4c}
.quest-body strong{display:block}
.quest-body small{display:block;color:var(--muted);margin:2px 0 8px}
.quest-bar{display:block;height:8px;border-radius:9px;background:var(--pale);overflow:hidden}
.quest-bar span{display:block;height:100%;background:var(--blue);border-radius:9px;transition:width .4s}
.quest-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.quest-count{font-weight:800;font-size:13px;color:var(--muted)}
.quest-done{font-weight:800;color:#1f8a4c}
.quest-master{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:12px;padding:16px;border-radius:18px;background:var(--ink);color:#fff}
.quest-master>i{font-size:26px;color:#ffd34d}
.quest-master small{display:block;color:#ced7ed}
.quest-master.is-claimed{background:#1f8a4c}
.quest-master .btn:not(.btn-primary){background:#ffffff1f;color:#fff;border-color:#ffffff33}

/* New-player checklist */
.onboarding-card{margin:0 0 24px;background:linear-gradient(140deg,#fff 60%,var(--soft-blue))}
.onboarding-card .card-head{align-items:flex-start}
.onboarding-progress{height:10px;border-radius:9px;background:var(--pale);overflow:hidden;margin:4px 0 16px}
.onboarding-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--coral, #f05263))}
.onboarding-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.onboarding-steps a,.onboarding-steps button{display:flex;gap:12px;align-items:flex-start;width:100%;height:100%;text-align:left;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);font:inherit;cursor:pointer}
.onboarding-steps a:hover,.onboarding-steps button:hover{border-color:#9eb2fc}
.onboarding-steps strong{display:block;font-size:13px}
.onboarding-steps small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.onboarding-icon{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--soft-blue);color:var(--blue)}
.onboarding-steps .done a,.onboarding-steps .done button{background:var(--pale);border-color:transparent}
.onboarding-steps .done .onboarding-icon{background:#1f8a4c;color:#fff}
.onboarding-steps .done strong{text-decoration:line-through;color:var(--muted)}

@media(max-width:850px){.onboarding-steps{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.onboarding-steps{grid-template-columns:1fr}.quest{grid-template-columns:auto 1fr;}.quest-side{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center}.quest-master{grid-template-columns:auto 1fr}.quest-master .btn,.quest-master .quest-done{grid-column:1/-1}.streak-freezes{max-width:none}}

/* Moje Slovensko collection map */
.collection-card{margin-bottom:24px}
.collection-map{width:100%;height:auto;aspect-ratio:650/340;display:block;margin:6px 0 10px}
.collection-shape{fill:#eef1f6;stroke:#fff;stroke-width:.8;transition:fill .2s}
.collection-shape.is-visited{fill:var(--blue)}
.collection-shape.is-home{stroke:var(--coral, #f05263);stroke-width:2}
.collection-shape:hover{fill:#c9d5fb}
.collection-shape.is-visited:hover{fill:var(--blue-dark)}
.collection-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--muted);font-weight:650}
.legend-swatch{display:inline-block;width:12px;height:12px;border-radius:4px;background:#eef1f6;margin-right:6px;vertical-align:-1px}
.legend-swatch.visited{background:var(--blue)}
.legend-swatch.home{background:#fff;border:2px solid #f05263}

/* Home: live strip and FAQ */
.live-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.live-item{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;display:flex;flex-direction:column;gap:4px}
.live-item>i{color:var(--blue);font-size:18px}
.live-item strong{font-family:Nunito,Slovakio,sans-serif;font-weight:800;font-size:30px;letter-spacing:-.03em;color:var(--ink)}
.live-item span{color:var(--muted);font-size:13px;font-weight:600}
.live-dot{width:12px;height:12px;border-radius:50%;background:#1fbf5b;box-shadow:0 0 0 6px #1fbf5b26;animation:flame-pulse 2s ease-in-out infinite}
.faq-list{display:grid;gap:10px;max-width:860px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:0 20px}
.faq-item summary{cursor:pointer;list-style:none;padding:18px 28px 18px 0;font-weight:750;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:'+';position:absolute;right:0;top:12px;font-size:24px;color:var(--blue);font-weight:400}
.faq-item[open] summary:after{content:'–'}
.faq-item p{margin:0 0 18px;color:var(--muted)}
@media(max-width:850px){.live-strip{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.live-dot{animation:none}}
